[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6ENP3THVYBVB8VFBHZXR590":3,"skill-same:01M6ENP3THVYBVB8VFBHZXR590":93},{"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":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":56,"commitSha":57,"skillDirectory":58,"forksCount":59,"repositoryHtmlUrl":60,"repositoryHomepageUrl":61,"ownerHtmlUrl":62,"ownerBlogUrl":6,"ownerDescription":63,"updatedAt":64,"install":65,"resources":78},"01M6ENP3THVYBVB8VFBHZXR590","ci",null,"Diagnoses and fixes CI\u002FCD pipeline failures. Use when user mentions 'CI', 'GitHub Actions', 'GitLab CI', 'ビルドエラー', 'テスト失敗', 'パイプライン', 'CIが落ちた', or asks to analyze build\u002Ftest failures. Do NOT load for: ローカルビルド, 通常の実装作業, レビュー, セットアップ.","ComeOnOliver\u002Fskillshub","ComeOnOliver","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F43215937?v=4","01M6E5JNFECJAAVFE0W7SMWWD2","Haoran Shu","01M6E5JNNDQS7AJZDYFQ8TPZCK",67,"MIT","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署","SCENARIO","使用场景",[5,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"Bash","CI\u002FCD","false","task","do","build","use","read","gitlab ci","analyze","github","github-actions","ci-cd","pipeline","github actions","actions","debugging","gitlab","test","2026-11-10 10:12:30",false,"---\nname: ci\ndescription: \"Diagnoses and fixes CI\u002FCD pipeline failures. Use when user mentions 'CI', 'GitHub Actions', 'GitLab CI', 'ビルドエラー', 'テスト失敗', 'パイプライン', 'CIが落ちた', or asks to analyze build\u002Ftest failures. Do NOT load for: ローカルビルド, 通常の実装作業, レビュー, セットアップ.\"\nallowed-tools: [\"Read\", \"Grep\", \"Bash\", \"Task\"]\ncontext: fork\nmetadata:\n  skillport:\n    category: ci\n    tags: [ci-cd, github-actions, pipeline, debugging]\n    alwaysApply: false\n---\n\n# CI\u002FCD Skills\n\nCI\u002FCD パイプラインに関する問題を解決するスキル群です。\n\n---\n\n## 発動条件\n\n- 「CIが落ちた」「GitHub Actionsが失敗」\n- 「ビルドエラー」「テストが通らない」\n- 「パイプラインを直して」\n\n---\n\n## 含まれる小スキル\n\n| スキル | 用途 | トリガー |\n|--------|------|----------|\n| ci-analyze-failures | 失敗原因の分析 | 「ログを見て」「原因を調べて」 |\n| ci-fix-failing-tests | テスト修正の提案 | 「テストを直して」「修正案を出して」 |\n\n---\n\n## ルーティングロジック\n\nユーザーの意図に応じて適切な小スキルを選択:\n\n### 分析・調査が必要な場合\n\n→ `ci-analyze-failures\u002Fdoc.md` を参照\n\n例:\n- 「CIが落ちた原因を教えて」\n- 「GitHub Actionsのログを見て」\n- 「なんでビルドが失敗したの？」\n\n### 修正・対応が必要な場合\n\n→ `ci-fix-failing-tests\u002Fdoc.md` を参照\n\n例:\n- 「テストを直して」\n- 「エラーを修正して」\n- 「パイプラインを通るようにして」\n\n---\n\n## 実行手順\n\n1. **テスト vs 実装判定**（Step 0）\n2. ユーザーの意図を分類（分析 or 修正）\n3. 複雑度を判定（下記参照）\n4. 適切な小スキルの doc.md を読む、または ci-cd-fixer サブエージェント起動\n5. 結果を確認し、必要に応じて再実行\n\n### Step 0: テスト vs 実装判定（品質判定ゲート）\n\nCI 失敗時、まず原因の切り分けを行う:\n\n```\nCI 失敗報告\n    ↓\n┌─────────────────────────────────────────┐\n│           テスト vs 実装判定             │\n├─────────────────────────────────────────┤\n│  エラーの原因を分析:                    │\n│  ├── 実装が間違い → 実装を修正          │\n│  ├── テストが古い → ユーザーに確認      │\n│  └── 環境問題 → 環境修正                │\n└─────────────────────────────────────────┘\n```\n\n#### 禁止事項（改ざん防止）\n\n```markdown\n⚠️ CI 失敗時の禁止事項\n\n以下の「解決策」は禁止です：\n\n| 禁止 | 例 | 正しい対応 |\n|------|-----|-----------|\n| テスト skip 化 | `it.skip(...)` | 実装を修正 |\n| アサーション削除 | `expect()` を消す | 期待値を確認 |\n| CI チェック迂回 | `continue-on-error` | 根本原因修正 |\n| lint ルール緩和 | `eslint-disable` | コードを修正 |\n```\n\n#### 判断フロー\n\n```markdown\n? CI が失敗しています\n\n**判断が必要です**:\n\n1. **実装が間違い** → 実装を修正 ✅\n2. **テストの期待値が古い** → ユーザーに確認を求める\n3. **環境の問題** → 環境設定を修正\n\n⚠️ テストの改ざん（skip化、アサーション削除）は禁止です\n\nどれに該当しますか？\n```\n\n#### 承認が必要な場合\n\nテスト\u002F設定の変更がやむを得ない場合:\n\n```markdown\n## ? テスト\u002F設定変更の承認リクエスト\n\n### 理由\n[なぜこの変更が必要か]\n\n### 変更内容\n[差分]\n\n### 代替案の検討\n- [ ] 実装の修正で解決できないか確認した\n\nユーザーの明示的な承認を待つ\n```\n\n## サブエージェント連携\n\n以下の条件を満たす場合、Task tool で ci-cd-fixer を起動:\n\n- 修正 → 再実行 → 失敗のループが **2回以上** 発生\n- または、エラーが複数ファイルにまたがる複雑なケース\n\n**起動パターン:**\n\n```\nTask tool:\n  subagent_type=\"ci-cd-fixer\"\n  prompt=\"CI失敗を診断・修正してください。エラーログ: {error_log}\"\n```\n\nci-cd-fixer は安全第一で動作（デフォルト dry-run モード）。\n詳細は `agents\u002Fci-cd-fixer.md` を参照。\n\n---\n\n## VibeCoder 向け\n\n```markdown\n? CI が壊れたときの言い方\n\n1. **「CI が落ちた」「赤くなった」**\n   - 自動テストが失敗している状態\n\n2. **「なんで失敗してるの？」**\n   - 原因を調べてほしい\n\n3. **「直して」**\n   - 自動で修正を試みる\n\n? 重要: テストを「ごまかす」修正は禁止です\n   - ❌ テストを消す、スキップする\n   - ⭕ コードを正しく直す\n\n「テストが間違ってそう」と思ったら、\nまず確認してから対応を決めましょう\n```\n","# CI\u002FCD Skills\n\nCI\u002FCD パイプラインに関する問題を解決するスキル群です。\n\n---\n\n## 発動条件\n\n- 「CIが落ちた」「GitHub Actionsが失敗」\n- 「ビルドエラー」「テストが通らない」\n- 「パイプラインを直して」\n\n---\n\n## 含まれる小スキル\n\n| スキル | 用途 | トリガー |\n|--------|------|----------|\n| ci-analyze-failures | 失敗原因の分析 | 「ログを見て」「原因を調べて」 |\n| ci-fix-failing-tests | テスト修正の提案 | 「テストを直して」「修正案を出して」 |\n\n---\n\n## ルーティングロジック\n\nユーザーの意図に応じて適切な小スキルを選択:\n\n### 分析・調査が必要な場合\n\n→ `ci-analyze-failures\u002Fdoc.md` を参照\n\n例:\n- 「CIが落ちた原因を教えて」\n- 「GitHub Actionsのログを見て」\n- 「なんでビルドが失敗したの？」\n\n### 修正・対応が必要な場合\n\n→ `ci-fix-failing-tests\u002Fdoc.md` を参照\n\n例:\n- 「テストを直して」\n- 「エラーを修正して」\n- 「パイプラインを通るようにして」\n\n---\n\n## 実行手順\n\n1. **テスト vs 実装判定**（Step 0）\n2. ユーザーの意図を分類（分析 or 修正）\n3. 複雑度を判定（下記参照）\n4. 適切な小スキルの doc.md を読む、または ci-cd-fixer サブエージェント起動\n5. 結果を確認し、必要に応じて再実行\n\n### Step 0: テスト vs 実装判定（品質判定ゲート）\n\nCI 失敗時、まず原因の切り分けを行う:\n\n```\nCI 失敗報告\n    ↓\n┌─────────────────────────────────────────┐\n│           テスト vs 実装判定             │\n├─────────────────────────────────────────┤\n│  エラーの原因を分析:                    │\n│  ├── 実装が間違い → 実装を修正          │\n│  ├── テストが古い → ユーザーに確認      │\n│  └── 環境問題 → 環境修正                │\n└─────────────────────────────────────────┘\n```\n\n#### 禁止事項（改ざん防止）\n\n```markdown\n⚠️ CI 失敗時の禁止事項\n\n以下の「解決策」は禁止です：\n\n| 禁止 | 例 | 正しい対応 |\n|------|-----|-----------|\n| テスト skip 化 | `it.skip(...)` | 実装を修正 |\n| アサーション削除 | `expect()` を消す | 期待値を確認 |\n| CI チェック迂回 | `continue-on-error` | 根本原因修正 |\n| lint ルール緩和 | `eslint-disable` | コードを修正 |\n```\n\n#### 判断フロー\n\n```markdown\n? CI が失敗しています\n\n**判断が必要です**:\n\n1. **実装が間違い** → 実装を修正 ✅\n2. **テストの期待値が古い** → ユーザーに確認を求める\n3. **環境の問題** → 環境設定を修正\n\n⚠️ テストの改ざん（skip化、アサーション削除）は禁止です\n\nどれに該当しますか？\n```\n\n#### 承認が必要な場合\n\nテスト\u002F設定の変更がやむを得ない場合:\n\n```markdown\n## ? テスト\u002F設定変更の承認リクエスト\n\n### 理由\n[なぜこの変更が必要か]\n\n### 変更内容\n[差分]\n\n### 代替案の検討\n- [ ] 実装の修正で解決できないか確認した\n\nユーザーの明示的な承認を待つ\n```\n\n## サブエージェント連携\n\n以下の条件を満たす場合、Task tool で ci-cd-fixer を起動:\n\n- 修正 → 再実行 → 失敗のループが **2回以上** 発生\n- または、エラーが複数ファイルにまたがる複雑なケース\n\n**起動パターン:**\n\n```\nTask tool:\n  subagent_type=\"ci-cd-fixer\"\n  prompt=\"CI失敗を診断・修正してください。エラーログ: {error_log}\"\n```\n\nci-cd-fixer は安全第一で動作（デフォルト dry-run モード）。\n詳細は `agents\u002Fci-cd-fixer.md` を参照。\n\n---\n\n## VibeCoder 向け\n\n```markdown\n? CI が壊れたときの言い方\n\n1. **「CI が落ちた」「赤くなった」**\n   - 自動テストが失敗している状態\n\n2. **「なんで失敗してるの？」**\n   - 原因を調べてほしい\n\n3. **「直して」**\n   - 自動で修正を試みる\n\n? 重要: テストを「ごまかす」修正は禁止です\n   - ❌ テストを消す、スキップする\n   - ⭕ コードを正しく直す\n\n「テストが間違ってそう」と思ったら、\nまず確認してから対応を決めましょう\n```\n",{"name":5,"context":48,"metadata":49,"description":7,"allowed-tools":52},"fork",{"skillport":50},{"tags":51,"category":5,"alwaysApply":44},[36,35,37,40],[53,54,24,55],"Read","Grep","Task","main","def8531e65114c0fca8fb8551c1871ee0eed705c","skills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci",24,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub","https:\u002F\u002Fskillshub.wtf","https:\u002F\u002Fgithub.com\u002FComeOnOliver","AI & Blockchain Engineer\r\n","2026-06-24 22:07:19",{"source":8,"skillName":5,"commands":66,"prompt":76,"zipAvailable":77},[67,70,73],{"tool":68,"command":69},"npx","npx skills add ComeOnOliver\u002Fskillshub --skill ci",{"tool":71,"command":72},"bunx","bunx skills add ComeOnOliver\u002Fskillshub --skill ci",{"tool":74,"command":75},"pnpm","pnpm dlx skills add ComeOnOliver\u002Fskillshub --skill ci","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci\u002FSKILL.md",true,[79,85,89],{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"ci-analyze-failures\u002Fdoc.md","REFERENCE","参考文档",4202,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci\u002Fci-analyze-failures\u002Fdoc.md",{"path":86,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":87,"sourceHtmlUrl":88},"ci-fix-failing-tests\u002Fdoc.md",4658,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci\u002Fci-fix-failing-tests\u002Fdoc.md",{"path":90,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":91,"sourceHtmlUrl":92},"skill-report.json",17127,"https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Faiskillstore\u002Fmarketplace\u002Fchachamaru127\u002Fci\u002Fskill-report.json",[94,106,116,125,131,138],{"skillNo":95,"name":96,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":97,"categories":98,"keywords":102,"publishedAt":43},"01M6FKJN13GMG4KY57J3QD8GY5","model-hierarchy-skill","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzscole\u002Fmodel-hierarchy-skill\u002Fmodel-hierarchy-skill\u002FSKILL.md",[99],{"categoryNo":100,"categoryName":101,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[103,104,105],"model","model hierarchy","model hierarchy skill",{"skillNo":107,"name":108,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":109,"categories":110,"keywords":112,"publishedAt":43},"01M6FKJJJ6GCAMR4PPPRD12M5X","zoom-mcp","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-mcp\u002FSKILL.md",[111],{"categoryNo":100,"categoryName":101,"taxonomyType":21,"taxonomyTypeDesc":22},[113,114,115],"MCP","zoom","zoom mcp",{"skillNo":117,"name":118,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":121,"publishedAt":43},"01M6FKJE3KYT3KPEZMEEHYKA6K","zoom-apps-sdk","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fzoom-apps-sdk\u002FSKILL.md",[],[122,123,124,114],"sdk","zoom apps sdk","apps",{"skillNo":126,"name":127,"nameZh":6,"description":6,"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":43},"01M6FKJ9EDH9Q5VWDF8HAJRSP0","windows","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwindows\u002FSKILL.md",[],[127],{"skillNo":132,"name":133,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":134,"categories":135,"keywords":137,"publishedAt":43},"01M6FKJ666BEEFC3AE9GJ72Q93","whiteboard","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwhiteboard\u002FSKILL.md",[136],{"categoryNo":100,"categoryName":101,"taxonomyType":21,"taxonomyTypeDesc":22},[133],{"skillNo":139,"name":140,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":141,"categories":142,"keywords":143,"publishedAt":43},"01M6FKJ21WFCDGTJQ2Q91T9DVW","websockets","https:\u002F\u002Fgithub.com\u002FComeOnOliver\u002Fskillshub\u002Fblob\u002Fmain\u002Fskills\u002Fzoom\u002Fskills\u002Fwebsockets\u002FSKILL.md",[],[140]]