Init Script Contract
Author idempotent init.sh under 120s plus sibling test.sh, stop.sh, reset.sh, serve.sh...
Install
npx skills add Archive228/loopkit --skill init-script-contract -g -a claude-code -y- Repository
- Archive228/loopkit756
- Category
- Testing
- Updated
- 4mo ago
- License
- MIT
- Context cost
- Lightabout 1,121 tokens
- Runs scripts
- No, instructions only
What it does
Author idempotent init.sh under 120s plus sibling test.sh, stop.sh, reset.sh, serve.sh with fixed names the harness relies on.
Init Script Contract
Every coding session in a multi-session project starts by bringing the dev server up. If the entry point is named differently each time, or takes four minutes, or prompts for input, you burn tokens and wall-clock on every single session. The fix is a fixed set of script names at the project root with a hard contract. The initializer agent writes them once; every downstream session relies on them.
The names are load-bearing, [[shift-notes]] and [[broken-window-check]] both refer to them by name. Do not invent your own.
When to apply
- You are the initializer agent scaffolding a fresh project.
- You just discovered setup exceeds 120s and need to split cleanly.
- You are auditing an existing project whose sessions keep re-discovering how to launch the app.
The five scripts
| Script | Contract |
|---|---|
init.sh | Clean clone → dev server up on localhost. Idempotent. Under 120s. Zero prompts. |
serve.sh | Start the dev server only. Written when init.sh cannot fit under 120s. |
test.sh | Run the full test suite. Exit non-zero on any failure. |
stop.sh | Cleanly kill the dev server. Sessions run this before exiting. |
reset.sh | Wipe local DB and ephemeral state. Leave code untouched. Used by [[broken-window-check]]. |


