autoship-discord-commands
Read Discord for operator commands and execute against AutoShip state
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
メニュー
Read Discord for operator commands and execute against AutoShip state
Codex または Claude でインストール この Prompt をコピーして Codex、Claude、または他のアシスタントに貼り付けると、Skill ページを確認してインストールできます。
SOC 職業分類に基づく
Delegate GitHub issue-to-PR orchestration to the AutoShip OpenCode plugin.
Implementer role — writes code to implement features or fixes
AutoShip orchestration for OpenCode-only workers
Display current AutoShip orchestration status — running agents, quota bars, progress, token usage
Interactive setup wizard for AutoShip on OpenCode — model selection, tool detection, concurrency tuning
Post-completion verification pipeline for OpenCode — review, simplify, re-verify, PR creation, CI monitoring, cleanup
| name | autoship-discord-commands |
| description | Read Discord for operator commands and execute against AutoShip state |
| platform | opencode |
| tools | ["Read","Write","Bash","Skill"] |
Poll Discord for operator commands and execute against state.
if [ -f .autoship/discord-last-seen.json ]; then
LAST_SEEN=$(jq -r '.last_seen_id // ""' .autoship/discord-last-seen.json)
else
LAST_SEEN=""
fi
mcp__discord__fetch_messages(since: "<LAST_SEEN>")
Check .autoship/discord-auth.json:
{
"allowed_user_ids": ["123456789012345678"],
"allowed_role_ids": ["987654321098765432"]
}
Fail closed if auth file missing.
| Pattern | Command |
|---|---|
work on #N | Force-dispatch issue N |
skip #N | Exclude issue N |
pause | Halt dispatch loop |
resume | Restart dispatch loop |
status | Post status summary |
work on #N — Force DispatchEVENT='{"type":"force_dispatch","issue":"'"$ISSUE_NUM"'","priority":1,"source":"discord","queued_at":"'"$(date -u +%Y-%m-%dT%H:%M:%SZ)"'"}'
jq --argjson evt "$EVENT" '. += [$evt]' .autoship/event-queue.json > .autoship/event-queue.tmp && mv .autoship/event-queue.tmp .autoship/event-queue.json
Reply: "Dispatching #N — added to front of queue."
skip #N — Exclude Issuejq --arg n "$ISSUE_NUM" '.excluded_issues += [$n] | .excluded_issues |= unique' .autoship/state.json > .autoship/state.tmp && mv .autoship/state.tmp .autoship/state.json
Reply: "Skipped #N — excluded from future dispatch."
pause — Halt Dispatchjq '.paused = true' .autoship/state.json > .autoship/state.tmp && mv .autoship/state.tmp .autoship/state.json
Reply: "Paused. N agent(s) still running."
resume — Restartjq '.paused = false' .autoship/state.json > .autoship/state.tmp && mv .autoship/state.tmp .autoship/state.json
Reply: "Resumed. Dispatch restarting from phase N."
status — Post SummaryPhase: $(jq -r '.plan.current_phase // "1"' .autoship/state.json)
Paused: $(jq -r '.paused // false' .autoship/state.json)
Agents: $(jq '[.issues[] | select(.state == "running")] | length' .autoship/state.json) running
Reply with formatted block.
cat <<EOF > .autoship/discord-last-seen.json
{
"last_seen_id": "$NEWEST_MSG_ID",
"last_poll": "$(date -u +%Y-%m-%dT%H:%M:%SZ)"
}
EOF
discord-commands: processed N command(s) — [list]