opencode-ship 1.1.2-rc.1 → 1.1.2-rc.4
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/CHANGELOG.md +132 -37
- package/README.md +2 -2
- package/THIRD_PARTY_NOTICES.md +1 -1
- package/assets/agents/delivery-reviewer.md +1 -0
- package/assets/agents/delivery-verifier.md +1 -0
- package/assets/agents/ship-controller.md +20 -7
- package/assets/agents/ship-final-spec-reviewer.md +5 -3
- package/assets/agents/ship-final-standards-reviewer.md +5 -3
- package/assets/agents/ship-planner.md +1 -0
- package/assets/agents/ship-task-builder.md +1 -0
- package/assets/agents/ship-task-reviewer.md +1 -0
- package/assets/commands/setup-ship-workflow.md +9 -167
- package/assets/skills/setup-ship-workflow/SKILL.md +78 -31
- package/dist/cli.js +2274 -362
- package/dist/core.js +794 -10
- package/dist/plugin.js +3487 -1795
- package/package.json +9 -4
- package/tests/plugin/expected-tools.mjs +2 -2
- package/tests/plugin/plugin-load.test.mjs +8 -3
- package/assets/skills/setup-ship-workflow/issue-tracker-gitlab.md +0 -46
- package/assets/skills/setup-ship-workflow/issue-tracker-local.md +0 -30
- package/docs/adr/0001-opencode-ship-redesign.md +0 -168
- package/docs/release/1.0.0-execution-plan.md +0 -1063
- package/docs/release/1.1.1-stabilization-plan.md +0 -655
- package/vendor/upstreams/mattpocock/skills/engineering/code-review/SKILL.md +0 -89
- package/vendor/upstreams/mattpocock/skills/engineering/codebase-design/DEEPENING.md +0 -37
- package/vendor/upstreams/mattpocock/skills/engineering/codebase-design/DESIGN-IT-TWICE.md +0 -44
- package/vendor/upstreams/mattpocock/skills/engineering/codebase-design/SKILL.md +0 -114
- package/vendor/upstreams/mattpocock/skills/engineering/domain-modeling/ADR-FORMAT.md +0 -47
- package/vendor/upstreams/mattpocock/skills/engineering/domain-modeling/CONTEXT-FORMAT.md +0 -60
- package/vendor/upstreams/mattpocock/skills/engineering/domain-modeling/SKILL.md +0 -74
- package/vendor/upstreams/mattpocock/skills/engineering/grill-with-docs/SKILL.md +0 -7
- package/vendor/upstreams/mattpocock/skills/engineering/prototype/LOGIC.md +0 -79
- package/vendor/upstreams/mattpocock/skills/engineering/prototype/SKILL.md +0 -26
- package/vendor/upstreams/mattpocock/skills/engineering/prototype/UI.md +0 -112
- package/vendor/upstreams/mattpocock/skills/engineering/research/SKILL.md +0 -12
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/SKILL.md +0 -116
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/domain.md +0 -51
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-github.md +0 -45
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-gitlab.md +0 -46
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/issue-tracker-local.md +0 -30
- package/vendor/upstreams/mattpocock/skills/engineering/setup-matt-pocock-skills/triage-labels.md +0 -15
- package/vendor/upstreams/mattpocock/skills/engineering/to-spec/SKILL.md +0 -75
- package/vendor/upstreams/mattpocock/skills/engineering/to-tickets/SKILL.md +0 -105
- package/vendor/upstreams/mattpocock/skills/engineering/triage/AGENT-BRIEF.md +0 -207
- package/vendor/upstreams/mattpocock/skills/engineering/triage/OUT-OF-SCOPE.md +0 -105
- package/vendor/upstreams/mattpocock/skills/engineering/triage/SKILL.md +0 -112
- package/vendor/upstreams/mattpocock/skills/engineering/wayfinder/SKILL.md +0 -128
- package/vendor/upstreams/mattpocock/skills/productivity/grilling/SKILL.md +0 -12
- package/vendor/upstreams/mattpocock/skills/productivity/handoff/SKILL.md +0 -16
- package/vendor/upstreams/obra/skills/brainstorming/SKILL.md +0 -151
- package/vendor/upstreams/obra/skills/brainstorming/spec-document-reviewer-prompt.md +0 -49
- package/vendor/upstreams/obra/skills/brainstorming/visual-companion.md +0 -298
- package/vendor/upstreams/obra/skills/dispatching-parallel-agents/SKILL.md +0 -167
- package/vendor/upstreams/obra/skills/executing-plans/SKILL.md +0 -64
- package/vendor/upstreams/obra/skills/receiving-code-review/SKILL.md +0 -205
- package/vendor/upstreams/obra/skills/requesting-code-review/SKILL.md +0 -95
- package/vendor/upstreams/obra/skills/requesting-code-review/code-reviewer.md +0 -172
- package/vendor/upstreams/obra/skills/subagent-driven-development/SKILL.md +0 -503
- package/vendor/upstreams/obra/skills/subagent-driven-development/implementer-prompt.md +0 -142
- package/vendor/upstreams/obra/skills/subagent-driven-development/re-review-prompt.md +0 -106
- package/vendor/upstreams/obra/skills/subagent-driven-development/task-reviewer-prompt.md +0 -185
- package/vendor/upstreams/obra/skills/systematic-debugging/CREATION-LOG.md +0 -119
- package/vendor/upstreams/obra/skills/systematic-debugging/SKILL.md +0 -283
- package/vendor/upstreams/obra/skills/systematic-debugging/condition-based-waiting-example.ts +0 -158
- package/vendor/upstreams/obra/skills/systematic-debugging/condition-based-waiting.md +0 -115
- package/vendor/upstreams/obra/skills/systematic-debugging/defense-in-depth.md +0 -122
- package/vendor/upstreams/obra/skills/systematic-debugging/find-polluter.sh +0 -72
- package/vendor/upstreams/obra/skills/systematic-debugging/root-cause-tracing.md +0 -169
- package/vendor/upstreams/obra/skills/systematic-debugging/test-academic.md +0 -14
- package/vendor/upstreams/obra/skills/systematic-debugging/test-pressure-1.md +0 -58
- package/vendor/upstreams/obra/skills/systematic-debugging/test-pressure-2.md +0 -68
- package/vendor/upstreams/obra/skills/systematic-debugging/test-pressure-3.md +0 -69
- package/vendor/upstreams/obra/skills/test-driven-development/SKILL.md +0 -320
- package/vendor/upstreams/obra/skills/test-driven-development/writing-good-tests.md +0 -198
- package/vendor/upstreams/obra/skills/verification-before-completion/SKILL.md +0 -120
- package/vendor/upstreams/obra/skills/writing-plans/SKILL.md +0 -168
- package/vendor/upstreams/obra/skills/writing-plans/plan-document-reviewer-prompt.md +0 -49
|
@@ -1,52 +1,78 @@
|
|
|
1
1
|
---
|
|
2
2
|
name: setup-ship-workflow
|
|
3
|
-
description: First-run setup of opencode-ship. Walks the user through
|
|
3
|
+
description: First-run setup of opencode-ship. Walks the user through GitHub configuration, triage labels, domain docs, and AI model roles. Run once after `init` with /setup-ship-workflow.
|
|
4
4
|
disable-model-invocation: true
|
|
5
5
|
---
|
|
6
6
|
|
|
7
7
|
# Setup Ship Workflow
|
|
8
8
|
|
|
9
|
-
First-run setup for `opencode-ship@1.1`. Run this exactly once after `init`
|
|
9
|
+
First-run setup for `opencode-ship@1.1.2`. Run this exactly once after `init`
|
|
10
|
+
and before any `ship-deliver`. It is prompt-driven, idempotent, and refuses
|
|
11
|
+
to return until every step is committed or explicitly skipped.
|
|
12
|
+
|
|
13
|
+
The setup contract is GitHub-only. The skill refuses to drive GitLab,
|
|
14
|
+
Jira, Linear, or local markdown because the controller's own delivery
|
|
15
|
+
tool belt is GitHub-bound. A team that needs a different tracker should
|
|
16
|
+
hold off on `opencode-ship@1.1.2` until 1.2 ships the next tracker.
|
|
10
17
|
|
|
11
18
|
## When you trigger
|
|
12
19
|
|
|
13
|
-
- The user runs `/setup-ship-workflow` or types "set up ship" / "continue
|
|
14
|
-
- The installer creates `.opencode/ship.setup-pending.json` after `init
|
|
20
|
+
- The user runs `/setup-ship-workflow` or types "set up ship" / "continue setup".
|
|
21
|
+
- The installer creates `.opencode/ship.setup-pending.json` after `init`.
|
|
22
|
+
- The controller also routes `ship-deliver` to this skill until the marker is cleared.
|
|
15
23
|
|
|
16
24
|
Do **not** trigger on a normal planning or delivery request.
|
|
17
25
|
|
|
18
26
|
## Process
|
|
19
27
|
|
|
20
|
-
Take the sections in order. Lead every question with a recommended default so
|
|
28
|
+
Take the sections in order. Lead every question with a recommended default so
|
|
29
|
+
the user can accept in one word. Skip a section only when exploration already
|
|
30
|
+
settled it.
|
|
21
31
|
|
|
22
32
|
### 1. Explore
|
|
23
33
|
|
|
24
34
|
```bash
|
|
25
35
|
git remote -v
|
|
36
|
+
gh auth status
|
|
26
37
|
git status --short
|
|
27
38
|
ls -la AGENTS.md CLAUDE.md docs/ .opencode/ 2>/dev/null || true
|
|
28
39
|
cat .opencode/opencode.json 2>/dev/null || true
|
|
29
40
|
cat .opencode/ship.config.json 2>/dev/null || true
|
|
30
41
|
cat .opencode/ship.lock.json 2>/dev/null || true
|
|
31
|
-
opencode
|
|
42
|
+
opencode models 2>/dev/null || true
|
|
32
43
|
```
|
|
33
44
|
|
|
34
45
|
Also check:
|
|
35
46
|
|
|
36
47
|
- is `.opencode/ship.setup-pending.json` present? (it makes this run mandatory)
|
|
37
48
|
- is the `triage` skill installed? (decides whether Section B runs)
|
|
38
|
-
-
|
|
49
|
+
- is the issue tracker a GitHub repo? If not, refuse with the
|
|
50
|
+
GitHub-only contract and stop.
|
|
51
|
+
|
|
52
|
+
### 2. Section A — GitHub repository
|
|
53
|
+
|
|
54
|
+
The default is the GitHub repository that owns `git remote`. Confirm the
|
|
55
|
+
detected `owner/repo` slug against the user's answer. If the user has
|
|
56
|
+
multiple remotes, ask which one is the ship target.
|
|
39
57
|
|
|
40
|
-
|
|
58
|
+
Write `docs/agents/issue-tracker.md` with the resolved `owner/repo`,
|
|
59
|
+
`default branch`, and the canonical `gh` commands:
|
|
60
|
+
|
|
61
|
+
```bash
|
|
62
|
+
gh issue list --label needs-triage
|
|
63
|
+
gh issue view <number>
|
|
64
|
+
gh pr create --base <default-branch> --draft --title <title> --body <body>
|
|
65
|
+
gh pr view <number>
|
|
66
|
+
gh pr merge <number> --squash --delete-branch
|
|
67
|
+
```
|
|
41
68
|
|
|
42
|
-
|
|
69
|
+
If the consumer is not on GitHub, refuse with:
|
|
43
70
|
|
|
44
|
-
- GitHub
|
|
45
|
-
|
|
46
|
-
- Local markdown (writes under `.scratch/<feature>/`)
|
|
47
|
-
- Other (Jira, Linear, etc.) — describe in one paragraph
|
|
71
|
+
> opencode-ship@1.1.2 is GitHub-only. Re-run on a GitHub repo, or wait
|
|
72
|
+
> for 1.2.
|
|
48
73
|
|
|
49
|
-
|
|
74
|
+
Stop the skill. Do not write a `docs/agents/issue-tracker.md` for a
|
|
75
|
+
non-GitHub consumer.
|
|
50
76
|
|
|
51
77
|
### 3. Section B — Triage labels
|
|
52
78
|
|
|
@@ -55,19 +81,23 @@ Only if the `triage` skill is installed. Ask one question:
|
|
|
55
81
|
> Keep the default triage labels? (recommended: yes)
|
|
56
82
|
> Defaults: `needs-triage`, `needs-info`, `ready-for-agent`, `ready-for-human`, `wontfix`.
|
|
57
83
|
|
|
58
|
-
On **no**, capture the user's overrides so `triage` reuses existing labels
|
|
84
|
+
On **no**, capture the user's overrides so `triage` reuses existing labels
|
|
85
|
+
instead of creating duplicates.
|
|
59
86
|
|
|
60
87
|
Write `docs/agents/triage-labels.md`.
|
|
61
88
|
|
|
62
89
|
### 4. Section C — Domain docs
|
|
63
90
|
|
|
64
|
-
Default: **single-context** — one `CONTEXT.md` + `docs/adr/` at the repo root.
|
|
91
|
+
Default: **single-context** — one `CONTEXT.md` + `docs/adr/` at the repo root.
|
|
92
|
+
Skip the question unless monorepo signals were found.
|
|
65
93
|
|
|
66
94
|
Write `docs/agents/domain.md`.
|
|
67
95
|
|
|
68
96
|
### 5. Section D — AI model roles
|
|
69
97
|
|
|
70
|
-
Three questions, one at a time. Default to `openai/gpt-5.6-sol` and
|
|
98
|
+
Three questions, one at a time. Default to `openai/gpt-5.6-sol` and
|
|
99
|
+
`minimax/MiniMax-M3`; offer alternative families only when the user
|
|
100
|
+
explicitly states they have no credentials for the defaults.
|
|
71
101
|
|
|
72
102
|
| Role | Default | Suggestion |
|
|
73
103
|
|---|---|---|
|
|
@@ -81,7 +111,7 @@ Alternatives to mention if the user has no OpenAI/MiniMax:
|
|
|
81
111
|
- Google: `google/gemini-2.5-pro`, `google/gemini-2.5-flash`
|
|
82
112
|
- Or any `<provider>/<model>` string the user has credentials for
|
|
83
113
|
|
|
84
|
-
After the user answers,
|
|
114
|
+
After the user answers, update `.opencode/ship.config.json`:
|
|
85
115
|
|
|
86
116
|
```json
|
|
87
117
|
{
|
|
@@ -100,26 +130,32 @@ After the user answers, **update `.opencode/ship.config.json`** so workflow look
|
|
|
100
130
|
}
|
|
101
131
|
```
|
|
102
132
|
|
|
103
|
-
Then run `opencode-ship update
|
|
133
|
+
Then run `opencode-ship update --planner-model <a> --builder-model <b>
|
|
134
|
+
--final-reviewer-model <c> --force-config` to write the change with full
|
|
135
|
+
transactional coverage.
|
|
104
136
|
|
|
105
137
|
### 6. Section E — Provider auth probe
|
|
106
138
|
|
|
107
139
|
```bash
|
|
108
|
-
opencode
|
|
140
|
+
opencode auth list
|
|
141
|
+
opencode models openai
|
|
142
|
+
opencode models minimax
|
|
109
143
|
```
|
|
110
144
|
|
|
111
|
-
If the planner/builder/finalReviewer names are missing credentials, surface
|
|
145
|
+
If the planner/builder/finalReviewer names are missing credentials, surface
|
|
146
|
+
a warning and tell the user how to log in:
|
|
112
147
|
|
|
113
148
|
```bash
|
|
114
|
-
opencode
|
|
115
|
-
opencode
|
|
149
|
+
opencode auth login openai
|
|
150
|
+
opencode auth login minimax
|
|
116
151
|
```
|
|
117
152
|
|
|
118
153
|
Do not invent credentials. Do not retry.
|
|
119
154
|
|
|
120
155
|
### 7. Section F — Permissions sanity
|
|
121
156
|
|
|
122
|
-
Run `opencode-ship doctor`. If any pointer is missing, prompt the user to
|
|
157
|
+
Run `opencode-ship doctor`. If any pointer is missing, prompt the user to
|
|
158
|
+
run:
|
|
123
159
|
|
|
124
160
|
```bash
|
|
125
161
|
opencode-ship update --force-root-config
|
|
@@ -140,18 +176,26 @@ If an `## Ship workflow` block exists, update in place. Otherwise append:
|
|
|
140
176
|
```markdown
|
|
141
177
|
## Ship workflow
|
|
142
178
|
|
|
143
|
-
This repo uses opencode-ship. Read `.opencode/ship.config.json` for the
|
|
179
|
+
This repo uses opencode-ship. Read `.opencode/ship.config.json` for the
|
|
180
|
+
active model roles and approval policy. Issues live in GitHub.
|
|
181
|
+
See `docs/agents/issue-tracker.md`. Triage labels are documented in
|
|
182
|
+
`docs/agents/triage-labels.md`.
|
|
144
183
|
|
|
145
|
-
For a single-issue delivery, the user invokes `/setup-ship-workflow`
|
|
184
|
+
For a single-issue delivery, the user invokes `/setup-ship-workflow`
|
|
185
|
+
once, then `ship-deliver <issue-number>` (or types "Ship issue N"). The
|
|
186
|
+
controller dispatches the planner, builder, and reviewers; no further
|
|
187
|
+
user action is required until Ready.
|
|
146
188
|
```
|
|
147
189
|
|
|
148
|
-
Include the `### Triage labels` sub-block only when the `triage` skill is
|
|
190
|
+
Include the `### Triage labels` sub-block only when the `triage` skill is
|
|
191
|
+
installed.
|
|
149
192
|
|
|
150
193
|
### 9. Done
|
|
151
194
|
|
|
152
|
-
-
|
|
195
|
+
- Run `opencode-ship setup-complete` to commit the lock and clear the
|
|
196
|
+
marker in one transaction.
|
|
197
|
+
- Tell the user that everything is ready.
|
|
153
198
|
- Print the next-step block below.
|
|
154
|
-
- Tell the user they can edit `docs/agents/*.md` directly; re-running this skill is only necessary to switch trackers or re-configure models.
|
|
155
199
|
|
|
156
200
|
## Next steps (always print)
|
|
157
201
|
|
|
@@ -169,6 +213,9 @@ Next:
|
|
|
169
213
|
- One question per turn. Never batch.
|
|
170
214
|
- Re-run safe: skip sections already settled by existing config or docs.
|
|
171
215
|
- Never edit the same `docs/agents/*.md` twice in one run.
|
|
172
|
-
- Never silently overwrite a user-owned value in `ship.config.json`; always
|
|
173
|
-
|
|
216
|
+
- Never silently overwrite a user-owned value in `ship.config.json`; always
|
|
217
|
+
show the diff first.
|
|
218
|
+
- Never tell the user to "merge it" automatically. The merge step is the
|
|
219
|
+
only autonomy break.
|
|
174
220
|
- Never hide step failures. If a write fails, surface the error and stop.
|
|
221
|
+
- Do not write any non-GitHub tracker docs. The contract is GitHub-only.
|