Skills

Software Factory

Define the tasks a software factory runs and the services it connects to.

Install

npx skills add mattpocock/skills --skill software-factory -g -a claude-code -y
Repository
mattpocock/skills309k
Category
Engineering
Updated
3d ago
License
MIT
Context cost
Lightabout 1,456 tokens
Runs scripts
No, instructions only

What it does

Shared language for designing a software factory: the tasks it runs and the services it plugs into.

A software factory is a system of agents that turns tickets, PRs and schedules into merged code, deployed on remote infrastructure the user chooses. This skill is the language for designing one. Use these terms, and only these, when discussing or whiteboarding a factory; when the user reaches for a word under Avoid, name the canonical term.

Tasks and runs

Task: A kind of work the factory performs, defined once and run many times: review, explore, implement, ratchet. A task may work on a ticket, a PR, or the codebase as a whole. Avoid: job, workflow, action

Trigger: The event that starts a run: a change in the ticket tracker or git host, a clock in the orchestrator, or another run.

Run: One execution of a task on one runner, from its trigger to its finish, treated as a black box. A run triggers further runs either directly, through logic in the orchestrator, or by changing the ticket tracker or git host. A run never waits for a human: it ends, and the human's later change to the ticket tracker or git host triggers a new run. Avoid: session

Runner: The disposable machine a run executes on. Nothing on it survives the run, even when the machine itself is long-lived: a run's only memory of earlier runs is the ticket tracker, the git host and the orchestrator. Avoid: server, host, box, compute, sandbox

Services

Ticket tracker: Where tickets live, and the factory's human interface: humans schedule work by filing tickets, talk to agents in their comments, and their changes to tickets trigger runs. Avoid: issue tracker, ticket manager, project board

Ticket source: Anything outside the factory that creates tickets in the ticket tracker: a feedback button, a monitor, an error tracker, an inbox. Avoid: data source, trigger source, intake

Git host: Where branches, PRs and reviews live. Avoid: code host, forge, repo

Read the whole SKILL.md on GitHub

More in Engineering