indelible-mcp 5.5.1 → 5.7.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLI_HANDBOOK.md +24 -1
- package/CUSTOMER_AGENT_HANDBOOK.md +12 -0
- package/LICENSE +1 -1
- package/package.json +1 -1
- package/src/index.js +3433 -877
package/CLI_HANDBOOK.md
CHANGED
|
@@ -67,7 +67,10 @@ indelible-mcp drift wait --from=codex # hold the wire for the next message
|
|
|
67
67
|
indelible-mcp drift loop --as=claude # run a seat's heartbeat
|
|
68
68
|
indelible-mcp drift summon # THE SUMMONER: watches the wire; when a message sits
|
|
69
69
|
# unanswered, spawns a FRESH pilot via its own vendor
|
|
70
|
-
# CLI to
|
|
70
|
+
# CLI to reply. Both pilots, no setup. The message it
|
|
71
|
+
# must answer travels with the summons, so a busy wire
|
|
72
|
+
# cannot hand it the wrong conversation.
|
|
73
|
+
indelible-mcp drift summon --for=codex-qa # work ONE named seat's lane (see Named Seats below)
|
|
71
74
|
indelible-mcp drift pause | resume # YOUR brake — freezes everything, works with no wallet
|
|
72
75
|
indelible-mcp drift listen "stop, listen" # freeze both AND hand them your message
|
|
73
76
|
```
|
|
@@ -92,6 +95,19 @@ indelible-mcp drift post --as=codex --to=claude-builder "a task ONLY the builder
|
|
|
92
95
|
|
|
93
96
|
- `--to` puts a name on the envelope: only the seat it names will answer it. No `--to` = anyone may answer.
|
|
94
97
|
- Summoners answer with the right vendor automatically (a `claude-anything` seat runs the Claude CLI).
|
|
98
|
+
|
|
99
|
+
**Two conversations at once — the private lane.** Point a summoner at a named seat and it works only
|
|
100
|
+
that seat's thread:
|
|
101
|
+
|
|
102
|
+
```
|
|
103
|
+
indelible-mcp drift summon --once --for=codex-parity # answers ONLY letters addressed to codex-parity
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
Naming a seat this way turns on its **lane**: it answers what was addressed to it and leaves everything
|
|
107
|
+
else — including other threads' open messages — alone. That is what lets two windows run two separate
|
|
108
|
+
conversations on one wire without stealing each other's work. Plain `claude` / `codex` seats keep the
|
|
109
|
+
shared line and answer anything unaddressed; add `--lane` to scope one of them too, or `--lane=off` to
|
|
110
|
+
put a named seat back on the shared line.
|
|
95
111
|
- No pile-ups by construction: however many seats are listening, the ledger admits exactly ONE answer per message.
|
|
96
112
|
- A guard coming on duty answers the current conversation and everything after — it never digs up old history (pass `--backlog=all` to a summoner if you truly want the past drained; it spends per letter).
|
|
97
113
|
|
|
@@ -198,6 +214,13 @@ hook post-compact Auto-restore after compaction (called by hook)
|
|
|
198
214
|
|
|
199
215
|
The CLI and MCP server are the **same codebase**. They import the same tool functions (`saveSession`, `loadContext`, `saveFile`, `diaryChat`, etc.) and use the same wallet at `~/.indelible/config.json`.
|
|
200
216
|
|
|
217
|
+
> ⚠️ **The same wallet on two machines: read from both, write from one.** The coin-reservation that
|
|
218
|
+
> stops two saves colliding is kept **on the machine it runs on** — it cannot see a sibling box. So
|
|
219
|
+
> two machines sharing a wallet can pick the same coin, both broadcast, and Bitcoin keeps one; each
|
|
220
|
+
> box sees only its own attempt, so both can report success while one save is lost. Recall, verify
|
|
221
|
+
> and read freely from anywhere. Do your **saving from one machine at a time**, and treat a save that
|
|
222
|
+
> times out or says *pending* as not yet durable until it confirms.
|
|
223
|
+
|
|
201
224
|
| | CLI | MCP Server |
|
|
202
225
|
|---|---|---|
|
|
203
226
|
| **Location** | `C:/Indelible-main/indelible-cli/src/` | `C:/bsv-claude-wrapper/mcp-server/` |
|
|
@@ -263,6 +263,16 @@ They are not assigned to you. Nothing is issued. Each one is computed from your
|
|
|
263
263
|
|
|
264
264
|
**Check it yourself.** Press "Verify crew" and the browser re-derives all sixteen from your wallet and compares them to what is stored. Close the browser, open it on another machine, unlock, and you get the same sixteen addresses. Nothing is fetched from us to make that happen.
|
|
265
265
|
|
|
266
|
+
> ⚠️ **One machine writing at a time.** Deriving your crew on a second machine is safe — that is a
|
|
267
|
+
> read, and it is the paragraph above. **Saving to the chain from two machines on the same wallet at
|
|
268
|
+
> the same time is not.** Both boxes can pick the same coin, both broadcast, and Bitcoin keeps one of
|
|
269
|
+
> them. Each box only sees its own attempt, so both can report success while one save is lost.
|
|
270
|
+
>
|
|
271
|
+
> Until coordinated writing ships, keep **one active writer**: use the second machine to read, verify
|
|
272
|
+
> and recall, and do your saving from one. And treat a save that times out or reports *pending* as
|
|
273
|
+
> **not yet saved** — it may still land, but until it is confirmed it is not durable, and the honest
|
|
274
|
+
> move is to check `indelible-mcp status` rather than assume.
|
|
275
|
+
|
|
266
276
|
Your crew is also **signed by your wallet**, and the signature is public. Anyone can fetch `/api/sanctuary/crew/<your-address>` with no account and check it offline: every agent is signed, and a separate crew signature commits to the exact set, so nobody can quietly serve someone a shortened version.
|
|
267
277
|
|
|
268
278
|
**What that does and does not prove.** It proves we did not invent your crew and cannot alter it. It does not prove the agents were derived from your wallet, and nothing ever can: derivation runs on a shared secret, so only someone holding the private key can reproduce it. That is a recovery property, not a proof to strangers. It also does not stop us withholding the record entirely, which is what the on-chain anchor in section 8 is for. Until that lands the app marks every agent unattested, and means it.
|
|
@@ -288,6 +298,8 @@ stay on the record and the decision lands on YOUR desk, and even your ruling del
|
|
|
288
298
|
|
|
289
299
|
**Named seats (5.4.0) — a staff, not a pair.** Seats can carry names now: `claude-builder`, `claude-reviewer`, `codex-auditor` — so two Claudes (or any mix) hold distinct seats on one wire, and a message can be addressed to exactly one of them (`--to=claude-builder`: only that seat answers). However many seats are listening, the ledger admits exactly ONE answer per message — a bigger staff never means duplicate answers or duplicate spend. And a summoner coming on duty answers the current conversation, never the deep past.
|
|
290
300
|
|
|
301
|
+
Point a summoner at a named seat — `indelible-mcp drift summon --for=codex-auditor` — and it works only that seat's **lane**: it answers what was addressed to it and leaves every other thread alone, so two windows can run two separate conversations on one wire without stealing each other's work. Whatever it is hired to answer travels with the summons, so a busy wire cannot hand a fresh pilot the wrong conversation.
|
|
302
|
+
|
|
291
303
|
**Your books.** `indelible-mcp drift ledger` shows every mind ever summoned on your account — when, which seat, what it was hired to answer, and how it ended. Nothing hires without a paper trail.
|
|
292
304
|
|
|
293
305
|
Your brake beats everything: `indelible-mcp drift pause` (or just tell either pilot "pause the
|
package/LICENSE
CHANGED
|
@@ -11,7 +11,7 @@ Additional Use Grant: You may make use of the Licensed Work for personal,
|
|
|
11
11
|
commercial blockchain storage, session saving, or
|
|
12
12
|
encrypted vault service without written permission
|
|
13
13
|
from the Licensor.
|
|
14
|
-
Change Date: August
|
|
14
|
+
Change Date: August 13, 2030
|
|
15
15
|
Change License: MIT License
|
|
16
16
|
|
|
17
17
|
Terms
|
package/package.json
CHANGED