@aipper/aiws-spec 0.0.33 → 0.0.34
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/docs/aiws-bootstrap-routing-design.md +5 -50
- package/docs/aiws-governance-positioning.md +1 -1
- package/docs/cli-interface.md +13 -73
- package/docs/collaboration-artifacts.md +2 -2
- package/docs/opencode-autonomous-swarm.md +0 -2
- package/docs/opencode-omo-adapter.md +0 -2
- package/docs/opencode-omo-validation-checklist.md +0 -1
- package/docs/spec-contract.md +10 -36
- package/docs/workflow-router-rules.json +2 -2
- package/docs/workflow-router-rules.md +2 -2
- package/docs/ws-goal-contract.md +16 -25
- package/package.json +1 -1
- package/templates/workspace/.aiws/continuation/CONTINUATION_PROTOCOL.md +101 -0
- package/templates/workspace/.aiws/manifest.json +2 -10
- package/templates/workspace/.opencode/command/ws-finish.md +4 -0
- package/templates/workspace/.opencode/command/ws-goal.md +5 -0
- package/templates/workspace/.opencode/commands/ws-finish.md +4 -0
- package/templates/workspace/.opencode/skills/ws-goal/SKILL.md +41 -0
- package/templates/workspace/AGENTS.md +1 -3
- package/templates/workspace/AI_PROJECT.md +6 -1
- package/templates/workspace/AI_WORKSPACE.md +1 -1
- package/templates/workspace/manifest.json +156 -447
- package/templates/workspace/.agents/skills/p-aiws-change-archive/SKILL.md +0 -24
- package/templates/workspace/.agents/skills/p-aiws-change-finish/SKILL.md +0 -24
- package/templates/workspace/.agents/skills/p-aiws-change-list/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/p-aiws-change-new/SKILL.md +0 -26
- package/templates/workspace/.agents/skills/p-aiws-change-next/SKILL.md +0 -19
- package/templates/workspace/.agents/skills/p-aiws-change-start/SKILL.md +0 -33
- package/templates/workspace/.agents/skills/p-aiws-change-status/SKILL.md +0 -19
- package/templates/workspace/.agents/skills/p-aiws-change-sync/SKILL.md +0 -19
- package/templates/workspace/.agents/skills/p-aiws-change-templates-init/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/p-aiws-change-templates-which/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/p-aiws-change-validate/SKILL.md +0 -23
- package/templates/workspace/.agents/skills/p-aiws-hooks-install/SKILL.md +0 -30
- package/templates/workspace/.agents/skills/p-aiws-hooks-status/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/p-aiws-init/SKILL.md +0 -27
- package/templates/workspace/.agents/skills/p-aiws-rollback/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/p-aiws-update/SKILL.md +0 -26
- package/templates/workspace/.agents/skills/p-aiws-validate/SKILL.md +0 -22
- package/templates/workspace/.agents/skills/p-tasks-plan/SKILL.md +0 -37
- package/templates/workspace/.agents/skills/using-aiws/SKILL.md +0 -112
- package/templates/workspace/.agents/skills/ws-analyze/SKILL.md +0 -26
- package/templates/workspace/.agents/skills/ws-bugfix/SKILL.md +0 -111
- package/templates/workspace/.agents/skills/ws-commit/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-delegate/SKILL.md +0 -75
- package/templates/workspace/.agents/skills/ws-deliver/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-dev/SKILL.md +0 -109
- package/templates/workspace/.agents/skills/ws-dev-lite/SKILL.md +0 -58
- package/templates/workspace/.agents/skills/ws-finish/SKILL.md +0 -22
- package/templates/workspace/.agents/skills/ws-frontend-design/SKILL.md +0 -126
- package/templates/workspace/.agents/skills/ws-goal/SKILL.md +0 -89
- package/templates/workspace/.agents/skills/ws-handoff/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-intake/SKILL.md +0 -106
- package/templates/workspace/.agents/skills/ws-migrate/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-plan/SKILL.md +0 -144
- package/templates/workspace/.agents/skills/ws-plan-verify/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-preflight/SKILL.md +0 -56
- package/templates/workspace/.agents/skills/ws-pull/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-push/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-quality-review/SKILL.md +0 -56
- package/templates/workspace/.agents/skills/ws-req-change/SKILL.md +0 -41
- package/templates/workspace/.agents/skills/ws-req-contract-sync/SKILL.md +0 -17
- package/templates/workspace/.agents/skills/ws-req-contract-validate/SKILL.md +0 -12
- package/templates/workspace/.agents/skills/ws-req-flow-sync/SKILL.md +0 -28
- package/templates/workspace/.agents/skills/ws-req-review/SKILL.md +0 -32
- package/templates/workspace/.agents/skills/ws-research/SKILL.md +0 -56
- package/templates/workspace/.agents/skills/ws-review/SKILL.md +0 -55
- package/templates/workspace/.agents/skills/ws-rule/SKILL.md +0 -23
- package/templates/workspace/.agents/skills/ws-spec-review/SKILL.md +0 -57
- package/templates/workspace/.agents/skills/ws-submodule-setup/SKILL.md +0 -18
- package/templates/workspace/.agents/skills/ws-verify-before-complete/SKILL.md +0 -18
- package/templates/workspace/.claude/commands/p-aiws-change-archive.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-finish.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-list.md +0 -23
- package/templates/workspace/.claude/commands/p-aiws-change-new.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-next.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-start.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-status.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-sync.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-change-templates-init.md +0 -23
- package/templates/workspace/.claude/commands/p-aiws-change-templates-which.md +0 -23
- package/templates/workspace/.claude/commands/p-aiws-change-validate.md +0 -24
- package/templates/workspace/.claude/commands/p-aiws-hooks-install.md +0 -23
- package/templates/workspace/.claude/commands/p-aiws-hooks-status.md +0 -23
- package/templates/workspace/.claude/commands/p-aiws-init.md +0 -20
- package/templates/workspace/.claude/commands/p-aiws-rollback.md +0 -13
- package/templates/workspace/.claude/commands/p-aiws-update.md +0 -19
- package/templates/workspace/.claude/commands/p-aiws-validate.md +0 -14
- package/templates/workspace/.claude/commands/using-aiws.md +0 -25
- package/templates/workspace/.claude/commands/ws-analyze.md +0 -27
- package/templates/workspace/.claude/commands/ws-bugfix.md +0 -32
- package/templates/workspace/.claude/commands/ws-commit.md +0 -67
- package/templates/workspace/.claude/commands/ws-deliver.md +0 -55
- package/templates/workspace/.claude/commands/ws-dev-lite.md +0 -31
- package/templates/workspace/.claude/commands/ws-dev.md +0 -33
- package/templates/workspace/.claude/commands/ws-finish.md +0 -72
- package/templates/workspace/.claude/commands/ws-goal.md +0 -34
- package/templates/workspace/.claude/commands/ws-handoff.md +0 -23
- package/templates/workspace/.claude/commands/ws-intake.md +0 -19
- package/templates/workspace/.claude/commands/ws-migrate.md +0 -22
- package/templates/workspace/.claude/commands/ws-plan-verify.md +0 -25
- package/templates/workspace/.claude/commands/ws-plan.md +0 -21
- package/templates/workspace/.claude/commands/ws-preflight.md +0 -27
- package/templates/workspace/.claude/commands/ws-pull.md +0 -84
- package/templates/workspace/.claude/commands/ws-push.md +0 -90
- package/templates/workspace/.claude/commands/ws-quality-review.md +0 -24
- package/templates/workspace/.claude/commands/ws-req-change.md +0 -42
- package/templates/workspace/.claude/commands/ws-req-contract-sync.md +0 -18
- package/templates/workspace/.claude/commands/ws-req-contract-validate.md +0 -13
- package/templates/workspace/.claude/commands/ws-req-flow-sync.md +0 -20
- package/templates/workspace/.claude/commands/ws-req-review.md +0 -33
- package/templates/workspace/.claude/commands/ws-review.md +0 -31
- package/templates/workspace/.claude/commands/ws-rule.md +0 -24
- package/templates/workspace/.claude/commands/ws-spec-review.md +0 -24
- package/templates/workspace/.claude/commands/ws-submodule-setup.md +0 -54
- package/templates/workspace/.claude/commands/ws-verify-before-complete.md +0 -24
- package/templates/workspace/.claude/settings.json.example +0 -26
- package/templates/workspace/.claude/skills/p-aiws-change-archive/SKILL.md +0 -24
- package/templates/workspace/.claude/skills/p-aiws-change-finish/SKILL.md +0 -24
- package/templates/workspace/.claude/skills/p-aiws-change-list/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/p-aiws-change-new/SKILL.md +0 -26
- package/templates/workspace/.claude/skills/p-aiws-change-next/SKILL.md +0 -19
- package/templates/workspace/.claude/skills/p-aiws-change-start/SKILL.md +0 -33
- package/templates/workspace/.claude/skills/p-aiws-change-status/SKILL.md +0 -19
- package/templates/workspace/.claude/skills/p-aiws-change-sync/SKILL.md +0 -19
- package/templates/workspace/.claude/skills/p-aiws-change-templates-init/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/p-aiws-change-templates-which/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/p-aiws-change-validate/SKILL.md +0 -23
- package/templates/workspace/.claude/skills/p-aiws-hooks-install/SKILL.md +0 -30
- package/templates/workspace/.claude/skills/p-aiws-hooks-status/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/p-aiws-init/SKILL.md +0 -27
- package/templates/workspace/.claude/skills/p-aiws-rollback/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/p-aiws-update/SKILL.md +0 -26
- package/templates/workspace/.claude/skills/p-aiws-validate/SKILL.md +0 -22
- package/templates/workspace/.claude/skills/p-tasks-plan/SKILL.md +0 -37
- package/templates/workspace/.claude/skills/using-aiws/SKILL.md +0 -87
- package/templates/workspace/.claude/skills/ws-analyze/SKILL.md +0 -26
- package/templates/workspace/.claude/skills/ws-bugfix/SKILL.md +0 -111
- package/templates/workspace/.claude/skills/ws-commit/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-deliver/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-dev/SKILL.md +0 -79
- package/templates/workspace/.claude/skills/ws-dev-lite/SKILL.md +0 -58
- package/templates/workspace/.claude/skills/ws-finish/SKILL.md +0 -22
- package/templates/workspace/.claude/skills/ws-frontend-design/SKILL.md +0 -126
- package/templates/workspace/.claude/skills/ws-handoff/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-intake/SKILL.md +0 -53
- package/templates/workspace/.claude/skills/ws-migrate/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-plan/SKILL.md +0 -138
- package/templates/workspace/.claude/skills/ws-plan-verify/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-preflight/SKILL.md +0 -55
- package/templates/workspace/.claude/skills/ws-pull/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-push/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-quality-review/SKILL.md +0 -56
- package/templates/workspace/.claude/skills/ws-req-change/SKILL.md +0 -41
- package/templates/workspace/.claude/skills/ws-req-contract-sync/SKILL.md +0 -17
- package/templates/workspace/.claude/skills/ws-req-contract-validate/SKILL.md +0 -12
- package/templates/workspace/.claude/skills/ws-req-flow-sync/SKILL.md +0 -28
- package/templates/workspace/.claude/skills/ws-req-review/SKILL.md +0 -32
- package/templates/workspace/.claude/skills/ws-review/SKILL.md +0 -55
- package/templates/workspace/.claude/skills/ws-rule/SKILL.md +0 -23
- package/templates/workspace/.claude/skills/ws-spec-review/SKILL.md +0 -57
- package/templates/workspace/.claude/skills/ws-submodule-setup/SKILL.md +0 -18
- package/templates/workspace/.claude/skills/ws-verify-before-complete/SKILL.md +0 -18
- package/templates/workspace/.codex/prompts/aiws-init.md +0 -23
- package/templates/workspace/.codex/prompts/aiws-rollback.md +0 -16
- package/templates/workspace/.codex/prompts/aiws-update.md +0 -22
- package/templates/workspace/.codex/prompts/aiws-validate.md +0 -17
- package/templates/workspace/.codex/prompts/ws-analyze.md +0 -32
- package/templates/workspace/.codex/prompts/ws-dev.md +0 -36
- package/templates/workspace/.codex/prompts/ws-migrate.md +0 -27
- package/templates/workspace/.codex/prompts/ws-preflight.md +0 -32
- package/templates/workspace/.codex/prompts/ws-req-change.md +0 -39
- package/templates/workspace/.codex/prompts/ws-req-contract-sync.md +0 -23
- package/templates/workspace/.codex/prompts/ws-req-contract-validate.md +0 -18
- package/templates/workspace/.codex/prompts/ws-req-flow-sync.md +0 -25
- package/templates/workspace/.codex/prompts/ws-req-review.md +0 -38
- package/templates/workspace/.codex/prompts/ws-review.md +0 -32
- package/templates/workspace/.codex/prompts/ws-rule.md +0 -29
|
@@ -1,111 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-bugfix
|
|
3
|
-
description: 缺陷修复(通过禅道 MCP 拉取 bug 与附件,下载图片证据,汇总到 issues/fix_bus_issues.csv,并绑定到 .aiws/changes/<change-id>/)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
目标:
|
|
9
|
-
- 用禅道 MCP 拉取 bug 详情与附件(尤其图片)
|
|
10
|
-
- 把证据落盘到 `.aiws/changes/<change-id>/bug/`(避免只停留在对话)
|
|
11
|
-
- 把修复任务汇总/更新到 `issues/fix_bus_issues.csv`
|
|
12
|
-
- 与 `ws-dev` / `aiws change` 流程绑定,确保可追溯、可验证
|
|
13
|
-
|
|
14
|
-
非目标(强制):
|
|
15
|
-
- 不自动 commit / push
|
|
16
|
-
- 不写入任何 secrets(token、cookie、内网地址)
|
|
17
|
-
- 不在无法复现时直接改代码(先产出阻塞信息)
|
|
18
|
-
|
|
19
|
-
前置:
|
|
20
|
-
1) 先运行 `$ws-preflight`。
|
|
21
|
-
2) 准备 `change-id`(建议:`bug-<bug-id>` 或 `bugfix-<bug-id>-<slug>`)。
|
|
22
|
-
3) 建立 change 上下文(推荐先于任何落盘):
|
|
23
|
-
- 若当前还不在 `change/<change-id>` 分支 / worktree,先调用 `aiws change start`
|
|
24
|
-
- 工作区必须先干净;否则不要先写 `.aiws/changes/<change-id>/bug/` 或 `issues/fix_bus_issues.csv`,避免后续切 worktree 时工件留在原工作区
|
|
25
|
-
- 仓库已有提交:优先 `--worktree`
|
|
26
|
-
- superproject + submodule:优先 `--worktree --submodules`
|
|
27
|
-
- 仓库尚无提交 / 不满足 worktree 前置条件:回退 `--no-switch`
|
|
28
|
-
```bash
|
|
29
|
-
if [[ -n "$(git status --porcelain)" ]]; then
|
|
30
|
-
echo "error: working tree dirty before ws-bugfix creates change context"
|
|
31
|
-
exit 2
|
|
32
|
-
fi
|
|
33
|
-
|
|
34
|
-
if git rev-parse --verify HEAD >/dev/null 2>&1; then
|
|
35
|
-
if [[ -f .gitmodules ]] && git config --file .gitmodules --get-regexp '^submodule\\..*\\.path$' >/dev/null 2>&1; then
|
|
36
|
-
aiws change start <change-id> --hooks --worktree --submodules
|
|
37
|
-
else
|
|
38
|
-
aiws change start <change-id> --hooks --worktree
|
|
39
|
-
fi
|
|
40
|
-
else
|
|
41
|
-
aiws change start <change-id> --hooks --no-switch
|
|
42
|
-
fi
|
|
43
|
-
```
|
|
44
|
-
- 若上一步创建了 worktree:后续 bug 证据、CSV 更新、`$ws-dev` 修复都必须在该 worktree 中继续;不要回原工作区重复创建 change
|
|
45
|
-
- 若该 change 涉及 submodule:
|
|
46
|
-
- 优先复用 `$ws-dev` 的 `submodules.targets` 生成/确认流程
|
|
47
|
-
- detached HEAD 时默认建议取 `.gitmodules` 声明的分支
|
|
48
|
-
- 已附着在某个本地分支时默认建议取当前分支
|
|
49
|
-
- 以上都只是建议值,最终必须显式写入 `.aiws/changes/<change-id>/submodules.targets`
|
|
50
|
-
|
|
51
|
-
建议流程(按顺序):
|
|
52
|
-
|
|
53
|
-
## 1) 通过禅道 MCP 拉取 bug
|
|
54
|
-
- 使用当前会话中已启用的 zentao MCP 工具获取:
|
|
55
|
-
- `bug_id`、标题、优先级/严重级、模块、状态、指派人
|
|
56
|
-
- 重现步骤、期望结果、实际结果
|
|
57
|
-
- 附件列表(含图片 URL/文件名)
|
|
58
|
-
- 若当前环境没有 zentao MCP 工具:立即停止并提示用户先配置,不要猜数据。
|
|
59
|
-
|
|
60
|
-
## 2) 证据落盘(强制)
|
|
61
|
-
在当前 active change 上下文的 `.aiws/changes/<change-id>/bug/` 下落盘:
|
|
62
|
-
- `zentao-bug-<bug-id>.json`:原始字段快照(避免信息丢失)
|
|
63
|
-
- `zentao-bug-<bug-id>.md`:人类可读摘要(复现步骤/期望/实际/风险)
|
|
64
|
-
- `images/<bug-id>/...`:下载的图片附件(保留原扩展名)
|
|
65
|
-
|
|
66
|
-
建议目录:
|
|
67
|
-
```text
|
|
68
|
-
.aiws/changes/<change-id>/bug/
|
|
69
|
-
zentao-bug-<bug-id>.json
|
|
70
|
-
zentao-bug-<bug-id>.md
|
|
71
|
-
images/<bug-id>/
|
|
72
|
-
```
|
|
73
|
-
|
|
74
|
-
## 3) 汇总到 issues/fix_bus_issues.csv(upsert)
|
|
75
|
-
- 目标文件:当前 active change 上下文中的 `issues/fix_bus_issues.csv`
|
|
76
|
-
- 若文件不存在,先创建表头:
|
|
77
|
-
```csv
|
|
78
|
-
Bug_ID,Title,Severity,Module,Status,Assigned_To,Change_ID,Image_Count,Image_Paths,Evidence_Path,Verify_Command,Fix_Status,Updated_At,Notes
|
|
79
|
-
```
|
|
80
|
-
- 以 `Bug_ID` 为主键 upsert:
|
|
81
|
-
- 已存在:更新状态/证据/图片路径
|
|
82
|
-
- 不存在:新增一行
|
|
83
|
-
|
|
84
|
-
字段约束:
|
|
85
|
-
- `Change_ID`:必须等于当前 `change-id`
|
|
86
|
-
- `Evidence_Path`:指向 `.aiws/changes/<change-id>/bug/zentao-bug-<bug-id>.md`
|
|
87
|
-
- `Image_Paths`:多个路径用 `;` 分隔
|
|
88
|
-
- `Fix_Status`:`TODO|DOING|DONE|BLOCKED`
|
|
89
|
-
|
|
90
|
-
## 4) 修复执行与回填
|
|
91
|
-
- 进入 `$ws-dev` 做最小改动修复;若 `ws-bugfix` 创建了 worktree,则必须在该 worktree 中继续。
|
|
92
|
-
- 完成后回填 `issues/fix_bus_issues.csv`:
|
|
93
|
-
- `Fix_Status`
|
|
94
|
-
- `Verify_Command`
|
|
95
|
-
- `Updated_At`
|
|
96
|
-
- `Notes`(必要时写阻塞原因)
|
|
97
|
-
|
|
98
|
-
## 5) 验证与交付
|
|
99
|
-
```bash
|
|
100
|
-
aiws change validate <change-id> --strict
|
|
101
|
-
aiws validate . --stamp
|
|
102
|
-
```
|
|
103
|
-
- 需要提交时走 `$ws-commit`。
|
|
104
|
-
- 需要收尾合并时走 `$ws-finish`(或在 superproject + submodule 场景走 `$ws-deliver`)。
|
|
105
|
-
|
|
106
|
-
输出要求:
|
|
107
|
-
- `Change_ID:` `<change-id>`
|
|
108
|
-
- `Change context:` `<当前分支或 worktree 路径>`
|
|
109
|
-
- `CSV:` `issues/fix_bus_issues.csv` 中对应 `Bug_ID` 行的关键字段
|
|
110
|
-
- `Evidence:` `.aiws/changes/<change-id>/bug/zentao-bug-<bug-id>.md` + 图片目录
|
|
111
|
-
- `Verify:` 实际运行命令与结果(未运行不声称已运行)
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-commit
|
|
3
|
-
description: `aiws commit` 的薄包装入口
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ws-commit
|
|
7
|
-
|
|
8
|
-
`aiws commit` 的薄包装入口。
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
if [[ -x "./node_modules/.bin/aiws" ]]; then
|
|
12
|
-
./node_modules/.bin/aiws commit
|
|
13
|
-
elif command -v aiws >/dev/null 2>&1; then
|
|
14
|
-
aiws commit
|
|
15
|
-
else
|
|
16
|
-
npx @aipper/aiws commit
|
|
17
|
-
fi
|
|
18
|
-
```
|
|
@@ -1,75 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-delegate
|
|
3
|
-
description: 原生多 agent 委托入口(Codex 优先;先定义角色/边界/工件/降级,再决定是否委托)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
目标:在 AIWS 治理约束下,只有在任务已绑定且 scope 可控时,才使用当前工具的原生多 agent / sub-agent 能力;否则明确降级为单 agent + 协同工件模式。
|
|
9
|
-
|
|
10
|
-
阶段定位:
|
|
11
|
-
- implementation / review 的辅助入口;它不是独立 workflow 阶段,也不能绕过 `ws-plan`、`ws-dev`、`ws-review`、`ws-finish`。
|
|
12
|
-
|
|
13
|
-
必需输入:
|
|
14
|
-
- 真值文件:`AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`
|
|
15
|
-
- delegation contract:`packages/spec/docs/workflow-delegation-contracts.md`
|
|
16
|
-
- 当前任务已绑定 `Req_ID` / change / Verify 入口
|
|
17
|
-
- 拟委托子任务的角色划分、读写边界、artifact 目标与 fallback
|
|
18
|
-
|
|
19
|
-
必需输出:
|
|
20
|
-
- `Delegation Plan:` 逐项写清 role / task / readScope / writeScope / artifactTargets / fallback
|
|
21
|
-
- `Execution Mode:` 明确是 `native multi-agent` 还是 `fallback single-agent`
|
|
22
|
-
- `Evidence:` 委托产物路径(`analysis/` / `patches/` / `review/` / `evidence/`)
|
|
23
|
-
- `Next:` 收敛后应回到 `ws-dev`、`ws-review`、`ws-commit` 或 `ws-finish`
|
|
24
|
-
|
|
25
|
-
阻断条件:
|
|
26
|
-
- 无法绑定到 `Req_ID` / change / Verify
|
|
27
|
-
- 没有明确的 `writeScope` / `artifactTargets`
|
|
28
|
-
- 当前工具缺少稳定 native delegation 能力,且你又不能接受降级执行
|
|
29
|
-
- 任务规模太小,引入委托只会增加复杂度
|
|
30
|
-
|
|
31
|
-
完成判定:
|
|
32
|
-
- 已经明确本次是否适合委托
|
|
33
|
-
- 若适合:delegation plan 已声明并执行,产物回收到 AIWS 约定路径
|
|
34
|
-
- 若不适合:已明确降级原因,并回到单 agent 流程继续执行
|
|
35
|
-
|
|
36
|
-
步骤(建议):
|
|
37
|
-
1) 先读取真值文件与 `packages/spec/docs/workflow-delegation-contracts.md`,确认这不是“为了多 agent 而多 agent”。
|
|
38
|
-
2) 判断当前任务是否真的需要委托:
|
|
39
|
-
- 需要并行的只读探索
|
|
40
|
-
- 需要把实现与审查拆开
|
|
41
|
-
- 有明确、互不重叠的写入边界
|
|
42
|
-
- 委托收益大于协调成本
|
|
43
|
-
3) 先写 `Delegation Plan:`,至少包含:
|
|
44
|
-
- `role`
|
|
45
|
-
- `task`
|
|
46
|
-
- `readScope`
|
|
47
|
-
- `writeScope`
|
|
48
|
-
- `artifactTargets`
|
|
49
|
-
- `fallback`
|
|
50
|
-
4) 若当前环境支持原生多 agent:
|
|
51
|
-
- 优先把探索型工作交给 `explorer`
|
|
52
|
-
- 只把显式授权的文件范围交给 `worker`
|
|
53
|
-
- 至少保留一个独立 `reviewer`
|
|
54
|
-
- 由主 agent / `integrator` 统一收敛结果
|
|
55
|
-
5) 若当前环境不支持,或无法稳定约束 scope:
|
|
56
|
-
- 明确输出 `Execution Mode: fallback single-agent`
|
|
57
|
-
- 仍按 AIWS 协同工件约定执行:
|
|
58
|
-
- `.aiws/changes/<id>/analysis/`
|
|
59
|
-
- `.aiws/changes/<id>/patches/`
|
|
60
|
-
- `.aiws/changes/<id>/review/`
|
|
61
|
-
- `.aiws/changes/<id>/evidence/`
|
|
62
|
-
6) 不论是否启用原生多 agent,都不要跳过:
|
|
63
|
-
- 需求归因
|
|
64
|
-
- 验证命令
|
|
65
|
-
- review convergence
|
|
66
|
-
- finish / handoff gate
|
|
67
|
-
|
|
68
|
-
Codex 优先说明:
|
|
69
|
-
- 若当前环境支持原生多 agent / sub-agent,就按 delegation contract 显式拆 role 与 scope。
|
|
70
|
-
- 若不支持,或你无法保证写边界,直接降级,不临时发明新的 runtime/controller。
|
|
71
|
-
|
|
72
|
-
安全:
|
|
73
|
-
- 不把 `aiws` 变成统一 orchestrator。
|
|
74
|
-
- 不让 delegated agent 越权写未授权文件。
|
|
75
|
-
- 不把 `patches/` 视为“已合并代码”。
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-deliver
|
|
3
|
-
description: `aiws deliver` 的薄包装入口
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ws-deliver
|
|
7
|
-
|
|
8
|
-
`aiws deliver` 的薄包装入口。
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
if [[ -x "./node_modules/.bin/aiws" ]]; then
|
|
12
|
-
./node_modules/.bin/aiws deliver
|
|
13
|
-
elif command -v aiws >/dev/null 2>&1; then
|
|
14
|
-
aiws deliver
|
|
15
|
-
else
|
|
16
|
-
npx @aipper/aiws deliver
|
|
17
|
-
fi
|
|
18
|
-
```
|
|
@@ -1,109 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-dev
|
|
3
|
-
description: 开发(按需求实现并验证;适用于任何需要修改代码/配置的任务)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
目标:在 AIWS 约束下完成一个可回放、可验证的小步交付。
|
|
9
|
-
|
|
10
|
-
阶段定位:implementation 阶段。
|
|
11
|
-
|
|
12
|
-
## 必需输入
|
|
13
|
-
|
|
14
|
-
- 真值文件:`AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`
|
|
15
|
-
- 当前任务的归因目标(`Req_ID` 或 `Problem_ID`)
|
|
16
|
-
- 若为 medium/complex:已通过 `$ws-plan` / `$ws-plan-verify` 的计划
|
|
17
|
-
- 当前 `change/<change-id>` 上下文或等价变更归因
|
|
18
|
-
|
|
19
|
-
## 必需输出
|
|
20
|
-
|
|
21
|
-
- `变更文件(Changed):` 实际改动清单
|
|
22
|
-
- `验证(Verify):` 实际运行的命令与结果说明
|
|
23
|
-
- `证据(Evidence):` `plan/...`、`.aiws/changes/<change-id>/...`、`.aiws/tmp/...` 等证据路径
|
|
24
|
-
- `Next:` 若准备提交,建议 `$ws-review` 或 `$ws-commit`
|
|
25
|
-
|
|
26
|
-
## 阻断条件
|
|
27
|
-
|
|
28
|
-
- 无法把改动归因到 `REQUIREMENTS.md` 或问题单
|
|
29
|
-
- 没有可复现验证入口
|
|
30
|
-
- 需要创建 change 上下文但当前工作区状态不允许安全切换
|
|
31
|
-
|
|
32
|
-
## 完成判定
|
|
33
|
-
|
|
34
|
-
改动已落盘、验证已执行或明确未执行原因、证据路径可回放,并可进入 review/commit 阶段。
|
|
35
|
-
|
|
36
|
-
## 建议流程
|
|
37
|
-
|
|
38
|
-
### 1. Preflight
|
|
39
|
-
|
|
40
|
-
定位项目根目录(submodule 感知:若在 submodule 内自动上溯到 superproject 根),读取 `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`,输出约束摘要。
|
|
41
|
-
|
|
42
|
-
- 中大型任务:建议先用 `$ws-plan` 生成 `plan/` 工件。
|
|
43
|
-
- 已有计划:先 `$ws-plan-verify`,通过后进入实现。
|
|
44
|
-
- `$ws-plan` 已创建 worktree:直接在该 worktree 中继续。
|
|
45
|
-
|
|
46
|
-
### 1.5 Design Gate(入口检查)
|
|
47
|
-
|
|
48
|
-
在进入实现前,先验证绑定工件是否完整:
|
|
49
|
-
|
|
50
|
-
- 若计划或实际改动超过 2 个文件:**必须**检查 `.aiws/changes/<change-id>/` 下是否存在 `proposal.md` 和 `tasks.md`
|
|
51
|
-
- 若缺失:**阻断**并输出信息 `Design Gate: proposal.md and tasks.md required for multi-file implementations. Run $ws-plan first.`
|
|
52
|
-
- 若为单文件/小改动(≤2 文件):此检查为 advisory 级别,缺失仅在输出中提示但不阻断
|
|
53
|
-
- Design Gate 检查结果需记录在输出中,作为实现入口证据
|
|
54
|
-
|
|
55
|
-
Design Gate 通过后,继续进入变更归因与实现。
|
|
56
|
-
|
|
57
|
-
### 2. 建立变更归因
|
|
58
|
-
|
|
59
|
-
- 若 `git status --porcelain` 仅有计划/工件文件,属于预期行为,继续即可。
|
|
60
|
-
- 若需创建新 change:`aiws change start <change-id> --hooks --no-switch`
|
|
61
|
-
- 若需切换分支:先确认无额外未提交改动,再 `git switch change/<change-id>`
|
|
62
|
-
- 若存在 submodule(`.gitmodules`):进入编码前必须准备好 `.aiws/changes/<change-id>/submodules.targets`。`aiws change start` 的 `--submodules` 标志会自动处理。参考 `changes/README.md` 和 `.aiws/changes/<change-id>/submodules.targets` 格式。
|
|
63
|
-
|
|
64
|
-
### 3. 实现策略:默认 dispatch aiws-worker(Subagent-First)
|
|
65
|
-
|
|
66
|
-
详细执行循环见 `packages/spec/docs/opencode-subagent-first.md`。
|
|
67
|
-
|
|
68
|
-
- 主 session **默认不直接写实现代码**;通过 `$ws-delegate` 派发 `aiws-worker`
|
|
69
|
-
- `task()` 调用中指定 `role: worker`,让 `aiws-inject-context` 插件自动注入 JSONL 上下文
|
|
70
|
-
- worker 返回后,派发 `aiws-reviewer` 做独立审查
|
|
71
|
-
- 根据 review 结果决定 fix 或收敛 evidence
|
|
72
|
-
- **Inline escape hatch**:如果用户明确说"你直接改"或"do it inline",主 session 可直接写代码,但必须落盘 evidence 记录理由
|
|
73
|
-
|
|
74
|
-
### 3.1 自我修正循环(evaluate-optimize)
|
|
75
|
-
|
|
76
|
-
收到 sub-agent 或自行产出实现后,执行自我修正循环:
|
|
77
|
-
|
|
78
|
-
1. **Evaluate** — 检查实现质量:
|
|
79
|
-
- lint / typecheck 是否通过
|
|
80
|
-
- 是否遵循现有代码模式(文件结构、命名约定、错误处理风格)
|
|
81
|
-
- 是否有明显 bug 或边界缺失
|
|
82
|
-
2. **Optimize** — 修复发现的问题(最多 2 轮)
|
|
83
|
-
- 每轮修复后重新 evaluate
|
|
84
|
-
- 若 2 轮后仍有问题 → escalate 到 `$ws-review`
|
|
85
|
-
3. **TDD 优先** — 对于中大型改动,优先按 RED→GREEN→REFACTOR 顺序:
|
|
86
|
-
- RED:先写一个会失败的测试
|
|
87
|
-
- GREEN:实现最小代码让测试通过
|
|
88
|
-
- REFACTOR:在测试保护下重构
|
|
89
|
-
|
|
90
|
-
注意:TDD 在简单修复时不强制,但对新增功能/中等以上复杂度变更建议遵循。
|
|
91
|
-
|
|
92
|
-
### 4. 其他规则
|
|
93
|
-
|
|
94
|
-
- 需求调整:先 `$ws-req-review` → 确认后 `$ws-req-change`
|
|
95
|
-
- **TDD 约束**:新增功能必须补测试(RED→GREEN→REFACTOR);bug fix 至少补一条回归测试
|
|
96
|
-
- 最小改动:每处改动必须归因到 `REQUIREMENTS.md` 或 `issues/problem-issues.csv`
|
|
97
|
-
- 验证:运行 `AI_WORKSPACE.md` 声明的命令;未运行不声称已运行
|
|
98
|
-
- 多步任务:使用 `update_plan` 工具跟踪状态
|
|
99
|
-
- 提交前门禁:
|
|
100
|
-
```bash
|
|
101
|
-
aiws validate .
|
|
102
|
-
```
|
|
103
|
-
- 交付收尾:`$ws-finish`
|
|
104
|
-
|
|
105
|
-
## 输出要求
|
|
106
|
-
|
|
107
|
-
- `变更文件(Changed):` 文件清单
|
|
108
|
-
- `验证(Verify):` 实际运行的命令 + 期望结果
|
|
109
|
-
- `证据(Evidence):` 证据路径
|
|
@@ -1,58 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-dev-lite
|
|
3
|
-
description: 轻量开发(simple/local 单点修复;最小改动 + 最小验证)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
目标:在不引入完整重流程的前提下,完成一次 simple/local 小问题修复,并保持可验证、可追溯。
|
|
9
|
-
|
|
10
|
-
定位:
|
|
11
|
-
- `ws-dev` 的轻量入口,不是新的 workflow stage。
|
|
12
|
-
- 适用于单点修复、局部配置调整、明确回归修复;不适用于中大型任务。
|
|
13
|
-
|
|
14
|
-
适用前提:
|
|
15
|
-
- 目标明确,且能归因到 `Req_ID` 或 `Problem_ID`
|
|
16
|
-
- 验证入口明确,且能做最小可复现验证
|
|
17
|
-
- 一般只影响单文件或紧密相关的小范围文件
|
|
18
|
-
- 不需要先改 `REQUIREMENTS.md`,也不需要先单独做 review
|
|
19
|
-
|
|
20
|
-
立即升级回主流程的情形:
|
|
21
|
-
- 发现任务其实是 medium/complex、跨模块、跨目录或需要方案设计
|
|
22
|
-
- 无法明确归因、verify、change 上下文
|
|
23
|
-
- 需要新建复杂 change/worktree 或处理 submodule 目标分支真值
|
|
24
|
-
- 修复过程中出现连锁改动、需要补系统性测试或需求调整
|
|
25
|
-
|
|
26
|
-
默认约束:
|
|
27
|
-
- 先做 `$ws-preflight`
|
|
28
|
-
- 默认不创建 `plan/...`
|
|
29
|
-
- 默认不跑 `$ws-plan-verify`
|
|
30
|
-
- 默认不要求先做双 review
|
|
31
|
-
- 若后续准备提交/交付,仍需进入 `$ws-review` / `$ws-commit` / `$ws-finish`
|
|
32
|
-
|
|
33
|
-
执行步骤:
|
|
34
|
-
1) 先读取 `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`,输出约束摘要。
|
|
35
|
-
2) 先判断自己是否真的属于 lite:
|
|
36
|
-
- 用一句话写清 `Goal`
|
|
37
|
-
- 用一句话写清 `Why lite`
|
|
38
|
-
- 若说不清,立刻回退到 `$ws-dev` 或 `$ws-plan`
|
|
39
|
-
3) 在当前 change 上下文内实施最小改动:
|
|
40
|
-
- 不为“形式完整”额外扩 scope
|
|
41
|
-
- 不默认补与本问题无关的重构或测试矩阵
|
|
42
|
-
4) 运行最小可复现验证:
|
|
43
|
-
- 优先使用 `AI_WORKSPACE.md` 已声明的命令
|
|
44
|
-
- 若只需局部回归,允许运行更窄的验证,但要说明为什么足够
|
|
45
|
-
5) 留下至少一个可追溯证据:
|
|
46
|
-
- 实际改动文件
|
|
47
|
-
- 或 `.aiws/tmp/...`
|
|
48
|
-
- 或 `.aiws/changes/<change-id>/...`
|
|
49
|
-
6) 输出:
|
|
50
|
-
- `变更文件(Changed):`
|
|
51
|
-
- `验证(Verify):`
|
|
52
|
-
- `证据(Evidence):`
|
|
53
|
-
- `Next:` 若准备提交,进入 `$ws-review` 或 `$ws-commit`
|
|
54
|
-
|
|
55
|
-
输出要求:
|
|
56
|
-
- 明确说明为什么这是 lite,而不是完整 `ws-dev`
|
|
57
|
-
- 未运行不声称已运行
|
|
58
|
-
- 一旦发现复杂度升高,立刻停止 lite 叙事,切回 `$ws-dev` 或 `$ws-plan`
|
|
@@ -1,22 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-finish
|
|
3
|
-
description: `aiws finish` 的收尾入口(finish_resume_required)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ws-finish
|
|
7
|
-
|
|
8
|
-
`aiws finish` 的收尾入口。
|
|
9
|
-
|
|
10
|
-
关键契约:
|
|
11
|
-
- 若 `aiws change status <change-id>` 输出 `governance_rule: finish_resume_required`,继续执行 `aiws change finish <change-id> --push`
|
|
12
|
-
- 普通 finish 的 `validate/evidence/state` 仍应在 `change/<change-id>` worktree 完成,不要在目标 worktree 里跑 `aiws validate . --stamp`
|
|
13
|
-
|
|
14
|
-
```bash
|
|
15
|
-
if [[ -x "./node_modules/.bin/aiws" ]]; then
|
|
16
|
-
./node_modules/.bin/aiws finish
|
|
17
|
-
elif command -v aiws >/dev/null 2>&1; then
|
|
18
|
-
aiws finish
|
|
19
|
-
else
|
|
20
|
-
npx @aipper/aiws finish
|
|
21
|
-
fi
|
|
22
|
-
```
|
|
@@ -1,126 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-frontend-design
|
|
3
|
-
description: 前端设计实现(用于视觉型 landing page / 网站 / 应用界面 / demo / prototype;强调构图、层级、图像、动效与克制,不做通用卡片墙)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
目标:
|
|
9
|
-
- 在 AIWS 约束下交付一个可运行、可验证、视觉方向明确的前端界面
|
|
10
|
-
- 先做信息层级与构图,再做组件细节;避免“先堆卡片再补样式”
|
|
11
|
-
- 在品牌页与产品页之间做正确取舍:品牌页重视觉锚点,产品页重可操作性
|
|
12
|
-
|
|
13
|
-
非目标(强制):
|
|
14
|
-
- 不绕过 `$ws-preflight`、`REQUIREMENTS.md`、`AI_WORKSPACE.md`
|
|
15
|
-
- 不因为“追求设计感”而重写无关页面、改动无关设计系统或新增大面积依赖
|
|
16
|
-
- 不默认把已有产品后台改成营销页;dashboard / admin / workspace 优先 utility copy
|
|
17
|
-
- 不把 prompt 语言、设计说明、占位废话直接写进 UI
|
|
18
|
-
|
|
19
|
-
适用场景:
|
|
20
|
-
- 用户要做 landing page、品牌站、活动页、marketing 页面、demo、prototype、game UI
|
|
21
|
-
- 用户要把现有前端界面做成“视觉主导、层级清晰、记忆点强”的版本
|
|
22
|
-
- 用户明确要求美化、重做、提质、增强 art direction / hierarchy / motion
|
|
23
|
-
|
|
24
|
-
前置(建议顺序):
|
|
25
|
-
1) 先运行 `$ws-preflight`。
|
|
26
|
-
2) 判断任务类型(必须选一个):
|
|
27
|
-
- `landing`:品牌/营销/活动页
|
|
28
|
-
- `app-ui`:dashboard / admin / workspace / 工具界面
|
|
29
|
-
- `polish-only`:不改信息架构,只做视觉提质
|
|
30
|
-
3) 判断设计边界(必须说明):
|
|
31
|
-
- `net-new`:全新页面,可建立完整视觉语言
|
|
32
|
-
- `existing-system`:已有设计系统/品牌规范,优先复用
|
|
33
|
-
4) 若任务达到 medium / complex:先用 `$ws-plan` 落盘计划,再进入实现。
|
|
34
|
-
|
|
35
|
-
开始编码前,先写三项(不要跳过):
|
|
36
|
-
- `Visual thesis:` 一句话写清 mood / material / energy
|
|
37
|
-
- `Content plan:` `hero -> support -> detail -> final CTA`(若是 app-ui,则改为 `workspace -> nav -> context -> action`)
|
|
38
|
-
- `Interaction thesis:` 2-3 个动效想法;说明它们如何改善层级/氛围/可感知性
|
|
39
|
-
|
|
40
|
-
设计默认值:
|
|
41
|
-
- 从构图开始,不从组件库开始
|
|
42
|
-
- 第一屏优先做成海报感(poster),不是文档感(document)
|
|
43
|
-
- 默认先找一个强视觉锚点:大图、主视觉平面、关键产品画面、主数据工作区
|
|
44
|
-
- 默认不做卡片墙;优先 section、column、divider、media block、list、plain layout
|
|
45
|
-
- 默认最多两套字体、一种强调色;若已有品牌系统,优先跟随现有 token
|
|
46
|
-
- 优先靠留白、尺度、裁切、对比、对齐建立层级,再考虑装饰
|
|
47
|
-
|
|
48
|
-
landing 规则:
|
|
49
|
-
1) 默认结构:
|
|
50
|
-
- Hero:品牌/产品名、承诺、CTA、一个主视觉
|
|
51
|
-
- Support:一个具体能力 / 证明点 / offer
|
|
52
|
-
- Detail:氛围、流程、产品深度或故事
|
|
53
|
-
- Final CTA:开始、注册、联系、访问
|
|
54
|
-
2) Hero 强约束:
|
|
55
|
-
- 一个 section 只承载一个 dominant idea
|
|
56
|
-
- 默认使用 full-bleed hero;只有内层文字列需要约束宽度
|
|
57
|
-
- 品牌名优先级高于 headline;headline 高于 body;body 高于 CTA
|
|
58
|
-
- 默认不要 hero cards、stat strips、logo clouds、pill soup、floating dashboards
|
|
59
|
-
- headline 在 desktop 约 2-3 行;mobile 一眼读完
|
|
60
|
-
- 若有固定 header,它占用首屏预算;不要让 header + hero 超出初始 viewport
|
|
61
|
-
- 若去掉主视觉后首屏仍几乎成立,说明图像太弱
|
|
62
|
-
|
|
63
|
-
app-ui 规则:
|
|
64
|
-
- 默认偏克制:少颜色、少 chrome、清晰栅格、密度适中、信息可扫读
|
|
65
|
-
- 优先组织为:`primary workspace -> navigation -> secondary context/inspector -> action`
|
|
66
|
-
- 只有当 card 本身就是交互容器时才用 card;否则尽量改回 plain layout
|
|
67
|
-
- 不要把 routine product UI 做成营销落地页
|
|
68
|
-
- 文案优先 orientation / status / action:
|
|
69
|
-
- 好例子:`Selected KPIs`、`Plan status`、`Last sync`
|
|
70
|
-
- 差例子:首页口号、情绪化隐喻、执行摘要横幅
|
|
71
|
-
|
|
72
|
-
图像与媒体:
|
|
73
|
-
- 图像必须承担叙事任务,不能只是补背景
|
|
74
|
-
- 品牌页/空间页/生活方式产品优先真实感强的图,而不是抽象 3D / 假 dashboard
|
|
75
|
-
- 选图时优先有稳定明暗区,便于文字落位
|
|
76
|
-
- 避免图里自带抢戏的 logo、signage、碎字、边框 UI
|
|
77
|
-
- 若需要多个场景,优先多张图,不要拼贴大杂烩
|
|
78
|
-
|
|
79
|
-
文案:
|
|
80
|
-
- 用产品语言,不用设计评论语言
|
|
81
|
-
- headline 负责主要意义;supporting copy 通常一句话够了
|
|
82
|
-
- 每个 section 只负责一件事:explain / prove / deepen / convert
|
|
83
|
-
- 如果删掉 30% 文案后更清楚,就继续删
|
|
84
|
-
|
|
85
|
-
动效:
|
|
86
|
-
- 视觉型页面至少给 2-3 个“有感但克制”的动效:
|
|
87
|
-
- 一个 hero 入场序列
|
|
88
|
-
- 一个 scroll-linked / sticky / depth 效果
|
|
89
|
-
- 一个 hover / reveal / layout transition
|
|
90
|
-
- 动效必须改善层级或氛围,不能只是热闹
|
|
91
|
-
- 要兼顾 mobile 流畅度;支持 `prefers-reduced-motion`
|
|
92
|
-
|
|
93
|
-
工程约束(强制):
|
|
94
|
-
- 先读现有代码,再决定是否沿用已有 design tokens / 组件 / 动效库
|
|
95
|
-
- `existing-system` 场景下,优先复用已有视觉语言;不要无故“整站改头换面”
|
|
96
|
-
- 不新增字体、图片资源、动画库、运行时依赖,除非明确写出原因、来源、license/成本与回滚方式
|
|
97
|
-
- 所有文字覆盖在图像上时,必须保证对比度与点击区域可用
|
|
98
|
-
- 必须同时考虑 desktop / mobile;不要只调一个 viewport
|
|
99
|
-
- 未运行不声称已运行;验证命令优先引用 `AI_WORKSPACE.md`
|
|
100
|
-
|
|
101
|
-
硬规则:
|
|
102
|
-
- No cards by default
|
|
103
|
-
- No hero cards by default
|
|
104
|
-
- No generic SaaS card grid as first impression
|
|
105
|
-
- No more than one dominant idea per section
|
|
106
|
-
- No more than two typefaces without a clear reason
|
|
107
|
-
- No more than one accent color unless the existing product already has a strong system
|
|
108
|
-
- No decorative gradients behind routine product UI
|
|
109
|
-
- No busy imagery behind text
|
|
110
|
-
- No filler copy
|
|
111
|
-
|
|
112
|
-
实现检查(交付前自检):
|
|
113
|
-
- 第一屏能否一眼看出品牌/产品是什么
|
|
114
|
-
- 是否存在一个明确视觉锚点
|
|
115
|
-
- 只扫标题是否能理解页面
|
|
116
|
-
- 每个 section 是否只有一个职责
|
|
117
|
-
- card 是否真有必要
|
|
118
|
-
- 动效是否真的提升层级/氛围
|
|
119
|
-
- 去掉装饰阴影后,页面是否仍然成立
|
|
120
|
-
|
|
121
|
-
输出要求:
|
|
122
|
-
- `Mode:` `landing | app-ui | polish-only`
|
|
123
|
-
- `Visual thesis:` 一句话
|
|
124
|
-
- `Changed:` 改动文件清单
|
|
125
|
-
- `Verify:` 实际运行命令 + 预期结果
|
|
126
|
-
- `Evidence:` 相关 `plan/...`、`.aiws/changes/<change-id>/...` 或截图/审计路径
|
|
@@ -1,89 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-goal
|
|
3
|
-
description: 目标协议:设定可审计的 goal 目标并执行完成闭环(基于 ws-goal-contract.md)
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
用中文输出(命令/路径/代码标识符保持原样不翻译)。
|
|
7
|
-
|
|
8
|
-
## 目标
|
|
9
|
-
|
|
10
|
-
在 AIWS 约束下完成一个目标导向的自主执行闭环。基于 `packages/spec/docs/ws-goal-contract.md` 协议。
|
|
11
|
-
|
|
12
|
-
## 前置条件(Pre-requisites)
|
|
13
|
-
|
|
14
|
-
- `AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md` 已对齐
|
|
15
|
-
- 当前工作区状态已知(clean / dirty / change 上下文)
|
|
16
|
-
|
|
17
|
-
## 流程(Flow)
|
|
18
|
-
|
|
19
|
-
0. 检查 `.aiws/goals/` 目录:
|
|
20
|
-
a) 若用户仅查询状态(无明确目标),列出所有 goal 文件及其 status 字段,然后结束。
|
|
21
|
-
b) 若存在 status=active 或 status=paused 的 goal 文件,优先读取并恢复执行,不再新建 goal。
|
|
22
|
-
1. 读取真值文件(`AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`),输出约束摘要,包括项目边界、验收标准入口和运行/测试方式。
|
|
23
|
-
2. 接受用户输入的 goal objective(自然语言),将其转化为结构化目标描述。
|
|
24
|
-
3. 按 ws-goal-contract.md 的 6 要素格式将目标写入文件:
|
|
25
|
-
- 文件路径:`.aiws/goals/<goal-id>.md`
|
|
26
|
-
- 6 要素:Objective(目标描述)/ Success Criteria(验收标准)/ Constraints(约束边界)/ Inputs(输入依赖)/ Outputs(产出物)/ Audit Trail(审计轨迹)
|
|
27
|
-
4. 输出 completion audit checklist,要求用户确认验收标准是否完整、可测量。
|
|
28
|
-
5. **Scope Assessment + 路由**:评估目标复杂度,自动选择执行路径:
|
|
29
|
-
a) 简单(≤5 文件、配置/doc/规范为主、低风险)→ 直行:后续步骤 6-8 auto-finish 闭环
|
|
30
|
-
b) 复杂(多模块、代码改动 >5 文件、架构/安全/迁移风险)→ 自动执行 `ws-plan` 启动 change 流水线(ws-plan → ws-dev → review → ws-commit → ws-finish),完成后更新 goal status=complete
|
|
31
|
-
c) 路由决策记入 goal 文件 Audit Trail
|
|
32
|
-
6. 建议续跑方式:简单路径继续直行;复杂路径进入 change 流水线后建议 `ws-dev`
|
|
33
|
-
7. 每轮结束后:要求用户或系统执行 completion audit(参考 ws-goal-contract.md 8 步法),确认目标是否达成或需要调整。
|
|
34
|
-
8. **Goal 自动闭环**:completion audit 确认达成后自动执行:
|
|
35
|
-
a) Review 检查(按改动类型):
|
|
36
|
-
- 配置/文档/规范类(markdown):内容一致性、引用完整性、内容正确性、无 secrets、格式统一
|
|
37
|
-
- 代码类(ts/js/py 等):lint/typecheck 通过、符合现有代码模式、无 secrets、测试通过或覆盖缺口已记录
|
|
38
|
-
- 混合类:以上两种合并
|
|
39
|
-
b) 简单路径:`git add` 目标产出文件 → `git commit -m "goal(<goal-id>): <objective 摘要>"` → `git push` → 更新 goal status=complete
|
|
40
|
-
c) 复杂路径:走 `ws-commit` → `ws-finish` → archive change → 更新 goal status=complete
|
|
41
|
-
d) 不通过:记录 blocker → 继续 fix 循环
|
|
42
|
-
|
|
43
|
-
## 约束(Constraints)
|
|
44
|
-
|
|
45
|
-
- 不修改现有 ws-* / p-aiws-* 入口,保持已有入口稳定
|
|
46
|
-
- 不写入任何 secrets(token、账号、内网端点等不得进入 git)
|
|
47
|
-
- 未运行验证不声称已完成;验证命令需可复现且预期结果明确
|
|
48
|
-
- Budget tracking 依赖工具自身能力(aiws 只定义协议,不实现预算跟踪)
|
|
49
|
-
|
|
50
|
-
## 阶段定位
|
|
51
|
-
|
|
52
|
-
- goal 阶段;负责将用户模糊目标收敛为结构化 audit trail,并引导闭环执行。
|
|
53
|
-
|
|
54
|
-
## 必需输入
|
|
55
|
-
|
|
56
|
-
- 当前任务描述(goal objective,自然语言)
|
|
57
|
-
- 真值文件:`AI_PROJECT.md` / `REQUIREMENTS.md` / `AI_WORKSPACE.md`
|
|
58
|
-
- 若已存在:`.aiws/changes/<change-id>/` 上下文
|
|
59
|
-
|
|
60
|
-
## 必需输出
|
|
61
|
-
|
|
62
|
-
- `Goal file:` 实际写入的目标文件路径
|
|
63
|
-
- `Audit checklist:` 验收标准清单
|
|
64
|
-
- `Next:` 建议的续跑方式
|
|
65
|
-
|
|
66
|
-
## 阻断条件
|
|
67
|
-
|
|
68
|
-
- 真值文件未对齐(缺失或内容不完整)
|
|
69
|
-
- 用户 goal objective 含义模糊,无法转化为 6 要素格式
|
|
70
|
-
- 无法将目标文件实际写入磁盘
|
|
71
|
-
|
|
72
|
-
## 完成判定
|
|
73
|
-
|
|
74
|
-
- 目标已按 6 要素格式写盘
|
|
75
|
-
- 验收标准已得到用户确认
|
|
76
|
-
- 续跑方式已明确
|
|
77
|
-
|
|
78
|
-
## 参考文献
|
|
79
|
-
|
|
80
|
-
- `packages/spec/docs/ws-goal-contract.md` — 目标协议完整定义
|
|
81
|
-
- `AI_PROJECT.md` — 项目规则与边界
|
|
82
|
-
- `REQUIREMENTS.md` — 需求与验收真值
|
|
83
|
-
- `AI_WORKSPACE.md` — 运行与测试入口真值
|
|
84
|
-
|
|
85
|
-
## 输出要求
|
|
86
|
-
|
|
87
|
-
- `Goal file:` <实际写入的路径>
|
|
88
|
-
- `Audit checklist:` <验收标准清单>
|
|
89
|
-
- `Next:` <推荐下一步:Ralph Loop / manual iteration / 其他>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: ws-handoff
|
|
3
|
-
description: `aiws handoff` 的薄包装入口
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# ws-handoff
|
|
7
|
-
|
|
8
|
-
`aiws handoff` 的薄包装入口。
|
|
9
|
-
|
|
10
|
-
```bash
|
|
11
|
-
if [[ -x "./node_modules/.bin/aiws" ]]; then
|
|
12
|
-
./node_modules/.bin/aiws handoff
|
|
13
|
-
elif command -v aiws >/dev/null 2>&1; then
|
|
14
|
-
aiws handoff
|
|
15
|
-
else
|
|
16
|
-
npx @aipper/aiws handoff
|
|
17
|
-
fi
|
|
18
|
-
```
|