$npx -y skills add Undertone0809/rudder --skill rudder-real-runtime-verifier-maintainerUse when verifying Rudder agent runtime behavior in a real local environment, especially MCP/native Rudder tools across Codex, Claude, OpenCode, Pi, or user-named runtimes. Trigger for requests like 真是/真实环境跑过吗, 排查所有 rudder tools, transcript/fallback verification, runtime MCP avai
| 1 | # Rudder Real Runtime Verifier Maintainer |
| 2 | |
| 3 | Verify Rudder agent runtime behavior on the user's real local Rudder instance. |
| 4 | This is a black-box runtime acceptance workflow, not an implementation or code |
| 5 | review workflow. |
| 6 | |
| 7 | Default to Chinese when the user asks in Chinese. Put the current truth first: |
| 8 | which runtimes passed, failed, or were blocked, and what transcript evidence |
| 9 | proves it. |
| 10 | |
| 11 | ## Role Boundary |
| 12 | |
| 13 | Default to verification and diagnosis only: |
| 14 | |
| 15 | - Run real local runtime probes and inspect run transcripts, logs, API state, |
| 16 | issue state, comments, and run metadata. |
| 17 | - Create disposable orgs, agents, issues, and runs when needed for proof. |
| 18 | - Separate provider/model failure from Rudder adapter failure. |
| 19 | - Report exact blockers and smallest likely fixes. |
| 20 | - Do not edit source files, configs, git state, or product docs unless the user |
| 21 | explicitly asks for a mutation after the verification request. |
| 22 | |
| 23 | If the user asks to fix the issue, hand back to the lifecycle implementation |
| 24 | route or make the smallest explicit patch, then require this skill's real |
| 25 | runtime proof again before claiming done. |
| 26 | |
| 27 | ## When This Skill Wins |
| 28 | |
| 29 | Use this skill when the core question is whether an agent runtime actually did |
| 30 | the work through Rudder-managed tools in a real local run. |
| 31 | |
| 32 | Typical prompts: |
| 33 | |
| 34 | - "你所有的 agent runtime 都本地测过跑过真实环境了吗?" |
| 35 | - "OpenCode and Pi agent 你也测了吗?" |
| 36 | - "看 transcript,别让它 fallback 用 rudder cli" |
| 37 | - "排查所有 rudder tools,都试一遍" |
| 38 | - "MCP tool 报 org id/auth 问题,正常 agent 调 tool 不该传 org" |
| 39 | - "Codex/Claude/OpenCode/Pi 真实环境跑一下" |
| 40 | |
| 41 | If the user asks for general product acceptance that is not runtime/tool-call |
| 42 | specific, use `product-acceptance-verifier-maintainer` instead. If the user |
| 43 | provides only one failed run id and wants root cause, use |
| 44 | `debug-run-transcript-maintainer` first, then return here for rerun proof after |
| 45 | a fix. |
| 46 | |
| 47 | ## Runtime Matrix |
| 48 | |
| 49 | Default required matrix: |
| 50 | |
| 51 | - Codex |
| 52 | - Claude |
| 53 | - OpenCode |
| 54 | - Pi |
| 55 | |
| 56 | Extend the matrix when the user names additional runtimes such as Cursor or |
| 57 | Gemini. Do not treat a Codex pass as proof for another runtime. |
| 58 | |
| 59 | Read only the relevant reference files: |
| 60 | |
| 61 | - `references/probe-workflow.md`: real local setup, disposable data, probe |
| 62 | script expectations, and proof levels. |
| 63 | - `references/transcript-evidence.md`: how to prove tool use and reject CLI |
| 64 | fallback from logs. |
| 65 | - `references/codex.md`: Codex MCP transcript shape and known traps. |
| 66 | - `references/claude.md`: Claude MCP transcript shape and strict config traps. |
| 67 | - `references/opencode.md`: OpenCode MCP transcript shape, provider/model |
| 68 | caveats, JSONL parser expectations, and final-text pitfalls. |
| 69 | - `references/pi.md`: Pi native extension transcript shape, schema/error |
| 70 | propagation traps, and 429/auth/provider separation. |
| 71 | - `references/reporting.md`: verdict format, mutation ledger, and pass/fail |
| 72 | language. |
| 73 | |
| 74 | ## Acceptance Standard |
| 75 | |
| 76 | A runtime passes only when all are true: |
| 77 | |
| 78 | 1. The local Rudder source of truth is identified, usually |
| 79 | `GET /api/health` on `http://127.0.0.1:3100`. |
| 80 | 2. A real local run was triggered for that runtime, or an existing real local |
| 81 | run was inspected with enough raw transcript/log evidence. |
| 82 | 3. The transcript shows the expected Rudder MCP/native tool calls. |
| 83 | 4. There is no model-visible fallback to shell, Bash, curl, or `rudder` CLI for |
| 84 | Rudder work. |
| 85 | 5. Tool results are not internally failed (`isError`, structured error, |
| 86 | `rudder_cli_command_failed`, missing required argument, auth/org failure). |
| 87 | 6. The terminal product effect was read back: issue status, comments, run |
| 88 | status, final text, API result, or another requested surface. |
| 89 | 7. Provider/model blockers are separated from Rudder adapter/tool blockers. |
| 90 | |
| 91 | If the user requires "all tools", do not only run a happy-path issue workflow. |
| 92 | Run or request a manifest-driven coverage plan: list every exposed tool, verify |
| 93 | schemas load, check runtime-managed identity is not model-provided, and execute |
| 94 | representative read/mutate/file/image/pagination/error cases. Mark unexecuted |
| 95 | tools as not covered. |
| 96 | |
| 97 | ## Default Probe Ladder |
| 98 | |
| 99 | Use the smallest probe that answers the question, then escalate only as needed: |
| 100 | |
| 101 | 1. **Tool availability probe**: call `rudder_agent_me`, require final answer |
| 102 | to say MCP/tool path and no fallback. |
| 103 | 2. **Issue workflow probe**: seed an issue, then require |
| 104 | `rudder_issue_context`, `rudder_issue_checkout`, |
| 105 | `rudder_issue_comment`, and `rudder_issue_done`; read back final issue |
| 106 | status and comments. |
| 107 | 3. **Representative matrix probe**: add read/list/pagination/file/comment/image |
| 108 | examples such as `rudder_runs_errors`, `ru |