theslopmachine 1.0.5 → 1.0.7
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/MANUAL.md +38 -78
- package/README.md +42 -312
- package/RELEASE.md +8 -150
- package/assets/agents/developer.md +59 -71
- package/assets/agents/slopmachine-claude.md +226 -87
- package/assets/agents/slopmachine.md +200 -83
- package/assets/claude/agents/developer.md +55 -73
- package/assets/skills/beads-operations/SKILL.md +103 -51
- package/assets/skills/clarification-gate/SKILL.md +60 -50
- package/assets/skills/claude-worker-management/SKILL.md +152 -16
- package/assets/skills/developer-session-lifecycle/SKILL.md +75 -14
- package/assets/skills/development-guidance/SKILL.md +112 -22
- package/assets/skills/evaluation-triage/SKILL.md +86 -93
- package/assets/skills/final-evaluation-orchestration/SKILL.md +158 -29
- package/assets/skills/integrated-verification/SKILL.md +124 -24
- package/assets/skills/owner-evidence-discipline/SKILL.md +23 -6
- package/assets/skills/p8-readiness-reconciliation/SKILL.md +18 -3
- package/assets/skills/planning-gate/SKILL.md +74 -23
- package/assets/skills/planning-guidance/SKILL.md +93 -48
- package/assets/skills/report-output-discipline/SKILL.md +17 -9
- package/assets/skills/retrospective-analysis/SKILL.md +5 -5
- package/assets/skills/scaffold-guidance/SKILL.md +65 -20
- package/assets/skills/submission-packaging/SKILL.md +76 -11
- package/assets/skills/verification-gates/SKILL.md +38 -26
- package/assets/slopmachine/clarification-faithfulness-review-prompt.md +7 -5
- package/assets/slopmachine/clarifier-agent-prompt.md +28 -95
- package/assets/slopmachine/exact-readme-template.md +3 -3
- package/assets/slopmachine/owner-verification-checklist.md +36 -10
- package/assets/slopmachine/phase-1-design-prompt.md +32 -537
- package/assets/slopmachine/phase-1-design-template.md +66 -571
- package/assets/slopmachine/phase-2-execution-planning-prompt.md +47 -689
- package/assets/slopmachine/phase-2-plan-template.md +151 -934
- package/assets/slopmachine/templates/AGENTS.md +23 -11
- package/assets/slopmachine/templates/CLAUDE.md +23 -11
- package/assets/slopmachine/utils/README.md +4 -14
- package/assets/slopmachine/utils/claude_live_common.mjs +78 -116
- package/assets/slopmachine/utils/claude_live_launch.mjs +23 -69
- package/assets/slopmachine/utils/claude_live_status.mjs +99 -13
- package/assets/slopmachine/utils/claude_live_turn.mjs +105 -38
- package/assets/slopmachine/utils/claude_wait_for_rate_limit_reset.mjs +5 -3
- package/assets/slopmachine/utils/claude_worker_common.mjs +18 -1
- package/assets/slopmachine/workflow-init.js +8 -8
- package/package.json +1 -1
- package/src/cli.js +8 -2
- package/src/constants.js +1 -1
- package/src/init.js +102 -63
- package/src/install.js +192 -11
- package/assets/claude/skills/integration-fanin/SKILL.md +0 -23
- package/assets/claude/skills/module-handoff/SKILL.md +0 -26
- package/assets/claude/skills/module-lane-execution/SKILL.md +0 -23
- package/assets/claude/skills/shared-surface-control/SKILL.md +0 -21
- package/assets/skills/hardening-gate/SKILL.md +0 -12
- package/assets/slopmachine/utils/claude_live_channel.mjs +0 -188
package/MANUAL.md
CHANGED
|
@@ -1,96 +1,56 @@
|
|
|
1
|
-
#
|
|
2
|
-
|
|
3
|
-
## What it is
|
|
4
|
-
|
|
5
|
-
theslopmachine installs the workflow-owner agents, the developer agents, Claude runtime assets, and the supporting skills/templates needed to run the delivery workflow inside OpenCode and the Claude-backed path.
|
|
1
|
+
# SlopMachine v2 Manual
|
|
6
2
|
|
|
7
3
|
## Install
|
|
8
4
|
|
|
9
|
-
Run:
|
|
5
|
+
Run from this repository:
|
|
10
6
|
|
|
11
|
-
```
|
|
12
|
-
|
|
7
|
+
```sh
|
|
8
|
+
npm install
|
|
9
|
+
npm link
|
|
10
|
+
slopmachine install
|
|
13
11
|
```
|
|
14
12
|
|
|
15
|
-
|
|
13
|
+
The installer copies OpenCode agents to `~/.config/opencode/agents`, Claude assets to `~/.claude`, shared skills to `~/.agents/skills`, and slopmachine assets to `~/slopmachine`.
|
|
14
|
+
|
|
15
|
+
## Initialize A Task
|
|
16
16
|
|
|
17
|
-
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
- theslopmachine-owned files into `~/slopmachine/`
|
|
21
|
-
- scaffold playbooks into `~/slopmachine/scaffold-playbooks/`
|
|
22
|
-
- the post-bugfix coverage/README audit prompt into `~/slopmachine/test-coverage-prompt.md`
|
|
23
|
-
- merged plugin/MCP config into `~/.config/opencode/opencode.json`
|
|
17
|
+
```sh
|
|
18
|
+
slopmachine init /path/to/task-root
|
|
19
|
+
```
|
|
24
20
|
|
|
25
|
-
The
|
|
21
|
+
The initialized root is intentionally sparse and packaging-friendly. Product code belongs in `repo/`; product-facing docs belong in `docs/`; final kept reports belong in `.tmp/`; project facts belong in `metadata.json`.
|
|
26
22
|
|
|
27
|
-
|
|
23
|
+
Use `--claude` for `slopmachine-claude` runs:
|
|
28
24
|
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
- concrete verified or partial-proof playbooks for the common scaffold families
|
|
25
|
+
```sh
|
|
26
|
+
slopmachine init --claude /path/to/task-root
|
|
27
|
+
```
|
|
33
28
|
|
|
34
|
-
|
|
29
|
+
The active developer rulebook is recorded in `../.ai/metadata.json` as `developer_rulebook_file`. The unused rulebook is removed from the task folder.
|
|
35
30
|
|
|
36
|
-
|
|
31
|
+
## Continue From A Phase Alias
|
|
37
32
|
|
|
38
|
-
```
|
|
39
|
-
slopmachine init
|
|
33
|
+
```sh
|
|
34
|
+
slopmachine init --continue-from P5 /path/to/task-root
|
|
40
35
|
```
|
|
41
36
|
|
|
42
|
-
|
|
37
|
+
Legacy aliases remain accepted for CLI compatibility, but owner-facing language uses Phase 1 through Phase 8.
|
|
38
|
+
|
|
39
|
+
## Developer Rulebooks
|
|
43
40
|
|
|
44
|
-
|
|
45
|
-
|
|
41
|
+
OpenCode developer agents read `AGENTS.md`. Claude developer agents read `CLAUDE.md`. Only the selected rulebook is seeded into a task root. These files are product engineering rulebooks, not owner workflow instructions.
|
|
42
|
+
|
|
43
|
+
## Verification
|
|
44
|
+
|
|
45
|
+
For this package:
|
|
46
|
+
|
|
47
|
+
```sh
|
|
48
|
+
npm run typecheck
|
|
49
|
+
npm run check
|
|
46
50
|
```
|
|
47
51
|
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
- updates `task/.gitignore`
|
|
54
|
-
- bootstraps beads_rust (`br`)
|
|
55
|
-
- creates workflow-root `.beads/` outside `task/`
|
|
56
|
-
- creates task-root `docs/`, `.tmp/`, `metadata.json`, and `repo/`
|
|
57
|
-
- copies the packaged default rulebook into `task/AGENTS.md`
|
|
58
|
-
- copies the packaged Claude rulebook into `task/CLAUDE.md`
|
|
59
|
-
- seeds `task/repo/README.md`, task-visible product docs, and `task/.claude/settings.json`
|
|
60
|
-
- seeds `.ai/startup-context.md` plus owner-private planning files under `.ai/`
|
|
61
|
-
- keeps execution planning owner-private in `.ai/plan.md`
|
|
62
|
-
- creates the initial git commit so the workspace starts with a clean tree
|
|
63
|
-
- optionally opens `opencode` in `task/`
|
|
64
|
-
- parallel worktrees should stay under hidden workflow-root `.ai/worktrees/` so the visible task root stays clean
|
|
65
|
-
|
|
66
|
-
## Rough workflow
|
|
67
|
-
|
|
68
|
-
1. Intake and setup
|
|
69
|
-
2. Clarification
|
|
70
|
-
3. Planning
|
|
71
|
-
4. Development, starting with scaffold and then module-by-module owner prompts
|
|
72
|
-
5. Rough integrated verification and hardening: repo coherence and small owner-side fixes only, with no Docker execution
|
|
73
|
-
6. Evaluation and fix verification, including the final coverage and README audit inside `P7`
|
|
74
|
-
7. Final readiness decision
|
|
75
|
-
8. Submission packaging, including the owner-only Docker and `./repo/run_tests.sh` check
|
|
76
|
-
9. Retrospective
|
|
77
|
-
|
|
78
|
-
The intended fast path is:
|
|
79
|
-
|
|
80
|
-
- plan well
|
|
81
|
-
- land the minimal scaffold baseline
|
|
82
|
-
- execute the plan end to end
|
|
83
|
-
- make the repo coherent
|
|
84
|
-
- proceed through evaluation without Docker execution
|
|
85
|
-
- after evaluation is complete, have the owner run and fix `docker compose up --build` and `./repo/run_tests.sh` before submission closes
|
|
86
|
-
|
|
87
|
-
## Important notes
|
|
88
|
-
|
|
89
|
-
- theslopmachine depends on Node.js/npm, OpenCode, beads_rust (`br`), git, python3, and Docker being available.
|
|
90
|
-
- Unix-like setup paths also depend on `bash` and `curl`, and Linux fallback archive handling depends on `tar`.
|
|
91
|
-
- the Claude-backed path also depends on the `claude` CLI plus `tmux`.
|
|
92
|
-
- packaging and send-data depend on archive support: `zip` on non-Windows systems or PowerShell on Windows.
|
|
93
|
-
- The workflow-owner agents use mandatory skills for specific phases; skipping them is considered a workflow failure.
|
|
94
|
-
- `slopmachine` is the lighter current engine: it keeps the owner prompt smaller, uses more specialized skills, and keeps one active developer session at a time while preserving rollover history when new sessions are intentionally started.
|
|
95
|
-
- the scaffold playbook inventory covers current packaged type, technology, and composed-stack playbooks under `~/slopmachine/scaffold-playbooks/`; unsupported stacks fall back to the generic scaffold path instead of a nonexistent named playbook.
|
|
96
|
-
- Submission packaging collects the final docs, accepted evaluation reports, cleaned OpenCode session exports or one Claude session zip bundle containing only the tracked relevant Claude sessions, and the cleaned repo into the required final structure.
|
|
52
|
+
For generated product repos, developer lanes should run targeted, relevant verification unless explicitly asked to run Docker or `run_tests.sh`.
|
|
53
|
+
|
|
54
|
+
## Asset Continuity
|
|
55
|
+
|
|
56
|
+
`src/constants.js` defines the required packaged slopmachine assets. Installation and initialization should only refer to files present under `assets/`.
|
package/README.md
CHANGED
|
@@ -1,342 +1,72 @@
|
|
|
1
|
-
#
|
|
1
|
+
# SlopMachine v2
|
|
2
2
|
|
|
3
|
-
|
|
3
|
+
SlopMachine is a local project bootstrap and workflow CLI for generating, reviewing, verifying, and packaging software delivery tasks with OpenCode and Claude support.
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
- the `slopmachine` owner agent
|
|
8
|
-
- the `slopmachine-claude` owner agent
|
|
9
|
-
- the `developer` implementation agent
|
|
10
|
-
- required skills under `~/.agents/skills/`
|
|
11
|
-
- Claude worker runtime assets under `~/.claude/`
|
|
12
|
-
- workflow support files under `~/slopmachine/`, including scaffold playbooks
|
|
13
|
-
- the post-bugfix coverage/README audit prompt at `~/slopmachine/test-coverage-prompt.md`
|
|
14
|
-
- OpenCode MCP entries for `context7` and `exa`
|
|
5
|
+
This v2 package keeps the existing installer and CLI behavior while updating the bundled agents, skills, prompts, templates, and workflow guidance around an eight-phase owner process.
|
|
15
6
|
|
|
16
7
|
## Requirements
|
|
17
8
|
|
|
18
|
-
- Node.js 18
|
|
19
|
-
-
|
|
20
|
-
- `
|
|
21
|
-
-
|
|
22
|
-
- `
|
|
23
|
-
- `bash` on Unix-like systems
|
|
24
|
-
- `curl` on Unix-like systems
|
|
25
|
-
- `tar` on Linux for fallback archive handling
|
|
26
|
-
- `opencode`
|
|
27
|
-
- `br` (`beads_rust`)
|
|
28
|
-
- `tmux` for the `slopmachine-claude` live bridge
|
|
29
|
-
- `claude` for the `slopmachine-claude` backend
|
|
30
|
-
- `zip` on non-Windows systems for packaging and send-data archives
|
|
31
|
-
- PowerShell on Windows for packaging and send-data archives
|
|
32
|
-
|
|
33
|
-
`slopmachine setup` verifies or installs what it can.
|
|
34
|
-
|
|
35
|
-
## Install
|
|
9
|
+
- Node.js 18 or newer
|
|
10
|
+
- macOS, Linux, or WSL
|
|
11
|
+
- `opencode` for OpenCode owner and developer agents
|
|
12
|
+
- Claude Code for Claude live developer sessions, when using Claude lanes
|
|
13
|
+
- `br` from beads-rust for task lifecycle tracking
|
|
36
14
|
|
|
37
|
-
From
|
|
15
|
+
## Install From This Repo
|
|
38
16
|
|
|
39
|
-
```
|
|
17
|
+
```sh
|
|
40
18
|
npm install
|
|
41
|
-
npm run check
|
|
42
|
-
npm pack
|
|
43
|
-
npm install -g ./theslopmachine-<version>.tgz
|
|
44
|
-
slopmachine setup
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
If you install a freshly packed local tarball, rerun `slopmachine setup` before bootstrapping a workspace so the installed home assets under `~/slopmachine`, `~/.config/opencode/agents`, and `~/.agents/skills` are refreshed to match the package you just installed.
|
|
48
|
-
|
|
49
|
-
For local development instead:
|
|
50
|
-
|
|
51
|
-
```bash
|
|
52
19
|
npm link
|
|
20
|
+
slopmachine install
|
|
53
21
|
```
|
|
54
22
|
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
### `slopmachine setup`
|
|
58
|
-
|
|
59
|
-
Use this once per machine, then rerun any time you want to refresh packaged assets.
|
|
60
|
-
|
|
61
|
-
```bash
|
|
62
|
-
slopmachine setup
|
|
63
|
-
```
|
|
64
|
-
|
|
65
|
-
What it does:
|
|
66
|
-
|
|
67
|
-
- verifies or installs `opencode`
|
|
68
|
-
- verifies `npm`, `br`, `git`, `python3`, Docker, and the Claude/live-bridge packaging dependencies
|
|
69
|
-
- installs packaged agents into `~/.config/opencode/agents/`
|
|
70
|
-
- installs packaged skills into `~/.agents/skills/`
|
|
71
|
-
- installs Claude runtime assets into `~/.claude/`
|
|
72
|
-
- installs workflow files into `~/slopmachine/`
|
|
73
|
-
- installs scaffold playbooks into `~/slopmachine/scaffold-playbooks/`
|
|
74
|
-
- installs `~/slopmachine/test-coverage-prompt.md` for the final post-bugfix audit
|
|
75
|
-
- updates `~/.config/opencode/opencode.json`
|
|
76
|
-
- ensures packaged MCP entries for `context7` and `exa`
|
|
77
|
-
- optionally asks for an upload token if one is not already stored
|
|
78
|
-
|
|
79
|
-
Notes:
|
|
80
|
-
|
|
81
|
-
- existing upload token is preserved and setup skips that prompt when one already exists
|
|
82
|
-
- existing `context7` and `exa` entries are preserved if already configured
|
|
83
|
-
- package-managed assets are refreshed on rerun
|
|
84
|
-
- scaffold assets now include a shared Docker contract, family matrices, and concrete default playbooks under `~/slopmachine/scaffold-playbooks/`
|
|
85
|
-
|
|
86
|
-
Current scaffold inventory includes:
|
|
23
|
+
`slopmachine install` installs bundled agents, Claude assets, shared skills, slopmachine prompt assets, utility scripts, and MCP config entries under the current user home.
|
|
87
24
|
|
|
88
|
-
|
|
89
|
-
- stack selection matrix
|
|
90
|
-
- type playbooks for web SPA, API service, database, background jobs, offline/local-first, Android, and desktop work
|
|
91
|
-
- technology playbooks for React, Vue, Go, Koa, Laravel, Gin/Templ, MySQL, Postgres, Room, LocalDB, and Rust workspaces
|
|
92
|
-
- composed stack playbooks for browser-only offline SPA, Vue/Koa/MySQL, Vue/Laravel/MySQL, React/Go/Postgres, Go/Gin/Templ/Postgres, Rust fullstack workspace, Android Room offline, WinForms LocalDB, and generic fallback work
|
|
93
|
-
|
|
94
|
-
These playbooks are baseline-only references. The workflow uses them to guide the scaffold step from owner-private planning before module-by-module implementation continues.
|
|
95
|
-
|
|
96
|
-
## Development Checks
|
|
97
|
-
|
|
98
|
-
Run these before packaging changes to the CLI or installed tools:
|
|
99
|
-
|
|
100
|
-
```bash
|
|
101
|
-
npm run typecheck
|
|
102
|
-
npm run check
|
|
103
|
-
```
|
|
104
|
-
|
|
105
|
-
`npm run typecheck` uses TypeScript `checkJs` over the package CLI source and shipped `assets/slopmachine` JavaScript utilities without adding a build step. The utility reference lives at `assets/slopmachine/utils/README.md` and documents each installed helper's arguments and output contract.
|
|
106
|
-
|
|
107
|
-
### `slopmachine init`
|
|
108
|
-
|
|
109
|
-
Use this in a new or empty project directory to create a SlopMachine workspace.
|
|
110
|
-
|
|
111
|
-
```bash
|
|
112
|
-
mkdir my-project
|
|
113
|
-
cd my-project
|
|
114
|
-
slopmachine init
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
Or open OpenCode immediately after bootstrap:
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
slopmachine init -o
|
|
121
|
-
```
|
|
122
|
-
|
|
123
|
-
To adopt an existing project into a SlopMachine workspace and request a later workflow starting phase:
|
|
124
|
-
|
|
125
|
-
```bash
|
|
126
|
-
slopmachine init --adopt --phase P3
|
|
127
|
-
```
|
|
128
|
-
|
|
129
|
-
Equivalent smoother existing-project bootstrap:
|
|
130
|
-
|
|
131
|
-
```bash
|
|
132
|
-
slopmachine init --continue-from P3
|
|
133
|
-
```
|
|
134
|
-
|
|
135
|
-
What it creates:
|
|
136
|
-
|
|
137
|
-
- workflow root `.ai/metadata.json`
|
|
138
|
-
- workflow root `.ai/startup-context.md`
|
|
139
|
-
- hidden workflow root `.ai/worktrees/` for parallel git worktrees when used
|
|
140
|
-
- workflow root `.beads/`
|
|
141
|
-
- `task/`
|
|
142
|
-
- `task/.git/`
|
|
143
|
-
- `task/AGENTS.md`
|
|
144
|
-
- `task/CLAUDE.md`
|
|
145
|
-
- `task/.claude/settings.json`
|
|
146
|
-
- `task/repo/`
|
|
147
|
-
- `task/repo/README.md`
|
|
148
|
-
- `task/docs/questions.md`
|
|
149
|
-
- `task/docs/design.md`
|
|
150
|
-
- `task/docs/api-spec.md`
|
|
151
|
-
- `task/.tmp/`
|
|
152
|
-
- `task/metadata.json`
|
|
153
|
-
|
|
154
|
-
Important details:
|
|
155
|
-
|
|
156
|
-
- `run_id` is created in workflow root `.ai/metadata.json`
|
|
157
|
-
- the operational session root is `task/`
|
|
158
|
-
- product code lives under `task/repo/`
|
|
159
|
-
- task-root `.tmp/` is the audit and fix-check artifact directory used during `P7`
|
|
160
|
-
- task-root `.tmp/` also holds `test_coverage_and_readme_audit_report.md` after the final post-bugfix audit
|
|
161
|
-
- task-root `metadata.json` is strict project metadata only and must contain exactly these keys: `prompt`, `project_type`, `frontend_language`, `backend_language`, `database`, `frontend_framework`, `backend_framework`
|
|
162
|
-
- `project_type` should use only `fullstack`, `backend`, `android`, `ios`, `desktop`, or `web` when known
|
|
163
|
-
- Beads lives in the workflow root outside `task/`
|
|
164
|
-
- `task/.claude/settings.json` seeds Claude Code to use the custom `developer` agent by default for that task root
|
|
165
|
-
- planned parallel git worktrees should live under hidden workflow root `.ai/worktrees/` by default so visible task-root folders do not clutter the delivery structure
|
|
166
|
-
- owner-private execution planning lives under workflow root `.ai/plan.md` and is translated into normal developer prompts
|
|
167
|
-
- after non-`-o` bootstrap, the command prints the exact `cd task` next step so you can continue immediately
|
|
168
|
-
- `--adopt` moves the current project files into `task/repo/`, preserves workflow state outside `task/`, and skips the automatic bootstrap commit
|
|
169
|
-
- `--continue-from <PX>` is a smoother alias for existing-project bootstrap; it implies adoption mode and seeds the requested start phase in one step
|
|
170
|
-
- if `--continue-from <PX>` is run while your current working directory is already `task/` or `task/repo/`, SlopMachine automatically resolves the surrounding workflow root instead of creating nested task/repo directories
|
|
171
|
-
- when a later start phase is seeded for adoption or recovery, the Beads workflow phases before that requested phase are created and immediately marked completed so tracker state matches the seeded entry point
|
|
172
|
-
- in the `slopmachine-claude` path, if adopted or resumed later-phase work has no recoverable tracked Claude developer session yet, the owner must launch and orient the needed Claude lane first and only then continue the substantive work in that same session
|
|
173
|
-
- `--phase <PX>` seeds the initial `current_phase` for adoption/recovery bootstrap; the owner should still fall back if the real repo evidence does not support that later phase
|
|
174
|
-
- `task/docs/plan.md` and `task/docs/test-coverage.md` are not seeded or required; planning and coverage notes stay owner-private under workflow root `.ai/`
|
|
175
|
-
|
|
176
|
-
### `slopmachine set-token`
|
|
177
|
-
|
|
178
|
-
Stores the upload token used by `send-data`.
|
|
25
|
+
## Commands
|
|
179
26
|
|
|
180
|
-
```
|
|
27
|
+
```sh
|
|
28
|
+
slopmachine --help
|
|
29
|
+
slopmachine install
|
|
30
|
+
slopmachine init <target-dir>
|
|
31
|
+
slopmachine init --claude <target-dir>
|
|
181
32
|
slopmachine set-token
|
|
182
33
|
```
|
|
183
34
|
|
|
184
|
-
|
|
35
|
+
Use `slopmachine init` to create or adopt a task root. By default it seeds `AGENTS.md` for OpenCode developer lanes. Use `slopmachine init --claude` to seed `CLAUDE.md` and `.claude/` for script-managed Claude Code lanes. The unused rulebook is not left in the task folder, and `../.ai/metadata.json` records the active `developer_rulebook_file`.
|
|
185
36
|
|
|
186
|
-
|
|
187
|
-
- stores it in `~/.config/slopmachine/config.json`
|
|
188
|
-
- replaces an existing token if one is already stored
|
|
189
|
-
- does not validate the token over the network during entry
|
|
37
|
+
## Phase Map
|
|
190
38
|
|
|
191
|
-
|
|
39
|
+
The owner workflow uses sequential phase names:
|
|
192
40
|
|
|
193
|
-
|
|
41
|
+
- Phase 1: Clarification
|
|
42
|
+
- Phase 2: Planning
|
|
43
|
+
- Phase 3: Development
|
|
44
|
+
- Phase 4: Integrated Verification And Hardening
|
|
45
|
+
- Phase 5: Evaluation And Fix Verification
|
|
46
|
+
- Phase 6: Final Readiness Decision
|
|
47
|
+
- Phase 7: Submission Packaging
|
|
48
|
+
- Phase 8: Retrospective
|
|
194
49
|
|
|
195
|
-
|
|
196
|
-
slopmachine send-data <owner-session-id>
|
|
197
|
-
```
|
|
198
|
-
|
|
199
|
-
Supported options:
|
|
200
|
-
|
|
201
|
-
- `--dry-run`
|
|
202
|
-
- `--yes`
|
|
203
|
-
- `--label <text>`
|
|
204
|
-
- `--project-id <id>`
|
|
205
|
-
- `--output <path>`
|
|
206
|
-
- `--endpoint <url>`
|
|
207
|
-
|
|
208
|
-
Examples:
|
|
209
|
-
|
|
210
|
-
```bash
|
|
211
|
-
slopmachine send-data ses_abc123
|
|
212
|
-
slopmachine send-data ses_abc123 --dry-run
|
|
213
|
-
slopmachine send-data ses_abc123 --yes --label sprint-12
|
|
214
|
-
slopmachine send-data ses_abc123 --endpoint "https://<project-ref>.supabase.co/functions/v1/slopmachine-upload"
|
|
215
|
-
```
|
|
216
|
-
|
|
217
|
-
Where to run it:
|
|
218
|
-
|
|
219
|
-
- preferred: `task/`
|
|
220
|
-
- also supported: workflow root containing `task/`
|
|
221
|
-
- also supported: `task/repo/`
|
|
222
|
-
|
|
223
|
-
If run from `task/repo/`, the command resolves the surrounding task and workflow roots automatically.
|
|
224
|
-
|
|
225
|
-
What it exports live:
|
|
226
|
-
|
|
227
|
-
- owner session from the positional `owner-session-id`
|
|
228
|
-
- developer sessions from workflow-root `.ai/metadata.json`
|
|
229
|
-
- `beads-export.json` from workflow-root `.beads/`
|
|
230
|
-
|
|
231
|
-
What it includes when present:
|
|
232
|
-
|
|
233
|
-
- task-root `.tmp/`
|
|
234
|
-
- `retrospective-<run_id>.md`
|
|
235
|
-
- `improvement-actions-<run_id>.md`
|
|
236
|
-
- `test_coverage_and_readme_audit_report.md`
|
|
237
|
-
|
|
238
|
-
What it always includes:
|
|
239
|
-
|
|
240
|
-
- task-root `metadata.json`
|
|
241
|
-
- `ai-metadata.json`
|
|
242
|
-
- `manifest.json`
|
|
243
|
-
|
|
244
|
-
Fail-fast conditions:
|
|
245
|
-
|
|
246
|
-
- missing owner session id argument
|
|
247
|
-
- missing workflow-root `.ai/metadata.json`
|
|
248
|
-
- missing `run_id`
|
|
249
|
-
- missing tracked developer session ids
|
|
250
|
-
- owner session export failure
|
|
251
|
-
- developer session export failure
|
|
252
|
-
|
|
253
|
-
Warn-only conditions:
|
|
254
|
-
|
|
255
|
-
- missing task-root `.tmp/`
|
|
256
|
-
- missing retrospective files
|
|
257
|
-
|
|
258
|
-
Output behavior:
|
|
259
|
-
|
|
260
|
-
- creates a flat zip archive
|
|
261
|
-
- keeps the local zip by default
|
|
262
|
-
- default zip path:
|
|
263
|
-
- `~/slopmachine/retrospectives/send-data-<run_id>.zip`
|
|
264
|
-
- shows a preview before upload unless `--yes` is passed
|
|
265
|
-
|
|
266
|
-
## Config Files
|
|
267
|
-
|
|
268
|
-
Machine-level config:
|
|
269
|
-
|
|
270
|
-
- `~/.config/slopmachine/config.json`
|
|
271
|
-
|
|
272
|
-
Current schema:
|
|
273
|
-
|
|
274
|
-
```json
|
|
275
|
-
{
|
|
276
|
-
"upload": {
|
|
277
|
-
"endpoint": "https://<project-ref>.supabase.co/functions/v1/slopmachine-upload",
|
|
278
|
-
"token": "sm_u_...",
|
|
279
|
-
"timeoutMs": 30000
|
|
280
|
-
}
|
|
281
|
-
}
|
|
282
|
-
```
|
|
283
|
-
|
|
284
|
-
OpenCode config managed by setup:
|
|
285
|
-
|
|
286
|
-
- `~/.config/opencode/opencode.json`
|
|
287
|
-
|
|
288
|
-
Packaged MCPs managed by setup:
|
|
289
|
-
|
|
290
|
-
- `context7`
|
|
291
|
-
- `exa`
|
|
292
|
-
|
|
293
|
-
## Installed Assets
|
|
294
|
-
|
|
295
|
-
Agents:
|
|
296
|
-
|
|
297
|
-
- `~/.config/opencode/agents/slopmachine.md`
|
|
298
|
-
- `~/.config/opencode/agents/slopmachine-claude.md`
|
|
299
|
-
- `~/.config/opencode/agents/developer.md`
|
|
300
|
-
|
|
301
|
-
Skills:
|
|
302
|
-
|
|
303
|
-
- installed under `~/.agents/skills/`
|
|
304
|
-
|
|
305
|
-
Claude runtime assets:
|
|
306
|
-
|
|
307
|
-
- `~/.claude/agents/developer.md`
|
|
308
|
-
- `~/.claude/skills/frontend-design/`
|
|
309
|
-
|
|
310
|
-
Workflow files:
|
|
311
|
-
|
|
312
|
-
- installed under `~/slopmachine/`
|
|
313
|
-
- includes `~/slopmachine/test-coverage-prompt.md`
|
|
50
|
+
The CLI still accepts legacy start aliases where needed: `P1`, `P2`, `P3`, `P4`, `P5`, `P7`, `P8`, `P9`, and `P10`.
|
|
314
51
|
|
|
315
52
|
## Verification
|
|
316
53
|
|
|
317
|
-
|
|
318
|
-
|
|
319
|
-
```bash
|
|
54
|
+
```sh
|
|
55
|
+
npm run typecheck
|
|
320
56
|
npm run check
|
|
321
57
|
```
|
|
322
58
|
|
|
323
|
-
|
|
59
|
+
`npm run check` runs the TypeScript check and verifies the CLI help path.
|
|
324
60
|
|
|
325
|
-
|
|
326
|
-
slopmachine --help
|
|
327
|
-
slopmachine set-token
|
|
328
|
-
slopmachine setup
|
|
329
|
-
```
|
|
61
|
+
## Package Contents
|
|
330
62
|
|
|
331
|
-
|
|
332
|
-
|
|
333
|
-
|
|
334
|
-
|
|
335
|
-
|
|
63
|
+
- `src/`: CLI implementation
|
|
64
|
+
- `bin/`: executable entrypoint
|
|
65
|
+
- `assets/agents/`: OpenCode agents
|
|
66
|
+
- `assets/claude/`: Claude agents and Claude-specific skills
|
|
67
|
+
- `assets/skills/`: shared owner skills
|
|
68
|
+
- `assets/slopmachine/`: workflow prompts, templates, scaffold playbooks, and utility scripts
|
|
336
69
|
|
|
337
|
-
##
|
|
70
|
+
## Developer-Facing Boundaries
|
|
338
71
|
|
|
339
|
-
- the
|
|
340
|
-
- the owner session id is currently supplied manually to `send-data`
|
|
341
|
-
- developer session ids come from workflow-root `.ai/metadata.json`
|
|
342
|
-
- broad workflow files and session exports live at workflow root, outside `task/`
|
|
72
|
+
Developer-facing prompts and rulebooks avoid owner workflow mechanics. They focus on good engineering practice: read the code, follow `AGENTS.md` or `CLAUDE.md`, implement real behavior, keep README claims honest, test meaningful behavior, avoid secrets, do not run Docker or `run_tests.sh` unless asked, and provide proof for completed work.
|
package/RELEASE.md
CHANGED
|
@@ -1,152 +1,10 @@
|
|
|
1
|
-
# Release
|
|
1
|
+
# Release Notes
|
|
2
2
|
|
|
3
|
-
##
|
|
3
|
+
## v2 rebuild
|
|
4
4
|
|
|
5
|
-
|
|
6
|
-
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
2. Test install into an isolated fake home:
|
|
12
|
-
|
|
13
|
-
```bash
|
|
14
|
-
SLOPMACHINE_HOME="$(pwd)/.tmp-home" SLOPMACHINE_NONINTERACTIVE=1 SLOPMACHINE_PLUGIN_BOOTSTRAP=0 node ./bin/slopmachine.js setup
|
|
15
|
-
```
|
|
16
|
-
|
|
17
|
-
That setup path should install `opencode-ai` when OpenCode is missing and only refresh it when the detected version is below the minimum supported version.
|
|
18
|
-
|
|
19
|
-
Users can later refresh to the newest published package with:
|
|
20
|
-
|
|
21
|
-
```bash
|
|
22
|
-
slopmachine upgrade
|
|
23
|
-
```
|
|
24
|
-
|
|
25
|
-
3. Test init into an isolated temp project:
|
|
26
|
-
|
|
27
|
-
```bash
|
|
28
|
-
mkdir -p .tmp-project
|
|
29
|
-
SLOPMACHINE_HOME="$(pwd)/.tmp-home" node ./bin/slopmachine.js init .tmp-project
|
|
30
|
-
```
|
|
31
|
-
|
|
32
|
-
4. Test the open-after-bootstrap path:
|
|
33
|
-
|
|
34
|
-
```bash
|
|
35
|
-
mkdir -p .tmp-project-open
|
|
36
|
-
SLOPMACHINE_HOME="$(pwd)/.tmp-home" node ./bin/slopmachine.js init -o .tmp-project-open
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
5. Test existing-project adoption bootstrap:
|
|
40
|
-
|
|
41
|
-
```bash
|
|
42
|
-
mkdir -p .tmp-project-adopt
|
|
43
|
-
printf 'console.log("hello")\n' > .tmp-project-adopt/index.js
|
|
44
|
-
SLOPMACHINE_HOME="$(pwd)/.tmp-home" node ./bin/slopmachine.js init --adopt --phase P3 .tmp-project-adopt
|
|
45
|
-
```
|
|
46
|
-
|
|
47
|
-
6. Test smoother existing-project bootstrap alias:
|
|
48
|
-
|
|
49
|
-
```bash
|
|
50
|
-
mkdir -p .tmp-project-continue
|
|
51
|
-
printf 'console.log("hello")\n' > .tmp-project-continue/index.js
|
|
52
|
-
SLOPMACHINE_HOME="$(pwd)/.tmp-home" node ./bin/slopmachine.js init --continue-from P3 .tmp-project-continue
|
|
53
|
-
```
|
|
54
|
-
|
|
55
|
-
7. Test `task/repo/` auto-wrap for `--continue-from`:
|
|
56
|
-
|
|
57
|
-
```bash
|
|
58
|
-
mkdir -p .tmp-project-continue-parent/task/repo
|
|
59
|
-
printf 'console.log("hello")\n' > .tmp-project-continue-parent/task/repo/index.js
|
|
60
|
-
(cd .tmp-project-continue-parent/task/repo && SLOPMACHINE_HOME="$(pwd)/../../../.tmp-home" node ../../../../bin/slopmachine.js init --continue-from P3)
|
|
61
|
-
```
|
|
62
|
-
|
|
63
|
-
Note:
|
|
64
|
-
|
|
65
|
-
- `slopmachine init` is Node-driven.
|
|
66
|
-
- Workflow bootstrap is driven through the packaged Node helper `workflow-init.js`.
|
|
67
|
-
- before packing or publishing, make sure `git status --short` does not show junk artifacts such as `.DS_Store`, `__pycache__/`, or other accidental packaging noise
|
|
68
|
-
|
|
69
|
-
## Pack the npm package
|
|
70
|
-
|
|
71
|
-
```bash
|
|
72
|
-
npm pack
|
|
73
|
-
```
|
|
74
|
-
|
|
75
|
-
This should produce a tarball named like:
|
|
76
|
-
|
|
77
|
-
```bash
|
|
78
|
-
theslopmachine-<version>.tgz
|
|
79
|
-
```
|
|
80
|
-
|
|
81
|
-
`<version>` comes from `package.json`, which is the single package-version source of truth.
|
|
82
|
-
|
|
83
|
-
## Inspect package contents
|
|
84
|
-
|
|
85
|
-
```bash
|
|
86
|
-
tar -tzf theslopmachine-<version>.tgz
|
|
87
|
-
```
|
|
88
|
-
|
|
89
|
-
Check that the tarball includes:
|
|
90
|
-
|
|
91
|
-
- `bin/`
|
|
92
|
-
- `src/`
|
|
93
|
-
- `assets/agents/`
|
|
94
|
-
- `assets/skills/`
|
|
95
|
-
- `assets/slopmachine/`
|
|
96
|
-
- `README.md`
|
|
97
|
-
- `RELEASE.md`
|
|
98
|
-
|
|
99
|
-
And specifically verify that the tarball includes the current workflow assets:
|
|
100
|
-
|
|
101
|
-
- `assets/agents/slopmachine.md`
|
|
102
|
-
- `assets/agents/slopmachine-claude.md`
|
|
103
|
-
- `assets/agents/developer.md`
|
|
104
|
-
- `assets/claude/agents/developer.md`
|
|
105
|
-
- `assets/skills/clarification-gate/`
|
|
106
|
-
- `assets/skills/claude-worker-management/`
|
|
107
|
-
- `assets/skills/planning-guidance/`
|
|
108
|
-
- `assets/skills/submission-packaging/`
|
|
109
|
-
- `assets/slopmachine/scaffold-playbooks/`
|
|
110
|
-
- within `assets/slopmachine/scaffold-playbooks/`, verify the shared contract, family matrices, generic unknown-tech guide, and concrete verified/default playbooks are present for the currently supported scaffold families
|
|
111
|
-
- `assets/slopmachine/templates/AGENTS.md`
|
|
112
|
-
- `assets/slopmachine/templates/CLAUDE.md`
|
|
113
|
-
- `assets/slopmachine/clarifier-agent-prompt.md`
|
|
114
|
-
- `assets/slopmachine/phase-1-design-prompt.md`
|
|
115
|
-
- `assets/slopmachine/phase-1-design-template.md`
|
|
116
|
-
- `assets/slopmachine/phase-2-execution-planning-prompt.md`
|
|
117
|
-
- `assets/slopmachine/owner-verification-checklist.md`
|
|
118
|
-
- `assets/slopmachine/exact-readme-template.md`
|
|
119
|
-
- `assets/slopmachine/workflow-init.js`
|
|
120
|
-
- `assets/slopmachine/utils/cleanup_delivery_artifacts.py`
|
|
121
|
-
- `assets/slopmachine/utils/package_claude_session.mjs`
|
|
122
|
-
- `assets/slopmachine/utils/prepare_strict_audit_workspace.mjs`
|
|
123
|
-
- `assets/slopmachine/utils/claude_wait_for_rate_limit_reset.mjs`
|
|
124
|
-
- `assets/slopmachine/utils/claude_wait_for_rate_limit_reset.sh`
|
|
125
|
-
- `assets/slopmachine/utils/claude_live_common.mjs`
|
|
126
|
-
- `assets/slopmachine/utils/claude_live_launch.mjs`
|
|
127
|
-
- `assets/slopmachine/utils/claude_live_turn.mjs`
|
|
128
|
-
- `assets/slopmachine/utils/claude_live_status.mjs`
|
|
129
|
-
- `assets/slopmachine/utils/claude_live_stop.mjs`
|
|
130
|
-
- `assets/slopmachine/utils/run_with_timeout.mjs`
|
|
131
|
-
- `assets/slopmachine/test-coverage-prompt.md`
|
|
132
|
-
|
|
133
|
-
## Publish
|
|
134
|
-
|
|
135
|
-
When ready to publish:
|
|
136
|
-
|
|
137
|
-
```bash
|
|
138
|
-
npm publish
|
|
139
|
-
```
|
|
140
|
-
|
|
141
|
-
If you want a dry run first:
|
|
142
|
-
|
|
143
|
-
```bash
|
|
144
|
-
npm publish --dry-run
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
## Versioning
|
|
148
|
-
|
|
149
|
-
- `package.json` is the single package-version source of truth for the tarball name and CLI version banner
|
|
150
|
-
- bump `package.json` version before each release
|
|
151
|
-
- keep the CLI command as `slopmachine`
|
|
152
|
-
- keep the npm package name as `theslopmachine`
|
|
5
|
+
- Preserves the reference CLI/package behavior.
|
|
6
|
+
- Rebuilds owner agents around Phase 1 through Phase 8 terminology.
|
|
7
|
+
- Adds generic developer prompts for OpenCode and Claude.
|
|
8
|
+
- Adds task-root `AGENTS.md` and `CLAUDE.md` templates focused on product engineering practice.
|
|
9
|
+
- Includes Claude-specific worker skills and all required slopmachine utility scripts.
|
|
10
|
+
- Keeps legacy `P*` phase aliases for CLI compatibility.
|