Skip to content

Commit cf9e6be

Browse files
committed
docs: update
1 parent 9786b88 commit cf9e6be

File tree

4 files changed

+26
-22
lines changed

4 files changed

+26
-22
lines changed

README.md

Lines changed: 10 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -1,14 +1,16 @@
11
# Agent Chat CLI
22

3-
This is a less feature-rich Python version of [agent-chat-cli](https://github.com/damassi/agent-chat-cli), which uses the [claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-python) under the hood. Terminal UI is built on top of the very impressive [Textual](https://textual.textualize.io/).
3+
This is the Python version of [agent-chat-cli](https://github.com/damassi/agent-chat-cli), which uses the [claude-agent-sdk](https://github.com/anthropics/claude-agent-sdk-python) under the hood. Terminal UI is built on top of the very impressive [Textual](https://textual.textualize.io/).
44

55
https://github.com/user-attachments/assets/66a1d462-e51a-419f-80f3-fa69ee60db9c
66

77
## Why?
88

9-
This tool is for those who want slightly more control over their MCP servers via configurable system prompts, and a minimal terminal-based MCP form factor for interaction. Many more things are possible thanks to the Claude Agent SDK, but the main purpose, at least for me, is a simple, humble and performant MCP interface to whatever tools I typically use day-to-day.
9+
This tool is for those who want slightly more behavioral control over their MCP servers via configurable system prompts, and a minimal terminal-based MCP form factor for interaction.
1010

11-
> Note: The Python version is visually sturdier than the Node.js version. No more crazy terminal flashing like in Claude Code!
11+
Many different things are possible here thanks to the underlying Claude Agent SDK -- think of this as a light-weight `claude-code` -- but the main purpose, at least for me, is a simple and performant MCP interface to whatever tools I typically use day-to-day, something that lives outside of an editor or `claude` itself.
12+
13+
> **Note**: The Python/Textual version is visually sturdier than the Node.js/React Ink version. No more crazy Node.js terminal jank in long-running sessions!
1214
1315
## Setup
1416

@@ -30,18 +32,20 @@ make start
3032
make dev
3133
```
3234

33-
Additional MCP servers are configured in `agent-chat-cli.config.yaml` and prompts added within the `prompts` folder. By default, MCP servers are loaded dynamically via inference; set `mcp_server_inference: false` to load all servers at startup.
35+
Additional MCP servers are configured in `agent-chat-cli.config.yaml` and prompts added within the `prompts` folder.
36+
37+
Optionally, MCP servers can be lazy-loaded via chat inference, which is useful if you have many MCP servers or MCP servers with many tools; set `mcp_server_inference: true` to enable it.
3438

3539
## Development
3640

3741
- Install pre-commit hooks via [pre-commit](https://pre-commit.com/)
3842
- `uv run pre-commit install`
39-
- Typechecking is via [MyPy](https://github.com/python/mypy):
43+
- Type-checking is via [MyPy](https://github.com/python/mypy):
4044
- `uv run mypy src`
4145
- Linting and formatting is via [Ruff](https://docs.astral.sh/ruff/)
4246
- `uv run ruff check src`
4347

44-
Textual has an integrated logging console which one can boot separately from the app to receive logs.
48+
Textual has an integrated logging console that one can boot separately from the app to receive logs.
4549

4650
In one terminal pane boot the console:
4751

agent-chat-cli.config.yaml

Lines changed: 15 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -12,21 +12,11 @@ include_partial_messages: true
1212
# Enable dynamic MCP server inference
1313
mcp_server_inference: false
1414

15-
# Named agents with custom configurations
16-
# agents:
17-
# sample_agent:
18-
# description: "Example agent for demonstration"
19-
# prompt: "You are a helpful assistant named Foo."
20-
# mcp_servers:
21-
# - chrome
22-
# - github
23-
# disallowed_tools: []
24-
2515
# MCP server configurations
2616
mcp_servers:
2717
chrome:
2818
description: "Browser automation and debugging capabilities for AI agents"
29-
command: "bunx"
19+
command: "npx"
3020
args:
3121
- "chrome-devtools-mcp@latest"
3222
disallowed_tools: []
@@ -35,7 +25,7 @@ mcp_servers:
3525
github:
3626
description: "Search remote code, PRs, issues; discover documentation and deployment guides"
3727
prompt: "github.md"
38-
command: "bunx"
28+
command: "npx"
3929
args:
4030
4131
- "https://api.githubcopilot.com/mcp/readonly"
@@ -46,7 +36,7 @@ mcp_servers:
4636

4737
notion:
4838
description: "Access workspace documentation, wikis, OKRs, and onboarding guides with hierarchical navigation"
49-
command: "bunx"
39+
command: "npx"
5040
args:
5141
5242
- "https://mcp.notion.com/mcp"
@@ -58,3 +48,15 @@ disallowed_tools: []
5848

5949
# Permission mode for tool execution
6050
permission_mode: "default"
51+
#
52+
# TODO: Need to implement
53+
54+
# Named agents with custom configurations
55+
# agents:
56+
# sample_agent:
57+
# description: "Example agent for demonstration"
58+
# prompt: "You are a helpful assistant named Foo."
59+
# mcp_servers:
60+
# - chrome
61+
# - github
62+
# disallowed_tools: []

src/agent_chat_cli/components/caret.py

Lines changed: 0 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,3 @@
66
class Caret(Widget):
77
def compose(self) -> ComposeResult:
88
yield Label("▷")
9-
10-
def on_mount(self) -> None:
11-
self.styles.opacity = 0.5

src/agent_chat_cli/system/styles.tcss

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -76,6 +76,7 @@ Caret {
7676
height: 1;
7777
width: auto;
7878
margin-right: 1;
79+
opacity: 0.5;
7980
}
8081

8182
Input {

0 commit comments

Comments
 (0)