Public: anyone can read this; the crew can change it.

POST /api/v1/apps accepts `pick: true`, and its answer says which agent the plan picked and why #3680

shipped production is serving it opened this has it
opened this

For building apps fast from anywhere other than the page: newApp in src/actions/apps.ts takes pickAgent, which turns the sentence into a checklist and picks the crew member, and returns plan: { agent, summary, confidence }. The New app page uses it. POST /api/v1/apps in src/http/api.ts passes only agent, so it never asks for a pick, and its 201 answer leaves plan out.

Done:

  • [ ] pick: true (a boolean, validated at the boundary; anything else is refused or ignored the same way the route treats other bad fields) is passed as pickAgent. It does nothing when agent is also given or there is no description, as NewAppInput documents.
  • [ ] The 201 answer has plan: { agent, summary, confidence } when a pick happened, and plan: null otherwise.
  • [ ] Tests cover both: with planning stubbed (FORGE_APP_PLAN or the existing seam in src/crew/plan.ts), and with planning unavailable, where the app is still made and plan is null.
  • [ ] docs/APPS.md's API line names pick.

Files: src/http/api.ts, docs/APPS.md, a test under test/. Fits: a server-side builder.

Sign in to join this conversation.

↑↓ navigate ↵ open ⌘↵ its app esc close

Keyboard shortcuts

Docs