# Changelog
## [0.5.0](https://github.com/montanetech/codeix/compare/v0.4.1...v0.5.0) (2026-02-21)
### ⚠ BREAKING CHANGES
* **mcp:** MCP server now exposes prompts capability
### Features
* **mcp:** add prompts for common codebase exploration tasks ([e1ea2ca](https://github.com/montanetech/codeix/commit/e1ea2ca2940be66bfa8afc221e06e9df11975d67))
* **mcp:** add prompts for common codebase exploration tasks ([#84](https://github.com/montanetech/codeix/issues/84)) ([2cd8fb6](https://github.com/montanetech/codeix/commit/2cd8fb61333b598723c365d7989cc1c859ca57b1))
## [0.4.1](https://github.com/montanetech/codeix/compare/v0.4.0...v0.4.1) (2026-02-11)
### Features
* add MCP registry manifest (server.json) ([bde48d2](https://github.com/montanetech/codeix/commit/bde48d2de60f06f229e9c48c6bb806d6f85ed3e2))
## [0.4.0](https://github.com/montanetech/codeix/compare/v0.3.0...v0.4.0) (2026-02-11)
### ⚠ BREAKING CHANGES
* **mcp:** remove redundant get_imports tool
### Features
* add MCP Registry publishing to release workflow ([#69](https://github.com/montanetech/codeix/issues/69)) ([e82f4de](https://github.com/montanetech/codeix/commit/e82f4de8d17bd0135cf9d10a403ab96cf6c8eb54))
* **mcp:** add visibility filter to MCP tools ([#71](https://github.com/montanetech/codeix/issues/71)) ([bb3f9cb](https://github.com/montanetech/codeix/commit/bb3f9cbd2e07476df1a3df95d0a73912bfdeb46f))
* **mcp:** add visibility filter to MCP tools ([#71](https://github.com/montanetech/codeix/issues/71)) ([f7f840b](https://github.com/montanetech/codeix/commit/f7f840b42d4521691897a8cdb995815900eecad5))
* **mcp:** remove redundant get_imports tool ([c6ec622](https://github.com/montanetech/codeix/commit/c6ec62265dd61075df02ad28db6c05bf1f0d69fc))
* **parser:** harden parsers to handle errors gracefully ([87666fb](https://github.com/montanetech/codeix/commit/87666fbca0db8f86468138d245252903faa24e55))
* **parser:** use __all__ for Python visibility detection ([778b0fc](https://github.com/montanetech/codeix/commit/778b0fcf65035dc0eb9557e83bcbf4e766af9a9b))
* **parser:** use __all__ for Python visibility detection ([#73](https://github.com/montanetech/codeix/issues/73)) ([f5a3a70](https://github.com/montanetech/codeix/commit/f5a3a708807cd244481fe96a293615f464b4426f))
* **rust:** parse symbols inside macro invocations ([1ed4530](https://github.com/montanetech/codeix/commit/1ed45306f0b4bbc49154affbb39793052795cd09))
* **search:** add BM25 weighted columns for better relevance ([756d207](https://github.com/montanetech/codeix/commit/756d207278ebb46d3aead96b758b8d0b9dc1d9ab))
* **search:** add kind to FTS content for natural queries ([b0c06c5](https://github.com/montanetech/codeix/commit/b0c06c570d216c252be60327845d51b0965f583c))
* **search:** add pipe syntax for OR queries ([82bfe2d](https://github.com/montanetech/codeix/commit/82bfe2dfdb2931a484ef7611d15ac072d05edeac))
* **search:** allow multiple kinds + improve docs ([5c4ffdb](https://github.com/montanetech/codeix/commit/5c4ffdb164d9c89a22893e4cbf5626f1aca93912))
* **search:** glob patterns for get_file_symbols ([e16fdd4](https://github.com/montanetech/codeix/commit/e16fdd45d9564018d3de17cc73890f9fadd42b27))
### Bug Fixes
* **c:** classify functions returning pointers correctly ([084840e](https://github.com/montanetech/codeix/commit/084840e01c4683dafe0685b36ccfca1a507aa1ee))
* **db:** support base name matching in get_callers and get_callees ([f0974ec](https://github.com/montanetech/codeix/commit/f0974ecb8df6dd6d814ca49cf8c5affac3df49df))
* **db:** support base name matching in get_callers and get_callees ([5f982a7](https://github.com/montanetech/codeix/commit/5f982a77174cdc2a9b86a762ad1a44f2ec49aa79))
* enforce minimum context + hide redundant fields ([6fdac27](https://github.com/montanetech/codeix/commit/6fdac2755d9f151d62c042c5396294858f480793))
* hide tokens field from serialized output ([aea11d3](https://github.com/montanetech/codeix/commit/aea11d3e72cb97342daa293dbe0a19feb1800fb2))
* **test:** canonicalize paths in macOS CI tests ([2fb1ede](https://github.com/montanetech/codeix/commit/2fb1edeb21712cf87490978541e5a08449856f55))
* **watcher:** emit ProjectRemoved event when subproject deleted ([657ced3](https://github.com/montanetech/codeix/commit/657ced380b9c36b72faf1ac753abaf41e43b6c46))
* **watcher:** emit ProjectRemoved event when subproject deleted ([#61](https://github.com/montanetech/codeix/issues/61)) ([3f78fad](https://github.com/montanetech/codeix/commit/3f78fad459bb91ad013c69043c3ec395df12d4ef))
## [0.3.0](https://github.com/montanetech/codeix/compare/v0.2.0...v0.3.0) (2026-02-10)
### ⚠ BREAKING CHANGES
* MCP tool API has changed significantly:
- `search_symbols`, `search_files`, `search_texts` replaced by unified `search` tool
- `list_projects` replaced by `explore` tool
- `get_symbol_children` renamed to `get_children`
- CLI now uses `-r/--root` option instead of positional path argument
- Parameter names unified across all tools
### Features
* **#10:** explicit flush with trigger file mechanism ([adcf769](https://github.com/montanetech/codeix/commit/adcf7692ba1632533b1f1364f715c87efee19b08))
* **#10:** explicit flush with trigger file mechanism ([694466c](https://github.com/montanetech/codeix/commit/694466c9d5da6a69309c0a5162c1819909da7eaa))
* **#36:** mount owns walker and watcher, single-walk strategy ([3bbadd5](https://github.com/montanetech/codeix/commit/3bbadd5ff874af621701f2c090077a07dc72e919))
* add benchmark suite for indexing speed and search quality ([908802f](https://github.com/montanetech/codeix/commit/908802fb9ebc6de8ac616c02a4d28ab7432c2a36))
* add format parameter for human-readable vs JSON output ([3ffac86](https://github.com/montanetech/codeix/commit/3ffac86e60b6167f23aa5be76db3558bba099f46))
* add format parameter for human-readable vs JSON output ([#51](https://github.com/montanetech/codeix/issues/51)) ([501db9b](https://github.com/montanetech/codeix/commit/501db9b69028eb52f15e3aa65187ac02c7be9b3b))
* add get_callers, get_callees, search_references MCP tools ([260d802](https://github.com/montanetech/codeix/commit/260d80287f3e6ca9c8366f27fbc3f4c9427cc488))
* add interactive query REPL ([a83284c](https://github.com/montanetech/codeix/commit/a83284caaa471216c6057e5eb47dc2c2e26e2624))
* add interactive query REPL (closes [#39](https://github.com/montanetech/codeix/issues/39)) ([17da5a8](https://github.com/montanetech/codeix/commit/17da5a8fc96882c79c926ca3d0d28d0640e1c07f))
* add ReferenceEntry struct for tracking symbol references ([6f303bf](https://github.com/montanetech/codeix/commit/6f303bfbf12b396ed286c0b041bf300b2b7f3d9d))
* add refs table and relationship query methods to database ([b77712a](https://github.com/montanetech/codeix/commit/b77712ada22b2109bfb9a6e6de94ee84d49316ab))
* allow symbol enumeration without text query ([8380d4d](https://github.com/montanetech/codeix/commit/8380d4dfb2ecb5e8158f0df26c22446bc8b04883))
* allow symbol enumeration without text query ([#15](https://github.com/montanetech/codeix/issues/15)) ([3ef127d](https://github.com/montanetech/codeix/commit/3ef127dd5e0f9c771735ce5449f4db3cc13a300b))
* **explore:** add explore tool with budget-based file capping ([0eb28a3](https://github.com/montanetech/codeix/commit/0eb28a3914f6764615df039251b0c82b2d1c016e))
* implement call and import reference extraction for Python ([6ff00a8](https://github.com/montanetech/codeix/commit/6ff00a837fa946f5f0cad59032fc704bd35236f2))
* **index:** add title and description metadata to file index ([92e2f35](https://github.com/montanetech/codeix/commit/92e2f3589a360f510115724eb3f10d9326d6f3d8))
* **index:** add title and description metadata to file index ([3ba8f39](https://github.com/montanetech/codeix/commit/3ba8f39a03b6ced54af3b0fcd26fff3a880dfdab))
* **makefile:** add standard targets ([f9b63c1](https://github.com/montanetech/codeix/commit/f9b63c182cbfe0b7c36b1b319abea6281fb8172e))
* **mcp:** add explore tool for project structure discovery ([#47](https://github.com/montanetech/codeix/issues/47)) ([8b7ae55](https://github.com/montanetech/codeix/commit/8b7ae55544b52a1973d6594a67066e8f8347e446))
* **mcp:** add relationship query tools ([92a48ed](https://github.com/montanetech/codeix/commit/92a48ed68cec66decaecdbf03f361343c38fe0f5))
* **mcp:** extract project metadata from package manifests ([c1d2b2b](https://github.com/montanetech/codeix/commit/c1d2b2b0c636021abd0a7bbc84487de33aa5966c))
* **mcp:** extract project metadata from package manifests ([#20](https://github.com/montanetech/codeix/issues/20)) ([4258f0b](https://github.com/montanetech/codeix/commit/4258f0bfa2dfc1eb64a940c36c5705d4cb9d2eb2))
* **mcp:** return code snippets in search results ([e33bde3](https://github.com/montanetech/codeix/commit/e33bde31da9879943f59f76505c358de6c1bb2e7))
* **mcp:** return code snippets in search results ([#17](https://github.com/montanetech/codeix/issues/17)) ([cea8ffb](https://github.com/montanetech/codeix/commit/cea8ffb1237bf98527a973cccf2dd646b295cf7e))
* **parser/c:** add reference extraction for calls, includes, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([aea1f02](https://github.com/montanetech/codeix/commit/aea1f021685fc7cf28b1e1519b55cc0070faf3bf))
* **parser/cpp:** add reference extraction for calls, includes, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([15cb6a9](https://github.com/montanetech/codeix/commit/15cb6a9e9349e205c2a0d88479341c8fb31159f3))
* **parser/csharp:** add reference extraction for calls, usings, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([8ea9392](https://github.com/montanetech/codeix/commit/8ea9392aff7fc8e2ee8c0fe66b3d834df99f9f85))
* **parser/go:** add reference extraction for calls, imports, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([d3b3349](https://github.com/montanetech/codeix/commit/d3b3349fa1cdf476382b2c2b726cc4ad38f4af14))
* **parser/java:** add reference extraction for calls, imports, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([a64418f](https://github.com/montanetech/codeix/commit/a64418fd23f20a3a69f809babd7c2a9f4a2b7740))
* **parser/javascript:** add reference extraction for calls and imports ([#41](https://github.com/montanetech/codeix/issues/41)) ([ef7d533](https://github.com/montanetech/codeix/commit/ef7d5330deebce5a274a1a1a714461e1609379ff))
* **parser/ruby:** add reference extraction for calls and requires ([#41](https://github.com/montanetech/codeix/issues/41)) ([b3e3659](https://github.com/montanetech/codeix/commit/b3e36591df312e2008337e9caa8e1c68adf84040))
* **parser/rust:** add reference extraction for calls, imports, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([1cfb39f](https://github.com/montanetech/codeix/commit/1cfb39f4e5acd290de52786322023d664946b07e))
* **parser/typescript:** add reference extraction for calls, imports, type annotations ([#41](https://github.com/montanetech/codeix/issues/41)) ([c8cca10](https://github.com/montanetech/codeix/commit/c8cca10888a83a4cea43d1ba985a4b139b2a38c3))
* **parser:** add reference extraction to all language parsers ([#41](https://github.com/montanetech/codeix/issues/41)) ([90749d0](https://github.com/montanetech/codeix/commit/90749d0b33992844f8490265a462a48095254a62))
* **parser:** add tokens field for FTS search on implementation details ([72a4dac](https://github.com/montanetech/codeix/commit/72a4dac4adf6018dc8e8f57eafc98af0bf9ec587))
* **parser:** add tokens field for FTS search on implementation details ([381432e](https://github.com/montanetech/codeix/commit/381432ea490258608a1ec8e75946114cefdaaed4))
* **parser:** enable token extraction for C, C++, C#, Java, JS, Ruby, TS ([4cd30bb](https://github.com/montanetech/codeix/commit/4cd30bbc3d427a9947b34d8a34079f0a5b1eadee))
* **parser:** index markdown headings as symbols (TOC support) ([3fccc89](https://github.com/montanetech/codeix/commit/3fccc892a7732ee66dffe03e64834e4dabb9a032))
* **parser:** index markdown headings as symbols (TOC support) ([991e53f](https://github.com/montanetech/codeix/commit/991e53fca983e5cfe2f7e6debc350044a62dd348))
* unified search API and reference extraction ([2d43fad](https://github.com/montanetech/codeix/commit/2d43fad5e7e92d3907340a9b52f2eeb23db4a936))
* unified search tool with hybrid FTS architecture (closes [#48](https://github.com/montanetech/codeix/issues/48)) ([4f47c82](https://github.com/montanetech/codeix/commit/4f47c82b7dd212c9705d3db42efcbcd9a7c07bce))
* unified search tool with hybrid FTS architecture (closes [#48](https://github.com/montanetech/codeix/issues/48)) ([1923fc6](https://github.com/montanetech/codeix/commit/1923fc6727e614471e0f4b32c796ff9c58adc820))
* update treesitter parser to return references ([e080ee9](https://github.com/montanetech/codeix/commit/e080ee918648209c814f203835bd0620282dc1a8))
### Bug Fixes
* **#36:** mount owns walker and watcher to fix CPU spin ([3a70c21](https://github.com/montanetech/codeix/commit/3a70c21773ea91d331d4588f5d11bf047b80b083))
* **bench:** handle Claude CLI streaming buffer errors with fallback ([7654963](https://github.com/montanetech/codeix/commit/7654963b3acbb3cb4ac337261f23406e1a3da8fc))
* **bench:** replace unsupported repos with real projects ([fecaed1](https://github.com/montanetech/codeix/commit/fecaed11d9acf6487a847cd920d8f33a88e42afb))
* **bench:** update build command to use -r flag ([1d62c52](https://github.com/montanetech/codeix/commit/1d62c5234084e35fe9892c4e0378b6724cf494a1))
* **bench:** update search questions for supported repos ([539a40a](https://github.com/montanetech/codeix/commit/539a40ad8e3758bb8cfe7d420ab5c178e7084605))
* **db:** make FTS5 conditional to reduce memory in build mode ([4d7d0b8](https://github.com/montanetech/codeix/commit/4d7d0b816bbcc34926c126ef937f542872a09a8e))
* **parser:** add depth limiting to prevent stack overflow ([e7eb425](https://github.com/montanetech/codeix/commit/e7eb425a47ecca35c4f587ed25afb473560fcfe5))
* **parser:** handle multi-byte UTF-8 chars in markdown headings ([c95d6dc](https://github.com/montanetech/codeix/commit/c95d6dc45292041efeb76d67835bff4785596af8))
* **parser:** handle multi-byte UTF-8 chars in markdown headings ([#52](https://github.com/montanetech/codeix/issues/52)) ([d2e7a82](https://github.com/montanetech/codeix/commit/d2e7a822bc4860b7ea4b7716d9320a47b06f9597))
* prevent crash on large repositories (issue [#24](https://github.com/montanetech/codeix/issues/24)) ([a665c19](https://github.com/montanetech/codeix/commit/a665c19cadd7a0e55bc7a5915f2f41673f9bb667))
### Performance Improvements
* **writer:** remove redundant memory copies during export ([eedc265](https://github.com/montanetech/codeix/commit/eedc2651293c796797a47e1175e17b1c3ed7fff0))
## [0.2.0](https://github.com/montanetech/codeix/compare/v0.1.8...v0.2.0) (2026-02-06)
### ⚠ BREAKING CHANGES
* Database schema changed with new project column. Existing indexes need to be rebuilt.
### Features
* **db:** add project column to schema ([de8a54f](https://github.com/montanetech/codeix/commit/de8a54f3842387d7470242290dd63031d81e0233))
* **handler:** add subproject discovery with MountTable integration ([6b1b610](https://github.com/montanetech/codeix/commit/6b1b610834feb9791ba5e44f29e12e405258ba0f))
* **mcp:** add list_projects tool and project filter to search tools ([df19cb4](https://github.com/montanetech/codeix/commit/df19cb4fd61b088164549bc7d6e9cf7cdb9dd1f0))
* multi-repo mount table with subproject discovery ([5daebed](https://github.com/montanetech/codeix/commit/5daebedc9cb2186376e9fc881a4c684abd4c00d4))
* multi-repo support with MountTable ([1ab01f6](https://github.com/montanetech/codeix/commit/1ab01f68159ed29e77e0f61f06d4a6f186ea19c2))
* **scanner:** add MountTable with flock locking ([a70f833](https://github.com/montanetech/codeix/commit/a70f833963689a3c66a68d7601b001fb36f120af))
### Performance Improvements
* reduce readlink syscalls in hot paths ([27582e6](https://github.com/montanetech/codeix/commit/27582e6e18322899be23face76dece937d7134a3))
## [0.1.8](https://github.com/montanetech/codeix/compare/v0.1.7...v0.1.8) (2026-02-06)
### Features
* add codeix.dev website ([0967e32](https://github.com/montanetech/codeix/commit/0967e3246c2cc5142d7b67167a0aba2d7a37f732))
### Bug Fixes
* upgrade notify to 9.0.0-rc.1 with EventKindMask::CORE ([4924dac](https://github.com/montanetech/codeix/commit/4924dace1d48897f73cb3ba7e72cba9aca65ca0f))
* use matched_path_or_any_parents for gitignore checks ([6a2eaf3](https://github.com/montanetech/codeix/commit/6a2eaf34ca1ed3edd7bcca4c4cac13425126cd19))
## [0.1.7](https://github.com/montanetech/codeix/compare/v0.1.6...v0.1.7) (2026-02-05)
### Bug Fixes
* npm OIDC trusted publishing and crates.io auth token ([75db693](https://github.com/montanetech/codeix/commit/75db69337dcb0341b41e528e05de982f784a0afd))
## [0.1.6](https://github.com/montanetech/codeix/compare/v0.1.5...v0.1.6) (2026-02-05)
### Bug Fixes
* include README.md in npm and PyPI packages ([ca32fce](https://github.com/montanetech/codeix/commit/ca32fce723702203899ada2457f5275c4c379780))
## [0.1.5](https://github.com/montanetech/codeix/compare/v0.1.4...v0.1.5) (2026-02-05)
### Bug Fixes
* use trusted publishers (OIDC) for npm, PyPI, and crates.io ([ee579bc](https://github.com/montanetech/codeix/commit/ee579bc74c4e142c2ba07988aec9ed215fc9cc42))
* use valid PyPI classifier ([341db80](https://github.com/montanetech/codeix/commit/341db8072ea5dfd6025af71c7074a0016e724a36))
## [0.1.4](https://github.com/montanetech/codeix/compare/v0.1.3...v0.1.4) (2026-02-05)
### Bug Fixes
* add actions:write permission to release workflow for workflow_dispatch ([53c5f60](https://github.com/montanetech/codeix/commit/53c5f601b2c5c9c43c152fb8a57dd05db0b9d4e9))
## [0.1.3](https://github.com/montanetech/codeix/compare/v0.1.2...v0.1.3) (2026-02-05)
### Bug Fixes
* chain release workflow from release-please via workflow_call ([1476c62](https://github.com/montanetech/codeix/commit/1476c62b36c02e912b19bfb80a0b28123f2653ef))
## [0.1.2](https://github.com/montanetech/codeix/compare/v0.1.1...v0.1.2) (2026-02-05)
### Bug Fixes
* drop x86_64-apple-darwin target (macos-13 runner retired) ([60f383f](https://github.com/montanetech/codeix/commit/60f383fcd59928ad3bb90f4db2cd59d7de51ff97))
* remove component prefix from release-please tags ([0ee659e](https://github.com/montanetech/codeix/commit/0ee659e723f7f7fbcd8ee09bf94e57b4df8f7f2c))
## [0.1.1](https://github.com/montanetech/codeix/compare/codeix-v0.1.0...codeix-v0.1.1) (2026-02-05)
### Features
* add full language support for 10 languages ([3bdd4eb](https://github.com/montanetech/codeix/commit/3bdd4ebe76159ccd8cd1b01410babb5857bd394b))
* build command with progress output ([6dfe59c](https://github.com/montanetech/codeix/commit/6dfe59ce246d4222eb4313e211510ee7f9a7ee2e))
* file scanner and hasher ([210f5cb](https://github.com/montanetech/codeix/commit/210f5cb31fc21a40d917ff29bee87aa525332636))
* file watcher with incremental indexing ([5e0f7f7](https://github.com/montanetech/codeix/commit/5e0f7f782cb97a501fae90f6a0665616b58f79c3))
* index format and I/O ([7b30e5c](https://github.com/montanetech/codeix/commit/7b30e5c3e49443b04073079e6ff0b5e8967625c9))
* MCP server with 6 tools ([a53c921](https://github.com/montanetech/codeix/commit/a53c921f3627098c95ce8ff533d06ec8a2047144))
* project scaffold and dependencies ([5d7f5af](https://github.com/montanetech/codeix/commit/5d7f5afc4633de003e8bb6c9cd2e34eb55d0b1ac))
* serve command and CLI entrypoint ([87d0194](https://github.com/montanetech/codeix/commit/87d01943ca0336066a15dcdb9b6456a26b7984cc))
* SQLite FTS5 search database ([a0e7357](https://github.com/montanetech/codeix/commit/a0e73572350452e15b62b6ce75368f47c5f926b5))
* tree-sitter parser with Rust extraction ([f705a31](https://github.com/montanetech/codeix/commit/f705a310e1fd48ff69f0040e44984f179c0bb2c2))