relay-readylisted
Install: claude install-skill sungjunlee/dev-relay
## Inputs
- Env: optional `RELAY_SKILL_ROOT` defaults to `skills`.
- Files: `/tmp/relay-ready-contract.json` with request, handoff, leaf, and Done Criteria fields; generated request artifacts under `~/.relay/requests/<repo-slug>/`.
- Sibling scripts: `${RELAY_SKILL_ROOT:-skills}/relay-ready/scripts/persist-request.js`, `${RELAY_SKILL_ROOT:-skills}/relay-dispatch/scripts/dispatch.js`.
# Relay Ready
## Use when
- `/relay` cannot safely bypass straight to planning
- The request is ambiguous, too broad, or may need multiple ordered leaves
- No stable Done Criteria or review anchor exists yet
## Do not use when
- Authoring rubrics or dispatch prompts — use `relay-plan`
- Delegating implementation work — use `relay-dispatch`
- Reviewing executor output — use `relay-review`
- Merging a reviewed PR — use `relay-merge`
## Output Contract
Persist artifacts under `~/.relay/requests/<repo-slug>/<request-id>/` (request frontmatter, raw request,
handoff(s), done-criteria snapshot(s), append-only events.jsonl). Field-by-field schema with input
requirements plus persisted request and handoff artifact definitions: see
[`scripts/request-contract.schema.json`](scripts/request-contract.schema.json). `persist-request.js`
validates the input contract on every persistence call; `$defs.RequestArtifact` and
`$defs.HandoffArtifact` document generated frontmatter for downstream consumers.
## Persistence Step
Write a JSON contract file with:
- `source.kind`
- `request_text`
- either `handoff` f