Skip to content

0.5.0 — 2026-06-30

Choose a tag to compare

@github-actions github-actions released this 30 Jun 05:10

Release Notes

Added

  • Extensions can rewrite tool output before it enters history (HookResult::Replace).
    An after_tool_call hook may now return a Replace action that substitutes the
    tool's output before it's appended to the conversation — enabling context
    virtualization, redaction, summarization, or any transform of what the model
    sees, implemented as an extension rather than baked into the core. Honored at
    all 5 after_tool_call sites for consistent behavior across every tool path.
    • Security — two-key gate. Rewriting tool output is privileged: an extension
      must both declare the capability and be granted it; a single switch isn't
      enough to silently alter what the model reads. (From security review.)
    • Audit trail. Every Replace is recorded to a persistent audit log so
      output rewrites are accountable and inspectable after the fact.
    • Docs. The replace action and tools.transform_output are documented
      across the extension docs (hooks, permissions, protocol, contract), with a
      worked replace_extension.py fixture proving the path end-to-end.

Changed

  • Oversized tool output now compresses before it truncates. When a tool's
    output exceeds the buffer, the runtime first attempts to compress/condense it
    rather than hard-cutting the tail, so more of the useful signal survives instead
    of being lost to a blunt truncation. The preview remains a ~32KB prefix plus a
    marker (clarified in docs — it is a preview, not a hard cap).
  • Unambiguous plugin commands resolve by bare name. A plugin command with no
    naming collision can be invoked directly (e.g. /crush) instead of requiring
    the fully-qualified /plugin:command form. Ambiguous names still require
    qualification.

Internal

  • TUI layout layer hardened. Migrated all 12 Layout::split() sites to the
    typed .areas() API (named bindings, compile-checked pane counts — a class of
    runtime index panics becomes compile errors) and extracted the main 6-pane
    layout into a single AppAreas function, removing duplicated height math that
    had to be kept in sync by hand. No behavior change — equivalence verified live.

Install synaps 0.5.0

Install prebuilt binaries via shell script

curl --proto '=https' --tlsv1.2 -LsSf https://github.com/HaseebKhalid1507/SynapsCLI/releases/download/v0.5.0/synaps-installer.sh | sh

Download synaps 0.5.0

File Platform Checksum
synaps-aarch64-apple-darwin.tar.gz Apple Silicon macOS checksum
synaps-x86_64-apple-darwin.tar.gz Intel macOS checksum
synaps-aarch64-unknown-linux-gnu.tar.gz ARM64 Linux checksum
synaps-x86_64-unknown-linux-gnu.tar.gz x64 Linux checksum
synaps-x86_64-unknown-linux-musl.tar.gz x64 MUSL Linux checksum