[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C66RM95C677NGFCDSVPYRV":3,"skill-same:01M6C66RM95C677NGFCDSVPYRV":73},{"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":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":51,"commitSha":52,"skillDirectory":53,"forksCount":54,"repositoryHtmlUrl":55,"repositoryHomepageUrl":6,"ownerHtmlUrl":56,"ownerBlogUrl":6,"ownerDescription":57,"updatedAt":58,"install":59,"resources":72},"01M6C66RM95C677NGFCDSVPYRV","shadow-mode",null,"Shadow mode \u002F dark-launch for validating new systems under production load. Use when testing replacement services, comparing behavior, or planning traffic mirroring for migrations.","laurigates\u002Fclaude-plugins","laurigates","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F13014001?v=4","01M6C59YHWS9C7KMXKSRX1YXNP","Lauri Gates","01M6C59YP2APG9YAM4DWYQYGFJ",60,"MIT","https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fmigration-patterns-plugin\u002Fskills\u002Fshadow-mode\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],"mode","shadow mode","Shadow","new","testing","2026","when","dark","for","load","traffic","false","wed","migrations","use","behavior","edit","write","read","grep","Production","services","planning","launch","2026-11-10 10:12:30",false,"---\nname: shadow-mode\ndescription: Shadow mode \u002F dark-launch for validating new systems under production load. Use when testing replacement services, comparing behavior, or planning traffic mirroring for migrations.\nuser-invocable: false\nallowed-tools: Read, Grep, Glob, Edit, Write, TodoWrite\ncreated: 2026-02-18\nmodified: 2026-07-31\nreviewed: 2026-02-18\n---\n\n# Shadow Mode Migration Pattern\n\nShadow mode mirrors production traffic to a new system without affecting users. The shadow system's responses are discarded — only the production response reaches the user — but both responses are logged and compared to validate correctness.\n\n## When to Use This Skill\n\n| Use this skill when... | Use dual-write instead when... |\n|------------------------|-------------------------------|\n| Validating read behavior of a replacement service | Both systems need to persist writes |\n| Testing performance under real production load | You need the new store to be authoritative |\n| Comparing response correctness before cutover | Migrating data stores that must stay in sync |\n| Evaluating a new service version safely | The new system needs to receive and store mutations |\n| Load testing a new deployment with real traffic | You need strong consistency between systems |\n\n## Core Concepts\n\n### Traffic Flow\n\n```\nClient Request\n    │\n    ▼\n┌─────────────┐\n│   Router \u002F   │\n│   Proxy      │\n├──────┬──────┤\n│      │      │\n▼      │      ▼\nProd   │   Shadow\nSystem │   System\n│      │      │\n▼      │      ▼\nProd   │   Shadow\nResponse│   Response\n│      │      │\n▼      │   (discard)\nClient │      │\n       │      ▼\n       │   Compare &\n       │   Log\n       ▼\n```\n\n### Shadow Modes\n\n| Mode | Description | Use case |\n|------|------------|----------|\n| Full mirror | 100% of traffic duplicated | Final validation before cutover |\n| Sampled mirror | Percentage of traffic (e.g., 10%) | Early validation, capacity-constrained shadow |\n| Selective mirror | Specific request types or endpoints | Targeted validation of changed behavior |\n| Replay mirror | Recorded traffic replayed offline | Testing without live shadow infrastructure |\n\n## Implementation Architecture\n\n### Key Components\n\n| Component | Responsibility |\n|-----------|---------------|\n| Traffic splitter | Duplicates requests to shadow system |\n| Shadow router | Forwards mirrored requests, manages timeouts |\n| Response comparator | Compares prod vs shadow responses |\n| Discrepancy logger | Records differences with full context |\n| Metrics collector | Tracks match rates, latency, error rates |\n| Kill switch | Disables shadow traffic instantly if issues arise |\n\n### Deployment Topology\n\n| Topology | How it works | Trade-offs |\n|----------|-------------|------------|\n| Proxy-based | Load balancer or API gateway mirrors requests | Simple setup, adds proxy hop |\n| Application-level | Application code sends async copy of request | Fine-grained control, code coupling |\n| Infrastructure-level | Service mesh (Istio, Linkerd) mirrors traffic | No code changes, requires mesh |\n| Log replay | Capture request logs, replay against shadow | No live infrastructure needed, not real-time |\n\n## Implementation Patterns\n\n### Proxy-Based Mirroring\n\nConfigure the load balancer or API gateway to:\n\n1. Forward the original request to the production backend\n2. Clone the request and send it to the shadow backend\n3. Return only the production response to the client\n4. Shadow response is logged but never returned\n5. Shadow request timeout is independent of production\n\n### Application-Level Mirroring\n\n1. Intercept the incoming request at the application layer\n2. Process the request normally through the production path\n3. Asynchronously send a copy of the request to the shadow service\n4. Do not block the production response on the shadow response\n5. Compare responses in a background worker\n\n### Response Comparison Strategy\n\nCompare responses field by field with configurable rules:\n\n| Field type | Comparison approach |\n|-----------|-------------------|\n| IDs, timestamps | Ignore (expected to differ) |\n| Computed values | Compare within tolerance (e.g., floating point) |\n| Collections | Compare as sets (ignore ordering unless significant) |\n| Status codes | Exact match required |\n| Error responses | Categorize and compare error types |\n| Headers | Compare relevant headers only (Content-Type, Cache-Control) |\n\n### Handling Stateful Requests\n\nShadow mode works best with read-only requests. For stateful (write) requests:\n\n| Approach | Description |\n|----------|------------|\n| Skip writes | Only mirror read requests to shadow |\n| Isolated state | Shadow has its own database seeded from production |\n| Dry-run writes | Shadow validates the write but does not persist |\n| Record-only | Log what shadow would have written, compare intent |\n\n## Gradual Rollout\n\n| Phase | Traffic % | Duration | Goal |\n|-------|-----------|----------|------|\n| 1. Smoke test | 1% | Hours | Verify shadow receives and processes requests |\n| 2. Canary | 5-10% | Days | Identify obvious discrepancies |\n| 3. Validation | 25-50% | Days-weeks | Build confidence in match rate |\n| 4. Full mirror | 100% | Days-weeks | Final validation before cutover |\n\n## Validation Metrics\n\n| Metric | Target | Description |\n|--------|--------|-------------|\n| Response match rate | > 99.9% | Percentage of identical responses |\n| Shadow latency (P50) | Within 2x of prod | Shadow performance baseline |\n| Shadow latency (P99) | Monitored | Tail latency under real load |\n| Shadow error rate | \u003C prod error rate | Shadow should not produce more errors |\n| Shadow availability | Monitored | Shadow uptime (not a blocker) |\n| Discrepancy categories | Trending to zero | Known differences resolved over time |\n\n## Common Pitfalls\n\n| Pitfall | Mitigation |\n|---------|-----------|\n| Shadow affects production performance | Async mirroring, independent timeouts, kill switch |\n| Shadow writes to shared resources | Isolate shadow databases, queues, and external services |\n| Non-deterministic responses cause false mismatches | Configure comparison rules to ignore timestamps, IDs, nonces |\n| Shadow receives stale data | Seed shadow database from recent production snapshot |\n| Traffic amplification overwhelms shadow | Use sampled mirroring, auto-scaling, or circuit breakers |\n| Request ordering differs between prod and shadow | Compare request-by-request, not sequence-dependent |\n| Authentication tokens expire for shadow | Mint shadow-specific tokens or bypass auth in shadow |\n\n## Integration with Dual Write\n\nShadow mode and dual write are complementary migration techniques:\n\n| Migration phase | Technique | Purpose |\n|----------------|-----------|---------|\n| Early validation | Shadow mode (reads) | Verify the new system returns correct responses |\n| Data sync | Dual write | Keep both stores authoritative during transition |\n| Pre-cutover | Both simultaneously | Shadow validates reads, dual write maintains data |\n| Cutover | Dual write reversal | New system becomes primary, old becomes secondary |\n| Post-cutover | Shadow mode (reversed) | Mirror to old system to verify nothing broke |\n\n### Strangler Fig Context\n\nBoth patterns are tactics within the broader Strangler Fig migration strategy:\n\n1. **Identify** a component to migrate\n2. **Shadow** traffic to validate the replacement\n3. **Dual write** to synchronize data stores\n4. **Cut over** reads, then writes\n5. **Decommission** the old component\n6. Repeat for the next component\n\n## Kill Switch Requirements\n\nShadow mode must have an immediate disable mechanism:\n\n- Feature flag or configuration toggle (no deployment required)\n- Disables within seconds, not minutes\n- Monitored — alerts if shadow causes production impact\n- Tested before enabling shadow traffic\n\n## Monitoring Checklist\n\n- [ ] Production latency impact (should be zero or negligible)\n- [ ] Shadow request success rate\n- [ ] Shadow response latency distribution\n- [ ] Response match rate by endpoint\n- [ ] Discrepancy log volume and categories\n- [ ] Shadow system resource utilization\n- [ ] Kill switch status and responsiveness\n\n## Agentic Optimizations\n\n| Context | Approach |\n|---------|----------|\n| Architecture review | Verify shadow isolation (no shared writes), kill switch exists |\n| Code review | Check async mirroring does not block production path |\n| Implementation | Start with proxy-based mirroring at 1%, increase gradually |\n| Testing | Verify kill switch works, confirm production is unaffected when shadow fails |\n\n## Quick Reference\n\n| Term | Definition |\n|------|-----------|\n| Shadow system | The new system receiving mirrored traffic |\n| Production system | The live system serving real users |\n| Traffic splitter | Component that duplicates requests |\n| Match rate | Percentage of shadow responses matching production |\n| Kill switch | Mechanism to instantly disable shadow traffic |\n| Dark launching | Synonym for shadow mode — feature is live but invisible to users |\n| Canary traffic | Small percentage of mirrored requests for initial validation |\n| Strangler fig | Broader migration strategy of incrementally replacing components |\n","# Shadow Mode Migration Pattern\n\nShadow mode mirrors production traffic to a new system without affecting users. The shadow system's responses are discarded — only the production response reaches the user — but both responses are logged and compared to validate correctness.\n\n## When to Use This Skill\n\n| Use this skill when... | Use dual-write instead when... |\n|------------------------|-------------------------------|\n| Validating read behavior of a replacement service | Both systems need to persist writes |\n| Testing performance under real production load | You need the new store to be authoritative |\n| Comparing response correctness before cutover | Migrating data stores that must stay in sync |\n| Evaluating a new service version safely | The new system needs to receive and store mutations |\n| Load testing a new deployment with real traffic | You need strong consistency between systems |\n\n## Core Concepts\n\n### Traffic Flow\n\n```\nClient Request\n    │\n    ▼\n┌─────────────┐\n│   Router \u002F   │\n│   Proxy      │\n├──────┬──────┤\n│      │      │\n▼      │      ▼\nProd   │   Shadow\nSystem │   System\n│      │      │\n▼      │      ▼\nProd   │   Shadow\nResponse│   Response\n│      │      │\n▼      │   (discard)\nClient │      │\n       │      ▼\n       │   Compare &\n       │   Log\n       ▼\n```\n\n### Shadow Modes\n\n| Mode | Description | Use case |\n|------|------------|----------|\n| Full mirror | 100% of traffic duplicated | Final validation before cutover |\n| Sampled mirror | Percentage of traffic (e.g., 10%) | Early validation, capacity-constrained shadow |\n| Selective mirror | Specific request types or endpoints | Targeted validation of changed behavior |\n| Replay mirror | Recorded traffic replayed offline | Testing without live shadow infrastructure |\n\n## Implementation Architecture\n\n### Key Components\n\n| Component | Responsibility |\n|-----------|---------------|\n| Traffic splitter | Duplicates requests to shadow system |\n| Shadow router | Forwards mirrored requests, manages timeouts |\n| Response comparator | Compares prod vs shadow responses |\n| Discrepancy logger | Records differences with full context |\n| Metrics collector | Tracks match rates, latency, error rates |\n| Kill switch | Disables shadow traffic instantly if issues arise |\n\n### Deployment Topology\n\n| Topology | How it works | Trade-offs |\n|----------|-------------|------------|\n| Proxy-based | Load balancer or API gateway mirrors requests | Simple setup, adds proxy hop |\n| Application-level | Application code sends async copy of request | Fine-grained control, code coupling |\n| Infrastructure-level | Service mesh (Istio, Linkerd) mirrors traffic | No code changes, requires mesh |\n| Log replay | Capture request logs, replay against shadow | No live infrastructure needed, not real-time |\n\n## Implementation Patterns\n\n### Proxy-Based Mirroring\n\nConfigure the load balancer or API gateway to:\n\n1. Forward the original request to the production backend\n2. Clone the request and send it to the shadow backend\n3. Return only the production response to the client\n4. Shadow response is logged but never returned\n5. Shadow request timeout is independent of production\n\n### Application-Level Mirroring\n\n1. Intercept the incoming request at the application layer\n2. Process the request normally through the production path\n3. Asynchronously send a copy of the request to the shadow service\n4. Do not block the production response on the shadow response\n5. Compare responses in a background worker\n\n### Response Comparison Strategy\n\nCompare responses field by field with configurable rules:\n\n| Field type | Comparison approach |\n|-----------|-------------------|\n| IDs, timestamps | Ignore (expected to differ) |\n| Computed values | Compare within tolerance (e.g., floating point) |\n| Collections | Compare as sets (ignore ordering unless significant) |\n| Status codes | Exact match required |\n| Error responses | Categorize and compare error types |\n| Headers | Compare relevant headers only (Content-Type, Cache-Control) |\n\n### Handling Stateful Requests\n\nShadow mode works best with read-only requests. For stateful (write) requests:\n\n| Approach | Description |\n|----------|------------|\n| Skip writes | Only mirror read requests to shadow |\n| Isolated state | Shadow has its own database seeded from production |\n| Dry-run writes | Shadow validates the write but does not persist |\n| Record-only | Log what shadow would have written, compare intent |\n\n## Gradual Rollout\n\n| Phase | Traffic % | Duration | Goal |\n|-------|-----------|----------|------|\n| 1. Smoke test | 1% | Hours | Verify shadow receives and processes requests |\n| 2. Canary | 5-10% | Days | Identify obvious discrepancies |\n| 3. Validation | 25-50% | Days-weeks | Build confidence in match rate |\n| 4. Full mirror | 100% | Days-weeks | Final validation before cutover |\n\n## Validation Metrics\n\n| Metric | Target | Description |\n|--------|--------|-------------|\n| Response match rate | > 99.9% | Percentage of identical responses |\n| Shadow latency (P50) | Within 2x of prod | Shadow performance baseline |\n| Shadow latency (P99) | Monitored | Tail latency under real load |\n| Shadow error rate | \u003C prod error rate | Shadow should not produce more errors |\n| Shadow availability | Monitored | Shadow uptime (not a blocker) |\n| Discrepancy categories | Trending to zero | Known differences resolved over time |\n\n## Common Pitfalls\n\n| Pitfall | Mitigation |\n|---------|-----------|\n| Shadow affects production performance | Async mirroring, independent timeouts, kill switch |\n| Shadow writes to shared resources | Isolate shadow databases, queues, and external services |\n| Non-deterministic responses cause false mismatches | Configure comparison rules to ignore timestamps, IDs, nonces |\n| Shadow receives stale data | Seed shadow database from recent production snapshot |\n| Traffic amplification overwhelms shadow | Use sampled mirroring, auto-scaling, or circuit breakers |\n| Request ordering differs between prod and shadow | Compare request-by-request, not sequence-dependent |\n| Authentication tokens expire for shadow | Mint shadow-specific tokens or bypass auth in shadow |\n\n## Integration with Dual Write\n\nShadow mode and dual write are complementary migration techniques:\n\n| Migration phase | Technique | Purpose |\n|----------------|-----------|---------|\n| Early validation | Shadow mode (reads) | Verify the new system returns correct responses |\n| Data sync | Dual write | Keep both stores authoritative during transition |\n| Pre-cutover | Both simultaneously | Shadow validates reads, dual write maintains data |\n| Cutover | Dual write reversal | New system becomes primary, old becomes secondary |\n| Post-cutover | Shadow mode (reversed) | Mirror to old system to verify nothing broke |\n\n### Strangler Fig Context\n\nBoth patterns are tactics within the broader Strangler Fig migration strategy:\n\n1. **Identify** a component to migrate\n2. **Shadow** traffic to validate the replacement\n3. **Dual write** to synchronize data stores\n4. **Cut over** reads, then writes\n5. **Decommission** the old component\n6. Repeat for the next component\n\n## Kill Switch Requirements\n\nShadow mode must have an immediate disable mechanism:\n\n- Feature flag or configuration toggle (no deployment required)\n- Disables within seconds, not minutes\n- Monitored — alerts if shadow causes production impact\n- Tested before enabling shadow traffic\n\n## Monitoring Checklist\n\n- [ ] Production latency impact (should be zero or negligible)\n- [ ] Shadow request success rate\n- [ ] Shadow response latency distribution\n- [ ] Response match rate by endpoint\n- [ ] Discrepancy log volume and categories\n- [ ] Shadow system resource utilization\n- [ ] Kill switch status and responsiveness\n\n## Agentic Optimizations\n\n| Context | Approach |\n|---------|----------|\n| Architecture review | Verify shadow isolation (no shared writes), kill switch exists |\n| Code review | Check async mirroring does not block production path |\n| Implementation | Start with proxy-based mirroring at 1%, increase gradually |\n| Testing | Verify kill switch works, confirm production is unaffected when shadow fails |\n\n## Quick Reference\n\n| Term | Definition |\n|------|-----------|\n| Shadow system | The new system receiving mirrored traffic |\n| Production system | The live system serving real users |\n| Traffic splitter | Component that duplicates requests |\n| Match rate | Percentage of shadow responses matching production |\n| Kill switch | Mechanism to instantly disable shadow traffic |\n| Dark launching | Synonym for shadow mode — feature is live but invisible to users |\n| Canary traffic | Small percentage of mirrored requests for initial validation |\n| Strangler fig | Broader migration strategy of incrementally replacing components |\n",{"name":5,"created":48,"modified":49,"reviewed":48,"description":7,"allowed-tools":50,"user-invocable":44},1771372800000,1785456000000,"Read, Grep, Glob, Edit, Write, TodoWrite","main","bdd0582f1a2ba53d21061835bfd72d45f2f954f4","migration-patterns-plugin\u002Fskills\u002Fshadow-mode",6,"https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins","https:\u002F\u002Fgithub.com\u002Flaurigates","Linux enthusiast, cloud engineer, neovim addict, electronics hobbyist.","2026-11-13 20:24:11",{"source":8,"skillName":5,"commands":60,"prompt":70,"zipAvailable":71},[61,64,67],{"tool":62,"command":63},"npx","npx skills add laurigates\u002Fclaude-plugins --skill shadow-mode",{"tool":65,"command":66},"bunx","bunx skills add laurigates\u002Fclaude-plugins --skill shadow-mode",{"tool":68,"command":69},"pnpm","pnpm dlx skills add laurigates\u002Fclaude-plugins --skill shadow-mode","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Flaurigates\u002Fclaude-plugins\u002Fblob\u002Fmain\u002Fmigration-patterns-plugin\u002Fskills\u002Fshadow-mode\u002FSKILL.md",true,[],[74,102,120,136,159,189],{"skillNo":75,"name":76,"nameZh":6,"description":77,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":78,"categories":79,"keywords":85,"publishedAt":43},"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",[80],{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000016","图像与多媒体","SCENARIO","使用场景",[86,87,88,89,90,91,92,93,94,95,33,25,96,97,98,99,100,101,24,37],"show","kitty show image","image","kitty","show image","ls","get","send","open","dev","Bash","file","text","with","xdg","via",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":108,"publishedAt":43},"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",[],[89,109,110,111,30,112,25,96,113,114,115,24,37,36,35,116,117,118,119,33],"kitty session persistence","session","persistence","snapshots","uname","reboot","terminal","snapshot","macos","sessions","restore",{"skillNo":121,"name":122,"nameZh":6,"description":123,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":124,"categories":125,"keywords":126,"publishedAt":43},"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",[],[127,128,89,129,130,91,131,132,92,133,134,33,25,135,96,98,99,115,24,37],"kitty remote control","remote","control","remote control","running","never","panes","notify","query",{"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":142,"publishedAt":43},"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",[],[143,144,145,146,147,148,149,150,151,152,33,25,96,153,97,154,155,156,157,158],"docs reference check","check","reference check","reference","docs","links","python3","repo","files","auto","drift","lint","wiring","chezmoi","references","cp",{"skillNo":160,"name":161,"nameZh":6,"description":162,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":163,"categories":164,"keywords":174,"publishedAt":43},"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",[165,168,169],{"categoryNo":166,"categoryName":167,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":81,"categoryName":82,"taxonomyType":83,"taxonomyTypeDesc":84},{"categoryNo":170,"categoryName":171,"taxonomyType":172,"taxonomyTypeDesc":173},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[175,176,177,178,149,179,37,180,35,181,182,183,33,96,97,184,185,25,186,187,188,101,24],"youtube upload","upload","youtube","Video","run","uv run","publishing","data","uv","api","v3","tags","id","title",{"skillNo":190,"name":191,"nameZh":6,"description":192,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":193,"categories":194,"keywords":198,"publishedAt":43},"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",[195],{"categoryNo":196,"categoryName":197,"taxonomyType":83,"taxonomyTypeDesc":84},"01JBSEEDCAT000000000000023","Skill与智能体开发",[199,200,201,202,177,178,203,204,205,206,207,37,208,209,210,211,33,212,25,99,213,24],"youtube studio share","share","youtube studio","studio","browser","javascript","scripting","google workspace","workspace","tool","google","only","MCP","chrome","organization"]