ai-dev-analytics 1.1.0 → 1.1.2
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/README.md +30 -12
- package/README.zh-CN.md +30 -12
- package/dist/cli/commands/build.d.ts.map +1 -1
- package/dist/cli/commands/build.js +3 -18
- package/dist/cli/commands/build.js.map +1 -1
- package/dist/cli/commands/import.d.ts.map +1 -1
- package/dist/cli/commands/import.js +45 -3
- package/dist/cli/commands/import.js.map +1 -1
- package/dist/cli/commands/init.d.ts.map +1 -1
- package/dist/cli/commands/init.js +18 -86
- package/dist/cli/commands/init.js.map +1 -1
- package/dist/cli/commands/log.d.ts.map +1 -1
- package/dist/cli/commands/log.js +4 -3
- package/dist/cli/commands/log.js.map +1 -1
- package/dist/cli/commands/memory.d.ts +2 -0
- package/dist/cli/commands/memory.d.ts.map +1 -0
- package/dist/cli/commands/memory.js +197 -0
- package/dist/cli/commands/memory.js.map +1 -0
- package/dist/cli/commands/merge.d.ts.map +1 -1
- package/dist/cli/commands/merge.js +2 -0
- package/dist/cli/commands/merge.js.map +1 -1
- package/dist/cli/commands/migrate-dir.d.ts +4 -0
- package/dist/cli/commands/migrate-dir.d.ts.map +1 -1
- package/dist/cli/commands/migrate-dir.js +50 -12
- package/dist/cli/commands/migrate-dir.js.map +1 -1
- package/dist/cli/commands/migrate-legacy.d.ts +2 -0
- package/dist/cli/commands/migrate-legacy.d.ts.map +1 -0
- package/dist/cli/commands/migrate-legacy.js +113 -0
- package/dist/cli/commands/migrate-legacy.js.map +1 -0
- package/dist/cli/commands/rules.d.ts.map +1 -1
- package/dist/cli/commands/rules.js +12 -15
- package/dist/cli/commands/rules.js.map +1 -1
- package/dist/cli/commands/skills.d.ts.map +1 -1
- package/dist/cli/commands/skills.js +7 -7
- package/dist/cli/commands/skills.js.map +1 -1
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +9 -23
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/commands/update.d.ts.map +1 -1
- package/dist/cli/commands/update.js +15 -109
- package/dist/cli/commands/update.js.map +1 -1
- package/dist/cli/index.js +12 -0
- package/dist/cli/index.js.map +1 -1
- package/dist/mcp/server.d.ts.map +1 -1
- package/dist/mcp/server.js +266 -3
- package/dist/mcp/server.js.map +1 -1
- package/dist/schemas/aida-project.d.ts +73 -0
- package/dist/schemas/aida-project.d.ts.map +1 -0
- package/dist/schemas/aida-project.js +2 -0
- package/dist/schemas/aida-project.js.map +1 -0
- package/dist/utils/ai-build.d.ts +7 -3
- package/dist/utils/ai-build.d.ts.map +1 -1
- package/dist/utils/ai-build.js +131 -24
- package/dist/utils/ai-build.js.map +1 -1
- package/dist/utils/guide.d.ts.map +1 -1
- package/dist/utils/guide.js +17 -11
- package/dist/utils/guide.js.map +1 -1
- package/dist/utils/import.d.ts +21 -8
- package/dist/utils/import.d.ts.map +1 -1
- package/dist/utils/import.js +100 -15
- package/dist/utils/import.js.map +1 -1
- package/dist/utils/memory.d.ts +49 -0
- package/dist/utils/memory.d.ts.map +1 -0
- package/dist/utils/memory.js +657 -0
- package/dist/utils/memory.js.map +1 -0
- package/dist/utils/paths.d.ts +22 -0
- package/dist/utils/paths.d.ts.map +1 -1
- package/dist/utils/paths.js +48 -1
- package/dist/utils/paths.js.map +1 -1
- package/dist/utils/prompt.d.ts +15 -0
- package/dist/utils/prompt.d.ts.map +1 -0
- package/dist/utils/prompt.js +193 -0
- package/dist/utils/prompt.js.map +1 -0
- package/dist/utils/rules.d.ts +5 -2
- package/dist/utils/rules.d.ts.map +1 -1
- package/dist/utils/rules.js +54 -48
- package/dist/utils/rules.js.map +1 -1
- package/dist/utils/skills.d.ts +6 -0
- package/dist/utils/skills.d.ts.map +1 -1
- package/dist/utils/skills.js +10 -3
- package/dist/utils/skills.js.map +1 -1
- package/package.json +1 -1
- package/src/assets/skills/audit.md +6 -6
- package/src/assets/skills/bug-fixer.md +3 -3
- package/src/assets/skills/code-generator.md +3 -3
- package/src/assets/skills/dev-flower.md +2 -2
- package/src/assets/skills/deviation-recorder.md +5 -5
- package/src/assets/skills/requirement-analyzer.md +2 -2
- package/src/assets/skills/rules-evolver.md +5 -5
- package/src/assets/skills/self-reviewer.md +3 -3
- package/src/assets/skills/task-splitter.md +2 -2
- package/src/assets/skills/workflow-orchestrator.md +9 -9
package/README.md
CHANGED
|
@@ -14,7 +14,7 @@ One line to integrate. Zero workflow changes.
|
|
|
14
14
|
{ "mcpServers": { "aida": { "command": "npx", "args": ["-y", "ai-dev-analytics", "mcp"] } } }
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
[](https://www.npmjs.com/package/ai-dev-analytics)
|
|
18
18
|
[](./LICENSE)
|
|
19
19
|
[](https://nodejs.org)
|
|
20
20
|
[](#testing)
|
|
@@ -60,7 +60,7 @@ Vibe Coding Session
|
|
|
60
60
|
"9 deviations → 56% hallucination, 44% rule-missing"
|
|
61
61
|
↓
|
|
62
62
|
Deviation patterns identified → AI suggests rules → user confirms → sedimented
|
|
63
|
-
.aida/rules
|
|
63
|
+
.aida/rules.json ← your AI's growing knowledge base
|
|
64
64
|
↓
|
|
65
65
|
AI reads rules next session → same mistakes eliminated
|
|
66
66
|
↓
|
|
@@ -86,7 +86,7 @@ Vibe Coding Session
|
|
|
86
86
|
|
|
87
87
|

|
|
88
88
|
|
|
89
|
-
The `.aida/rules
|
|
89
|
+
The `.aida/rules.json` file is your **project-specific AI knowledge base**. It grows with every run. The more you use AI, the smarter it gets at *your* project.
|
|
90
90
|
|
|
91
91
|
---
|
|
92
92
|
|
|
@@ -267,7 +267,7 @@ flowchart LR
|
|
|
267
267
|
A["Your AI Tool\nClaude Code / Cursor"] -->|Vibe Coding| B{"AIDA MCP Server\n10 Tools"}
|
|
268
268
|
B -->|Silent Data Collection| C[".aida/run.json"]
|
|
269
269
|
C -->|Visualization| D["Dashboard\nlocalhost:2375"]
|
|
270
|
-
C -->|Pattern Analysis| E[".aida/rules
|
|
270
|
+
C -->|Pattern Analysis| E[".aida/rules.json"]
|
|
271
271
|
E -->|AI Reads Rules| A
|
|
272
272
|
```
|
|
273
273
|
|
|
@@ -300,7 +300,7 @@ All data is local JSON. No database, no cloud.
|
|
|
300
300
|
| **Run** | `.aida/runs/{branch}/{dev}/run.json` | Every task, bug, deviation, review, file change |
|
|
301
301
|
| **Branch** | `.aida/runs/{branch}/requirement.json` | Aggregated stats per requirement |
|
|
302
302
|
| **Project** | `.aida/index.json` | Cross-branch overview for team leads |
|
|
303
|
-
| **Rules** | `.aida/rules
|
|
303
|
+
| **Rules** | `.aida/rules.json` | Sedimented project rules — your AI's growing knowledge base |
|
|
304
304
|
|
|
305
305
|
All structured JSON — ready for export, analysis, or feeding into reports.
|
|
306
306
|
|
|
@@ -345,12 +345,14 @@ Every step produces structured data. Every deviation can become a rule. The SOP
|
|
|
345
345
|
|
|
346
346
|
```bash
|
|
347
347
|
aida init # Interactive project setup
|
|
348
|
+
aida migrate-legacy # Upgrade legacy .aidevos project in one command
|
|
348
349
|
aida start # Create a new development run
|
|
349
350
|
aida status # Show current run status
|
|
350
351
|
aida dashboard # Launch dashboard (default port 2375)
|
|
351
352
|
aida dashboard --port 3000 # Custom port
|
|
352
353
|
aida mcp # Start MCP server (for AI tool config)
|
|
353
354
|
aida log <subcommand> # Write structured data (task, bug, review, etc.)
|
|
355
|
+
aida memory <subcommand> # Rebuild/search/show project memory
|
|
354
356
|
aida reindex # Rebuild project-level index
|
|
355
357
|
aida report # Generate performance report
|
|
356
358
|
aida rules build # Generate rule view files from registry
|
|
@@ -360,6 +362,8 @@ aida update # Update skills to latest version
|
|
|
360
362
|
aida migrate # Migrate old data to current schema
|
|
361
363
|
```
|
|
362
364
|
|
|
365
|
+
`aida init` and `aida build` now use interactive multi-select prompts in TTY terminals, with automatic fallback to comma-separated numeric input in non-interactive environments.
|
|
366
|
+
|
|
363
367
|
</details>
|
|
364
368
|
|
|
365
369
|
<details>
|
|
@@ -369,7 +373,7 @@ AIDA uses [Model Context Protocol](https://modelcontextprotocol.io/) — the sta
|
|
|
369
373
|
|
|
370
374
|
**What happens when you add the config:**
|
|
371
375
|
|
|
372
|
-
1. Your AI tool discovers AIDA's
|
|
376
|
+
1. Your AI tool discovers AIDA's data + memory tools via MCP
|
|
373
377
|
2. As the AI works, it naturally calls `aida_task_start`, `aida_log_files`, etc.
|
|
374
378
|
3. Data flows into `run.json` silently
|
|
375
379
|
4. Deviation patterns emerge → AI suggests rules → user confirms → sedimented
|
|
@@ -389,15 +393,29 @@ Rules are the compounding asset of AIDA. Here's how they work in a team setting.
|
|
|
389
393
|
|
|
390
394
|
```
|
|
391
395
|
.aida/rules.json ← source of truth, committed to git
|
|
396
|
+
.aida/skills.json ← source of truth, committed to git
|
|
397
|
+
.aida/tool-configs.json ← source of truth for imported tool configs, gitignored
|
|
398
|
+
.aida/memories/index.json ← module memory index, committed to git
|
|
399
|
+
.aida/memories/modules/*.json ← module memory source, committed to git
|
|
400
|
+
.aida/runs/*/context.json ← branch context source, committed to git
|
|
392
401
|
↓
|
|
393
|
-
aida
|
|
402
|
+
aida build
|
|
394
403
|
↓
|
|
395
|
-
.aida/
|
|
404
|
+
.aida/memories/modules/*.md + .aida/runs/*/context.md ← generated views, gitignored
|
|
405
|
+
.claude/.cursor/.codex/.lingma tool artifacts ← generated locally, gitignored
|
|
396
406
|
↓
|
|
397
|
-
AI reads
|
|
407
|
+
AI reads its own tool files next session
|
|
398
408
|
```
|
|
399
409
|
|
|
400
|
-
`aida
|
|
410
|
+
`aida build` writes generated rules, skills, memory views, and MCP config into each configured AI tool directory or AIDA view directory. Never edit generated `.md` files manually.
|
|
411
|
+
|
|
412
|
+
Legacy migration note:
|
|
413
|
+
- `aida migrate-legacy` now also migrates historical `run.json`, `requirement.json`, and `analysis.md` into `.aida/runs/*/context.json` and `.aida/memories/modules/*.json`
|
|
414
|
+
- old `report` files remain derived output; new context recovery uses the migrated JSON memory source
|
|
415
|
+
|
|
416
|
+
Runtime recovery note:
|
|
417
|
+
- before coding, search module memory and prefer the branch-level `.aida/runs/*/memory.md` pack or MCP `aida_memory_pack`
|
|
418
|
+
- if the branch context is missing or stale, rebuild it with `aida memory rebuild` or MCP `aida_context_rebuild`
|
|
401
419
|
|
|
402
420
|
### Daily workflow
|
|
403
421
|
|
|
@@ -405,7 +423,7 @@ After pulling changes that include new rules:
|
|
|
405
423
|
|
|
406
424
|
```bash
|
|
407
425
|
git pull
|
|
408
|
-
aida
|
|
426
|
+
aida build # regenerate local AI tool artifacts from updated JSON sources
|
|
409
427
|
```
|
|
410
428
|
|
|
411
429
|
### Merge conflict resolution
|
|
@@ -415,7 +433,7 @@ When two developers add rules on separate branches and merge, `rules.json` may g
|
|
|
415
433
|
```bash
|
|
416
434
|
# After git merge produces a conflict in rules.json:
|
|
417
435
|
aida rules merge # fingerprint union — no duplicates, no lost rules
|
|
418
|
-
aida
|
|
436
|
+
aida build # rebuild local AI tool artifacts
|
|
419
437
|
git add .aida/rules.json
|
|
420
438
|
git commit -m "merge: resolve rules conflict"
|
|
421
439
|
```
|
package/README.zh-CN.md
CHANGED
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
{ "mcpServers": { "aida": { "command": "npx", "args": ["-y", "ai-dev-analytics", "mcp"] } } }
|
|
15
15
|
```
|
|
16
16
|
|
|
17
|
-
[](https://www.npmjs.com/package/ai-dev-analytics)
|
|
18
18
|
[](./LICENSE)
|
|
19
19
|
[](https://nodejs.org)
|
|
20
20
|
[](#测试)
|
|
@@ -60,7 +60,7 @@ Vibe Coding 过程
|
|
|
60
60
|
"9 个偏差 → 56% 幻觉, 44% 规则缺失"
|
|
61
61
|
↓
|
|
62
62
|
发现偏差规律 → AI 建议沉淀规则 → 用户确认 → 写入规则库
|
|
63
|
-
.aida/rules
|
|
63
|
+
.aida/rules.json ← 你的 AI 知识库在成长
|
|
64
64
|
↓
|
|
65
65
|
AI 下次读取规则 → 同样的错误被消除
|
|
66
66
|
↓
|
|
@@ -86,7 +86,7 @@ Vibe Coding 过程
|
|
|
86
86
|
|
|
87
87
|

|
|
88
88
|
|
|
89
|
-
`.aida/rules
|
|
89
|
+
`.aida/rules.json` 就是你的**项目专属 AI 知识库**。用 AI 写得越多,它对*你的项目*就越懂。
|
|
90
90
|
|
|
91
91
|
---
|
|
92
92
|
|
|
@@ -267,7 +267,7 @@ flowchart LR
|
|
|
267
267
|
A["你的 AI 工具\nClaude Code / Cursor"] -->|Vibe Coding| B{"AIDA MCP Server\n10 个工具"}
|
|
268
268
|
B -->|静默采集| C[".aida/run.json"]
|
|
269
269
|
C -->|可视化| D["数据看板\nlocalhost:2375"]
|
|
270
|
-
C -->|模式分析| E[".aida/rules
|
|
270
|
+
C -->|模式分析| E[".aida/rules.json"]
|
|
271
271
|
E -->|AI 读取规则| A
|
|
272
272
|
```
|
|
273
273
|
|
|
@@ -300,7 +300,7 @@ AI 工具在工作时自动调用 MCP 工具。你不需要手动操作 ——
|
|
|
300
300
|
| **运行** | `.aida/runs/{分支}/{开发者}/run.json` | 每个任务、Bug、偏差、审查、文件变更 |
|
|
301
301
|
| **分支** | `.aida/runs/{分支}/requirement.json` | 分支聚合统计 |
|
|
302
302
|
| **项目** | `.aida/index.json` | 跨分支总览 |
|
|
303
|
-
| **规则** | `.aida/rules
|
|
303
|
+
| **规则** | `.aida/rules.json` | 沉淀的项目规则 —— AI 持续增长的知识库 |
|
|
304
304
|
|
|
305
305
|
全是结构化 JSON —— 随时可导出、可分析、可生成汇报。
|
|
306
306
|
|
|
@@ -345,12 +345,14 @@ PRD 接入 → 需求分析 → 任务拆分
|
|
|
345
345
|
|
|
346
346
|
```bash
|
|
347
347
|
aida init # 交互式初始化
|
|
348
|
+
aida migrate-legacy # 一条命令升级旧 .aidevos 项目
|
|
348
349
|
aida start # 创建新的开发运行
|
|
349
350
|
aida status # 查看当前运行状态
|
|
350
351
|
aida dashboard # 启动数据看板(默认端口 2375)
|
|
351
352
|
aida dashboard --port 3000 # 自定义端口
|
|
352
353
|
aida mcp # 启动 MCP 服务(供 AI 工具配置)
|
|
353
354
|
aida log <子命令> # 写入结构化数据(task, bug, review 等)
|
|
355
|
+
aida memory <子命令> # 重建 / 检索 / 查看项目记忆
|
|
354
356
|
aida reindex # 重建项目级索引
|
|
355
357
|
aida report # 生成效能报告
|
|
356
358
|
aida rules build # 从注册表生成规则视图文件
|
|
@@ -360,6 +362,8 @@ aida update # 更新 Skills 到最新版本
|
|
|
360
362
|
aida migrate # 迁移旧数据到当前 schema
|
|
361
363
|
```
|
|
362
364
|
|
|
365
|
+
`aida init` 和 `aida build` 现在在 TTY 终端中使用真正的多选交互;在非交互环境里会自动回退为逗号分隔数字输入,便于脚本和 CI 使用。
|
|
366
|
+
|
|
363
367
|
</details>
|
|
364
368
|
|
|
365
369
|
<details>
|
|
@@ -369,7 +373,7 @@ AIDA 使用 [Model Context Protocol](https://modelcontextprotocol.io/) —— AI
|
|
|
369
373
|
|
|
370
374
|
**加完配置后发生了什么:**
|
|
371
375
|
|
|
372
|
-
1. 你的 AI 工具通过 MCP 发现 AIDA
|
|
376
|
+
1. 你的 AI 工具通过 MCP 发现 AIDA 的数据采集和记忆恢复工具
|
|
373
377
|
2. AI 工作时自然地调用 `aida_task_start`、`aida_log_files` 等
|
|
374
378
|
3. 数据静默写入 `run.json`
|
|
375
379
|
4. 偏差模式浮现 → AI 建议沉淀规则 → 用户确认 → 写入规则库
|
|
@@ -389,15 +393,29 @@ AIDA 使用 [Model Context Protocol](https://modelcontextprotocol.io/) —— AI
|
|
|
389
393
|
|
|
390
394
|
```
|
|
391
395
|
.aida/rules.json ← 唯一数据源,提交到 git
|
|
396
|
+
.aida/skills.json ← 唯一数据源,提交到 git
|
|
397
|
+
.aida/tool-configs.json ← 导入后的工具配置源,加入 gitignore
|
|
398
|
+
.aida/memories/index.json ← 模块记忆索引,提交到 git
|
|
399
|
+
.aida/memories/modules/*.json ← 模块记忆真源,提交到 git
|
|
400
|
+
.aida/runs/*/context.json ← 分支上下文真源,提交到 git
|
|
392
401
|
↓
|
|
393
|
-
aida
|
|
402
|
+
aida build
|
|
394
403
|
↓
|
|
395
|
-
.aida/
|
|
404
|
+
.aida/memories/modules/*.md + .aida/runs/*/context.md ← 自动生成的阅读视图,加入 gitignore
|
|
405
|
+
.claude/.cursor/.codex/.lingma 下的本地工具产物 ← 自动生成,加入 gitignore
|
|
396
406
|
↓
|
|
397
|
-
AI
|
|
407
|
+
AI 下次直接读取自己工具目录中的文件
|
|
398
408
|
```
|
|
399
409
|
|
|
400
|
-
`aida
|
|
410
|
+
`aida build` 会把规则、skills、记忆阅读视图、MCP 配置分发到各 AI 工具目录或 `.aida` 视图目录。不要手动编辑这些生成的 `.md` 文件。
|
|
411
|
+
|
|
412
|
+
旧项目迁移说明:
|
|
413
|
+
- `aida migrate-legacy` 现在会把历史 `run.json`、`requirement.json`、`analysis.md` 一起迁成 `.aida/runs/*/context.json` 和 `.aida/memories/modules/*.json`
|
|
414
|
+
- 旧 `report` 文件仍然只是派生输出;新的上下文恢复依赖迁移后的 JSON 记忆真源
|
|
415
|
+
|
|
416
|
+
运行时恢复说明:
|
|
417
|
+
- 编码前先检索模块记忆,优先读取分支级 `.aida/runs/*/memory.md` 聚合视图或 MCP `aida_memory_pack`
|
|
418
|
+
- 如果分支上下文缺失或过旧,使用 `aida memory rebuild` 或 MCP `aida_context_rebuild` 重建
|
|
401
419
|
|
|
402
420
|
### 日常流程
|
|
403
421
|
|
|
@@ -405,7 +423,7 @@ AI 下次读取规则
|
|
|
405
423
|
|
|
406
424
|
```bash
|
|
407
425
|
git pull
|
|
408
|
-
aida
|
|
426
|
+
aida build # 从更新后的 JSON 数据源重新生成本地 AI 工具产物
|
|
409
427
|
```
|
|
410
428
|
|
|
411
429
|
### 合并冲突处理
|
|
@@ -415,7 +433,7 @@ aida rules build # 从更新后的 rules.json 重新生成本地规则视图
|
|
|
415
433
|
```bash
|
|
416
434
|
# git merge 在 rules.json 产生冲突后执行:
|
|
417
435
|
aida rules merge # 按 fingerprint 做并集——不丢规则,不产生重复
|
|
418
|
-
aida
|
|
436
|
+
aida build # 重建本地 AI 工具产物
|
|
419
437
|
git add .aida/rules.json
|
|
420
438
|
git commit -m "merge: resolve rules conflict"
|
|
421
439
|
```
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"build.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"AAsBA,wBAAsB,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC,CAoC3C"}
|
|
@@ -1,9 +1,8 @@
|
|
|
1
|
-
import * as readline from 'node:readline/promises';
|
|
2
|
-
import { stdin, stdout } from 'node:process';
|
|
3
1
|
import { green, red, yellow } from '../../utils/display.js';
|
|
4
2
|
import { buildProjectArtifacts, readConfiguredTools } from '../../utils/ai-build.js';
|
|
5
3
|
import { configPath } from '../../utils/paths.js';
|
|
6
4
|
import { fileExists } from '../../utils/fs.js';
|
|
5
|
+
import { promptMultiSelect } from '../../utils/prompt.js';
|
|
7
6
|
function requestedTools() {
|
|
8
7
|
return process.argv.slice(3);
|
|
9
8
|
}
|
|
@@ -11,21 +10,7 @@ async function selectTools(configured) {
|
|
|
11
10
|
const requested = requestedTools();
|
|
12
11
|
if (requested.length > 0)
|
|
13
12
|
return requested;
|
|
14
|
-
|
|
15
|
-
configured.forEach((tool, index) => {
|
|
16
|
-
console.log(` ${index + 1}) ${tool}`);
|
|
17
|
-
});
|
|
18
|
-
console.log('');
|
|
19
|
-
const rl = readline.createInterface({ input: stdin, output: stdout });
|
|
20
|
-
const answer = (await rl.question(' > ')).trim();
|
|
21
|
-
rl.close();
|
|
22
|
-
if (!answer)
|
|
23
|
-
return configured;
|
|
24
|
-
const indices = answer
|
|
25
|
-
.split(',')
|
|
26
|
-
.map((item) => parseInt(item.trim(), 10))
|
|
27
|
-
.filter((num) => num >= 1 && num <= configured.length);
|
|
28
|
-
const selected = [...new Set(indices.map((num) => configured[num - 1]))];
|
|
13
|
+
const selected = await promptMultiSelect('Select AI tools to build:', configured.map((tool) => ({ value: tool, label: tool })), { required: false });
|
|
29
14
|
return selected.length > 0 ? selected : configured;
|
|
30
15
|
}
|
|
31
16
|
export async function build() {
|
|
@@ -42,7 +27,7 @@ export async function build() {
|
|
|
42
27
|
const targets = await selectTools(configured);
|
|
43
28
|
const result = buildProjectArtifacts(projectRoot, targets);
|
|
44
29
|
console.log(green('\n ✓ AIDA build completed') +
|
|
45
|
-
`: ${result.
|
|
30
|
+
`: ${result.ruleFiles} rule files, ${result.skillFiles} skill files, ${result.commandFiles} tool command files\n`);
|
|
46
31
|
if (result.tools.length > 0) {
|
|
47
32
|
console.log(` Targets: ${result.tools.join(', ')}`);
|
|
48
33
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"AAAA,OAAO,
|
|
1
|
+
{"version":3,"file":"build.js","sourceRoot":"","sources":["../../../src/cli/commands/build.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/import.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"import.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/import.ts"],"names":[],"mappings":"AAwBA,wBAAsB,aAAa,IAAI,OAAO,CAAC,IAAI,CAAC,CA+DnD"}
|
|
@@ -1,15 +1,57 @@
|
|
|
1
1
|
import { green, red, yellow } from '../../utils/display.js';
|
|
2
2
|
import { configPath } from '../../utils/paths.js';
|
|
3
3
|
import { fileExists } from '../../utils/fs.js';
|
|
4
|
-
import { importProjectSources } from '../../utils/import.js';
|
|
4
|
+
import { importProjectSources, importProjectSourcesWithBaseline } from '../../utils/import.js';
|
|
5
5
|
import { buildProjectArtifacts } from '../../utils/ai-build.js';
|
|
6
|
+
function requestedBaseline() {
|
|
7
|
+
const value = process.argv[3]?.trim();
|
|
8
|
+
if (!value)
|
|
9
|
+
return null;
|
|
10
|
+
if (['claude-code', 'cursor', 'vscode-copilot', 'windsurf', 'lingma', 'codex'].includes(value)) {
|
|
11
|
+
return value;
|
|
12
|
+
}
|
|
13
|
+
return 'invalid';
|
|
14
|
+
}
|
|
15
|
+
function importOptions() {
|
|
16
|
+
const args = process.argv.slice(3);
|
|
17
|
+
return {
|
|
18
|
+
includeExternalSkills: !args.includes('--skip-external-skills'),
|
|
19
|
+
includeExternalMcp: !args.includes('--skip-external-mcp'),
|
|
20
|
+
};
|
|
21
|
+
}
|
|
6
22
|
export async function importSources() {
|
|
7
23
|
const projectRoot = process.cwd();
|
|
8
24
|
if (!fileExists(configPath(projectRoot))) {
|
|
9
25
|
console.log(red('\n AIDA not initialized. Run `npx aida init` first.\n'));
|
|
10
26
|
return;
|
|
11
27
|
}
|
|
12
|
-
const
|
|
28
|
+
const baseline = requestedBaseline();
|
|
29
|
+
const options = importOptions();
|
|
30
|
+
if (baseline === 'invalid') {
|
|
31
|
+
console.log(red(`\n Unknown baseline tool: ${process.argv[3]?.trim()}\n`));
|
|
32
|
+
return;
|
|
33
|
+
}
|
|
34
|
+
if (baseline) {
|
|
35
|
+
const imported = importProjectSourcesWithBaseline(projectRoot, baseline, options);
|
|
36
|
+
const result = buildProjectArtifacts(projectRoot, imported.tools);
|
|
37
|
+
console.log(green('\n ✓ Existing project sources imported') +
|
|
38
|
+
`: ${imported.rulesImported} rules, ${imported.skillsImported} skills\n`);
|
|
39
|
+
console.log(` Baseline: ${baseline}`);
|
|
40
|
+
console.log(` Baseline imported: ${imported.baseline.rulesImported} rules, ${imported.baseline.skillsImported} skills`);
|
|
41
|
+
if (imported.tools.length === 0) {
|
|
42
|
+
console.log(yellow(' No existing AI tool configs were discovered.\n'));
|
|
43
|
+
return;
|
|
44
|
+
}
|
|
45
|
+
console.log(` Tools: ${imported.tools.join(', ')}`);
|
|
46
|
+
console.log(` Tool config snapshot: ${imported.snapshotPath}`);
|
|
47
|
+
console.log(` Rebuilt: ${result.ruleFiles} rule files, ${result.skillFiles} skill files, ${result.commandFiles} tool command files`);
|
|
48
|
+
if (imported.gitignoreAdded.length > 0) {
|
|
49
|
+
console.log(` .gitignore: added ${imported.gitignoreAdded.join(', ')}`);
|
|
50
|
+
}
|
|
51
|
+
console.log('');
|
|
52
|
+
return;
|
|
53
|
+
}
|
|
54
|
+
const imported = importProjectSources(projectRoot, options);
|
|
13
55
|
const result = buildProjectArtifacts(projectRoot, imported.tools);
|
|
14
56
|
console.log(green('\n ✓ Existing project sources imported') +
|
|
15
57
|
`: ${imported.rulesImported} rules, ${imported.skillsImported} skills\n`);
|
|
@@ -19,7 +61,7 @@ export async function importSources() {
|
|
|
19
61
|
}
|
|
20
62
|
console.log(` Tools: ${imported.tools.join(', ')}`);
|
|
21
63
|
console.log(` Tool config snapshot: ${imported.snapshotPath}`);
|
|
22
|
-
console.log(` Rebuilt: ${result.
|
|
64
|
+
console.log(` Rebuilt: ${result.ruleFiles} rule files, ${result.skillFiles} skill files, ${result.commandFiles} tool command files`);
|
|
23
65
|
if (imported.gitignoreAdded.length > 0) {
|
|
24
66
|
console.log(` .gitignore: added ${imported.gitignoreAdded.join(', ')}`);
|
|
25
67
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../src/cli/commands/import.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,KAAK,EAAE,GAAG,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAC5D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAClD,OAAO,EAAE,UAAU,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"import.js","sourceRoot":"","sources":["../../../src/cli/commands/import.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"AA4GA,wBAAsB,IAAI,IAAI,OAAO,CAAC,IAAI,CAAC,CAsO1C"}
|
|
@@ -8,6 +8,7 @@ import { ensureGuide, syncGuideReference, updateGuide, updateGuideReferences } f
|
|
|
8
8
|
import { ensureBundledSkills, seedBundledSkillRegistry, getSkillContent } from '../../utils/skills.js';
|
|
9
9
|
import { buildProjectArtifacts } from '../../utils/ai-build.js';
|
|
10
10
|
import { detectImportableTools, importExistingToolConfigs, importFromTool, mergeConfiguredTools } from '../../utils/import.js';
|
|
11
|
+
import { promptMultiSelect, promptSingleSelect } from '../../utils/prompt.js';
|
|
11
12
|
const QUICK_COMMANDS = [
|
|
12
13
|
{ name: 'workflow', skill: 'workflow-orchestrator' },
|
|
13
14
|
{ name: 'audit', skill: 'audit' },
|
|
@@ -56,6 +57,9 @@ function toolLabel(tool) {
|
|
|
56
57
|
};
|
|
57
58
|
return labels[tool];
|
|
58
59
|
}
|
|
60
|
+
function toolOptions(tools) {
|
|
61
|
+
return tools.map((tool) => ({ value: tool, label: toolLabel(tool) }));
|
|
62
|
+
}
|
|
59
63
|
function copyOptionalCommands(projectRoot, tools, commands) {
|
|
60
64
|
let copied = 0;
|
|
61
65
|
if (tools.includes('claude-code')) {
|
|
@@ -107,7 +111,6 @@ export async function init() {
|
|
|
107
111
|
// ── Option 2: Repair missing files ──────────────────
|
|
108
112
|
if (choice === '2') {
|
|
109
113
|
console.log('\n Repairing...\n');
|
|
110
|
-
ensureDir(resolve(aidevos, 'rules'));
|
|
111
114
|
ensureDir(resolve(aidevos, 'runs'));
|
|
112
115
|
const repaired = buildProjectArtifacts(projectRoot, existingTools);
|
|
113
116
|
updateGuide(projectRoot);
|
|
@@ -117,33 +120,13 @@ export async function init() {
|
|
|
117
120
|
return;
|
|
118
121
|
}
|
|
119
122
|
// ── Option 1: Add a new AI tool ──────────────────────
|
|
120
|
-
const
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
console.log(' 4) Windsurf');
|
|
126
|
-
console.log(' 5) Lingma (通义灵码)\n');
|
|
127
|
-
console.log(' 6) Codex\n');
|
|
128
|
-
const toolMap2 = {
|
|
129
|
-
'1': 'claude-code', '2': 'cursor', '3': 'vscode-copilot', '4': 'windsurf', '5': 'lingma', '6': 'codex',
|
|
130
|
-
};
|
|
131
|
-
let newTools = [];
|
|
132
|
-
while (newTools.length === 0) {
|
|
133
|
-
const ans = (await rl3.question(' > ')).trim();
|
|
134
|
-
const nums = ans.split(',').map(s => s.trim());
|
|
135
|
-
for (const n of nums) {
|
|
136
|
-
if (toolMap2[n] && !existingTools.includes(toolMap2[n])) {
|
|
137
|
-
newTools.push(toolMap2[n]);
|
|
138
|
-
}
|
|
139
|
-
else if (toolMap2[n] && existingTools.includes(toolMap2[n])) {
|
|
140
|
-
console.log(yellow(` ${toolMap2[n]} is already configured, skipping.`));
|
|
141
|
-
}
|
|
142
|
-
}
|
|
143
|
-
if (newTools.length === 0)
|
|
144
|
-
console.log(yellow(' No new tools selected. Please try again.'));
|
|
123
|
+
const candidates = ['claude-code', 'cursor', 'vscode-copilot', 'windsurf', 'lingma', 'codex']
|
|
124
|
+
.filter((tool) => !existingTools.includes(tool));
|
|
125
|
+
if (candidates.length === 0) {
|
|
126
|
+
console.log(yellow('\n All supported AI tools are already configured.\n'));
|
|
127
|
+
return;
|
|
145
128
|
}
|
|
146
|
-
|
|
129
|
+
const newTools = await promptMultiSelect('Select AI tool(s) to add:', toolOptions(candidates), { required: true });
|
|
147
130
|
// Update config.json
|
|
148
131
|
existingConfig.aiTools = [...existingTools, ...newTools];
|
|
149
132
|
writeJson(resolve(aidevos, 'config.json'), existingConfig);
|
|
@@ -174,54 +157,11 @@ export async function init() {
|
|
|
174
157
|
console.log(yellow(' Please enter 1 or 2'));
|
|
175
158
|
}
|
|
176
159
|
// Step 2: Select AI tools (multi-select)
|
|
177
|
-
|
|
178
|
-
console.log(' 1) Claude Code');
|
|
179
|
-
console.log(' 2) Cursor');
|
|
180
|
-
console.log(' 3) VS Code + Copilot');
|
|
181
|
-
console.log(' 4) Windsurf');
|
|
182
|
-
console.log(' 5) Lingma (通义灵码)');
|
|
183
|
-
console.log(' 6) Codex');
|
|
184
|
-
console.log(' 7) All of the above\n');
|
|
185
|
-
const toolMap = {
|
|
186
|
-
'1': 'claude-code',
|
|
187
|
-
'2': 'cursor',
|
|
188
|
-
'3': 'vscode-copilot',
|
|
189
|
-
'4': 'windsurf',
|
|
190
|
-
'5': 'lingma',
|
|
191
|
-
'6': 'codex',
|
|
192
|
-
};
|
|
193
|
-
let selectedTools = [];
|
|
194
|
-
while (selectedTools.length === 0) {
|
|
195
|
-
const answer = (await rl.question(' > ')).trim();
|
|
196
|
-
if (answer === '7') {
|
|
197
|
-
selectedTools = ['claude-code', 'cursor', 'vscode-copilot', 'windsurf', 'lingma', 'codex'];
|
|
198
|
-
}
|
|
199
|
-
else {
|
|
200
|
-
const nums = answer.split(',').map(s => s.trim());
|
|
201
|
-
for (const n of nums) {
|
|
202
|
-
if (toolMap[n])
|
|
203
|
-
selectedTools.push(toolMap[n]);
|
|
204
|
-
}
|
|
205
|
-
}
|
|
206
|
-
if (selectedTools.length === 0)
|
|
207
|
-
console.log(yellow(' Please select at least one tool'));
|
|
208
|
-
}
|
|
160
|
+
const selectedTools = await promptMultiSelect('Which AI tools do you use?', toolOptions(['claude-code', 'cursor', 'vscode-copilot', 'windsurf', 'lingma', 'codex']), { required: true });
|
|
209
161
|
const importableTools = detectImportableTools(projectRoot, selectedTools);
|
|
210
162
|
let baselineTool = null;
|
|
211
163
|
if (importableTools.length > 0) {
|
|
212
|
-
|
|
213
|
-
console.log(' Choose one baseline tool to import into AIDA JSON (press Enter to skip):\n');
|
|
214
|
-
importableTools.forEach((tool, index) => {
|
|
215
|
-
console.log(` ${index + 1}) ${toolLabel(tool)}`);
|
|
216
|
-
});
|
|
217
|
-
console.log('');
|
|
218
|
-
const answer = (await rl.question(' > ')).trim();
|
|
219
|
-
if (answer) {
|
|
220
|
-
const idx = parseInt(answer, 10);
|
|
221
|
-
if (idx >= 1 && idx <= importableTools.length) {
|
|
222
|
-
baselineTool = importableTools[idx - 1];
|
|
223
|
-
}
|
|
224
|
-
}
|
|
164
|
+
baselineTool = await promptSingleSelect('Found existing tool rules/skills/config. Choose one baseline tool to import into AIDA JSON:', toolOptions(importableTools), { allowSkip: true });
|
|
225
165
|
}
|
|
226
166
|
// Step 3: AI model (only for full mode)
|
|
227
167
|
let aiModel = '';
|
|
@@ -233,23 +173,15 @@ export async function init() {
|
|
|
233
173
|
// Step 4: Optional tools (only for full mode)
|
|
234
174
|
const selectedOptional = [];
|
|
235
175
|
if (mode === 'full') {
|
|
236
|
-
|
|
237
|
-
|
|
238
|
-
|
|
239
|
-
|
|
240
|
-
console.log('');
|
|
241
|
-
const optionsInput = (await rl.question(' > ')).trim();
|
|
242
|
-
if (optionsInput) {
|
|
243
|
-
const indices = optionsInput.split(',').map((s) => parseInt(s.trim())).filter(n => n > 0 && n <= OPTIONAL_COMMANDS.length);
|
|
244
|
-
for (const idx of indices) {
|
|
245
|
-
selectedOptional.push(OPTIONAL_COMMANDS[idx - 1]);
|
|
246
|
-
}
|
|
176
|
+
const optionalValues = await promptMultiSelect('Optional tools:', OPTIONAL_COMMANDS.map((cmd) => ({ value: cmd.name, label: cmd.name, hint: cmd.desc })), { required: false });
|
|
177
|
+
for (const cmd of OPTIONAL_COMMANDS) {
|
|
178
|
+
if (optionalValues.includes(cmd.name))
|
|
179
|
+
selectedOptional.push(cmd);
|
|
247
180
|
}
|
|
248
181
|
}
|
|
249
182
|
rl.close();
|
|
250
183
|
console.log(`\n Initializing AIDevOS...\n`);
|
|
251
184
|
// 1. Create directory structure
|
|
252
|
-
ensureDir(resolve(aidevos, 'rules'));
|
|
253
185
|
ensureDir(resolve(aidevos, 'runs'));
|
|
254
186
|
console.log(green(' ✓ Created') + ' .aida/');
|
|
255
187
|
// 3. Seed iron rules into rules.json registry
|
|
@@ -360,8 +292,8 @@ function syncIronRules(projectRoot, tool) {
|
|
|
360
292
|
}
|
|
361
293
|
}
|
|
362
294
|
else {
|
|
363
|
-
// Cursor: write to .cursor/rules/
|
|
364
|
-
const rulesDir = resolve(projectRoot, '.cursor', 'rules', '
|
|
295
|
+
// Cursor: write to .cursor/rules/aida/iron-rules.md
|
|
296
|
+
const rulesDir = resolve(projectRoot, '.cursor', 'rules', 'aida');
|
|
365
297
|
ensureDir(rulesDir);
|
|
366
298
|
const file = resolve(rulesDir, 'iron-rules.md');
|
|
367
299
|
if (fileExists(file)) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../../src/cli/commands/init.ts"],"names":[],"mappings":"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"}
|