@koda-sl/baker-cli 0.91.0 → 0.93.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -2322,6 +2322,8 @@ baker actions release <action-id>
2322
2322
 
2323
2323
  baker actions create --name "Build hero" --description "..."
2324
2324
  # → returns { ok, data: { tempId }, hints: [...] } — check hints for dependencies/description reminders
2325
+ baker actions create --name "Pull data" --description "..." --mission <ref> --order 0
2326
+ # → creates the action AND attaches it to the mission as a step in one atomic op (no loose-action flicker)
2325
2327
  baker actions update <action-id> --name "Better name"
2326
2328
  baker actions complete <action-id-or-tempId> --note "What was done" # stages — applies on chat publish
2327
2329
  baker actions discard <action-id> --reason "obsolete"
@@ -2361,6 +2363,44 @@ Permissions enforced server-side:
2361
2363
 
2362
2364
  ---
2363
2365
 
2366
+ ### Missions (`baker missions`)
2367
+
2368
+ A **Mission** groups an ordered set of actions (its "steps") under one goal, with a markdown **overview** (the human-readable plan). Use a mission whenever a request decomposes into 2+ ordered actions — audits, campaigns, multi-step plans. A single one-off capture stays a loose action.
2369
+
2370
+ Mission write ops stage on the **same chat draft as actions** and apply atomically on the existing publish — there is no separate apply. `BAKER_CHAT_ID` must be set for every command except `list`/`get`.
2371
+
2372
+ ```bash
2373
+ # 1. Open the mission FIRST with the detailed plan (the overview is the point).
2374
+ # Returns { ok, data: { missionTempId }, hints }.
2375
+ baker missions create --title "Audit Google Ads" --overview "## Phase 1 — Pull data\n..."
2376
+
2377
+ # 2. Create each step already attached to the mission, in order. This is the
2378
+ # preferred path: create+attach is one atomic op, so a step never appears as
2379
+ # a loose action between create and attach.
2380
+ baker actions create --name "Pull data" --description "..." --mission <missionTempId> --order 0
2381
+ baker actions create --name "Analyze" --description "..." --mission <missionTempId> --order 1
2382
+
2383
+ # Attach an already-existing action to a mission (when it wasn't created with --mission).
2384
+ # Both --mission and --action accept a real id or a temp_* ref from the same draft.
2385
+ baker missions add-action --mission <id-or-missionTempId> --action <id-or-tempId> --order 0
2386
+
2387
+ baker missions update <mission-id> --title "..." --overview "..." # real id only
2388
+ baker missions set-status <mission-id> --status accomplished # active | accomplished | aborted
2389
+
2390
+ baker missions list [--include-aborted] # per-mission progress (done/total) + ordered steps
2391
+ baker missions get <mission-id>
2392
+ ```
2393
+
2394
+ Rules:
2395
+
2396
+ - **The overview is forward planning** — write it as numbered Phases (goal / what it produces / what unlocks next), with **no calendar framing** (dates, deadlines, ETAs) and **no effort framing** (quick-win, MVP, t-shirt sizes).
2397
+ - **Publishing the chat = the user approving the plan.** The mission and its ordered steps apply atomically; the dashboard then shows the mission grouped, ticking off as steps complete.
2398
+ - **Mark `accomplished` only when the goal is genuinely met**, `aborted` if abandoned — never auto-conclude from step status.
2399
+ - Hard dependencies between steps still go through `baker actions link`; missions (ordering) and dependencies (blocking) are orthogonal.
2400
+ - All staged mission ops revert automatically if the chat is discarded.
2401
+
2402
+ ---
2403
+
2364
2404
  ### `baker schema [command]`
2365
2405
 
2366
2406
  Inspect command argument schemas for AI agent introspection.