Repository navigation
0.1.0
The first release of Synaptik: accept, reject or comment on any part of the agent's reply in Claude Code, and Synaptik turns your marks into one prompt.
Still early: it is built on Claude Code's young mods API, and keys and layout may change before 1.0.
What it does
- Mark any part of the reply in place: a paragraph, a step in a plan, an item in a list, a code block, a table or a quote. Use ✓ accept, ✗ reject or ✎ comment, one key each.
- Nesting is kept. "Yes to the plan, no to this sub-step" reaches the agent with its structure. A marked item arrives under its parent.
- One prompt, in your own words. Your marks compile into a suggestion in the prompt box.
Tabtakes it and⏎sends it. Nothing reaches the agent until you send, and Synaptik adds no markers or identifiers. - Both renderers: fullscreen reviews the reply in place, with a map of its blocks docked beside it. Classic shows the selected block above the prompt.
New since 0.1.0-alpha.3
- Blocks follow the Markdown, not the spacing (#50).
- Nesting comes from the list's structure, so an item indented by 4 spaces, or nested under
10., is one level down. - Code, tables and quotes are always blocks of their own, nested under their list item when they sit inside one. So a command in a step can be marked on its own.
- Headings underlined with
===or---, a quote right after a paragraph, and four-backtick fences are handled.
- Nesting comes from the list's structure, so an item indented by 4 spaces, or nested under
- Nested items line up as Claude Code draws them: 2 columns under
-, 3 under1.. Before, there was always 3, which put items under a bullet one space too far in. - Quotes in the prompt keep the text intact:
SESSION_CACHE,#12anda > bno longer lose characters. - Sending is yours alone. The navigator's hidden
skey, which sent the prompt directly, is gone. You take the suggestion and send it. - Long blocks draw on Claude Code 2.1.287. A block over 10,000 characters is drawn in pieces, where it used to drop the reply back to Claude Code's own drawing.
- Under the hood: the marking rules are now one tested module (#51). There are 221 tests, run in CI on Claude Code 2.1.287 and 2.1.304.
Install
Claude Code v2.1.287+ in a terminal.
claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-appWithout a GitHub SSH key, set CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1 first. claude plugin update synaptik@synaptik-app brings later versions.
Coming from an alpha zip? Remove ~/.claude/skills/synaptik first. With both installed, the marketplace copy loads and the zip copy shows as "Not loaded".
Offline: download synaptik-0.1.0.zip below, then:
# every session
unzip synaptik-0.1.0.zip -d ~/.claude/skills/
# or one session only
claude --plugin-dir ./synaptik-0.1.0.zipOnce it's in, the band above the prompt says how to start after each reply. /synaptik help lists the commands, and /synaptik config sets better keys. A mod runs inside Claude Code with your own permissions and is not sandboxed; see SECURITY.md. The only file Synaptik writes is keybindings.json, through /synaptik config, on Save.
Tested on
macOS Terminal.app, in fullscreen and classic, and Windows Terminal (PowerShell 7).
Not yet tested:
- other macOS terminals: iTerm2, Ghostty, kitty, WezTerm
- other Windows shells and consoles: PowerShell 5.1, cmd, Git Bash, WSL, conhost
- Linux terminals
- IDE terminals: VS Code, Cursor, JetBrains
- tmux, screen and SSH
If you use one of these, a note on #13 helps.
Known limits
- Only the last reply can be marked, and marks last for the session.
- 💬 discuss, a side thread about one block, is phase 2. Choosing it only says so.
- Code blocks and tables are marked as a whole (#5, #6).
- No key clears a mark yet. The same verb again unmarks ✓ and ✗ (#100).
- In fullscreen, a reply taller than about two screens has a middle Synaptik can't scroll to. Scroll there yourself, or use Home / End (#64).
- On a narrow terminal, the navigator opens above the band and repeats the block shown in the reply (#75).
- Another mod that redraws replies may be bypassed while you review.
- A Claude Code update can break Synaptik. An issue with your
claude --versionhelps.
Feedback
An issue is the most useful thing you can send: a bug, or what felt wrong or missing on a real reply.
Full changelog: v0.1.0-alpha.3...v0.1.0
