[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71EPD7GAYWYTH73AMBEKGJG":3,"skill-same:01M71EPD7GAYWYTH73AMBEKGJG":151},{"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":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":14,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":49,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M71EPD7GAYWYTH73AMBEKGJG","setup-code-skills",null,"Install Code's repo-level machinery and configure model routing for skills-only consumers. Use for \u002Fsetup-code-skills or setting Code up in a repository.","patinaproject\u002Fskills","patinaproject","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F229996889?v=4","01M71E58JKTDNY1138WYZK44TR","Patina Project","01M71E58K5GH4K16MV6A8BQ6NZ",1,"MIT","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[24,25,26,27,28,29,30,31,32,33,34,35,36,37],"setup code skills","setup","code","routing","setting","model","for","repo","repository","up","install","only","use","configure","2026-11-10 10:12:30",false,"---\nname: setup-code-skills\ndescription: Install Code's repo-level machinery and configure model routing for skills-only consumers. Use for \u002Fsetup-code-skills or setting Code up in a repository.\nmenu-description: install machinery and configure model routing\n---\n\n# Set Up Code Skills\n\nCode ships as a full plugin (hook, subagents) and also as a vendored\nskill catalog. Vendoring carries the skills but not the hook or the agents, so a\nskills-only consumer loses the default-on entry point and the Claude-native\ntargets that provider dispatch names. This skill installs that machinery into\nthe target repo and, on Codex, the repo-scoped Codex config.\n\nThe machinery install is non-interactive and idempotent.\n\n## Install repo-level machinery\n\n`scripts\u002Finstall-machinery.sh` (in this skill's base directory) owns the\nidempotency and no-clobber contract. Run it rather than editing the target files\nby hand. It copies managed hook and agent files on every run, upserts one\nCode `SessionStart` entry while preserving unrelated hooks, and removes\nthe legacy mandate blocks. Re-running refreshes managed files without\nduplicating configuration.\n\nThe installer first checks that the sibling `setup-pstack` skill and the\n`patina-mode` Codex tool reference are present. If any required file is\nmissing, the install fails and tells the reader to install the full Code\nskill catalog.\n\nWhat it materializes from `assets\u002F`:\n\n- The **Code hook** and its context (from `assets\u002Fhooks\u002F`), plus the\n  `setup-pstack` sheet decoder the hook runs, into the repo's `.claude\u002Fhooks\u002F`.\n  The context names skills by their bare names.\n- The **Code agents** (from `assets\u002Fagents\u002F`) into the repo's\n  `.claude\u002Fagents\u002F`, so `subagent_type: \"patina-agent\"` resolves, the effort\n  agents `patina-agent-\u003Clevel>` and `effort-\u003Clevel>` resolve, the review agents\n  `patina-reader` and `patina-reader-\u003Clevel>` resolve, and no-comments\n  can reach `comment-sicko`. `patina-reader` and `comment-sicko` set\n  `omitClaudeMd`, so they start without the user, project, and local CLAUDE.md\n  files and keep only managed policy. An installation puts the machine-specific\n  safety rules these agents need in a managed policy file. Examples are which\n  GitHub identity or config directory to use and a ban on pushing with the\n  plain `git` command. The agents keep their bare names, so the same\n  names resolve when Code is also installed as a plugin. Model choice\n  per role comes from the `setup-pstack` sheet at runtime, not from an agent\n  definition.\n- One `SessionStart` entry matching `startup|resume|clear|compact` in\n  `.claude\u002Fsettings.json`; existing hooks remain in place.\n\nRun it from the target repo:\n\n```bash\nbash \"\u003Cthis-skill>\u002Fscripts\u002Finstall-machinery.sh\"\n```\n\nThe script defaults `--repo` to the current Git toplevel and the instructions\nfile to `\u003Crepo>\u002FCLAUDE.md`. Pass `--repo \u003Cdir>` or `--instructions \u003Cfile>` to\nchoose the legacy instructions file whose managed block should be removed.\n\n### Codex\n\nThe Code plugin's Codex `SessionStart` hook, registered in\n`.codex-plugin\u002Fplugin.json`, delivers the mandate on Codex. Codex asks the user\nto trust plugin hooks through `\u002Fhooks` before it runs them. This installer\nwrites no mandate block to `AGENTS.md`, so Codex never receives the mandate\ntwice. A skills-only Codex install carries no plugin hook, so there the user\nrequests `patina-mode` explicitly. Codex has no subagent registry, so delegates\nroute through the spawn-prompt convention in the patina-mode\n`references\u002Fcodex-tools.md` (dispatch a `spawn_agent` told to read the\n`patina-mode` skill, or `agents\u002Fcomment-sicko.md`, first). Subagent dispatch\nalso needs the `multi_agent` feature. Add `--codex` to enable it:\n\n```bash\nbash \"\u003Cthis-skill>\u002Fscripts\u002Finstall-machinery.sh\" --codex\n```\n\nThat enables `multi_agent` under `[features]` in `\u003Crepo>\u002F.codex\u002Fconfig.toml`,\nidempotently. Writing the repo-scoped config rather than the user's global\n`~\u002F.codex\u002Fconfig.toml` keeps the machinery committed and shared across\ncontributors. Codex honors a repo-scoped `.codex\u002Fconfig.toml` only for a project\nthe user has marked trusted, so the flag takes effect after Codex's one-time\ntrust prompt. Override the path with `--codex-config \u003Cfile>`.\n\nEvery run, with or without `--codex`, removes the managed mandate block that an\nearlier install wrote to `CLAUDE.md` or `AGENTS.md`, and leaves all other\ncontent in those files untouched. `--codex-agents \u003Cfile>` names a different\n`AGENTS.md` to clean. A block without its closing marker stays in place.\n\nSkills load natively by name on Codex. The `\u002Fcommand` stubs under\n`.codex-plugin\u002Fprompts\u002F*` come from the pstack-claude base; the installer does\nnot write or edit them.\n\n## Configure model routing\n\nAfter the installer succeeds, read its final `next skill:` line. Load the skill\nat that path and run it. Let `setup-pstack` own its model choices, probes,\nconfirmation, and writes.\n\n## Confirm\n\nTell the user what the machinery install wrote: the session hook, the\nCode agents, any legacy mandate block it removed, and on Codex the\n`multi_agent` flag. Relay `setup-pstack`'s\nfinal report. Report setup-code-skills complete only when `setup-pstack`\nsucceeds. Otherwise, report it incomplete and include the reason\n`setup-pstack` reported when it stopped.\n","# Set Up Code Skills\n\nCode ships as a full plugin (hook, subagents) and also as a vendored\nskill catalog. Vendoring carries the skills but not the hook or the agents, so a\nskills-only consumer loses the default-on entry point and the Claude-native\ntargets that provider dispatch names. This skill installs that machinery into\nthe target repo and, on Codex, the repo-scoped Codex config.\n\nThe machinery install is non-interactive and idempotent.\n\n## Install repo-level machinery\n\n`scripts\u002Finstall-machinery.sh` (in this skill's base directory) owns the\nidempotency and no-clobber contract. Run it rather than editing the target files\nby hand. It copies managed hook and agent files on every run, upserts one\nCode `SessionStart` entry while preserving unrelated hooks, and removes\nthe legacy mandate blocks. Re-running refreshes managed files without\nduplicating configuration.\n\nThe installer first checks that the sibling `setup-pstack` skill and the\n`patina-mode` Codex tool reference are present. If any required file is\nmissing, the install fails and tells the reader to install the full Code\nskill catalog.\n\nWhat it materializes from `assets\u002F`:\n\n- The **Code hook** and its context (from `assets\u002Fhooks\u002F`), plus the\n  `setup-pstack` sheet decoder the hook runs, into the repo's `.claude\u002Fhooks\u002F`.\n  The context names skills by their bare names.\n- The **Code agents** (from `assets\u002Fagents\u002F`) into the repo's\n  `.claude\u002Fagents\u002F`, so `subagent_type: \"patina-agent\"` resolves, the effort\n  agents `patina-agent-\u003Clevel>` and `effort-\u003Clevel>` resolve, the review agents\n  `patina-reader` and `patina-reader-\u003Clevel>` resolve, and no-comments\n  can reach `comment-sicko`. `patina-reader` and `comment-sicko` set\n  `omitClaudeMd`, so they start without the user, project, and local CLAUDE.md\n  files and keep only managed policy. An installation puts the machine-specific\n  safety rules these agents need in a managed policy file. Examples are which\n  GitHub identity or config directory to use and a ban on pushing with the\n  plain `git` command. The agents keep their bare names, so the same\n  names resolve when Code is also installed as a plugin. Model choice\n  per role comes from the `setup-pstack` sheet at runtime, not from an agent\n  definition.\n- One `SessionStart` entry matching `startup|resume|clear|compact` in\n  `.claude\u002Fsettings.json`; existing hooks remain in place.\n\nRun it from the target repo:\n\n```bash\nbash \"\u003Cthis-skill>\u002Fscripts\u002Finstall-machinery.sh\"\n```\n\nThe script defaults `--repo` to the current Git toplevel and the instructions\nfile to `\u003Crepo>\u002FCLAUDE.md`. Pass `--repo \u003Cdir>` or `--instructions \u003Cfile>` to\nchoose the legacy instructions file whose managed block should be removed.\n\n### Codex\n\nThe Code plugin's Codex `SessionStart` hook, registered in\n`.codex-plugin\u002Fplugin.json`, delivers the mandate on Codex. Codex asks the user\nto trust plugin hooks through `\u002Fhooks` before it runs them. This installer\nwrites no mandate block to `AGENTS.md`, so Codex never receives the mandate\ntwice. A skills-only Codex install carries no plugin hook, so there the user\nrequests `patina-mode` explicitly. Codex has no subagent registry, so delegates\nroute through the spawn-prompt convention in the patina-mode\n`references\u002Fcodex-tools.md` (dispatch a `spawn_agent` told to read the\n`patina-mode` skill, or `agents\u002Fcomment-sicko.md`, first). Subagent dispatch\nalso needs the `multi_agent` feature. Add `--codex` to enable it:\n\n```bash\nbash \"\u003Cthis-skill>\u002Fscripts\u002Finstall-machinery.sh\" --codex\n```\n\nThat enables `multi_agent` under `[features]` in `\u003Crepo>\u002F.codex\u002Fconfig.toml`,\nidempotently. Writing the repo-scoped config rather than the user's global\n`~\u002F.codex\u002Fconfig.toml` keeps the machinery committed and shared across\ncontributors. Codex honors a repo-scoped `.codex\u002Fconfig.toml` only for a project\nthe user has marked trusted, so the flag takes effect after Codex's one-time\ntrust prompt. Override the path with `--codex-config \u003Cfile>`.\n\nEvery run, with or without `--codex`, removes the managed mandate block that an\nearlier install wrote to `CLAUDE.md` or `AGENTS.md`, and leaves all other\ncontent in those files untouched. `--codex-agents \u003Cfile>` names a different\n`AGENTS.md` to clean. A block without its closing marker stays in place.\n\nSkills load natively by name on Codex. The `\u002Fcommand` stubs under\n`.codex-plugin\u002Fprompts\u002F*` come from the pstack-claude base; the installer does\nnot write or edit them.\n\n## Configure model routing\n\nAfter the installer succeeds, read its final `next skill:` line. Load the skill\nat that path and run it. Let `setup-pstack` own its model choices, probes,\nconfirmation, and writes.\n\n## Confirm\n\nTell the user what the machinery install wrote: the session hook, the\nCode agents, any legacy mandate block it removed, and on Codex the\n`multi_agent` flag. Relay `setup-pstack`'s\nfinal report. Report setup-code-skills complete only when `setup-pstack`\nsucceeds. Otherwise, report it incomplete and include the reason\n`setup-pstack` reported when it stopped.\n",{"name":5,"description":7,"menu-description":43},"install machinery and configure model routing","main","e6ee720f466a8344a52abd87679191fadde3b63f","plugins\u002Fcode\u002Fskills\u002Fsetup-code-skills","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills","https:\u002F\u002Fgithub.com\u002Fpatinaproject","https:\u002F\u002Fwww.patinaproject.com","The best way to pick your next pair of boots or shoes.","2026-11-12 00:44:02",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add patinaproject\u002Fskills --skill setup-code-skills",{"tool":58,"command":59},"bunx","bunx skills add patinaproject\u002Fskills --skill setup-code-skills",{"tool":61,"command":62},"pnpm","pnpm dlx skills add patinaproject\u002Fskills --skill setup-code-skills","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002FSKILL.md",true,[66,72,76,80,83,87,91,95,99,102,106,110,114,118,122,125,129,133,137,141,147],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"assets\u002Fagents\u002Fcomment-sicko.md","ASSET","资产文件",2249,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fcomment-sicko.md",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"assets\u002Fagents\u002Feffort-high.md",467,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Feffort-high.md",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"assets\u002Fagents\u002Feffort-low.md",462,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Feffort-low.md",{"path":81,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":82},"assets\u002Fagents\u002Feffort-max.md","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Feffort-max.md",{"path":84,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":85,"sourceHtmlUrl":86},"assets\u002Fagents\u002Feffort-medium.md",477,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Feffort-medium.md",{"path":88,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":89,"sourceHtmlUrl":90},"assets\u002Fagents\u002Feffort-xhigh.md",472,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Feffort-xhigh.md",{"path":92,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":93,"sourceHtmlUrl":94},"assets\u002Fagents\u002Fpatina-agent-high.md",475,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent-high.md",{"path":96,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":97,"sourceHtmlUrl":98},"assets\u002Fagents\u002Fpatina-agent-low.md",471,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent-low.md",{"path":100,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":97,"sourceHtmlUrl":101},"assets\u002Fagents\u002Fpatina-agent-max.md","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent-max.md",{"path":103,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":104,"sourceHtmlUrl":105},"assets\u002Fagents\u002Fpatina-agent-medium.md",483,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent-medium.md",{"path":107,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":108,"sourceHtmlUrl":109},"assets\u002Fagents\u002Fpatina-agent-xhigh.md",479,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent-xhigh.md",{"path":111,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":112,"sourceHtmlUrl":113},"assets\u002Fagents\u002Fpatina-agent.md",687,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-agent.md",{"path":115,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":116,"sourceHtmlUrl":117},"assets\u002Fagents\u002Fpatina-reader-high.md",786,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader-high.md",{"path":119,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":120,"sourceHtmlUrl":121},"assets\u002Fagents\u002Fpatina-reader-low.md",782,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader-low.md",{"path":123,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":120,"sourceHtmlUrl":124},"assets\u002Fagents\u002Fpatina-reader-max.md","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader-max.md",{"path":126,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":127,"sourceHtmlUrl":128},"assets\u002Fagents\u002Fpatina-reader-medium.md",794,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader-medium.md",{"path":130,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":131,"sourceHtmlUrl":132},"assets\u002Fagents\u002Fpatina-reader-xhigh.md",790,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader-xhigh.md",{"path":134,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":135,"sourceHtmlUrl":136},"assets\u002Fagents\u002Fpatina-reader.md",869,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fagents\u002Fpatina-reader.md",{"path":138,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":139,"sourceHtmlUrl":140},"assets\u002Fhooks\u002Fsession-start-context.md",1097,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fhooks\u002Fsession-start-context.md",{"path":142,"resourceType":143,"resourceTypeDesc":144,"sizeBytes":145,"sourceHtmlUrl":146},"assets\u002Fhooks\u002Fsession-start.sh","SCRIPT","脚本",2037,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fassets\u002Fhooks\u002Fsession-start.sh",{"path":148,"resourceType":143,"resourceTypeDesc":144,"sizeBytes":149,"sourceHtmlUrl":150},"scripts\u002Finstall-machinery.sh",7104,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fsetup-code-skills\u002Fscripts\u002Finstall-machinery.sh",[152,160,187,199,219,243],{"skillNo":153,"name":154,"nameZh":6,"description":155,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":156,"categories":157,"keywords":158,"publishedAt":159},"01M72KDQJR99954NE224VB3KZ2","code-review","Review the changes since a fixed point (commit, branch, tag, or merge-base) along five axes: Standards (does the code follow this repo's documented coding standards?), Spec (does the code match what the originating issue\u002Fspec asked for?), Evidence (does each claim in the pull request have evidence that shows it?), Bugs (does the changed code have logic errors, unhandled states, races, or regressions?), and Security (does the change open injection, auth, secret, input, or CI workflow holes?). Runs the reviews in parallel sub-agents, tags every finding Important, Nit, or Pre-existing, and reports them side by side with what blocks merge. Given an earlier reviewed head and its findings, it reviews only the newer commits, rechecks the earlier findings, and never repeats one. Use when the user wants to review a branch, a PR, work-in-progress changes, or asks to \"review since X\".","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fcode\u002Fskills\u002Fcode-review\u002FSKILL.md",[],[],"2026-11-10 22:39:42",{"skillNo":161,"name":162,"nameZh":6,"description":163,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":164,"categories":165,"keywords":174,"publishedAt":38},"01M71ESEDVHD9EXN6787XHP7HD","writing-for-pstack","Write or tighten an operator prompt for a patina-mode run. Use when the operator asks to write, revise, or review a prompt that will be passed to patina-mode.","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fwriting-for-pstack\u002FSKILL.md",[166,171],{"categoryNo":167,"categoryName":168,"taxonomyType":169,"taxonomyTypeDesc":170},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":172,"categoryName":173,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000036","内容创作者",[30,175,176,177,178,179,180,181,182,36,183,184,185,186],"pstack","writing","writing for pstack","review","run","mode","write","operator","tighten","prompt","when","revise",{"skillNo":188,"name":189,"nameZh":6,"description":190,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":191,"categories":192,"keywords":195,"publishedAt":38},"01M71ESCJ0SSJFFENF8HYDKBTJ","writing-for-agents","Writing documents for agents. Use when creating or editing skills, or modifying AGENTS.md or CLAUDE.md.","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fwriting-for-agents\u002FSKILL.md",[193,194],{"categoryNo":167,"categoryName":168,"taxonomyType":169,"taxonomyTypeDesc":170},{"categoryNo":172,"categoryName":173,"taxonomyType":21,"taxonomyTypeDesc":22},[196,30,176,197,36,198,185],"writing for agents","editing","documents",{"skillNo":200,"name":201,"nameZh":6,"description":202,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":203,"categories":204,"keywords":205,"publishedAt":38},"01M71ESA1NN9WVMD2HA5Z1RRDY","wizard","Generate an interactive bash wizard that walks a human through steps only they can perform. Use when provisioning infrastructure, setting up credentials or CI secrets, walking an unfamiliar third-party dashboard, or running a one-off migration or cutover. Don't invoke this for steps the agent can perform itself.","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fwizard\u002FSKILL.md",[],[201,206,207,208,209,210,185,211,212,213,214,215,36,216,217,33,30,28,218,35],"interactive","can","credentials","one","Bash","invoke","dashboard","generate","human","secrets","provisioning infrastructure","ci","running",{"skillNo":220,"name":221,"nameZh":6,"description":222,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":223,"categories":224,"keywords":225,"publishedAt":38},"01M71ES8FAN567N3JEPG8W6AS1","wayfinder","Plan a huge chunk of work (more than one agent session can hold) as a shared map of decision tickets on your issue tracker, and resolve them one at a time until the way to the destination is clear.","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fwayfinder\u002FSKILL.md",[],[221,226,227,228,229,230,231,232,233,234,235,236,237,238,239,240,241,207,242,209],"more","true","decision","session","time","chunk","as","shared","map","tickets","destination","at","tracker","plan","work","agent session","one at a time",{"skillNo":244,"name":245,"nameZh":6,"description":246,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":247,"categories":248,"keywords":249,"publishedAt":38},"01M71ES6PWJPKBW8R24YFH4PY6","wait-what","Stop. That last message did not land: re-pitch it.","https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fwait-what\u002FSKILL.md",[],[250,251,252,253,254,255,256,257,227,258],"wait","wait what","stop","it","land","re","pitch","message","last"]