Skip to content

Latest commit

 

History

History
698 lines (535 loc) · 39.9 KB

File metadata and controls

698 lines (535 loc) · 39.9 KB

Changelog

All notable changes to this project will be documented in this file.

The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.

[5.6.2] - 2026-04-12

Critical hotfix for the v5.6.0 / v5.6.1 HUD statusLine installer regression. Every user who upgraded to v5.6.0 or v5.6.1 saw only the fallback face ◕‿◕ CodingBuddy instead of the full Wave 1/2/3 status line, regardless of how many statusbar features had shipped, because the installer never copied the hooks/lib/ modules the script depends on.

Fixed

  • HUD installer never synced hooks/lib/ (#1490) — _install_statusline only ran shutil.copy on codingbuddy-hud.py and never touched the sibling lib/ directory. The v5.6.0 refactor (b0fb332) extracted 11 hud_*.py modules + tiny_actor_presets.py to hooks/lib/, so every upgraded user ended up with ~/.claude/hud/codingbuddy-hud.py present and ~/.claude/hud/lib/ missing. The script's try: from hud_buddy import BUDDY_FACE failed on the missing module and the outer try/except printed only the bare fallback ◕‿◕ CodingBuddy. Every Wave 1-A version, Wave 1-B heal, Wave 1-C rate limit icons, Wave 1-D adaptive layout, Wave 2-A breathing face, Wave 2-B velocity, Wave 2-C cache savings, Wave 2-D rainbow, Wave 2-E smart context bar, and Wave 3 / 3b integration was therefore invisible. Fixed by routing the install through a new _atomic_sync_with_lib helper that copies the script and atomically replaces the entire lib/ directory (rmtree + copytree).
  • Sister bug in _install_hook_with_lib — the UserPromptSubmit hook installer used shutil.copytree(dirs_exist_ok=True), which writes new files but never removes files that existed before but are gone now. A renamed module from a prior version would have lingered in ~/.claude/hooks/lib/ and could be imported first by Python's import system. Now also routes through _atomic_sync_with_lib so renamed/removed modules are purged on every sync.

Added

  • _atomic_sync_with_lib(source_script, target_dir, extra_ignore) — canonical install primitive used by both _install_statusline and _install_hook_with_lib. Performs an atomic rmtree + copytree on the lib directory and excludes __pycache__, *.pyc, *.pyo, .pytest_cache, test_*.py, *.egg-info so the runtime sys.path stays clean. Optional CODINGBUDDY_HUD_DEBUG=1 env var surfaces install errors on stderr (default still silent so session start is never blocked).
  • ~/.claude/hud/.version stamp_install_statusline now writes the plugin version it just installed so health_check.check_hud_installation can detect drift and the user can confirm which release they are running.
  • HealthChecker.check_hud_installation (check #11) — new diagnostic verifies ~/.claude/hud/codingbuddy-hud.py exists, ~/.claude/hud/lib/ contains the seven critical modules, and a subprocess render smoke test does not return the fallback face. Detects all known failure modes of #1490 from the user's existing health-check workflow.
  • scripts/verify-install-simulation.sh — pre-release shell gate that simulates a fresh user receiving cache 5.6.x and starting Claude Code. Runs _install_statusline against the in-tree source in an isolated tmpdir, then executes the installed script as a real subprocess and asserts the output is the full status line. Run locally before pushing release branches; invoked from CI in e2e-plugin.yml and canary.yml.

Test Coverage

  • 9 new tests in tests/test_atomic_sync_with_lib.py covering script copy, executable bit, lib copy, no-lib silent skip, ignore patterns, stale module replacement, idempotent re-invocation, and extra_ignore arg.
  • 14 new tests in tests/test_session_start_hud.py:
    • 8 unit cases (TestSyncHudAssets) — copies all 12 required modules, excludes pollutants, replaces stale modules, idempotent, writes version stamp, gracefully skips when lib absent, preserves settings.json update.
    • 4 parametrized E2E cases (TestHudInstallE2ERegressionGate) — runs the installed script as a real subprocess across clean, partial, stale, and fresh starting states and asserts the output is not ◕‿◕ CodingBuddy. This is the single regression gate that would have caught the v5.6.0 / v5.6.1 ship.
  • 4 new tests in tests/test_install_hook_with_lib.py — sister-bug regression gate for _install_hook_with_lib (stale module replacement, ignore patterns, source-name rename, idempotency).
  • 5 new tests in tests/test_health_check.py::TestCheckHudInstallation — script missing, lib missing, modules missing, smoke test fallback detection, end-to-end PASS with real _install_statusline invocation.
  • CI gates — both e2e-plugin.yml (PR-level) and canary.yml (post-merge) now run all four pytest suites and verify-install-simulation.sh so a broken installer cannot reach release.

[5.6.1] - 2026-04-11

Hotfix closing the remaining gaps in the v5.6.0 HUD Statusbar Wave cycle: a stale-timestamp leak in the self-heal path, plus the four Wave modules that shipped as dead code in v5.6.0 (imported but never wired into format_status_line).

Fixed

  • HUD heal timestamp leak (Wave 1-B, #1487) — heal_stale_state preserved sessionStartTimestamp for "audit / forensics", but resolve_duration read the same field as a fallback when stdin lacked total_duration_ms. A manual-fix marker + stale timestamp therefore rendered enormous durations like 322h52m for brand-new sessions. The timestamp is now relocated into _healedFromSessionStartTimestamp so forensic/debug value is preserved while the render fallback path no longer sees it. Idempotent — re-healing an already-healed state keeps the forensics field stable.

Added

  • Wave 3b — Complete Wave 3 integration (#1488) — commit bd78195 ("integrate Wave 2-B/2-C in format_status_line") wired velocity and cache-savings into the cost segment but left four sibling Wave modules as dead code: hud_buddy, hud_rainbow, hud_context_bar, and hud_layout. Their unit tests passed, but format_status_line never called them. This hotfix hoists all four modules as top-level imports and refactors format_status_line to build (name, priority, text) segments consumed by fit_segments:
    • Wave 2-A — Breathing Buddy Face now actually breathes: the buddy face reflects hud_state.phase / blockerCount (ready → ◕‿◕ idle, planning → ◔‿◔ thinking, executing → ◕◡◕ active, blockers → ◕︵◕ error, lastEvent=victory → ◕ᴗ◕).
    • Wave 2-D — Mode Rainbow Coloring now actually colors: opt-in via CODINGBUDDY_HUD_RAINBOW=1 because Claude Code statusLine ANSI support is environment-dependent. Default OFF keeps existing terminals clean. Transitively honours the NO_COLOR standard (https://no-color.org). Only real modes (PLAN/ACT/EVAL/AUTO) are colored — the "Ready" fallback label stays plain. Coloring is applied post-fit_segments so ANSI escapes don't break layout width accounting.
    • Wave 2-E — Smart Context Bar now actually renders: Ctx:NN% is replaced with [████░░░░░░] 42%. Dark shade marks the trailing full block above the danger threshold (85%) and a suffix is appended above the warning threshold (80%).
    • Wave 1-D — Adaptive Layout now actually adapts: the final " | ".join(segments) is replaced with fit_segments(layout_segments, terminal_width()). Low-priority segments (worktree, rate_limits, model, cache, ctx) drop first on narrow terminals; face_version and mode_health are sacred and always render. shorten_model_label trims the "(1M context)" suffix so Opus display names fit mid-width terminals without being dropped.

Test Coverage

  • 17 new Wave 3b integration tests across four classes (TestWave2ABreathingFaceIntegration, TestWave2EContextBarIntegration, TestWave2DRainbowIntegration, TestWave1DAdaptiveLayoutIntegration)
  • 5 new Wave 1-B regression tests guarding the heal-timestamp contract
  • 3 existing tests updated for the Wave 2-E [bar] NN% format; test_full_telemetry hardened with COLUMNS=300 so the "all segments render" assertion no longer flakes against the pytest 80-col default now that adaptive layout actually runs
  • Plugin test suite: 1077+ passed locally

[5.6.0] - 2026-04-11

Added

HUD Statusbar Wave — Visual Intelligence Layer

  • Breathing Buddy Face (Wave 2-A, #1464) — buddy face reacts to HUD phase (idle/thinking/active/blocked/victory) so the status bar feels alive
  • Cost Velocity Indicator (Wave 2-B, #1464) — session spend-rate badge with 🔥/↗/→/💤 trend glyphs (e.g. $1.23↗$0.08/m)
  • Cache Savings Badge (Wave 2-C, #1464) — quantifies prompt-cache savings as 💰$N.NN saved appended to the cost segment
  • Mode Rainbow Coloring (Wave 2-D, #1464) — per-mode ANSI truecolor gradients (PLAN ◇ blue, ACT ◆ green, EVAL ◈ purple, AUTO ◊ rainbow), NO_COLOR env honored
  • Smart Context Bar (Wave 2-E, #1464) — visual [████░░░░░░] 42% progress bar replaces plain Ctx:42% with warning/danger thresholds and ⚠ glyph
  • Adaptive Layout Engine (Wave 1-D, #1464) — fit_segments adaptive truncation for narrow terminals
  • Rate-limit Severity Icons (Wave 1-C, #1464) — visual rate-limit warnings in the status line

HUD Statusbar Wave — Infrastructure

  • Wave 3 Integrator (#1464) — Wave 2-B velocity and Wave 2-C cache savings wired into format_status_line with defensive try/except imports
  • 9 Modular Lib Extraction (#1464) — lib/hud_* modules enable parallel statusbar feature work

Changed

  • HUD status line: defensive try/except imports ensure graceful degradation when optional modules fail
  • Plugin statusline: hoisted _format_velocity_segment / _format_cache_savings to module top (~0.47μs saved per render, perf-1485 H1)

Fixed

  • Session self-heal (Wave 1-B, #1468) — stale HUD state detection and recovery
  • Version resolution fallback (Wave 1-A, #1466) — plugin.json fallback when package.json unavailable
  • Narrow exception handling (qual-1465 HIGH-1) — ImportError instead of bare Exception in 3 fallback import blocks so real bugs (SyntaxError, NameError, AttributeError) surface immediately
  • Signature drift elimination (qual-1465 HIGH-2) — removed inline stub functions for format_rate_limits and _get_fresh_version

Security

  • next 16.2.3 bump — GHSA-q4gf-8mx6-v5v3 landing-page fix, eslint-config-next aligned

Test Coverage

  • 381/381 tests pass across the 9 Wave-level test suites and the Wave 3 integration harness (Wave 1-B +24, Wave 2-B +33, Wave 2-C +26, Wave 2-D +35, Wave 2-E +29)

[5.5.0] - 2026-04-10

Added

Wow Experience Wave 1 — Memory & Rewards

  • Agent Council Memory (#1435) — specialists now recall prior council decisions and inject them into new sessions for continuity across conversations
  • Micro-Achievements (#1436) — badge-style reward system surfaces small wins (first council, first rule suggestion, first team bootstrap) to reinforce good habits

Wow Experience Wave 2 — Intelligence Layer

  • Self-Evolving Rules + suggest_rules MCP tool (#1437) — PatternDetector → RuleSuggester pipeline analyzes repeated failure patterns and proposes draft rules for human review (never auto-applied)
  • Smart First Prompt / Context-Aware Onboarding (#1438) — project-specific suggestions driven by tech stack detection replace generic first-run hints
  • Live AI Guardrails (#1439) — real-time rule violation interception during tool use prevents drift before it hits disk

Wow Experience Wave 3 — Team Bootstrap

  • codingbuddy init --team CLI (#1440) — multi-AI tool adapter auto-detection and generation (Cursor, Claude Code, Codex, Antigravity, Q, Kiro) with sub-issues #1449, #1450, #1451

Dramatic Polish

  • Council Assembly Animation (#1441) — staggered specialist arrival effect during council scene rendering for a more cinematic council experience

Redesign

  • activate MCP tool — one-shot entry point returning rules + primary agent + specialists + discussion format, replacing the multi-step parse_mode + dispatch_agents ceremony
  • Promoted Claude native Teams as the primary specialist execution strategy; subagent dispatch remains as a fallback for non-Teams environments

Changed

  • RuleTracker: first-class support for generatedRule, baselineFailureRate, and currentFailureRate fields (#1444)
  • Plugin README template now includes standalone Wave feature rows (scripts/build.ts)

Fixed

  • Effectiveness scoring write-path wiring for self-evolving rules (#1444)
  • Plugin README build drift — yarn build now preserves manual surface additions

Closed Sub-issues

  • #1442, #1443, #1445, #1446, #1447, #1448 — already implemented, closed with SHA references

[5.4.1] - 2026-04-08

Added

Plugin Standalone Surface Enhancement

  • Permission forecast: prompt-aware pattern analysis (SHIP/TEST/INSTALL/DELETE/REVIEW) mirroring MCP server — replaces static mode-only defaults
  • Council scene: real agent eye glyphs from .ai-rules/agents/*.json replacing placeholder ●‿● faces with per-agent visual identity
  • Permission forecast unit tests (11 new tests)

Changed

  • PLAN template: Discover→Design→Plan staged flow replaces legacy "Output full plan" directive
  • Clarification budget: persisted in HUD state across rounds (previously reset to 3 every round)

Fixed

  • Agent JSON loading: DRY refactor via shared _read_agent_json() with per-instance cache
  • init_hud_state schema: synchronized questionBudget field with _EXTENDED_DEFAULTS
  • Agent slug path-traversal safety: os.path.basename() applied before file resolution
  • Double evaluate_clarification_standalone call eliminated in standalone mode

[5.4.0] - 2026-04-07

Added

Question-First Planning (Epic #1424)

  • Clarification Gate — ambiguous prompts trigger one clarifying question before planning (#1423)
  • Staged Planning — Discover→Design→Plan becomes the real default workflow (#1420)
  • Planning Agent Guidance — question-first contract survives standard verbosity (#1419)
  • Council Scene Rendering — real opening council scene in first response for PLAN/EVAL/AUTO (#1421)
  • Permission Forecast — display upcoming permission classes before execution (#1418)
  • Execution Gate — suppress dispatch-ready while planning is gated (#1422)

Council State Pipeline (#1361, #1367, #1368)

  • Seed request-level council state from UserPromptSubmit (#1361)
  • Compact live council badges in PreToolUse statusMessage (#1367)
  • Council handoff, stage, and blocker state from PostToolUse (#1368)

EVAL Review Integration

  • review_pr MCP tool for EVAL-mode PR review
  • EVAL-mode review agent prompt template in adapter docs
  • Integrated review_pr into parse_mode EVAL dispatch

Fixed

  • Vite 7.3.1→8.0.5 security bump (GHSA-p9ff-h696-f583)

[5.2.0] - 2026-04-03

Added

PR Guardian

  • pr_quality_report MCP tool for automated PR quality analysis (#1120)
  • Quality Gate step in /ship skill — runs specialist checks before PR creation (#1123)

Context Rescue

  • create_briefing MCP tool for session state capture (#1122)
  • resume_session MCP tool for cross-session recovery (#1124)
  • Briefing recovery detection on session-start (#1125)

Session Intelligence

  • SessionAnalyzer module for git diff analysis and untested file detection (#1128)
  • Intelligence Report in session stop hook — shows what you did, gaps, and insights (#1130)
  • Auto-create GitHub issues for untested files (opt-in) (#1132)

Rule Impact Dashboard

  • Rule event tracking in MCP handlers (#1129)
  • rule-stats.json writer service for aggregated rule metrics (#1131)
  • get_rule_impact_report MCP tool for quantified rule effectiveness (#1133)

Plugin Marketplace Phase 1

  • Plugin manifest schema and validator (#1135)
  • codingbuddy install command — git-based plugin installation (#1136)
  • codingbuddy plugins and codingbuddy uninstall commands (#1137)

Plugin Marketplace Phase 2

  • codingbuddy search command for plugin discovery via registry (#1169)
  • Registry resolver in install command — install by name (#1170)
  • codingbuddy update command for plugin upgrades (#1171)

Skill Discovery

  • list_skills switched to filesystem-based discovery — all 48 skills now visible (#1162)
  • triggers field in SKILL.md frontmatter for recommend_skills (#1163)
  • CI validation test for skill/agent discoverability (#1164)

Changed

TUI Refactor

  • Removed TUI auto-open from session-start hook (#1112)
  • Removed TUI auto-launch from MCP server bootstrap (#1113)
  • Adopted single TUI multi-session model — codingbuddy tui manual start (#1111)

Fixed

  • Flaky TUI tests — replaced setTimeout(0) tick with robust flushInk utility (#1118)
  • TaskMaestro review cycle automation and idle worker nudging (#1143)
  • File overlap detection includes implicit shared files (barrel exports, module files) (#1145)
  • Auto-issue module review fixes — safe import pattern (#1149)

[5.1.3] - 2026-04-01

Added

  • TUI File Bridge: fs.watch-based bridge enables TUI sidebar updates in stdio mode (#1104, #1105)
  • Marketplace Auto-Update: Session-start hook auto-fetches marketplace clone with 24h throttle (#1101, #1107)
  • MCP Auto-Configuration: Auto-create ~/.claude/mcp.json on session start for seamless MCP connectivity (#1100, #1106)

Fixed

  • Hook lib/ directory: Session-start now copies lib/ alongside hook file, fixing HUD state updates (#1102, #1103)
  • mcp.json missing: Plugin installation no longer leaves MCP tools unavailable (#1100, #1106)

[5.1.2] - 2026-03-29

Added

  • StatusLine HUD: Real-time session metrics in Claude Code UI (mode, cost, cache rate, context usage)
  • tmux sidebar: Auto-setup TUI dashboard as sidebar pane when running in tmux
  • validate_plugin_manifest tool: Validate Claude Code plugin.json against known schema with fix suggestions
  • pre_release_check tool: Pre-release validation with ecosystem auto-detection (Node.js, Python, Go, Rust, Java)
  • Release checklist domain: 10 items across version consistency, lockfile sync, manifest validation, CI quality gate
  • Release config schema: release section in codingbuddy.config.json for version files, lockfile, coverage threshold
  • EVAL release detection: Auto-include release checklist when version-related keywords detected in EVAL/AUTO mode
  • CI schema validation: plugin.json and marketplace.json JSON Schema validation in dev workflow
  • HUD state module: Cross-hook state management for statusLine and mode detection

Fixed

  • bump-version.sh now runs yarn install to prevent lockfile drift after peerDependencies changes

Changed

  • CODINGBUDDY_AUTO_TUI defaults to 0 — tmux sidebar replaces standalone TUI for Claude Code users

[5.1.0] - 2026-03-28

Added

  • Impact Telemetry: Session impact report on stop hook — track issues prevented, agents dispatched, checklists applied
  • Impact Module: ImpactEventService + ImpactReportService with JSONL persistence
  • get_session_impact MCP tool: Query session telemetry data
  • Event logging: 5 MCP handlers now emit impact events (parse_mode, dispatch_agents, generate_checklist, update_context, search_rules)
  • Buddy experience: Typing animation, agent handoff animation, mini bar chart, session summary
  • First-run onboarding tour: Interactive walkthrough for new users
  • Achievement system: Badges for coding habits
  • ASCII fallback mode: Buddy character rendering without Unicode
  • Adaptive performance mode: Auto-adjust hook processing based on system load
  • taskMaestro review agent: Dedicated review pane with CI-first checklist
  • taskMaestro conductor review cycle: Automated PR review before completion
  • /ship skill: Built-in local CI checks and PR creation
  • /onboard skill: New project setup wizard
  • /retrospective skill: Session review and insights
  • /plan-to-issues skill: Convert plans to GitHub issues
  • Context history archive: Cross-session decision tracking
  • Diff-based agent recommendation: Smarter agent selection based on changed files
  • Rule effectiveness insights: Track which rules catch issues
  • i18n expansion: PT-BR, DE, FR (now 8 languages total)
  • Windsurf and Aider adapters: 8 AI tools now supported
  • Adapter auto-sync: yarn sync-rules mechanism
  • E2E test pipeline: Plugin hooks integration testing
  • Marketplace workflow self-trigger: CI deploys on workflow changes

Fixed

  • Security checks now run for all workspaces regardless of affected paths
  • HOOK_COMMAND path quoting for home directories with spaces
  • Backward-compatible hook detection using substring matching
  • Session ID fallback when env var missing
  • Batch achievement notifications to prevent text wall
  • Reduced PreToolUse information overload with priority-based display
  • Removed automatic TUI launch (memory optimization for multi-session)

Changed

  • README revamped with marketing focus and Impact Telemetry showcase

[5.0.0] - 2026-03-26

⚠️ Paradigm Shift: Library → Framework

Codingbuddy v5.0 transitions from an MCP-only rules library to a full AI coding framework with Claude Code Plugin as the primary delivery mechanism, harness engineering via hooks, and autonomous execution loops.

What changed:

  • Primary entry point is now the Claude Code Plugin (MCP server remains for other AI tools)
  • Harness engineering: PreToolUse/PostToolUse hooks enforce quality gates automatically
  • Autonomous loops: Ralph Loop, Autopilot, and Ultrawork for self-correcting execution
  • Agent collaboration: Discussion engine with opinion protocol for multi-agent debates
  • Observability: Web dashboard, execution history DB, and Slack/Discord/Telegram notifications

Added

  • Plugin System: PreToolUse and PostToolUse hook lifecycle with crash-safe decorator (#824)
  • Plugin System: hooks.json registration format with mtime-cached config loader (#824)
  • Plugin System: Quality gate enforcement via PreToolUse hook (#824)
  • Plugin System: Auto-learning pattern detection engine (#816)
  • Plugin System: Per-agent persistent memory across sessions (#947)
  • Plugin System: Conflict predictor for git history collision analysis (#946)
  • Plugin System: Adaptive hook timeout tracking (#945)
  • Plugin System: Smart pre-commit test runner for related test suggestions
  • Plugin System: Health check diagnostic module
  • Plugin System: System prompt injection module (#828)
  • Plugin System: Event-driven notification service for Slack, Discord, Telegram (#829)
  • Harness: Wire auto-learning pattern detector into stop hook (#929)
  • Harness: File-based event bridge for Plugin→MCP communication
  • Harness: Lazy mtime-based file watcher module (#826)
  • Harness: SQLite execution history database (#827)
  • Harness: Operational statistics tracker (#825)
  • Harness: Rule effectiveness tracking with MCP tool (#948)
  • Dashboard: Web dashboard for execution history and cost tracking (#822)
  • TUI: Agent collaboration visualization with debates and consensus (#831)
  • TUI: Collaboration data flow pipeline (EVAL → TUI)
  • MCP Server: Unified agent registry in dispatch_agents
  • MCP Server: AgentOpinion protocol and discussion engine
  • MCP Server: Plan-reviewer as automatic gate after PLAN completion
  • MCP Server: Real-time specialist execution visibility via Teams messaging
  • MCP Server: Session issue tracking in update_context
  • MCP Server: Deep thinking instructions in parse_mode PLAN response
  • MCP Server: Teams execution strategy in dispatch_agents
  • MCP Server: Dispatch strength for specialist recommendations
  • MCP Server: validate_parallel_issues tool for file-overlap detection
  • Pipeline: Sequential task pipeline engine with data passing (#814)
  • CLI: codingbuddy init project setup wizard
  • CLI: npx codingbuddy CLI entry point
  • Agents: Plan-reviewer agent and plan-and-review skill
  • Agents: Parallel-orchestrator agent definition
  • Agents: Unique color identifiers for all 35 agent definitions
  • Skills: 40+ new and enhanced skills including taskmaestro, deepsearch, git-master, build-fix, finishing-a-development-branch, verification-before-completion, requesting-code-review, receiving-code-review, using-git-worktrees, writing-plans, skill-creator, parallel-issues, plan-to-issues, test-coverage-gate, cross-repo-issues, retro, tmux-master, agent-discussion-panel, cost-budget-management
  • Skills: Argument hints, allowed-tools, and context fork fields for skill metadata
  • Sync: Multi-tool settings sync automation (#821)
  • Wiki: Auto-generated project wiki with architecture map, API inventory, and decision log
  • Rules: Parallel execution guidelines
  • Rules: Continuous execution directive for parallel workers
  • Rules: Auto-dispatch enforcement rule for specialists
  • Rules: Operational safety rules
  • Rules: Permission presets for parallel-execution and development workflows
  • Keyword: Pattern-based primary agent resolution via explicit_patterns

Changed

  • Architecture: Primary delivery shifted from MCP-only to Claude Code Plugin + MCP
  • Agent Discussion: Wired agent discussion config into EVAL mode

Fixed

  • Dashboard: Add PRAGMA busy_timeout and schema integration tests
  • MCP Server: Remove yarn prefix from scripts to prevent state file crash
  • Landing Page: Make #agents-all anchor link functional
  • Rules: Fix markdownlint ordered list prefix in writing-plans SKILL.md (#913)
  • Skills: Prevent stale RESULT.json/TASK.md pollution in worktrees
  • Build: Remove stale RESULT.json/TASK.md from master and add to gitignore

Performance

  • Plugin: Reduce PostToolUse hook per-call I/O with singleton and batching

Docs

  • Rules: Translate all Korean text to English in .ai-rules
  • Rules: Enforce API documentation verification in PLAN phase (#913)
  • Rules: Add Output Language rule for English-only artifacts
  • Skills: Batch update taskMaestro process improvements (#901–#916)

[4.5.0] - 2026-03-12

Added

  • MCP: TaskMaestro dispatch strategy in dispatch_agents tool
  • MCP: executionStrategy parameter for agent dispatch
  • MCP: TaskMaestro installation detection and availableStrategies in parse_mode
  • TUI: useTick heartbeat timer hook (#670)
  • TUI: 7 pure live display functions (#669)
  • TUI: ActivitySample with rawTimestamp and activityHistory (#671)
  • TUI: Sparkline + throughput in StageHealthBar (#675)
  • TUI: Animated spinner + live clock in HeaderBar (#673)
  • TUI: Pulse icons + elapsed labels in FlowMap (#676)
  • TUI: Elapsed timer + relative timestamps in FocusedAgentPanel (#674)
  • Rules: Path Safety rules for monorepo (#690)
  • Rules: Error Recovery policy with recoverable/unrecoverable distinction (#689)
  • Landing Page: TUI Dashboard section in README

Changed

  • TUI: Deprecate useClock, wire useTick exports (#672)

Fixed

  • TUI: Correct computeThroughput timestamp unit from ms to seconds
  • TUI: Stabilize now via useMemo to prevent non-deterministic re-renders
  • TUI: Remove duplicate tick/now props in FocusedAgentPanelProps
  • TUI: Mock useTick in integration tests to prevent CI timing issues
  • MCP: Replace require() with ESM import in sse-auth guard test
  • MCP: Improve SseAuthGuard timing-safe token comparison
  • Landing Page: Migrate CSP from unsafe-inline to nonce-based
  • Release: Add .mcp.json to bump-version and verify-release scripts

Tests

  • TUI coverage for useTick, FlowMap, FocusedAgentPanel

[4.4.0] - 2026-03-04

Added

  • Model: Add multi-provider model support with provider-level prefixes
  • MCP: Add client-type detection for opencode/crush and cursor with platform-specific parallel agent hints
  • MCP: Add get_skill chaining hint to recommend_skills tool
  • MCP: Add opencode-specific sequential specialist dispatch hint
  • MCP: Add projectRootWarning diagnostic to parse_mode
  • Config: Track project root resolution source
  • Skills: Add 12 new skill definitions (security-audit, documentation-generation, code-explanation, tech-debt, agent-design, rule-authoring, mcp-builder, context-management, deployment-checklist, error-analysis, legacy-modernization, prompt-engineering)
  • Skills: Add i18n keyword triggers for 12 skills (KO/JA/ZH/ES)

Fixed

  • Skills: Align agent-design skill JSON examples with agent.schema.json

Tests

  • Add client-type detection and hint branching tests
  • Add recommend_skills nextAction and chaining hint tests
  • Add keyword trigger tests for 12 skills

Docs

  • Audit and enhance adapter documentation for Codex, Antigravity, Kiro, OpenCode, and Cursor
  • Add MCP configuration and project root detection docs across all adapters
  • Add specialist agents execution patterns across all adapters
  • Reorganize skill catalog with categorized tables

[4.3.0] - 2026-02-20

Added

  • TUI FlowMap: Replace U-curve arrows with tree connectors for cleaner agent hierarchy visualization (#574)
  • TUI FlowMap: Wire activeStage and add per-stage agent statistics (#571)
  • TUI FlowMap: Add isParallel flag and execution mode display for agent nodes (#550)
  • TUI FlowMap: Extend renderAgentTree to support multi-level agent subtree rendering (#557)
  • TUI ActivityVisualizer: Redesign Activity and Live panels for improved clarity (#551)
  • TUI Footer: Track and display Agent, Skill, and Tool invocation counts
  • TUI ChecklistPanel: Split ChecklistPanel from FocusedAgentPanel for independent display (#548)
  • TUI Agent Visibility: Replace tool-centric display with real agent visibility (#549)
  • TUI Restart: Implement TUI restart capability via MCP tool and CLI flag (#545)
  • Agents: Add software-engineer as default ACT agent (#568)
  • Agents: Add data-scientist as ACT primary agent (#566)
  • Agents: Add systems-developer as ACT primary agent (#565)
  • Agents: Add security-engineer as ACT primary agent
  • Agents: Add test-engineer as ACT primary agent (#563)
  • Keyword Patterns: Add refactoring and type definition patterns to backend keyword detection (#567)

Fixed

  • TUI FlowMap: Show intermediate progress values in progress bars (#572)
  • TUI FlowMap: Remove stale agents from FlowMap after completion (#570)
  • TUI HeaderBar: Fix header bar overflow, workspace path display, and remove sess: prefix (#547)
  • Keyword Types: Add ai-ml-engineer to ACT_PRIMARY_AGENTS (#562)
  • Mode Handler: Auto-inherit recommendedActAgent from context in ACT mode (#561)

[4.2.0] - 2026-02-18

Added

  • TUI Multi-Session: Multi-session support and auto-open TUI on MCP connection (#485)
  • TUI Auto-Launch: Enable auto-launch via --tui CLI flag (#522)
  • TUI ActivityVisualizer: Replace MonitorPanel with ActivityVisualizer panel (#482)
  • TUI FlowMap: Enhanced with visual hierarchy, pipeline header, and progress bars (#468)
  • TUI MonitorPanel: Event log, agent timeline, and task progress display
  • TUI Objectives: Wire up objectives from parse_mode response (#473)
  • TUI Events: SKILL_RECOMMENDED event in dashboard state (#474)
  • TUI Events: Pre-register specialists on PARALLEL_STARTED event (#475)
  • TUI Events: Sync running agent stage on MODE_CHANGED (#476)
  • TUI Events: Extract recommended_act_agent and parallelAgentsRecommendation from parse_mode (#477)
  • TUI Progress: Progress estimation via TOOL_INVOKED count (#472)
  • TUI Layout: Double FocusedAgent panel width (#466)
  • TUI Layout: Precise grid layout system (#458)
  • TUI Layout: Fixed-width right-aligned FocusedAgent with responsive FlowMap (#462)
  • TUI StageHealthBar: Live tool invocation count replaces hardcoded tokenCount (#490)
  • TUI Checklist: Populate initial checklist from parse_mode and improve task completion tracking (#504)
  • TUI FocusedAgent: Avatar, sparkline, and improved progress bar (#505)
  • TUI Theme: Unified panel border colors via centralized BORDER_COLORS constant (#494)
  • TUI Context: Display decisions/notes from context:updated in FocusedAgentPanel (#515)
  • TUI Session: Reset dashboard state on /clear command via SESSION_RESET event (#499)
  • Config: Tool-priority rules establishing codingbuddy MCP priority over OMC (#516, #512)
  • MCP Server: TDD execution continuity rules to prevent RED phase halt (#463)
  • GitHub: Copilot Code Review with custom instructions (#460)
  • Docs: TUI troubleshooting guide for auto-launch startup issues (#520)

Changed

  • TUI Activity: Replace Activity heatmap with horizontal bar chart (#517)
  • TUI Layout: Reduce FocusedAgent panel width by ~10% and expand Activity/FlowMap panels (#501)
  • TUI Tasks: Consolidate task:synced into single pass and fix event ordering (#504)

Fixed

  • TUI HeaderBar: AUTO mode displayed incorrectly as sequential step in process flow (#488)
  • TUI Tasks: Tasks panel shows no data in PLAN/EVAL modes — extractFromUpdateContext now reads decisions/findings/notes (#492)
  • TUI Live: Live panel shows almost no data — replaced time-windowed bubbles with renderLiveContext (#502)
  • TUI Progress: Progress percentage stuck at 0% due to agentId mismatch between TOOL_INVOKED and primary agent (#503)
  • TUI AutoLauncher: Resolve absolute binary path for TuiAutoLauncher (#519)
  • Build: Include TUI bundle in main build script to prevent stale exports
  • Config: Exclude .next and build artifacts from prettier and tsconfig (#496)

Removed

  • MCP Server: Unused code and dead exports (#486)
  • TUI: Deprecated text-formatter functions from pure components

[4.1.0] - 2026-02-17

Added

  • TUI Dashboard: Ink-based terminal UI with Header, AgentCard, AgentTree, AgentGrid, StatusBar, and ProgressBar components
  • TUI EventBus: EventEmitter2-based event system with useEventBus and useAgentState React hooks
  • TUI IPC: Standalone TUI process with Unix Domain Socket inter-process communication
  • TUI Compact Design: Single-line layout optimized for 24-line terminals
  • TUI Interceptor: MCP tool dispatch layer for real-time UI updates
  • Landing Page: Next.js 16 multilingual (5 languages) landing page with production-ready setup
    • Widget Slot architecture (AgentsShowcase, CodeExample, QuickStart widgets)
    • shadcn/ui component library with theming and cookie consent
    • Self-hosted fonts via next/font
    • next-intl i18n configuration with parallel routes and locale slot layout
    • Static sections: Hero, Problem, Solution, FAQ
    • Header with language selector and theme toggle, Footer with accessibility improvements
    • Vercel deployment configuration with analytics integration
    • JSON-LD structured data for SEO (#424)
    • WCAG 2.1 AA accessibility statement
  • MCP Server: Bearer token authentication for SSE endpoints (#416)
  • Agent System: dispatch_agents tool and auto-dispatch in parse_mode response (#328)
  • Intent Patterns: Added frontend-developer and devops-engineer intent patterns for recommendation
  • EVAL Mode: recommendedActAgent support in EVAL mode (#361)

Changed

  • Prettier: Reformatted entire codebase with printWidth: 100 (#423)
  • MCP Server: Extracted shared rules-core and keyword-core modules (#415)
  • Plugin: Removed duplicate syncVersion from build script (#418)

Fixed

  • Plugin isPathSafe() path normalization and case-insensitive matching (#419)
  • MCP server appendContext findLastIndex merge logic (#410)
  • MCP server bootstrap() unhandled Promise rejection handler
  • MCP server unsafe type assertion runtime validation (#411)
  • Landing page html lang attribute set from locale at server render time (#412)
  • Landing page removed radix-ui meta-package, using @radix-ui/react-dialog directly (#413)
  • validate-rules.sh updated to reference correct .ai-rules path (#422)
  • Keyword intent-based resolution skips project config in recommendation mode
  • Plugin typo codebuddy corrected to codingbuddy in dev path patterns
  • CI release-drafter pinned to SHA and aligned setup action versions

Documentation

  • TUI user guide, architecture, and troubleshooting documentation
  • Landing page README with deployment guide and project structure
  • Fixed agent count mismatch across documentation (#421)
  • MCP_SSE_TOKEN environment variable documentation (#416)
  • JSON-LD implementation plan (#424)

Tests

  • Context-document handler tests (#417)
  • TUI EventBus-UI, App root, and transport integration tests
  • TUI performance and stability verification tests
  • Landing page root layout and CSP headers tests
  • Landing page async server component tests

[4.0.1] - 2026-02-04

Added

  • Automated version consistency verification for release process to prevent package.json/git tag mismatches (#305)
  • New verification script (scripts/verify-release-versions.sh) with clear error messages and fix instructions

Changed

  • Updated release workflow with fail-fast verification step
  • Simplified claude-code-plugin README documentation

[4.0.0] - 2026-02-03

⚠️ Breaking Changes

Model Resolution Priority Changed

Before (v3.x):

  1. Agent JSON → model.preferred
  2. Mode Agent → model.preferred
  3. Global Config → ai.defaultModel
  4. System Default

After (v4.0.0):

  1. Global Config → ai.defaultModel (highest priority)
  2. System Default

Config File Format Changed to JSON-only

Before (v3.x): Both codingbuddy.config.js and codingbuddy.config.json supported

After (v4.0.0): Only codingbuddy.config.json supported

Why: JavaScript config files cannot be loaded in ESM projects ('type': 'module'), causing the MCP server to fail finding the language setting. JSON format is module-system independent.

Migration: Convert existing codingbuddy.config.js to .json format:

  • Remove module.exports wrapper
  • Use double quotes for keys and strings
  • Remove trailing commas

Before:

module.exports = {
  language: 'en',
}

After:

{
  "language": "en"
}

Removed CLI Options

  • --format option removed from codingbuddy init command (JSON is now the only format)

Migration Guide

  1. No action required if using global config: If you already set ai.defaultModel in codingbuddy.config.json, your configuration will continue to work.

  2. Agent JSON model fields are now ignored: If you customized agent model preferences in packages/rules/.ai-rules/agents/*.json, those settings no longer apply. Use codingbuddy.config.json instead:

codingbuddy.config.json:

{
  "ai": {
    "defaultModel": "claude-opus-4-20250514"
  }
}

Removed APIs

  • ModelResolverService.resolveForMode() → Use resolve() instead
  • ModelResolverService.resolveForAgent() → Use resolve() instead
  • ModelSource type: 'agent' and 'mode' variants removed
  • ResolveModelParams: agentModel and modeModel parameters removed

Added

  • Verbosity System: Token-optimized response formatting with configurable verbosity levels (minimal, compact, standard, detailed)
  • PR All-in-One Skill: Unified pull request workflow combining review, approval, and merge operations
  • SRP Complexity Classifier: Multi-language support for Single Responsibility Principle analysis

Changed

  • Deprecated session module removed and references cleaned up
  • Migrated from Dependabot to Renovate for dependency management
  • All dependencies pinned to exact versions for reproducibility

[3.1.1] - 2026-01-27

Added

  • Auto-include skills and agents in parse_mode response

Fixed

  • CI workflow now ensures Dependabot PRs include yarn.lock updates

[3.1.0] - 2026-01-20

Added

  • SRP complexity classifier with multi-language support
  • Plugin guide documentation for all supported languages