Skip to content

Commit 3fa2792

Browse files
committed
feat(vscode): polish extension for marketplace publish
- Add LICENSE (MIT) - Add README.md with badges, feature table, commands, settings docs - Add .vscodeignore to keep .vsix lean - Fix bug: getConfiguration('contextforge') → getConfiguration('sigmap') - package.json: add galleryBanner, Machine Learning category, qna, bugs, homepage - Packages as sigmap-1.5.0.vsix (7.54 KB, 6 files)
1 parent 8ddafee commit 3fa2792

6 files changed

Lines changed: 162 additions & 4 deletions

File tree

vscode-extension/.vscodeignore

Lines changed: 11 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,11 @@
1+
# Files to exclude from the .vsix package
2+
.gitignore
3+
.eslintrc*
4+
*.test.js
5+
**/*.test.js
6+
test/
7+
tests/
8+
.vscode-test/
9+
*.vsix
10+
node_modules/
11+
.git/

vscode-extension/LICENSE

Lines changed: 21 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,21 @@
1+
MIT License
2+
3+
Copyright (c) 2026 Manoj Kumar
4+
5+
Permission is hereby granted, free of charge, to any person obtaining a copy
6+
of this software and associated documentation files (the "Software"), to deal
7+
in the Software without restriction, including without limitation the rights
8+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9+
copies of the Software, and to permit persons to whom the Software is
10+
furnished to do so, subject to the following conditions:
11+
12+
The above copyright notice and this permission notice shall be included in all
13+
copies or substantial portions of the Software.
14+
15+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21+
SOFTWARE.

vscode-extension/README.md

Lines changed: 117 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,117 @@
1+
# SigMap — AI Context Engine for VS Code
2+
3+
**Zero-dependency AI context engine. 97% token reduction. Always-on code signatures.**
4+
5+
[![Version](https://img.shields.io/visual-studio-marketplace/v/manojmallick.sigmap?color=7c6af7&label=marketplace)](https://marketplace.visualstudio.com/items?itemName=manojmallick.sigmap)
6+
[![Installs](https://img.shields.io/visual-studio-marketplace/i/manojmallick.sigmap)](https://marketplace.visualstudio.com/items?itemName=manojmallick.sigmap)
7+
[![License: MIT](https://img.shields.io/badge/license-MIT-green)](https://github.com/manojmallick/sigmap/blob/main/LICENSE)
8+
9+
---
10+
11+
## What it does
12+
13+
SigMap extracts a compact **signature map** of your codebase — function names, class hierarchies, exported types — and writes it to `.github/copilot-instructions.md`. Every time you open VS Code or run a regeneration, GitHub Copilot (and any other AI assistant) starts with full codebase context at under **4,000 tokens**.
14+
15+
- **21 language extractors** — TypeScript, JavaScript, Python, Go, Rust, Java, C#, C++, Ruby, PHP, Swift, Dart, Kotlin, Scala, Vue, Svelte, HTML, CSS, YAML, Shell, Dockerfile
16+
- **Zero npm dependencies** — runs on any machine with Node.js 18+
17+
- **Secret scanning** — redacts AWS keys, GitHub tokens, DB connection strings before writing
18+
- **MCP server** — exposes `read_context`, `search_signatures`, `get_map` tools for Claude / Cursor
19+
- **Health scoring** — grades your context file A–D so you know when to regenerate
20+
21+
---
22+
23+
## Requirements
24+
25+
- **Node.js 18+** installed on the machine
26+
- `gen-context.js` present in your workspace root (comes with the [`sigmap`](https://www.npmjs.com/package/sigmap) npm package)
27+
28+
Install via npm (optional — the extension auto-detects it):
29+
```bash
30+
npm install -g sigmap
31+
# or use it without installing:
32+
npx sigmap
33+
```
34+
35+
---
36+
37+
## Getting Started
38+
39+
1. Install the extension
40+
2. Open a project that has `gen-context.js` in its root (or install `sigmap` globally)
41+
3. The **SigMap status bar item** appears at the bottom — showing your context health grade and how long ago it was last generated
42+
4. Run **`SigMap: Regenerate Context`** from the Command Palette (`⇧⌘P`) to refresh
43+
44+
---
45+
46+
## Features
47+
48+
### Status Bar
49+
The status bar item shows your context health at a glance:
50+
51+
| Icon | Meaning |
52+
|---|---|
53+
| `$(check) A` | Context is fresh and complete |
54+
| `$(info) B` | Good — minor gaps |
55+
| `$(warning) C` | Stale or incomplete — regenerate soon |
56+
| `$(error) D` | Context is very stale or missing |
57+
58+
Click the status bar item to **open the context file** directly.
59+
60+
### Commands
61+
62+
| Command | Description |
63+
|---|---|
64+
| `SigMap: Regenerate Context` | Runs `node gen-context.js` in your workspace root |
65+
| `SigMap: Open Context File` | Opens `.github/copilot-instructions.md` in the editor |
66+
67+
Access both from the Command Palette (`⇧⌘P` / `Ctrl+Shift+P`).
68+
69+
### Stale Context Notification
70+
If your context file hasn't been updated in **24 hours**, SigMap shows a notification with a one-click **Regenerate** button.
71+
72+
---
73+
74+
## Extension Settings
75+
76+
| Setting | Default | Description |
77+
|---|---|---|
78+
| `sigmap.scriptPath` | `""` | Absolute path to `gen-context.js`. Leave empty to auto-detect from workspace root. |
79+
80+
---
81+
82+
## How SigMap works
83+
84+
```
85+
Your codebase → 21 language extractors → signatures only → token budget
86+
87+
.github/copilot-instructions.md
88+
89+
Copilot / Claude / Cursor / Gemini
90+
```
91+
92+
A 50,000-line TypeScript monorepo becomes ~3,800 tokens of pure signatures — **97% reduction** with zero information loss for AI navigation.
93+
94+
---
95+
96+
## Companion: Repomix
97+
98+
For deep one-off sessions (full code review, major refactor), use [Repomix](https://github.com/yamadashy/repomix) alongside SigMap:
99+
100+
- **SigMap** — always-on, daily context at < 4K tokens
101+
- **Repomix** — deep sessions, full file content, when you need everything
102+
103+
---
104+
105+
## Related Resources
106+
107+
- [GitHub Repository](https://github.com/manojmallick/sigmap)
108+
- [npm package: sigmap](https://www.npmjs.com/package/sigmap)
109+
- [Documentation](https://manojmallick.github.io/sigmap/)
110+
- [Changelog](https://github.com/manojmallick/sigmap/blob/main/CHANGELOG.md)
111+
- [Report an Issue](https://github.com/manojmallick/sigmap/issues)
112+
113+
---
114+
115+
## License
116+
117+
MIT © 2026 [Manoj Mallick](https://github.com/manojmallick)

vscode-extension/package.json

Lines changed: 12 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -7,8 +7,13 @@
77
"engines": {
88
"vscode": "^1.85.0"
99
},
10-
"categories": ["Other", "AI"],
11-
"keywords": ["copilot", "ai-context", "token-reduction", "code-signatures", "claude", "cursor"],
10+
"categories": ["Other", "AI", "Machine Learning"],
11+
"keywords": ["copilot", "ai-context", "token-reduction", "code-signatures", "claude", "cursor", "sigmap", "context", "llm", "zero-dependency", "mcp"],
12+
"galleryBanner": {
13+
"color": "#1e1e2e",
14+
"theme": "dark"
15+
},
16+
"qna": "https://github.com/manojmallick/sigmap/issues",
1217
"activationEvents": ["onStartupFinished"],
1318
"main": "./src/extension.js",
1419
"contributes": {
@@ -37,5 +42,9 @@
3742
"type": "git",
3843
"url": "https://github.com/manojmallick/sigmap.git"
3944
},
40-
"license": "MIT"
45+
"license": "MIT",
46+
"bugs": {
47+
"url": "https://github.com/manojmallick/sigmap/issues"
48+
},
49+
"homepage": "https://manojmallick.github.io/sigmap/"
4150
}

vscode-extension/sigmap-1.5.0.vsix

7.54 KB
Binary file not shown.

vscode-extension/src/extension.js

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -39,7 +39,7 @@ function workspaceRoot() {
3939
* Uses sigmap.scriptPath setting if set; otherwise looks in workspace root.
4040
*/
4141
function resolveScript(root) {
42-
const cfg = vscode.workspace.getConfiguration('contextforge');
42+
const cfg = vscode.workspace.getConfiguration('sigmap');
4343
const custom = cfg.get('scriptPath', '').trim();
4444
if (custom && fs.existsSync(custom)) return custom;
4545
if (root) {

0 commit comments

Comments
 (0)