@plainconceptsplatform/agent-harness 2.0.0 → 2.1.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.
Files changed (117) hide show
  1. package/README.md +426 -419
  2. package/package.json +3 -3
  3. package/src/commands/join.js +244 -244
  4. package/src/commands/shared.js +27 -27
  5. package/src/commands/single.js +79 -79
  6. package/src/commands/update.js +109 -109
  7. package/src/commands/wizard.js +134 -134
  8. package/src/content/.agents/skills/browser-automation/SKILL.md +66 -66
  9. package/src/content/.agents/skills/pc-guardrails-generic/SKILL.md +68 -68
  10. package/src/content/.agents/skills/pc-guardrails-project/SKILL.md +8 -8
  11. package/src/content/.agents/skills/pc-make-architecture/SKILL.md +51 -51
  12. package/src/content/.agents/skills/pc-make-architecture/structure-template.md +38 -38
  13. package/src/content/.agents/skills/pc-make-design/SKILL.md +68 -68
  14. package/src/content/.agents/skills/pc-make-engineer/SKILL.md +219 -219
  15. package/src/content/.agents/skills/pc-make-engineer/signal-mapping.md +68 -68
  16. package/src/content/.agents/skills/pc-make-engineer/template.md +81 -81
  17. package/src/content/.agents/skills/pc-make-evidence-scaffold/SKILL.md +18 -18
  18. package/src/content/.agents/skills/pc-make-evidence-scaffold/evidence-contract.md +29 -29
  19. package/src/content/.agents/skills/pc-make-guardrails/SKILL.md +74 -74
  20. package/src/content/.agents/skills/pc-make-guardrails/category-reference.md +68 -68
  21. package/src/content/.agents/skills/pc-make-merge-risk-assess/SKILL.md +70 -70
  22. package/src/content/.agents/skills/pc-make-merge-risk-assess/category-reference.md +98 -98
  23. package/src/content/.agents/skills/pc-make-user-model/SKILL.md +66 -66
  24. package/src/content/.agents/skills/pc-ops-evidence/SKILL.md +127 -127
  25. package/src/content/.agents/skills/pc-ops-ship/SKILL.md +18 -18
  26. package/src/content/.agents/skills/pc-plan-apply/SKILL.md +83 -83
  27. package/src/content/.agents/skills/pc-plan-apply/simple-mode.md +21 -21
  28. package/src/content/.agents/skills/pc-plan-archive/SKILL.md +63 -63
  29. package/src/content/.agents/skills/pc-plan-explore/SKILL.md +9 -9
  30. package/src/content/.agents/skills/pc-plan-goal/SKILL.md +94 -94
  31. package/src/content/.agents/skills/pc-plan-goal/branching.md +30 -30
  32. package/src/content/.agents/skills/pc-plan-goal/failure-policy.md +30 -30
  33. package/src/content/.agents/skills/pc-plan-goal/output-mode.md +9 -9
  34. package/src/content/.agents/skills/pc-plan-goal/output.md +68 -68
  35. package/src/content/.agents/skills/pc-plan-propose/SKILL.md +125 -125
  36. package/src/content/.agents/skills/pc-plan-propose/task-annotation.md +39 -39
  37. package/src/content/.agents/skills/pc-plan-quick/SKILL.md +62 -62
  38. package/src/content/.agents/skills/pc-plan-story/SKILL.md +146 -146
  39. package/src/content/.agents/skills/pc-repo-audit/SKILL.md +44 -44
  40. package/src/content/.agents/skills/pc-repo-help/SKILL.md +91 -91
  41. package/src/content/.agents/skills/pc-repo-initialize/SKILL.md +130 -130
  42. package/src/content/.agents/skills/pc-repo-onboard/SKILL.md +87 -87
  43. package/src/content/.agents/skills/pc-repo-verify/SKILL.md +34 -34
  44. package/src/content/.agents/skills/pc-userstory-az/SKILL.md +157 -157
  45. package/src/content/.agents/skills/pc-userstory-browser/SKILL.md +132 -132
  46. package/src/content/.agents/skills/pc-userstory-gh/SKILL.md +120 -120
  47. package/src/content/.agents/skills/pc-userstory-jira/SKILL.md +131 -131
  48. package/src/content/.opencode/_gitignore +9 -7
  49. package/src/content/.opencode/commands/init.md +5 -5
  50. package/src/content/.opencode/commands/make-architecture.md +5 -5
  51. package/src/content/.opencode/commands/make-design.md +5 -5
  52. package/src/content/.opencode/commands/make-engineer.md +5 -5
  53. package/src/content/.opencode/commands/make-evidence-scaffold.md +5 -5
  54. package/src/content/.opencode/commands/make-guardrails.md +5 -5
  55. package/src/content/.opencode/commands/make-user-model.md +5 -5
  56. package/src/content/.opencode/commands/ops-backlog.md +10 -10
  57. package/src/content/.opencode/commands/ops-evidence.md +9 -9
  58. package/src/content/.opencode/commands/ops-review.md +8 -8
  59. package/src/content/.opencode/commands/ops-ship.md +9 -9
  60. package/src/content/.opencode/commands/plan-apply.md +9 -9
  61. package/src/content/.opencode/commands/plan-archive.md +5 -5
  62. package/src/content/.opencode/commands/plan-explore.md +9 -9
  63. package/src/content/.opencode/commands/plan-goal.md +5 -5
  64. package/src/content/.opencode/commands/plan-propose.md +9 -9
  65. package/src/content/.opencode/commands/plan-quick.md +5 -5
  66. package/src/content/.opencode/commands/plan-story.md +9 -9
  67. package/src/content/.opencode/commands/repo-audit.md +5 -5
  68. package/src/content/.opencode/commands/repo-help.md +5 -5
  69. package/src/content/.opencode/commands/repo-initialize.md +5 -5
  70. package/src/content/.opencode/commands/repo-onboard.md +5 -5
  71. package/src/content/.opencode/commands/repo-verify.md +5 -5
  72. package/src/content/.opencode/plugins/pc-subagent-monitor.js +139 -139
  73. package/src/content/.opencode/plugins/pc-subagent-tiers.js +281 -179
  74. package/src/content/.opencode/plugins/pc-system-reminders.js +96 -96
  75. package/src/content/.opencode/tui/pc-subagents.tsx +98 -98
  76. package/src/content/.opencode/tui.json +6 -6
  77. package/src/content/AGENTS.md +71 -71
  78. package/src/content/opencode.jsonc +39 -31
  79. package/src/fragments/archive/az.md +95 -95
  80. package/src/fragments/archive/gh.md +94 -94
  81. package/src/fragments/archive/gl.md +94 -94
  82. package/src/fragments/archive/none.md +73 -73
  83. package/src/fragments/guardrails/codegraph.md +7 -7
  84. package/src/fragments/guardrails/humanizer.md +4 -4
  85. package/src/fragments/guardrails/memory.md +4 -4
  86. package/src/fragments/guardrails/rtk.md +3 -3
  87. package/src/fragments/guardrails/simple-english.md +4 -4
  88. package/src/fragments/ops-backlog/az.md +28 -28
  89. package/src/fragments/ops-backlog/gh.md +29 -29
  90. package/src/fragments/ops-backlog/jira.md +28 -28
  91. package/src/fragments/ops-evidence/az.md +41 -41
  92. package/src/fragments/ops-evidence/gh.md +53 -53
  93. package/src/fragments/ops-evidence/jira.md +38 -38
  94. package/src/fragments/ops-review/az.md +62 -62
  95. package/src/fragments/ops-review/gh.md +52 -52
  96. package/src/fragments/ops-review/gl.md +56 -56
  97. package/src/fragments/ops-ship/az.md +80 -80
  98. package/src/fragments/ops-ship/gh.md +68 -68
  99. package/src/fragments/ops-ship/gl.md +85 -85
  100. package/src/index.js +107 -107
  101. package/src/presets/agents-content.json +53 -53
  102. package/src/presets/models.json +68 -68
  103. package/src/steps/copy/agents.js +118 -118
  104. package/src/steps/copy/commands.js +91 -91
  105. package/src/steps/copy/fullstack-engineer.js +85 -83
  106. package/src/steps/copy/index.js +88 -88
  107. package/src/steps/copy/opencode-json.js +147 -129
  108. package/src/steps/copy/skills.js +196 -196
  109. package/src/steps/metadata/index.js +108 -108
  110. package/src/steps/models/write.js +34 -34
  111. package/src/steps/optimization/patch-guardrails.js +108 -108
  112. package/src/utils/copy.js +108 -108
  113. package/src/utils/legacy-check.js +30 -30
  114. package/src/utils/models-cache.js +58 -58
  115. package/src/utils/paths.js +67 -64
  116. package/src/utils/update-manifest.js +49 -49
  117. package/src/content/.opencode/plugins/pc-system-reminders.test.js +0 -35
@@ -1,146 +1,146 @@
1
- ---
2
- name: pc-plan-story
3
- description: Write a detailed, repo-aware user story from a feature idea or need. Loads the @user-story skill for Mike Cohn format + Gherkin acceptance criteria, analyzes the codebase for concrete context, and produces a development-ready story. Use when the user wants to write a user story, create a story from a feature idea, or turn a need into a structured story with acceptance criteria. Invoked by the /plan-story command.
4
- license: MIT
5
- ---
6
-
7
- Write a user story grounded in the actual codebase. Load the `@user-story` skill and follow its format (Mike Cohn "As a / I want to / so that" + Gherkin "Given / When / Then"). The story must be specific: real personas, real file paths, real component names, real data models — not generic placeholders.
8
-
9
- This skill is read-only. You may read files, search code, and use `todowrite` to create Todo pane items. The only output is the user story itself and a question to the user. No files, no OpenSpec changes, no branches.
10
-
11
- ## Input
12
-
13
- The caller provides:
14
- - A feature description, user need, or rough idea. This is the seed for the story.
15
- - Exploration findings may accompany it — including diagrams (Mermaid, ASCII, or inline markdown). When provided, use them as context: the story should align with the explored scope, decisions, and recommended approach.
16
- - If `$ARGUMENTS` is empty, ask the user what feature or need they want to capture.
17
-
18
- ## Step 1: Load the user-story skill
19
-
20
- Load the `@user-story` skill now. Follow its format, anti-patterns, and quality checks for the rest of this skill. Every story produced must pass the user-story skill's validation.
21
-
22
- ## Step 2: Analyze the codebase
23
-
24
- Use `glob` and `grep` to locate the relevant files, components, types, and patterns that the feature touches. Read the key files to understand:
25
-
26
- - **Who** the users are (check auth, roles, user models, route guards)
27
- - **What** the current state is (existing components, API endpoints, data models, types)
28
- - **Where** the change would land (file paths, directory structure, module boundaries)
29
- - **Why** it matters (business logic, validation rules, existing UX flows)
30
-
31
- If exploration findings or diagrams were provided, incorporate them: align the story's scope with the explored boundaries, reference the components and flows the diagram highlights, and respect any out-of-scope decisions the exploration made.
32
-
33
- Map the feature description to concrete codebase artifacts:
34
-
35
- ```
36
- Relevant artifacts:
37
- Models: <model names and file paths>
38
- Components: <component names and file paths>
39
- Endpoints: <route or API paths>
40
- Types: <type definitions and file paths>
41
- Patterns: <architectural patterns in use (FSD, monolith, etc.)>
42
- ```
43
-
44
- ## Step 3: Draft the user story
45
-
46
- Write the story using the user-story skill's format. Ground every field in the codebase analysis from Step 2:
47
-
48
- ### Use Case
49
-
50
- - **As a** [specific persona derived from auth/roles/user models in the repo — never "user"]
51
- - **I want to** [action that maps to a concrete code change — reference the component, endpoint, or model involved]
52
- - **so that** [real outcome tied to business logic or UX flow found in the codebase]
53
-
54
- ### Acceptance Criteria (Gherkin)
55
-
56
- Write scenarios with preconditions grounded in the actual codebase state:
57
-
58
- - **Scenario:** [brief description]
59
- - **Given:** [precondition referencing real state — e.g. "the user is authenticated via the JWT middleware in src/auth/middleware.ts"]
60
- - **and Given:** [additional preconditions — existing data models, current UI state, config values]
61
- - **When:** [trigger that maps to a concrete user action on a real component or endpoint]
62
- - **Then:** [testable outcome referencing actual system behavior — e.g. "the response from POST /api/projects includes the new projectId field defined in src/types/Project.ts"]
63
-
64
- ### Edge Cases
65
-
66
- List 2-3 edge cases derived from what the code currently does:
67
-
68
- - What happens when [existing validation/constraint] is violated?
69
- - What if [existing data state] is empty/null/migration-incomplete?
70
- - What about [existing role/permission boundary]?
71
-
72
- ### Summary
73
-
74
- Write a one-line value-focused summary (not a feature title).
75
-
76
- ## Step 4: Humanize
77
-
78
- Load the `@humanizer` skill and run it on the drafted story text from Step 3. AI-generated stories tend to:
79
-
80
- - Overuse em dashes and rule-of-three lists
81
- - Use promotional language ("seamless", "powerful", "comprehensive")
82
- - Use passive voice and negative parallelisms
83
- - Stack vague attributions
84
- - Inflate symbolism in the summary line
85
-
86
- Apply the humanizer's audit → fix loop to all prose in the story: the summary, the use case, the scenario descriptions, and the edge case notes. Preserve all technical details, file paths, component names, and Gherkin structure — the humanizer cleans prose, not structure or accuracy.
87
-
88
- ## Step 5: Diagram (when the story has a flow)
89
-
90
- If the story involves a user journey, state transition, or component interaction that benefits from visualization, produce a Mermaid diagram. Keep it minimal: the happy path only, no exhaustive enumeration of every branch.
91
-
92
- When to draw:
93
- - Multi-step flows (login → action → confirmation)
94
- - State transitions (status changes on a work item, order state machine)
95
- - Component interactions (frontend → API → service → DB)
96
-
97
- When to skip:
98
- - Simple CRUD on a single resource
99
- - Stories with a single step and no preconditions beyond auth
100
-
101
- If the input included an exploration diagram, extend it with the story's new flow rather than redrawing from scratch.
102
-
103
- ## Step 6: Validate
104
-
105
- Run every quality check from the user-story skill:
106
-
107
- - No generic "As a user" — the persona must be specific and grounded in repo context
108
- - "So that" must express real motivation, not restate "I want to"
109
- - Single When / single Then per scenario — if multiple, note that the story should split
110
- - Thens must be testable and measurable — reference real system behavior, not vague improvements
111
- - No technical tasks disguised as user stories (if there's no user outcome, say so)
112
-
113
- If any check fails, fix the story and re-validate. Do not show a story to the user that fails validation.
114
-
115
- ## Step 7: Present the story
116
-
117
- Display the complete user story to the user:
118
-
119
- - Summary
120
- - Use Case (As a / I want to / so that)
121
- - Acceptance Criteria (all scenarios with full Given/When/Then)
122
- - Edge Cases
123
- - Diagram (if produced in Step 5)
124
- - Codebase artifacts the story is grounded in (file paths, component names, types)
125
-
126
- ## Step 8: Ask what's next
127
-
128
- Call the `question` tool:
129
-
130
- ```json
131
- {
132
- "questions": [
133
- {
134
- "header": "What next",
135
- "question": "What next?",
136
- "options": [
137
- { "label": "/plan-propose", "description": "Turn this user story into a full OpenSpec proposal with design, specs, and tasks." },
138
- { "label": "/plan-quick", "description": "Create a lightweight task checklist from this story." },
139
- { "label": "Refine the story", "description": "Iterate on the story with feedback." }
140
- ]
141
- }
142
- ]
143
- }
144
- ```
145
-
146
- Do not create any files. Do not run `/plan-propose` or `/plan-quick` automatically. The only output is the user story.
1
+ ---
2
+ name: pc-plan-story
3
+ description: Write a detailed, repo-aware user story from a feature idea or need. Loads the @user-story skill for Mike Cohn format + Gherkin acceptance criteria, analyzes the codebase for concrete context, and produces a development-ready story. Use when the user wants to write a user story, create a story from a feature idea, or turn a need into a structured story with acceptance criteria. Invoked by the /plan-story command.
4
+ license: MIT
5
+ ---
6
+
7
+ Write a user story grounded in the actual codebase. Load the `@user-story` skill and follow its format (Mike Cohn "As a / I want to / so that" + Gherkin "Given / When / Then"). The story must be specific: real personas, real file paths, real component names, real data models — not generic placeholders.
8
+
9
+ This skill is read-only. You may read files, search code, and use `todowrite` to create Todo pane items. The only output is the user story itself and a question to the user. No files, no OpenSpec changes, no branches.
10
+
11
+ ## Input
12
+
13
+ The caller provides:
14
+ - A feature description, user need, or rough idea. This is the seed for the story.
15
+ - Exploration findings may accompany it — including diagrams (Mermaid, ASCII, or inline markdown). When provided, use them as context: the story should align with the explored scope, decisions, and recommended approach.
16
+ - If `$ARGUMENTS` is empty, ask the user what feature or need they want to capture.
17
+
18
+ ## Step 1: Load the user-story skill
19
+
20
+ Load the `@user-story` skill now. Follow its format, anti-patterns, and quality checks for the rest of this skill. Every story produced must pass the user-story skill's validation.
21
+
22
+ ## Step 2: Analyze the codebase
23
+
24
+ Use `glob` and `grep` to locate the relevant files, components, types, and patterns that the feature touches. Read the key files to understand:
25
+
26
+ - **Who** the users are (check auth, roles, user models, route guards)
27
+ - **What** the current state is (existing components, API endpoints, data models, types)
28
+ - **Where** the change would land (file paths, directory structure, module boundaries)
29
+ - **Why** it matters (business logic, validation rules, existing UX flows)
30
+
31
+ If exploration findings or diagrams were provided, incorporate them: align the story's scope with the explored boundaries, reference the components and flows the diagram highlights, and respect any out-of-scope decisions the exploration made.
32
+
33
+ Map the feature description to concrete codebase artifacts:
34
+
35
+ ```
36
+ Relevant artifacts:
37
+ Models: <model names and file paths>
38
+ Components: <component names and file paths>
39
+ Endpoints: <route or API paths>
40
+ Types: <type definitions and file paths>
41
+ Patterns: <architectural patterns in use (FSD, monolith, etc.)>
42
+ ```
43
+
44
+ ## Step 3: Draft the user story
45
+
46
+ Write the story using the user-story skill's format. Ground every field in the codebase analysis from Step 2:
47
+
48
+ ### Use Case
49
+
50
+ - **As a** [specific persona derived from auth/roles/user models in the repo — never "user"]
51
+ - **I want to** [action that maps to a concrete code change — reference the component, endpoint, or model involved]
52
+ - **so that** [real outcome tied to business logic or UX flow found in the codebase]
53
+
54
+ ### Acceptance Criteria (Gherkin)
55
+
56
+ Write scenarios with preconditions grounded in the actual codebase state:
57
+
58
+ - **Scenario:** [brief description]
59
+ - **Given:** [precondition referencing real state — e.g. "the user is authenticated via the JWT middleware in src/auth/middleware.ts"]
60
+ - **and Given:** [additional preconditions — existing data models, current UI state, config values]
61
+ - **When:** [trigger that maps to a concrete user action on a real component or endpoint]
62
+ - **Then:** [testable outcome referencing actual system behavior — e.g. "the response from POST /api/projects includes the new projectId field defined in src/types/Project.ts"]
63
+
64
+ ### Edge Cases
65
+
66
+ List 2-3 edge cases derived from what the code currently does:
67
+
68
+ - What happens when [existing validation/constraint] is violated?
69
+ - What if [existing data state] is empty/null/migration-incomplete?
70
+ - What about [existing role/permission boundary]?
71
+
72
+ ### Summary
73
+
74
+ Write a one-line value-focused summary (not a feature title).
75
+
76
+ ## Step 4: Humanize
77
+
78
+ Load the `@humanizer` skill and run it on the drafted story text from Step 3. AI-generated stories tend to:
79
+
80
+ - Overuse em dashes and rule-of-three lists
81
+ - Use promotional language ("seamless", "powerful", "comprehensive")
82
+ - Use passive voice and negative parallelisms
83
+ - Stack vague attributions
84
+ - Inflate symbolism in the summary line
85
+
86
+ Apply the humanizer's audit → fix loop to all prose in the story: the summary, the use case, the scenario descriptions, and the edge case notes. Preserve all technical details, file paths, component names, and Gherkin structure — the humanizer cleans prose, not structure or accuracy.
87
+
88
+ ## Step 5: Diagram (when the story has a flow)
89
+
90
+ If the story involves a user journey, state transition, or component interaction that benefits from visualization, produce a Mermaid diagram. Keep it minimal: the happy path only, no exhaustive enumeration of every branch.
91
+
92
+ When to draw:
93
+ - Multi-step flows (login → action → confirmation)
94
+ - State transitions (status changes on a work item, order state machine)
95
+ - Component interactions (frontend → API → service → DB)
96
+
97
+ When to skip:
98
+ - Simple CRUD on a single resource
99
+ - Stories with a single step and no preconditions beyond auth
100
+
101
+ If the input included an exploration diagram, extend it with the story's new flow rather than redrawing from scratch.
102
+
103
+ ## Step 6: Validate
104
+
105
+ Run every quality check from the user-story skill:
106
+
107
+ - No generic "As a user" — the persona must be specific and grounded in repo context
108
+ - "So that" must express real motivation, not restate "I want to"
109
+ - Single When / single Then per scenario — if multiple, note that the story should split
110
+ - Thens must be testable and measurable — reference real system behavior, not vague improvements
111
+ - No technical tasks disguised as user stories (if there's no user outcome, say so)
112
+
113
+ If any check fails, fix the story and re-validate. Do not show a story to the user that fails validation.
114
+
115
+ ## Step 7: Present the story
116
+
117
+ Display the complete user story to the user:
118
+
119
+ - Summary
120
+ - Use Case (As a / I want to / so that)
121
+ - Acceptance Criteria (all scenarios with full Given/When/Then)
122
+ - Edge Cases
123
+ - Diagram (if produced in Step 5)
124
+ - Codebase artifacts the story is grounded in (file paths, component names, types)
125
+
126
+ ## Step 8: Ask what's next
127
+
128
+ Call the `question` tool:
129
+
130
+ ```json
131
+ {
132
+ "questions": [
133
+ {
134
+ "header": "What next",
135
+ "question": "What next?",
136
+ "options": [
137
+ { "label": "/plan-propose", "description": "Turn this user story into a full OpenSpec proposal with design, specs, and tasks." },
138
+ { "label": "/plan-quick", "description": "Create a lightweight task checklist from this story." },
139
+ { "label": "Refine the story", "description": "Iterate on the story with feedback." }
140
+ ]
141
+ }
142
+ ]
143
+ }
144
+ ```
145
+
146
+ Do not create any files. Do not run `/plan-propose` or `/plan-quick` automatically. The only output is the user story.
@@ -1,44 +1,44 @@
1
- ---
2
- name: pc-repo-audit
3
- description: Audit every configured repository source root against the fullstack engineer's abilities and guardrails. Read-only. Invoked by the /repo-audit command.
4
- license: MIT
5
- ---
6
-
7
- # Repo Audit
8
-
9
- Audit the repository without modifying files, installing dependencies, creating backlog items, pushing, or contacting external platforms.
10
-
11
- ## Step 1: Load the audit rules
12
-
13
- 1. Read `.opencode/agents/fullstack-engineer.md`.
14
- 2. Parse every `@skill-name` in its `## Abilities` section.
15
- 3. Load every listed skill, guardrails first. If a referenced skill is missing, record it as a finding and continue with the installed abilities.
16
-
17
- ## Step 2: Establish scope
18
-
19
- 1. Read `.opencode/source-roots.json` when it exists. Use its non-empty `roots` array; otherwise use the repository root.
20
- 2. Inventory every root before judging it. Identify applications, services, libraries, tests, frontend or website projects, infrastructure, CI, package manifests, lockfiles, and generated-output rules.
21
- 3. Keep every read and command inside a configured source root or the repository root.
22
-
23
- ## Step 3: Audit every project
24
-
25
- Apply the loaded abilities and guardrails to each discovered project. Assess:
26
-
27
- - Architecture, module boundaries, naming, and duplicated responsibilities.
28
- - Tests, linting, type checks, builds, CI, and whether their configured commands match the project.
29
- - Dependency manifests, lockfiles, package-manager declarations, runtime versions, and workspace configuration.
30
- - Security and repository hygiene, including generated files, ignored artifacts, and likely secrets in tracked files.
31
- - Documentation and configuration drift across `AGENTS.md`, architecture/design documents, project scripts, and CI.
32
-
33
- For dependency findings, identify the exact manifest and lockfile involved. State the repository-defined remediation and immutable dependency validation command; never run a mutation-capable install during this audit.
34
-
35
- ## Step 4: Report
36
-
37
- Deduplicate findings across roots and report them grouped by project. Every finding must include:
38
-
39
- - Severity: critical, high, medium, or low.
40
- - Affected root and path.
41
- - Evidence and the applicable guardrail or ability, when one exists.
42
- - Impact and a concrete remediation or verification command.
43
-
44
- End with the projects audited, checks that could not run and why, and a short prioritized remediation list. If no findings exist, state that explicitly and list residual verification gaps.
1
+ ---
2
+ name: pc-repo-audit
3
+ description: Audit every configured repository source root against the fullstack engineer's abilities and guardrails. Read-only. Invoked by the /repo-audit command.
4
+ license: MIT
5
+ ---
6
+
7
+ # Repo Audit
8
+
9
+ Audit the repository without modifying files, installing dependencies, creating backlog items, pushing, or contacting external platforms.
10
+
11
+ ## Step 1: Load the audit rules
12
+
13
+ 1. Read `.opencode/agents/fullstack-engineer.md`.
14
+ 2. Parse every `@skill-name` in its `## Abilities` section.
15
+ 3. Load every listed skill, guardrails first. If a referenced skill is missing, record it as a finding and continue with the installed abilities.
16
+
17
+ ## Step 2: Establish scope
18
+
19
+ 1. Read `.opencode/source-roots.json` when it exists. Use its non-empty `roots` array; otherwise use the repository root.
20
+ 2. Inventory every root before judging it. Identify applications, services, libraries, tests, frontend or website projects, infrastructure, CI, package manifests, lockfiles, and generated-output rules.
21
+ 3. Keep every read and command inside a configured source root or the repository root.
22
+
23
+ ## Step 3: Audit every project
24
+
25
+ Apply the loaded abilities and guardrails to each discovered project. Assess:
26
+
27
+ - Architecture, module boundaries, naming, and duplicated responsibilities.
28
+ - Tests, linting, type checks, builds, CI, and whether their configured commands match the project.
29
+ - Dependency manifests, lockfiles, package-manager declarations, runtime versions, and workspace configuration.
30
+ - Security and repository hygiene, including generated files, ignored artifacts, and likely secrets in tracked files.
31
+ - Documentation and configuration drift across `AGENTS.md`, architecture/design documents, project scripts, and CI.
32
+
33
+ For dependency findings, identify the exact manifest and lockfile involved. State the repository-defined remediation and immutable dependency validation command; never run a mutation-capable install during this audit.
34
+
35
+ ## Step 4: Report
36
+
37
+ Deduplicate findings across roots and report them grouped by project. Every finding must include:
38
+
39
+ - Severity: critical, high, medium, or low.
40
+ - Affected root and path.
41
+ - Evidence and the applicable guardrail or ability, when one exists.
42
+ - Impact and a concrete remediation or verification command.
43
+
44
+ End with the projects audited, checks that could not run and why, and a short prioritized remediation list. If no findings exist, state that explicitly and list residual verification gaps.
@@ -1,91 +1,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; `/plan-goal` runs it automatically. 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-evidence-scaffold`**: DEPRECATED. Evidence is now built into `/ops-evidence` using `playwright-cli` + `pnpm run dev`. No per-project scaffold needed.
62
-
63
- **`/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.
64
-
65
- **`/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`.
66
-
67
- **`/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.
68
-
69
- ---
70
-
71
- ### Typical workflows
72
-
73
- **Complex change:**
74
- ```
75
- /plan-explore ← optional: think it through first
76
- /plan-propose ← create the plan
77
- /plan-apply ← implement with the team
78
- /ops-ship ← ship
79
- /plan-archive ← close out
80
- ```
81
-
82
- **Quick change:**
83
- ```
84
- /plan-quick ← create a focused task list
85
- /plan-apply ← implement
86
- ```
87
-
88
- **Unattended / loop-engineering:**
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; `/plan-goal` runs it automatically. 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-evidence-scaffold`**: DEPRECATED. Evidence is now built into `/ops-evidence` using `playwright-cli` + `pnpm run dev`. No per-project scaffold needed.
62
+
63
+ **`/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.
64
+
65
+ **`/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`.
66
+
67
+ **`/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.
68
+
69
+ ---
70
+
71
+ ### Typical workflows
72
+
73
+ **Complex change:**
74
+ ```
75
+ /plan-explore ← optional: think it through first
76
+ /plan-propose ← create the plan
77
+ /plan-apply ← implement with the team
78
+ /ops-ship ← ship
79
+ /plan-archive ← close out
80
+ ```
81
+
82
+ **Quick change:**
83
+ ```
84
+ /plan-quick ← create a focused task list
85
+ /plan-apply ← implement
86
+ ```
87
+
88
+ **Unattended / loop-engineering:**
89
+ ```
90
+ /plan-goal <description> ← full pipeline, no interaction
91
+ ```