[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DB6RN4SDEYXRDWFZMDQ4XC":3,"skill-same:01M6DB6RN4SDEYXRDWFZMDQ4XC":89},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":16,"categories":17,"keywords":23,"publishedAt":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":49,"commitSha":50,"skillDirectory":51,"forksCount":14,"repositoryHtmlUrl":52,"repositoryHomepageUrl":6,"ownerHtmlUrl":53,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":54,"install":55,"resources":68},"01M6DB6RN4SDEYXRDWFZMDQ4XC","codex-fleet-github",null,"Use when dispatching, sweeping, monitoring, or planning autonomous Codex-on-GitHub runs across the private fleet via the codex-fleet-github MCP server. Drives the Wave-1 workflow_dispatch runner (codex-runner.yml) with propose-only draft PRs and a fail-closed auth model. Covers fleet_dispatch, fleet_sweep, fleet_status, fleet_orchestrate. NOT for local Codex CLI consultation (use codex-consult).","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcodex-fleet-github\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"github","codex fleet github","codex","model","MCP","local","across","runner","only","use","autonomous","sweep","consult","monitoring","orchestrate","planning","auth","codex cli","workflow","mcp server","2026-11-10 10:12:30",false,"---\nname: codex-fleet-github\ndescription: Use when dispatching, sweeping, monitoring, or planning autonomous Codex-on-GitHub runs across the private fleet via the codex-fleet-github MCP server. Drives the Wave-1 workflow_dispatch runner (codex-runner.yml) with propose-only draft PRs and a fail-closed auth model. Covers fleet_dispatch, fleet_sweep, fleet_status, fleet_orchestrate. NOT for local Codex CLI consultation (use codex-consult).\n---\n\n# codex-fleet-github — Autonomous Codex-on-GitHub Fleet Connector\n\nA local FastMCP (stdio) server that lets a Claude Code or Codex agent drive the\nprivate Wave-1 Codex runner (`codex-runner.yml`) on `Prekzursil\u002Fagent-skills-toolchain`.\nIt fans out coding tasks to any repo in the curated fleet, each run producing a\n**draft PR** — nothing is ever merged autonomously.\n\nServer subtree: `tools\u002Fmcp\u002Fcodex-fleet-github\u002F` · FastMCP name: `codex-fleet-github`.\n\n## When to use\n\n- \"Dispatch Codex to fix X in repo Y\" → `fleet_dispatch`.\n- \"Run this task across the whole fleet\" → `fleet_sweep`.\n- \"What Codex runs \u002F draft PRs are open?\" → `fleet_status`.\n- \"Break this plan into per-repo work\" → `fleet_orchestrate`.\n\nDo NOT use for local Codex CLI consult\u002Fcurate\u002Freview (that is the `codex-consult`\nskill), nor for editing `codex-runner.yml` (edit the workflow directly).\n\n## The four tools\n\n| Tool | What it does | Writes? |\n|------|--------------|---------|\n| `fleet_dispatch(repo, task, model?, effort?, max_changed_files?)` | Fires ONE `gh workflow run codex-runner.yml` against `target_repo=repo`. Returns the run URL (best-effort) plus the Actions URL. | Yes — one dispatch, one draft PR |\n| `fleet_sweep(task, repos?, model?, effort?, max_changed_files?)` | Dispatches the same task to many repos (default: enabled repos in `codex-targets.yml`; built-in fallback fleet). Serialized by the runner's concurrency group. | Yes — many dispatches |\n| `fleet_status(limit?)` | Lists recent codex-runner runs and open codex-runner **draft** PRs across the fleet (`gh run list` \u002F `gh search prs`). | No — read-only |\n| `fleet_orchestrate(plan, repos?, dispatch?, ...)` | Structured per-repo decomposition of a plan. By default does NOT dispatch; `dispatch=true` fires `fleet_dispatch` per item. | Only if `dispatch=true` |\n\nThe dispatch contract matches the runner exactly:\n`gh workflow run codex-runner.yml --repo Prekzursil\u002Fagent-skills-toolchain --ref \u003CCODEX_RUNNER_REF> -f target_repo=… -f task=… -f model=… -f effort=… -f max_changed_files=…`.\nThe workflow filename `codex-runner.yml` and the `codex-runner` PR label are the\nrunner's own identifiers and are UNCHANGED by the connector rename.\n\n## Safety model (propose-only + fail-closed)\n\n- **Propose-only.** Every run opens a draft PR on the target repo. The connector\n  has no merge path — a human reviews and merges.\n- **Fail-closed auth.** No usable token ⇒ the tool refuses and returns an error;\n  it never falls through to an unauthenticated or wrong-identity `gh` call.\n- **Token never leaks.** The PAT is read from the environment and injected into\n  the child `gh` process env only — never placed on argv, never logged, never\n  echoed in tool output or errors.\n- **No `auth.json` contact.** The connector never reads or writes the runner's\n  `auth.json`; it only triggers `workflow_dispatch`.\n- **Boundary-validated inputs.** repo\u002Ftask\u002Fmodel\u002Feffort\u002Fmax_changed_files are\n  validated at the tool boundary and passed to `gh` as an argv list (no shell),\n  so no injection through task text.\n\n## Auth & setup\n\n1. **Token.** Create a fine-grained PAT with `actions:write` on\n   `Prekzursil\u002Fagent-skills-toolchain` (dispatch) and `pull-requests:read` across\n   the fleet (status). Export it as `CODEX_DISPATCH_PAT`. Resolution order:\n   `CODEX_DISPATCH_PAT` → `GH_TOKEN` → `GITHUB_TOKEN` → OS keyring\n   (`codex-fleet-github`\u002F`dispatch`). Reference the env var NAME only — never\n   paste the secret value into any config file.\n2. **Runner ref (important pre-merge).** `CODEX_RUNNER_REF` selects which ref\n   `gh workflow run` targets. The server defaults to `main`, BUT until **PR #68**\n   merges the workflow only exists on the runner branch — set\n   `CODEX_RUNNER_REF=feat\u002Fcodex-parity-runner` until then, then switch back to\n   `main` (or unset).\n3. **Register the MCP server** (see the splice files in this folder):\n   - Canonical manifest: `canonical-mcp-servers.entry.json`\n   - Claude `~\u002F.mcp.json`: `mcp.json.entry.json`\n   - Codex `~\u002F.codex\u002Fconfig.toml`: `config.toml.entry.toml`\n4. **Reconnect.** In Claude: `\u002Fmcp reconnect codex-fleet-github`. In Codex: restart\n   the session (it forwards `env_vars` on launch).\n\n## Env overrides (advanced)\n\n`CODEX_RUNNER_REPO` \u002F `CODEX_RUNNER_REF` \u002F `CODEX_RUNNER_WORKFLOW`,\n`CODEX_QZT_REPO`, `CODEX_TARGETS_FILE` \u002F `CODEX_TARGETS_PATH`,\n`CODEX_FLEET_OWNER`, `CODEX_GH_BIN`. `codex-targets.yml` is resolved local-file →\nQZT `gh api` (root then `.github\u002F`) → built-in fallback fleet.\n\n## Verify\n\n- `python -c \"import server\"` constructs `FastMCP(\"codex-fleet-github\")`.\n- `fleet_status()` with a valid token returns recent runs without dispatching —\n  the safe smoke test. If it errors with an auth message and no `gh` call fired,\n  fail-closed is working.\n","# codex-fleet-github — Autonomous Codex-on-GitHub Fleet Connector\n\nA local FastMCP (stdio) server that lets a Claude Code or Codex agent drive the\nprivate Wave-1 Codex runner (`codex-runner.yml`) on `Prekzursil\u002Fagent-skills-toolchain`.\nIt fans out coding tasks to any repo in the curated fleet, each run producing a\n**draft PR** — nothing is ever merged autonomously.\n\nServer subtree: `tools\u002Fmcp\u002Fcodex-fleet-github\u002F` · FastMCP name: `codex-fleet-github`.\n\n## When to use\n\n- \"Dispatch Codex to fix X in repo Y\" → `fleet_dispatch`.\n- \"Run this task across the whole fleet\" → `fleet_sweep`.\n- \"What Codex runs \u002F draft PRs are open?\" → `fleet_status`.\n- \"Break this plan into per-repo work\" → `fleet_orchestrate`.\n\nDo NOT use for local Codex CLI consult\u002Fcurate\u002Freview (that is the `codex-consult`\nskill), nor for editing `codex-runner.yml` (edit the workflow directly).\n\n## The four tools\n\n| Tool | What it does | Writes? |\n|------|--------------|---------|\n| `fleet_dispatch(repo, task, model?, effort?, max_changed_files?)` | Fires ONE `gh workflow run codex-runner.yml` against `target_repo=repo`. Returns the run URL (best-effort) plus the Actions URL. | Yes — one dispatch, one draft PR |\n| `fleet_sweep(task, repos?, model?, effort?, max_changed_files?)` | Dispatches the same task to many repos (default: enabled repos in `codex-targets.yml`; built-in fallback fleet). Serialized by the runner's concurrency group. | Yes — many dispatches |\n| `fleet_status(limit?)` | Lists recent codex-runner runs and open codex-runner **draft** PRs across the fleet (`gh run list` \u002F `gh search prs`). | No — read-only |\n| `fleet_orchestrate(plan, repos?, dispatch?, ...)` | Structured per-repo decomposition of a plan. By default does NOT dispatch; `dispatch=true` fires `fleet_dispatch` per item. | Only if `dispatch=true` |\n\nThe dispatch contract matches the runner exactly:\n`gh workflow run codex-runner.yml --repo Prekzursil\u002Fagent-skills-toolchain --ref \u003CCODEX_RUNNER_REF> -f target_repo=… -f task=… -f model=… -f effort=… -f max_changed_files=…`.\nThe workflow filename `codex-runner.yml` and the `codex-runner` PR label are the\nrunner's own identifiers and are UNCHANGED by the connector rename.\n\n## Safety model (propose-only + fail-closed)\n\n- **Propose-only.** Every run opens a draft PR on the target repo. The connector\n  has no merge path — a human reviews and merges.\n- **Fail-closed auth.** No usable token ⇒ the tool refuses and returns an error;\n  it never falls through to an unauthenticated or wrong-identity `gh` call.\n- **Token never leaks.** The PAT is read from the environment and injected into\n  the child `gh` process env only — never placed on argv, never logged, never\n  echoed in tool output or errors.\n- **No `auth.json` contact.** The connector never reads or writes the runner's\n  `auth.json`; it only triggers `workflow_dispatch`.\n- **Boundary-validated inputs.** repo\u002Ftask\u002Fmodel\u002Feffort\u002Fmax_changed_files are\n  validated at the tool boundary and passed to `gh` as an argv list (no shell),\n  so no injection through task text.\n\n## Auth & setup\n\n1. **Token.** Create a fine-grained PAT with `actions:write` on\n   `Prekzursil\u002Fagent-skills-toolchain` (dispatch) and `pull-requests:read` across\n   the fleet (status). Export it as `CODEX_DISPATCH_PAT`. Resolution order:\n   `CODEX_DISPATCH_PAT` → `GH_TOKEN` → `GITHUB_TOKEN` → OS keyring\n   (`codex-fleet-github`\u002F`dispatch`). Reference the env var NAME only — never\n   paste the secret value into any config file.\n2. **Runner ref (important pre-merge).** `CODEX_RUNNER_REF` selects which ref\n   `gh workflow run` targets. The server defaults to `main`, BUT until **PR #68**\n   merges the workflow only exists on the runner branch — set\n   `CODEX_RUNNER_REF=feat\u002Fcodex-parity-runner` until then, then switch back to\n   `main` (or unset).\n3. **Register the MCP server** (see the splice files in this folder):\n   - Canonical manifest: `canonical-mcp-servers.entry.json`\n   - Claude `~\u002F.mcp.json`: `mcp.json.entry.json`\n   - Codex `~\u002F.codex\u002Fconfig.toml`: `config.toml.entry.toml`\n4. **Reconnect.** In Claude: `\u002Fmcp reconnect codex-fleet-github`. In Codex: restart\n   the session (it forwards `env_vars` on launch).\n\n## Env overrides (advanced)\n\n`CODEX_RUNNER_REPO` \u002F `CODEX_RUNNER_REF` \u002F `CODEX_RUNNER_WORKFLOW`,\n`CODEX_QZT_REPO`, `CODEX_TARGETS_FILE` \u002F `CODEX_TARGETS_PATH`,\n`CODEX_FLEET_OWNER`, `CODEX_GH_BIN`. `codex-targets.yml` is resolved local-file →\nQZT `gh api` (root then `.github\u002F`) → built-in fallback fleet.\n\n## Verify\n\n- `python -c \"import server\"` constructs `FastMCP(\"codex-fleet-github\")`.\n- `fleet_status()` with a valid token returns recent runs without dispatching —\n  the safe smoke test. If it errors with an auth message and no `gh` call fired,\n  fail-closed is working.\n",{"name":5,"description":7},"main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Fskills\u002Fcodex-fleet-github","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":56,"prompt":66,"zipAvailable":67},[57,60,63],{"tool":58,"command":59},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill codex-fleet-github",{"tool":61,"command":62},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill codex-fleet-github",{"tool":64,"command":65},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill codex-fleet-github","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcodex-fleet-github\u002FSKILL.md",true,[69,75,79,85],{"path":70,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":73,"sourceHtmlUrl":74},"references\u002Ftsconfig-strict.json","REFERENCE","参考文档",3426,"https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Ftypescript-expert\u002Freferences\u002Ftsconfig-strict.json",{"path":76,"resourceType":71,"resourceTypeDesc":72,"sizeBytes":77,"sourceHtmlUrl":78},"references\u002Ftypescript-cheatsheet.md",7424,"https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Ftypescript-expert\u002Freferences\u002Ftypescript-cheatsheet.md",{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"references\u002Futility-types.ts","SCRIPT","脚本",8629,"https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Ftypescript-expert\u002Freferences\u002Futility-types.ts",{"path":86,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":87,"sourceHtmlUrl":88},"scripts\u002Fts_diagnostic.py",6219,"https:\u002F\u002Fgithub.com\u002Fsapsapshen\u002Fai-memory-router\u002Fblob\u002Fmain\u002Fskills-store\u002Fglobal\u002Ftypescript-expert\u002Fscripts\u002Fts_diagnostic.py",[90,111,135,162,176,192],{"skillNo":91,"name":92,"nameZh":6,"description":93,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":44},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[97,98,99,100,101,102,103,104,105,33,106,107,108,109,110],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","context","repo","injection","execution","file",{"skillNo":112,"name":113,"nameZh":6,"description":114,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":115,"categories":116,"keywords":118,"publishedAt":44},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[117],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[119,120,121,122,123,124,125,126,127,128,129,130,42,131,33,132,133,29,134,28],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","windows","free","molecular dynamics","do",{"skillNo":136,"name":137,"nameZh":6,"description":138,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":147,"publishedAt":44},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[141,144],{"categoryNo":142,"categoryName":143,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":145,"categoryName":146,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[148,149,150,151,152,153,154,155,156,157,120,158,159,160,161],"review","visual","visual review","pages","web","false","iteration","take","check","slides","ui","screenshot","playwright","screenshots",{"skillNo":163,"name":164,"nameZh":6,"description":165,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":166,"categories":167,"keywords":168,"publishedAt":44},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[164,169,170,171,172,173,174,175],"setup","report","project","installation","project setup","issues","state",{"skillNo":177,"name":178,"nameZh":6,"description":179,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":180,"categories":181,"keywords":183,"publishedAt":44},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[182],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[178,184,102,185,186,187,33,188,189,190,191],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":193,"name":169,"nameZh":6,"description":194,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":195,"categories":196,"keywords":197,"publishedAt":44},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[169,171,29,198,173,199],"files","interactive"]