[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C5S5WKAX0N028EAS41WEDC":3,"skill-same:01M6C5S5WKAX0N028EAS41WEDC":96},{"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":44,"linkOnly":45,"markdownContent":46,"markdownBody":47,"frontMatter":48,"refName":52,"commitSha":53,"skillDirectory":54,"forksCount":55,"repositoryHtmlUrl":56,"repositoryHomepageUrl":6,"ownerHtmlUrl":57,"ownerBlogUrl":6,"ownerDescription":58,"updatedAt":59,"install":60,"resources":73},"01M6C5S5WKAX0N028EAS41WEDC","multi-repo-discipline",null,"Multi-repo workspace rules: read-only fixtures, upstream\u002Fdownstream pairs. Use when dispatching agents across sibling repos or editing another repo's .claude\u002F.","laurigates\u002Fclaude-plugins","laurigates","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F13014001?v=4","01M6C59YHWS9C7KMXKSRX1YXNP","Lauri Gates","01M6C59YP2APG9YAM4DWYQYGFJ",59,"MIT","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fconfigure-plugin\u002Fskills\u002Fmulti-repo-discipline\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43],"multi","multi repo discipline","repo","discipline","read","2026","when","parse","read-only","remote","across","log","only","use","repos","branch","editing","grep","Rules","workspace","multi-repo","Bash","git","git branch","status","2026-11-10 10:12:30",false,"---\nname: multi-repo-discipline\ndescription: \"Multi-repo workspace rules: read-only fixtures, upstream\u002Fdownstream pairs. Use when dispatching agents across sibling repos or editing another repo's .claude\u002F.\"\nallowed-tools: Bash(git rev-parse *), Bash(git status *), Bash(git branch *), Bash(git remote *), Bash(git log *), Read, Glob, Grep, TodoWrite\ncreated: 2026-04-24\nmodified: 2026-05-09\nreviewed: 2026-04-24\n---\n\n# Multi-Repo Discipline\n\nRoles and commit boundaries when multiple repositories share a parent workspace. Pairs with `configure-plugin:config-sync` — that skill propagates mechanical config; this one defines the discipline layer that says who owns what and when a cross-repo commit needs user confirmation.\n\n## When to Use This Skill\n\n| Use this skill when… | Skip when… |\n|---------------------|------------|\n| The cwd is inside a parent directory that contains other git repos | Working in a single isolated repo |\n| A sibling `CLAUDE.md` names the current repo | No cross-repo relationship exists |\n| Dispatching agents whose scope could span sibling repos | Single-repo agent fan-out |\n| Updating a shared spec that other repos consume | Internal change with no downstream |\n| About to edit a sibling's `CLAUDE.md` or `.claude\u002F` config | Edits confined to current repo |\n\n## Detection Heuristic\n\nRun before applying any discipline:\n\n```bash\n# Parent directory contains other git repos?\nfind \"$(git rev-parse --show-toplevel)\u002F..\" -maxdepth 2 -name .git -type d\n\n# Any sibling CLAUDE.md names this repo by directory name?\ngrep -l \"$(basename \"$(git rev-parse --show-toplevel)\")\" ..\u002F*\u002FCLAUDE.md 2>\u002Fdev\u002Fnull\n```\n\nIf neither detector produces output, **exit silently** — the rule does\nnot apply to single-repo work. Do not load discipline that does not\napply.\n\n## Workspace Roles\n\nClassify every repository in the workspace into one of three roles.\n\n### Read-only fixtures\n\nInputs the current project depends on but must never mutate:\n\n- Licensed datasets (e.g. game data archives, ML training sets)\n- Shipped third-party binaries used as reference\n- Vendored upstream sources consulted for comparison only\n- Historical snapshots of a migrated-away-from system\n\nDiscipline: treat as immutable. Never commit to a fixture. If an agent\nproposes an edit, the edit is a misdirection — redirect to the working\nrepo.\n\n### Upstream \u002F downstream pair\n\nTwo repositories in the same domain where one derives from the other.\nExamples:\n\n| Upstream | Downstream |\n|----------|-----------|\n| Workbench \u002F toolkit | Shipped native port |\n| Schema-owning repo | Generated client library |\n| Design tokens | Component library |\n| Contract repo | Consumer service |\n\nDiscipline: the downstream may lag the upstream by design. Changes in\nthe upstream **do not** automatically propagate — the orchestrator\nsurfaces the required downstream diff and the human decides when to\nland it.\n\n### Authoritative repo\n\nSingle source of truth for shared specs, schemas, or interface\ncontracts. Sibling repos that carry copies of the same material are\nexplicitly downstream.\n\nDiscipline: updates to the authoritative surface are deliberate. The\nauthoritative repo's commit lands first; downstream updates follow in\ntheir own PRs against the sibling repos.\n\n## Commit Boundaries\n\n### Same-repo commits\n\nFollow the repo's own conventions. No cross-repo confirmation needed.\n\n### Sibling-repo commits during agent dispatch\n\nCross-repo **edits** during a dispatched agent's run are acceptable when\nthe scope explicitly names the sibling path. Cross-repo **commits in\nsibling repos require user confirmation** before they land.\n\nThe pattern:\n\n1. Agent performs the edit in a worktree of the sibling repo.\n2. Agent returns the diff in its Return Contract's `Orchestrator action\n   needed` field (see `agent-patterns-plugin:parallel-agent-dispatch`\n   §Verbatim patches).\n3. Orchestrator surfaces the diff to the user and requests confirmation.\n4. Human decides whether the downstream commit lands now or later.\n\nAutomatic downstream commits are the failure mode this rule prevents —\nthey drift schemas silently and the next reviewer cannot tell which\ncommit shipped the decision vs which shipped the propagation.\n\n### Sibling's `CLAUDE.md` \u002F `.claude\u002F` \u002F `docs\u002F`\n\nNever modify a sibling repo's `CLAUDE.md`, `.claude\u002F` config, or `docs\u002F`\nas a **side-effect of unrelated work**. These are the sibling repo's\nauthoritative surfaces; touching them mid-unrelated-task is a side-effect\nbug.\n\nWhen a sibling's Claude configuration genuinely needs an update,\ndispatch a targeted agent whose scope names the sibling's config\nexplicitly. `configure-plugin:config-sync` handles the mechanical\npropagation; this rule sets the boundary.\n\n## Authoritative → downstream propagation\n\nWhen the current repo is authoritative and a change affects downstream\nconsumers:\n\n1. Land the change in the authoritative repo first (its own PR, its own\n   review).\n2. In the Return Contract (or PR description), cite the downstream\n   repos and the exact change each needs.\n3. File follow-up issues or work-orders in the downstream repos — do\n   not inline the propagation.\n4. If multiple downstream repos consume the same change, each\n   propagation is its own PR.\n\nChecklists embedded in the authoritative PR description often get lost\nwhen the PR merges. Prefer follow-up issues per downstream repo, linked\nfrom the authoritative PR description.\n\n## Quick Reference\n\n### Decision table\n\n| Scenario | Action |\n|----------|--------|\n| Edit in current repo | Normal commit |\n| Agent edit in sibling worktree | OK; commit only with user confirmation |\n| Sibling's `CLAUDE.md` changed as side-effect | Revert; redirect scope |\n| Spec change in authoritative repo | Land here; file follow-up in downstream |\n| Fixture repo edit proposed | Refuse; redirect |\n\n### Checklist before cross-repo commit\n\n- [ ] User confirmed the sibling-repo commit?\n- [ ] Sibling's conventions followed (commit type, scope, PR title)?\n- [ ] Downstream propagation handled in its own PR, not inlined?\n- [ ] No unrelated sibling config files touched?\n\n## Related\n\n- `configure-plugin:config-sync` — mechanical propagation that this rule gates\n- `agent-patterns-plugin:parallel-agent-dispatch` — Return Contract's \"Orchestrator action needed\" field carries cross-repo diffs\n- `git-plugin:git-coworker-check` — concurrent-writer detection in shared checkouts\n- `.claude\u002Frules\u002Fdocs-currency.md` — same-commit discipline (applies to each repo individually)\n\n> Evidence: multi-repo sessions where downstream propagation was auto-committed\n> produced a week-long schema drift that took two follow-up PRs to reconcile.\n> Surfacing the diff and letting the human decide when to land it avoided\n> the drift entirely on the next cycle.\n","# Multi-Repo Discipline\n\nRoles and commit boundaries when multiple repositories share a parent workspace. Pairs with `configure-plugin:config-sync` — that skill propagates mechanical config; this one defines the discipline layer that says who owns what and when a cross-repo commit needs user confirmation.\n\n## When to Use This Skill\n\n| Use this skill when… | Skip when… |\n|---------------------|------------|\n| The cwd is inside a parent directory that contains other git repos | Working in a single isolated repo |\n| A sibling `CLAUDE.md` names the current repo | No cross-repo relationship exists |\n| Dispatching agents whose scope could span sibling repos | Single-repo agent fan-out |\n| Updating a shared spec that other repos consume | Internal change with no downstream |\n| About to edit a sibling's `CLAUDE.md` or `.claude\u002F` config | Edits confined to current repo |\n\n## Detection Heuristic\n\nRun before applying any discipline:\n\n```bash\n# Parent directory contains other git repos?\nfind \"$(git rev-parse --show-toplevel)\u002F..\" -maxdepth 2 -name .git -type d\n\n# Any sibling CLAUDE.md names this repo by directory name?\ngrep -l \"$(basename \"$(git rev-parse --show-toplevel)\")\" ..\u002F*\u002FCLAUDE.md 2>\u002Fdev\u002Fnull\n```\n\nIf neither detector produces output, **exit silently** — the rule does\nnot apply to single-repo work. Do not load discipline that does not\napply.\n\n## Workspace Roles\n\nClassify every repository in the workspace into one of three roles.\n\n### Read-only fixtures\n\nInputs the current project depends on but must never mutate:\n\n- Licensed datasets (e.g. game data archives, ML training sets)\n- Shipped third-party binaries used as reference\n- Vendored upstream sources consulted for comparison only\n- Historical snapshots of a migrated-away-from system\n\nDiscipline: treat as immutable. Never commit to a fixture. If an agent\nproposes an edit, the edit is a misdirection — redirect to the working\nrepo.\n\n### Upstream \u002F downstream pair\n\nTwo repositories in the same domain where one derives from the other.\nExamples:\n\n| Upstream | Downstream |\n|----------|-----------|\n| Workbench \u002F toolkit | Shipped native port |\n| Schema-owning repo | Generated client library |\n| Design tokens | Component library |\n| Contract repo | Consumer service |\n\nDiscipline: the downstream may lag the upstream by design. Changes in\nthe upstream **do not** automatically propagate — the orchestrator\nsurfaces the required downstream diff and the human decides when to\nland it.\n\n### Authoritative repo\n\nSingle source of truth for shared specs, schemas, or interface\ncontracts. Sibling repos that carry copies of the same material are\nexplicitly downstream.\n\nDiscipline: updates to the authoritative surface are deliberate. The\nauthoritative repo's commit lands first; downstream updates follow in\ntheir own PRs against the sibling repos.\n\n## Commit Boundaries\n\n### Same-repo commits\n\nFollow the repo's own conventions. No cross-repo confirmation needed.\n\n### Sibling-repo commits during agent dispatch\n\nCross-repo **edits** during a dispatched agent's run are acceptable when\nthe scope explicitly names the sibling path. Cross-repo **commits in\nsibling repos require user confirmation** before they land.\n\nThe pattern:\n\n1. Agent performs the edit in a worktree of the sibling repo.\n2. Agent returns the diff in its Return Contract's `Orchestrator action\n   needed` field (see `agent-patterns-plugin:parallel-agent-dispatch`\n   §Verbatim patches).\n3. Orchestrator surfaces the diff to the user and requests confirmation.\n4. Human decides whether the downstream commit lands now or later.\n\nAutomatic downstream commits are the failure mode this rule prevents —\nthey drift schemas silently and the next reviewer cannot tell which\ncommit shipped the decision vs which shipped the propagation.\n\n### Sibling's `CLAUDE.md` \u002F `.claude\u002F` \u002F `docs\u002F`\n\nNever modify a sibling repo's `CLAUDE.md`, `.claude\u002F` config, or `docs\u002F`\nas a **side-effect of unrelated work**. These are the sibling repo's\nauthoritative surfaces; touching them mid-unrelated-task is a side-effect\nbug.\n\nWhen a sibling's Claude configuration genuinely needs an update,\ndispatch a targeted agent whose scope names the sibling's config\nexplicitly. `configure-plugin:config-sync` handles the mechanical\npropagation; this rule sets the boundary.\n\n## Authoritative → downstream propagation\n\nWhen the current repo is authoritative and a change affects downstream\nconsumers:\n\n1. Land the change in the authoritative repo first (its own PR, its own\n   review).\n2. In the Return Contract (or PR description), cite the downstream\n   repos and the exact change each needs.\n3. File follow-up issues or work-orders in the downstream repos — do\n   not inline the propagation.\n4. If multiple downstream repos consume the same change, each\n   propagation is its own PR.\n\nChecklists embedded in the authoritative PR description often get lost\nwhen the PR merges. Prefer follow-up issues per downstream repo, linked\nfrom the authoritative PR description.\n\n## Quick Reference\n\n### Decision table\n\n| Scenario | Action |\n|----------|--------|\n| Edit in current repo | Normal commit |\n| Agent edit in sibling worktree | OK; commit only with user confirmation |\n| Sibling's `CLAUDE.md` changed as side-effect | Revert; redirect scope |\n| Spec change in authoritative repo | Land here; file follow-up in downstream |\n| Fixture repo edit proposed | Refuse; redirect |\n\n### Checklist before cross-repo commit\n\n- [ ] User confirmed the sibling-repo commit?\n- [ ] Sibling's conventions followed (commit type, scope, PR title)?\n- [ ] Downstream propagation handled in its own PR, not inlined?\n- [ ] No unrelated sibling config files touched?\n\n## Related\n\n- `configure-plugin:config-sync` — mechanical propagation that this rule gates\n- `agent-patterns-plugin:parallel-agent-dispatch` — Return Contract's \"Orchestrator action needed\" field carries cross-repo diffs\n- `git-plugin:git-coworker-check` — concurrent-writer detection in shared checkouts\n- `.claude\u002Frules\u002Fdocs-currency.md` — same-commit discipline (applies to each repo individually)\n\n> Evidence: multi-repo sessions where downstream propagation was auto-committed\n> produced a week-long schema drift that took two follow-up PRs to reconcile.\n> Surfacing the diff and letting the human decide when to land it avoided\n> the drift entirely on the next cycle.\n",{"name":5,"created":49,"modified":50,"reviewed":49,"description":7,"allowed-tools":51},1776988800000,1778284800000,"Bash(git rev-parse *), Bash(git status *), Bash(git branch *), Bash(git remote *), Bash(git log *), Read, Glob, Grep, TodoWrite","main","bdd0582f1a2ba53d21061835bfd72d45f2f954f4","configure-plugin\u002Fskills\u002Fmulti-repo-discipline",6,"https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins","https:\u002F\u002Fgithub.com\u002Flaurigates","Linux enthusiast, cloud engineer, neovim addict, electronics hobbyist.","2026-11-13 03:22:01",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add laurigates\u002Fclaude-plugins --skill multi-repo-discipline",{"tool":66,"command":67},"bunx","bunx skills add laurigates\u002Fclaude-plugins --skill multi-repo-discipline",{"tool":69,"command":70},"pnpm","pnpm dlx skills add laurigates\u002Fclaude-plugins --skill multi-repo-discipline","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fconfigure-plugin\u002Fskills\u002Fmulti-repo-discipline\u002FSKILL.md",true,[74,80,84,88,92],{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"agent-coordination.md","REFERENCE","参考文档",5555,"https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fpi_agent_rust\u002Fblob\u002Fmain\u002Ftests\u002Fext_conformance\u002Fartifacts\u002Ftemplates-davila7\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fbusiness-marketing\u002Fapp-builder\u002Fagent-coordination.md",{"path":81,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":82,"sourceHtmlUrl":83},"feature-building.md",1123,"https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fpi_agent_rust\u002Fblob\u002Fmain\u002Ftests\u002Fext_conformance\u002Fartifacts\u002Ftemplates-davila7\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fbusiness-marketing\u002Fapp-builder\u002Ffeature-building.md",{"path":85,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":86,"sourceHtmlUrl":87},"project-detection.md",1323,"https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fpi_agent_rust\u002Fblob\u002Fmain\u002Ftests\u002Fext_conformance\u002Fartifacts\u002Ftemplates-davila7\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fbusiness-marketing\u002Fapp-builder\u002Fproject-detection.md",{"path":89,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":90,"sourceHtmlUrl":91},"scaffolding.md",3609,"https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fpi_agent_rust\u002Fblob\u002Fmain\u002Ftests\u002Fext_conformance\u002Fartifacts\u002Ftemplates-davila7\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fbusiness-marketing\u002Fapp-builder\u002Fscaffolding.md",{"path":93,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":94,"sourceHtmlUrl":95},"tech-stack.md",886,"https:\u002F\u002Fgithub.com\u002FDicklesworthstone\u002Fpi_agent_rust\u002Fblob\u002Fmain\u002Ftests\u002Fext_conformance\u002Fartifacts\u002Ftemplates-davila7\u002Fcli-tool\u002Fcomponents\u002Fskills\u002Fbusiness-marketing\u002Fapp-builder\u002Ftech-stack.md",[97,124,145,160,182,212],{"skillNo":98,"name":99,"nameZh":6,"description":100,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":101,"categories":102,"keywords":108,"publishedAt":44},"01M70PFHMH9ADY0CRE6047Y4B2","kitty-show-image","Show the user an image with a note on what to judge, via a file send or a labelled kitty tab. Use when the user must see an image, or icat fails with no \u002Fdev\u002Ftty.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-show-image\u002FSKILL.md",[103],{"categoryNo":104,"categoryName":105,"taxonomyType":106,"taxonomyTypeDesc":107},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",[109,110,111,112,113,114,115,116,117,118,32,25,40,119,120,121,122,123,24,23],"show","kitty show image","image","kitty","show image","ls","get","send","open","dev","file","text","with","xdg","via",{"skillNo":125,"name":126,"nameZh":6,"description":127,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":128,"categories":129,"keywords":130,"publishedAt":44},"01M70PFEN18HKQ4RCQ1VPGMPTB","kitty-session-persistence","Snapshot and restore kitty terminal sessions on macOS. Use when surviving WindowServer hangs without losing tabs, configuring snapshots, or restoring after a force-reboot.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-session-persistence\u002FSKILL.md",[],[112,131,132,133,134,135,25,40,136,137,138,24,23,139,140,141,142,143,144,32],"kitty session persistence","session","persistence","false","snapshots","uname","reboot","terminal","write","edit","snapshot","macos","sessions","restore",{"skillNo":146,"name":147,"nameZh":6,"description":148,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":149,"categories":150,"keywords":151,"publishedAt":44},"01M70PFC77XGXCVQ1543VGZHYR","kitty-remote-control","Safe kitty remote control from an agent — read panes with kitty @ ls\u002Fget-text, notify, and never mutate the live terminal unasked. Use when running inside kitty.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fkitty-plugin\u002Fskills\u002Fkitty-remote-control\u002FSKILL.md",[],[152,28,112,153,154,114,155,156,115,157,158,32,25,159,40,120,121,138,24,23],"kitty remote control","control","remote control","running","never","panes","notify","query",{"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":166,"publishedAt":44},"01M70P6WVMCT5JG4SACTM69AF9","docs-reference-check","Dangling doc-reference gate: flag markdown naming repo paths or relative links that no longer exist. Use when docs cite moved\u002Fdeleted files, or wiring a doc-drift lint.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fdocumentation-plugin\u002Fskills\u002Fdocs-reference-check\u002FSKILL.md",[],[167,168,169,170,171,172,173,21,174,175,32,25,40,176,119,177,178,179,180,181],"docs reference check","check","reference check","reference","docs","links","python3","files","auto","drift","lint","wiring","chezmoi","references","cp",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":197,"publishedAt":44},"01M6C6NDE7DAQGNWSF22J5CJ0Z","youtube-upload","Upload a video to YouTube via the Data API v3 and edit its title, description, tags or thumbnail afterwards. Use when publishing or retitling a YouTube video.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fyoutube-plugin\u002Fskills\u002Fyoutube-upload\u002FSKILL.md",[188,191,192],{"categoryNo":189,"categoryName":190,"taxonomyType":106,"taxonomyTypeDesc":107},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":104,"categoryName":105,"taxonomyType":106,"taxonomyTypeDesc":107},{"categoryNo":193,"categoryName":194,"taxonomyType":195,"taxonomyTypeDesc":196},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[198,199,200,201,173,202,23,203,140,204,205,206,32,40,119,207,208,25,209,210,211,123,24],"youtube upload","upload","youtube","Video","run","uv run","publishing","data","uv","api","v3","tags","id","title",{"skillNo":213,"name":214,"nameZh":6,"description":215,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":216,"categories":217,"keywords":221,"publishedAt":44},"01M6C6NABWW1X58KJJM4F6GQMQ","youtube-studio-share","Share a private YouTube video with a whole Google Workspace organization by scripting YouTube Studio in the browser. Use when a video must be org-only.","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fyoutube-plugin\u002Fskills\u002Fyoutube-studio-share\u002FSKILL.md",[218],{"categoryNo":219,"categoryName":220,"taxonomyType":106,"taxonomyTypeDesc":107},"01JBSEEDCAT000000000000023","Skill与智能体开发",[222,223,224,225,200,201,226,227,228,229,38,23,230,231,31,232,32,233,25,121,234,24],"youtube studio share","share","youtube studio","studio","browser","javascript","scripting","google workspace","tool","google","MCP","chrome","organization"]