@plainconceptsplatform/agent-harness 3.4.1 → 3.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.
Files changed (50) hide show
  1. package/cli/commands/update.js +121 -121
  2. package/cli/fragments/archive/az.md +97 -97
  3. package/cli/fragments/archive/gh.md +96 -96
  4. package/cli/fragments/archive/gl.md +96 -96
  5. package/cli/fragments/archive/none.md +75 -75
  6. package/cli/fragments/guardrails/codegraph.md +5 -5
  7. package/cli/fragments/guardrails/humanizer.md +4 -4
  8. package/cli/fragments/guardrails/memory.md +4 -4
  9. package/cli/fragments/guardrails/rtk.md +3 -3
  10. package/cli/fragments/guardrails/simple-english.md +4 -4
  11. package/cli/fragments/ops-ship/az.md +81 -81
  12. package/cli/presets/agents-content.json +34 -34
  13. package/cli/presets/browser.json +10 -10
  14. package/cli/steps/browser/index.js +48 -48
  15. package/cli/steps/copy/commands.js +79 -79
  16. package/cli/steps/copy/index.js +88 -88
  17. package/cli/steps/metadata/index.js +115 -115
  18. package/cli/steps/models/write.js +38 -38
  19. package/harness/.opencode/commands/init.md +5 -5
  20. package/harness/.opencode/commands/make-architecture.md +5 -5
  21. package/harness/.opencode/commands/make-design.md +5 -5
  22. package/harness/.opencode/commands/make-engineer.md +5 -5
  23. package/harness/.opencode/commands/make-guardrails.md +5 -5
  24. package/harness/.opencode/commands/make-user-model.md +5 -5
  25. package/harness/.opencode/commands/plan-apply.md +9 -9
  26. package/harness/.opencode/commands/plan-goal.md +5 -5
  27. package/harness/.opencode/commands/repo-initialize.md +5 -5
  28. package/harness/.opencode/commands/repo-onboard.md +5 -5
  29. package/harness/.opencode/commands/repo-verify.md +5 -5
  30. package/harness/.opencode/scripts/check-diff.mjs +9 -1
  31. package/harness/AGENTS.md +49 -49
  32. package/package.json +1 -1
  33. package/skills/README.md +18 -18
  34. package/skills/browser-automation/SKILL.md +72 -72
  35. package/skills/pc-make-architecture/SKILL.md +32 -32
  36. package/skills/pc-make-design/SKILL.md +45 -45
  37. package/skills/pc-make-engineer/signal-mapping.md +53 -53
  38. package/skills/pc-make-guardrails/SKILL.md +44 -44
  39. package/skills/pc-make-user-model/SKILL.md +56 -56
  40. package/skills/pc-plan-apply/SKILL.md +2 -0
  41. package/skills/pc-plan-archive/SKILL.md +66 -66
  42. package/skills/pc-plan-goal/branching.md +39 -39
  43. package/skills/pc-plan-goal/output.md +71 -71
  44. package/skills/pc-plan-story/SKILL.md +93 -93
  45. package/skills/pc-repo-initialize/SKILL.md +119 -119
  46. package/skills/pc-repo-onboard/SKILL.md +32 -32
  47. package/skills/pc-userstory-az/SKILL.md +71 -71
  48. package/skills/pc-userstory-browser/SKILL.md +64 -64
  49. package/skills/pc-userstory-gh/SKILL.md +63 -63
  50. package/skills/pc-userstory-jira/SKILL.md +74 -74
@@ -1,63 +1,63 @@
1
- ---
2
- name: pc-userstory
3
- description: Parse GitHub Issue URL and create OpenSpec change. Use when user provides a GitHub Issue URL.
4
- license: MIT
5
- compatibility: Requires openspec CLI and gh CLI.
6
- metadata:
7
- author: copilots
8
- version: "1.1"
9
- ---
10
-
11
- Turn a GitHub Issue URL into an OpenSpec change, then hand the change to `pc-plan-propose`.
12
-
13
- ## Rules
14
-
15
- - Issue data comes from `gh`, never from a page fetch (denied by `pc-system-reminders`). An unavailable or unauthenticated `gh` is a blocker to report: `gh auth status` says which.
16
- - Always pass `--repo {owner}/{repo}`. Git context resolves to the wrong repository in a fork or a worktree, and the failure looks like a missing issue.
17
- - Never load `pc-plan-apply` until the user has said yes.
18
-
19
- ## Contracts
20
-
21
- `https://github.com/{owner}/{repo}/issues/42` gives owner, repo and number `42`.
22
-
23
- ```bash
24
- gh issue view 42 --repo {owner}/{repo} --json number,title,body,labels,milestone,state
25
- ```
26
-
27
- An auth error or a 404 here is the blocker; do not work around it. From the JSON take `number`, `title`, `body` (description and acceptance criteria), `labels`, `milestone` and `state`.
28
-
29
- ```bash
30
- openspec new change "gh-{number}-{slug}"
31
- ```
32
-
33
- Screenshots live in the change folder, `openspec/changes/{change-name}/images/{name}.png`, and embed as a blob URL pinned to a commit SHA with `?raw=true`: `https://github.com/{owner}/{repo}/blob/{sha}/openspec/changes/{change}/images/{file}.png?raw=true`.
34
-
35
- Report:
36
-
37
- ```
38
- ## Issue Parsed
39
-
40
- Issue: #{number}
41
- Title: {title}
42
- State: {state}
43
- Milestone: {milestone}
44
-
45
- Change Created: gh-{number}-{slug}
46
- ```
47
-
48
- Then load `pc-plan-propose` (interactive) and, once it returns, ask:
49
-
50
- ```json
51
- {
52
- "questions": [
53
- {
54
- "header": "Ready to implement",
55
- "question": "Ready to implement?",
56
- "options": [
57
- { "label": "yes", "description": "Load the pc-plan-apply skill to start implementation." },
58
- { "label": "no", "description": "Stop here. You can run /plan-apply later." }
59
- ]
60
- }
61
- ]
62
- }
63
- ```
1
+ ---
2
+ name: pc-userstory
3
+ description: Parse GitHub Issue URL and create OpenSpec change. Use when user provides a GitHub Issue URL.
4
+ license: MIT
5
+ compatibility: Requires openspec CLI and gh CLI.
6
+ metadata:
7
+ author: copilots
8
+ version: "1.1"
9
+ ---
10
+
11
+ Turn a GitHub Issue URL into an OpenSpec change, then hand the change to `pc-plan-propose`.
12
+
13
+ ## Rules
14
+
15
+ - Issue data comes from `gh`, never from a page fetch (denied by `pc-system-reminders`). An unavailable or unauthenticated `gh` is a blocker to report: `gh auth status` says which.
16
+ - Always pass `--repo {owner}/{repo}`. Git context resolves to the wrong repository in a fork or a worktree, and the failure looks like a missing issue.
17
+ - Never load `pc-plan-apply` until the user has said yes.
18
+
19
+ ## Contracts
20
+
21
+ `https://github.com/{owner}/{repo}/issues/42` gives owner, repo and number `42`.
22
+
23
+ ```bash
24
+ gh issue view 42 --repo {owner}/{repo} --json number,title,body,labels,milestone,state
25
+ ```
26
+
27
+ An auth error or a 404 here is the blocker; do not work around it. From the JSON take `number`, `title`, `body` (description and acceptance criteria), `labels`, `milestone` and `state`.
28
+
29
+ ```bash
30
+ openspec new change "gh-{number}-{slug}"
31
+ ```
32
+
33
+ Screenshots live in the change folder, `openspec/changes/{change-name}/images/{name}.png`, and embed as a blob URL pinned to a commit SHA with `?raw=true`: `https://github.com/{owner}/{repo}/blob/{sha}/openspec/changes/{change}/images/{file}.png?raw=true`.
34
+
35
+ Report:
36
+
37
+ ```
38
+ ## Issue Parsed
39
+
40
+ Issue: #{number}
41
+ Title: {title}
42
+ State: {state}
43
+ Milestone: {milestone}
44
+
45
+ Change Created: gh-{number}-{slug}
46
+ ```
47
+
48
+ Then load `pc-plan-propose` (interactive) and, once it returns, ask:
49
+
50
+ ```json
51
+ {
52
+ "questions": [
53
+ {
54
+ "header": "Ready to implement",
55
+ "question": "Ready to implement?",
56
+ "options": [
57
+ { "label": "yes", "description": "Load the pc-plan-apply skill to start implementation." },
58
+ { "label": "no", "description": "Stop here. You can run /plan-apply later." }
59
+ ]
60
+ }
61
+ ]
62
+ }
63
+ ```
@@ -1,74 +1,74 @@
1
- ---
2
- name: pc-userstory
3
- description: Parse a Jira work item and create an OpenSpec change. Use when the user provides a Jira URL or a bare issue key (e.g. PROJ-123).
4
- license: MIT
5
- compatibility: Requires openspec CLI and Atlassian CLI (acli).
6
- metadata:
7
- author: copilots
8
- version: "1.0"
9
- ---
10
-
11
- Turn a Jira issue into an OpenSpec change, then hand the change to `pc-plan-propose`. Jira is backlog-only: it has no repositories and no pull requests, so shipping runs on whichever repo platform the project configured.
12
-
13
- ## Rules
14
-
15
- - Issue data comes from `acli`, never from a page fetch or a browser (denied by `pc-system-reminders`). An `acli` that cannot authenticate is a blocker to report; install and login are documented at https://developer.atlassian.com/cloud/acli/guides/install-acli/.
16
- - Never transition the work item without asking, and never transition one that is not in `To Do` or `Backlog`. Moving somebody's ticket is visible to their whole team.
17
- - In an unattended run, skip the question and the transition rather than resolving it yes.
18
- - Never load `pc-plan-apply` until the user has said yes.
19
-
20
- ## Contracts
21
-
22
- The key is `PROJ-123`, taken from `/browse/PROJ-123`, `/jira/core/projects/PROJ/issues/PROJ-123`, `?selectedIssue=PROJ-123`, or given bare.
23
-
24
- ```bash
25
- acli jira workitem view --key "PROJ-123"
26
- ```
27
-
28
- From the output take the summary (title), the description (context), acceptance criteria wherever they live (spec requirements), labels, status, assignee and priority.
29
-
30
- ```bash
31
- acli jira workitem transition --key "PROJ-123" --status "In Progress"
32
- ```
33
-
34
- Ask before that one:
35
-
36
- ```json
37
- {
38
- "questions": [
39
- {
40
- "header": "Transition work item",
41
- "question": "Move {KEY} to In Progress?",
42
- "options": [
43
- { "label": "yes", "description": "Transition the work item to In Progress." },
44
- { "label": "no", "description": "Skip the transition." }
45
- ]
46
- }
47
- ]
48
- }
49
- ```
50
-
51
- Then create the change, whose `proposal.md` names the Jira key and links back to it:
52
-
53
- ```bash
54
- openspec new change "{slug-from-summary}"
55
- ```
56
-
57
- Load `pc-plan-propose` (interactive) and, once it returns, ask:
58
-
59
- ```json
60
- {
61
- "questions": [
62
- {
63
- "header": "Ready to implement",
64
- "question": "Ready to implement?",
65
- "options": [
66
- { "label": "yes", "description": "Load the pc-plan-apply skill to start implementation." },
67
- { "label": "no", "description": "Stop here. You can run /plan-apply later." }
68
- ]
69
- }
70
- ]
71
- }
72
- ```
73
-
74
- Also available: `acli jira workitem search --jql "..."` and `acli jira workitem comment create --key "PROJ-123" --body "..."`.
1
+ ---
2
+ name: pc-userstory
3
+ description: Parse a Jira work item and create an OpenSpec change. Use when the user provides a Jira URL or a bare issue key (e.g. PROJ-123).
4
+ license: MIT
5
+ compatibility: Requires openspec CLI and Atlassian CLI (acli).
6
+ metadata:
7
+ author: copilots
8
+ version: "1.0"
9
+ ---
10
+
11
+ Turn a Jira issue into an OpenSpec change, then hand the change to `pc-plan-propose`. Jira is backlog-only: it has no repositories and no pull requests, so shipping runs on whichever repo platform the project configured.
12
+
13
+ ## Rules
14
+
15
+ - Issue data comes from `acli`, never from a page fetch or a browser (denied by `pc-system-reminders`). An `acli` that cannot authenticate is a blocker to report; install and login are documented at https://developer.atlassian.com/cloud/acli/guides/install-acli/.
16
+ - Never transition the work item without asking, and never transition one that is not in `To Do` or `Backlog`. Moving somebody's ticket is visible to their whole team.
17
+ - In an unattended run, skip the question and the transition rather than resolving it yes.
18
+ - Never load `pc-plan-apply` until the user has said yes.
19
+
20
+ ## Contracts
21
+
22
+ The key is `PROJ-123`, taken from `/browse/PROJ-123`, `/jira/core/projects/PROJ/issues/PROJ-123`, `?selectedIssue=PROJ-123`, or given bare.
23
+
24
+ ```bash
25
+ acli jira workitem view --key "PROJ-123"
26
+ ```
27
+
28
+ From the output take the summary (title), the description (context), acceptance criteria wherever they live (spec requirements), labels, status, assignee and priority.
29
+
30
+ ```bash
31
+ acli jira workitem transition --key "PROJ-123" --status "In Progress"
32
+ ```
33
+
34
+ Ask before that one:
35
+
36
+ ```json
37
+ {
38
+ "questions": [
39
+ {
40
+ "header": "Transition work item",
41
+ "question": "Move {KEY} to In Progress?",
42
+ "options": [
43
+ { "label": "yes", "description": "Transition the work item to In Progress." },
44
+ { "label": "no", "description": "Skip the transition." }
45
+ ]
46
+ }
47
+ ]
48
+ }
49
+ ```
50
+
51
+ Then create the change, whose `proposal.md` names the Jira key and links back to it:
52
+
53
+ ```bash
54
+ openspec new change "{slug-from-summary}"
55
+ ```
56
+
57
+ Load `pc-plan-propose` (interactive) and, once it returns, ask:
58
+
59
+ ```json
60
+ {
61
+ "questions": [
62
+ {
63
+ "header": "Ready to implement",
64
+ "question": "Ready to implement?",
65
+ "options": [
66
+ { "label": "yes", "description": "Load the pc-plan-apply skill to start implementation." },
67
+ { "label": "no", "description": "Stop here. You can run /plan-apply later." }
68
+ ]
69
+ }
70
+ ]
71
+ }
72
+ ```
73
+
74
+ Also available: `acli jira workitem search --jql "..."` and `acli jira workitem comment create --key "PROJ-123" --body "..."`.