Skip to content

Changelog

All notable changes to CKB are documented here.

CKB v8.1.0

v8.1.0

What's New

New Tools

  • findCycles — Detect circular dependencies using Tarjan's SCC algorithm (module/directory/file granularity), with break-edge recommendations
  • suggestRefactorings — Proactive refactoring suggestions covering complexity, coupling, dead code, and extract candidates
  • prepareChange (move) — Move/relocate analysis with import tracking and conflict detection
  • prepareChange (extract) — Tree-sitter flow analysis for extract variable/function with parameter/return detection and signature generation
  • planRefactor — Unified refactoring planner combining risk assessment, impact analysis, test gaps, and ordered steps

Improvements

  • Coverage configuration via .ckb/config.json (custom paths, auto-detect, max age)
  • Orphaned index detection in ckb doctor
  • Test mapping via ckb affected-tests
  • --include-tests flag wiring for ckb impact diff
  • Lazy engine loading and enriched error messages
  • switchProject tool for multi-repo workflows

Bug Fixes

  • Go 1.24.12 security update
  • Improved doctor command error messages
  • Disabled patch coverage check on main/develop branches

Stats

  • 46 files changed, +6,425 lines
  • 102 new tests
  • All CI checks passing

Full Changelog: https://github.com/SimplyLiz/CodeMCP/compare/v8.0.6...v8.1.0

View on GitHub

CKB v8.0.6

v8.0.6

What's Changed

SCIP Index Path

  • Breaking change: Default SCIP index location changed from .scip/index.scip to index.scip (repository root)
  • This aligns with the Sourcegraph standard convention
  • Existing .scip/index.scip files are automatically migrated on next ckb index

New Features

  • Added ckb config set and ckb config get commands for runtime configuration
    ckb config set scip.indexPath index.scip
    ckb config get scip.indexPath
    

Bug Fixes

  • Fixed --output flag not being passed to scip-typescript and scip-python indexers

Internal

  • Refactored index command to use IndexerConfig.BuildCommand()
  • Only add --output flag when using non-default index path
View on GitHub

CKB v8.0.5

v8.0.5

Changelog

Bug Fixes

  • e177ef550fb88eb4667e9edee72bd95a9cb82925 fix: set MaxOpenConns(1) for in-memory SQLite test databases
View on GitHub

CKB v8.0.3

v8.0.3

Fixed

MCP Registry Publishing

  • Fixed mcpName casing in npm package.json to match GitHub username (io.github.SimplyLiz/ckb instead of io.github.simplyliz/ckb). The official MCP registry namespace verification is case-sensitive.

Added

MCP Registry server.json

Added server.json for publishing to the official MCP Registry via mcp-publisher. CKB is now listed as io.github.SimplyLiz/ckb.

Install

npm install -g @tastehub/ckb
# or
npx @tastehub/ckb mcp
View on GitHub

CKB v8.0.2

v8.0.2

Added

Grok Support in ckb setup

Grok is now a supported AI coding tool in the setup wizard:

ckb setup --tool=grok          # project-level (.grok/settings.json)
ckb setup --tool=grok --global # global (~/.grok/user-settings.json)

Uses grok mcp add CLI when available, falls back to file-based configuration.

MCP Registry Support

Added mcpName field to npm package.json for publishing to the official MCP Registry (io.github.simplyliz/ckb).

Compound Tool NFR Scenarios

NFR test suite expanded from 28 to 39 scenarios, adding coverage for v8.0 compound tools:

  • explore (small, large)
  • understand (small, large)
  • prepareChange (small, large)
  • batchGet (small, large)
  • batchSearch (small, medium, large)

Changed

Dynamic NFR Baselines

NFR tests now compare PR results against the base branch (dynamic baseline) instead of static hardcoded values. Two parallel CI jobs run the tests on both HEAD and base, then a comparison job reports regressions.

NFR Tests Scope

NFR tests now only run on PRs targeting main, reducing CI noise on feature branches.

View on GitHub

v8.0.1: UX Enhancements

v8.0.1

v8.0.1: UX Enhancements

Improved

Human-Readable Output by Default

All CLI commands now default to --format=human instead of --format=json. This makes the CLI more friendly for interactive use while still supporting --format=json for scripting and automation.

Quieter Indexer Output

External SCIP indexers (scip-go, scip-typescript, etc.) no longer spam stdout during ckb index. Output is now captured and only shown on error or when using -v verbose mode.

Better Error Messages

  • ckb dead-code now clearly indicates it's for telemetry-based analysis and suggests using ckb telemetry dead-code
  • ckb impact diff no longer shows confusing "Symbol not found: diff" error; instead provides helpful guidance
  • Symbol not found errors now suggest using ckb search to find valid symbol IDs

Index Missing Guidance

ckb status now shows helpful guidance when no SCIP index is found:

  • Lists commands that work without index (git-based): hotspots, ownership, reviewers, diff-summary, pr-summary
  • Lists commands that need SCIP index: search, refs, callgraph, impact, dead-code, trace, explain

Fixed

  • Consistent --format=human support for diff-summary, concepts, and impact diff commands

Full Changelog: https://github.com/SimplyLiz/CodeMCP/compare/v8.0.0...v8.0.1

View on GitHub

CKB v8.0.0

v8.0.0

Theme: Reliability, clarity, and compound operations for AI workflows.

See CHANGELOG.md for full release notes.

Key Features in v8.0.0

Compound Operations (5 New Tools)

Reduce AI tool calls by 60-70% with smart aggregation tools:

  • explore — Area exploration (file/directory/module)
  • understand — Symbol deep-dive with ambiguity handling
  • prepareChange — Pre-change impact analysis
  • batchGet — Retrieve up to 50 symbols in one call
  • batchSearch — Execute up to 10 searches in one call

SSE Streaming

Real-time feedback for long-running operations:

  • findReferences and searchSymbols support streaming with stream: true
  • Progress updates, chunked results, and error handling

Enhanced getStatus

System health with actionable remediation guidance:

  • Health tiers: available, degraded, unavailable
  • Index freshness info (commitsBehind, indexAge)
  • Backend latency and capability reporting

Code Analysis Tools

  • findDeadCode — Static dead code detection
  • getAffectedTests — Test coverage mapping
  • compareAPI — Breaking change detection between commits/branches

Structured Error Codes

All MCP errors now include actionable remediation:

  • AMBIGUOUS_QUERY, PARTIAL_RESULT, INVALID_PARAMETER
  • RESOURCE_NOT_FOUND, PRECONDITION_FAILED, OPERATION_FAILED

Response Metadata

All tool responses include structured metadata:

  • ConfidenceFactor — Score explanation with weighted factors
  • CacheInfo — Cache hit/miss transparency

Golden Test Suite

Multi-language test fixtures for regression testing across Go, TypeScript, Python, and Rust.

🤖 Generated with Claude Code

View on GitHub

CKB v7.5.0

v7.5.0

See CHANGELOG.md for full release notes.

Key Features in v7.5.0

Change Impact Analysis

Analyze the impact of code changes from git diffs before committing:

ckb impact diff                # Analyze working tree changes
ckb impact diff --staged       # Analyze only staged changes
ckb impact diff --base=main    # Compare against a branch

Features:

  • Git diff parsing with symbol mapping
  • Confidence levels (1.0 exact definition → 0.3 file-level)
  • Aggregated risk scoring
  • Actionable recommendations

Token Efficiency Visibility

See CKB's token savings compared to bloated MCP servers:

  • Startup banner shows active tools and estimated context
  • getStatus response includes token savings percentage (83% reduction with core preset)
  • --list-presets flag for preset discoverability

Auto Index Updates

Automatic index maintenance across all CKB interfaces:

ckb index --watch              # Watch and auto-reindex (standalone)
ckb mcp --watch                # Watch during MCP session
curl -X POST localhost:9120/api/v1/refresh  # Webhook trigger

Staleness Visibility:

  • ckb status shows commits behind HEAD and index age
  • MCP getStatus includes freshness info

Multi-Language Incremental Indexing

Incremental indexing now supports 5 languages:

  • Go (scip-go)
  • TypeScript/JavaScript (scip-typescript)
  • Python (scip-python)
  • Dart (scip_dart)
  • Rust (rust-analyzer)

Real Transitive Impact Analysis

The analyzeImpact tool now provides real transitive caller analysis:

  • Transitive callers up to depth 4
  • Blast radius summary (module count, file count, risk level)
  • Confidence decay with depth

🤖 Generated with Claude Code

View on GitHub

CKB v7.4.0

v7.4.0

See CHANGELOG.md for full release notes.

Key Features in v7.4.0

Tool Presets & Pagination

Token-optimized tool discovery reducing context overhead by up to 83%:

Preset Tools Tokens Use Case
core (default) 14 ~1,531 Essential navigation and analysis
review 19 ~2,294 Code review: PR summary, ownership
refactor 19 ~2,216 Refactoring: coupling, dead code
docs 20 ~2,093 Documentation: coverage, staleness
ops 25 ~2,366 Operations: jobs, webhooks, metrics
federation 28 ~3,122 Multi-repo: cross-repo search
full 76 ~9,043 All tools (legacy behavior)

Features:

  • MCP-compliant cursor-based pagination
  • Core-first ordering for non-paginating clients
  • expandToolset meta-tool for dynamic preset expansion
  • tools.listChanged capability for dynamic updates

Wide-Result Metrics Tracking

Infrastructure for monitoring tool output sizes:

  • getWideResultMetrics tool for statistics
  • SQLite persistence for historical tracking
  • ckb metrics CLI with export support

SCIP Backend Optimizations

Major performance improvements:

Operation Before After Improvement
FindReferences 340μs 2.5μs 136x faster
SearchSymbols 930μs 136μs 7x faster
FindSymbolLocation 70μs 28ns 2,500x faster

Git Backend Optimizations

getHotspots improved from 26.7s to 498ms (53x faster).

Standardized Response Envelope

All 76 MCP tools now include structured metadata:

  • Confidence tiers (high/medium/low/speculative)
  • Provenance tracking (which backends contributed)
  • Truncation metadata with drilldown suggestions

Update Notifications

Automatic update checking for all installation methods:

  • Deferred notification at command start
  • 24-hour cache with background refresh
  • Smart upgrade message (npm vs GitHub releases)

Hybrid Retrieval with PPR

Graph-based retrieval using Personalized PageRank:

  • Recall@10: 62.1% → 100% (+61%)
  • MRR: 0.546 → 0.914 (+67%)

🤖 Generated with Claude Code

View on GitHub

CKB v7.3.0

v7.3.0

See CHANGELOG.md for full release notes.

Key features in v7.3.0:

  • Incremental Indexing v4 (Production-Grade)
  • Language Quality Assessment
  • Remote Federation Client
  • Authentication & API Keys
  • Enhanced Uploads with compression
  • Index Upload & Remote Serving
  • Doc-Symbol Linking
  • Multi-Repo Management

🤖 Generated with Claude Code

View on GitHub

CKB v7.2.0

v7.2.0

What's New in v7.2.0

ckb setup - Multi-Tool MCP Configuration

  • Interactive setup wizard for configuring CKB with AI coding tools
  • Support for 6 AI tools:
    • Claude Code - .mcp.json (project) or claude mcp add (global)
    • Cursor - .cursor/mcp.json (project/global)
    • Windsurf - ~/.codeium/mcp_config.json (global only)
    • VS Code - .vscode/mcp.json (project) or code --add-mcp (global)
    • OpenCode - opencode.json (project/global)
    • Claude Desktop - Platform-specific paths (global only)
  • --tool flag to skip interactive menu
  • --npx flag for portable npx-based setup
  • Windows path support for Windsurf and Claude Desktop

ckb index - Extended Language Support

  • Added 5 new languages:
    • C/C++ via scip-clang with --compdb flag for compile_commands.json
    • Dart via scip-dart
    • Ruby via scip-ruby with sorbet/config validation
    • C# via scip-dotnet with *.csproj detection
    • PHP via scip-php with vendor/bin check
  • Bounded-depth glob scanning for nested project detection
  • Language-specific validation and prerequisite checks

Smart Indexing

  • Skip-if-fresh: ckb index automatically skips reindexing when index matches current repo state
  • Freshness tracking: Detects commits behind HEAD and uncommitted changes to tracked files
  • Index metadata: Persists index info to .ckb/index-meta.json (commit hash, file count, duration)
  • Lock file: Prevents concurrent indexing with flock-based .ckb/index.lock

ckb status - Index Freshness Display

  • New "Index Status" section showing freshness with commit hash
  • Shows stale reasons: "3 commit(s) behind HEAD", "uncommitted changes detected"
  • Displays file count for fresh indexes

ckb mcp --watch - Auto-Reindex Mode

  • New --watch flag for poll-based auto-reindexing
  • Polls every 30 seconds, reindexes when stale
  • Uses lock file to prevent conflicts with manual ckb index
  • Logs reindex activity to stderr

Explicit Analysis Tiers

  • User-controllable analysis tiers: fast, standard, full
  • CLI flag: ckb search "foo" --tier=fast
  • Environment variable: CKB_TIER=standard
  • Config file: Add "tier": "standard" to .ckb/config.json
  • Tier display in ckb status shows mode (explicit vs auto-detected)

ckb doctor --tier - Tier-Aware Diagnostics

  • New --tier flag for tier-specific tool requirement checks
  • Shows per-language tool status (installed, version, path)
  • Displays missing tools with OS-specific install commands
  • Validates prerequisites (go.mod, package.json, Cargo.toml, etc.)
  • Capability matrix showing which features are available per language
  • JSON output with --format json for scripting

Changed

  • Tier names rebranded: Basic → Fast, Enhanced → Standard, Full → Full
  • Multi-language detection now errors instead of silently defaulting to a language

Fixed

  • Fixed Kotlin indexer URL in documentation
  • Fixed PHP indexer URL in documentation

Installation

# npm (recommended)
npm install -g @tastehub/ckb

# Or run directly
npx @tastehub/ckb setup

Full Changelog: https://github.com/SimplyLiz/CodeMCP/compare/v7.1.0...v7.2.0

View on GitHub

CKB v7.1.0

v7.1.0

Zero-Friction Operation

CKB v7.1 enables code intelligence without requiring a SCIP index upfront.

New Features

Tree-sitter Symbol Fallback

  • Symbol extraction for 8 languages (Go, TypeScript, JavaScript, TSX, Python, Rust, Java, Kotlin)
  • searchSymbols works without SCIP index
  • Results include Source: "treesitter" and Confidence: 0.7 for transparency

ckb index Command

  • Auto-detects project language from manifests (go.mod, package.json, Cargo.toml, etc.)
  • Checks if SCIP indexer is installed, shows install instructions if not
  • --force flag for re-indexing, --dry-run to preview
  • Language-specific troubleshooting tips on failure

Universal MCP Documentation

  • Setup instructions for Claude Code, Cursor, Windsurf, VS Code, OpenCode, Claude Desktop
  • Windows cmd /c wrapper instructions

Files Added

  • internal/symbols/treesitter.go - Tree-sitter symbol extraction
  • internal/symbols/treesitter_test.go - Tests for all 8 languages
  • internal/project/detect.go - Language and indexer detection

Install

npm install -g @tastehub/ckb
# or
npx @tastehub/ckb --help
View on GitHub

CKB v7.0.0

v7.0.0

Changelog

Features

  • 2da1ebcf5d8dc43aadf47da4b7b6f3c3487c0bbd feat(api): Add HTTP telemetry endpoints for v6.4
  • ef81df145102140cfa166a48525ead17061bcd4f feat(cli): Add CLI commands for all MCP tools
  • 69fb4456cbbe8a7b3fb9e18baeed8fa5ec876088 feat(cli): Add missing CLI commands documented in README
  • c5a217272e7eb2d72828dcd8379a4dd5443346e8 feat(query): Wire annotations into core query tools (v6.5)
  • 4d3e4f16f71d3c873f203cdd20cbaf1c5c152f54 feat: Add v6.2 Federation, v6.2.1 Daemon Mode, v6.2.2 Tree-sitter Complexity
  • 21bf09841cff8a8b52c76eee5658dd558283354c feat: Add v6.3 Contract-Aware Impact Analysis
  • 2c11b55931fe2d39f2d1904947d276af0adfeaea feat: CKB v7.0 - Zero-Friction UX

Bug Fixes

  • 0fec67c43c251b3aa15c3c99e84c0a1782856a23 fix: Address multiple bugs from code review
  • c87117060f87496aec373c4dcb40910bfdaeffaf fix: Address v6.3 contract analysis issues
  • b26559aaa348b93fb5e6ff0bac7a2e4c7a950b18 fix: Address v6.3 contract analysis review findings
  • c65b0e55537528ae6658e4bc48277613975850f0 fix: correct GitHub repo name in goreleaser config
  • 7b3632d9804deedd20a01a403213951603e9af60 fix: cross-platform daemon process detachment
  • 30c4e9312afa45973b16b7908622a1b549afff5c fix: include npm bin wrapper in git
  • 8544add1b935a76c8887e9a878b83b734054d85c fix: make tree-sitter optional via CGO build tags
  • 97e438c234156eef9edee077150a7b8cf650bac7 fix: merge release jobs so npm publisher has access to dist
  • 445cbde5076ed8066577c3d4d4b9b4e045383b65 fix: use manual npm publishing instead of broken action

Documentation

  • dd0316373b6ba57bd126649ade832930a860a282 docs: Add v6.0 specification document
  • 03b7e17cea35218653225c1697cddf70e4003d23 docs: Improve README with marketing narrative
  • eb06f84210c6bc106913f0679f17f8b25dc879a0 docs: Update README with v6.3 contract analysis features
  • f3cfb6d7a000096eaf60c61b82dfb27472a70e09 docs: Update README with v6.4 telemetry features
  • 7524c23ad4ab314657aae9106c79a64c3cd5295d docs: Update README with v6.5 Developer Intelligence features

Others

  • f96936e519a7d14c5fe86fd9d6de46c139b09fd0 Add GitHub Actions CI pipeline
  • 077f9d1e1fed6654b4ec8cc5441ce8a90c18f66f Add Phase 4: Architectural Decision Records (ADRs)
  • c5d6b08280079d4f736c7d033d461be109232479 Add beginner-friendly Quick Start Guide
  • 595ddf053d8cfda5ad668d11ce80bc8edbf07fa8 Add ckb binary to .gitignore
  • a221a8ffe994f7e9579c2b4ba3344984d3d0abcb Add comprehensive MCP documentation
  • eeb605aae6db3c3c30f56ff831187a05db747224 Add comprehensive test coverage for critical packages
  • 07d0cf5dedbec06114582f5a7a60d83832952af1 Add comprehensive tests for Phase 2-4 navigation tools
  • fee62d0432038a3c9486bd82184ed7a2b4901ae8 Add improvements: version pkg, query cache, symbol counts, v5.2 tests
  • 6320c2040b0601b1689aabb1baee4641180d27fa Add performance benchmarks and documentation for v5.2 navigation tools
  • f49c73fb45a21b827165eb0fc2e27dae5004e46e Add project documentation
  • 6e445f850ea4c92b2b7cac02e1ba3afe02d9cda0 Add v5.2 specification and improve README
  • 3404a151f924876ab2b8ae62c64cbb1e679d9608 Add v6.0 Architectural Memory Phase 1 foundation
  • a00ed374e48ffd76283437dc7ba1965d417405c4 Add v6.0 Architectural Memory implementation plan
  • ef7ef45a7d7ee9ae0d874e6e5d39d3d2118f150b Add v6.0 Phase 2: Ownership tracking system
  • c24e1b24e5ddfa09228e29e21e361bfe2459be89 Add v6.0 Phase 3: Intelligence - hotspots and responsibilities
  • bc011d34a00904c68288d5bd98a8afa12278f865 Add v6.0 Phase 5: Integration tests and benchmarks
  • 5e6803db8b67fe775e2d4e7d355834b86a795408 Add v6.1: Background jobs, CI/CD tools, and HTTP API expansion
  • 6edee89f28930de0eef4db5684ae7c6142d79998 Address PR review feedback
  • bbdfe98ad26f346d218b21e2e730f3ba064b27d2 Address v5.2 Phase 1 review feedback
  • 3cb9960c020005fe84bdc592702c25b9cc2395b1 Bump version to 6.0.0
  • 84aa2580ffc7d263565aaae95cdfdf39f89232bf Bump version to 6.3.0 and document contract analysis
  • b22b50fb161b5fc7b5f47927c01ff0eb5491418f Complete v6.2.2 Tree-sitter complexity integration
  • d2da48f78ce45bda66564cea08e6073465f7d207 Fix GetDecision absolute path handling and UpsertAnnotations validation
  • 63ed9d65e8aea22410ef2ebc1663621ed8144215 Fix additional golangci-lint errors
  • f099b80ccdeb58010f1d4c263f935364b0a047f9 Fix all golangci-lint errors
  • c3ce05846da84d37603d817f6bce314e3fd9de6e Fix analyzeImpact SYMBOL_NOT_FOUND error for SCIP symbol IDs
  • 995d2d2489d621d6ff95be9ccb0dfbdd0ef02641 Fix annotateModule and ADR storage issues
  • d6206fef03d575f3244ec9b8ac8626089ef31f45 Fix annotateModule and ADR storage issues (complete fix)
  • 898d98ea129e090b695413928f69583c1d83af6b Fix golangci-lint errors
  • d106fe70388c6bfde175c21619454c08c17a49c2 Fix lint errors for CI pipeline
  • 6e9b4eb5f0708e0fceee20221780c508e3c1f44d Fix remaining golangci-lint errors
  • fc817f43ab074fefc23e2e466f5684a8eeca3eeb Implement AI navigation tools (explainSymbol, justifySymbol, getCallGraph, getModuleOverview)
  • ff522f948c5074c22cd8f594ed98b6437a5a68f2 Implement CKB v5.2 Phase 1 MVP tools
  • e5cb20c0e09e265a835df595d177218f9ea297b7 Implement call graph, module detection, and architecture improvements
  • e9cd36bbf6bbf559645939e94599129c2a1d545a Implement complete CKB system with CLI, API, and MCP server
  • 8291e72c47a84de937d90fbe73038c0587468a3b Implement summarizeDiff tool (v5.2 Phase 2)
  • a9e03efaab494264f1f7582e9ff4318af058b3e4 Implement traceUsage tool for v5.2 Phase 1 MVP
  • 5d260d9cf872905460f30cee481e36ac2dee3aa6 Implement v5.2 Phase 3: getHotspots and getArchitecture enhancements
  • 966d9bd4ff54df842fa31e45b90dbee2687e450e Implement v5.2 Phase 4: explainPath, listKeyConcepts, recentlyRelevant
  • 47e467018562a07dbeb8a1c204ecdccf53b14c92 Implement v6.4 Runtime Telemetry integration
  • f39b05c3b38ccf248237d4839985359cbc7b9b92 Implement v6.5 Developer Intelligence features
  • a6af7cfb2eff5f0c3795e4e935844aee59029135 Initial commit: Phase 1.1 CKB Project Setup
  • 52317c8fcdaead5b847f2aaebe0fe64c4721a978 Update API reference with detailed documentation
  • 2fa6dcad2ee21fd811310592e2c2a14626290940 Update MCP documentation to v5.2 specification
  • bfe9f6763e7f1978b1da9f08bdfa55a966f5fb63 Update README with all features and documentation links
  • a7830ae4e084c389c55d763423181b2bbe0beaba Update documentation to match actual codebase
  • cd02ec7a642787378789cfca681eb6a30d4baa02 updated readme
View on GitHub