create-harness-vibe-coding 0.7.2 → 0.8.0
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-CN.md +91 -155
- package/README.md +200 -177
- package/bin/create-harness-vibe-coding.js +2 -2
- package/package.json +45 -43
- package/src/generator.js +115 -77
- package/src/index.js +159 -49
- package/src/prompts.js +95 -27
- package/templates/common/.claude/agents/architect-manager.md +45 -45
- package/templates/common/.claude/agents/context-master.md +77 -77
- package/templates/common/.claude/agents/debugger.md +41 -41
- package/templates/common/.claude/agents/explore-manager.md +41 -41
- package/templates/common/.claude/agents/implement-manager.md +49 -49
- package/templates/common/.claude/agents/implementer.md +40 -40
- package/templates/common/.claude/agents/memory-master.md +66 -66
- package/templates/common/.claude/agents/planner.md +34 -34
- package/templates/common/.claude/agents/researcher.md +41 -41
- package/templates/common/.claude/agents/review-manager.md +56 -56
- package/templates/common/.claude/agents/test-writer.md +38 -38
- package/templates/common/.claude/agents/verifier.md +32 -32
- package/templates/common/.claude/rules/ecc/common.md +45 -45
- package/templates/common/.claude/settings.json +68 -68
- package/templates/common/.claude/skills/subagent-orchestrator/SKILL.md +36 -31
- package/templates/common/.claude/skills/wf/SKILL.md +36 -0
- package/templates/common/.claude/skills/wf-learn/SKILL.md +13 -28
- package/templates/common/.claude/skills/wf-max/SKILL.md +24 -88
- package/templates/common/.claude/skills/wf-readme/SKILL.md +49 -49
- package/templates/common/.claude/skills/wf-remove/SKILL.md +17 -38
- package/templates/common/.claude/skills/wf-review/SKILL.md +19 -69
- package/templates/common/.claude/skills/wf-update/SKILL.md +19 -61
- package/templates/common/.codex/config.toml +2 -2
- package/templates/common/.codex/hooks.json +37 -37
- package/templates/common/.harness-version +53 -51
- package/templates/common/AGENTS.md +30 -30
- package/templates/common/CLAUDE.md +94 -94
- package/templates/common/{docs/harness → Harness}/PROGRESS.md +17 -17
- package/templates/common/{docs → Harness}/README.md +18 -17
- package/templates/common/{docs/harness → Harness}/WF-MAX.md +223 -223
- package/templates/common/Harness/WF.md +217 -0
- package/templates/common/{docs/harness → Harness}/architecture.md +126 -126
- package/templates/common/{docs/harness → Harness}/dispatch.md +99 -99
- package/templates/common/{docs → Harness}/research/research-results.md +66 -66
- package/templates/common/{docs/harness → Harness}/subagents.md +194 -194
- package/templates/common/{docs → Harness}/tasks/_template/ARTIFACTS.md +3 -3
- package/templates/common/{docs → Harness}/tasks/_template/NOTES.md +3 -3
- package/templates/common/{docs → Harness}/tasks/_template/PLAN.md +40 -40
- package/templates/common/{docs → Harness}/tasks/_template/PROGRESS.md +29 -29
- package/templates/common/MEMORY.md +68 -66
- package/templates/common/README.md +44 -37
- package/templates/common/SETUP.md +41 -34
- package/templates/common/memory/agent-lessons-patterns.md +21 -21
- package/templates/common/memory/tool-usage-reflections.md +21 -21
- package/templates/common/memory/user-corrections-preferences.md +21 -21
- package/templates/common/scripts/scan-clean.mjs +450 -449
- package/templates/common/scripts/validate-harness.mjs +56 -34
- package/templates/common/scripts/wf-mode-hook.mjs +318 -318
- package/templates/common/scripts/wf-remove.mjs +400 -384
- package/templates/common/scripts/wf-statusline.ps1 +38 -38
- package/templates/common/scripts/wf-statusline.sh +48 -48
- package/templates/common/scripts/wf-update-check.mjs +389 -389
- package/templates/optional/catalog.json +63 -29
- package/templates/optional/skills/browser-e2e/.claude/skills/wf-browser/SKILL.md +194 -194
- package/templates/optional/skills/browser-e2e/{docs → Harness}/workflows/browser-e2e.md +75 -75
- package/templates/optional/skills/github-pr-review/{docs → Harness}/workflows/github-pr-review.md +28 -28
- package/templates/optional/skills/python-backend/{docs → Harness}/workflows/python-backend.md +34 -34
- package/templates/optional/skills/ts-react-frontend/{docs → Harness}/workflows/ts-react-frontend.md +35 -35
- package/templates/optional/skills/ui-ux-review/{docs → Harness}/workflows/ui-ux-review.md +26 -26
- package/templates/common/.claude/commands/wf-learn.md +0 -17
- package/templates/common/.claude/commands/wf-max.md +0 -49
- package/templates/common/.claude/commands/wf-remove.md +0 -23
- package/templates/common/.claude/commands/wf-review.md +0 -25
- package/templates/common/.claude/commands/wf-update.md +0 -17
- package/templates/common/.claude/commands/wf.md +0 -31
- package/templates/common/commands/wf-max.toml +0 -18
- package/templates/common/commands/wf-review.toml +0 -15
- package/templates/common/docs/harness/WF.md +0 -174
- package/templates/optional/skills/browser-e2e/.claude/commands/wf-browser.md +0 -25
- /package/templates/common/{docs/harness → Harness}/agent-workflow.md +0 -0
- /package/templates/common/{docs/harness → Harness}/context-loading.md +0 -0
- /package/templates/common/{docs/harness → Harness}/extension.md +0 -0
- /package/templates/common/{docs/harness → Harness}/lifecycle.md +0 -0
- /package/templates/common/{docs → Harness}/research/PRD.md +0 -0
- /package/templates/common/{docs → Harness}/research/README.md +0 -0
package/README-CN.md
CHANGED
|
@@ -1,212 +1,148 @@
|
|
|
1
|
-
|
|
2
|
-
<img src="https://img.shields.io/npm/v/create-harness-vibe-coding?color=blue" alt="npm">
|
|
3
|
-
<img src="https://img.shields.io/badge/node-%3E%3D18-brightgreen" alt="node">
|
|
4
|
-
<img src="https://img.shields.io/npm/l/create-harness-vibe-coding" alt="license">
|
|
5
|
-
<img src="https://img.shields.io/github/stars/zingspark/create-harness-vibe-coding?style=social" alt="stars">
|
|
6
|
-
</p>
|
|
1
|
+
# create-harness-vibe-coding
|
|
7
2
|
|
|
8
|
-
|
|
9
|
-
<p align="center">
|
|
10
|
-
<b>给你的 AI Agent 一个脚手架。一条命令,告别漂移。</b>
|
|
11
|
-
</p>
|
|
3
|
+
给 AI coding agent 用的 0-1 产品脚手架。核心目标:让 agent 先读路由、先确认事实、再写代码。
|
|
12
4
|
|
|
13
|
-
|
|
5
|
+
English README: [README.md](README.md)
|
|
6
|
+
|
|
7
|
+
## 一条命令
|
|
14
8
|
|
|
15
9
|
```bash
|
|
16
10
|
npx create-harness-vibe-coding@latest my-project
|
|
17
11
|
```
|
|
18
12
|
|
|
19
|
-
##
|
|
13
|
+
## 一句话交给 Agent
|
|
20
14
|
|
|
21
|
-
|
|
15
|
+
已有项目时,不要让 agent 猜。把这句话贴给它:
|
|
22
16
|
|
|
23
17
|
```text
|
|
24
|
-
请按照 https://github.com/zingspark/create-harness-vibe-coding 的 README 为当前项目配置 create-harness-vibe-coding
|
|
18
|
+
请按照 https://github.com/zingspark/create-harness-vibe-coding 的 README 为当前项目配置 create-harness-vibe-coding;编辑前先扫描项目根目录并询问 Agent-link 安装前置问题;如果 Harness/ 已存在,先询问如何处理再写文件;新项目走 0-1 bootstrap,老项目或老架构升级先 dry-run,保留现有文件,只合并缺失的 Harness 规范,然后遵循 Harness/SETUP.md。
|
|
25
19
|
```
|
|
26
20
|
|
|
27
|
-
|
|
28
|
-
- **你来**:敲上面那行 `npx`
|
|
29
|
-
- **交给 Agent**:贴上面那句话
|
|
30
|
-
|
|
31
|
-
[English README](README.md)
|
|
32
|
-
|
|
33
|
-
---
|
|
34
|
-
|
|
35
|
-
## 你能得到什么
|
|
36
|
-
|
|
37
|
-
| 得到 | 效果 |
|
|
38
|
-
|------|------|
|
|
39
|
-
| `CLAUDE.md` + `Harness/README.md` | Agent 从路由器开始,不是读长篇大论 |
|
|
40
|
-
| `Harness/tasks/` + `Harness/PROGRESS.md` | 跨会话追踪任务进度 |
|
|
41
|
-
| `/wf` 工作流 + 心跳 | 长任务不迷路,失败自动恢复 |
|
|
42
|
-
| `/wf update` | 从 GitHub 拉取脚手架最新改进 |
|
|
43
|
-
| `subagent-orchestrator` | 并行 Agent 不打架 |
|
|
44
|
-
| `memory-master` + `context-master` | 从失败中学习,上下文快满时压缩 |
|
|
45
|
-
| PRD + 调研模板 | 先问"做什么""为什么",再写代码 |
|
|
46
|
-
| 11 个内置 Agent | 调研、规划、架构、测试、构建、审查、调试、验证 |
|
|
47
|
-
| 架构文档 | 知道边界在哪里 |
|
|
48
|
-
| 上下文加载协议 | 每个子 Agent 只读它需要的文档 |
|
|
49
|
-
| `.claude/` 骨架 | Agent、Skill、命令、钩子——开箱即用 |
|
|
21
|
+
## 你会得到什么
|
|
50
22
|
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
|
|
23
|
+
| 文件/能力 | 作用 |
|
|
24
|
+
|---|---|
|
|
25
|
+
| `CLAUDE.md` + `AGENTS.md` | 根目录 agent 入口 |
|
|
26
|
+
| `Harness/README.md` | Harness 路由器 |
|
|
27
|
+
| `Harness/tasks/` + `Harness/PROGRESS.md` | 跨会话任务状态 |
|
|
28
|
+
| `.claude/skills/` | Claude Code 的 workflow skill 入口 |
|
|
29
|
+
| `.agents/skills/` | Codex 的 repo skill 入口 |
|
|
30
|
+
| `.codex/` | Codex hooks/config |
|
|
31
|
+
| `/wf` / `$wf` | 长任务 workflow |
|
|
32
|
+
| `/wf-max` / `$wf-max` | 最大并行 workflow |
|
|
33
|
+
| `/wf-review` / `$wf-review` | 交叉审查 workflow |
|
|
34
|
+
| `Harness/scripts/validate-harness.mjs` | 结构校验 |
|
|
54
35
|
|
|
55
|
-
|
|
36
|
+
`Harness/` 承载所有 Harness 文档。不要把 Harness 文件放进 `docs/`。
|
|
56
37
|
|
|
57
|
-
|
|
58
|
-
|------------|--------|
|
|
59
|
-
| 想法 → 代码。赌一把。 | 想法 → 调研 → PRD → 架构 → 构建 → 验证 |
|
|
60
|
-
| Agent 读完整个仓库 | 路由器只加载需要的那份文档 |
|
|
61
|
-
| 子 Agent 收到一句模糊的"修一下" | 上下文包:角色、边界、返回格式 |
|
|
62
|
-
| 漂移只到演示时才暴露 | 验证器标记缺失项 |
|
|
63
|
-
| 长任务卡死,上下文爆炸 | `/wf` 心跳 + 恢复循环 |
|
|
64
|
-
| 脚手架腐烂 | `/wf update` 从 GitHub 拉最新版 |
|
|
38
|
+
Claude Code 和 Codex 共用同一套核心 Harness 文档,但发现入口不同:
|
|
65
39
|
|
|
66
|
-
|
|
40
|
+
- Claude Code:`.claude/skills/<name>/SKILL.md`,通常用 `/wf` 调用。
|
|
41
|
+
- Codex:`.agents/skills/<name>/SKILL.md`,通常用 `$wf` 或 `/skills` 调用。
|
|
42
|
+
- `.codex/` 只放 Codex 配置和 hooks;不要再使用根目录 `commands/*.toml` 伪装 Codex slash command。
|
|
67
43
|
|
|
68
|
-
##
|
|
44
|
+
## 新项目
|
|
69
45
|
|
|
70
|
-
```
|
|
46
|
+
```bash
|
|
71
47
|
npx create-harness-vibe-coding@latest my-project
|
|
72
|
-
|
|
73
|
-
Agent 读 Harness/SETUP.md
|
|
74
|
-
↓
|
|
75
|
-
路由器只加载任务需要的文档
|
|
76
|
-
↓
|
|
77
|
-
PRD → 调研 → 架构 → 第一个任务胶囊
|
|
78
|
-
↓
|
|
79
|
-
构建 → 测试 → 审查 → 验证 → 反馈
|
|
80
|
-
↓
|
|
81
|
-
/wf update 保持脚手架最新
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
```mermaid
|
|
85
|
-
graph TD
|
|
86
|
-
A[ /wf 进入 ] --> B[ 探索: 3+ 并行 Agent ]
|
|
87
|
-
B --> C[ 二阶段计划 ]
|
|
88
|
-
C --> D[ 构建: 测试 → 实现 ]
|
|
89
|
-
D --> E[ 双门禁审查 ]
|
|
90
|
-
E --> F{ 通过? }
|
|
91
|
-
F -->| 否 | G[ 调试 → 修复 → 循环 ]
|
|
92
|
-
G --> E
|
|
93
|
-
F -->| 是 | H[ 收尾: 记忆 + 上下文 ]
|
|
94
|
-
H --> I[ /wf update ]
|
|
48
|
+
cd my-project
|
|
95
49
|
```
|
|
96
50
|
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
## 怎么用
|
|
51
|
+
然后让 agent 执行:
|
|
100
52
|
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
```bash
|
|
104
|
-
npx create-harness-vibe-coding@latest my-project
|
|
105
|
-
cd my-project
|
|
106
|
-
# Agent 读 Harness/SETUP.md。搞定。
|
|
53
|
+
```text
|
|
54
|
+
读 Harness/SETUP.md。把这个项目从想法引导到第一个 vertical slice。
|
|
107
55
|
```
|
|
108
56
|
|
|
109
|
-
|
|
57
|
+
## 已有项目安全合并
|
|
110
58
|
|
|
111
59
|
```bash
|
|
112
|
-
#
|
|
60
|
+
# 先预览,不写文件
|
|
113
61
|
npx create-harness-vibe-coding@latest my-app . -y --dry-run
|
|
114
62
|
|
|
115
|
-
#
|
|
63
|
+
# 只补缺失文件,不覆盖已有文件
|
|
116
64
|
npx create-harness-vibe-coding@latest my-app . -y --on-conflict skip
|
|
117
65
|
```
|
|
118
66
|
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
|
|
127
|
-
|
|
128
|
-
| `--preset <name>` | 添加 `web-app` 或 `fullstack` 预设 |
|
|
129
|
-
|
|
130
|
-
### 可选工作流
|
|
67
|
+
`npx` 是安装和安全补缺入口,不是已安装 Harness 的同步更新器。项目里已经有 `Harness/` 后,Claude Code 用 `/wf-update`,Codex 用 `$wf-update`,或者直接运行:
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
node Harness/scripts/wf-update-check.mjs
|
|
71
|
+
```
|
|
72
|
+
|
|
73
|
+
原因很直接:`CLAUDE.md`、`AGENTS.md`、`.claude/`、`.agents/`、`.codex/` 和用户改过的 Harness 文档都需要 agent 带着上下文做合并决策。
|
|
74
|
+
|
|
75
|
+
## 可选能力
|
|
131
76
|
|
|
132
77
|
```bash
|
|
133
78
|
npx create-harness-vibe-coding@latest my-app -y --with browser-e2e
|
|
134
79
|
npx create-harness-vibe-coding@latest my-app -y --preset web-app
|
|
80
|
+
npx create-harness-vibe-coding@latest my-app -y --recommend superpowers,codegraph
|
|
135
81
|
```
|
|
136
82
|
|
|
137
|
-
|
|
|
138
|
-
|
|
139
|
-
|
|
|
140
|
-
| `
|
|
141
|
-
|
|
|
142
|
-
|
|
|
143
|
-
|
|
|
83
|
+
| 参数 | 作用 |
|
|
84
|
+
|---|---|
|
|
85
|
+
| `--with <ids>` | 安装本地 workflow |
|
|
86
|
+
| `--preset <name>` | 安装预设,如 `web-app`、`fullstack` |
|
|
87
|
+
| `--without <ids>` | 从预设中排除 workflow |
|
|
88
|
+
| `--recommend <ids>` | 记录外部能力建议,不自动安装 |
|
|
89
|
+
| `--list-options` | 查看本地 workflow 和外部建议 |
|
|
90
|
+
|
|
91
|
+
本地 workflow:`browser-e2e`、`ui-ux-review`、`ts-react-frontend`、`python-backend`、`github-pr-review`。
|
|
144
92
|
|
|
145
|
-
|
|
93
|
+
外部建议只写入 `Harness/SETUP.md`,不会自动安装第三方技能:`superpowers`、`caveman`、`agent-research`、`codegraph`。
|
|
146
94
|
|
|
147
|
-
|
|
95
|
+
不加 `-y` 时,CLI 会提供 checkbox/multiselect 选择。
|
|
148
96
|
|
|
149
|
-
-
|
|
150
|
-
- `docs/` 已被产品文档占用?→ 把脚手架放 `Harness/` 目录
|
|
151
|
-
- 什么技术栈?→ 安装匹配的可选工作流
|
|
97
|
+
## Agent-link 安装前置问题
|
|
152
98
|
|
|
153
|
-
|
|
99
|
+
Agent 必须先扫描根目录,再最多问 3 个阻塞问题。扫描要覆盖:
|
|
154
100
|
|
|
155
|
-
|
|
101
|
+
- `CLAUDE.md`、`AGENTS.md`
|
|
102
|
+
- `.claude/`、`.agents/`、`.codex/`
|
|
103
|
+
- `Harness/`
|
|
104
|
+
- `README.md`
|
|
105
|
+
- package 文件、CI 文件、已有文档目录、应用入口和测试命令
|
|
156
106
|
|
|
157
|
-
|
|
158
|
-
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
107
|
+
只在影响写入时提问:
|
|
108
|
+
|
|
109
|
+
- 已有 `CLAUDE.md` 或 `AGENTS.md`:合并缺失 Harness 指南、保持不动,还是跳过?
|
|
110
|
+
- 已有 `Harness/`:走 `/wf-update` / `$wf-update`、dry-run 补缺、保持不动,还是批准后移除重装?
|
|
111
|
+
- 要启用哪些能力:本地 workflow,或只记录外部建议?
|
|
162
112
|
|
|
163
|
-
|
|
113
|
+
默认策略:保留已有文件,只补缺失内容。
|
|
114
|
+
|
|
115
|
+
## 验证
|
|
164
116
|
|
|
165
117
|
```bash
|
|
166
118
|
npm test
|
|
167
119
|
node Harness/scripts/validate-harness.mjs
|
|
168
120
|
```
|
|
169
121
|
|
|
170
|
-
|
|
171
|
-
|
|
172
|
-
## 文件结构
|
|
122
|
+
## 项目结构
|
|
173
123
|
|
|
174
|
-
```
|
|
124
|
+
```text
|
|
175
125
|
my-project/
|
|
176
|
-
├── CLAUDE.md
|
|
177
|
-
├── AGENTS.md
|
|
178
|
-
├── .gitignore
|
|
126
|
+
├── CLAUDE.md
|
|
127
|
+
├── AGENTS.md
|
|
179
128
|
├── Harness/
|
|
180
|
-
│ ├── README.md
|
|
181
|
-
│ ├── SETUP.md
|
|
182
|
-
│ ├── MEMORY.md
|
|
183
|
-
│ ├── PROGRESS.md
|
|
184
|
-
│ ├── WF.md
|
|
185
|
-
│ ├── tasks/
|
|
186
|
-
│ ├── research/
|
|
187
|
-
│ ├──
|
|
188
|
-
│ └── scripts/
|
|
129
|
+
│ ├── README.md
|
|
130
|
+
│ ├── SETUP.md
|
|
131
|
+
│ ├── MEMORY.md
|
|
132
|
+
│ ├── PROGRESS.md
|
|
133
|
+
│ ├── WF.md
|
|
134
|
+
│ ├── tasks/
|
|
135
|
+
│ ├── research/
|
|
136
|
+
│ ├── workflows/
|
|
137
|
+
│ └── scripts/
|
|
189
138
|
├── .claude/
|
|
190
|
-
│ ├── agents/
|
|
191
|
-
│ ├── skills/
|
|
192
|
-
│
|
|
193
|
-
|
|
139
|
+
│ ├── agents/
|
|
140
|
+
│ ├── skills/
|
|
141
|
+
│ └── rules/
|
|
142
|
+
├── .agents/
|
|
143
|
+
│ └── skills/
|
|
144
|
+
├── .codex/
|
|
194
145
|
└── tests/
|
|
195
146
|
```
|
|
196
147
|
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
---
|
|
200
|
-
|
|
201
|
-
## 足迹
|
|
202
|
-
|
|
203
|
-
| | |
|
|
204
|
-
|---|---|
|
|
205
|
-
| 运行时 | 无 |
|
|
206
|
-
| 依赖 | 2(`@clack/prompts`、`picocolors`) |
|
|
207
|
-
| Node | ≥ 18 |
|
|
208
|
-
| 生成代码 | 无——直到你选定技术栈 |
|
|
209
|
-
|
|
210
|
-
---
|
|
211
|
-
|
|
212
|
-
MIT © [zingspark](https://github.com/zingspark)
|
|
148
|
+
MIT - [zingspark](https://github.com/zingspark)
|