Skip to content

Releases: synaptik-app/synaptik

0.3.0

Choose a tag to compare

@github-actions github-actions released this 03 Nov 04:18
e83244c

Mark inside blocks, and discuss a block before you send. Both are in fullscreen.

New since 0.2.2

  • Step into a code block or a table (#105). Its menu has ↳ step in. Then ↑/↓ move between its lines or data rows, which take marks and comments of their own. In the prompt they nest under their block:
    "table: Option · Latency · Cost"
        ✗ row 2: "Memcached · low · $" → too little durability
    
    A block with only marked lines shows ✸ in the margin. Backspace takes the block's own mark first, then its lines' marks.
  • Discuss a block in a thread (#106). d or 💬 discuss opens a pane for that block. You talk it over with the agent there, and nothing reaches the main conversation. Several threads can run at once, as tabs.
    • Switch on include in review, and closing the pane (Esc) writes a summary: what was decided, as your instruction to the agent. It goes into your review under the block's quote, and you can edit it in the prompt box before sending.
    • Each message reads the main conversation from the prompt cache, so a thread costs little more than its own text.
  • A shorter suggestion while you review (#143). It shows its first lines and … (+N lines). The full text comes back when the review ends.

Fixed

  • /resume and /clear inside a running session (#147). Synaptik now picks up the new conversation's reply, or none after /clear. It no longer keeps reviewing a reply that's gone.

Known limits

  • Opening or closing a thread hands the keyboard to the prompt. A click on a block continues the review.
  • From the reply, a thread opens only on a terminal at least 144 columns wide. On a narrower one, use ctrl+x tab, then d.
  • These, and what Claude Code would need to lift them, are tracked in #146.

Install

Claude Code v2.1.301+ in a terminal.

claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-app

Coming from 0.2.2: claude plugin marketplace update synaptik-app && claude plugin update synaptik@synaptik-app.

Offline: download synaptik-0.3.0.zip below, and see the README.

Full changelog: v0.2.2...v0.3.0

0.2.2

Choose a tag to compare

@github-actions github-actions released this 31 Oct 14:06
1622681

A small release: Synaptik gets simpler, ahead of its submission to the plugin directory.

Changed since 0.2.1

  • /synaptik config is gone (#138). It only offered ←/→ in place of Tab/⇧Tab in the default renderer, and Tab/⇧Tab work.
  • Synaptik no longer reads or writes key bindings. It doesn't touch keybindings.json or read environment variables any more.
    • The band always names Claude Code's defaults, ctrl+x tab and tab/⇧tab. If you rebound those, your keys still work, but the band shows the default.
    • Bindings the setup already wrote stay in your file, and they still work. Remove them from ~/.claude/keybindings.json if you don't want them.
  • A plugin icon (#136).

Install

Claude Code v2.1.301+ in a terminal.

claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-app

Coming from 0.2.1: claude plugin marketplace update synaptik-app && claude plugin update synaptik@synaptik-app.

Offline: download synaptik-0.2.2.zip below, and see the README.

Full changelog: v0.2.1...v0.2.2

0.2.1

Choose a tag to compare

@github-actions github-actions released this 30 Oct 19:44
855ea04

A small release on top of 0.2.0: one fix, and two keys for undoing what you've staged or typed.

New since 0.2.0

  • Fixed: moving through a reply split by tool calls (#131). After a click, ↑/↓ and Home/End stopped at the edge of the part you clicked in. They now run over the whole reply.
  • Backspace takes a block's mark off (#100). The legend shows ⌫ unmark. A comment's text stays, and c brings it back. It works in a review started with a click; after ctrl+x tab and in the default renderer, Claude Code doesn't let a mod bind it yet.
  • ctrl+u clears the comment you're typing (#122), every line, in a review started with a click. After ctrl+x tab the field is Claude Code's own, and ctrl+u clears only the current line.
  • Synaptik stays out of claude -p and the SDK (#127): with nobody at the prompt, it registers and draws nothing.

Install

Claude Code v2.1.301+ in a terminal.

claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-app

Coming from 0.2.0: claude plugin marketplace update synaptik-app && claude plugin update synaptik@synaptik-app.

Offline: download synaptik-0.2.1.zip below, and see the README.

Full changelog: v0.2.0...v0.2.1

0.2.0

Choose a tag to compare

@github-actions github-actions released this 28 Oct 10:56
ecf626d

Review the agent's reply in place. Synaptik turns your review into one prompt.

Synaptik: reviewing a reply in place, then sending the review as one prompt

0.2 polishes the core loop: in fullscreen you now review right in the reply, with no pane beside it.

New since 0.1.0

  • Fullscreen reviews the reply itself (#39).
    • Click the band's hint, "click here to review the reply", or press ctrl+x tab.
    • ↑ / ↓ move between blocks (j / k from the keyboard entry), ← / → choose an action, ⏎ or a click applies it. a / x / c still apply directly.
    • q ends the review. Outside a review the reply is plain text you can select.
    • The map pane is gone, so a narrow terminal no longer squeezes the reply (#75).
  • Multi-line comments in both renderers (#16). A comment is typed right under its block; \ then ⏎ starts a new line. In the prompt, its lines line up under the first.
  • The band, redesigned. It shows what is staged, ✓2 ✗1 ✎1, and what ⏎ will do: "tab, then ⏎ to send", "⏎ sends your feedback", or a warning when ⏎ would send what you typed instead.
  • The suggestion in the prompt box (#21). The ✓ ✗ ✎ glyphs are coloured from the first keystroke, and the suggestion no longer starts with a space.
  • /synaptik config, simpler (#113). One setting for the default renderer: move between actions with Tab / ⇧Tab or ← / →. It never touches Claude Code's own keys, and fullscreen needs no setup.
  • The default renderer speaks fullscreen's words: "review the reply", "↑↓ blocks · ←→ actions", and q ends a review there too.
  • Fixed: clicking an action keeps the keyboard in the reply, and the item under the mouse lights up (#117). Revealing the end of a long reply no longer picks an older turn's row.
  • Under the hood: 281 tests, run in CI on Claude Code 2.1.301 and 2.1.308.

Install

Claude Code v2.1.301+ in a terminal (0.1.0 needed 2.1.287). Check yours with claude --version.

claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-app

Coming from 0.1.0: claude plugin update synaptik@synaptik-app. Without a GitHub SSH key, set CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1 first.

Offline: download synaptik-0.2.0.zip below, then:

# every session
unzip synaptik-0.2.0.zip -d ~/.claude/skills/

# or one session only
claude --plugin-dir ./synaptik-0.2.0.zip

After a reply, the band above the prompt says how to start; /synaptik help lists the commands. 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 the default renderer. Other terminals, Windows, Linux, IDE terminals, tmux and SSH: a note on #13 helps.

Known limits

  • The default renderer can't redraw what has scrolled off, so its navigator shows the selected block above the prompt, and may not open by itself on a terminal narrower than about 144 columns. The band then offers to open it.
  • Esc doesn't end a fullscreen review; q does. Claude Code doesn't tell a mod about Esc.
  • While reviewing, the reply's text can't be selected: each block takes the mouse. Outside a review it can.
  • Only the last reply can be marked, and marks last for the session.
  • A Claude Code update can break Synaptik. An issue with your claude --version helps.

What comes next is on the roadmap.

Full changelog: v0.1.0...v0.2.0

0.1.0

Choose a tag to compare

@github-actions github-actions released this 24 Oct 11:09
d1f1784

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.

Synaptik: marking up a reply, then sending the marks as 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. Tab takes 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.
  • Nested items line up as Claude Code draws them: 2 columns under -, 3 under 1.. 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, #12 and a > b no longer lose characters.
  • Sending is yours alone. The navigator's hidden s key, 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-app

Without 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.zip

Once 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 --version helps.

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

0.1.0-alpha.3

0.1.0-alpha.3 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 22 Oct 19:56
6a6eb09

The third pre-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: phase 1 is in progress (milestone). Expect rough edges.

New since 0.1.0-alpha.2

  • Install from the marketplace. This repository is its own plugin marketplace, so Synaptik installs and updates with claude plugin, no zip needed (below).
  • Terminal only. Synaptik stays out of the Claude Desktop app's Code tab and the mobile app, which have review features of their own. Any terminal works, including those in VS Code, Cursor and JetBrains IDEs.
  • /synaptik config finds your keybindings.json where Claude Code keeps it, including under CLAUDE_CONFIG_DIR, and says so when it can't write it instead of failing silently.
  • /synaptik config offers presets only for now: ctrl+x tab or ctrl+s to open, and Tab / ⇧Tab or ← / → to choose an action. Other keys go in the file by hand (#80).
  • No more "Block 1 of 0" when there is no reply to mark. /synaptik config also closes the pane it opened.
  • Claude Code 2.1.304: subagent turns no longer reset or redraw the review. CI runs on 2.1.287 and 2.1.304.
  • Under the hood: the prototype is refactored into pure logic, views and hooks (#49). There are about 175 tests.

Install

Claude Code v2.1.287+ in a terminal.

claude plugin marketplace add synaptik-app/synaptik
claude plugin install synaptik@synaptik-app

Without a GitHub SSH key, set CLAUDE_CODE_PLUGIN_PREFER_HTTPS=1 first.

Offline: download synaptik-0.1.0-alpha.3.zip below, then:

# every session (remove an older ~/.claude/skills/synaptik first)
unzip synaptik-0.1.0-alpha.3.zip -d ~/.claude/skills/

# or one session only
claude --plugin-dir ./synaptik-0.1.0-alpha.3.zip

Use one install or the other. A mod runs inside Claude Code with your own permissions and is not sandboxed; see SECURITY.md. The only file it writes is keybindings.json, through /synaptik config, on Save.

Known limits

  • 💬 discuss is phase 2; choosing it only says so.
  • Only the last reply can be marked, and marks last for the session.
  • Code blocks and tables are marked as a whole (#5, #6).
  • 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).
  • Another mod that redraws replies may be bypassed while you review.

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.2...v0.1.0-alpha.3

0.1.0-alpha.2

0.1.0-alpha.2 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 20 Oct 22:23
b1e5172

The second pre-release of Synaptik: mark up Claude Code's last reply in place — accept, reject, comment — and send your marks as one prompt.

Still early: phase 1 is in progress (milestone). Expect rough edges.

New since 0.1.0-alpha.1

  • /synaptik opens Synaptik and hands it the keyboard — another way in besides the entry key, and it works on narrow terminals where the navigator would otherwise wait. /synaptik help lists the rest; /synaptik on / off turn it on and off for the session.
  • /synaptik config — choose your keys. The key that opens Synaptik (ctrl+x tab, ctrl+s, or one you press) and the keys that move between actions (Tab / ⇧Tab, ← / →, or your own). ↑/↓ to a setting, ⏎ to change it. It lists exactly what it will change in ~/.claude/keybindings.json and what you give up, and writes only when you choose Save. Pressing your own key needs fullscreen; classic offers the presets.
  • Home / End jump to the first and last block (Fn+← / Fn+→ on a MacBook).
  • The mouse wheel over the navigator no longer moves blocks; over the reply it scrolls, as you'd expect.
  • The band names your keys, not always ← / →.
  • Fixes in the comment field: moving off it with ↑/↓ stages the comment; a failed focus move no longer leaves the field stuck.
  • About 150 automated tests now cover the navigator, the comment flow, the suggestion, the band and the key setup.

Install

Claude Code v2.1.287+ in a terminal. Download synaptik-0.1.0-alpha.2.zip below, then:

# every session (remove an older ~/.claude/skills/synaptik first)
unzip synaptik-0.1.0-alpha.2.zip -d ~/.claude/skills/

# or one session only
claude --plugin-dir ./synaptik-0.1.0-alpha.2.zip

/plugin lists it as synaptik@skills-dir. A mod runs inside Claude Code with your own permissions and is not sandboxed — see SECURITY.md; the only file it writes is keybindings.json, through /synaptik config, on Save.

Known limits

  • 💬 discuss is phase 2; choosing it only says so.
  • Only the last reply can be marked, and marks last for the session.
  • Code blocks and tables are marked as a whole (#5, #6).
  • 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).
  • Another mod that redraws replies may be bypassed while you review.

Feedback

A field note — what felt wrong or missing on a real reply — is the most useful thing you can send.

0.1.0-alpha.1

0.1.0-alpha.1 Pre-release
Pre-release

Choose a tag to compare

@github-actions github-actions released this 18 Oct 20:05
3f9a2cc

The first pre-release of Synaptik: mark up Claude Code's last reply in place — accept, reject, comment — and send your marks as one prompt.

Early: used daily by its author, phase 1 still in progress (milestone). Expect rough edges, and keys and layout to change.

Install

Claude Code v2.1.287+ in a terminal. Download synaptik-0.1.0-alpha.1.zip below, then:

# every session
unzip synaptik-0.1.0-alpha.1.zip -d ~/.claude/skills/

# or one session only
claude --plugin-dir ./synaptik-0.1.0-alpha.1.zip

/plugin lists it as synaptik@skills-dir; /synaptik turns it off and on. To update, remove ~/.claude/skills/synaptik and unzip the newer release.

A mod runs inside Claude Code with your own permissions and is not sandboxed — see SECURITY.md for what it does with them.

What works

  • Marking blocks of the last reply: ✓ accept, ✗ reject, ✎ comment. Nested items keep their place.
  • The prompt: your marks compile into a prompt shown as a suggestion in the prompt box — Tab takes it, ⏎ sends it. Nothing is sent until you do.
  • Both renderers: in fullscreen you review in place, with a block map docked beside the reply; in classic, the navigator shows the selected block above the prompt.
  • Reviewing: ↑/↓ move between blocks, Tab chooses a verb (←/→ with the recommended bindings), ⏎ applies, a x c apply directly, Esc leaves. Start with ctrl+x tab, or a single key you bind — the README has the bindings.

Known limits

  • 💬 discuss is phase 2; choosing it only says so.
  • Only the last reply can be marked, and marks last for the session.
  • Code blocks and tables are marked as a whole (#5, #6).
  • On terminals narrower than ~144 columns the navigator may not open on its own; the band above the prompt offers to open it.
  • Another mod that redraws replies may be bypassed while you review.

Feedback

A field note — what felt wrong or missing on a real reply — is the most useful thing you can send.