codeix 0.1.8 → 0.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (2) hide show
  1. package/README.md +21 -9
  2. package/package.json +1 -1
package/README.md CHANGED
@@ -5,7 +5,7 @@
5
5
  ```
6
6
  codeix # start MCP server, watch for changes
7
7
  codeix build # parse source files, write .codeindex
8
- codeix serve --no-watch # serve without file watching
8
+ codeix -r ~/project build # build from a specific directory
9
9
  ```
10
10
 
11
11
  ## Why
@@ -30,7 +30,7 @@ AI coding agents spend most of their token budget *finding* code before they can
30
30
  - **Shareable** — library authors can ship `.codeindex` in their npm/PyPI/crates.io package. Consumers get instant navigation of dependencies.
31
31
  - **Composable** — the MCP server auto-discovers dependency indexes and mounts them. Query your code and your dependencies in one place.
32
32
  - **Structured for LLMs** — symbols have kinds, signatures, parent relationships, and line ranges. The agent gets exactly what it needs in one tool call instead of piecing it together from raw text.
33
- - **Prose search** — `search_texts` targets comments, docstrings, and string literals specifically. Find TODOs, find the error message a user reported, find what a function's docstring says — without noise from code.
33
+ - **Prose search** — `search --scope text` targets comments, docstrings, and string literals specifically. Find TODOs, find the error message a user reported, find what a function's docstring says — without noise from code.
34
34
  - **Fast** — builds in seconds, queries in milliseconds. Rust + tree-sitter + in-memory SQLite FTS5 under the hood.
35
35
 
36
36
  ## The `.codeindex` format
@@ -63,16 +63,18 @@ Works with Git repos, npm, PyPI, and crates.io.
63
63
 
64
64
  ## MCP tools
65
65
 
66
- Six tools, zero setup. The agent queries immediately — no init, no config, no refresh.
66
+ Eight tools, zero setup. The agent queries immediately — no init, no config, no refresh.
67
67
 
68
68
  | Tool | What it does |
69
69
  |---|---|
70
- | `search_symbols` | Fuzzy search across all symbols (FTS5, BM25-ranked) |
71
- | `search_files` | Find files by name, path, or language |
72
- | `search_texts` | Full-text search on comments, docstrings, strings |
70
+ | `explore` | Explore project structure: metadata, subprojects, files grouped by directory |
71
+ | `search` | Unified full-text search across symbols, files, and texts (FTS5, BM25-ranked) with scope/kind/path/project filters |
73
72
  | `get_file_symbols` | List all symbols in a file |
74
- | `get_symbol_children` | Get children of a class/module |
73
+ | `get_children` | Get children of a class/module |
75
74
  | `get_imports` | List imports for a file |
75
+ | `get_callers` | Find all places that call or reference a symbol |
76
+ | `get_callees` | Find all symbols that a function/method calls |
77
+ | `flush_index` | Flush pending index changes to disk |
76
78
 
77
79
  ## Project discovery
78
80
 
@@ -96,6 +98,13 @@ Tree-sitter grammars, feature-gated at compile time:
96
98
  | C++ | `lang-cpp` | yes | `.cpp` `.cc` `.cxx` `.hpp` `.hxx` |
97
99
  | Ruby | `lang-ruby` | yes | `.rb` `.rake` `.gemspec` |
98
100
  | C# | `lang-csharp` | yes | `.cs` |
101
+ | Markdown | `lang-markdown` | yes | `.md` `.markdown` |
102
+
103
+ ### Markdown support
104
+
105
+ Markdown files are parsed for **headings** (both ATX `#` and Setext underline styles) which are indexed as `section` symbols with hierarchical parent-child relationships — enabling TOC extraction and document structure navigation.
106
+
107
+ Fenced code blocks are extracted as `code` text entries, parented to their containing section.
99
108
 
100
109
  ### Embedded scripts
101
110
 
@@ -140,7 +149,7 @@ All channels install the same single binary. No runtime dependencies.
140
149
  codeix build
141
150
 
142
151
  # Build from a specific directory (discovers all git repos below)
143
- codeix build ~/projects
152
+ codeix -r ~/projects build
144
153
 
145
154
  # Start MCP server (default command, watches for changes)
146
155
  codeix
@@ -148,6 +157,9 @@ codeix
148
157
  # Or explicitly
149
158
  codeix serve
150
159
  codeix serve --no-watch
160
+
161
+ # Serve from a specific directory
162
+ codeix -r ~/projects serve
151
163
  ```
152
164
 
153
165
  ### MCP client configuration
@@ -169,7 +181,7 @@ Add to your MCP client config (e.g. Claude Desktop, Cursor):
169
181
  - **Local only** — no network, no API keys, works offline and air-gapped
170
182
  - **Deterministic** — same source always produces the same index (clean diffs)
171
183
  - **Composable** — dependency indexes are auto-discovered and mounted at query time
172
- - **Minimal surface** — 6 query tools, zero management plumbing
184
+ - **Minimal surface** — 7 query tools, zero management plumbing
173
185
 
174
186
  ## Architecture
175
187
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "codeix",
3
- "version": "0.1.8",
3
+ "version": "0.3.0",
4
4
  "description": "Portable, composable code index — build with tree-sitter, query via MCP",
5
5
  "license": "MIT OR Apache-2.0",
6
6
  "repository": {