deliveryos
v1.0.4
Published
DeliveryOS — platform-agnostic governance CLI (GitHub, GitLab) with installers and CI templates.
Maintainers
Readme
DeliveryOS
Delivery governance for Git hosting: structured sprints, QA review, and release control. GitHub and GitLab are fully supported by the shared CLI; see
docs/PROVIDER_MATRIX.md,docs/GITLAB.md, anddocs/EXTENDING.mdfor other hosts.
Why This Exists
Engineering teams often rely on informal coordination inside GitHub — manual approvals, inconsistent sprint tracking, reactive QA engagement, and socially enforced production releases.
As teams scale, this creates:
- Delivery ambiguity
- QA bottlenecks
- Unclear accountability
- Release risk
- Cross-team misalignment
DeliveryOS embeds structured intake, sprint orchestration, QA governance, and collaborative release gates directly into engineering repositories — without replacing CI/CD pipelines or disrupting developer workflows.
Installation
One command (recommended):
npx deliveryos install --with-templates .
# GitLab (CI bundle + markdown issue templates):
npx deliveryos install --provider gitlab --with-templates .From your repo root. Add --with-labels to create labels via gh (GitHub) or glab (GitLab). Use --dry-run to preview first.
Alternative — clone and run script:
git clone https://github.com/jkaweesi22/deliveryOS
cd deliveryOS
# New install or repo with existing workflows — adds only missing files (safe)
./scripts/install.sh --with-templates /path/to/your-repo
# GitLab
./scripts/install.sh --provider gitlab --with-templates /path/to/your-repo
# Also create labels via gh (GitHub) or glab (GitLab)
./scripts/install.sh --with-templates --with-labels /path/to/your-repo
# Update DeliveryOS (replace existing) — use --dry-run first to preview
./scripts/install.sh --with-templates --overwrite /path/to/your-repoNote: By default, existing files are never overwritten. Use --overwrite only when updating DeliveryOS. See Consumer Setup for the full command guide.
Other commands:
npx deliveryos status . # Show what's installed
npx deliveryos uninstall . # Remove all installed assets (default)
npx deliveryos uninstall --provider github . # GitHub workflows/templates only
npx deliveryos uninstall --provider gitlab --with-templates . # GitLab CI bundle + templates
npx deliveryos uninstall --dry-run . # Preview (no changes)Automation CLI (after npm run build in-repo, or from a published package via npx): issue-event, approval-event, notify, labels-ensure, release-check. See docs/MIGRATION.md and docs/PROVIDER_MATRIX.md.
What gets installed:
| Workflow | Purpose |
|----------|---------|
| delivery-os-issues | issue-event — sprint children, release approver ping, QA assignees, burn-down / auto-close |
| delivery-os-approval | approval-event — dual approval / decline on production issues |
| delivery-os-notify | notify — Telegram (issues, comments, PR merged to main) |
| delivery-os-labels | labels-ensure — create label catalog (manual dispatch) |
Also .github/actions/delivery-os-run (npm ci + npm run build). Workflows then call node dist/main.js ….
Workflows and templates are copied into your repo. No workflow_call to an external org.
Quick Start (After Install)
- Create labels: Actions → DeliveryOS — Labels → Run workflow
- Configure variables: Settings → Secrets and variables → Actions → Variables
RELEASE_APPROVER— GitHub usernameQA_APPROVER— GitHub usernameQA_ASSIGNEES— Comma-separated usernames (e.g.user1,user2)
- Optional: Add
TELEGRAM_BOT_TOKENandTELEGRAM_CHAT_IDfor alerts
Sprint Child Creation
When you open an issue using the Sprint Planning template with a title like SPRINT - Sprint 12:
- Each line under "Sprint Features (One Per Line)" becomes a child issue
- Child issues link back with
Parent Sprint: #N - Closing child issues updates burn-down; sprint auto-closes at 100%
Required: Install with --with-templates so the sprint form is available.
Documentation
| Document | Description | |----------|-------------| | Landing page & quick start | Overview, one-command install, features | | PRFAQ | Product overview and FAQs for all audiences (npm launch, install, governance) | | Press release (npm) | Formal announcement: DeliveryOS on npm | | Consumer Setup | Installation, configuration, variables, labels, Telegram, uninstall | | How To | Create sprints, request releases, approve, report bugs, QA requests | | Architecture | Workflows, templates, data flow | | Migration (CLI) | From inline Actions scripts to the shared CLI | | Provider matrix | GitHub / GitLab first-class; stubs | | GitLab setup | Webhooks, tokens, Bearer, self-managed | | Extending providers | Add Bitbucket, Codeberg, or others | | Platform CI | Variables parity across hosts | | Governance | Lifecycle, approval gates, automation rules |
License
MIT License. See LICENSE for details.
