milens 0.2.4 → 0.3.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/LICENSE +75 -75
- package/README.md +435 -392
- package/dist/analyzer/engine.js +6 -1
- package/dist/analyzer/engine.js.map +1 -1
- package/dist/cli.js +17 -5
- package/dist/cli.js.map +1 -1
- package/dist/parser/extract.d.ts.map +1 -1
- package/dist/parser/extract.js +8 -0
- package/dist/parser/extract.js.map +1 -1
- package/dist/parser/lang-go.d.ts.map +1 -1
- package/dist/parser/lang-go.js +22 -18
- package/dist/parser/lang-go.js.map +1 -1
- package/dist/parser/lang-java.d.ts.map +1 -1
- package/dist/parser/lang-java.js +28 -17
- package/dist/parser/lang-java.js.map +1 -1
- package/dist/parser/lang-js.d.ts.map +1 -1
- package/dist/parser/lang-js.js +42 -32
- package/dist/parser/lang-js.js.map +1 -1
- package/dist/parser/lang-php.d.ts.map +1 -1
- package/dist/parser/lang-php.js +35 -20
- package/dist/parser/lang-php.js.map +1 -1
- package/dist/parser/lang-py.d.ts.map +1 -1
- package/dist/parser/lang-py.js +36 -17
- package/dist/parser/lang-py.js.map +1 -1
- package/dist/parser/lang-rust.d.ts.map +1 -1
- package/dist/parser/lang-rust.js +26 -19
- package/dist/parser/lang-rust.js.map +1 -1
- package/dist/parser/lang-ts.d.ts.map +1 -1
- package/dist/parser/lang-ts.js +57 -44
- package/dist/parser/lang-ts.js.map +1 -1
- package/dist/parser/lang-vue.d.ts +6 -0
- package/dist/parser/lang-vue.d.ts.map +1 -1
- package/dist/parser/lang-vue.js +44 -0
- package/dist/parser/lang-vue.js.map +1 -1
- package/dist/server/mcp.d.ts.map +1 -1
- package/dist/server/mcp.js +289 -21
- package/dist/server/mcp.js.map +1 -1
- package/dist/skills.d.ts +1 -1
- package/dist/skills.d.ts.map +1 -1
- package/dist/skills.js +204 -14
- package/dist/skills.js.map +1 -1
- package/dist/store/db.d.ts.map +1 -1
- package/dist/store/db.js +73 -59
- package/dist/store/db.js.map +1 -1
- package/dist/store/schema.sql +60 -60
- package/package.json +60 -60
package/dist/store/schema.sql
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
-- milens code intelligence database schema
|
|
2
|
-
|
|
3
|
-
CREATE TABLE IF NOT EXISTS symbols (
|
|
4
|
-
id TEXT PRIMARY KEY,
|
|
5
|
-
name TEXT NOT NULL,
|
|
6
|
-
kind TEXT NOT NULL,
|
|
7
|
-
file_path TEXT NOT NULL,
|
|
8
|
-
start_line INTEGER,
|
|
9
|
-
end_line INTEGER,
|
|
10
|
-
exported INTEGER DEFAULT 0,
|
|
11
|
-
parent_id TEXT,
|
|
12
|
-
signature TEXT
|
|
13
|
-
);
|
|
14
|
-
|
|
15
|
-
CREATE TABLE IF NOT EXISTS links (
|
|
16
|
-
id TEXT PRIMARY KEY,
|
|
17
|
-
from_id TEXT NOT NULL,
|
|
18
|
-
to_id TEXT NOT NULL,
|
|
19
|
-
type TEXT NOT NULL,
|
|
20
|
-
confidence REAL DEFAULT 1.0,
|
|
21
|
-
line_number INTEGER
|
|
22
|
-
);
|
|
23
|
-
|
|
24
|
-
CREATE TABLE IF NOT EXISTS file_hashes (
|
|
25
|
-
path TEXT PRIMARY KEY,
|
|
26
|
-
hash TEXT NOT NULL,
|
|
27
|
-
analyzed_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
28
|
-
);
|
|
29
|
-
|
|
30
|
-
CREATE TABLE IF NOT EXISTS meta (
|
|
31
|
-
key TEXT PRIMARY KEY,
|
|
32
|
-
value TEXT
|
|
33
|
-
);
|
|
34
|
-
|
|
35
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_name ON symbols(name);
|
|
36
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_file ON symbols(file_path);
|
|
37
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_kind ON symbols(kind);
|
|
38
|
-
CREATE INDEX IF NOT EXISTS idx_links_from ON links(from_id);
|
|
39
|
-
CREATE INDEX IF NOT EXISTS idx_links_to ON links(to_id);
|
|
40
|
-
CREATE INDEX IF NOT EXISTS idx_links_type ON links(type);
|
|
41
|
-
|
|
42
|
-
-- FTS5 full-text search on symbol names and paths
|
|
43
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS symbol_fts USING fts5(
|
|
44
|
-
name,
|
|
45
|
-
file_path,
|
|
46
|
-
kind,
|
|
47
|
-
content='symbols',
|
|
48
|
-
content_rowid='rowid'
|
|
49
|
-
);
|
|
50
|
-
|
|
51
|
-
-- Triggers to keep FTS in sync
|
|
52
|
-
CREATE TRIGGER IF NOT EXISTS symbols_ai AFTER INSERT ON symbols BEGIN
|
|
53
|
-
INSERT INTO symbol_fts(rowid, name, file_path, kind)
|
|
54
|
-
VALUES (new.rowid, new.name, new.file_path, new.kind);
|
|
55
|
-
END;
|
|
56
|
-
|
|
57
|
-
CREATE TRIGGER IF NOT EXISTS symbols_ad AFTER DELETE ON symbols BEGIN
|
|
58
|
-
INSERT INTO symbol_fts(symbol_fts, rowid, name, file_path, kind)
|
|
59
|
-
VALUES ('delete', old.rowid, old.name, old.file_path, old.kind);
|
|
60
|
-
END;
|
|
1
|
+
-- milens code intelligence database schema
|
|
2
|
+
|
|
3
|
+
CREATE TABLE IF NOT EXISTS symbols (
|
|
4
|
+
id TEXT PRIMARY KEY,
|
|
5
|
+
name TEXT NOT NULL,
|
|
6
|
+
kind TEXT NOT NULL,
|
|
7
|
+
file_path TEXT NOT NULL,
|
|
8
|
+
start_line INTEGER,
|
|
9
|
+
end_line INTEGER,
|
|
10
|
+
exported INTEGER DEFAULT 0,
|
|
11
|
+
parent_id TEXT,
|
|
12
|
+
signature TEXT
|
|
13
|
+
);
|
|
14
|
+
|
|
15
|
+
CREATE TABLE IF NOT EXISTS links (
|
|
16
|
+
id TEXT PRIMARY KEY,
|
|
17
|
+
from_id TEXT NOT NULL,
|
|
18
|
+
to_id TEXT NOT NULL,
|
|
19
|
+
type TEXT NOT NULL,
|
|
20
|
+
confidence REAL DEFAULT 1.0,
|
|
21
|
+
line_number INTEGER
|
|
22
|
+
);
|
|
23
|
+
|
|
24
|
+
CREATE TABLE IF NOT EXISTS file_hashes (
|
|
25
|
+
path TEXT PRIMARY KEY,
|
|
26
|
+
hash TEXT NOT NULL,
|
|
27
|
+
analyzed_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
28
|
+
);
|
|
29
|
+
|
|
30
|
+
CREATE TABLE IF NOT EXISTS meta (
|
|
31
|
+
key TEXT PRIMARY KEY,
|
|
32
|
+
value TEXT
|
|
33
|
+
);
|
|
34
|
+
|
|
35
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_name ON symbols(name);
|
|
36
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_file ON symbols(file_path);
|
|
37
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_kind ON symbols(kind);
|
|
38
|
+
CREATE INDEX IF NOT EXISTS idx_links_from ON links(from_id);
|
|
39
|
+
CREATE INDEX IF NOT EXISTS idx_links_to ON links(to_id);
|
|
40
|
+
CREATE INDEX IF NOT EXISTS idx_links_type ON links(type);
|
|
41
|
+
|
|
42
|
+
-- FTS5 full-text search on symbol names and paths
|
|
43
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS symbol_fts USING fts5(
|
|
44
|
+
name,
|
|
45
|
+
file_path,
|
|
46
|
+
kind,
|
|
47
|
+
content='symbols',
|
|
48
|
+
content_rowid='rowid'
|
|
49
|
+
);
|
|
50
|
+
|
|
51
|
+
-- Triggers to keep FTS in sync
|
|
52
|
+
CREATE TRIGGER IF NOT EXISTS symbols_ai AFTER INSERT ON symbols BEGIN
|
|
53
|
+
INSERT INTO symbol_fts(rowid, name, file_path, kind)
|
|
54
|
+
VALUES (new.rowid, new.name, new.file_path, new.kind);
|
|
55
|
+
END;
|
|
56
|
+
|
|
57
|
+
CREATE TRIGGER IF NOT EXISTS symbols_ad AFTER DELETE ON symbols BEGIN
|
|
58
|
+
INSERT INTO symbol_fts(symbol_fts, rowid, name, file_path, kind)
|
|
59
|
+
VALUES ('delete', old.rowid, old.name, old.file_path, old.kind);
|
|
60
|
+
END;
|
package/package.json
CHANGED
|
@@ -1,60 +1,60 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "milens",
|
|
3
|
-
"version": "0.
|
|
4
|
-
"description": "Lightweight Code Intelligence Platform — analyze codebases and build knowledge graphs",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"bin": {
|
|
7
|
-
"milens": "./dist/cli.js"
|
|
8
|
-
},
|
|
9
|
-
"files": [
|
|
10
|
-
"dist/",
|
|
11
|
-
"README.md",
|
|
12
|
-
"LICENSE"
|
|
13
|
-
],
|
|
14
|
-
"scripts": {
|
|
15
|
-
"build": "tsc && node -e \"require('fs').copyFileSync('src/store/schema.sql','dist/store/schema.sql')\"",
|
|
16
|
-
"dev": "tsx src/cli.ts",
|
|
17
|
-
"test": "vitest run",
|
|
18
|
-
"test:watch": "vitest",
|
|
19
|
-
"lint": "tsc --noEmit",
|
|
20
|
-
"prepublishOnly": "npm run build && npm test",
|
|
21
|
-
"self-analyze": "tsx src/cli.ts analyze -p . --force --verbose",
|
|
22
|
-
"self-serve": "tsx src/cli.ts serve -p . --http --port 3100"
|
|
23
|
-
},
|
|
24
|
-
"keywords": [
|
|
25
|
-
"code-intelligence",
|
|
26
|
-
"knowledge-graph",
|
|
27
|
-
"mcp",
|
|
28
|
-
"tree-sitter",
|
|
29
|
-
"static-analysis",
|
|
30
|
-
"codebase-indexer",
|
|
31
|
-
"ai-agent"
|
|
32
|
-
],
|
|
33
|
-
"repository": {
|
|
34
|
-
"type": "git",
|
|
35
|
-
"url": "git+https://github.com/fuze210699/milens.git"
|
|
36
|
-
},
|
|
37
|
-
"homepage": "https://github.com/fuze210699/milens#readme",
|
|
38
|
-
"bugs": {
|
|
39
|
-
"url": "https://github.com/fuze210699/milens/issues"
|
|
40
|
-
},
|
|
41
|
-
"engines": {
|
|
42
|
-
"node": ">=20.0.0"
|
|
43
|
-
},
|
|
44
|
-
"dependencies": {
|
|
45
|
-
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
46
|
-
"better-sqlite3": "^11.0.0",
|
|
47
|
-
"commander": "^12.0.0",
|
|
48
|
-
"ignore": "^7.0.0",
|
|
49
|
-
"tree-sitter-wasms": "^0.1.12",
|
|
50
|
-
"web-tree-sitter": "^0.24.7"
|
|
51
|
-
},
|
|
52
|
-
"license": "PolyForm-Noncommercial-1.0.0",
|
|
53
|
-
"devDependencies": {
|
|
54
|
-
"@types/better-sqlite3": "^7.0.0",
|
|
55
|
-
"@types/node": "^20.0.0",
|
|
56
|
-
"tsx": "^4.0.0",
|
|
57
|
-
"typescript": "^5.4.0",
|
|
58
|
-
"vitest": "^4.0.0"
|
|
59
|
-
}
|
|
60
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "milens",
|
|
3
|
+
"version": "0.3.1",
|
|
4
|
+
"description": "Lightweight Code Intelligence Platform — analyze codebases and build knowledge graphs",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"milens": "./dist/cli.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"dist/",
|
|
11
|
+
"README.md",
|
|
12
|
+
"LICENSE"
|
|
13
|
+
],
|
|
14
|
+
"scripts": {
|
|
15
|
+
"build": "tsc && node -e \"require('fs').copyFileSync('src/store/schema.sql','dist/store/schema.sql')\"",
|
|
16
|
+
"dev": "tsx src/cli.ts",
|
|
17
|
+
"test": "vitest run",
|
|
18
|
+
"test:watch": "vitest",
|
|
19
|
+
"lint": "tsc --noEmit",
|
|
20
|
+
"prepublishOnly": "npm run build && npm test",
|
|
21
|
+
"self-analyze": "tsx src/cli.ts analyze -p . --force --verbose",
|
|
22
|
+
"self-serve": "tsx src/cli.ts serve -p . --http --port 3100"
|
|
23
|
+
},
|
|
24
|
+
"keywords": [
|
|
25
|
+
"code-intelligence",
|
|
26
|
+
"knowledge-graph",
|
|
27
|
+
"mcp",
|
|
28
|
+
"tree-sitter",
|
|
29
|
+
"static-analysis",
|
|
30
|
+
"codebase-indexer",
|
|
31
|
+
"ai-agent"
|
|
32
|
+
],
|
|
33
|
+
"repository": {
|
|
34
|
+
"type": "git",
|
|
35
|
+
"url": "git+https://github.com/fuze210699/milens.git"
|
|
36
|
+
},
|
|
37
|
+
"homepage": "https://github.com/fuze210699/milens#readme",
|
|
38
|
+
"bugs": {
|
|
39
|
+
"url": "https://github.com/fuze210699/milens/issues"
|
|
40
|
+
},
|
|
41
|
+
"engines": {
|
|
42
|
+
"node": ">=20.0.0"
|
|
43
|
+
},
|
|
44
|
+
"dependencies": {
|
|
45
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
46
|
+
"better-sqlite3": "^11.0.0",
|
|
47
|
+
"commander": "^12.0.0",
|
|
48
|
+
"ignore": "^7.0.0",
|
|
49
|
+
"tree-sitter-wasms": "^0.1.12",
|
|
50
|
+
"web-tree-sitter": "^0.24.7"
|
|
51
|
+
},
|
|
52
|
+
"license": "PolyForm-Noncommercial-1.0.0",
|
|
53
|
+
"devDependencies": {
|
|
54
|
+
"@types/better-sqlite3": "^7.0.0",
|
|
55
|
+
"@types/node": "^20.0.0",
|
|
56
|
+
"tsx": "^4.0.0",
|
|
57
|
+
"typescript": "^5.4.0",
|
|
58
|
+
"vitest": "^4.0.0"
|
|
59
|
+
}
|
|
60
|
+
}
|