Changelog

All notable changes to jcode are documented here. This project adheres to Semantic Versioning and follows the Keep a Changelog format.

For the full changelog, see CHANGELOG.md in the repository root.

Latest Release

[0.3.2] - 2026-04-20

TUI Cancel Confirmation • Slash Command Autocomplete • OnAgentStart Lifecycle Event

Added

  • Cancel agent confirmation dialog to prevent accidental aborts when cancelling a running agent
  • Interactive slash command autocomplete with keyboard navigation and filtering
    • Type / to see all available commands, filter as you type, Up/Down to navigate
    • Tab or Enter to accept, Esc to dismiss
  • OnAgentStart() lifecycle event for immediate working feedback before any LLM call
  • Web frontend handles agent_start SSE/WS event for real-time running state

Changed

  • Simplified token usage tracking with LastTotalTokens field
  • Working notification moved from OnAgentText to OnAgentStart for earlier visual feedback

Fixed

  • Resolved gocritic, staticcheck and ineffassign lint warnings
  • Handle unchecked error returns in BLE code (errcheck)

[0.3.1] - 2026-04-19

BLE IoT Notifications • Notifier System Refactoring • Rich Message Formatting

Added

  • BLE IoT device notifications with auto-discovery of JCODE-* devices
  • Real-time agent status push to BLE devices (idle/working/attention/complete)
  • Nordic UART Service (NUS) protocol support for device commands
  • Lazy background connection with automatic reconnection on failure
  • Notifier interface with structured NotifyEvent types
  • ChannelNotifier wrapper to use any Channel as a Notifier
  • WeChat integrated as notifier for automatic working/idle status pushes
  • Varied, time-aware rich messages for WeChat (4+ variations per event)
  • BLE-optimized short commands with ~10 character display values

Changed

  • Notifier.Notify() now takes structured events instead of raw strings
  • Event types: EventIdle, EventWorking, EventApproval, EventDone
  • Each notifier formats events for its display (BLE: commands, WeChat: rich text)
  • BLE messages: idle→”ready”, working→”thinking”, complete→”done”/”failed”
  • WeChat messages vary by time-of-day and rotate for natural conversation
  • Agent completion triggers “complete” then returns to “idle” after 5 seconds

[0.2.2] - 2026-04-18

Grep Enhancements • Doctor Command • WeChat Idempotency • Web UI Fixes

Added

  • Hidden file support and updated default output mode for grep tool
  • Enhanced jcode doctor with improved system diagnostics
  • Login reminder message for WeChat session activation
  • Idempotent message deduplication for WeChat to prevent duplicate processing

Changed

  • Makefile computes version from latest git tag automatically
  • Message splitting adjusted to prevent orphaning tool-result messages during compaction
  • Web sessions sorted by creation date for consistent ordering

Fixed

  • Web conversation rendering and session sort order
  • Tool result handling for proper display in web UI

[0.2.1] - 2026-04-17

Dark Mode / Theme System • WeChat Channel Integration • Tool Call Enhancements • Bug Fixes

Added

  • Dark / Light / System theme modes with CSS custom-property design tokens
  • useTheme composable for reactive theme management across all web components
  • Pre-hydration script to prevent flash of unstyled content (FOUC) for light-theme users
  • Smooth cross-fade animations on theme transitions
  • Bidirectional WeChat messaging: send prompts from WeChat, receive results back
  • Inbound WeChat messages displayed in web UI with green “WeChat” label
  • Toolbar toggle for quick WeChat enable/disable
  • Settings dialog Channels tab with Connect/Disconnect and QR code login
  • Approval and task-done notifications pushed to WeChat
  • toolCallID for precise tool call/result matching

Changed

  • Web UI design system migrated from hardcoded Tailwind classes to CSS custom properties
  • Execute tool reports exit codes correctly instead of returning errors
  • NotifyingHandler always registered in web mode (UI toggle works without config)
  • DOMPurify bumped to 3.4.0

Fixed

  • Web UI showing user messages twice
  • WeChat inbound messages not reaching agent in web mode
  • Done/approval notifications not firing in web mode
  • Approval notification race with 10s timer
  • Exit code not reported on command failure

[0.1.1] - 2026-04-16

TUI Session Display Enhancements • Langfuse Integration Improvements • Session Recording Enhancements

Added

  • Full session reconstruction with complete tool call history on resume
  • Nested span support for subagent and teammate traces using ParentObservationID
  • Subagent session recording with tool call and result persistence to JSONL
  • Tool call ID linking between calls and results for full audit trails
  • ToolCallID field in session entries for tool call/result pairing

Changed

  • Streaming tool call arguments now accumulated across chunks before display
  • Tool call history reconstruction from JSONL includes complete tool messages
  • Subagent inner tool calls and results recorded alongside parent session
  • Tool parameters displayed during streaming execution (no truncation)

Fixed

  • Streaming tool call arguments partial JSON fragments now properly accumulated
  • Subagent tool call parameters missing from TUI display
  • Subagent session content not persisted or displayed on resume
  • Langfuse traces incomplete for subagent and teammate execution paths
  • Tool parameters disappearing from conversation history during reduction

Version History

[0.0.3] - 2026-04-10

Self-update Support • Installation Script

Added

  • jcode update command for self-updating binary
  • Installation script for easy setup from GitHub

Changed

  • Improved build and release workflow
  • Enhanced artifact handling in CI/CD pipeline

[0.0.2] - 2026-04-09

Artifact Download Fix

Fixed

  • Artifact download path corrected to ‘internal/’ in release workflow

[0.0.1] - 2026-04-08

Initial Release

Added

  • Core agent loop with file operations, shell execution, and regex search
  • Todo tracking and interactive user prompting
  • Plan Mode for structured task review before execution
  • Agent Teams for parallel multi-agent coordination
  • SSH support for remote code editing
  • Multi-model support with OpenAI-compatible APIs
  • Session recording and resume capability
  • Web interface with React/Vue frontend
  • Langfuse integration for tracing
  • Per-agent token usage tracking
  • WebSocket support for real-time communication

How to Check Your Version

jcode version

Shows:

  • Current version number
  • Build timestamp
  • Git commit SHA

How to Update

jcode update

This automatically downloads and installs the latest version. You can also update manually:

curl -fsSL https://raw.githubusercontent.com/cnjack/jcode/main/script/install.sh | sh

What Changed Between Versions

Use the full CHANGELOG.md to see detailed changes for each release, including:

  • Added features and capabilities
  • Changed behavior and improvements
  • Fixed bugs and issues
  • Technical implementation details
  • Deprecated features

Breaking Changes

This section will document any breaking changes that may affect your workflow:

Currently: No breaking changes between v0.0.1 and v0.0.4.

All releases maintain backward compatibility with existing configurations and workflows.

Getting Help


Last updated: April 20, 2026