bots-garden/mini-mepublic Fork
⑂ feature/mini-me-as-a-sdk
Commits
⬇ Clone ▾
git clone https://git.rickub.com/bots-garden/mini-me.git
git clone ssh://git@rickub.com/bots-garden/mini-me.git

Host key fingerprint (ed25519): SHA256:iycHnxEyq0Q7uyVpB7JlznP0G7JrTPXLYRcAU5CSLhc — verify it before your first connect.

Download ZIP
🛟 Updated. a8d612a · on feature/mini-me-as-a-sdk · k33g · 13d ago
README.en.md · 23 lines · 1.3 KBmarkdown
Blame HistoryOpen raw

Using mini-me as a library, over ACP

Version française

Programs in other languages use mini-me as a library by driving mm -acp: the same JSON-RPC protocol an editor such as Zed speaks, on the child process's stdin and stdout. Nothing changes in mm; every agent file works, with its tools, hooks, MCP servers and other agents.

Folder Language Status
nodejs/ Node.js (ticket 167) done: minime.js, four examples, tests
go/, python/, rust/, swift/, nushell/ tickets 168–172 not started

What every client does:

Wanted ACP message
start initialize, then session/new {cwd}
run a completion session/prompt
stream the session/update notifications: agent_message_chunk, agent_thought_chunk, tool_call, tool_call_update
not streamed join the text chunks until session/prompt answers with its stopReason
cancel the session/cancel notification; the prompt then answers stopReason: "cancelled"
confirm a tool (yolo: false) answer mm's session/request_permission request

Limits shared by all: the mm binary must be installed, it runs locally (stdio), and the agent is a file (mm -acp -config <file>). For a Go program without the binary, see ticket 139 (an in-process SDK).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
# Using mini-me as a library, over ACP

*[Version française](README.fr.md)*

Programs in other languages use mini-me as a library by driving `mm -acp`: the same JSON-RPC protocol an editor such as Zed speaks, on the child process's stdin and stdout. Nothing changes in mm; every agent file works, with its tools, hooks, MCP servers and other agents.

| Folder | Language | Status |
|---|---|---|
| [`nodejs/`](nodejs/README.en.md) | Node.js (ticket 167) | done: `minime.js`, four examples, tests |
| `go/`, `python/`, `rust/`, `swift/`, `nushell/` | tickets 168–172 | not started |

What every client does:

| Wanted | ACP message |
|---|---|
| start | `initialize`, then `session/new {cwd}` |
| run a completion | `session/prompt` |
| stream | the `session/update` notifications: `agent_message_chunk`, `agent_thought_chunk`, `tool_call`, `tool_call_update` |
| not streamed | join the text chunks until `session/prompt` answers with its `stopReason` |
| cancel | the `session/cancel` notification; the prompt then answers `stopReason: "cancelled"` |
| confirm a tool (`yolo: false`) | answer mm's `session/request_permission` request |

Limits shared by all: the `mm` binary must be installed, it runs locally (stdio), and the agent is a file (`mm -acp -config <file>`). For a Go program without the binary, see ticket 139 (an in-process SDK).