@plainconceptsplatform/agent-harness 2.4.1 → 2.5.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.md +435 -437
- package/cli/fragments/archive/az.md +97 -95
- package/cli/fragments/archive/gh.md +96 -94
- package/cli/fragments/archive/gl.md +96 -94
- package/cli/fragments/archive/none.md +75 -73
- package/cli/fragments/guardrails/codegraph.md +5 -7
- package/cli/fragments/guardrails/humanizer.md +4 -4
- package/cli/fragments/guardrails/memory.md +4 -4
- package/cli/fragments/guardrails/rtk.md +3 -3
- package/cli/fragments/guardrails/simple-english.md +4 -4
- package/cli/fragments/ops-backlog/az.md +1 -1
- package/cli/fragments/ops-backlog/gh.md +1 -1
- package/cli/fragments/ops-backlog/jira.md +1 -1
- package/cli/fragments/ops-evidence/az.md +44 -41
- package/cli/fragments/ops-evidence/gh.md +54 -53
- package/cli/fragments/ops-evidence/jira.md +42 -38
- package/cli/fragments/ops-review/az.md +1 -1
- package/cli/fragments/ops-review/gh.md +1 -1
- package/cli/fragments/ops-review/gl.md +1 -1
- package/cli/fragments/ops-ship/az.md +81 -80
- package/cli/fragments/ops-ship/gh.md +68 -68
- package/cli/fragments/ops-ship/gl.md +85 -85
- package/cli/presets/agents-content.json +34 -53
- package/cli/steps/copy/agents.js +18 -17
- package/cli/steps/copy/opencode-json.js +5 -1
- package/cli/steps/copy/skills.js +98 -5
- package/cli/steps/optimization/patch-guardrails.js +5 -3
- package/cli/utils/copy.js +8 -3
- package/cli/utils/update-manifest.js +28 -2
- package/harness/.agents/skills/pc-guardrails-generic/SKILL.md +47 -68
- package/harness/.agents/skills/pc-make-architecture/SKILL.md +31 -51
- package/harness/.agents/skills/pc-make-design/SKILL.md +45 -68
- package/harness/.agents/skills/pc-make-engineer/SKILL.md +59 -219
- package/harness/.agents/skills/pc-make-engineer/signal-mapping.md +53 -68
- package/harness/.agents/skills/pc-make-engineer/template.md +42 -80
- package/harness/.agents/skills/pc-make-evidence-scaffold/SKILL.md +18 -18
- package/harness/.agents/skills/pc-make-evidence-scaffold/evidence-contract.md +29 -29
- package/harness/.agents/skills/pc-make-guardrails/SKILL.md +43 -74
- package/harness/.agents/skills/pc-make-guardrails/category-reference.md +10 -5
- package/harness/.agents/skills/pc-make-merge-risk-assess/category-reference.md +26 -7
- package/harness/.agents/skills/pc-make-user-model/SKILL.md +56 -66
- package/harness/.agents/skills/pc-ops-evidence/SKILL.md +133 -127
- package/harness/.agents/skills/pc-plan-apply/SKILL.md +14 -5
- package/harness/.agents/skills/pc-plan-apply/simple-mode.md +21 -21
- package/harness/.agents/skills/pc-plan-archive/SKILL.md +66 -66
- package/harness/.agents/skills/pc-plan-explore/SKILL.md +19 -2
- package/harness/.agents/skills/pc-plan-goal/SKILL.md +7 -5
- package/harness/.agents/skills/pc-plan-goal/output-mode.md +1 -0
- package/harness/.agents/skills/pc-plan-goal/output.md +71 -65
- package/harness/.agents/skills/pc-plan-propose/SKILL.md +1 -1
- package/harness/.agents/skills/pc-plan-quick/SKILL.md +46 -62
- package/harness/.agents/skills/pc-plan-story/SKILL.md +48 -149
- package/harness/.agents/skills/pc-repo-help/SKILL.md +89 -91
- package/harness/.agents/skills/pc-repo-initialize/SKILL.md +112 -130
- package/harness/.agents/skills/pc-repo-onboard/SKILL.md +32 -87
- package/harness/.agents/skills/pc-repo-verify/SKILL.md +2 -0
- package/harness/.agents/skills/pc-userstory-az/SKILL.md +71 -157
- package/harness/.agents/skills/pc-userstory-browser/SKILL.md +50 -122
- package/harness/.agents/skills/pc-userstory-gh/SKILL.md +63 -120
- package/harness/.agents/skills/pc-userstory-jira/SKILL.md +74 -131
- package/harness/.opencode/commands/init.md +5 -5
- package/harness/.opencode/commands/make-architecture.md +5 -5
- package/harness/.opencode/commands/make-design.md +5 -5
- package/harness/.opencode/commands/make-engineer.md +5 -5
- package/harness/.opencode/commands/make-evidence-scaffold.md +5 -5
- package/harness/.opencode/commands/make-guardrails.md +5 -5
- package/harness/.opencode/commands/make-user-model.md +5 -5
- package/harness/.opencode/commands/plan-apply.md +9 -9
- package/harness/.opencode/commands/plan-goal.md +5 -5
- package/harness/.opencode/commands/plan-quick.md +5 -5
- package/harness/.opencode/commands/plan-story.md +9 -9
- package/harness/.opencode/commands/repo-audit.md +5 -5
- package/harness/.opencode/commands/repo-initialize.md +5 -5
- package/harness/.opencode/commands/repo-onboard.md +5 -5
- package/harness/.opencode/commands/repo-verify.md +5 -5
- package/harness/.opencode/plugins/pc-subagent-monitor.js +82 -2
- package/harness/.opencode/plugins/pc-subagent-tiers.js +9 -6
- package/harness/.opencode/plugins/pc-system-reminders.js +312 -3
- package/harness/AGENTS.md +49 -71
- package/harness/opencode.jsonc +1 -1
- package/package.json +1 -1
|
@@ -1,91 +1,89 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: pc-repo-help
|
|
3
|
-
description: The full command reference for this project - every /command with when to use it and the typical workflows. Load when the user asks for help, the command list, or at the end of repo initialization. Invoked by the /repo-help command and the repo-initialize flow.
|
|
4
|
-
license: MIT
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
# Repo Help
|
|
8
|
-
|
|
9
|
-
Display the following reference to the user exactly as written. Do not summarize.
|
|
10
|
-
|
|
11
|
-
## Commands
|
|
12
|
-
|
|
13
|
-
### Not sure where to start?
|
|
14
|
-
|
|
15
|
-
**`/init`** (alias: `/repo-initialize`): Initialize the project. Presents a single form with all setup questions (project type, history, architecture, design, evidence), then executes the selected steps.
|
|
16
|
-
|
|
17
|
-
**`/repo-onboard`**: Guided tour of the project and its agentic infrastructure. Explains agents, commands, skills, OpenSpec workflow, and configuration. Read-only: no files modified.
|
|
18
|
-
|
|
19
|
-
**`/repo-audit`**: Read-only health audit of every configured source root. Loads the fullstack engineer's abilities, checks guardrails, architecture, tooling, dependencies, lockfiles, tests, and CI, then reports prioritized findings.
|
|
20
|
-
|
|
21
|
-
**`/plan-explore`**: Your backlog is unclear, you have a half-formed idea, or you need to think through a problem before committing to a plan. This is a thinking partner, not an executor.
|
|
22
|
-
|
|
23
|
-
**`/plan-story <feature or need>`**: Write a detailed, repo-aware user story from a feature idea. Loads the `@user-story` skill (Mike Cohn format + Gherkin acceptance criteria), analyzes your codebase for concrete context, and produces a development-ready story with specific personas, real outcomes, and testable criteria grounded in your actual file paths, component names, and data models. No files written — just the story.
|
|
24
|
-
|
|
25
|
-
**`/plan-propose <url or idea>`**: You have a work item URL, or a clear idea and you want to turn it into a structured plan (proposal, specs, tasks). Enriches each task with the best matching agent and model before showing you the plan. Nothing is implemented until you confirm.
|
|
26
|
-
|
|
27
|
-
---
|
|
28
|
-
|
|
29
|
-
### Ready to implement?
|
|
30
|
-
|
|
31
|
-
**`/plan-quick <task>`**: Quick plan for focused changes. Reads the codebase, creates a task checklist in the Todo pane. No files, no OpenSpec. Then you decide: `/plan-apply` to implement, or `/plan-propose` for a full OpenSpec plan.
|
|
32
|
-
|
|
33
|
-
**`/plan-apply`**: Implement a plan. Detects the source automatically: OpenSpec-annotated tasks (from `/plan-propose`) run as parallel subagent waves; Todo pane tasks (from `/plan-quick`) run sequentially in-session.
|
|
34
|
-
|
|
35
|
-
**`/plan-goal <feature or URL>`**: Fully autonomous, no confirmations. Branches off `main`, then runs propose → apply → archive on that branch (each phase its own commit). Default: merges to `main` and deletes the branch. Add `push` keyword to push the branch only. Add `pr` keyword to push + create a PR. Built for loop-engineering / unattended runs. Stops only on a hard failure, leaving the branch unmerged.
|
|
36
|
-
|
|
37
|
-
---
|
|
38
|
-
|
|
39
|
-
### Done implementing?
|
|
40
|
-
|
|
41
|
-
**`/ops-ship`**: Create a PR for the current feature branch with screenshots if UI changed.
|
|
42
|
-
|
|
43
|
-
**`/ops-review`**: Read and triage PR review feedback. If you share a PR URL or say "I've added comments to the PR", it reads and classifies the review comments so you know what to fix. Fixing is done via `/plan-apply`.
|
|
44
|
-
|
|
45
|
-
**`/ops-backlog`**: Create an issue in the backlog platform (GitHub, Azure DevOps, Jira) from a description.
|
|
46
|
-
|
|
47
|
-
**`/ops-evidence`**: Produce evidence a completed change works and publish it to the originating issue/PR. Uses `playwright-cli` (headless) and `pnpm run dev` to capture screenshots at desktop and mobile viewports, writes `evidence/evidence.json` (passed/skipped/failed/blocked), and upserts an idempotent verified comment. Best-effort; `/plan-goal`
|
|
48
|
-
|
|
49
|
-
**`/plan-archive`**: Mark a completed change as archived in OpenSpec. Run this after the PR is merged.
|
|
50
|
-
|
|
51
|
-
---
|
|
52
|
-
|
|
53
|
-
### Maintaining the project?
|
|
54
|
-
|
|
55
|
-
**`/make-engineer`**: Add a custom specialist engineer to the team. Interactive persona-driven form: pick a persona, then confirm an inspected-and-recommended set of skills (architecture/patterns like FSD or design patterns, framework, testing, infra) before anything installs. Future `/plan-apply` runs will prefer it when its domain matches.
|
|
56
|
-
|
|
57
|
-
**`/make-architecture`**: Regenerate `ARCHITECTURE.md` from the current codebase. Safe to rerun any time the architecture evolves.
|
|
58
|
-
|
|
59
|
-
**`/make-design`**: Regenerate `DESIGN.md` from the design system (Tailwind, CSS vars, tokens, etc.).
|
|
60
|
-
|
|
61
|
-
**`/make-
|
|
62
|
-
|
|
63
|
-
**`/
|
|
64
|
-
|
|
65
|
-
**`/
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
/plan-
|
|
76
|
-
/
|
|
77
|
-
/plan-
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
```
|
|
90
|
-
/plan-goal <description> ← full pipeline, no interaction
|
|
91
|
-
```
|
|
1
|
+
---
|
|
2
|
+
name: pc-repo-help
|
|
3
|
+
description: The full command reference for this project - every /command with when to use it and the typical workflows. Load when the user asks for help, the command list, or at the end of repo initialization. Invoked by the /repo-help command and the repo-initialize flow.
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
# Repo Help
|
|
8
|
+
|
|
9
|
+
Display the following reference to the user exactly as written. Do not summarize.
|
|
10
|
+
|
|
11
|
+
## Commands
|
|
12
|
+
|
|
13
|
+
### Not sure where to start?
|
|
14
|
+
|
|
15
|
+
**`/init`** (alias: `/repo-initialize`): Initialize the project. Presents a single form with all setup questions (project type, history, architecture, design, evidence), then executes the selected steps.
|
|
16
|
+
|
|
17
|
+
**`/repo-onboard`**: Guided tour of the project and its agentic infrastructure. Explains agents, commands, skills, OpenSpec workflow, and configuration. Read-only: no files modified.
|
|
18
|
+
|
|
19
|
+
**`/repo-audit`**: Read-only health audit of every configured source root. Loads the fullstack engineer's abilities, checks guardrails, architecture, tooling, dependencies, lockfiles, tests, and CI, then reports prioritized findings.
|
|
20
|
+
|
|
21
|
+
**`/plan-explore`**: Your backlog is unclear, you have a half-formed idea, or you need to think through a problem before committing to a plan. This is a thinking partner, not an executor.
|
|
22
|
+
|
|
23
|
+
**`/plan-story <feature or need>`**: Write a detailed, repo-aware user story from a feature idea. Loads the `@user-story` skill (Mike Cohn format + Gherkin acceptance criteria), analyzes your codebase for concrete context, and produces a development-ready story with specific personas, real outcomes, and testable criteria grounded in your actual file paths, component names, and data models. No files written — just the story.
|
|
24
|
+
|
|
25
|
+
**`/plan-propose <url or idea>`**: You have a work item URL, or a clear idea and you want to turn it into a structured plan (proposal, specs, tasks). Enriches each task with the best matching agent and model before showing you the plan. Nothing is implemented until you confirm.
|
|
26
|
+
|
|
27
|
+
---
|
|
28
|
+
|
|
29
|
+
### Ready to implement?
|
|
30
|
+
|
|
31
|
+
**`/plan-quick <task>`**: Quick plan for focused changes. Reads the codebase, creates a task checklist in the Todo pane. No files, no OpenSpec. Then you decide: `/plan-apply` to implement, or `/plan-propose` for a full OpenSpec plan.
|
|
32
|
+
|
|
33
|
+
**`/plan-apply`**: Implement a plan. Detects the source automatically: OpenSpec-annotated tasks (from `/plan-propose`) run as parallel subagent waves; Todo pane tasks (from `/plan-quick`) run sequentially in-session.
|
|
34
|
+
|
|
35
|
+
**`/plan-goal <feature or URL>`**: Fully autonomous, no confirmations. Branches off `main`, then runs propose → apply → archive on that branch (each phase its own commit). Default: merges to `main` and deletes the branch. Add `push` keyword to push the branch only. Add `pr` keyword to push + create a PR. Built for loop-engineering / unattended runs. Stops only on a hard failure, leaving the branch unmerged.
|
|
36
|
+
|
|
37
|
+
---
|
|
38
|
+
|
|
39
|
+
### Done implementing?
|
|
40
|
+
|
|
41
|
+
**`/ops-ship`**: Create a PR for the current feature branch with screenshots if UI changed.
|
|
42
|
+
|
|
43
|
+
**`/ops-review`**: Read and triage PR review feedback. If you share a PR URL or say "I've added comments to the PR", it reads and classifies the review comments so you know what to fix. Fixing is done via `/plan-apply`.
|
|
44
|
+
|
|
45
|
+
**`/ops-backlog`**: Create an issue in the backlog platform (GitHub, Azure DevOps, Jira) from a description.
|
|
46
|
+
|
|
47
|
+
**`/ops-evidence`**: Produce evidence a completed change works and publish it to the originating issue/PR. Uses `playwright-cli` (headless) and `pnpm run dev` to capture screenshots at desktop and mobile viewports, writes `evidence/evidence.json` (passed/skipped/failed/blocked), and upserts an idempotent verified comment. Best-effort. Run it yourself after a change lands; `/plan-goal` does not run it. Works inside CI containers.
|
|
48
|
+
|
|
49
|
+
**`/plan-archive`**: Mark a completed change as archived in OpenSpec. Run this after the PR is merged.
|
|
50
|
+
|
|
51
|
+
---
|
|
52
|
+
|
|
53
|
+
### Maintaining the project?
|
|
54
|
+
|
|
55
|
+
**`/make-engineer`**: Add a custom specialist engineer to the team. Interactive persona-driven form: pick a persona, then confirm an inspected-and-recommended set of skills (architecture/patterns like FSD or design patterns, framework, testing, infra) before anything installs. Future `/plan-apply` runs will prefer it when its domain matches.
|
|
56
|
+
|
|
57
|
+
**`/make-architecture`**: Regenerate `ARCHITECTURE.md` from the current codebase. Safe to rerun any time the architecture evolves.
|
|
58
|
+
|
|
59
|
+
**`/make-design`**: Regenerate `DESIGN.md` from the design system (Tailwind, CSS vars, tokens, etc.).
|
|
60
|
+
|
|
61
|
+
**`/make-guardrails`**: Generate a `pc-guardrails-project` skill from `ARCHITECTURE.md` and project config files. Extracts concrete rules (architecture boundaries, naming, code style, testing, git workflow) that all agents must follow. Updates every `*-engineer.md` to load the skill.
|
|
62
|
+
|
|
63
|
+
**`/repo-verify`**: Verify the current branch against applicable guardrails and project checks. Runs immutable dependency installs/restores, configured builds, and tests for every discovered project, repairs relevant failures, checks dependency/lockfile consistency, and reports `VERIFIED` only when every required check passes. It runs automatically in `/plan-goal`.
|
|
64
|
+
|
|
65
|
+
**`/make-user-model <tier> <model>`**: Set the model for a tier (`plan`, `build`, or `fast`). Writes to `.opencode/harness.json` (`models`). Use `user` prefix for a personal override: `/make-user-model user fast opencode/big-pickle`. Use a model id or `current` for the active session model. Restart opencode for the `pc-subagent-tiers` plugin to rebuild tier agents.
|
|
66
|
+
|
|
67
|
+
---
|
|
68
|
+
|
|
69
|
+
### Typical workflows
|
|
70
|
+
|
|
71
|
+
**Complex change:**
|
|
72
|
+
```
|
|
73
|
+
/plan-explore ← optional: think it through first
|
|
74
|
+
/plan-propose ← create the plan
|
|
75
|
+
/plan-apply ← implement with the team
|
|
76
|
+
/ops-ship ← ship
|
|
77
|
+
/plan-archive ← close out
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
**Quick change:**
|
|
81
|
+
```
|
|
82
|
+
/plan-quick ← create a focused task list
|
|
83
|
+
/plan-apply ← implement
|
|
84
|
+
```
|
|
85
|
+
|
|
86
|
+
**Unattended / loop-engineering:**
|
|
87
|
+
```
|
|
88
|
+
/plan-goal <description> ← full pipeline, no interaction
|
|
89
|
+
```
|
|
@@ -1,130 +1,112 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: pc-repo-initialize
|
|
3
|
-
description: Initialize the project. Presents a single form with all setup questions, then executes selected steps. Invoked by the /init command (alias: /repo-initialize).
|
|
4
|
-
license: MIT
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
"
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
"
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
35
|
-
|
|
36
|
-
|
|
37
|
-
"
|
|
38
|
-
|
|
39
|
-
|
|
40
|
-
|
|
41
|
-
|
|
42
|
-
|
|
43
|
-
|
|
44
|
-
|
|
45
|
-
"
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
"
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
}
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
63
|
-
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
|
|
70
|
-
|
|
71
|
-
|
|
72
|
-
|
|
73
|
-
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
|
|
78
|
-
```
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
93
|
-
|
|
94
|
-
|
|
95
|
-
|
|
96
|
-
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
Tell the user:
|
|
115
|
-
|
|
116
|
-
```
|
|
117
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
118
|
-
Initialization complete.
|
|
119
|
-
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
120
|
-
|
|
121
|
-
Restart OpenCode now.
|
|
122
|
-
Nothing will work correctly until you do.
|
|
123
|
-
After restarting you are ready to work.
|
|
124
|
-
```
|
|
125
|
-
|
|
126
|
-
If the user answered Yes to Question 5 (Evidence), no post-init step is needed. Evidence works automatically via `pc-ops-evidence` using `playwright-cli` + `pnpm run dev`.
|
|
127
|
-
|
|
128
|
-
## Init scope
|
|
129
|
-
|
|
130
|
-
During init, write only to: ARCHITECTURE.md, DESIGN.md, AGENTS.md, openspec/, .agents/skills/. Read source files for analysis. Feature implementation, branches, PRs, and project source file modification are outside init's scope.
|
|
1
|
+
---
|
|
2
|
+
name: pc-repo-initialize
|
|
3
|
+
description: "Initialize the project. Presents a single form with all setup questions, then executes selected steps. Invoked by the /init command (alias: /repo-initialize)."
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
First read `AGENTS.md`. Without the `<!-- PC-NOT-INITIALIZED -->` marker the project is already initialized: say so, and point at `/make-architecture` or `/make-design` for a refresh. With it, run the sequence below.
|
|
8
|
+
|
|
9
|
+
## Rules
|
|
10
|
+
|
|
11
|
+
- Write only to `ARCHITECTURE.md`, `DESIGN.md`, `AGENTS.md`, `openspec/` and `.agents/skills/`. Source files are read for analysis, never edited: init sets a project up, it does not implement anything, and it creates no branches or pull requests.
|
|
12
|
+
- Ask the five questions in one `question` call. Five separate prompts is five chances for the user to walk away from a setup that does nothing until it finishes.
|
|
13
|
+
- A step whose answer was No is skipped, not approximated.
|
|
14
|
+
|
|
15
|
+
## Step 1, Ask everything at once
|
|
16
|
+
|
|
17
|
+
```json
|
|
18
|
+
{
|
|
19
|
+
"questions": [
|
|
20
|
+
{
|
|
21
|
+
"header": "Type",
|
|
22
|
+
"question": "What type of project is this?",
|
|
23
|
+
"options": [
|
|
24
|
+
{ "label": "brownfield", "description": "Existing codebase. Generate docs from your code." },
|
|
25
|
+
{ "label": "greenfield", "description": "Starting from scratch, little or no existing code." }
|
|
26
|
+
]
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
"header": "History",
|
|
30
|
+
"question": "Archive project history into OpenSpec?",
|
|
31
|
+
"options": [
|
|
32
|
+
{ "label": "Yes", "description": "Scan codebase for existing docs, changelogs, decisions and archive them." },
|
|
33
|
+
{ "label": "No", "description": "Skip history archival." }
|
|
34
|
+
]
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
"header": "Architecture",
|
|
38
|
+
"question": "Generate ARCHITECTURE.md from the codebase?",
|
|
39
|
+
"options": [
|
|
40
|
+
{ "label": "Yes", "description": "Analyze project structure and generate architecture documentation." },
|
|
41
|
+
{ "label": "No", "description": "Skip, leave as placeholder." }
|
|
42
|
+
]
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
"header": "Design",
|
|
46
|
+
"question": "Generate DESIGN.md from the design system?",
|
|
47
|
+
"options": [
|
|
48
|
+
{ "label": "Yes", "description": "Analyze Tailwind, CSS vars, tokens and generate design documentation." },
|
|
49
|
+
{ "label": "No", "description": "Skip, leave as placeholder." }
|
|
50
|
+
]
|
|
51
|
+
},
|
|
52
|
+
{
|
|
53
|
+
"header": "Evidence",
|
|
54
|
+
"question": "Enable visual evidence capture for this project? (playwright-cli + pnpm run dev; no per-project scaffold needed)",
|
|
55
|
+
"options": [
|
|
56
|
+
{ "label": "Yes", "description": "Evidence will be captured automatically by /plan-goal using playwright-cli + pnpm run dev." },
|
|
57
|
+
{ "label": "No", "description": "Skip evidence capture." }
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
]
|
|
61
|
+
}
|
|
62
|
+
```
|
|
63
|
+
|
|
64
|
+
## Step 2, Sync skills
|
|
65
|
+
|
|
66
|
+
Always. `npx skills experimental_install --yes` in the project root installs what onboarding queued in `skills-lock.json`. A failure here is a warning, not a stop: the optional ones can be added later.
|
|
67
|
+
|
|
68
|
+
## Step 3, Archive project history
|
|
69
|
+
|
|
70
|
+
If Yes. Scan the roots in `.opencode/source-roots.json` (plus this repo's own docs and config) for documentation, changelogs, ADRs, READMEs and anything else that records how the project got here. Then:
|
|
71
|
+
|
|
72
|
+
```bash
|
|
73
|
+
openspec new change "project-history"
|
|
74
|
+
```
|
|
75
|
+
|
|
76
|
+
Write a `proposal.md` in it covering what the project is, the decisions already taken, the tech debt and constraints the code shows, and where things stand. Archive it immediately, with `-y` so it cannot block:
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
openspec archive "project-history" -y
|
|
80
|
+
```
|
|
81
|
+
|
|
82
|
+
## Step 4, Generate ARCHITECTURE.md
|
|
83
|
+
|
|
84
|
+
If Yes. Load `pc-make-architecture`.
|
|
85
|
+
|
|
86
|
+
## Step 5, Generate DESIGN.md
|
|
87
|
+
|
|
88
|
+
If Yes. Load `pc-make-design`.
|
|
89
|
+
|
|
90
|
+
## Step 6, Generate guardrails
|
|
91
|
+
|
|
92
|
+
Always. Load `pc-make-guardrails`.
|
|
93
|
+
|
|
94
|
+
## Step 7, Visual evidence
|
|
95
|
+
|
|
96
|
+
If Yes, there is nothing to scaffold: `pc-ops-evidence` drives `playwright-cli` against the project's root `pnpm run dev`, which has to start the full stack with mock auth. CI installs `playwright-cli` itself.
|
|
97
|
+
|
|
98
|
+
## Step 8, Show help
|
|
99
|
+
|
|
100
|
+
Load `pc-repo-help` and display the command reference as written.
|
|
101
|
+
|
|
102
|
+
## Step 9, Confirm
|
|
103
|
+
|
|
104
|
+
```
|
|
105
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
106
|
+
Initialization complete.
|
|
107
|
+
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━
|
|
108
|
+
|
|
109
|
+
Restart OpenCode now.
|
|
110
|
+
Nothing will work correctly until you do.
|
|
111
|
+
After restarting you are ready to work.
|
|
112
|
+
```
|
|
@@ -1,87 +1,32 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: pc-repo-onboard
|
|
3
|
-
description: Walk the user through the project and its agentic infrastructure. Explains what exists, how agents work, and how to use the system. Invoked by the /repo-onboard command.
|
|
4
|
-
license: MIT
|
|
5
|
-
---
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
##
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
|
|
16
|
-
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
Then explain the agent selection model:
|
|
34
|
-
- Primary agents appear in Tab and handle direct user interaction
|
|
35
|
-
- Subagent engineers are spawned by the lead for parallel implementation waves
|
|
36
|
-
- Specialist engineers are preferred when their domain matches the task. `build` and `plan` are the only agents the user selects, and both run the `fullstack-engineer` body; `plan` cannot edit files. Everything else is `mode: subagent` and spawned. If no specialist matches, create one with `/make-engineer`.
|
|
37
|
-
|
|
38
|
-
## Step 3: Command reference
|
|
39
|
-
|
|
40
|
-
Read every `.md` file in `.opencode/commands/`. List each command with its name and description:
|
|
41
|
-
|
|
42
|
-
| Command | What it does |
|
|
43
|
-
|---|---|
|
|
44
|
-
| ... | ... |
|
|
45
|
-
|
|
46
|
-
Group them by workflow phase if possible:
|
|
47
|
-
- Planning: plan-explore, plan-story, plan-propose, plan-quick, plan-goal
|
|
48
|
-
- Implementation: plan-apply, plan-archive
|
|
49
|
-
- Maintenance: make-architecture, make-design, make-engineer, make-guardrails, make-evidence-scaffold
|
|
50
|
-
- Shipping: ops-ship, ops-review, ops-backlog, ops-evidence
|
|
51
|
-
- Quality: repo-audit, repo-verify
|
|
52
|
-
- Setup: init, make-user-model, repo-help
|
|
53
|
-
|
|
54
|
-
## Step 4: Skills
|
|
55
|
-
|
|
56
|
-
Inspect `.agents/skills/` (if present). List installed skills with a one-line description each. Note which are platform-specific (userstory, pullrequest) vs general-purpose, and identify `pc-repo-audit` as read-only and `pc-repo-verify` as the current-branch verification gate.
|
|
57
|
-
|
|
58
|
-
## Step 5: OpenSpec workflow
|
|
59
|
-
|
|
60
|
-
Explain the OpenSpec change lifecycle:
|
|
61
|
-
|
|
62
|
-
1. Explore (`/plan-explore`): investigate and discuss, no files created
|
|
63
|
-
2. Propose (`/plan-propose`): structured plan, saved to `openspec/changes/`
|
|
64
|
-
3. Apply (`/plan-apply`): implement tasks via parallel subagent waves
|
|
65
|
-
4. Archive (`/plan-archive`): finalize and clean up
|
|
66
|
-
|
|
67
|
-
Explain `openspec/config.yaml`: what it contains and why it matters.
|
|
68
|
-
|
|
69
|
-
## Step 6: Configuration
|
|
70
|
-
|
|
71
|
-
Explain `harness.json`:
|
|
72
|
-
- What each field controls (platform, models, agents, tools, source)
|
|
73
|
-
- How to change the model for a tier (`/make-user-model`)
|
|
74
|
-
- What `agents.maxConcurrent` does
|
|
75
|
-
|
|
76
|
-
## Step 7: Quick tips
|
|
77
|
-
|
|
78
|
-
End with 3 to 5 practical tips:
|
|
79
|
-
|
|
80
|
-
- How to start working: "Run `/plan-goal` with a description of what you want to build"
|
|
81
|
-
- How to add a specialist: "Run `/make-engineer`"
|
|
82
|
-
- How to regenerate docs: "Run `/make-architecture` or `/make-design`"
|
|
83
|
-
- How to audit the whole repository: "Run `/repo-audit`"
|
|
84
|
-
- How to verify an active branch: "Run `/repo-verify`"
|
|
85
|
-
- How to set up visual evidence: "Run `/make-evidence-scaffold` (UI projects) so `/plan-goal` can prove changes with screenshots"
|
|
86
|
-
- How to see all commands: "Run `/repo-help`"
|
|
87
|
-
- How to refresh config after changes: "Re-run `npx @plainconceptsplatform/agent-harness` in the terminal"
|
|
1
|
+
---
|
|
2
|
+
name: pc-repo-onboard
|
|
3
|
+
description: Walk the user through the project and its agentic infrastructure. Explains what exists, how agents work, and how to use the system. Invoked by the /repo-onboard command.
|
|
4
|
+
license: MIT
|
|
5
|
+
---
|
|
6
|
+
|
|
7
|
+
A guided tour of this repository and the harness installed in it, for somebody who has just arrived. Read and explain; change nothing.
|
|
8
|
+
|
|
9
|
+
## Rules
|
|
10
|
+
|
|
11
|
+
- Never write, edit, or create a file, and never run a command from the tour to demonstrate it. The output is the explanation.
|
|
12
|
+
- Never describe an agent, command, skill or setting that is not in this repository. The tour is worth having because it is specific: read `.opencode/agents/`, `.opencode/commands/`, `.agents/skills/`, `.opencode/harness.json`, `AGENTS.md`, `ARCHITECTURE.md` and `DESIGN.md` and report what is actually there.
|
|
13
|
+
|
|
14
|
+
## Cover, in this order
|
|
15
|
+
|
|
16
|
+
1. **The project.** Three to five bullets: what it is, the stack, the directories that matter.
|
|
17
|
+
2. **The agents.** One table row per file in `.opencode/agents/`, with its tier and purpose. Then the selection model: `build` and `plan` are the only two a human picks and both run the `fullstack-engineer` body, `plan` can neither edit nor spawn, everything else is `mode: subagent` and reached through `task()`, and a missing specialist is made with `/make-engineer`.
|
|
18
|
+
3. **The commands**, grouped by what they are for:
|
|
19
|
+
|
|
20
|
+
| Group | Commands |
|
|
21
|
+
|---|---|
|
|
22
|
+
| Planning | `/plan-explore`, `/plan-story`, `/plan-propose`, `/plan-quick`, `/plan-goal` |
|
|
23
|
+
| Implementation | `/plan-apply`, `/plan-archive` |
|
|
24
|
+
| Maintenance | `/make-architecture`, `/make-design`, `/make-engineer`, `/make-guardrails` |
|
|
25
|
+
| Shipping | `/ops-ship`, `/ops-review`, `/ops-backlog`, `/ops-evidence` |
|
|
26
|
+
| Quality | `/repo-audit` (read-only), `/repo-verify` (the branch gate) |
|
|
27
|
+
| Setup | `/init`, `/make-user-model`, `/repo-help` |
|
|
28
|
+
|
|
29
|
+
4. **The skills** installed in `.agents/skills/`, one line each, marking which are platform-specific.
|
|
30
|
+
5. **The OpenSpec lifecycle**: explore, propose, apply, archive, and what `openspec/config.yaml` controls.
|
|
31
|
+
6. **The configuration** in `.opencode/harness.json`: what each section governs, that `/make-user-model` changes a tier's model, and what `agents.maxConcurrent` caps.
|
|
32
|
+
7. **Where to start.** `/plan-goal` with a description of the work, `/repo-help` for everything else, and `npx @plainconceptsplatform/agent-harness` to refresh the harness after changing config.
|
|
@@ -29,6 +29,8 @@ When a dependency manifest changes, require its ecosystem lockfile to change whe
|
|
|
29
29
|
|
|
30
30
|
When a check fails, repair only the current branch's relevant files and rerun the failed check. Continue until every applicable check passes or a hard blocker prevents progress. Never hide a failure by deleting tests, weakening checks, or reverting requested work.
|
|
31
31
|
|
|
32
|
+
Once every check passes, run the project's lint fix command over the files you changed (`pnpm lint:fix`, `pnpm exec biome check --write <changed-files>`, or its equivalent). Formatting is not a review comment worth anybody's turn, and a branch that fails lint on arrival gets sent back for it. Where no fix command exists, run lint and correct what it reports.
|
|
33
|
+
|
|
32
34
|
## Step 4: Result
|
|
33
35
|
|
|
34
36
|
Report a check matrix with command, affected project, result, and skip reason where applicable. Report `VERIFIED` only when every applicable check passed, every dependency change has consistent lockfiles, and no required ability is missing. Otherwise report `NOT VERIFIED`, the blockers, and the exact next command.
|