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.
Unreleased
In Development
- Improved ACP tool-call titles, kinds, locations, permission payloads, and status transitions for friendlier editor display and follow-along support.
- Removed the ACP client filesystem/terminal executor path because the v2 client capability extension is no longer supported; ACP sessions now use the local executor.
Latest Release
[0.4.9] - 2026-05-23
Skill & Team Tool Display • Session Title Fix • Deferred Session Files
Added
- Enhanced tool display info for skill and team tools (load_skill, team_list, team_create, team_spawn, team_send_message, team_delete) in the web UI.
- TUI formatted output for load_skill, team_list, and team operations — compact, styled summaries instead of raw text.
- ACP tool kind mappings for team tools — team_list is read-only, team_create/spawn/send_message/delete are execute-type.
- Skill description attribute in loaded skill output for richer context in tool results.
Changed
- Session title generation now only fires for truly new sessions — resuming a session with a client-provided UUID that has no file on disk still generates a title.
- System prompt recording is deferred until the first real message, preventing empty session files when jcode is opened and immediately closed.
Fixed
- Simplified function signatures and removed unused variables in ToolCallCard and TerminalPanel components.
- Removed unused import in Langfuse telemetry.
[0.4.8] - 2026-05-22
Custom Model Registry • New Model Providers • Shared State Fix
Added
- Custom model support in ModelRegistry — users can add and use custom models alongside the built-in registry.
- Two new model providers added to the built-in registry.
Fixed
- Deep-copy providers in
NewModelRegistryto prevent shared state mutation across instances.
[0.4.7] - 2026-05-21
Web Frontend Redesign • Pencil Design System • Multi-tab Terminal
Added
- Complete web frontend visual overhaul based on the Pencil design system.
- Borderless input area with a right panel showing file tree and changes.
- Multi-tab terminal with resizable panels and search renderer.
- Themed bash output and dark mode fixes.
- Inline channel toggle in the input area with sidebar border.
Changed
- Aligned TopBar, Sidebar, and ChatInput with the Pencil design spec.
- Removed toolbar separator lines, compacted textarea, and shortened file paths.
- Enlarged input card, removed sidebar lines, and added terminal close button.
- Removed max-width constraint on input card for widescreen displays.
Fixed
- Updated terminal icon from laptop to lightning bolt for consistency.
- Restored header row matching Pencil design — no separator line, click to collapse.
- Hide title row when expanded and collapse via hover button.
- Unified search and diff expanded content, removed internal dividers.
- Removed duplicate inner headers from expanded tool call cards.
[0.4.6] - 2026-05-14
Context Management • TUI Version Display • Executor Pager Fix
Added
- Enhanced context management with telemetry and approval improvements.
- Version display in TUI sidebar and logo rendering.
Changed
- Disabled pager and interactive prompts in all executors for non-interactive use.
Fixed
- Dependency updates: bumped marked (18.0.2), postcss (8.5.10), nokogiri (1.19.3).
[0.4.5] - 2026-04-28
DeepSeek Thinking Mode Fix
Fixed
- Passthrough
reasoning_contentfor DeepSeek thinking mode so reasoning tokens are preserved in the response.
[0.4.4] - 2026-04-28
Cached Token Telemetry • TUI Textarea Fix • Version Display Fixes
Added
- Enhanced token usage tracking with cached tokens in Langfuse telemetry.
- Refactored TUI textarea line calculation for improved accuracy.
Fixed
- Corrected version formatting in Makefile and version rendering in shortcut hints.
- Removed version formatting in server version display.
- Fixed web version to use the build version instead of placeholder.
[0.4.3] - 2026-04-27
ACP Transport • ACP Error Handling
Added
- Initial ACP transport integration work for editor-driven sessions.
Fixed
- Improved ACP command execution timeout and cancellation error handling.
[0.4.2] - 2026-04-27
Web Message Actions • Edit • Retry • Copy
Added
- Message edit, retry, and copy actions in the web UI.
Fixed
- Addressed CodeRabbit review feedback on message actions implementation.
[0.4.1] - 2026-04-26
Multimodal Image Input • ACP Vision Support • Session Image Restore
Added
- Multimodal image input for the web UI and ACP transport when the selected model supports image input.
- Session persistence now stores attached images and restores them during session replay.
[0.3.10] - 2026-04-25
Auto-open Browser • Resize Reflow • Model Picker Redesign
Added
- Automatic browser opening after the web server starts.
- Keyboard shortcuts help in the TUI.
Changed
- Redesigned model picker with provider grouping and visibility controls.
- TUI content now reflows correctly on terminal resize.
- Subagent output renders as Markdown with expand/collapse support.
Fixed
- Ctrl+Y copy now uses stored raw assistant text instead of reconstructing it from rendered lines.
[0.3.9] - 2026-04-24
Keyboard Shortcuts Help • Context-sensitive Hints
Added
- Keyboard shortcuts help panel with context-sensitive usage hints.
[0.3.8] - 2026-04-24
Sidebar Cleanup • Better ANSI Width Handling
Changed
- Cleaned up the TUI sidebar component structure.
- Improved ANSI width handling in layout rendering.
[0.3.7] - 2026-04-24
JCode Buddy Docs • Multi-line Paste • Web Fixes
Added
- JCode Buddy BLE documentation and configuration guidance.
- Multi-line paste support with reference storage.
Changed
- Internal documentation cleanup around the new Buddy and paste flows.
Fixed
- Web TODO panel rendering issues.
- Frontend session split issues.
[0.3.6] - 2026-04-24
Sidebar Divider Alignment • Stable Team Teammates • Build Cleanup
Changed
- Removed the redundant
build_frontend.shhelper; frontend builds now flow throughmake.
Fixed
- TUI sidebar divider alignment is now enforced with manual line-by-line composition and ANSI-aware truncation/padding.
- Spawned teammates are no longer cancelled when the leader agent finishes its current run.
[0.3.5] - 2026-04-23
TUI Redesign • [J]CODE Branding • Updated Screenshots and Docs
Added
- New two-column TUI layout with a dedicated sidebar and refreshed orange-accented styling.
- Updated screenshots for TUI, web interface, Zed ACP integration, and agent teams.
- Added
DESIGN_PLAN.mdto capture the redesigned product direction.
Changed
- Rebranded docs, icons, and UI surfaces to
[J]CODE. - Improved web session restoration to preserve current session content.
- Removed the copy notice and tightened sidebar spacing in the redesigned TUI.
[0.3.4] - 2026-04-22
Bidirectional BLE • ACP Approval Fixes • Resume Consistency
Added
- Bidirectional BLE communication support so BLE devices can send commands back into the runtime.
Changed
/resumenow behaves consistently with the--resumeCLI flag.
Fixed
- ACP tool-call approval rejection now works correctly when multiple tool calls are pending.
- Additional ACP handler review fixes improved approval/session stability.
[0.3.3] - 2026-04-21
Tool Display Polish • Session UX Improvements • Resume Bug Fixes
Added
- Refined tool call display and session UX across TUI and web.
- Stronger session ID validation and better message history reconstruction.
Changed
- Execute tool output now strips redundant
STDERRheaders and supports optional descriptions. - Tool call cards, approval surfaces, and settings/session UI were polished across interfaces.
Fixed
- Resume/session ID bugs were resolved across web, ACP, and TUI.
- Message history reconstruction is more reliable when restoring sessions.
[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
- Type
OnAgentStart()lifecycle event for immediate working feedback before any LLM call- Web frontend handles
agent_startSSE/WS event for real-time running state
Changed
- Simplified token usage tracking with
LastTotalTokensfield - Working notification moved from
OnAgentTexttoOnAgentStartfor 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
Notifierinterface with structuredNotifyEventtypesChannelNotifierwrapper to use anyChannelas aNotifier- 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 doctorwith 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
useThemecomposable 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
toolCallIDfor 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
ToolCallIDfield 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
[0.0.5] - 2026-04-16
Changelog Pages • Tool Call IDs • Execute Exit-Code Handling
Added
- Root and docs-site changelog pages.
toolCallIDpropagation and indexed tool notifications for clearer tool/result pairing.- PR description guidance template for contributors.
Changed
- Documentation and AGENTS guidance were refreshed.
- DOMPurify bumped to 3.4.0.
Fixed
- Execute tool reports command exit codes cleanly even when the command fails.
[0.0.4] - 2026-04-16
TUI Recording Flow • Langfuse Tracing Updates
Added
- Improved TUI display and session recording flow.
Recorder.HasRecording()and startup checks for existing recordings.- Better Langfuse tracing for interactive runs, subagents, and teammates.
Changed
- Runner and interactive startup plumbing were refined for recorded sessions.
- Generated model registry output stopped being tracked in version control.
Version History
[0.0.3] - 2026-04-10
Self-update Support • Installation Script
Added
jcode updatecommand 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.4.9.
All releases maintain backward compatibility with existing configurations and workflows.
Getting Help
- Questions about a feature? Check the Features section
- Command reference? See Commands & Shortcuts
- Configuration questions? Visit Configuration
- Report a bug? Open an issue on GitHub
Last updated: May 23, 2026