com um clique
babysit
// Orchestrate via @babysitter. Use this skill when asked to babysit a run, orchestrate a process or whenever it is called explicitly. (babysit, babysitter, orchestrate, orchestrate a run, workflow, etc.)
// Orchestrate via @babysitter. Use this skill when asked to babysit a run, orchestrate a process or whenever it is called explicitly. (babysit, babysitter, orchestrate, orchestrate a run, workflow, etc.)
| name | babysit |
| description | Orchestrate via @babysitter. Use this skill when asked to babysit a run, orchestrate a process or whenever it is called explicitly. (babysit, babysitter, orchestrate, orchestrate a run, workflow, etc.) |
Orchestrate .a5c/runs/<runId>/ through iterative execution.
Read the SDK version from versions.json to ensure version compatibility:
SDK_VERSION=$(node -e "try{console.log(JSON.parse(require('fs').readFileSync('${PLUGIN_ROOT}/versions.json','utf8')).sdkVersion||'latest')}catch{console.log('latest')}")
npm i -g @a5c-ai/babysitter-sdk@$SDK_VERSION
CLI="npx -y @a5c-ai/babysitter-sdk@$SDK_VERSION"
If babysitter is already installed globally at the correct version, you may use CLI="babysitter" instead.
Make sure jq is installed and available in the path. If not, install it.
Run the following command to get full orchestration instructions:
$CLI instructions:babysit-skill --harness github-copilot --json
Follow the instructions returned by the command above to orchestrate the run.
IMPORTANT: Unlike Claude Code, GitHub Copilot CLI does NOT have a Stop hook
that can drive the orchestration loop between turns. The sessionEnd hook output
is ignored and cannot block or restart the session.
Therefore, you MUST use in-turn iteration: run the full orchestration loop within a single session turn. The pattern is:
$CLI run:iterate --json -- get pending actionstask:post)$CLI run:iterate --json -- check for more pending actionsAll iteration happens within the same turn -- do NOT rely on hooks to re-enter
the orchestration loop. The agent drives the loop directly by calling
run:iterate repeatedly until completion.
# Initial iterate
RESULT=$($CLI run:iterate --run-id "$RUN_ID" --json)
STATUS=$(echo "$RESULT" | jq -r '.status')
while [ "$STATUS" != "completed" ] && [ "$STATUS" != "failed" ]; do
# Process pending actions from RESULT
# ... execute tasks, post results ...
# Iterate again
RESULT=$($CLI run:iterate --run-id "$RUN_ID" --json)
STATUS=$(echo "$RESULT" | jq -r '.status')
done