Skip to main content

Build on an open-source app

Draft — Mission template for the App Works program (APW-08). Placeholders {product}, {business} and {appWork} are filled from the template form when the Mission is created.

Mission: Build my own {product} for {business} on top of {appWork}.

You already run an open-source application as an App Work. This Mission turns "make it ours" into a steady loop: every Monday it looks at what {business} needs from {product}, files up to two small Tasks on {appWork}, and — once you approve them — an Agent implements each one as a pull request against the branch the app deploys from. Each Task stays open until its change is live.

What you get​

SettingValueWhy
CadenceMondays 08:00 UTCOne planning moment a week; reviews fit a normal week.
OutputTasks on the attached App WorkChanges, not new Works.
Tasks per weekup to 2Small batches merge; big batches rot.
Open Tasks cap4The Mission pauses filing while four of its Tasks are open.
ApprovalNew Tasks wait in BacklogNothing starts spending until you move a Task to To do.
Budget$15.00 per agent runA runaway run stops at the cap.
RelationImproves {appWork}Product changes. Add Operates for maintenance Tasks too.

Guardrails this template recommends for the app itself​

These live in the App spec in {appWork}'s repository, not in the Mission. The template offers Propose these rules, which opens a Task that changes the App spec by pull request for you to review:

  • Schema changes are merged by a person — agents.requireHumanMergePaths: **/migrations/**, **/prisma/schema.prisma, **/*.sql, **/schema.rb. Agents may prepare them; only you merge them.
  • Pull requests stay reviewable — agents.maxPullRequestChangedLines: 400. Larger work is split into sub-Tasks before coding; above 1,200 lines no pull request is opened.
  • License and notice files are off-limits — display.protectedPaths: LICENSE*, NOTICE*.

Always enforced by the platform regardless of this template: branch-per-Task, the App spec's checks, protected paths, the merge policy (by default agents never merge), and follow-up Tasks when a merged change fails to build or deploy (at most 2 per change).

Success metrics​

The template creates two draft delivery Goals scoped to {appWork}. Activate them when you are ready.

MetricTargetWhere you see it
First customised feature livewithin 21 days of creating the MissionGoal "First customised feature live"
Changes live per month≥ 4Goal "Four changes live in a month…"
Changes closed without deploying0 per monthTasks tab → Delivery filter
Merge-to-live timemedian ≤ 30 minutesTask Delivery timeline
Follow-up Tasks per merged change≤ 1 on averageTasks related as follow-up
Agent spend per month≤ 8 runs × $15.00 = $120.00Budgets & usage

How the weekly tick plans​

The planner reads this README, prompts/product-brief.md and prompts/task-planning.md, the App Work's name and description, and the titles of its 20 most recent Tasks. It proposes at most two Tasks, drops any whose title matches an open Task, and files the rest in Backlog.

Before you start​

  1. Fill in prompts/product-brief.md in the Mission's knowledge base: who uses {product} at {business}, the three jobs it must do better than the stock app, and what must never change.
  2. Make sure {appWork} has a Fleet node or an isolated run environment set up — App Work Tasks run nowhere else.
  3. Review the App spec checks for {appWork} and admit them for your machines if you use a Fleet node.