sigmap 7.24.2 → 7.25.1
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.
- package/CHANGELOG.md +25 -0
- package/README.md +31 -7
- package/gen-context.js +7 -2
- package/llms-full.txt +11 -6
- package/llms.txt +4 -4
- package/package.json +5 -2
- package/packages/cli/package.json +1 -1
- package/packages/core/package.json +1 -1
- package/src/mcp/server.js +1 -1
package/CHANGELOG.md
CHANGED
|
@@ -10,6 +10,31 @@ Format: [Semantic Versioning](https://semver.org/)
|
|
|
10
10
|
|
|
11
11
|
---
|
|
12
12
|
|
|
13
|
+
## [7.25.1] — 2026-06-21
|
|
14
|
+
|
|
15
|
+
Patch release — **Trust Hygiene (H4):** document the real CLI / MCP / adapter surface. Completes the v7.25.x milestone's documentation goals (only H2, the reproducible bundle build, remains).
|
|
16
|
+
|
|
17
|
+
### Added
|
|
18
|
+
- **Document the shipped surface (#366):** `sigmap --help` now lists the five wired-but-undocumented commands — `conventions`, `scaffold`, `verify-plan`, `review-pr`, and `create` (the grounded-creation pipeline). The README gains a "Grounded creation & guardrails" section, lists all 15 MCP tools, and adds the `willow` adapter to the integrations table. A new `surface-docs` test pins the documented surface to source (`--help` must list the commands, README's MCP count must equal `TOOLS.length`, every `listAdapters()` entry must appear in the README table), so the docs can never silently undersell the product again.
|
|
19
|
+
|
|
20
|
+
### Fixed
|
|
21
|
+
- **MCP tool undercount (#366):** the README advertised "10 on-demand tools" while the server ships **15** — corrected and now gated by the `surface-docs` test.
|
|
22
|
+
|
|
23
|
+
---
|
|
24
|
+
|
|
25
|
+
## [7.25.0] — 2026-06-21
|
|
26
|
+
|
|
27
|
+
Minor release — **Trust Hygiene (H1 + H3):** one generated source of benchmark truth, gated in CI. First installment of the v7.25.x milestone.
|
|
28
|
+
|
|
29
|
+
### Added
|
|
30
|
+
- **Single source of benchmark truth (#363):** `benchmarks/latest.json` is now generated from the benchmark reports (`scripts/gen-benchmark-latest.mjs`), and `version.json` metrics, `README.md` (via `<!--SM:KEY-->` markers), and `llms.txt`/`llms-full.txt` all read from it (`scripts/sync-metrics.mjs`). Every hand-typed metric is removed — published numbers can no longer silently drift from the measured reports. New `npm run metrics:sync` regenerates the whole chain; `npm run check:metrics` gates it in `prepublishOnly` **and** CI.
|
|
31
|
+
- **Truthful `version.json` (#363):** `languages`, `extractors`, `mcp_tools`, and `tests` are auto-derived from source via a shared `scripts/lib/source-meta.mjs` (the same derivation the llms generator uses, so the language count can never diverge). Added the `extractors` field.
|
|
32
|
+
|
|
33
|
+
### Changed
|
|
34
|
+
- **Every published number traces to one fresh, gated benchmark run (#363):** the long-standing drift (committed reports vs hand-typed README/`version.json`/`llms.txt`) is eliminated — all surfaces now derive from `benchmarks/latest.json`. This release regenerates that file from a **live** benchmark run (2026-06-21, `sigmap-v7.25-main`, 21 repos): hit@5 **75.6%** (13.6% baseline, 5.6× lift), token reduction **97%**, task success **52.2%**, prompts/task **1.72 → 2.84**, prompt reduction **39.4%**. `languages` corrected `31 → 33`; `extractors` (42) now reported.
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
13
38
|
## [7.24.2] — 2026-06-19
|
|
14
39
|
|
|
15
40
|
Patch release — surface the StarMapper stargazer map in the docs.
|
package/README.md
CHANGED
|
@@ -48,11 +48,13 @@ SigMap extracts function and class signatures from your codebase and feeds the r
|
|
|
48
48
|
|
|
49
49
|
## Why SigMap?
|
|
50
50
|
|
|
51
|
+
<!--SM:whyMetrics-->
|
|
51
52
|
- **75.6% hit@5** — right file found in top 5 results (vs 13.6% baseline)
|
|
52
53
|
- **97.0% token reduction** — average across 21 real repos
|
|
53
54
|
- **52.2% task success rate** — up from 10% without context
|
|
54
55
|
- **1.72 prompts per task** — down from 2.84 (39.4% fewer retries)
|
|
55
|
-
|
|
56
|
+
<!--/SM:whyMetrics-->
|
|
57
|
+
- **<!--SM:languages-->33<!--/SM:languages--> languages supported** — TypeScript, Python, Go, Rust, Java, R, and more
|
|
56
58
|
- **No vendor lock-in** — works with any AI assistant or local LLM
|
|
57
59
|
- **No API costs** — use local models (Ollama, llama.cpp, vLLM) with zero token fees
|
|
58
60
|
- **Full privacy** — keep your code and context on your machine
|
|
@@ -64,7 +66,7 @@ SigMap extracts function and class signatures from your codebase and feeds the r
|
|
|
64
66
|
|
|
65
67
|
| Without SigMap | With SigMap |
|
|
66
68
|
|---|---|
|
|
67
|
-
| ❌ Guessing which files are relevant | ✅ Right file in context — 76
|
|
69
|
+
| ❌ Guessing which files are relevant | ✅ Right file in context — <!--SM:hitWhole-->76%<!--/SM:hitWhole--> of the time |
|
|
68
70
|
| ❌ Sending the full repo to your AI | ✅ Minimal context — only what matters |
|
|
69
71
|
| ❌ Embeddings / vector DB required | ✅ Grounded answers, no infra needed |
|
|
70
72
|
|
|
@@ -87,9 +89,10 @@ Ask → Rank → Context → Validate → Judge → Learn
|
|
|
87
89
|
|
|
88
90
|
## Benchmark
|
|
89
91
|
|
|
92
|
+
<!--SM:benchmarkBlock-->
|
|
90
93
|
```
|
|
91
|
-
Benchmark : sigmap-v7.
|
|
92
|
-
Date : 2026-06-
|
|
94
|
+
Benchmark : sigmap-v7.25-main (21 repositories, including R language)
|
|
95
|
+
Date : 2026-06-21
|
|
93
96
|
|
|
94
97
|
Hit@5 : 75.6% (baseline 13.6% — 5.6× lift)
|
|
95
98
|
Token reduction: 97.0% (across 21 repos)
|
|
@@ -97,6 +100,9 @@ Prompt reduction : 39.4% (2.84 → 1.72 prompts per task)
|
|
|
97
100
|
Task success : 52.2% (baseline 10%)
|
|
98
101
|
Repos tested : 21 (JavaScript, Python, Go, Rust, Java, R, C++, C#, Dart, Swift, Ruby, PHP, Scala, Kotlin, and more)
|
|
99
102
|
```
|
|
103
|
+
<!--/SM:benchmarkBlock-->
|
|
104
|
+
|
|
105
|
+
<sub>All numbers above are generated from `benchmarks/latest.json` (`npm run metrics:sync`) — never hand-typed.</sub>
|
|
100
106
|
|
|
101
107
|
Measured on 90 coding tasks across 18 real public repos. No LLM API — fully reproducible.
|
|
102
108
|
|
|
@@ -163,6 +169,7 @@ volta install sigmap
|
|
|
163
169
|
| `openai` | `.github/openai-context.md` | OpenAI API, Aider, local Ollama/llama.cpp |
|
|
164
170
|
| `gemini` | `.github/gemini-context.md` | Google Gemini |
|
|
165
171
|
| `codex` | `AGENTS.md` | OpenAI Codex (legacy) |
|
|
172
|
+
| `willow` | _Willow MCP store (HTTP POST — no file)_ | [Willow](https://github.com/rudi193-cmd/willow-1.9) knowledge store |
|
|
166
173
|
|
|
167
174
|
```bash
|
|
168
175
|
sigmap --adapter copilot # default — works with Copilot, OpenCode
|
|
@@ -184,12 +191,29 @@ Use SigMap with open-source tools and fully self-hosted setups:
|
|
|
184
191
|
| **JetBrains** | [Marketplace](https://plugins.jetbrains.com/plugin/31109-sigmap--ai-context-engine/) | [github.com/manojmallick/sigmap-jetbrains](https://github.com/manojmallick/sigmap-jetbrains) | IntelliJ IDEA, WebStorm, PyCharm, GoLand — tool window + actions |
|
|
185
192
|
| **Neovim** | lazy.nvim / packer / vim-plug | [github.com/manojmallick/sigmap.nvim](https://github.com/manojmallick/sigmap.nvim) | `:SigMap`, `:SigMapQuery` float window, statusline widget |
|
|
186
193
|
|
|
187
|
-
**MCP server** —
|
|
194
|
+
**MCP server** — 15 on-demand tools for Claude Code and Cursor:
|
|
188
195
|
|
|
189
196
|
```bash
|
|
190
197
|
sigmap --mcp
|
|
191
198
|
```
|
|
192
199
|
|
|
200
|
+
Tools: `read_context`, `search_signatures`, `get_map`, `create_checkpoint`, `get_routing`, `explain_file`, `list_modules`, `query_context`, `get_impact`, `get_lines`, `read_memory`, `get_callee_signatures`, plus the live-index notifications `sigmap_notify_file_created`, `sigmap_notify_symbol_added`, and `sigmap_notify_file_deleted`. Full reference: [llms-full.txt](llms-full.txt).
|
|
201
|
+
|
|
202
|
+
---
|
|
203
|
+
|
|
204
|
+
## Grounded creation & guardrails
|
|
205
|
+
|
|
206
|
+
Verify AI work against the live index instead of trusting it blind:
|
|
207
|
+
|
|
208
|
+
```bash
|
|
209
|
+
sigmap conventions # extract the repo's file-naming / export / test conventions
|
|
210
|
+
sigmap scaffold "<name>" # propose a convention-matched file/dir (refuses if conventions conflict)
|
|
211
|
+
sigmap verify-plan <plan.md> # check a plan: do the files/symbols exist? blast radius? scope?
|
|
212
|
+
sigmap verify-ai-output <answer.md> # flag fabricated files/imports/symbols/tests in an AI answer
|
|
213
|
+
sigmap review-pr # audit a diff: scope drift, god-node edits, missing tests, security files
|
|
214
|
+
sigmap create "<task>" # run the whole pipeline: scaffold → verify-plan → verify-ai-output → review-pr
|
|
215
|
+
```
|
|
216
|
+
|
|
193
217
|
---
|
|
194
218
|
|
|
195
219
|
## Try it
|
|
@@ -234,7 +258,7 @@ sigmap --health
|
|
|
234
258
|
| Benchmark methodology | [benchmark.html](https://sigmap.io/guide/benchmark.html) |
|
|
235
259
|
| Config reference | [config.html](https://sigmap.io/guide/config.html) |
|
|
236
260
|
| Roadmap | [roadmap.html](https://sigmap.io/guide/roadmap.html) |
|
|
237
|
-
|
|
|
261
|
+
| <!--SM:languages-->33<!--/SM:languages--> languages | [generalization.html](https://sigmap.io/guide/generalization.html) |
|
|
238
262
|
|
|
239
263
|
---
|
|
240
264
|
|
|
@@ -289,7 +313,7 @@ See [.github/PULL_REQUEST_TEMPLATE.md](.github/PULL_REQUEST_TEMPLATE.md) for the
|
|
|
289
313
|
|
|
290
314
|
---
|
|
291
315
|
|
|
292
|
-
##
|
|
316
|
+
## <!--SM:languages-->33<!--/SM:languages--> languages
|
|
293
317
|
|
|
294
318
|
TypeScript · JavaScript · Python · Java · Kotlin · Go · Rust · C# · C/C++ · Ruby · PHP · Swift · Dart · Scala · Vue · Svelte · HTML · CSS/SCSS · YAML · Shell · SQL · GraphQL · Terraform · Protobuf · Dockerfile · TOML · XML · Properties · Markdown · R · GDScript
|
|
295
319
|
|
package/gen-context.js
CHANGED
|
@@ -8102,7 +8102,7 @@ __factories["./src/mcp/server"] = function(module, exports) {
|
|
|
8102
8102
|
|
|
8103
8103
|
const SERVER_INFO = {
|
|
8104
8104
|
name: 'sigmap',
|
|
8105
|
-
version: '7.
|
|
8105
|
+
version: '7.25.1',
|
|
8106
8106
|
description: 'SigMap MCP server — code signatures on demand',
|
|
8107
8107
|
};
|
|
8108
8108
|
|
|
@@ -13805,7 +13805,7 @@ function __tryGit(args, opts = {}) {
|
|
|
13805
13805
|
catch (_) { return ''; }
|
|
13806
13806
|
}
|
|
13807
13807
|
|
|
13808
|
-
const VERSION = '7.
|
|
13808
|
+
const VERSION = '7.25.1';
|
|
13809
13809
|
const MARKER = '\n\n## Auto-generated signatures\n<!-- Updated by gen-context.js -->\n';
|
|
13810
13810
|
|
|
13811
13811
|
function requireSourceOrBundled(key) {
|
|
@@ -15603,6 +15603,11 @@ Usage:
|
|
|
15603
15603
|
${cmd} verify-ai-output <answer.md> Flag fake files/tests/imports/symbols/npm-scripts in an AI answer
|
|
15604
15604
|
${cmd} verify-ai-output <answer.md> --json Hallucination report as JSON (exits 1 if issues)
|
|
15605
15605
|
${cmd} verify-ai-output <answer.md> --report Write a standalone HTML report (red/amber/green)
|
|
15606
|
+
${cmd} conventions Extract repo file-naming/export/test conventions (--conflicts, --inject, --report, --fix)
|
|
15607
|
+
${cmd} scaffold "<name>" Propose a convention-matched file/dir scaffold (--ext, --threshold, --force, --json)
|
|
15608
|
+
${cmd} verify-plan <plan.md|-> Check a plan vs the live index — files/symbols exist, blast radius, scope (--json)
|
|
15609
|
+
${cmd} review-pr Audit a diff — scope drift, god-node edits, missing tests, security files (--staged, --json)
|
|
15610
|
+
${cmd} create "<task>" Grounded-creation pipeline: scaffold → verify-plan → verify-ai-output → review-pr (--staged)
|
|
15606
15611
|
${cmd} squeeze <file|-> Minimize a pasted stacktrace/CI-log/JSON blob (--json for stats)
|
|
15607
15612
|
${cmd} ask "<query>" --squeeze Auto-accept input minimization (no prompt; for scripts/CI)
|
|
15608
15613
|
${cmd} ask "<query>" --no-squeeze Disable input minimization entirely
|
package/llms-full.txt
CHANGED
|
@@ -9,13 +9,13 @@ the files relevant to the task — cutting tokens ~97% while keeping answers
|
|
|
9
9
|
grounded. Deterministic, offline, no embeddings or vector database. Works with
|
|
10
10
|
Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
|
|
11
11
|
|
|
12
|
-
# Version: 7.
|
|
13
|
-
# Source: auto-generated from package.json, version.json, src/mcp/tools.js, src/config/defaults.js
|
|
12
|
+
# Version: 7.25.1 | Benchmark: sigmap-v7.25-main (2026-06-21)
|
|
13
|
+
# Source: auto-generated from package.json, version.json, benchmarks/latest.json, src/mcp/tools.js, src/config/defaults.js
|
|
14
14
|
# Regenerate: npm run generate:llms | Validate: npm run validate:llms
|
|
15
15
|
|
|
16
16
|
---
|
|
17
17
|
|
|
18
|
-
## Core metrics (benchmark: sigmap-v7.
|
|
18
|
+
## Core metrics (benchmark: sigmap-v7.25-main, 2026-06-21)
|
|
19
19
|
|
|
20
20
|
| Metric | Without SigMap | With SigMap |
|
|
21
21
|
|--------|----------------|-------------|
|
|
@@ -23,7 +23,7 @@ Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
|
|
|
23
23
|
| Token reduction | — | 97.0% average |
|
|
24
24
|
| Task success proxy | 10% | 52.2% |
|
|
25
25
|
| Prompts per task | 2.84 | 1.72 (39.4% fewer) |
|
|
26
|
-
| Supported languages | — |
|
|
26
|
+
| Supported languages | — | 33 |
|
|
27
27
|
| MCP tools | — | 15 |
|
|
28
28
|
| npm runtime dependencies | — | 0 |
|
|
29
29
|
|
|
@@ -100,6 +100,11 @@ sigmap --impact <file> --depth <n> BFS depth limit (default 3, 0=unlimited
|
|
|
100
100
|
sigmap verify-ai-output <answer.md> Flag fake files/tests/imports/symbols/npm-scripts in an AI answer
|
|
101
101
|
sigmap verify-ai-output <answer.md> --json Hallucination report as JSON (exits 1 if issues)
|
|
102
102
|
sigmap verify-ai-output <answer.md> --report Write a standalone HTML report (red/amber/green)
|
|
103
|
+
sigmap conventions Extract repo file-naming/export/test conventions (--conflicts, --inject, --report, --fix)
|
|
104
|
+
sigmap scaffold "<name>" Propose a convention-matched file/dir scaffold (--ext, --threshold, --force, --json)
|
|
105
|
+
sigmap verify-plan <plan.md|-> Check a plan vs the live index — files/symbols exist, blast radius, scope (--json)
|
|
106
|
+
sigmap review-pr Audit a diff — scope drift, god-node edits, missing tests, security files (--staged, --json)
|
|
107
|
+
sigmap create "<task>" Grounded-creation pipeline: scaffold → verify-plan → verify-ai-output → review-pr (--staged)
|
|
103
108
|
sigmap squeeze <file|-> Minimize a pasted stacktrace/CI-log/JSON blob (--json for stats)
|
|
104
109
|
sigmap ask "<query>" --squeeze Auto-accept input minimization (no prompt; for scripts/CI)
|
|
105
110
|
sigmap ask "<query>" --no-squeeze Disable input minimization entirely
|
|
@@ -285,9 +290,9 @@ impact = {"depth":3,"includeSigs":true}
|
|
|
285
290
|
|
|
286
291
|
---
|
|
287
292
|
|
|
288
|
-
## Supported languages (
|
|
293
|
+
## Supported languages (33 extractors)
|
|
289
294
|
|
|
290
|
-
cpp, csharp, css, dart,
|
|
295
|
+
cpp, csharp, css, dart, dockerfile, gdscript, go, graphql, html, java, javascript, kotlin, markdown, php, properties, protobuf, python, r, ruby, rust, scala, shell, sql, svelte, swift, terraform, toml, typescript, typescript_react, vue, vue_sfc, xml, yaml
|
|
291
296
|
|
|
292
297
|
---
|
|
293
298
|
|
package/llms.txt
CHANGED
|
@@ -9,8 +9,8 @@ the files relevant to the task — cutting tokens ~97% while keeping answers
|
|
|
9
9
|
grounded. Deterministic, offline, no embeddings or vector database. Works with
|
|
10
10
|
Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
|
|
11
11
|
|
|
12
|
-
# Version: 7.
|
|
13
|
-
# Source: auto-generated from package.json, version.json, src/mcp/tools.js, src/config/defaults.js
|
|
12
|
+
# Version: 7.25.1 | Benchmark: sigmap-v7.25-main (2026-06-21)
|
|
13
|
+
# Source: auto-generated from package.json, version.json, benchmarks/latest.json, src/mcp/tools.js, src/config/defaults.js
|
|
14
14
|
# Regenerate: npm run generate:llms | Validate: npm run validate:llms
|
|
15
15
|
|
|
16
16
|
## What SigMap solves
|
|
@@ -21,13 +21,13 @@ Claude, Cursor, GitHub Copilot, Aider, Windsurf, local LLMs, and MCP.
|
|
|
21
21
|
- No blast-radius awareness before editing a hub file — `--impact` shows every file a change touches.
|
|
22
22
|
- Pasted stack traces, CI logs, and JSON bloat the prompt — `squeeze` minimizes them and enriches the top frame from the symbol index.
|
|
23
23
|
|
|
24
|
-
## Core metrics (benchmark: sigmap-v7.
|
|
24
|
+
## Core metrics (benchmark: sigmap-v7.25-main, 2026-06-21)
|
|
25
25
|
|
|
26
26
|
- hit@5 retrieval: 75.6% vs 13.6% random baseline (5.6× lift)
|
|
27
27
|
- Token reduction: 97.0% average across benchmark repos
|
|
28
28
|
- Task success: 52.2% vs 10% without SigMap
|
|
29
29
|
- Prompts per task: 1.72 vs 2.84 baseline (39.4% fewer)
|
|
30
|
-
- Languages:
|
|
30
|
+
- Languages: 33 supported · MCP tools: 15
|
|
31
31
|
- Dependencies: zero npm runtime dependencies · fully offline
|
|
32
32
|
|
|
33
33
|
## Quick start
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "sigmap",
|
|
3
|
-
"version": "7.
|
|
3
|
+
"version": "7.25.1",
|
|
4
4
|
"description": "97% token reduction for AI coding. Extracts function & class signatures with TF-IDF ranking to feed only the right files to Claude, Cursor, Copilot, Aider, Windsurf, local LLMs & MCP. Zero dependencies, runs offline via npx.",
|
|
5
5
|
"main": "packages/core/index.js",
|
|
6
6
|
"exports": {
|
|
@@ -38,7 +38,10 @@
|
|
|
38
38
|
"version:sync": "node scripts/sync-versions.mjs",
|
|
39
39
|
"generate:llms": "node scripts/generate-llms.mjs",
|
|
40
40
|
"validate:llms": "node scripts/validate-llms.mjs",
|
|
41
|
-
"
|
|
41
|
+
"metrics:latest": "node scripts/gen-benchmark-latest.mjs",
|
|
42
|
+
"metrics:sync": "node scripts/gen-benchmark-latest.mjs && node scripts/check-version-meta.mjs --fix && node scripts/sync-metrics.mjs && node scripts/generate-llms.mjs",
|
|
43
|
+
"check:metrics": "node scripts/gen-benchmark-latest.mjs --check && node scripts/check-version-meta.mjs && node scripts/sync-metrics.mjs --check",
|
|
44
|
+
"prepublishOnly": "node scripts/check-bundle.mjs && node scripts/gen-benchmark-latest.mjs --check && node scripts/check-version-meta.mjs && node scripts/sync-metrics.mjs --check && node scripts/generate-llms.mjs",
|
|
42
45
|
"benchmark:grounding": "node scripts/run-hallucination-benchmark.mjs",
|
|
43
46
|
"benchmark:llm-ablation": "node scripts/run-llm-ablation.mjs"
|
|
44
47
|
},
|
package/src/mcp/server.js
CHANGED