feat(cli): Claude-as-Neuron CLI tooling + soul-side handoff #3

Closed
tim.lingo wants to merge 0 commits from feat/cli-as-neuron into main
Member

What

Tooling built on Tim's machine (2026-06-09) to run Neuron from the terminal as a Claude Code session - identity + graph memory + agency - instead of relaying to the soul's /api/chat (the Sonnet "light version" with broken retrieval). Lands under a new cli/ directory.

This is a proposal / scaffolding. Each piece works around a current soul limitation and should be retired once the soul does these natively (see cli/HANDOFF.md).

Contents

  • cli/neuron_recall.py - BM25 read over the engram snapshot + local CLI memories. Works around the soul returning ~2 pinned nodes for every query.
  • cli/neuron_remember.py - reliable local memory writes with read-back verify. Works around the corrupting /api/neuron/knowledge/capture path (related: branch fix/engram-write-corruption-handoff).
  • cli/neuron-chat.py - standalone direct-chat REPL with per-turn memory injection.
  • cli/neuron_mcp.py - stdlib MCP server (chat/search) with graceful degradation when recall is down.
  • cli/CLAUDE.md.example - the operating identity that makes Claude Code run as Neuron (Tim-specific; genericize before reuse).
  • cli/HANDOFF.md - soul-side bugs to fix so this becomes unnecessary: retrieval/embeddings, the missing axon :7771 service, the write path, daemon engram supervision, and voice.
  • cli/README.md - the model and how it fits together.

Pairs with

The runtime model-passthrough + UTF-8 escaping fixes in el (neuron-technologies/el PR #53). Those are the real code fixes; this is the CLI scaffolding around them.

Testing

Python scripts run against the live snapshot on Tim's machine (recall/remember verified, round-trip works). No build step.

🤖 Generated with Claude Code

## What Tooling built on Tim's machine (2026-06-09) to run **Neuron from the terminal as a Claude Code session** - identity + graph memory + agency - instead of relaying to the soul's `/api/chat` (the Sonnet "light version" with broken retrieval). Lands under a new `cli/` directory. This is a **proposal / scaffolding**. Each piece works around a current soul limitation and should be retired once the soul does these natively (see `cli/HANDOFF.md`). ## Contents - `cli/neuron_recall.py` - BM25 read over the engram snapshot + local CLI memories. Works around the soul returning ~2 pinned nodes for every query. - `cli/neuron_remember.py` - reliable local memory writes with read-back verify. Works around the corrupting `/api/neuron/knowledge/capture` path (related: branch fix/engram-write-corruption-handoff). - `cli/neuron-chat.py` - standalone direct-chat REPL with per-turn memory injection. - `cli/neuron_mcp.py` - stdlib MCP server (chat/search) with graceful degradation when recall is down. - `cli/CLAUDE.md.example` - the operating identity that makes Claude Code run as Neuron (Tim-specific; genericize before reuse). - `cli/HANDOFF.md` - soul-side bugs to fix so this becomes unnecessary: retrieval/embeddings, the missing axon :7771 service, the write path, daemon engram supervision, and voice. - `cli/README.md` - the model and how it fits together. ## Pairs with The runtime **model-passthrough** + **UTF-8 escaping** fixes in `el` (neuron-technologies/el PR #53). Those are the real code fixes; this is the CLI scaffolding around them. ## Testing Python scripts run against the live snapshot on Tim's machine (recall/remember verified, round-trip works). No build step. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
tim.lingo added 1 commit 2026-06-10 01:37:20 +00:00
feat(cli): Claude-as-Neuron CLI tooling + soul-side handoff
Neuron Soul CI / build (pull_request) Successful in 5m10s
2ea1d50fa3
Tooling built on Tim's machine to run Neuron from the terminal as a
Claude Code session (identity + graph memory + agency) instead of
relaying to the soul's /api/chat.

- cli/neuron_recall.py    BM25 read over the engram snapshot + CLI memories
                          (works around pinned-only soul search)
- cli/neuron_remember.py  reliable local memory writes with read-back verify
                          (works around the corrupting capture endpoint)
- cli/neuron-chat.py      standalone direct-chat REPL with per-turn memory injection
- cli/neuron_mcp.py       stdlib MCP server (chat/search) with graceful degradation
- cli/CLAUDE.md.example   the operating identity that makes Claude Code run as Neuron
- cli/HANDOFF.md          soul-side bugs to fix so this becomes unnecessary

Scaffolding/proposal - intended to be retired once the soul does native
retrieval, correct persistence, and a real CLI identity/voice surface.
Pairs with the runtime model-passthrough + UTF-8 fixes in the el repo.

Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
Author
Member

Handoff (auto) — prereq #16.

WHAT: new cli/ dir (neuron-chat.py, neuron_mcp.py, neuron_recall.py, neuron_remember.py) + 3 docs. All additive, touches nothing existing.
REAL SOURCE: 767 lines, all new files.
RISK: low — cannot break the soul (new files only).
VERIFY: the CLI scripts import + run against the soul.
ORDER: safe to fast-track.

Handoff (auto) — prereq #16. WHAT: new cli/ dir (neuron-chat.py, neuron_mcp.py, neuron_recall.py, neuron_remember.py) + 3 docs. All additive, touches nothing existing. REAL SOURCE: 767 lines, all new files. RISK: low — cannot break the soul (new files only). VERIFY: the CLI scripts import + run against the soul. ORDER: safe to fast-track.
will.anderson closed this pull request 2026-06-15 16:38:06 +00:00
will.anderson deleted branch feat/cli-as-neuron 2026-06-15 16:38:13 +00:00

Pull request closed

This pull request cannot be reopened because the branch was deleted.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: neuron-technologies/neuron#3