A lean, snappy inline terminal client for Claude Code
Project description
miniclaude
A lean, snappy inline terminal client for Claude Code sessions — a minimal alternative frontend to the official TUI. It drives the official claude CLI through the claudestream library, so tools, permissions, sessions, and authentication are all the real thing; miniclaude only replaces the presentation layer.
Design stance
- Inline, scrollback-native rendering. Output goes straight into your terminal's own scrollback, so its native search and copy keep working. No alternate screen, minimal redraw.
- Line-grain streaming markdown. Assistant prose is styled and emitted line by line as it arrives (headers, bullets, inline code, links, code fences). Tables are the one buffered exception, held until complete and printed with aligned columns.
- Dense tool activity. Each tool call is one line (
▸ ToolName arg); each result is one dim line (✓/✗plus a(+N lines)count). Subagent activity is indented. - Interactive tools that work in the terminal. Permission prompts show a real decision surface (the Bash command, a colored diff for edits, a preview for writes) above numbered Allow/Deny choices. AskUserQuestion is answered through plain numbered prompts (single- and multi-select).
- Type-ahead with interrupt. Type while a turn runs and the line is queued; press Esc to interrupt the in-flight turn.
Requirements
- Python >= 3.11
- The
claudeCLI installed and logged in - A claudewheel profile
Install
uv tool install miniclaude
pip install miniclaude
npm i -g miniclaude
The npm package is a Node shim that runs the installed Python miniclaude; install the Python package as well.
Usage
miniclaude repl --profile <name> --model <model> --permission-mode <mode>
Example:
miniclaude repl --profile default --model sonnet --permission-mode default
| Flag | Required | Description |
|---|---|---|
--profile <str> |
yes | claudewheel profile to use |
--model <str> |
yes | model to use, e.g. sonnet, haiku |
--permission-mode <str> |
yes | one of default, acceptEdits, plan, bypassPermissions, dontAsk, auto |
--cwd <str> |
no | working directory (default: current) |
--resume <str> |
no | resume a previous session by ID |
--continue-session / --no-continue-session |
no | continue the most recent session (default: off) |
--resume and --continue-session are mutually exclusive. Run miniclaude version to print the version.
In-session
Slash commands:
| Command | Effect |
|---|---|
/model <name> |
switch model (no argument: show current) |
/mode <mode> |
change permission mode (no argument: show current) |
/context |
show context-window usage |
/cost |
show session cost and token totals |
/help |
list the slash commands |
/quit, /exit |
leave the REPL |
Unknown / commands are sent to the session verbatim, so server-side commands still work.
Keybindings:
| Key | Action |
|---|---|
| Enter | submit the prompt |
| Alt+Enter | insert a newline |
| Esc | interrupt the running turn |
| Ctrl+C | clear the input when idle; interrupt the running turn |
| Ctrl+D | exit (on an empty input) |
claudewheel integration
Launch it from claudewheel with claudewheel --client miniclaude.
License
MIT
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
Built Distribution
Filter files by name, interpreter, ABI, and platform.
If you're not sure about the file name format, learn more about wheel file names.
Copy a direct link to the current filters
File details
Details for the file miniclaude-0.1.0.tar.gz.
File metadata
- Download URL: miniclaude-0.1.0.tar.gz
- Upload date:
- Size: 54.1 kB
- Tags: Source
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
51ad8af0baf60c63a35a7b8d1b53d250ca3b8b32a03a7fda4bf8bee4c9c7cb8d
|
|
| MD5 |
8b69f21bf5a11a23ac6b34316c1ce2fa
|
|
| BLAKE2b-256 |
3d7275cce6e27b722aac89363309e57b69ba67e2e928351e452e6ec647efb1e6
|
Provenance
The following attestation bundles were made for miniclaude-0.1.0.tar.gz:
Publisher:
publish.yml on smm-h/miniclaude
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
miniclaude-0.1.0.tar.gz -
Subject digest:
51ad8af0baf60c63a35a7b8d1b53d250ca3b8b32a03a7fda4bf8bee4c9c7cb8d - Sigstore transparency entry: 2164494219
- Sigstore integration time:
-
Permalink:
smm-h/miniclaude@28fd186fa7483fd671e075cb7d6b191d65b6ce53 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/smm-h
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@28fd186fa7483fd671e075cb7d6b191d65b6ce53 -
Trigger Event:
release
-
Statement type:
File details
Details for the file miniclaude-0.1.0-py3-none-any.whl.
File metadata
- Download URL: miniclaude-0.1.0-py3-none-any.whl
- Upload date:
- Size: 21.4 kB
- Tags: Python 3
- Uploaded using Trusted Publishing? Yes
- Uploaded via: twine/6.1.0 CPython/3.13.12
File hashes
| Algorithm | Hash digest | |
|---|---|---|
| SHA256 |
c17bfccde92debd6dbc204375d0723e14b5ddd4cb4efbe5796c9c91e4ff32b4f
|
|
| MD5 |
2214b99ca76ca63ee28d0ddc36e001b8
|
|
| BLAKE2b-256 |
3a31a051af22dee38a7c359c62171c805fdb8b764cb530bb9e23a19ee1325ea3
|
Provenance
The following attestation bundles were made for miniclaude-0.1.0-py3-none-any.whl:
Publisher:
publish.yml on smm-h/miniclaude
-
Statement:
-
Statement type:
https://in-toto.io/Statement/v1 -
Predicate type:
https://docs.pypi.org/attestations/publish/v1 -
Subject name:
miniclaude-0.1.0-py3-none-any.whl -
Subject digest:
c17bfccde92debd6dbc204375d0723e14b5ddd4cb4efbe5796c9c91e4ff32b4f - Sigstore transparency entry: 2164494262
- Sigstore integration time:
-
Permalink:
smm-h/miniclaude@28fd186fa7483fd671e075cb7d6b191d65b6ce53 -
Branch / Tag:
refs/tags/v0.1.0 - Owner: https://github.com/smm-h
-
Access:
public
-
Token Issuer:
https://token.actions.githubusercontent.com -
Runner Environment:
github-hosted -
Publication workflow:
publish.yml@28fd186fa7483fd671e075cb7d6b191d65b6ce53 -
Trigger Event:
release
-
Statement type: