[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71ERMFNXS2Q7BWN1992EJC1":3,"skill-same:01M71ERMFNXS2Q7BWN1992EJC1":98},{"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":18,"publishedAt":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":14,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":49,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M71ERMFNXS2Q7BWN1992EJC1","scaffold-repository",null,"Set up a new repository with the Patina Project standard files, or compare and update an existing repository. Use when the user asks to scaffold a repository, audit its conventions, align it with Patina Project, or configure commitlint and Husky.","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\u002Fwork\u002Fskills\u002Fscaffold-repository\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"scaffold repository","repository","scaffold","align","new","when","standard","Existing","with","husky","compare","project","files","commitlint","up","use","configure","SET","audit","update","2026-11-10 10:12:30",false,"---\nname: scaffold-repository\ndescription: Set up a new repository with the Patina Project standard files, or compare and update an existing repository. Use when the user asks to scaffold a repository, audit its conventions, align it with Patina Project, or configure commitlint and Husky.\n---\n\n# Set up a repository\n\nUse the current root of\n[`patinaproject\u002Fskills`](https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills) as the source\nfor file contents except the consumer pull request template named below. Read\n[`core-baseline.txt`](.\u002Fcore-baseline.txt) for the required file list and\n[`audit-checklist.md`](.\u002Faudit-checklist.md) for every required check.\n\nWhen running outside `patinaproject\u002Fskills`, fetch a single source file with:\n\n```sh\ngh api repos\u002Fpatinaproject\u002Fskills\u002Fcontents\u002F\u003Cpath> --jq .content | base64 -d\n```\n\nFor many files, use a shallow temporary clone:\n\n```sh\ngit clone --depth 1 https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills.git \u002Ftmp\u002Fpatinaproject-skills-reference\n```\n\nIf neither the network nor a local checkout is available, ask the user for a\ncopy of the reference repository. Do not recreate files from memory.\n\n## Choose the type of work\n\nUse new-repository setup when the target is a Git repository and has none of\nthe Patina files, such as `AGENTS.md`, `commitlint.config.js`, or the standard\nscripts in `package.json`.\n\nUse existing-repository update when any of those files already exist.\n\n### New repository\n\n1. Read `core-baseline.txt` and copy every required file from the current\n   Patina repository.\n2. Fill in repository-specific values from the inputs below.\n3. Omit marketplace-only test and maintenance files. The manifest already\n   excludes them.\n4. Run `pnpm install` to create `pnpm-lock.yaml` and configure Husky.\n5. Stage the created files but leave them uncommitted so the user owns the\n   first commit.\n\n### Existing repository\n\n1. Read `audit-checklist.md` in full and run every applicable check.\n2. Use the difference names and definitions from `audit-checklist.md` so the\n   report matches its required output.\n3. For each difference, explain the recommended change and show a unified diff\n   against the current Patina file.\n4. Ask the user to accept, skip, or defer each recommendation before changing\n   an existing file. There is no non-interactive overwrite mode.\n5. Present changes in the order specified by `audit-checklist.md`: commit and\n   pull request rules, package and skill tools, repository documentation,\n   GitHub workflows, then removal of retired setup.\n6. If an accepted change modifies a non-empty `skills-lock.json`, run\n   `pnpm skills:install`, confirm that the project-local skills appear in\n   `npx --yes skills@latest list --json`, and include the refreshed\n   `.agents\u002Fskills\u002F` directories and `.claude\u002Fskills\u002F` links.\n\nApply the same audit checks to `patinaproject\u002Fskills` when it is the target\nrepository.\n\n## Repository inputs\n\nRead the repository owner and name from `origin` when possible. Read author name\nand email from `git config user.name` and `git config user.email`. Use the email\nas the public security contact. Stop if the configured name or email is missing.\n\nResolve the author's GitHub handle with `gh api user --jq .login`. If that\nfails, ask `Author GitHub handle for the package author URL?` without a default.\n\nAsk for any value that cannot be determined:\n\n| Value | Default |\n| --- | --- |\n| Repository owner | Owner from `origin` |\n| Repository name | Name from `origin` |\n| One-line description | None |\n| Visibility | `public` |\n| Code owner | `@\u003Cowner>` |\n| Security contact | Configured Git email |\n| Author name | Configured Git name |\n| Author email | Configured Git email |\n| Author GitHub handle | Current authenticated GitHub user |\n\nWrite the author name, email, and `https:\u002F\u002Fgithub.com\u002F\u003Cauthor-handle>` into the\n`package.json` author field. Repository URLs continue to use the repository\nowner and name.\n\n## Required file behavior\n\n`core-baseline.txt` is the file list used by\n`scripts\u002Fverify-baseline.sh`. Use it instead of copying a second list into this\nskill.\n\nFour entries require special handling:\n\n- Copy `.github\u002Fpull_request_template.md` from\n  [`pr-body-template.md`](.\u002Fpr-body-template.md). Require both GitHub and Linear\n  closing references as specified there. Retrieve counterpart IDs through the\n  target repository's tracker adapter and linked issue data, then verify the\n  reference forms against its integration and closing-reference check.\n- When the target does not contain the `opening-a-pr` playbook, adapt the\n  copied `AGENTS.md` and `CONTRIBUTING.md` to name the target's active workflow\n  as the body contract. If no body contract exists, leave body structure to the\n  author. The template owns only the closing-reference reminder.\n- Create `SECURITY.md` only for public repositories.\n- Keep the real tracker instructions at `docs\u002Fagents\u002Fissue-tracker.md`. Create\n  `docs\u002Fissue-tracker.md` as the relative link `agents\u002Fissue-tracker.md`.\n\nDo not copy marketplace maintenance tests, generated skill links, or release\nworkflows into an ordinary repository. Adapt copied workflows to the files the\ntarget repository actually receives.\n\nThe default `.claude\u002Fsettings.json` has an empty `enabledPlugins` object. It\nstill registers `bash scripts\u002Fworktree-setup.sh` as its `SessionStart` startup\nhook. The Codex environment runs the same script from its `[setup]` block.\nProjects may enable plugins later.\n\nUse the exact current files and the checks in `audit-checklist.md` for commit\nformat, pull request format, Markdown linting, package scripts, committed local\nskills, agent instructions, issue tracking, releases, action pinning, labels,\nand workflow permissions. Do not restate those changing details from memory.\n\n## GitHub merge settings\n\nCheck current settings with `gh` when available:\n\n```bash\ngh api \"repos\u002F\u003Cowner>\u002F\u003Crepo>\" --jq '{allow_squash_merge, allow_merge_commit, allow_rebase_merge, squash_merge_commit_title, squash_merge_commit_message, delete_branch_on_merge, allow_update_branch}'\n```\n\nFor a public repository without `gh`, use the public API with `curl`. If the\nrepository is private and authenticated tools are unavailable, show the user\nthe expected values and ask them to inspect GitHub settings.\n\nExpected values:\n\n| Setting | Value |\n| --- | --- |\n| Squash merges | On |\n| Merge commits | Off |\n| Rebase merges | Off |\n| Squash title | `PR_TITLE` |\n| Squash message | `COMMIT_MESSAGES` |\n| Delete branch after merge | On |\n| Suggest branch updates | On |\n| Release immutability | On |\n\nReport how settings were checked and every difference. Ask for confirmation\nbefore changing settings. With confirmation, update supported values with:\n\n```bash\ngh api -X PATCH \"repos\u002F\u003Cowner>\u002F\u003Crepo>\" \\\n  -F allow_squash_merge=true \\\n  -F allow_merge_commit=false \\\n  -F allow_rebase_merge=false \\\n  -F squash_merge_commit_title=PR_TITLE \\\n  -F squash_merge_commit_message=COMMIT_MESSAGES \\\n  -F delete_branch_on_merge=true \\\n  -F allow_update_branch=true\n```\n\nRelease immutability must be enabled in GitHub under Settings, General,\nReleases. The normal repository API does not expose that setting.\n\nAlso apply the repository settings checks in `audit-checklist.md`, including\nworkflow write permission, tag signing rules for release tags, and the reserved\n`autorelease: pending` label. Never add or remove Release Please labels as part\nof ordinary issue or pull request work.\n\n## Verify the result\n\nRun the presence check first. Other tools may pass even when none of the\nrequired files were copied.\n\n```bash\nbash \u003Cskill-directory>\u002Fscripts\u002Fverify-baseline.sh --public\n# Use --private for a private repository.\npnpm install\npnpm exec commitlint --help\npnpm lint:md\necho \"feat: bad\" | pnpm exec commitlint\necho \"feat: #1 ok\" | pnpm exec commitlint\n```\n\nThe bad commit message must fail. The public example with `#1` must pass. Use\nthe repository's private issue format for a private repository.\n\nResolve `\u003Cskill-directory>` to this skill's installed directory. Run the\nverification script from the target repository or pass the target repository\nroot as its final argument. Treat every missing path as a failed setup.\n\nBefore committing Markdown changes, run:\n\n```bash\npnpm exec markdownlint-cli2 --fix \"**\u002F*.md\"\n```\n\n## Changing a private repository to public\n\nWhen the user asks to make a private repository public, read\n[the visibility migration instructions](.\u002Fpublic-repository-migration.md).\nChanging issue tracking or Git history is separate from a normal repository\nupdate and requires its own reviewed plan.\n\n## Final report\n\nFor a new repository, list the staged files and any values the user still must\nprovide. For an existing repository, list accepted, skipped, and deferred\nchanges by batch. Include failed checks, GitHub settings differences, and the\nexact user action needed for anything unfinished.\n","# Set up a repository\n\nUse the current root of\n[`patinaproject\u002Fskills`](https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills) as the source\nfor file contents except the consumer pull request template named below. Read\n[`core-baseline.txt`](.\u002Fcore-baseline.txt) for the required file list and\n[`audit-checklist.md`](.\u002Faudit-checklist.md) for every required check.\n\nWhen running outside `patinaproject\u002Fskills`, fetch a single source file with:\n\n```sh\ngh api repos\u002Fpatinaproject\u002Fskills\u002Fcontents\u002F\u003Cpath> --jq .content | base64 -d\n```\n\nFor many files, use a shallow temporary clone:\n\n```sh\ngit clone --depth 1 https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills.git \u002Ftmp\u002Fpatinaproject-skills-reference\n```\n\nIf neither the network nor a local checkout is available, ask the user for a\ncopy of the reference repository. Do not recreate files from memory.\n\n## Choose the type of work\n\nUse new-repository setup when the target is a Git repository and has none of\nthe Patina files, such as `AGENTS.md`, `commitlint.config.js`, or the standard\nscripts in `package.json`.\n\nUse existing-repository update when any of those files already exist.\n\n### New repository\n\n1. Read `core-baseline.txt` and copy every required file from the current\n   Patina repository.\n2. Fill in repository-specific values from the inputs below.\n3. Omit marketplace-only test and maintenance files. The manifest already\n   excludes them.\n4. Run `pnpm install` to create `pnpm-lock.yaml` and configure Husky.\n5. Stage the created files but leave them uncommitted so the user owns the\n   first commit.\n\n### Existing repository\n\n1. Read `audit-checklist.md` in full and run every applicable check.\n2. Use the difference names and definitions from `audit-checklist.md` so the\n   report matches its required output.\n3. For each difference, explain the recommended change and show a unified diff\n   against the current Patina file.\n4. Ask the user to accept, skip, or defer each recommendation before changing\n   an existing file. There is no non-interactive overwrite mode.\n5. Present changes in the order specified by `audit-checklist.md`: commit and\n   pull request rules, package and skill tools, repository documentation,\n   GitHub workflows, then removal of retired setup.\n6. If an accepted change modifies a non-empty `skills-lock.json`, run\n   `pnpm skills:install`, confirm that the project-local skills appear in\n   `npx --yes skills@latest list --json`, and include the refreshed\n   `.agents\u002Fskills\u002F` directories and `.claude\u002Fskills\u002F` links.\n\nApply the same audit checks to `patinaproject\u002Fskills` when it is the target\nrepository.\n\n## Repository inputs\n\nRead the repository owner and name from `origin` when possible. Read author name\nand email from `git config user.name` and `git config user.email`. Use the email\nas the public security contact. Stop if the configured name or email is missing.\n\nResolve the author's GitHub handle with `gh api user --jq .login`. If that\nfails, ask `Author GitHub handle for the package author URL?` without a default.\n\nAsk for any value that cannot be determined:\n\n| Value | Default |\n| --- | --- |\n| Repository owner | Owner from `origin` |\n| Repository name | Name from `origin` |\n| One-line description | None |\n| Visibility | `public` |\n| Code owner | `@\u003Cowner>` |\n| Security contact | Configured Git email |\n| Author name | Configured Git name |\n| Author email | Configured Git email |\n| Author GitHub handle | Current authenticated GitHub user |\n\nWrite the author name, email, and `https:\u002F\u002Fgithub.com\u002F\u003Cauthor-handle>` into the\n`package.json` author field. Repository URLs continue to use the repository\nowner and name.\n\n## Required file behavior\n\n`core-baseline.txt` is the file list used by\n`scripts\u002Fverify-baseline.sh`. Use it instead of copying a second list into this\nskill.\n\nFour entries require special handling:\n\n- Copy `.github\u002Fpull_request_template.md` from\n  [`pr-body-template.md`](.\u002Fpr-body-template.md). Require both GitHub and Linear\n  closing references as specified there. Retrieve counterpart IDs through the\n  target repository's tracker adapter and linked issue data, then verify the\n  reference forms against its integration and closing-reference check.\n- When the target does not contain the `opening-a-pr` playbook, adapt the\n  copied `AGENTS.md` and `CONTRIBUTING.md` to name the target's active workflow\n  as the body contract. If no body contract exists, leave body structure to the\n  author. The template owns only the closing-reference reminder.\n- Create `SECURITY.md` only for public repositories.\n- Keep the real tracker instructions at `docs\u002Fagents\u002Fissue-tracker.md`. Create\n  `docs\u002Fissue-tracker.md` as the relative link `agents\u002Fissue-tracker.md`.\n\nDo not copy marketplace maintenance tests, generated skill links, or release\nworkflows into an ordinary repository. Adapt copied workflows to the files the\ntarget repository actually receives.\n\nThe default `.claude\u002Fsettings.json` has an empty `enabledPlugins` object. It\nstill registers `bash scripts\u002Fworktree-setup.sh` as its `SessionStart` startup\nhook. The Codex environment runs the same script from its `[setup]` block.\nProjects may enable plugins later.\n\nUse the exact current files and the checks in `audit-checklist.md` for commit\nformat, pull request format, Markdown linting, package scripts, committed local\nskills, agent instructions, issue tracking, releases, action pinning, labels,\nand workflow permissions. Do not restate those changing details from memory.\n\n## GitHub merge settings\n\nCheck current settings with `gh` when available:\n\n```bash\ngh api \"repos\u002F\u003Cowner>\u002F\u003Crepo>\" --jq '{allow_squash_merge, allow_merge_commit, allow_rebase_merge, squash_merge_commit_title, squash_merge_commit_message, delete_branch_on_merge, allow_update_branch}'\n```\n\nFor a public repository without `gh`, use the public API with `curl`. If the\nrepository is private and authenticated tools are unavailable, show the user\nthe expected values and ask them to inspect GitHub settings.\n\nExpected values:\n\n| Setting | Value |\n| --- | --- |\n| Squash merges | On |\n| Merge commits | Off |\n| Rebase merges | Off |\n| Squash title | `PR_TITLE` |\n| Squash message | `COMMIT_MESSAGES` |\n| Delete branch after merge | On |\n| Suggest branch updates | On |\n| Release immutability | On |\n\nReport how settings were checked and every difference. Ask for confirmation\nbefore changing settings. With confirmation, update supported values with:\n\n```bash\ngh api -X PATCH \"repos\u002F\u003Cowner>\u002F\u003Crepo>\" \\\n  -F allow_squash_merge=true \\\n  -F allow_merge_commit=false \\\n  -F allow_rebase_merge=false \\\n  -F squash_merge_commit_title=PR_TITLE \\\n  -F squash_merge_commit_message=COMMIT_MESSAGES \\\n  -F delete_branch_on_merge=true \\\n  -F allow_update_branch=true\n```\n\nRelease immutability must be enabled in GitHub under Settings, General,\nReleases. The normal repository API does not expose that setting.\n\nAlso apply the repository settings checks in `audit-checklist.md`, including\nworkflow write permission, tag signing rules for release tags, and the reserved\n`autorelease: pending` label. Never add or remove Release Please labels as part\nof ordinary issue or pull request work.\n\n## Verify the result\n\nRun the presence check first. Other tools may pass even when none of the\nrequired files were copied.\n\n```bash\nbash \u003Cskill-directory>\u002Fscripts\u002Fverify-baseline.sh --public\n# Use --private for a private repository.\npnpm install\npnpm exec commitlint --help\npnpm lint:md\necho \"feat: bad\" | pnpm exec commitlint\necho \"feat: #1 ok\" | pnpm exec commitlint\n```\n\nThe bad commit message must fail. The public example with `#1` must pass. Use\nthe repository's private issue format for a private repository.\n\nResolve `\u003Cskill-directory>` to this skill's installed directory. Run the\nverification script from the target repository or pass the target repository\nroot as its final argument. Treat every missing path as a failed setup.\n\nBefore committing Markdown changes, run:\n\n```bash\npnpm exec markdownlint-cli2 --fix \"**\u002F*.md\"\n```\n\n## Changing a private repository to public\n\nWhen the user asks to make a private repository public, read\n[the visibility migration instructions](.\u002Fpublic-repository-migration.md).\nChanging issue tracking or Git history is separate from a normal repository\nupdate and requires its own reviewed plan.\n\n## Final report\n\nFor a new repository, list the staged files and any values the user still must\nprovide. For an existing repository, list accepted, skipped, and deferred\nchanges by batch. Include failed checks, GitHub settings differences, and the\nexact user action needed for anything unfinished.\n",{"name":5,"description":7},"main","e6ee720f466a8344a52abd87679191fadde3b63f","plugins\u002Fwork\u002Fskills\u002Fscaffold-repository","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 scaffold-repository",{"tool":58,"command":59},"bunx","bunx skills add patinaproject\u002Fskills --skill scaffold-repository",{"tool":61,"command":62},"pnpm","pnpm dlx skills add patinaproject\u002Fskills --skill scaffold-repository","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002FSKILL.md",true,[66,72,76,80,84,88,92],{"path":67,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":70,"sourceHtmlUrl":71},"agent-spawn-template.md","REFERENCE","参考文档",487,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Fagent-spawn-template.md",{"path":73,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":74,"sourceHtmlUrl":75},"audit-checklist.md",15498,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Faudit-checklist.md",{"path":77,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":78,"sourceHtmlUrl":79},"core-baseline.txt",2373,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Fcore-baseline.txt",{"path":81,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":82,"sourceHtmlUrl":83},"pr-body-template.md",644,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Fpr-body-template.md",{"path":85,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":86,"sourceHtmlUrl":87},"public-repository-migration.md",1704,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Fpublic-repository-migration.md",{"path":89,"resourceType":68,"resourceTypeDesc":69,"sizeBytes":90,"sourceHtmlUrl":91},"README.md",2614,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002FREADME.md",{"path":93,"resourceType":94,"resourceTypeDesc":95,"sizeBytes":96,"sourceHtmlUrl":97},"scripts\u002Fverify-baseline.sh","SCRIPT","脚本",3667,"https:\u002F\u002Fgithub.com\u002Fpatinaproject\u002Fskills\u002Fblob\u002Fmain\u002Fplugins\u002Fwork\u002Fskills\u002Fscaffold-repository\u002Fscripts\u002Fverify-baseline.sh",[99,107,136,148,170,194],{"skillNo":100,"name":101,"nameZh":6,"description":102,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":103,"categories":104,"keywords":105,"publishedAt":106},"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":108,"name":109,"nameZh":6,"description":110,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":111,"categories":112,"keywords":123,"publishedAt":39},"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",[113,118],{"categoryNo":114,"categoryName":115,"taxonomyType":116,"taxonomyTypeDesc":117},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[124,125,126,127,128,129,130,131,132,34,133,134,24,135],"for","pstack","writing","writing for pstack","review","run","mode","write","operator","tighten","prompt","revise",{"skillNo":137,"name":138,"nameZh":6,"description":139,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":140,"categories":141,"keywords":144,"publishedAt":39},"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",[142,143],{"categoryNo":114,"categoryName":115,"taxonomyType":116,"taxonomyTypeDesc":117},{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},[145,124,126,146,34,147,24],"writing for agents","editing","documents",{"skillNo":149,"name":150,"nameZh":6,"description":151,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":152,"categories":153,"keywords":154,"publishedAt":39},"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",[],[150,155,156,157,158,159,24,160,161,162,163,164,34,165,166,33,124,167,168,169],"interactive","can","credentials","one","Bash","invoke","dashboard","generate","human","secrets","provisioning infrastructure","ci","setting","running","only",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":176,"publishedAt":39},"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",[],[172,177,178,179,180,181,182,183,184,185,186,187,188,189,190,191,192,156,193,158],"more","true","decision","session","time","chunk","as","shared","map","tickets","destination","at","tracker","plan","work","agent session","one at a time",{"skillNo":195,"name":196,"nameZh":6,"description":197,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":198,"categories":199,"keywords":200,"publishedAt":39},"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",[],[201,202,203,204,205,206,207,208,178,209],"wait","wait what","stop","it","land","re","pitch","message","last"]