aodw-skill 0.7.17 → 0.7.19
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/.aodw-next/01-core/csf-thinking-framework.md +1 -1
- package/.aodw-next/02-workflow/rt-manager.md +22 -1
- package/.aodw-next/02-workflow/ui-workflow-rules.md +0 -3
- package/.aodw-next/README.md +0 -1
- package/.aodw-next/SKILL.md +5 -5
- package/.aodw-next/manifest.yaml +0 -5
- package/AODW_Adapters/README.md +24 -31
- package/README.md +53 -6
- package/bin/aodw.js +17 -186
- package/bin/commands/new.js +4 -120
- package/bin/processors/index.js +1 -35
- package/bin/update-adapters-from-template.js +1 -15
- package/package.json +4 -4
- package/.aodw-next/01-core/ai-interaction-rules-summary.md +0 -37
- package/.aodw-next/01-core/ai-knowledge-rules-summary.md +0 -25
- package/.aodw-next/01-core/git-discipline-summary.md +0 -36
- package/.aodw-next/02-workflow/rt-id-generation-rules.md +0 -24
- package/.aodw-next/02-workflow/rt-manager-summary.md +0 -15
- package/.aodw-next/02-workflow/ui-workflow-rules-summary.md +0 -39
- package/.aodw-next/03-standards/stacks/rust-axum/ai-coding-rules-backend.md +0 -134
- package/.aodw-next/06-project/README.md +0 -16
- package/.aodw-next/07-optimization/token-usage-analysis.md +0 -253
- package/.aodw-next/templates/TEMPLATE-APPLICATION-GUIDE.md +0 -110
- package/.aodw-next/templates/audit-report-template.md +0 -232
- package/.aodw-next/templates/changelog-template.md +0 -16
- package/.aodw-next/templates/checklists/coding-standards-template.md +0 -130
- package/.aodw-next/templates/csf-review-template.md +0 -201
- package/.aodw-next/templates/impact-template.md +0 -17
- package/.aodw-next/templates/invariants-template.md +0 -12
- package/.aodw-next/templates/plan-lite-template.md +0 -20
- package/.aodw-next/templates/rt-decision-template.md +0 -13
- package/.aodw-next/templates/rt-intake-template.md +0 -33
- package/.aodw-next/templates/spec-lite-template.md +0 -26
- package/.aodw-next/templates/tests-template.md +0 -13
- package/.aodw-next/templates/tools-config/README.md +0 -112
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-check.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-done.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-full.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-governance.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-impact.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-init.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-invariants.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-lite.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-module.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-new.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-open.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-pause.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-resume.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-tests.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw-upgrade.md +0 -7
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/.agent/rules/aodw.md +0 -35
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-check.md +0 -16
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-done.md +0 -16
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-full.md +0 -14
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-governance.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-impact.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-init.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-invariants.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-lite.md +0 -14
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-module.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-new.md +0 -30
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-open.md +0 -10
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-pause.md +0 -12
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-resume.md +0 -12
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-tests.md +0 -13
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw-upgrade.md +0 -12
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/antigravity/global_workflows/aodw.md +0 -18
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/claude/CLAUDE.md +0 -17
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-check.md +0 -30
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-done.md +0 -52
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-full.md +0 -31
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-governance.md +0 -34
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-impact.md +0 -25
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-init.md +0 -75
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-invariants.md +0 -29
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-lite.md +0 -23
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-module.md +0 -24
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-new.md +0 -70
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-open.md +0 -19
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-pause.md +0 -19
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-resume.md +0 -20
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-tests.md +0 -26
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw-upgrade.md +0 -27
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/aodw.md +0 -69
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/deploypromote.md +0 -20
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/commands/featuretotester.md +0 -32
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/deploy/feature_to_master_push_test_local.sh +0 -390
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/deploy/promote_only.sh +0 -210
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/deploy/rollback_prod.sh +0 -99
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/cursor/.cursor/rules/aodw.mdc +0 -26
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-check.md +0 -29
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-done.md +0 -52
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-full.md +0 -30
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-governance.md +0 -33
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-impact.md +0 -24
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-init.md +0 -75
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-invariants.md +0 -28
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-lite.md +0 -22
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-module.md +0 -23
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-new.md +0 -92
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-open.md +0 -18
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-pause.md +0 -18
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-resume.md +0 -19
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-tests.md +0 -25
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw-upgrade.md +0 -26
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/.agent/rules/aodw.md +0 -68
- package/AODW_Adapters/_backup/v3.1.0-pre-refactor/gemini/GEMINI.md +0 -17
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-analyze.md +0 -15
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-complete.md +0 -15
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-control.md +0 -14
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-decide.md +0 -16
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-governance.md +0 -7
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-implement.md +0 -16
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-init.md +0 -7
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-intake.md +0 -15
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-open.md +0 -7
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-simplified.md +0 -107
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/.agent/rules/aodw-verify.md +0 -14
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-analyze.md +0 -24
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-complete.md +0 -23
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-control.md +0 -21
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-decide.md +0 -26
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-governance.md +0 -13
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-implement.md +0 -21
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-init.md +0 -13
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-intake.md +0 -28
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-open.md +0 -10
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw-verify.md +0 -20
- package/AODW_Adapters/_backup/v4.0.0-simplified/antigravity/global_workflows/aodw.md +0 -18
- package/AODW_Adapters/gemini/.agent/rules/aodw-next.md +0 -70
- package/AODW_Adapters/gemini/GEMINI.md +0 -18
- package/AODW_Adapters/general/.github/copilot-instructions.md +0 -34
- package/AODW_Adapters/general/AGENTS.md +0 -70
- package/docs/README.md +0 -26
- package/docs/adapter-evaluation.md +0 -55
- package/docs/backend-guidelines.md +0 -335
- package/docs/frontend-guidelines.md +0 -266
- package/docs/installation-variants.md +0 -88
- package/docs/migration-guide-0.2.0.md +0 -250
- package/docs/platform-matrix.md +0 -83
|
@@ -57,7 +57,7 @@ RT-Manager 统一管理全局状态机更新。
|
|
|
57
57
|
- 重构
|
|
58
58
|
|
|
59
59
|
### 3.2 执行步骤
|
|
60
|
-
1. 生成 RT-ID
|
|
60
|
+
1. 生成 RT-ID(固定本地生成)
|
|
61
61
|
2. 创建 RT 目录结构
|
|
62
62
|
3. 执行交互式澄清(选项化提问)
|
|
63
63
|
4. 记录立项信息到 `intake.md`
|
|
@@ -126,3 +126,24 @@ AI 根据决策结果,加载对应的 Profile:
|
|
|
126
126
|
- `01-core/git-discipline.md`(分支与提交规范)
|
|
127
127
|
- `01-core/ai-interaction-rules.md`(交互规范)
|
|
128
128
|
- `01-core/ai-knowledge-rules.md`(知识同步规范)
|
|
129
|
+
|
|
130
|
+
---
|
|
131
|
+
|
|
132
|
+
## 9. RT-ID 本地生成规则
|
|
133
|
+
|
|
134
|
+
### 9.1 强制策略
|
|
135
|
+
|
|
136
|
+
AODW 使用本地生成 RT-ID,不依赖远程服务。
|
|
137
|
+
|
|
138
|
+
### 9.2 生成逻辑
|
|
139
|
+
|
|
140
|
+
1. 扫描项目 `RT/` 目录下所有 `RT-XXX` 格式的目录
|
|
141
|
+
2. 找到最大序号 `N`
|
|
142
|
+
3. 生成新 ID:`RT-{N+1}`(补零到 3 位,如 `RT-001`, `RT-002`)
|
|
143
|
+
4. 如果生成的 ID 对应目录已存在:递增序号直到找到可用 ID
|
|
144
|
+
|
|
145
|
+
### 9.3 检查清单
|
|
146
|
+
|
|
147
|
+
- [ ] 已扫描 `RT/` 目录找到最大序号
|
|
148
|
+
- [ ] 已生成 `RT-{N+1}` 格式的 ID
|
|
149
|
+
- [ ] 已确认该 ID 对应目录不存在
|
|
@@ -61,9 +61,6 @@
|
|
|
61
61
|
|
|
62
62
|
## 3. 配置模板位置
|
|
63
63
|
|
|
64
|
-
**HTML 原型模板**:
|
|
65
|
-
- 位置:`.aodw-next/templates/ui-prototype.template.html`
|
|
66
|
-
|
|
67
64
|
**前端工具配置**:
|
|
68
65
|
- ESLint 配置模板:`.aodw-next/templates/tools-config/frontend/eslint.config.template.json`
|
|
69
66
|
- TypeScript 配置模板:`.aodw-next/templates/tools-config/frontend/tsconfig.paths.template.json`
|
package/.aodw-next/README.md
CHANGED
package/.aodw-next/SKILL.md
CHANGED
|
@@ -9,17 +9,17 @@ description: AODW (AI-Orchestrated Development Workflow) — 完整的 AI 协作
|
|
|
9
9
|
|
|
10
10
|
## 加载顺序(渐进式披露,优先读 summary)
|
|
11
11
|
|
|
12
|
-
1. **总是加载**:`01-core/aodw-constitution
|
|
12
|
+
1. **总是加载**:`01-core/aodw-constitution.md`(最高行为准则)
|
|
13
13
|
2. **按场景追加**(优先读 `*-summary.md`,需要细节时再读完整版):
|
|
14
14
|
|
|
15
15
|
| 场景 | 追加加载 |
|
|
16
16
|
|------|---------|
|
|
17
|
-
| 立项 / 创建 RT | `rt-manager
|
|
18
|
-
| Spec-Lite 执行 | `spec-lite-profile
|
|
19
|
-
| Spec-Full 执行 | `spec-full-profile
|
|
17
|
+
| 立项 / 创建 RT | `rt-manager.md` + `ai-interaction-rules.md` |
|
|
18
|
+
| Spec-Lite 执行 | `spec-lite-profile.md` + `git-discipline.md` |
|
|
19
|
+
| Spec-Full 执行 | `spec-full-profile.md` + `ai-coding-rules.md`(按技术栈) |
|
|
20
20
|
| Git 操作 / 合并 | `git-discipline.md`(完整版) |
|
|
21
21
|
| 审计 | `04-auditors/aodw-requirement-auditor-rules.md` |
|
|
22
|
-
| 知识同步 | `ai-knowledge-rules
|
|
22
|
+
| 知识同步 | `ai-knowledge-rules.md` |
|
|
23
23
|
|
|
24
24
|
## 核心概念
|
|
25
25
|
|
package/.aodw-next/manifest.yaml
CHANGED
|
@@ -79,11 +79,6 @@ rules:
|
|
|
79
79
|
description: Rules for initializing and maintaining project overview file.
|
|
80
80
|
path: 01-core/ai-project-overview-rules.md
|
|
81
81
|
|
|
82
|
-
- id: rt-id-generation-rules
|
|
83
|
-
name: RT ID Generation Rules
|
|
84
|
-
description: Rules for generating and managing RT sequence IDs locally.
|
|
85
|
-
path: 02-workflow/rt-id-generation-rules.md
|
|
86
|
-
|
|
87
82
|
- id: ai-tools-init-rules
|
|
88
83
|
name: AI Tools Init Rules
|
|
89
84
|
description: Rules for initializing and verifying development tooling (ESLint, Prettier, Ruff, Black, etc.).
|
package/AODW_Adapters/README.md
CHANGED
|
@@ -6,22 +6,19 @@
|
|
|
6
6
|
|
|
7
7
|
### `cursor/`
|
|
8
8
|
**Cursor IDE 适配器**
|
|
9
|
-
- `.cursor
|
|
10
|
-
-
|
|
11
|
-
|
|
12
|
-
### `gemini/`
|
|
13
|
-
**Google Gemini 适配器**
|
|
14
|
-
- `.agent/` - Gemini Agent 配置
|
|
15
|
-
- `GEMINI.md` - Gemini 专用提示词
|
|
9
|
+
- `.cursor/rules/aodw-next.mdc` - Cursor 规则文件
|
|
10
|
+
- 使用 Cursor 的 `.mdc` (Markdown Component) 格式
|
|
11
|
+
- 支持命令索引和上下文加载指令
|
|
16
12
|
|
|
17
13
|
### `claude/`
|
|
18
14
|
**Anthropic Claude 适配器**
|
|
19
|
-
- `CLAUDE.md` - Claude
|
|
15
|
+
- `CLAUDE.md` - Claude Code 项目指令文件
|
|
16
|
+
- 适用于 claude.ai/code 和 Claude Code VSCode 扩展
|
|
20
17
|
|
|
21
|
-
### `
|
|
22
|
-
|
|
23
|
-
-
|
|
24
|
-
-
|
|
18
|
+
### `antigravity/`
|
|
19
|
+
**Google Gemini Antigravity 适配器**
|
|
20
|
+
- `.agent/rules/aodw-next.md` - Gemini Agent 规则文件
|
|
21
|
+
- 适用于 Antigravity AI 平台
|
|
25
22
|
|
|
26
23
|
## 🚀 使用方法
|
|
27
24
|
|
|
@@ -30,7 +27,7 @@
|
|
|
30
27
|
用户**不应该**直接使用此目录,而是通过 CLI 工具自动安装:
|
|
31
28
|
|
|
32
29
|
```bash
|
|
33
|
-
npx
|
|
30
|
+
npx aodw-skill init
|
|
34
31
|
```
|
|
35
32
|
|
|
36
33
|
CLI 会根据选择自动将对应的适配器文件复制到项目根目录。
|
|
@@ -55,8 +52,8 @@ CLI 会根据选择自动将对应的适配器文件复制到项目根目录。
|
|
|
55
52
|
choices: [
|
|
56
53
|
{ name: 'All (Install all adapters)', value: 'all' },
|
|
57
54
|
{ name: 'Cursor', value: 'cursor', checked: true },
|
|
58
|
-
{ name: 'Google Gemini', value: 'gemini' },
|
|
59
55
|
{ name: 'Anthropic Claude', value: 'claude' },
|
|
56
|
+
{ name: 'Google Gemini (Antigravity)', value: 'antigravity' },
|
|
60
57
|
{ name: 'VS Code', value: 'vscode' } // 新增
|
|
61
58
|
]
|
|
62
59
|
```
|
|
@@ -64,8 +61,8 @@ CLI 会根据选择自动将对应的适配器文件复制到项目根目录。
|
|
|
64
61
|
4. **更新逻辑**:
|
|
65
62
|
确保 `toolsToInstall` 逻辑包含新工具:
|
|
66
63
|
```javascript
|
|
67
|
-
const toolsToInstall = tools.includes('all')
|
|
68
|
-
? ['cursor', '
|
|
64
|
+
const toolsToInstall = tools.includes('all')
|
|
65
|
+
? ['cursor', 'claude', 'antigravity', 'vscode'] // 新增
|
|
69
66
|
: tools;
|
|
70
67
|
```
|
|
71
68
|
|
|
@@ -79,7 +76,7 @@ CLI 会根据选择自动将对应的适配器文件复制到项目根目录。
|
|
|
79
76
|
|
|
80
77
|
1. 修改对应目录下的文件
|
|
81
78
|
2. 运行 `cli/publish.sh patch` 发布补丁版本
|
|
82
|
-
3. 用户运行 `npx
|
|
79
|
+
3. 用户运行 `npx aodw-skill update` 即可获得更新
|
|
83
80
|
|
|
84
81
|
## 🏗️ 设计原则
|
|
85
82
|
|
|
@@ -89,7 +86,7 @@ CLI 会根据选择自动将对应的适配器文件复制到项目根目录。
|
|
|
89
86
|
|
|
90
87
|
❌ **错误做法** - 在适配器中重复规范内容:
|
|
91
88
|
```markdown
|
|
92
|
-
<!--
|
|
89
|
+
<!-- CLAUDE.md -->
|
|
93
90
|
# AODW 规范
|
|
94
91
|
## RT 管理
|
|
95
92
|
RT-ID 格式为 RT-XXX...(大量重复 .aodw 中的内容)
|
|
@@ -97,7 +94,7 @@ RT-ID 格式为 RT-XXX...(大量重复 .aodw 中的内容)
|
|
|
97
94
|
|
|
98
95
|
✅ **正确做法** - 引导 AI 阅读核心规范:
|
|
99
96
|
```markdown
|
|
100
|
-
<!--
|
|
97
|
+
<!-- CLAUDE.md -->
|
|
101
98
|
你正在一个 AODW 项目中工作。
|
|
102
99
|
请优先阅读 `.aodw-next/01-core/aodw-constitution.md` 了解核心规范。
|
|
103
100
|
当处理 RT 时,参考 `.aodw-next/02-workflow/rt-manager.md`。
|
|
@@ -114,25 +111,21 @@ RT-ID 格式为 RT-XXX...(大量重复 .aodw 中的内容)
|
|
|
114
111
|
AODW_Adapters/
|
|
115
112
|
├── README.md # 本文件
|
|
116
113
|
├── cursor/
|
|
117
|
-
│
|
|
118
|
-
│
|
|
119
|
-
│
|
|
120
|
-
│ │ └── commands/
|
|
121
|
-
│ └── CLAUDE_lite.md
|
|
122
|
-
├── gemini/
|
|
123
|
-
│ ├── .agent/
|
|
124
|
-
│ │ └── rules/
|
|
125
|
-
│ └── GEMINI.md
|
|
114
|
+
│ └── .cursor/
|
|
115
|
+
│ └── rules/
|
|
116
|
+
│ └── aodw-next.mdc
|
|
126
117
|
├── claude/
|
|
127
118
|
│ └── CLAUDE.md
|
|
128
|
-
└──
|
|
129
|
-
└──
|
|
119
|
+
└── antigravity/
|
|
120
|
+
└── .agent/
|
|
121
|
+
└── rules/
|
|
122
|
+
└── aodw-next.md
|
|
130
123
|
```
|
|
131
124
|
|
|
132
125
|
## 🔄 版本同步
|
|
133
126
|
|
|
134
127
|
适配器版本与 AODW 核心规范保持同步:
|
|
135
|
-
- 当 `.aodw
|
|
128
|
+
- 当 `.aodw-next/` 更新时,适配器也应相应调整
|
|
136
129
|
- CLI 的 `update` 命令会同时更新核心和适配器
|
|
137
130
|
|
|
138
131
|
## 🤝 贡献
|
package/README.md
CHANGED
|
@@ -20,7 +20,7 @@ npx aodw-skill
|
|
|
20
20
|
|
|
21
21
|
该命令会:
|
|
22
22
|
1. 安装 AODW-Next 核心规范(`.aodw-next` 目录)
|
|
23
|
-
2. 根据您的选择安装对应的 AI 工具适配器(Cursor /
|
|
23
|
+
2. 根据您的选择安装对应的 AI 工具适配器(Cursor / Claude / Antigravity)
|
|
24
24
|
3. 初始化 `RT` 目录用于管理开发任务
|
|
25
25
|
|
|
26
26
|
## 使用方法
|
|
@@ -36,8 +36,6 @@ npx aodw-skill
|
|
|
36
36
|
- ✓ Cursor (IDE with AI)
|
|
37
37
|
- ✓ Antigravity (Google Gemini)
|
|
38
38
|
- ✓ Anthropic Claude
|
|
39
|
-
- ✓ Gemini (Web / API)
|
|
40
|
-
- ✓ General Agents (OpenAI, etc.)
|
|
41
39
|
|
|
42
40
|
根据您的选择,工具会自动安装相应的配置文件。
|
|
43
41
|
|
|
@@ -93,10 +91,8 @@ your-project/
|
|
|
93
91
|
## 支持的 AI 工具
|
|
94
92
|
|
|
95
93
|
- **Cursor**: 安装 `.cursor` 目录和 `aodw-next.mdc`
|
|
96
|
-
- **Antigravity**: 安装 `.agent` 目录
|
|
94
|
+
- **Antigravity (Google Gemini)**: 安装 `.agent` 目录
|
|
97
95
|
- **Anthropic Claude**: 安装 `.claude/CLAUDE.md`
|
|
98
|
-
- **Gemini**: 安装 `.agent` 目录和 `.gemini/GEMINI.md`
|
|
99
|
-
- **General**: 安装通用适配器(如 `.github/copilot-instructions.md`)
|
|
100
96
|
|
|
101
97
|
## 更多命令
|
|
102
98
|
|
|
@@ -124,6 +120,57 @@ npx aodw-skill new
|
|
|
124
120
|
|
|
125
121
|
交互式创建新的开发任务 Ticket。
|
|
126
122
|
|
|
123
|
+
## 维护者发布流程
|
|
124
|
+
|
|
125
|
+
后续版本发布统一采用以下方式:
|
|
126
|
+
|
|
127
|
+
1. 进入目录并确认状态
|
|
128
|
+
|
|
129
|
+
```bash
|
|
130
|
+
cd cli
|
|
131
|
+
git status
|
|
132
|
+
npm whoami
|
|
133
|
+
```
|
|
134
|
+
|
|
135
|
+
2. 版本升级(会同步模板并更新版本号)
|
|
136
|
+
|
|
137
|
+
```bash
|
|
138
|
+
./publish.sh patch # 或 minor / major
|
|
139
|
+
```
|
|
140
|
+
|
|
141
|
+
3. 发布到 npm
|
|
142
|
+
|
|
143
|
+
- 先检查实际入包文件(推荐):
|
|
144
|
+
|
|
145
|
+
```bash
|
|
146
|
+
npm run pack:check
|
|
147
|
+
```
|
|
148
|
+
|
|
149
|
+
- OTP 模式(账号策略要求 2FA):
|
|
150
|
+
|
|
151
|
+
```bash
|
|
152
|
+
npm publish --otp=<6位验证码>
|
|
153
|
+
```
|
|
154
|
+
|
|
155
|
+
- Token 模式(Granular Access Token + bypass 2FA):
|
|
156
|
+
|
|
157
|
+
```bash
|
|
158
|
+
npm config set //registry.npmjs.org/:_authToken=<TOKEN>
|
|
159
|
+
npm publish
|
|
160
|
+
```
|
|
161
|
+
|
|
162
|
+
4. 发布校验
|
|
163
|
+
|
|
164
|
+
```bash
|
|
165
|
+
npm view aodw-skill version
|
|
166
|
+
npx aodw-skill@latest --help
|
|
167
|
+
```
|
|
168
|
+
|
|
169
|
+
5. 收尾
|
|
170
|
+
|
|
171
|
+
- 如 `package.json` 版本号变更未提交,请补充 commit 并 push。
|
|
172
|
+
- 若 token 曾在不安全位置暴露,请立即撤销并更换。
|
|
173
|
+
|
|
127
174
|
## 了解更多
|
|
128
175
|
|
|
129
176
|
- [AODW-Next 完整文档](#)
|
package/bin/aodw.js
CHANGED
|
@@ -7,15 +7,11 @@ import fs from 'fs-extra';
|
|
|
7
7
|
import path from 'path';
|
|
8
8
|
import { createRequire } from 'module';
|
|
9
9
|
import { fileURLToPath } from 'url';
|
|
10
|
-
import fetch from 'node-fetch';
|
|
11
10
|
|
|
12
11
|
import {
|
|
13
12
|
AntigravityProcessor,
|
|
14
13
|
CursorProcessor,
|
|
15
|
-
CopilotProcessor,
|
|
16
14
|
ClaudeProcessor,
|
|
17
|
-
GeminiProcessor,
|
|
18
|
-
GeneralProcessor,
|
|
19
15
|
BaseProcessor
|
|
20
16
|
} from './processors/index.js';
|
|
21
17
|
|
|
@@ -38,10 +34,6 @@ const PACKAGE_NAME = packageJson.name || 'aodw-skill';
|
|
|
38
34
|
process.env.AODW_CORE_DIR = CORE_DIRNAME;
|
|
39
35
|
process.env.AODW_PACKAGE_NAME = PACKAGE_NAME;
|
|
40
36
|
|
|
41
|
-
const GEMINI_RULE_FILES = [
|
|
42
|
-
'aodw-next.md'
|
|
43
|
-
];
|
|
44
|
-
|
|
45
37
|
// Define source paths (Next version - fixed paths)
|
|
46
38
|
// Support both development (from source) and production (from npm package) environments
|
|
47
39
|
function getSourcePaths() {
|
|
@@ -50,22 +42,19 @@ function getSourcePaths() {
|
|
|
50
42
|
// Try npm package paths first (production)
|
|
51
43
|
const npmCore = path.join(packageRoot, '.aodw-next');
|
|
52
44
|
const npmAdapters = path.join(packageRoot, 'AODW_Adapters');
|
|
53
|
-
|
|
54
|
-
|
|
45
|
+
|
|
55
46
|
// Try development paths (from source)
|
|
56
47
|
const devCore = path.join(packageRoot, '../templates/.aodw-next');
|
|
57
48
|
const devAdapters = path.join(packageRoot, '../templates/AODW_Adapters');
|
|
58
|
-
|
|
59
|
-
|
|
49
|
+
|
|
60
50
|
// Use npm package paths if they exist, otherwise use development paths
|
|
61
51
|
const SOURCE_CORE = fs.existsSync(npmCore) ? npmCore : devCore;
|
|
62
52
|
const SOURCE_ADAPTERS = fs.existsSync(npmAdapters) ? npmAdapters : devAdapters;
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
return { SOURCE_CORE, SOURCE_ADAPTERS, SOURCE_DOCS };
|
|
53
|
+
|
|
54
|
+
return { SOURCE_CORE, SOURCE_ADAPTERS };
|
|
66
55
|
}
|
|
67
56
|
|
|
68
|
-
const { SOURCE_CORE, SOURCE_ADAPTERS
|
|
57
|
+
const { SOURCE_CORE, SOURCE_ADAPTERS } = getSourcePaths();
|
|
69
58
|
const SOURCE_TEMPLATE = path.join(SOURCE_CORE, 'templates/aodw-kernel-loader-template.md');
|
|
70
59
|
|
|
71
60
|
program
|
|
@@ -205,30 +194,6 @@ async function returnToMenu() {
|
|
|
205
194
|
}]);
|
|
206
195
|
}
|
|
207
196
|
|
|
208
|
-
// Helper: Check server health
|
|
209
|
-
async function checkServerHealth(url) {
|
|
210
|
-
try {
|
|
211
|
-
// Ensure URL has protocol
|
|
212
|
-
if (!url.startsWith('http')) {
|
|
213
|
-
url = `http://${url}`;
|
|
214
|
-
}
|
|
215
|
-
|
|
216
|
-
// Create timeout signal
|
|
217
|
-
const controller = new AbortController();
|
|
218
|
-
const timeout = setTimeout(() => controller.abort(), 3000); // 3s timeout
|
|
219
|
-
|
|
220
|
-
const res = await fetch(`${url}/api/health`, {
|
|
221
|
-
method: 'GET',
|
|
222
|
-
signal: controller.signal
|
|
223
|
-
});
|
|
224
|
-
|
|
225
|
-
clearTimeout(timeout);
|
|
226
|
-
return res.ok;
|
|
227
|
-
} catch (error) {
|
|
228
|
-
return false;
|
|
229
|
-
}
|
|
230
|
-
}
|
|
231
|
-
|
|
232
197
|
async function runInit() {
|
|
233
198
|
console.log(chalk.blue('🚀 正在初始化 AODW-Next...'));
|
|
234
199
|
|
|
@@ -289,10 +254,11 @@ async function runInit() {
|
|
|
289
254
|
await saveProjectConfig({ project_name: projectName });
|
|
290
255
|
}
|
|
291
256
|
|
|
292
|
-
// --- Step 2:
|
|
257
|
+
// --- Step 2: Fixed Local Mode (independent only) ---
|
|
293
258
|
const userConfig = getUserConfig();
|
|
294
|
-
if (
|
|
295
|
-
await
|
|
259
|
+
if (userConfig.mode !== 'independent' || userConfig.server_url) {
|
|
260
|
+
await saveUserConfig({ mode: 'independent', server_url: '' });
|
|
261
|
+
console.log(chalk.gray('已固定为独立模式(本地生成 ID)'));
|
|
296
262
|
}
|
|
297
263
|
|
|
298
264
|
// --- Step 3: Platform Selection (Multi-select) ---
|
|
@@ -304,9 +270,7 @@ async function runInit() {
|
|
|
304
270
|
choices: [
|
|
305
271
|
{ name: 'Cursor (IDE with AI)', value: 'cursor', checked: true },
|
|
306
272
|
{ name: 'Antigravity (Google Gemini)', value: 'antigravity', checked: true },
|
|
307
|
-
{ name: 'Claude Desktop', value: 'claude', checked: false }
|
|
308
|
-
{ name: 'Gemini (Web / API)', value: 'gemini', checked: false },
|
|
309
|
-
{ name: 'General Agents (OpenAI, etc.)', value: 'general', checked: false }
|
|
273
|
+
{ name: 'Claude Desktop', value: 'claude', checked: false }
|
|
310
274
|
],
|
|
311
275
|
validate: (answer) => {
|
|
312
276
|
if (answer.length < 1) {
|
|
@@ -427,63 +391,10 @@ async function runInit() {
|
|
|
427
391
|
}
|
|
428
392
|
}
|
|
429
393
|
|
|
430
|
-
// Gemini
|
|
431
|
-
if (platforms.includes('gemini')) {
|
|
432
|
-
console.log(chalk.yellow(' • 安装 Gemini 适配器...'));
|
|
433
|
-
const targetGeminiRules = path.join(process.cwd(), '.agent/rules');
|
|
434
|
-
await fs.ensureDir(targetGeminiRules);
|
|
435
|
-
if (fs.existsSync(SOURCE_TEMPLATE)) {
|
|
436
|
-
await installFile(SOURCE_TEMPLATE, path.join(targetGeminiRules, 'aodw-next.md'), GeminiProcessor);
|
|
437
|
-
} else {
|
|
438
|
-
const sourceGeminiRules = path.join(SOURCE_ADAPTERS, 'gemini/.agent/rules');
|
|
439
|
-
if (fs.existsSync(sourceGeminiRules)) {
|
|
440
|
-
await copyRecursive(sourceGeminiRules, targetGeminiRules, AntigravityProcessor);
|
|
441
|
-
}
|
|
442
|
-
}
|
|
443
|
-
const sourceGemini = path.join(SOURCE_ADAPTERS, 'gemini/GEMINI.md');
|
|
444
|
-
if (fs.existsSync(sourceGemini)) {
|
|
445
|
-
await installFile(
|
|
446
|
-
sourceGemini,
|
|
447
|
-
path.join(process.cwd(), `.gemini/GEMINI.md`),
|
|
448
|
-
BaseProcessor
|
|
449
|
-
);
|
|
450
|
-
}
|
|
451
|
-
}
|
|
452
|
-
|
|
453
|
-
// General
|
|
454
|
-
if (platforms.includes('general')) {
|
|
455
|
-
console.log(chalk.yellow(' • 安装通用适配器 (General)...'));
|
|
456
|
-
if (fs.existsSync(SOURCE_TEMPLATE)) {
|
|
457
|
-
await installFile(
|
|
458
|
-
SOURCE_TEMPLATE,
|
|
459
|
-
path.join(process.cwd(), CORE_DIRNAME, 'AGENTS.md'),
|
|
460
|
-
GeneralProcessor
|
|
461
|
-
);
|
|
462
|
-
} else {
|
|
463
|
-
await installFile(
|
|
464
|
-
path.join(SOURCE_ADAPTERS, 'general/AGENTS.md'),
|
|
465
|
-
path.join(process.cwd(), CORE_DIRNAME, 'AGENTS.md'),
|
|
466
|
-
BaseProcessor
|
|
467
|
-
);
|
|
468
|
-
}
|
|
469
|
-
const sourceCopilot = path.join(SOURCE_ADAPTERS, 'general/.github/copilot-instructions.md');
|
|
470
|
-
if (fs.existsSync(sourceCopilot)) {
|
|
471
|
-
await installFile(
|
|
472
|
-
sourceCopilot,
|
|
473
|
-
path.join(process.cwd(), `.github/copilot-instructions.md`),
|
|
474
|
-
BaseProcessor
|
|
475
|
-
);
|
|
476
|
-
}
|
|
477
|
-
}
|
|
478
|
-
|
|
479
394
|
console.log(chalk.green('\n✅ AODW-Next 初始化成功!'));
|
|
480
395
|
console.log(chalk.white(`项目: ${projectName}`));
|
|
481
396
|
|
|
482
|
-
|
|
483
|
-
console.log(chalk.white(`模式: ${updatedConfig.mode === 'independent' ? '独立模式 (本地)' : '协作模式 (联网)'}`));
|
|
484
|
-
if (updatedConfig.mode === 'collaborative') {
|
|
485
|
-
console.log(chalk.white(`服务器: ${updatedConfig.server_url}`));
|
|
486
|
-
}
|
|
397
|
+
console.log(chalk.white('模式: 独立模式 (本地)'));
|
|
487
398
|
console.log(chalk.white(`平台: ${platforms.join(', ')}`));
|
|
488
399
|
}
|
|
489
400
|
|
|
@@ -515,22 +426,12 @@ async function runUninstall() {
|
|
|
515
426
|
// Cursor
|
|
516
427
|
await removeIfExists(path.join(cwd, '.cursor/rules', 'aodw-next.mdc'));
|
|
517
428
|
|
|
518
|
-
// Antigravity
|
|
429
|
+
// Antigravity (Gemini)
|
|
519
430
|
await removeIfExists(path.join(cwd, '.agent/rules', 'aodw-next.md'));
|
|
520
431
|
|
|
521
432
|
// Claude
|
|
522
433
|
await removeIfExists(path.join(cwd, '.claude', 'CLAUDE.md'));
|
|
523
434
|
|
|
524
|
-
// Gemini rules
|
|
525
|
-
for (const ruleFile of GEMINI_RULE_FILES) {
|
|
526
|
-
await removeIfExists(path.join(cwd, '.agent/rules', ruleFile));
|
|
527
|
-
}
|
|
528
|
-
await removeIfExists(path.join(cwd, '.gemini', 'GEMINI.md'));
|
|
529
|
-
|
|
530
|
-
// General
|
|
531
|
-
await removeIfExists(path.join(cwd, CORE_DIRNAME, 'AGENTS.md'));
|
|
532
|
-
await removeIfExists(path.join(cwd, '.github', 'copilot-instructions.md'));
|
|
533
|
-
|
|
534
435
|
console.log(chalk.green('✅ AODW-Next 已卸载。'));
|
|
535
436
|
}
|
|
536
437
|
}
|
|
@@ -670,68 +571,6 @@ async function generateToolsPrompt() {
|
|
|
670
571
|
}
|
|
671
572
|
}
|
|
672
573
|
|
|
673
|
-
async function configureMode(pause = true, forceConnect = false) {
|
|
674
|
-
const { mode } = await inquirer.prompt([{
|
|
675
|
-
type: 'list',
|
|
676
|
-
name: 'mode',
|
|
677
|
-
message: '选择开发模式:',
|
|
678
|
-
choices: [
|
|
679
|
-
{ name: '独立模式 (本地生成 ID, 适合个人开发)', value: 'independent' },
|
|
680
|
-
{ name: '协作模式 (联网获取 ID, 适合团队开发)', value: 'collaborative' }
|
|
681
|
-
]
|
|
682
|
-
}]);
|
|
683
|
-
|
|
684
|
-
let serverUrl = '';
|
|
685
|
-
if (mode === 'collaborative') {
|
|
686
|
-
while (true) {
|
|
687
|
-
const answers = await inquirer.prompt([{
|
|
688
|
-
type: 'input',
|
|
689
|
-
name: 'serverUrl',
|
|
690
|
-
message: '请输入 AODW-Next ID 服务器地址:',
|
|
691
|
-
default: 'http://114.67.218.31:2005',
|
|
692
|
-
validate: (input) => {
|
|
693
|
-
if (!input || input.trim() === '') {
|
|
694
|
-
return '协作模式必须提供服务器地址';
|
|
695
|
-
}
|
|
696
|
-
return true;
|
|
697
|
-
}
|
|
698
|
-
}]);
|
|
699
|
-
serverUrl = answers.serverUrl.trim();
|
|
700
|
-
|
|
701
|
-
process.stdout.write(chalk.gray(`正在测试连接 ${serverUrl}... `));
|
|
702
|
-
const healthy = await checkServerHealth(serverUrl);
|
|
703
|
-
|
|
704
|
-
if (healthy) {
|
|
705
|
-
console.log(chalk.green('✅ 连接成功'));
|
|
706
|
-
break;
|
|
707
|
-
} else {
|
|
708
|
-
console.log(chalk.red('❌ 连接失败'));
|
|
709
|
-
const { action } = await inquirer.prompt([{
|
|
710
|
-
type: 'list',
|
|
711
|
-
name: 'action',
|
|
712
|
-
message: '无法连接到 ID 服务器,请选择:',
|
|
713
|
-
choices: [
|
|
714
|
-
{ name: '重试输入', value: 'retry' },
|
|
715
|
-
{ name: '强制保存 (离线使用)', value: 'force' },
|
|
716
|
-
{ name: '切换回独立模式', value: 'switch_independent' }
|
|
717
|
-
]
|
|
718
|
-
}]);
|
|
719
|
-
|
|
720
|
-
if (action === 'force') break;
|
|
721
|
-
if (action === 'switch_independent') {
|
|
722
|
-
await saveUserConfig({ mode: 'independent', server_url: '' });
|
|
723
|
-
console.log(chalk.green('✅ 全局配置已保存 (切换为独立模式)'));
|
|
724
|
-
return;
|
|
725
|
-
}
|
|
726
|
-
// retry continues loop
|
|
727
|
-
}
|
|
728
|
-
}
|
|
729
|
-
}
|
|
730
|
-
|
|
731
|
-
await saveUserConfig({ mode, server_url: serverUrl });
|
|
732
|
-
console.log(chalk.green('✅ 全局配置已保存!'));
|
|
733
|
-
}
|
|
734
|
-
|
|
735
574
|
async function showMainMenu() {
|
|
736
575
|
while (true) {
|
|
737
576
|
console.clear();
|
|
@@ -739,9 +578,7 @@ async function showMainMenu() {
|
|
|
739
578
|
console.log(chalk.gray('版本: ' + packageJson.version));
|
|
740
579
|
|
|
741
580
|
// Show current config summary
|
|
742
|
-
|
|
743
|
-
const modeStr = config.mode === 'independent' ? '🏠 独立模式' : '🌐 协作模式';
|
|
744
|
-
console.log(chalk.gray(`当前配置: ${modeStr} ${config.mode === 'collaborative' ? `(${config.server_url})` : ''}`));
|
|
581
|
+
console.log(chalk.gray('当前配置: 🏠 独立模式 (本地生成 ID)'));
|
|
745
582
|
console.log('');
|
|
746
583
|
|
|
747
584
|
const { action } = await inquirer.prompt([{
|
|
@@ -752,15 +589,14 @@ async function showMainMenu() {
|
|
|
752
589
|
choices: [
|
|
753
590
|
new inquirer.Separator('--- 核心功能 ---'),
|
|
754
591
|
{ name: '1. 初始化 / 更新 AODW-Next (在本项目)', value: 'init' },
|
|
755
|
-
{ name: '2. 配置全局开发模式 (单机/联网)', value: 'config' },
|
|
756
592
|
|
|
757
593
|
new inquirer.Separator('--- 工具箱 ---'),
|
|
758
|
-
{ name: '
|
|
759
|
-
{ name: '
|
|
594
|
+
{ name: '2. 项目概览初始化 (Architecture) - 生成提示词', value: 'init-overview-prompt' },
|
|
595
|
+
{ name: '3. 工具初始化 (ESLint/Ruff/Stack) - 生成提示词', value: 'init-tools-prompt' },
|
|
760
596
|
|
|
761
597
|
new inquirer.Separator('--- 帮助与维护 ---'),
|
|
762
|
-
{ name: '
|
|
763
|
-
{ name: '
|
|
598
|
+
{ name: '4. 查看帮助 & 部署指南', value: 'help' },
|
|
599
|
+
{ name: '5. 卸载 AODW-Next', value: 'uninstall' },
|
|
764
600
|
new inquirer.Separator(),
|
|
765
601
|
{ name: '0. 退出 (Exit)', value: 'exit' }
|
|
766
602
|
]
|
|
@@ -777,10 +613,6 @@ async function showMainMenu() {
|
|
|
777
613
|
await runInit();
|
|
778
614
|
await returnToMenu();
|
|
779
615
|
break;
|
|
780
|
-
case 'config':
|
|
781
|
-
await configureMode();
|
|
782
|
-
await returnToMenu();
|
|
783
|
-
break;
|
|
784
616
|
case 'init-overview-prompt':
|
|
785
617
|
await generateOverviewPrompt();
|
|
786
618
|
await returnToMenu();
|
|
@@ -831,7 +663,6 @@ program
|
|
|
831
663
|
program
|
|
832
664
|
.command('new')
|
|
833
665
|
.description('Create a new Request Ticket (RT)')
|
|
834
|
-
.option('--server <url>', 'URL of the ID server')
|
|
835
666
|
.option('--project <name>', 'Project identifier')
|
|
836
667
|
.option('--title <string>', 'Title of the RT')
|
|
837
668
|
.action(createNewRT);
|