CodeAFShip a feature while you are away

Ship a feature while you are away

Send one brief, close the terminal, and come back to a checked branch in the same conversation.

Work should survive the window it was typed in.
  • a feature that lands while you commute
  • a refactor that runs overnight
  • tests and a README written after dinner

Your terminal window is only a view. The conversation and its tasks live in the folder's engine, so closing the window does not stop the work. In this playbook one /task brief goes to a crew (a planner, a worker and a checker), the window closes half a minute in, and the task lands with no window open. When you run codeaf in the folder again, the same conversation is there with a checked branch and its summary, and one follow-up tests it against a live server and merges it. The machine has to stay awake.

Steps

  1. In the repository, run codeaf and send the brief:
/task Add link expiry and click stats to linkshort. POST /links takes an optional ttl_seconds; once it has passed, GET /<code> answers 410 with {"error": "expired"}. Every redirect counts a hit, and GET /links/<code>/stats answers {"url", "hits", "created_at", "expires_at"}. Use a clock the tests can fake, add tests for expiry and stats, update the README, and make python3 -m unittest pass.
  1. Read the started and crew lines, watch the task tick in the side column, then close the terminal. We closed it 33 seconds in.
  2. Come back later and run codeaf in the same folder. The same conversation opens, landed.
  3. Read the done summary and the ◆ landing line, then ask for checks and the merge:
run the tests on that branch, try a link with ttl_seconds 1 against a live server, and if both are good merge it into main

What you see

The start is · single task 1 started · with a crew line naming the worker, planner, checker and estimate. With the window closed, codeaf engine --status --workspace "$PWD" reports windows 0 attached · 1 conversation open. On reopen the landing line is ◆ Add link expiry and click stats to linkshort · done · 1m06s · 9 files · branch kept · task/add-link-expiry-and-click-stats-93036f, and the merge answer is Merged into main. Both checks passed.

In our run

The task took 1m06s and $0.083 against an estimate of $0.416, the merge turn 1m15s and $0.07: $0.16 for the conversation. Our feature took about a minute; the same shape works for a long task overnight as long as the machine stays awake with the lid open.

Make it yours

  • Any length of task. The engine keeps a conversation while it still has work, then holds it 30 more minutes before it exits. codeaf engine --status --workspace "$PWD" shows what it holds.
  • Keep the lid open. A sleeping machine suspends the engine, so leave it open overnight.
  • Ask for the merge by name. One follow-up in the same conversation ran the tests, tried a live link and merged.

Go further

Keeps working when you close it: Close the terminal and the work goes on. Tasks finish, and reminders and routines still fire with no window open.

Coming soon: describe the org you want and CodeAF builds it: teams, managers, budgets, standing orders.