ScopeCI
Commercial CI/CD that connects the contract to the code.

Overview
ScopeCI is commercial CI/CD for software agencies. It connects the contract to the code, so what was sold, what was built, and what was delivered stay in one verifiable picture.
I am building it end-to-end as a founder and engineer.
Problem
Agencies sell scope in contracts and deliver it in repositories. The two drift apart quickly, leading to scope creep, unbilled work, and disputes over what was actually promised.
CI/CD tells you whether code builds; nothing tells you whether it matches the agreement.
Architecture
A TypeScript backend models contracts, milestones, and deliverables and links them to repositories and workflow runs.
CI events update delivery state, so progress against scope is derived from real activity. The repository includes an API, docs, shared libraries, scripts, and workflows.
What was sold
- Client contractTerms, milestones, deliverables
- ScopeCI APITypeScript domain model
- PostgreSQLApproved scope
What gets built
- Linear / JiraThe ticket behind the change
- GitHub PR + ActionsCI run on every change
- Scope checkChange compared with approved scope
- Ship or catchUnapproved work stops before production
Tradeoffs
I prioritized the contract-to-code loop over general project management features.
Broad PM tooling, time tracking, and invoicing breadth were intentionally deferred to keep the core model coherent.
- Contract → Code
- Core loop
- CI events
- Driven by
- Agencies
- Built for
What I'd do differently
Commercial tooling is mostly a domain-modeling problem. Getting contracts, scope changes, and deliverables to relate cleanly matters more than any individual integration.