diff --git a/README.md b/README.md index 577dd266..88686bea 100644 --- a/README.md +++ b/README.md @@ -229,6 +229,9 @@ Use `/quest-plan` in Claude Code or `$quest-plan` in Codex. Skills coordinate within your agent session. A started quest stops at a pull request; merging is a separate invocation, so you review every change. +Before stepping away, add `afk` to `/quest-spawn` or `/quest-complete`: the +agent acts on its own recommendations and asks only before merging or deleting. + To bill spawned agents to API keys instead of your agent's account, export `QUEST_API_KEYS` with one or more whitespace-separated keys and run `/quest-spawn api`. Entries may be secret references such as 1Password `op://` diff --git a/assets/skills/complete.md b/assets/skills/complete.md index e1b55c51..b419934d 100644 --- a/assets/skills/complete.md +++ b/assets/skills/complete.md @@ -44,3 +44,12 @@ Dispatch already selected actions before asking the next question; background wo Once every sub-agent has finished, remove local worktrees and branches whose tip is the head of a merged PR; squash merges leave that tip off the base branch. Leave the worktree you are running in and any holding uncommitted work; list those in your summary. + +## Unattended + +With an `afk` argument, the user has stepped away: your recommendation stands in for their pick of skip, `/quest-ready`, or `/quest-iterate`, so dispatch it without asking. +It also answers each simple decision a sub-agent reports. +Still ask about each `/quest-merge` and `/quest-delete` you recommend, as one simple question with your recommendation first. +Skip a PR or reported decision that is not simple, noting why in the summary instead of asking. +Hold suggested `/quest-plan` follow-ups for the summary, since planning is an interview. +The rest of the argument still filters the PRs in scope. diff --git a/assets/skills/spawn.md b/assets/skills/spawn.md index cb8f7b62..021b0838 100644 --- a/assets/skills/spawn.md +++ b/assets/skills/spawn.md @@ -51,6 +51,15 @@ Run selected `/quest-plan` sessions in the foreground. Once every sub-agent has finished, remove local worktrees and branches whose tip is the head of a merged PR; squash merges leave that tip off the base branch. Leave the worktree you are running in and any holding uncommitted work; list those in your summary. +## Unattended + +With an `afk` argument, the user has stepped away: your recommendation stands in for their pick of `/quest-start`, skip, `/quest-ready`, or `/quest-iterate`, so act on it without asking. +It also answers each simple decision an agent reports, including when you resume a headless agent. +Still ask about each `/quest-merge` and `/quest-delete` you recommend, as one simple question with your recommendation first. +Skip a quest, PR, or reported decision that is not simple, noting why in the summary instead of asking. +Hold `/quest-plan` sessions, including deprioritizing and suggested follow-ups, for the summary, since planning is an interview. +The rest of the argument still filters the quests in scope. + ## API keys With an `api` argument, bill agents to API keys instead of this session's account: run each as a headless agent CLI process rather than a sub-agent. diff --git a/quest/m0/helpers/README.md b/quest/m0/helpers/README.md index 1fff2916..e3e75e39 100644 --- a/quest/m0/helpers/README.md +++ b/quest/m0/helpers/README.md @@ -54,7 +54,6 @@ commands from Sep-Oct. Session counts in each child come from that window. - [CI checks in wait](/quest/m0/helpers/wait-checks.md) - `quest wait` wakes on required check results for the head - [quest start](/quest/m0/helpers/start.md) - claim a quest with a draft PR, the `## Decisions needed` hand-back, `quest unblocked --unclaimed`, and CI on ready PRs only - [PR state commands](/quest/m0/helpers/pr-states.md) - `quest iterate`, `ready`, `merge`, and `release` label the one owner of a PR -- [Unattended triage](/quest/m0/helpers/afk.md) - an `afk` argument that only asks about merges and deletes - [Headless agents](/quest/m0/helpers/headless-agents.md) - `/quest-spawn api` launches, resumes, and stops billed agents through one command auto mode allows ## Related diff --git a/quest/m0/helpers/afk.md b/quest/m0/helpers/afk.md deleted file mode 100644 index a8adb98a..00000000 --- a/quest/m0/helpers/afk.md +++ /dev/null @@ -1,24 +0,0 @@ -# [XS] Triage unattended with an afk argument - -## Goal - -`/quest-complete afk` and `/quest-spawn afk` act on their recommendations -without asking, except merges and deletes. This replaces the prompt the -user keeps typing before stepping away: "skip/iterate any that you -recommend, and prompt for any that you recommend I merge... relatively -simple decisions only". - -## Plan - -- Decided 2026-10-19 (user): one shared `afk` argument for both skills, not - a new default and not limited to `/quest-complete`. -- In afk mode, dispatch recommended skip, `/quest-iterate`, and - `/quest-ready` picks without asking. Still ask about every merge and - delete, as one simple question each with the recommendation first. -- A decision that is not simple becomes a skip with a note in the summary - rather than a question. Suggested `/quest-plan` follow-ups wait for the - summary, since planning is an interview. -- The rest of the argument still filters the PRs or quests in scope, as - today. -- Edit `assets/skills/complete.md` and `assets/skills/spawn.md`, following - `PROMPTING.md`.