milens 0.7.2 → 0.7.3
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/.agents/skills/adapters/SKILL.md +59 -59
- package/.agents/skills/analyzer/SKILL.md +83 -83
- package/.agents/skills/apps/SKILL.md +65 -65
- package/.agents/skills/docs/SKILL.md +63 -63
- package/.agents/skills/milens/SKILL.md +322 -322
- package/.agents/skills/milens-security-review/SKILL.md +224 -224
- package/.agents/skills/orchestrator/SKILL.md +64 -64
- package/.agents/skills/parser/SKILL.md +86 -86
- package/.agents/skills/root/SKILL.md +89 -89
- package/.agents/skills/scripts/SKILL.md +56 -56
- package/.agents/skills/security/SKILL.md +67 -67
- package/.agents/skills/server/SKILL.md +84 -84
- package/.agents/skills/store/SKILL.md +77 -77
- package/.agents/skills/test/SKILL.md +155 -155
- package/.agents/skills/ui/SKILL.md +56 -56
- package/README.md +577 -577
- package/adapters/README.md +144 -144
- package/adapters/claude-code/.claude/mcp.json +9 -9
- package/adapters/claude-code/.claude/settings.json.hooks-snippet.json +26 -26
- package/adapters/claude-code/.claude-plugin/plugin.json +11 -11
- package/adapters/claude-code/.mcp.json +9 -9
- package/adapters/claude-code/CLAUDE.md +81 -81
- package/adapters/claude-code/hooks/hooks.json +27 -27
- package/adapters/codex/.codex/config.toml +3 -3
- package/adapters/copilot/.vscode/mcp.json +10 -10
- package/adapters/cursor/.cursor/mcp.json +9 -9
- package/adapters/cursor/.cursorrules +69 -69
- package/adapters/gemini/.gemini/context.md +81 -81
- package/adapters/gemini/.gemini/settings.json +9 -9
- package/adapters/opencode/.opencode/config.json +8 -8
- package/adapters/zed/.zed/settings.json +8 -8
- package/dist/build-info.d.ts +2 -2
- package/dist/build-info.js +2 -2
- package/dist/cli.js +482 -482
- package/dist/parser/lang-css.js +9 -9
- package/dist/parser/lang-go.js +58 -58
- package/dist/parser/lang-html.js +3 -3
- package/dist/parser/lang-java.js +37 -37
- package/dist/parser/lang-js.js +105 -105
- package/dist/parser/lang-php.js +45 -45
- package/dist/parser/lang-py.js +43 -43
- package/dist/parser/lang-ruby.js +28 -28
- package/dist/parser/lang-rust.js +48 -48
- package/dist/parser/lang-ts.js +210 -210
- package/dist/server/mcp-prompts.js +502 -502
- package/dist/server/mcp.js +56 -56
- package/dist/skills.js +296 -296
- package/dist/store/annotations.js +1 -1
- package/dist/store/db.js +224 -224
- package/dist/store/schema.sql +144 -144
- package/dist/store/vectors.js +2 -2
- package/package.json +85 -85
package/dist/store/schema.sql
CHANGED
|
@@ -1,144 +1,144 @@
|
|
|
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
|
-
role TEXT,
|
|
14
|
-
heat INTEGER DEFAULT 0
|
|
15
|
-
);
|
|
16
|
-
|
|
17
|
-
CREATE TABLE IF NOT EXISTS links (
|
|
18
|
-
id TEXT PRIMARY KEY,
|
|
19
|
-
from_id TEXT NOT NULL,
|
|
20
|
-
to_id TEXT NOT NULL,
|
|
21
|
-
type TEXT NOT NULL,
|
|
22
|
-
confidence REAL DEFAULT 1.0,
|
|
23
|
-
line_number INTEGER
|
|
24
|
-
);
|
|
25
|
-
|
|
26
|
-
CREATE TABLE IF NOT EXISTS file_hashes (
|
|
27
|
-
path TEXT PRIMARY KEY,
|
|
28
|
-
hash TEXT NOT NULL,
|
|
29
|
-
analyzed_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
30
|
-
zone TEXT
|
|
31
|
-
);
|
|
32
|
-
|
|
33
|
-
CREATE TABLE IF NOT EXISTS repo_meta (
|
|
34
|
-
key TEXT PRIMARY KEY,
|
|
35
|
-
value TEXT NOT NULL
|
|
36
|
-
);
|
|
37
|
-
|
|
38
|
-
CREATE TABLE IF NOT EXISTS meta (
|
|
39
|
-
key TEXT PRIMARY KEY,
|
|
40
|
-
value TEXT
|
|
41
|
-
);
|
|
42
|
-
|
|
43
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_name ON symbols(name);
|
|
44
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_file ON symbols(file_path);
|
|
45
|
-
CREATE INDEX IF NOT EXISTS idx_symbols_kind ON symbols(kind);
|
|
46
|
-
CREATE INDEX IF NOT EXISTS idx_links_from ON links(from_id);
|
|
47
|
-
CREATE INDEX IF NOT EXISTS idx_links_to ON links(to_id);
|
|
48
|
-
CREATE INDEX IF NOT EXISTS idx_links_type ON links(type);
|
|
49
|
-
|
|
50
|
-
-- FTS5 full-text search on symbol names and paths
|
|
51
|
-
CREATE VIRTUAL TABLE IF NOT EXISTS symbol_fts USING fts5(
|
|
52
|
-
name,
|
|
53
|
-
file_path,
|
|
54
|
-
kind,
|
|
55
|
-
content='symbols',
|
|
56
|
-
content_rowid='rowid'
|
|
57
|
-
);
|
|
58
|
-
|
|
59
|
-
-- Triggers to keep FTS in sync
|
|
60
|
-
CREATE TRIGGER IF NOT EXISTS symbols_ai AFTER INSERT ON symbols BEGIN
|
|
61
|
-
INSERT INTO symbol_fts(rowid, name, file_path, kind)
|
|
62
|
-
VALUES (new.rowid, new.name, new.file_path, new.kind);
|
|
63
|
-
END;
|
|
64
|
-
|
|
65
|
-
CREATE TRIGGER IF NOT EXISTS symbols_ad AFTER DELETE ON symbols BEGIN
|
|
66
|
-
INSERT INTO symbol_fts(symbol_fts, rowid, name, file_path, kind)
|
|
67
|
-
VALUES ('delete', old.rowid, old.name, old.file_path, old.kind);
|
|
68
|
-
END;
|
|
69
|
-
|
|
70
|
-
-- Tool usage tracking for dashboard analytics
|
|
71
|
-
CREATE TABLE IF NOT EXISTS tool_usage (
|
|
72
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
73
|
-
tool TEXT NOT NULL,
|
|
74
|
-
called_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
75
|
-
duration_ms INTEGER DEFAULT 0,
|
|
76
|
-
tokens_in INTEGER DEFAULT 0,
|
|
77
|
-
tokens_out INTEGER DEFAULT 0,
|
|
78
|
-
tokens_saved INTEGER DEFAULT 0,
|
|
79
|
-
repo TEXT
|
|
80
|
-
);
|
|
81
|
-
|
|
82
|
-
-- Agent annotations: observations about symbols stored by agents
|
|
83
|
-
CREATE TABLE IF NOT EXISTS annotations (
|
|
84
|
-
id TEXT PRIMARY KEY,
|
|
85
|
-
symbol TEXT NOT NULL,
|
|
86
|
-
key TEXT NOT NULL,
|
|
87
|
-
value TEXT NOT NULL,
|
|
88
|
-
agent TEXT,
|
|
89
|
-
session_id TEXT,
|
|
90
|
-
confidence REAL DEFAULT 0.5,
|
|
91
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
92
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
93
|
-
expires_at TEXT,
|
|
94
|
-
symbol_hash TEXT
|
|
95
|
-
);
|
|
96
|
-
|
|
97
|
-
CREATE INDEX IF NOT EXISTS idx_annotations_symbol ON annotations(symbol, key);
|
|
98
|
-
CREATE INDEX IF NOT EXISTS idx_annotations_session ON annotations(session_id);
|
|
99
|
-
|
|
100
|
-
-- Agent sessions: multi-agent session management
|
|
101
|
-
CREATE TABLE IF NOT EXISTS sessions (
|
|
102
|
-
id TEXT PRIMARY KEY,
|
|
103
|
-
agent TEXT NOT NULL,
|
|
104
|
-
status TEXT NOT NULL DEFAULT 'active',
|
|
105
|
-
started_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
106
|
-
ended_at TEXT,
|
|
107
|
-
context TEXT,
|
|
108
|
-
tool_calls_count INTEGER DEFAULT 0,
|
|
109
|
-
annotations_count INTEGER DEFAULT 0
|
|
110
|
-
);
|
|
111
|
-
|
|
112
|
-
-- Vector embeddings for semantic code search
|
|
113
|
-
CREATE TABLE IF NOT EXISTS symbol_embeddings (
|
|
114
|
-
symbol_id TEXT PRIMARY KEY,
|
|
115
|
-
embedding BLOB NOT NULL,
|
|
116
|
-
model TEXT NOT NULL,
|
|
117
|
-
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
118
|
-
);
|
|
119
|
-
|
|
120
|
-
CREATE INDEX IF NOT EXISTS idx_tool_usage_tool ON tool_usage(tool);
|
|
121
|
-
CREATE INDEX IF NOT EXISTS idx_tool_usage_at ON tool_usage(called_at);
|
|
122
|
-
|
|
123
|
-
-- Evolution log: track pattern promotion/demotion/archive
|
|
124
|
-
CREATE TABLE IF NOT EXISTS evolution_log (
|
|
125
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
126
|
-
annotation_id INTEGER NOT NULL,
|
|
127
|
-
event TEXT NOT NULL,
|
|
128
|
-
old_value TEXT,
|
|
129
|
-
new_value TEXT,
|
|
130
|
-
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
131
|
-
);
|
|
132
|
-
|
|
133
|
-
CREATE INDEX IF NOT EXISTS idx_evolution_annotation ON evolution_log(annotation_id);
|
|
134
|
-
|
|
135
|
-
-- Metric history: snapshots for trend tracking over time
|
|
136
|
-
CREATE TABLE IF NOT EXISTS metric_history (
|
|
137
|
-
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
138
|
-
metric_name TEXT NOT NULL,
|
|
139
|
-
value REAL NOT NULL,
|
|
140
|
-
recorded_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
141
|
-
);
|
|
142
|
-
|
|
143
|
-
CREATE INDEX IF NOT EXISTS idx_metric_name ON metric_history(metric_name);
|
|
144
|
-
CREATE INDEX IF NOT EXISTS idx_metric_at ON metric_history(recorded_at);
|
|
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
|
+
role TEXT,
|
|
14
|
+
heat INTEGER DEFAULT 0
|
|
15
|
+
);
|
|
16
|
+
|
|
17
|
+
CREATE TABLE IF NOT EXISTS links (
|
|
18
|
+
id TEXT PRIMARY KEY,
|
|
19
|
+
from_id TEXT NOT NULL,
|
|
20
|
+
to_id TEXT NOT NULL,
|
|
21
|
+
type TEXT NOT NULL,
|
|
22
|
+
confidence REAL DEFAULT 1.0,
|
|
23
|
+
line_number INTEGER
|
|
24
|
+
);
|
|
25
|
+
|
|
26
|
+
CREATE TABLE IF NOT EXISTS file_hashes (
|
|
27
|
+
path TEXT PRIMARY KEY,
|
|
28
|
+
hash TEXT NOT NULL,
|
|
29
|
+
analyzed_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
30
|
+
zone TEXT
|
|
31
|
+
);
|
|
32
|
+
|
|
33
|
+
CREATE TABLE IF NOT EXISTS repo_meta (
|
|
34
|
+
key TEXT PRIMARY KEY,
|
|
35
|
+
value TEXT NOT NULL
|
|
36
|
+
);
|
|
37
|
+
|
|
38
|
+
CREATE TABLE IF NOT EXISTS meta (
|
|
39
|
+
key TEXT PRIMARY KEY,
|
|
40
|
+
value TEXT
|
|
41
|
+
);
|
|
42
|
+
|
|
43
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_name ON symbols(name);
|
|
44
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_file ON symbols(file_path);
|
|
45
|
+
CREATE INDEX IF NOT EXISTS idx_symbols_kind ON symbols(kind);
|
|
46
|
+
CREATE INDEX IF NOT EXISTS idx_links_from ON links(from_id);
|
|
47
|
+
CREATE INDEX IF NOT EXISTS idx_links_to ON links(to_id);
|
|
48
|
+
CREATE INDEX IF NOT EXISTS idx_links_type ON links(type);
|
|
49
|
+
|
|
50
|
+
-- FTS5 full-text search on symbol names and paths
|
|
51
|
+
CREATE VIRTUAL TABLE IF NOT EXISTS symbol_fts USING fts5(
|
|
52
|
+
name,
|
|
53
|
+
file_path,
|
|
54
|
+
kind,
|
|
55
|
+
content='symbols',
|
|
56
|
+
content_rowid='rowid'
|
|
57
|
+
);
|
|
58
|
+
|
|
59
|
+
-- Triggers to keep FTS in sync
|
|
60
|
+
CREATE TRIGGER IF NOT EXISTS symbols_ai AFTER INSERT ON symbols BEGIN
|
|
61
|
+
INSERT INTO symbol_fts(rowid, name, file_path, kind)
|
|
62
|
+
VALUES (new.rowid, new.name, new.file_path, new.kind);
|
|
63
|
+
END;
|
|
64
|
+
|
|
65
|
+
CREATE TRIGGER IF NOT EXISTS symbols_ad AFTER DELETE ON symbols BEGIN
|
|
66
|
+
INSERT INTO symbol_fts(symbol_fts, rowid, name, file_path, kind)
|
|
67
|
+
VALUES ('delete', old.rowid, old.name, old.file_path, old.kind);
|
|
68
|
+
END;
|
|
69
|
+
|
|
70
|
+
-- Tool usage tracking for dashboard analytics
|
|
71
|
+
CREATE TABLE IF NOT EXISTS tool_usage (
|
|
72
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
73
|
+
tool TEXT NOT NULL,
|
|
74
|
+
called_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
75
|
+
duration_ms INTEGER DEFAULT 0,
|
|
76
|
+
tokens_in INTEGER DEFAULT 0,
|
|
77
|
+
tokens_out INTEGER DEFAULT 0,
|
|
78
|
+
tokens_saved INTEGER DEFAULT 0,
|
|
79
|
+
repo TEXT
|
|
80
|
+
);
|
|
81
|
+
|
|
82
|
+
-- Agent annotations: observations about symbols stored by agents
|
|
83
|
+
CREATE TABLE IF NOT EXISTS annotations (
|
|
84
|
+
id TEXT PRIMARY KEY,
|
|
85
|
+
symbol TEXT NOT NULL,
|
|
86
|
+
key TEXT NOT NULL,
|
|
87
|
+
value TEXT NOT NULL,
|
|
88
|
+
agent TEXT,
|
|
89
|
+
session_id TEXT,
|
|
90
|
+
confidence REAL DEFAULT 0.5,
|
|
91
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
92
|
+
updated_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
93
|
+
expires_at TEXT,
|
|
94
|
+
symbol_hash TEXT
|
|
95
|
+
);
|
|
96
|
+
|
|
97
|
+
CREATE INDEX IF NOT EXISTS idx_annotations_symbol ON annotations(symbol, key);
|
|
98
|
+
CREATE INDEX IF NOT EXISTS idx_annotations_session ON annotations(session_id);
|
|
99
|
+
|
|
100
|
+
-- Agent sessions: multi-agent session management
|
|
101
|
+
CREATE TABLE IF NOT EXISTS sessions (
|
|
102
|
+
id TEXT PRIMARY KEY,
|
|
103
|
+
agent TEXT NOT NULL,
|
|
104
|
+
status TEXT NOT NULL DEFAULT 'active',
|
|
105
|
+
started_at TEXT NOT NULL DEFAULT (datetime('now')),
|
|
106
|
+
ended_at TEXT,
|
|
107
|
+
context TEXT,
|
|
108
|
+
tool_calls_count INTEGER DEFAULT 0,
|
|
109
|
+
annotations_count INTEGER DEFAULT 0
|
|
110
|
+
);
|
|
111
|
+
|
|
112
|
+
-- Vector embeddings for semantic code search
|
|
113
|
+
CREATE TABLE IF NOT EXISTS symbol_embeddings (
|
|
114
|
+
symbol_id TEXT PRIMARY KEY,
|
|
115
|
+
embedding BLOB NOT NULL,
|
|
116
|
+
model TEXT NOT NULL,
|
|
117
|
+
updated_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
118
|
+
);
|
|
119
|
+
|
|
120
|
+
CREATE INDEX IF NOT EXISTS idx_tool_usage_tool ON tool_usage(tool);
|
|
121
|
+
CREATE INDEX IF NOT EXISTS idx_tool_usage_at ON tool_usage(called_at);
|
|
122
|
+
|
|
123
|
+
-- Evolution log: track pattern promotion/demotion/archive
|
|
124
|
+
CREATE TABLE IF NOT EXISTS evolution_log (
|
|
125
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
126
|
+
annotation_id INTEGER NOT NULL,
|
|
127
|
+
event TEXT NOT NULL,
|
|
128
|
+
old_value TEXT,
|
|
129
|
+
new_value TEXT,
|
|
130
|
+
created_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
131
|
+
);
|
|
132
|
+
|
|
133
|
+
CREATE INDEX IF NOT EXISTS idx_evolution_annotation ON evolution_log(annotation_id);
|
|
134
|
+
|
|
135
|
+
-- Metric history: snapshots for trend tracking over time
|
|
136
|
+
CREATE TABLE IF NOT EXISTS metric_history (
|
|
137
|
+
id INTEGER PRIMARY KEY AUTOINCREMENT,
|
|
138
|
+
metric_name TEXT NOT NULL,
|
|
139
|
+
value REAL NOT NULL,
|
|
140
|
+
recorded_at TEXT NOT NULL DEFAULT (datetime('now'))
|
|
141
|
+
);
|
|
142
|
+
|
|
143
|
+
CREATE INDEX IF NOT EXISTS idx_metric_name ON metric_history(metric_name);
|
|
144
|
+
CREATE INDEX IF NOT EXISTS idx_metric_at ON metric_history(recorded_at);
|
package/dist/store/vectors.js
CHANGED
|
@@ -138,8 +138,8 @@ export class EmbeddingStore {
|
|
|
138
138
|
this.db = db;
|
|
139
139
|
this.dimensions = dimensions;
|
|
140
140
|
this.stmts = {
|
|
141
|
-
upsert: db.prepare(`INSERT INTO symbol_embeddings (symbol_id, embedding, model, updated_at)
|
|
142
|
-
VALUES (?, ?, ?, datetime('now'))
|
|
141
|
+
upsert: db.prepare(`INSERT INTO symbol_embeddings (symbol_id, embedding, model, updated_at)
|
|
142
|
+
VALUES (?, ?, ?, datetime('now'))
|
|
143
143
|
ON CONFLICT(symbol_id) DO UPDATE SET embedding = excluded.embedding, model = excluded.model, updated_at = datetime('now')`),
|
|
144
144
|
get: db.prepare('SELECT embedding FROM symbol_embeddings WHERE symbol_id = ?'),
|
|
145
145
|
getAll: db.prepare('SELECT symbol_id, embedding FROM symbol_embeddings'),
|
package/package.json
CHANGED
|
@@ -1,85 +1,85 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "milens",
|
|
3
|
-
"version": "0.7.
|
|
4
|
-
"description": "AI-DOS: Code Intelligence Platform — knowledge graphs, security scanning, and closed-loop AI development. 43 MCP tools, 6 sub-agent prompts, 190 security rules, 7 CLI workflows.",
|
|
5
|
-
"type": "module",
|
|
6
|
-
"bin": {
|
|
7
|
-
"milens": "./dist/cli.js"
|
|
8
|
-
},
|
|
9
|
-
"files": [
|
|
10
|
-
"dist/",
|
|
11
|
-
"README.md",
|
|
12
|
-
"LICENSE",
|
|
13
|
-
".agents/skills/",
|
|
14
|
-
"adapters/"
|
|
15
|
-
],
|
|
16
|
-
"scripts": {
|
|
17
|
-
"build": "node scripts/gen-build-info.mjs && tsc && node -e \"require('fs').copyFileSync('src/store/schema.sql','dist/store/schema.sql')\"",
|
|
18
|
-
"dev": "tsx src/cli.ts",
|
|
19
|
-
"pretest": "node scripts/gen-build-info.mjs",
|
|
20
|
-
"test": "vitest run",
|
|
21
|
-
"test:watch": "vitest",
|
|
22
|
-
"prelint": "node scripts/gen-build-info.mjs",
|
|
23
|
-
"lint": "tsc --noEmit && node scripts/check-console.mjs",
|
|
24
|
-
"version": "node scripts/sync-version.mjs",
|
|
25
|
-
"prepublishOnly": "npm run build && npm test && node scripts/check-console.mjs",
|
|
26
|
-
"build:standalone": "node scripts/build-standalone.mjs",
|
|
27
|
-
"build:standalone:all": "node scripts/build-standalone.mjs --target all",
|
|
28
|
-
"self-analyze": "tsx src/cli.ts analyze -p . --force --verbose --skills",
|
|
29
|
-
"self-serve": "tsx src/cli.ts serve -p . --http --port 3100"
|
|
30
|
-
},
|
|
31
|
-
"keywords": [
|
|
32
|
-
"code-intelligence",
|
|
33
|
-
"knowledge-graph",
|
|
34
|
-
"mcp",
|
|
35
|
-
"tree-sitter",
|
|
36
|
-
"static-analysis",
|
|
37
|
-
"codebase-indexer",
|
|
38
|
-
"ai-agent",
|
|
39
|
-
"security-scan",
|
|
40
|
-
"vibe-code",
|
|
41
|
-
"closed-loop",
|
|
42
|
-
"ai-dos",
|
|
43
|
-
"model-context-protocol",
|
|
44
|
-
"sub-agent",
|
|
45
|
-
"code-review",
|
|
46
|
-
"impact-analysis"
|
|
47
|
-
],
|
|
48
|
-
"repository": {
|
|
49
|
-
"type": "git",
|
|
50
|
-
"url": "git+https://github.com/fuze210699/milens.git"
|
|
51
|
-
},
|
|
52
|
-
"homepage": "https://github.com/fuze210699/milens#readme",
|
|
53
|
-
"bugs": {
|
|
54
|
-
"url": "https://github.com/fuze210699/milens/issues"
|
|
55
|
-
},
|
|
56
|
-
"funding": {
|
|
57
|
-
"type": "github",
|
|
58
|
-
"url": "https://github.com/sponsors/fuze210699"
|
|
59
|
-
},
|
|
60
|
-
"engines": {
|
|
61
|
-
"node": ">=20.0.0"
|
|
62
|
-
},
|
|
63
|
-
"dependencies": {
|
|
64
|
-
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
65
|
-
"better-sqlite3": "^11.0.0",
|
|
66
|
-
"commander": "^12.0.0",
|
|
67
|
-
"ignore": "^7.0.0",
|
|
68
|
-
"tree-sitter-wasms": "^0.1.12",
|
|
69
|
-
"web-tree-sitter": "^0.24.7"
|
|
70
|
-
},
|
|
71
|
-
"optionalDependencies": {
|
|
72
|
-
"@xenova/transformers": "^2.17.2"
|
|
73
|
-
},
|
|
74
|
-
"license": "MIT",
|
|
75
|
-
"devDependencies": {
|
|
76
|
-
"@types/better-sqlite3": "^7.0.0",
|
|
77
|
-
"@types/node": "^20.0.0",
|
|
78
|
-
"@vitest/coverage-v8": "^4.1.7",
|
|
79
|
-
"@yao-pkg/pkg": "^6.14.2",
|
|
80
|
-
"esbuild": "^0.25.12",
|
|
81
|
-
"tsx": "^4.0.0",
|
|
82
|
-
"typescript": "^5.4.0",
|
|
83
|
-
"vitest": "^4.0.0"
|
|
84
|
-
}
|
|
85
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "milens",
|
|
3
|
+
"version": "0.7.3",
|
|
4
|
+
"description": "AI-DOS: Code Intelligence Platform — knowledge graphs, security scanning, and closed-loop AI development. 43 MCP tools, 6 sub-agent prompts, 190 security rules, 7 CLI workflows.",
|
|
5
|
+
"type": "module",
|
|
6
|
+
"bin": {
|
|
7
|
+
"milens": "./dist/cli.js"
|
|
8
|
+
},
|
|
9
|
+
"files": [
|
|
10
|
+
"dist/",
|
|
11
|
+
"README.md",
|
|
12
|
+
"LICENSE",
|
|
13
|
+
".agents/skills/",
|
|
14
|
+
"adapters/"
|
|
15
|
+
],
|
|
16
|
+
"scripts": {
|
|
17
|
+
"build": "node scripts/gen-build-info.mjs && tsc && node -e \"require('fs').copyFileSync('src/store/schema.sql','dist/store/schema.sql')\"",
|
|
18
|
+
"dev": "tsx src/cli.ts",
|
|
19
|
+
"pretest": "node scripts/gen-build-info.mjs",
|
|
20
|
+
"test": "vitest run",
|
|
21
|
+
"test:watch": "vitest",
|
|
22
|
+
"prelint": "node scripts/gen-build-info.mjs",
|
|
23
|
+
"lint": "tsc --noEmit && node scripts/check-console.mjs",
|
|
24
|
+
"version": "node scripts/sync-version.mjs",
|
|
25
|
+
"prepublishOnly": "npm run build && npm test && node scripts/check-console.mjs",
|
|
26
|
+
"build:standalone": "node scripts/build-standalone.mjs",
|
|
27
|
+
"build:standalone:all": "node scripts/build-standalone.mjs --target all",
|
|
28
|
+
"self-analyze": "tsx src/cli.ts analyze -p . --force --verbose --skills",
|
|
29
|
+
"self-serve": "tsx src/cli.ts serve -p . --http --port 3100"
|
|
30
|
+
},
|
|
31
|
+
"keywords": [
|
|
32
|
+
"code-intelligence",
|
|
33
|
+
"knowledge-graph",
|
|
34
|
+
"mcp",
|
|
35
|
+
"tree-sitter",
|
|
36
|
+
"static-analysis",
|
|
37
|
+
"codebase-indexer",
|
|
38
|
+
"ai-agent",
|
|
39
|
+
"security-scan",
|
|
40
|
+
"vibe-code",
|
|
41
|
+
"closed-loop",
|
|
42
|
+
"ai-dos",
|
|
43
|
+
"model-context-protocol",
|
|
44
|
+
"sub-agent",
|
|
45
|
+
"code-review",
|
|
46
|
+
"impact-analysis"
|
|
47
|
+
],
|
|
48
|
+
"repository": {
|
|
49
|
+
"type": "git",
|
|
50
|
+
"url": "git+https://github.com/fuze210699/milens.git"
|
|
51
|
+
},
|
|
52
|
+
"homepage": "https://github.com/fuze210699/milens#readme",
|
|
53
|
+
"bugs": {
|
|
54
|
+
"url": "https://github.com/fuze210699/milens/issues"
|
|
55
|
+
},
|
|
56
|
+
"funding": {
|
|
57
|
+
"type": "github",
|
|
58
|
+
"url": "https://github.com/sponsors/fuze210699"
|
|
59
|
+
},
|
|
60
|
+
"engines": {
|
|
61
|
+
"node": ">=20.0.0"
|
|
62
|
+
},
|
|
63
|
+
"dependencies": {
|
|
64
|
+
"@modelcontextprotocol/sdk": "^1.29.0",
|
|
65
|
+
"better-sqlite3": "^11.0.0",
|
|
66
|
+
"commander": "^12.0.0",
|
|
67
|
+
"ignore": "^7.0.0",
|
|
68
|
+
"tree-sitter-wasms": "^0.1.12",
|
|
69
|
+
"web-tree-sitter": "^0.24.7"
|
|
70
|
+
},
|
|
71
|
+
"optionalDependencies": {
|
|
72
|
+
"@xenova/transformers": "^2.17.2"
|
|
73
|
+
},
|
|
74
|
+
"license": "MIT",
|
|
75
|
+
"devDependencies": {
|
|
76
|
+
"@types/better-sqlite3": "^7.0.0",
|
|
77
|
+
"@types/node": "^20.0.0",
|
|
78
|
+
"@vitest/coverage-v8": "^4.1.7",
|
|
79
|
+
"@yao-pkg/pkg": "^6.14.2",
|
|
80
|
+
"esbuild": "^0.25.12",
|
|
81
|
+
"tsx": "^4.0.0",
|
|
82
|
+
"typescript": "^5.4.0",
|
|
83
|
+
"vitest": "^4.0.0"
|
|
84
|
+
}
|
|
85
|
+
}
|