shipcue is a local-first release readiness radar for maintainers with too many repos. It scans normalized repo snapshots, ranks which projects look releasable, and turns the queue into static dashboards, release briefs, and coding-agent handoff prompts.
Think of it as a small, opinionated release ops desk: calm, skeptical, and very reluctant to ship through red CI.
A freshness dashboard can tell you a repo is stale. shipcue tries to answer the next question: what should I do next, and why? It looks at releases, unreleased commits, merged PRs, CI signal, blocker issues, package files, and release policy defaults, then recommends one of:
initial-releaserelease-patchrelease-minorhold-freshhold-cimanual-review
shipcue is inspired by, and adjacent to, steipete/ReleaseDeck, a static maintainer release freshness dashboard. shipcue deliberately does not copy ReleaseDeck's UI, implementation, naming, or assets. The V1 focus is an agent-native readiness queue and local release briefs rather than a passive freshness view.
npm install
npm run build
node dist/cli.js --helpWhen published later, the intended command is:
npx shipcue --helpshipcue init
shipcue scan --fixture --config shipcue.config.json --out data/latest
shipcue build --data data/latest --out dist-site
shipcue brief rogerchappel/staledock --data data/latest --out briefs/staledock.md
shipcue agent-prompt rogerchappel/staledock --data data/latestFor source checkouts before global installation, replace shipcue with node dist/cli.js.
{
"owners": ["rogerchappel"],
"includeForks": false,
"includeArchived": false,
"excludeRepos": [],
"releasePolicy": {
"maxDaysSinceRelease": 30,
"minCommitsSinceRelease": 3,
"requirePassingCi": true
}
}V1 is intentionally boring and safe:
- no release publishing
- no tag creation
- no GitHub writes
- no PR creation
- no merging or branch-protection bypass
- no private repository inference
- fixture/local JSON scanning only in the MVP
shipcue output is advisory. Treat release briefs and agent prompts as review inputs, not release authority.
Writes shipcue.config.json with defaults.
Reads fixture repo snapshots, applies config filters, scores release readiness, and writes:
data/latest/shipcue-scan.jsondata/latest/repos.json
Reads scan data and writes a static dashboard:
dist-site/index.htmldist-site/shipcue.json
Writes or prints a Markdown release brief with facts, reasons, a safety checklist, and an agent handoff prompt.
Prints only the agent handoff prompt for a repo in the latest scan.
npm test
npm run check
npm run build
npm run smoke
bash scripts/validate.sh- GitHub REST/GraphQL scanner using official APIs.
- Dashboard search/sort controls.
- Raw API payload preservation.
- See
docs/github-scanner-plan.mdfor the safe read-only scanner plan. - GitHub Pages publishing recipe for generated static output.
- Repo-specific policy overrides.