create-harness-vibe-coding 0.8.7 → 0.8.9
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 +163 -105
- package/README.md +179 -244
- package/bin/create-harness-vibe-coding.js +2 -2
- package/docs/images/harness-architecture-light.png +0 -0
- package/docs/images/harness-architecture.drawio +164 -0
- package/docs/images/harness-icon.png +0 -0
- package/package.json +47 -44
- package/src/generator.js +41 -5
- package/src/index.js +86 -13
- package/src/prompts.js +37 -37
- package/templates/common/.claude/agents/architect-manager.md +45 -45
- package/templates/common/.claude/agents/architect.md +31 -31
- package/templates/common/.claude/agents/codebase-explorer.md +45 -0
- package/templates/common/.claude/agents/context-master.md +75 -75
- package/templates/common/.claude/agents/debugger.md +41 -41
- package/templates/common/.claude/agents/docs-researcher.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 +82 -64
- 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/reviewer.md +34 -34
- package/templates/common/.claude/agents/task-scribe.md +70 -0
- package/templates/common/.claude/agents/verifier.md +29 -29
- package/templates/common/.claude/commands/wf-help.md +9 -5
- package/templates/common/.claude/commands/wf-update.md +24 -0
- package/templates/common/.claude/rules/ecc/common.md +57 -44
- package/templates/common/.claude/settings.json +13 -0
- package/templates/common/.claude/skills/subagent-orchestrator/SKILL.md +8 -4
- package/templates/common/.claude/skills/wf/SKILL.md +15 -8
- package/templates/common/.claude/skills/wf-auto/SKILL.md +10 -7
- package/templates/common/.claude/skills/wf-learn/SKILL.md +9 -2
- package/templates/common/.claude/skills/wf-max/SKILL.md +23 -5
- package/templates/common/.claude/skills/wf-readme/SKILL.md +49 -49
- package/templates/common/.claude/skills/wf-remove/SKILL.md +7 -7
- package/templates/common/.claude/skills/wf-update/SKILL.md +15 -2
- package/templates/common/.codex/hooks.json +17 -0
- package/templates/common/.harness-version +130 -45
- package/templates/common/.opencode/agents/architect-manager.md +52 -0
- package/templates/common/.opencode/agents/architect.md +35 -0
- package/templates/common/.opencode/agents/codebase-explorer.md +45 -0
- package/templates/common/.opencode/agents/context-master.md +81 -0
- package/templates/common/.opencode/agents/debugger.md +43 -0
- package/templates/common/.opencode/agents/docs-researcher.md +42 -0
- package/templates/common/.opencode/agents/explore-manager.md +49 -0
- package/templates/common/.opencode/agents/implement-manager.md +56 -0
- package/templates/common/.opencode/agents/implementer.md +42 -0
- package/templates/common/.opencode/agents/memory-master.md +88 -0
- package/templates/common/.opencode/agents/planner.md +38 -0
- package/templates/common/.opencode/agents/reflector.md +39 -0
- package/templates/common/.opencode/agents/researcher.md +42 -0
- package/templates/common/.opencode/agents/review-manager.md +63 -0
- package/templates/common/.opencode/agents/reviewer.md +37 -0
- package/templates/common/.opencode/agents/task-scribe.md +70 -0
- package/templates/common/.opencode/agents/tdd-guide.md +83 -0
- package/templates/common/.opencode/agents/test-writer.md +54 -0
- package/templates/common/.opencode/agents/verifier.md +37 -0
- package/templates/common/.opencode/commands/wf-auto-spark.md +15 -0
- package/templates/common/.opencode/commands/wf-auto.md +15 -0
- package/templates/common/.opencode/commands/wf-help.md +27 -0
- package/templates/common/.opencode/commands/wf-learn.md +15 -0
- package/templates/common/.opencode/commands/wf-max.md +15 -0
- package/templates/common/.opencode/commands/wf-readme.md +15 -0
- package/templates/common/.opencode/commands/wf-remove.md +15 -0
- package/templates/common/.opencode/commands/wf-review.md +15 -0
- package/templates/common/.opencode/commands/wf-update.md +24 -0
- package/templates/common/.opencode/commands/wf.md +15 -0
- package/templates/common/.opencode/plugins/harness-wf-status.mjs +135 -0
- package/templates/common/AGENTS.md +2 -29
- package/templates/common/CLAUDE.md +114 -88
- package/templates/common/Harness/ACCEPTANCE_PROTOCOL.md +2 -2
- package/templates/common/{MEMORY.md → Harness/MEMORY.md} +17 -4
- package/templates/common/Harness/MEMORY_PROTOCOL.md +80 -30
- package/templates/common/Harness/PROGRESS.md +17 -17
- package/templates/common/Harness/README.md +58 -19
- package/templates/common/{SETUP.md → Harness/SETUP.md} +278 -276
- package/templates/common/Harness/TASK_ARCHIVE.md +56 -0
- package/templates/common/Harness/WF-AUTO-ANGLES.md +170 -0
- package/templates/common/Harness/WF-AUTO-SPARK.md +10 -19
- package/templates/common/Harness/WF-AUTO.md +93 -167
- package/templates/common/Harness/WF-KERNEL.md +189 -0
- package/templates/common/Harness/WF-MAX.md +60 -328
- package/templates/common/Harness/WF-STATE.md +83 -0
- package/templates/common/Harness/WF.md +117 -237
- package/templates/common/Harness/agent-workflow.md +2 -2
- package/templates/common/Harness/architecture.md +124 -124
- package/templates/common/Harness/context-loading.md +111 -111
- package/templates/common/Harness/dispatch.md +43 -35
- package/templates/common/Harness/extension.md +66 -66
- package/templates/common/Harness/lifecycle.md +20 -20
- package/templates/common/Harness/research/PRD.md +56 -56
- package/templates/common/Harness/research/README.md +169 -169
- package/templates/common/Harness/research/research-results.md +66 -66
- package/templates/common/Harness/scripts/archive-tasks.mjs +239 -0
- package/templates/common/{scripts → Harness/scripts}/scan-clean.mjs +443 -416
- package/templates/common/{scripts → Harness/scripts}/validate-harness.mjs +691 -452
- package/templates/common/Harness/scripts/wf-auto-update-prompt.mjs +258 -0
- package/templates/common/{scripts → Harness/scripts}/wf-remove.mjs +56 -39
- package/templates/common/{scripts → Harness/scripts}/wf-update-check.mjs +632 -599
- package/templates/common/Harness/subagents.md +215 -214
- package/templates/common/Harness/tasks/_template/ARTIFACTS.md +2 -2
- package/templates/common/Harness/tasks/_template/NOTES.md +2 -2
- package/templates/common/Harness/tasks/_template/PLAN.md +5 -0
- package/templates/common/Harness/tasks/_template/STATE.json +23 -0
- package/templates/common/README.md +37 -37
- package/templates/common/memory/agent-lessons-patterns.md +22 -21
- package/templates/common/memory/routes.md +43 -0
- package/templates/common/memory/startup-hints.md +32 -0
- package/templates/common/memory/tool-usage-reflections.md +22 -21
- package/templates/common/memory/user-corrections-preferences.md +23 -21
- package/templates/common/opencode.json +19 -0
- package/templates/optional/catalog.json +49 -33
- package/templates/optional/skills/browser-e2e/.claude/skills/browser-e2e/SKILL.md +42 -42
- package/templates/optional/skills/browser-e2e/.claude/skills/wf-browser/SKILL.md +193 -193
- package/templates/optional/skills/browser-e2e/.opencode/commands/wf-browser.md +15 -0
- package/templates/optional/skills/browser-e2e/Harness/workflows/browser-e2e.md +48 -48
- package/templates/optional/skills/github-pr-review/.claude/skills/github-pr-review/SKILL.md +40 -40
- package/templates/optional/skills/github-pr-review/Harness/workflows/github-pr-review.md +28 -28
- package/templates/optional/skills/python-backend/.claude/skills/python-backend/SKILL.md +40 -40
- package/templates/optional/skills/python-backend/Harness/workflows/python-backend.md +34 -34
- package/templates/optional/skills/ts-react-frontend/.claude/skills/ts-react-frontend/SKILL.md +43 -43
- package/templates/optional/skills/ts-react-frontend/Harness/workflows/ts-react-frontend.md +34 -34
- package/templates/optional/skills/ui-ux-review/.claude/skills/ui-ux-review/SKILL.md +40 -40
- package/templates/optional/skills/ui-ux-review/Harness/workflows/ui-ux-review.md +26 -26
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Memory Routes (L3 Route Index)
|
|
2
|
+
|
|
3
|
+
> L3 = 详细 durable memory 路由索引。不是详细 memory,而是命中规则索引。
|
|
4
|
+
> 详细 memory 文件按 scenario 匹配后按需加载。
|
|
5
|
+
|
|
6
|
+
| id | signals | load | avoid |
|
|
7
|
+
| --- | --- | --- | --- |
|
|
8
|
+
| explicit-user-preference | remember, next time, 下次, 记住, 不要再, never, always, I prefer | user-corrections-preferences.md | current-task-only notes, transient mood |
|
|
9
|
+
| hooks-only-wf-auto | hook, runtime hook, .claude/settings.json, .codex/hooks.json, WF-AUTO.md | agent-lessons-patterns.md#only-wf-auto-may-use-runtime-hooks | non-runtime docs, broad hook designs |
|
|
10
|
+
| tool-repeat-failure | same command fails 3x, error signature repeats | tool-usage-reflections.md | one-off command failures |
|
|
11
|
+
| review-debug-lesson | reusable review/debug/validation pattern | agent-lessons-patterns.md | task-specific logs |
|
|
12
|
+
| startup-digest | new session, startup | startup-hints.md | full MEMORY.md index |
|
|
13
|
+
| wf-closeout | /wf-learn, workflow closeout | all memory files via context-master -> memory-master | premature writes before extraction |
|
|
14
|
+
|
|
15
|
+
## Matching Algorithm
|
|
16
|
+
|
|
17
|
+
1. 把当前请求压缩成 **scenario pack**: intent / files / commands / signals / risk
|
|
18
|
+
2. 与上表 Signals 列匹配,计算 score:
|
|
19
|
+
- +4 exact file/path match
|
|
20
|
+
- +3 explicit trigger phrase match
|
|
21
|
+
- +3 command/error signature match
|
|
22
|
+
- +2 workflow/mode match
|
|
23
|
+
- +1 keyword overlap
|
|
24
|
+
- -4 avoid match
|
|
25
|
+
3. 阈值:
|
|
26
|
+
- score >= 5: 加载对应 memory entry/file section
|
|
27
|
+
- score 3-4: 只加载 route 摘要,必要时再读详细文件
|
|
28
|
+
- score < 3: 不加载
|
|
29
|
+
4. Hard trigger 优先:
|
|
30
|
+
- 用户显式记忆语句 -> user-corrections-preferences.md
|
|
31
|
+
- 同命令失败 3 次 -> tool-usage-reflections.md
|
|
32
|
+
- review/debug/validation 可复用 lesson -> agent-lessons-patterns.md
|
|
33
|
+
- 修改 hook 相关文件 -> 加载 only-wf-auto hook lesson
|
|
34
|
+
- /wf-learn -> 完整 learning cycle
|
|
35
|
+
|
|
36
|
+
## Load Logging
|
|
37
|
+
|
|
38
|
+
每次加载 memory hints 需说明原因:
|
|
39
|
+
```
|
|
40
|
+
memory hints loaded: <id> because <signal>
|
|
41
|
+
```
|
|
42
|
+
|
|
43
|
+
不使用 embedding;保持稳定、可解释、省 token。
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
# Startup Hints (L2 Memory Digest)
|
|
2
|
+
|
|
3
|
+
> L2 = 启动极简 memory digest。每次 Harness 会话启动可读此文件,但不要加载完整 Harness/MEMORY.md 或 Harness/README.md。
|
|
4
|
+
|
|
5
|
+
## Core Principles
|
|
6
|
+
|
|
7
|
+
- Memory 是短场景规则,不是 task log。
|
|
8
|
+
- 时间戳默认不要写;只有 superseded / conflict / time-sensitive 才写。
|
|
9
|
+
- Broad runtime hooks 禁止;只有 `/wf-auto` bounded tick hook 例外。
|
|
10
|
+
- Direct mode 不加载完整 Harness router,但 startup-hints 是允许的轻量启动提示。
|
|
11
|
+
- 详细 memory 仍按 `MEMORY_PROTOCOL.md` 场景命中后再读。
|
|
12
|
+
|
|
13
|
+
## Memory Candidate Detection
|
|
14
|
+
|
|
15
|
+
用户说以下触发词时,识别为 memory candidate:
|
|
16
|
+
|
|
17
|
+
**英文**: remember, next time, don't, do not, never, always, I prefer, I want you to
|
|
18
|
+
**中文**: 记住, 下次, 以后, 不要再, 总是, 永远不要, 我偏好, 我希望你以后
|
|
19
|
+
|
|
20
|
+
## When to Write Memory
|
|
21
|
+
|
|
22
|
+
- **Explicit user preference**: 清晰、安全、场景明确时,可立即写入 L3,不必等 `/wf-learn`。
|
|
23
|
+
- **Repeated implicit correction**: 同一假设/模式被纠正 2+ 次。
|
|
24
|
+
- **Tool/command failure**: 同类工具/命令失败 3+ 次。
|
|
25
|
+
- **Review/debug lesson**: 只有可复用、能防回归时才写。
|
|
26
|
+
|
|
27
|
+
## What NOT to Write
|
|
28
|
+
|
|
29
|
+
- Task log、过程总结、一次性情绪
|
|
30
|
+
- Raw logs、transcripts
|
|
31
|
+
- Secrets, tokens, credentials, private data
|
|
32
|
+
- 临时偏好、无复用价值的笔记
|
|
@@ -1,21 +1,22 @@
|
|
|
1
|
-
# Tool Usage Reflections
|
|
2
|
-
|
|
3
|
-
Purpose: record repeated tool failures, better command patterns, and environment-specific fixes.
|
|
4
|
-
|
|
5
|
-
Write here when:
|
|
6
|
-
- The same tool/use pattern fails 3+ times in one task or across repeated tasks.
|
|
7
|
-
- A more reliable command pattern replaces a brittle one.
|
|
8
|
-
- The environment needs a durable fix, flag, path rule, shell syntax, or startup sequence.
|
|
9
|
-
|
|
10
|
-
Entry format,
|
|
11
|
-
|
|
12
|
-
```markdown
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
# Tool Usage Reflections
|
|
2
|
+
|
|
3
|
+
Purpose: record repeated tool failures, better command patterns, and environment-specific fixes.
|
|
4
|
+
|
|
5
|
+
Write here when:
|
|
6
|
+
- The same tool/use pattern fails 3+ times in one task or across repeated tasks.
|
|
7
|
+
- A more reliable command pattern replaces a brittle one.
|
|
8
|
+
- The environment needs a durable fix, flag, path rule, shell syntax, or startup sequence.
|
|
9
|
+
|
|
10
|
+
Entry format (compact, default no date):
|
|
11
|
+
|
|
12
|
+
```markdown
|
|
13
|
+
- When <scenario>: <rule>. Avoid <over-application>. Signals: <signals>.
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
Only use date/timestamp headings when:
|
|
17
|
+
- Entry supersedes prior conflicting guidance
|
|
18
|
+
- Time-sensitive context (version, deprecation)
|
|
19
|
+
- Conflict resolution needed
|
|
20
|
+
|
|
21
|
+
Never record one-off command failures. Never store secrets, credentials, or private tokens.
|
|
22
|
+
- Entry supersedes prior conflicting guidance: add date stamp.
|
|
@@ -1,21 +1,23 @@
|
|
|
1
|
-
# User Corrections And Preferences
|
|
2
|
-
|
|
3
|
-
Purpose: record repeated user corrections, durable preferences, and common-sense course corrections.
|
|
4
|
-
|
|
5
|
-
Write here when:
|
|
6
|
-
- The user says "remember", "never", "next time", "always",
|
|
7
|
-
-
|
|
8
|
-
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
1
|
+
# User Corrections And Preferences
|
|
2
|
+
|
|
3
|
+
Purpose: record repeated user corrections, durable preferences, and common-sense course corrections.
|
|
4
|
+
|
|
5
|
+
Write here when:
|
|
6
|
+
- The user says "remember", "never", "next time", "always", "I prefer", "记住", "下次", "不要再" etc.
|
|
7
|
+
- Explicit, safe, scoped user preferences can be written immediately without `/wf-learn`.
|
|
8
|
+
- The user corrects the same assumption/pattern 2+ times.
|
|
9
|
+
- A correction changes how future work should be scoped, explained, verified, or handed off.
|
|
10
|
+
|
|
11
|
+
Entry format (compact, default no date):
|
|
12
|
+
|
|
13
|
+
```markdown
|
|
14
|
+
- When <scenario>: <rule>. Avoid <over-application>. Signals: <signals>.
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Only use date/timestamp headings when:
|
|
18
|
+
- Entry supersedes prior conflicting guidance
|
|
19
|
+
- Time-sensitive context (version, deprecation)
|
|
20
|
+
- Conflict resolution needed
|
|
21
|
+
|
|
22
|
+
Do not record ordinary chat, task logs, process summaries, one-time emotions, or transient preferences. If the preference is ambiguous, ask before writing it. Never store secrets.
|
|
23
|
+
- Entry supersedes prior conflicting guidance: add date stamp.
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://opencode.ai/config.json",
|
|
3
|
+
"instructions": [".claude/rules/ecc/common.md"],
|
|
4
|
+
"permission": {
|
|
5
|
+
"bash": {
|
|
6
|
+
"*": "ask",
|
|
7
|
+
"rm -rf *": "deny",
|
|
8
|
+
"sudo *": "deny",
|
|
9
|
+
"curl *": "deny",
|
|
10
|
+
"wget *": "deny"
|
|
11
|
+
},
|
|
12
|
+
"read": {
|
|
13
|
+
"**/.env*": "deny",
|
|
14
|
+
"**/secrets/**": "deny",
|
|
15
|
+
"**/*.key": "deny",
|
|
16
|
+
"**/*.pem": "deny"
|
|
17
|
+
}
|
|
18
|
+
}
|
|
19
|
+
}
|
|
@@ -1,41 +1,41 @@
|
|
|
1
|
-
{
|
|
2
|
-
"skills": [
|
|
3
|
-
{
|
|
1
|
+
{
|
|
2
|
+
"skills": [
|
|
3
|
+
{
|
|
4
4
|
"id": "browser-e2e",
|
|
5
5
|
"title": "Browser E2E",
|
|
6
6
|
"description": "Mandatory real-browser smoke workflow using Playwright, Chrome DevTools/CDP, or documented manual evidence.",
|
|
7
7
|
"files": ["skills/browser-e2e"],
|
|
8
8
|
"tags": ["e2e", "browser", "playwright", "cdp"]
|
|
9
|
-
},
|
|
10
|
-
{
|
|
11
|
-
"id": "ui-ux-review",
|
|
12
|
-
"title": "UI/UX Review",
|
|
13
|
-
"description": "Screenshot-driven responsive, accessibility, and visual polish review workflow.",
|
|
14
|
-
"files": ["skills/ui-ux-review"],
|
|
15
|
-
"tags": ["ui", "ux", "accessibility", "review"]
|
|
16
|
-
},
|
|
17
|
-
{
|
|
18
|
-
"id": "github-pr-review",
|
|
19
|
-
"title": "GitHub PR Review",
|
|
20
|
-
"description": "GitHub CLI based PR diff, checks, review findings, and CI evidence workflow.",
|
|
21
|
-
"files": ["skills/github-pr-review"],
|
|
22
|
-
"tags": ["github", "pr", "review", "ci"]
|
|
23
|
-
},
|
|
24
|
-
{
|
|
25
|
-
"id": "python-backend",
|
|
26
|
-
"title": "Python Backend",
|
|
27
|
-
"description": "Python backend workflow for FastAPI or similar APIs with unittest or pytest verification.",
|
|
28
|
-
"files": ["skills/python-backend"],
|
|
29
|
-
"tags": ["python", "fastapi", "unittest", "pytest", "api"]
|
|
30
|
-
},
|
|
31
|
-
{
|
|
32
|
-
"id": "ts-react-frontend",
|
|
33
|
-
"title": "TypeScript React Frontend",
|
|
34
|
-
"description": "TypeScript React workflow for typecheck, component tests, builds, and browser smoke.",
|
|
35
|
-
"files": ["skills/ts-react-frontend"],
|
|
36
|
-
"tags": ["typescript", "react", "vite", "frontend"]
|
|
37
|
-
}
|
|
38
|
-
],
|
|
9
|
+
},
|
|
10
|
+
{
|
|
11
|
+
"id": "ui-ux-review",
|
|
12
|
+
"title": "UI/UX Review",
|
|
13
|
+
"description": "Screenshot-driven responsive, accessibility, and visual polish review workflow.",
|
|
14
|
+
"files": ["skills/ui-ux-review"],
|
|
15
|
+
"tags": ["ui", "ux", "accessibility", "review"]
|
|
16
|
+
},
|
|
17
|
+
{
|
|
18
|
+
"id": "github-pr-review",
|
|
19
|
+
"title": "GitHub PR Review",
|
|
20
|
+
"description": "GitHub CLI based PR diff, checks, review findings, and CI evidence workflow.",
|
|
21
|
+
"files": ["skills/github-pr-review"],
|
|
22
|
+
"tags": ["github", "pr", "review", "ci"]
|
|
23
|
+
},
|
|
24
|
+
{
|
|
25
|
+
"id": "python-backend",
|
|
26
|
+
"title": "Python Backend",
|
|
27
|
+
"description": "Python backend workflow for FastAPI or similar APIs with unittest or pytest verification.",
|
|
28
|
+
"files": ["skills/python-backend"],
|
|
29
|
+
"tags": ["python", "fastapi", "unittest", "pytest", "api"]
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"id": "ts-react-frontend",
|
|
33
|
+
"title": "TypeScript React Frontend",
|
|
34
|
+
"description": "TypeScript React workflow for typecheck, component tests, builds, and browser smoke.",
|
|
35
|
+
"files": ["skills/ts-react-frontend"],
|
|
36
|
+
"tags": ["typescript", "react", "vite", "frontend"]
|
|
37
|
+
}
|
|
38
|
+
],
|
|
39
39
|
"presets": {
|
|
40
40
|
"web-app": ["ts-react-frontend", "browser-e2e", "ui-ux-review"],
|
|
41
41
|
"fullstack": ["ts-react-frontend", "python-backend", "browser-e2e", "github-pr-review"]
|
|
@@ -72,6 +72,22 @@
|
|
|
72
72
|
"installMode": "recommend-only",
|
|
73
73
|
"url": "https://github.com/colbymchenry/codegraph",
|
|
74
74
|
"tags": ["code graph", "architecture", "analysis"]
|
|
75
|
+
},
|
|
76
|
+
{
|
|
77
|
+
"id": "grill-me",
|
|
78
|
+
"title": "Grill Me",
|
|
79
|
+
"description": "External Matt Pocock skill for relentlessly interviewing a plan or design before implementation.",
|
|
80
|
+
"installMode": "recommend-only",
|
|
81
|
+
"url": "https://github.com/mattpocock/skills/tree/main/skills/productivity/grill-me",
|
|
82
|
+
"tags": ["planning", "design", "interview", "skills"]
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"id": "oh-my-openagent",
|
|
86
|
+
"title": "oh-my-openagent",
|
|
87
|
+
"description": "Community OpenCode plugin harness: curated agents (Sisyphus/Prometheus/Hephaestus), lifecycle hooks, hash-anchored edits, and Team Mode. For OpenCode and Codex CLI.",
|
|
88
|
+
"installMode": "recommend-only",
|
|
89
|
+
"url": "https://github.com/code-yeongyu/oh-my-openagent",
|
|
90
|
+
"tags": ["opencode", "agents", "harness", "ecosystem"]
|
|
75
91
|
}
|
|
76
92
|
]
|
|
77
93
|
}
|
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: browser-e2e
|
|
3
|
-
description: Mandatory real-browser smoke and end-to-end verification using Playwright, Chrome DevTools/CDP, or documented manual browser evidence.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Browser E2E
|
|
7
|
-
|
|
8
|
-
## When To Use
|
|
9
|
-
|
|
10
|
-
Use this skill when a change affects browser-visible behavior, navigation, forms, routing, layout, or client-side integration. Web/UI acceptance requires loading the app in a real browser before claiming the UI is done.
|
|
11
|
-
|
|
12
|
-
## Docs To Load
|
|
13
|
-
|
|
14
|
-
- `Harness/workflows/browser-e2e.md`
|
|
15
|
-
- `Harness/PROGRESS.md` and current task `tasks/<id>/PLAN.md`
|
|
16
|
-
- Existing project test, build, and run instructions.
|
|
17
|
-
|
|
18
|
-
## Required Inputs
|
|
19
|
-
|
|
20
|
-
- Target URL or command to start the app.
|
|
21
|
-
- User flows or pages to verify.
|
|
22
|
-
- Expected behavior and supported viewport/browser scope.
|
|
23
|
-
- Selector contract: stable accessible labels/roles and `data-testid` hooks for critical inputs, buttons, filters, rows, empty/error/loading states, and other targetable UI states.
|
|
24
|
-
|
|
25
|
-
## Allowed Writes
|
|
26
|
-
|
|
27
|
-
- Browser test files in the project's existing test locations.
|
|
28
|
-
- Evidence artifacts such as screenshots, traces, or reports in existing artifact folders.
|
|
29
|
-
- Notes in current task plan when the active task asks for plan tracking.
|
|
30
|
-
|
|
31
|
-
## Output Format
|
|
32
|
-
|
|
33
|
-
Return changed files, commands run, browser evidence paths, verified flows, failures, and follow-up risks.
|
|
34
|
-
Include the selectors used for CDP/Playwright/manual verification.
|
|
35
|
-
|
|
36
|
-
## PROGRESS.md & Task PLAN.md Updates
|
|
37
|
-
|
|
38
|
-
Update `Harness/tasks/<task-id>/PLAN.md` only when executing a tracked plan item or recording evidence requested by the current task.
|
|
39
|
-
|
|
40
|
-
## dispatch.md Usage
|
|
41
|
-
|
|
42
|
-
Use `Harness/dispatch.md` only when splitting independent browser checks across workers is explicitly useful.
|
|
1
|
+
---
|
|
2
|
+
name: browser-e2e
|
|
3
|
+
description: Mandatory real-browser smoke and end-to-end verification using Playwright, Chrome DevTools/CDP, or documented manual browser evidence.
|
|
4
|
+
---
|
|
5
|
+
|
|
6
|
+
# Browser E2E
|
|
7
|
+
|
|
8
|
+
## When To Use
|
|
9
|
+
|
|
10
|
+
Use this skill when a change affects browser-visible behavior, navigation, forms, routing, layout, or client-side integration. Web/UI acceptance requires loading the app in a real browser before claiming the UI is done.
|
|
11
|
+
|
|
12
|
+
## Docs To Load
|
|
13
|
+
|
|
14
|
+
- `Harness/workflows/browser-e2e.md`
|
|
15
|
+
- `Harness/PROGRESS.md` and current task `tasks/<id>/PLAN.md`
|
|
16
|
+
- Existing project test, build, and run instructions.
|
|
17
|
+
|
|
18
|
+
## Required Inputs
|
|
19
|
+
|
|
20
|
+
- Target URL or command to start the app.
|
|
21
|
+
- User flows or pages to verify.
|
|
22
|
+
- Expected behavior and supported viewport/browser scope.
|
|
23
|
+
- Selector contract: stable accessible labels/roles and `data-testid` hooks for critical inputs, buttons, filters, rows, empty/error/loading states, and other targetable UI states.
|
|
24
|
+
|
|
25
|
+
## Allowed Writes
|
|
26
|
+
|
|
27
|
+
- Browser test files in the project's existing test locations.
|
|
28
|
+
- Evidence artifacts such as screenshots, traces, or reports in existing artifact folders.
|
|
29
|
+
- Notes in current task plan when the active task asks for plan tracking.
|
|
30
|
+
|
|
31
|
+
## Output Format
|
|
32
|
+
|
|
33
|
+
Return changed files, commands run, browser evidence paths, verified flows, failures, and follow-up risks.
|
|
34
|
+
Include the selectors used for CDP/Playwright/manual verification.
|
|
35
|
+
|
|
36
|
+
## PROGRESS.md & Task PLAN.md Updates
|
|
37
|
+
|
|
38
|
+
Update `Harness/tasks/<task-id>/PLAN.md` only when executing a tracked plan item or recording evidence requested by the current task.
|
|
39
|
+
|
|
40
|
+
## dispatch.md Usage
|
|
41
|
+
|
|
42
|
+
Use `Harness/dispatch.md` only when splitting independent browser checks across workers is explicitly useful.
|