
Packet Factory
A lightweight workflow discipline that forces Claude to get explicit approval before executing anything with side effects. You create a packet with intent and scope, review it to APPROVED or REJECTED status, then dispatch it for execution. The clever bit is scope lock: once approved, the packet's intent is frozen, so if the task grows mid-flight you dispatch what you have and create a new packet for the rest. This directly attacks the context bloat problem where a simple task balloons into a session-killing monster. If you're running Claude in any kind of automated loop or delegating real work, this gives you a paper trail and a forcing function to keep tasks atomic.
- GitHub stars
- 2.8K
- last updated
- May 28, 2026
Install
$ npx -y skills add open-gitagent/opengap --skill packet-factory --agent claude-codeInstalls into .claude/skills of the current project.
Files
Packet Factory
The packet factory is the gatekeeper between intent and execution. Nothing with a side effect runs without an APPROVED packet.
Commands
# Create a new packet (DRAFT status)
skills/packet-factory/new-packet.sh \
--intent "Post daily update to Slack #arc-angels" \
--source "Ludo DM 2026-04-01 09:00" \
--destination "Slack #arc-angels"
# Review a packet (set APPROVED or REJECTED)
skills/packet-factory/review-packet.sh --id 2026-04-01-001
# Dispatch an APPROVED packet (executes and logs output)
skills/packet-factory/dispatch-packet.sh --id 2026-04-01-001
Packet Queue
All in-flight packets live in memory/packet-queue.md.
The heartbeat pre-flight check reads this file. DRAFT packets older than 24h are escalated to Ludo.
Scope Lock Rule
Once a packet is APPROVED, scope_locked_at is set and the scope field is frozen.
If the task grows (new deliverable discovered, Ludo asks for something extra), the current packet is dispatched as-is and a new packet is created for the expansion. Never mutate an approved packet's intent or output.
This prevents the single most common failure mode: scope creep → context balloon → session death.
Sponsors
Details
- Repository
- github.com/open-gitagent/opengap
- License
- MIT
- First seen
- Jun 11, 2026