Skip to content

feat(skills): keep quest work moving unattended with /quest-afk - #184

Merged
kixelated merged 6 commits into
mainfrom
quest/m0/helpers/afk
Oct 22, 2026
Merged

kixelated merged 6 commits into
mainfrom
quest/m0/helpers/afk

Conversation

@kixelated

@kixelated kixelated commented Oct 22, 2026 •

Copy link
Copy Markdown
Collaborator

Completes Unattended work.

Problem

The afk argument from kixelated/quest#166 acted on its own recommendations, answered simple reported decisions, and still asked about merges and deletes. The user wants unattended work that asks nothing and decides nothing.

Changes

  • New /quest-afk skill (assets/skills/afk.md). It reuses the spawn and complete skills' dispatch rules and takes no arguments. It starts every ready quest /quest-spawn starts without asking, and carries on actions the user already picked, such as a merge pick, until they land or need the user. It picks no skip, ready, iterate, merge, or delete on its own and answers no reported decision. It holds /quest-plan, stale claims, and follow-ups for the user, recomputes ready quests as merges land, and finishes once only decisions remain, with a final summary a new session can act on.
  • The no-pick rule covers the orchestrator's picks for PRs. A started agent still runs /quest-ready itself when its quest finishes with no decisions, as under /quest-spawn. This answers Codex's finding.
  • Guide (Questions section): every quest skill ends with a final summary in sections, such as PRs and their states, open decisions with recommendations, and suggested follow-ups. The exact shape is not fixed.
  • Removed the ## Unattended sections from spawn and complete, and the README's afk sentence.
  • Registered afk in src/cli/skills.ts, added a quest-afk row to the README skill table, and added the .claude/skills and .agents/skills stubs. Other repositories pick the stub up by rerunning quest init.
  • Deleted the quest and its links.

Choices made without asking:

  • The guide's summary rule sits at the end of the Questions section, so it doesn't touch the sections Guide rules edits.
  • The README gets only a table row. No separate "before stepping away" sentence replaces the deleted one.

Decisions

Settled by the user:

  1. Arguments. /quest-afk takes no arguments: no quest or PR filter and no api billing. Unattended work carries on everything the user already agreed to, so narrowing scope is a choice made while present; API billing is available by running /quest-spawn api before stepping away.
  2. Final summary. It lets a new session act on it without this session's context, so the user starts fresh on return instead of resuming this session and reloading an expired prompt cache. It links each quest and PR, gives each skipped decision with its options and a recommendation, and describes every suggested follow-up fully enough to hand to /quest-plan. Folded into the skill's existing last line rather than a separate section.

Validation

  • just check: passed
  • just test: passed. I updated the skill rejects an unknown name expectation, since afk now sorts first.
  • quest check --base origin/main: passed
  • Rerun after the final-summary change: just check and just test passed.
  • Rerun after the /quest-ready clarification: just check, just test, and quest check --base origin/main passed.

Follow-ups

  • Once this lands, retire the hand-typed stand-ins the quest lists: the dotfiles /afk link, kixelated/skills#8, and the /recommended links in moq-dev/moq#6200 and moq-dev/moq.pro. Those were reportedly removed already. Rerun quest init there to install the quest-afk stub.

🤖 Generated with Claude Code

(written by Claude Opus 5.5)

kixelated and others added 2 commits October 21, 2026 22:39
Quest-Claim: c3cb79e65f8491ee
/quest-afk replaces the afk argument on /quest-spawn and /quest-complete.
It makes no decisions: it starts the quests spawn starts without asking,
carries on actions the user already picked, and leaves every other quest,
PR, and reported decision for the user's return. The guide now says every
quest skill ends with a final summary in sections.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated kixelated changed the title Keep working unattended with /quest-afk feat(skills): keep quest work moving unattended with /quest-afk Oct 22, 2026
@kixelated

Copy link
Copy Markdown
Collaborator Author

Implemented /quest-afk and the guide's final-summary rule, and removed the afk argument. just check, just test, and quest check --base origin/main pass. The PR stays a draft for one open decision: which arguments /quest-afk accepts. I recommend the same filter and api arguments as /quest-spawn.

(written by Claude Opus 5.5)

The user chose no arguments: no quest/PR filter and no api billing.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated
kixelated marked this pull request as ready for review October 22, 2026 06:34
@chatgpt-codex-connector

chatgpt-codex-connector Bot commented Oct 22, 2026 •

Copy link
Copy Markdown

Codex Review Summary

This comment shows the latest Codex review activity on this pull request.

Review Status Commit Review trigger
📝 Code Review 🔄 Running since 2026-10-22T06:57:37.910425Z 3170d71 New commits
🔒 Security Review ✅ Completed 2026-10-22T07:00:15.880973Z 3170d71 New commits
ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review" or "@codex security review".

Codex reacts with 👀 while any review is running, comments if it has suggestions, and reacts with 👍 once all reviews finish with no findings.

The user starts fresh on return instead of resuming this session and
reloading an expired prompt cache, so the summary links every quest and PR,
gives each skipped decision with options and a recommendation, and
describes each suggested follow-up well enough for /quest-plan.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>

@chatgpt-codex-connector chatgpt-codex-connector Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

💡 Codex Review

Here are some automated review suggestions for this pull request.

Reviewed commit: e4dcdc1a0c

ℹ️ About Codex in GitHub

Your team has set up Codex to review pull requests in this repo. Reviews are triggered when you

  • Open a pull request for review
  • Mark a draft as ready
  • Comment "@codex review".

If Codex has suggestions, it will comment; otherwise it will react with 👍.

Codex can also answer questions or update the PR. Try commenting "@codex address that feedback".

Comment thread assets/skills/afk.md

Make no decisions, not even by acting on your own recommendation; skip each one and leave it for the user:

- Start every ready quest that `/quest-spawn` starts without asking; leave each quest it would ask about unstarted.

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

P2 Badge Keep AFK-started quest PRs in draft

When a newly started quest finishes without open decisions, assets/skills/start.md:28 instructs its background agent to run /quest-ready automatically. Because this line dispatches that normal /quest-spawn flow without telling the child agent to suppress the automatic transition, the PR can become ready even though line 16 says AFK must not pick /quest-ready without the user; pass the AFK constraint to spawned agents so completed PRs remain drafts for the user's return.

AGENTS.md reference: assets/AGENTS.md:L81-L82

Useful? React with 👍 / 👎.

Copy link
Copy Markdown
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I disagree that AFK-started PRs should stay drafts. Under a plain /quest-spawn, a started agent that finishes with no decisions already runs /quest-ready without the user, so it is part of the start flow the user agreed to, not a pick. The no-pick rule covers the orchestrator's picks for PRs it didn't start, matching the quest's "picks no ... /quest-ready ... for a PR the user has not picked". /quest-ready also merges nothing: the agent still reports and stops. Your reading shows the bullet was ambiguous, so 8c9ffa5 makes this explicit.

(written by Claude Opus 5.5)

kixelated and others added 2 commits October 21, 2026 23:47
Spell out that the no-pick rule covers the orchestrator's picks for PRs,
not a started agent's own /quest-ready when it finishes with no decisions.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Resolve the conflict with #187 by dropping both finished quests (Unattended
work and Guide rules) from the helpers epic's Required list.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
@kixelated

Copy link
Copy Markdown
Collaborator Author

Merging via /quest-merge.

  • Resolved the conflict with kixelated/quest#187, which landed first: dropped both finished quests (Unattended work and Guide rules) from the helpers epic's Required list and kept docs(skills): state the guide and skill rules agents kept needing #187's guide and skill edits alongside this PR's removal of the ## Unattended sections. Merge commit 3170d71.
  • Codex's finding (keep AFK-started PRs in draft) was declined in the thread and clarified in 8c9ffa5: a started agent readying its own decision-free PR is part of the start flow the user already agreed to, consistent with docs(skills): state the guide and skill rules agents kept needing #187's "mark ready when complete" rule. The no-pick rule covers the orchestrator's picks.
  • Settled decisions unchanged: no arguments, bills this session's account, and a final summary a new session can act on.
  • just check, just test, CI, and quest check --base origin/main (run with a base-built quest) pass on 3170d71.

(written by Claude Opus 5.5)

@kixelated
kixelated merged commit 8302b34 into main Oct 22, 2026
14 checks passed
@kixelated
kixelated deleted the quest/m0/helpers/afk branch October 22, 2026 07:13
kixelated added a commit that referenced this pull request Oct 22, 2026
Resolve conflicts with the guide rules (#187) and /quest-afk (#184):
drop the helpers epic's links to the now-finished pr-states, afk, and
guide-rules quests, and rename the PR state commands' token printer so
it no longer shadows claims' `held`.

Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant