用 Codex 或 Claude 帮你安装 复制这段 Prompt,粘贴到 Codex、Claude 或其他助手里,让它检查 Skill 页面并帮你完成安装。
直接命令不会经过审查 Prompt;运行前请先检查来源。
npx skills add https://github.com/laicluse/agent-fieldkit --skill prepare命令会保持在同一行。复制前请横向滚动并检查完整内容。
想先保存到本地?可下载 SkillsMP 当前能够提供的文件。
正在显示 SKILL.md
| name | prepare |
| description | Prepare a rover loop file in another repo so it can be woken later. |
Lay a rover loop file in another repo's .autonomous/ now, so the operator can wake it later from inside that repo. Useful when the conversation context for the mission lives here, but the work has to happen there. Also useful when you want to queue up multiple missions in different repos and pick them up one by one.
Prepare is to rover what writing-a-letter-and-leaving-it-on-the-desk is to picking up the phone. The rover is dispatched and runs immediately. Prepare hands the operator a sealed envelope they open from inside the target repo when they are ready.
Free-form text describing:
notify_on_done, reviewbot, commit_splitter) the same way rover parses themExamples:
/rover:prepare ~/code/foo fix the OAuth flow/rover:prepare /Users/me/projects/foo fix the OAuth flow/rover:prepare ../bar refactor the Settings pageThe conversation up to this point is the source of mission context. The operator is invoking prepare because what they want the rover to do has just been discussed; pull from that.
Resolve target repo path. Accept an absolute path, a tilde-expanded path, or a relative path (./, ../, or anything containing a /). Anything else (a bare name, an owner/repo slug, a phrase) is not a path; ask the operator for an explicit one (this is the only case prepare halts for input, it has nothing else to fall back on). Operators who want slug-style invocation can document a personal mapping in their active agent instructions or a shell function; the skill itself stays neutral about clone layout. Verify the resolved path has .git/. If not, surface the error and stop.
Distil mission <NAME>. ALL-CAPS, hyphens, no spaces. Goal not mechanism. Same conventions as rover. ADD-RAW-SOURCES-SUPPORT.md not RAW-SOURCES-CLI-WORK.md. Distil from the dispatch's action verbs.
Suggest a kebab-case mission branch. Same conventions as rover step 2 (no slashes, no prefixes, no rover or space-mission words: add-raw-sources-support, fix-oauth-flow, refactor-settings-page). The branch is recorded in the loop file but not created on disk; the operator runs git checkout -b <name> themselves at wake time.
Write <repo>/.autonomous/.gitignore with content * if it does not yet exist. Use the Write tool so parent directories are created automatically.
Write <repo>/.autonomous/<NAME>.md using the rover template, with these specifics:
branch: filled with the suggested kebab-case mission branch namecontinuation: none (prepared; wake with /rover:rover)continuation_handle: emptylegacy_cron_job_id: emptywatch_checks: 0date +%H:%M, recording that the file was prepared in advance via prepare from another session, continuation is not running yet, mission branch is not created yet, and how the operator picks it up. Example:
[HH:MM prepare] Prepared in advance by /rover:prepare. Continuation NOT running, mission branch NOT created. Operator picks up by: cd <repo> && git checkout -b <branch>, then /rover:rover .autonomous/<NAME>.md.
Report to the operator. Print the exact path written, the branch name proposed, and the two commands they run to start the mission:
cd <repo>
git checkout -b <branch>
Followed in an agent session in that repo by:
/rover:rover .autonomous/<NAME>.md
.autonomous/ is the only filesystem write.Rover's setup contract assumes: I am dispatched here, I run here. Setup steps 1 through 6 (continuation, branch, leftovers, gitignore, loop file, first SURVEY) all happen now in the cwd. That contract is wrong for the case where the conversation context belongs to one repo (or no repo at all), but the mission target is somewhere else.
Prepare strips setup down to the minimum needed for the operator to pick the mission up later from inside the target repo: the loop file with full context, plus .gitignore. Everything else (host continuation, mission branch, leftovers, first SURVEY) is rover's job at pickup time. The pickup command is /rover:rover .autonomous/<NAME>.md; rover detects the path argument, reads the file, arranges host continuation if available, and continues the phase machine from the file's current state.
Same parsing as rover's free-form text path. If the operator names a notifier, reviewbot, or commit_splitter in the brief, parse it, verify the skill or binary exists with the has_skill helper from decide, and write the value into the Integrations block. If a named integration is not installed, write a loud line to the Log instead of silently skipping, same as rover:
[HH:MM prepare] Operator mentioned <skill> but it is not installed. Integration disabled.
The Dispatch block in the prepared loop file is verbatim and never paraphrased once written, same rule as rover. Context is interpretation. Wake reads both; the rover phase machine that wake hands off to compares against Dispatch, never only against Context.
Operator-quoted text included in the Dispatch should be marked as such (with a brief attribution like [Operator context at invocation, YYYY-MM-DD:]) so the rover, reading the file later in a fresh session, can tell what was the literal invocation argument and what was framing.
Same rules as rover. ALL-CAPS, hyphens, no spaces. Goal not mechanism.
ADD-RAW-SOURCES-SUPPORT.md (good: names the goal)FIX-OAUTH-FLOW.md (good)REFACTOR-SETTINGS-PAGE.md (good)RAW-SOURCES-CLI-WORK.md (bad: names the mechanism)WORK-ON-BRAINS.md (bad: vague)If a loop file with the same name already exists in the target's .autonomous/, do not overwrite. Append a numeric suffix (ADD-RAW-SOURCES-SUPPORT-2.md) and tell the operator. The original is somebody's in-flight or queued mission; respect it.