[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MDSC933NH0TST9M6CYW3YF":3,"skill-same:01M6MDSC933NH0TST9M6CYW3YF":72},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":25,"publishedAt":35,"linkOnly":36,"markdownContent":37,"markdownBody":38,"frontMatter":39,"refName":41,"commitSha":42,"skillDirectory":43,"forksCount":44,"repositoryHtmlUrl":45,"repositoryHomepageUrl":6,"ownerHtmlUrl":46,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":47,"install":48,"resources":61},"01M6MDSC933NH0TST9M6CYW3YF","xddp-crs-view",null,"CRS を階層的に閲覧できる HTML ビューア／CLIツリーを生成する。 Excel が使えない環境向け。「CRSを見やすく表示して」「階層ビューを作って」などで起動する。","tsuna44\u002FXddpSettings","tsuna44","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F84987382?v=4","01M6JWX5PY45PD3W2131F7VMF4","01M6JWX5VFK80TQBJJY8SHAE4N",1,"MIT","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002FSKILL.md",[17,22],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000004","电子表格","SCENARIO","使用场景",{"categoryNo":23,"categoryName":24,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000009","前端开发",[26,27,28,29,30,31,32,33,34],"crs","view","xddp crs view","xlsx","status","format","生成","html","tree","2026-11-10 10:12:30",false,"---\nname: xddp-crs-view\ndescription: CRS を階層的に閲覧できる HTML ビューア／CLIツリーを生成する。\n  Excel が使えない環境向け。「CRSを見やすく表示して」「階層ビューを作って」などで起動する。\nargument-hint: \"[CR番号] [--format html|tree] [--status \\\"...\\\"]\"\n---\n\nYou are executing **XDDP CRS View — Hierarchical Viewer \u002F CLI Tree** (Excel を要さない CRS レビュー手段)。\n\n**Arguments:** $ARGUMENTS = [CR_NUMBER] (optional) [--format html|tree] [--status \"...\"]\n- CR_NUMBER: optional; auto-detected from XDDP_DIR if omitted\n- `--format`: optional; `html`（既定）または `tree`\n- `--status`: optional; `--format tree` のときのみ有効。カンマ区切りでステータスを絞り込む\n  （例: `--status \"? 要検討,❓ 未決\"`）\n\n---\n\nRead `~\u002F.claude\u002Fskills\u002Fxddp-common\u002FSKILL.md`, apply \"## CR Resolution\" with $ARGUMENTS → let `CR`, `REST_ARGS`.\n\n(xddp.config.md lookup done in xddp-common\u002FSKILL.md; reuse WORKSPACE_ROOT, XDDP_DIR.)\nLet `CR_PATH` = `{WORKSPACE_ROOT}\u002F{XDDP_DIR}\u002F{CR}`.\nLet `CRS_PATH` = `{CR_PATH}\u002F03_change-requirements\u002FCRS-{CR}.md`（`xddp-revise\u002FSKILL.md` の `req` マッピングと同一パス）。\n\nParse REST_ARGS for `--format` (default: `html`) and `--status` (tree のみ有効).\n\nIf CRS_PATH が存在しない場合: エラー「CRS が見つかりません: {CRS_PATH}」で停止する。\n\n## Step 1: Render\n\n`--format html`（既定）の場合:\nRun via Bash:\n```\nPY=$(command -v python3 || command -v python) && \"$PY\" ~\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Fcrs_view.py {CRS_PATH} --format html --out {CR_PATH}\u002F03_change-requirements\u002FCRS-{CR}-view.html\n```\n\n`--format tree` の場合、ファイルを作らずターミナルへ直接出力する:\n```\nPY=$(command -v python3 || command -v python) && \"$PY\" ~\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Fcrs_view.py {CRS_PATH} --format tree {--status \"{STATUS}\" があれば付与}\n```\n出力をそのままユーザーに提示する。\n\n## Step 2: Report in Japanese\n\n`--format html` の場合、生成したファイルパスを伝え、以下を日本語で簡潔に案内する:\n- ステータスチップ・全文検索での絞り込み方法\n- 「全展開」「全折畳」ボタン\n- SP カードのコメント欄にレビュー指摘（重要度: ? 重大／? 軽微／? 提案）を入力できること\n- 「指摘を.md出力」でダウンロードした `.md` を人が伝えてくれれば、後述の「取り込み手順」で\n  `\u002Fxddp-revise {CR} req` に連携できること\n- コメントはブラウザの localStorage に保存されるため、同じブラウザで再度開けば入力内容が復元されること\n\n## エクスポートした .md の取り込み手順\n\n人が `\u002Fxddp-crs-view` の HTML から「指摘を.md出力」または「指摘をコピー」で書き出した Markdown の\n内容を伝えたら、以下の手順で取り込む。\n\n書き出される Markdown は `## 2. 指摘事項と対応内容` テーブルを\n`#`／`重要度`／`場所`（SP ID＋タイトル）／`指摘内容`（自由記述）／`対応内容`（空欄）／\n`対応状況`（常に `⬜ 未対応`）の6列で持つ（`review-template.md` と同一列構成）。\nコメント欄が空欄だった SP の行は出力されない（「問題なし」は無言で表現される）。\n\n1. Let `REVIEW_FILE` = `{CR_PATH}\u002F03_change-requirements\u002Freview\u002F03_change-requirements-review.md`\n   （`\u002Fxddp-revise req` が読む対象と同一パス。`xddp-revise\u002FSKILL.md`「## 4. Record in review file」参照）。\n2. **REVIEW_FILE が存在する場合:** 既存の `## 2. 指摘事項と対応内容` テーブルを読み、既存の最大 `#` の\n   続き番号で人が伝えた行を **追記** する（既存の AI レビュー結果・対応状況は上書きしない）。\n3. **REVIEW_FILE が存在しない場合:** `~\u002F.claude\u002Fskills\u002Fxddp-common\u002Ftemplates\u002Freview-template.md` を用いて\n   新規作成し、人が伝えた行を1番から採番する。レビュアーは「人間（CRS View 経由・今日の日付）」とする。\n4. 追記・作成が終わったら、人に「`\u002Fxddp-revise {CR} req` を実行すれば、追記した指摘が `⬜ 未対応` として\n   通常どおり取り込まれます」と案内する（自動実行はしない）。\n","You are executing **XDDP CRS View — Hierarchical Viewer \u002F CLI Tree** (Excel を要さない CRS レビュー手段)。\n\n**Arguments:** $ARGUMENTS = [CR_NUMBER] (optional) [--format html|tree] [--status \"...\"]\n- CR_NUMBER: optional; auto-detected from XDDP_DIR if omitted\n- `--format`: optional; `html`（既定）または `tree`\n- `--status`: optional; `--format tree` のときのみ有効。カンマ区切りでステータスを絞り込む\n  （例: `--status \"? 要検討,❓ 未決\"`）\n\n---\n\nRead `~\u002F.claude\u002Fskills\u002Fxddp-common\u002FSKILL.md`, apply \"## CR Resolution\" with $ARGUMENTS → let `CR`, `REST_ARGS`.\n\n(xddp.config.md lookup done in xddp-common\u002FSKILL.md; reuse WORKSPACE_ROOT, XDDP_DIR.)\nLet `CR_PATH` = `{WORKSPACE_ROOT}\u002F{XDDP_DIR}\u002F{CR}`.\nLet `CRS_PATH` = `{CR_PATH}\u002F03_change-requirements\u002FCRS-{CR}.md`（`xddp-revise\u002FSKILL.md` の `req` マッピングと同一パス）。\n\nParse REST_ARGS for `--format` (default: `html`) and `--status` (tree のみ有効).\n\nIf CRS_PATH が存在しない場合: エラー「CRS が見つかりません: {CRS_PATH}」で停止する。\n\n## Step 1: Render\n\n`--format html`（既定）の場合:\nRun via Bash:\n```\nPY=$(command -v python3 || command -v python) && \"$PY\" ~\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Fcrs_view.py {CRS_PATH} --format html --out {CR_PATH}\u002F03_change-requirements\u002FCRS-{CR}-view.html\n```\n\n`--format tree` の場合、ファイルを作らずターミナルへ直接出力する:\n```\nPY=$(command -v python3 || command -v python) && \"$PY\" ~\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Fcrs_view.py {CRS_PATH} --format tree {--status \"{STATUS}\" があれば付与}\n```\n出力をそのままユーザーに提示する。\n\n## Step 2: Report in Japanese\n\n`--format html` の場合、生成したファイルパスを伝え、以下を日本語で簡潔に案内する:\n- ステータスチップ・全文検索での絞り込み方法\n- 「全展開」「全折畳」ボタン\n- SP カードのコメント欄にレビュー指摘（重要度: ? 重大／? 軽微／? 提案）を入力できること\n- 「指摘を.md出力」でダウンロードした `.md` を人が伝えてくれれば、後述の「取り込み手順」で\n  `\u002Fxddp-revise {CR} req` に連携できること\n- コメントはブラウザの localStorage に保存されるため、同じブラウザで再度開けば入力内容が復元されること\n\n## エクスポートした .md の取り込み手順\n\n人が `\u002Fxddp-crs-view` の HTML から「指摘を.md出力」または「指摘をコピー」で書き出した Markdown の\n内容を伝えたら、以下の手順で取り込む。\n\n書き出される Markdown は `## 2. 指摘事項と対応内容` テーブルを\n`#`／`重要度`／`場所`（SP ID＋タイトル）／`指摘内容`（自由記述）／`対応内容`（空欄）／\n`対応状況`（常に `⬜ 未対応`）の6列で持つ（`review-template.md` と同一列構成）。\nコメント欄が空欄だった SP の行は出力されない（「問題なし」は無言で表現される）。\n\n1. Let `REVIEW_FILE` = `{CR_PATH}\u002F03_change-requirements\u002Freview\u002F03_change-requirements-review.md`\n   （`\u002Fxddp-revise req` が読む対象と同一パス。`xddp-revise\u002FSKILL.md`「## 4. Record in review file」参照）。\n2. **REVIEW_FILE が存在する場合:** 既存の `## 2. 指摘事項と対応内容` テーブルを読み、既存の最大 `#` の\n   続き番号で人が伝えた行を **追記** する（既存の AI レビュー結果・対応状況は上書きしない）。\n3. **REVIEW_FILE が存在しない場合:** `~\u002F.claude\u002Fskills\u002Fxddp-common\u002Ftemplates\u002Freview-template.md` を用いて\n   新規作成し、人が伝えた行を1番から採番する。レビュアーは「人間（CRS View 経由・今日の日付）」とする。\n4. 追記・作成が終わったら、人に「`\u002Fxddp-revise {CR} req` を実行すれば、追記した指摘が `⬜ 未対応` として\n   通常どおり取り込まれます」と案内する（自動実行はしない）。\n",{"name":5,"description":7,"argument-hint":40},"[CR番号] [--format html|tree] [--status \"...\"]","main","0719b3a37b134895da55968646acffe58aedce8f","ClaudeCode\u002F.claude\u002Fskills\u002Fxddp-crs-view",0,"https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings","https:\u002F\u002Fgithub.com\u002Ftsuna44","2026-11-08 08:45:39",{"source":8,"skillName":5,"commands":49,"prompt":59,"zipAvailable":60},[50,53,56],{"tool":51,"command":52},"npx","npx skills add tsuna44\u002FXddpSettings --skill xddp-crs-view",{"tool":54,"command":55},"bunx","bunx skills add tsuna44\u002FXddpSettings --skill xddp-crs-view",{"tool":57,"command":58},"pnpm","pnpm dlx skills add tsuna44\u002FXddpSettings --skill xddp-crs-view","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002FSKILL.md",true,[62,68],{"path":63,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":66,"sourceHtmlUrl":67},"scripts\u002Fcrs_view.py","SCRIPT","脚本",22880,"https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Fcrs_view.py",{"path":69,"resourceType":64,"resourceTypeDesc":65,"sizeBytes":70,"sourceHtmlUrl":71},"scripts\u002Ftests\u002Ftest_crs_view.py",3558,"https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-crs-view\u002Fscripts\u002Ftests\u002Ftest_crs_view.py",[73,84,91,99,106,128],{"skillNo":74,"name":75,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":76,"categories":77,"keywords":81,"publishedAt":35},"01M6MDVNN0ZX8D5KABK9G0067Z","demo.skill","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002Ftools\u002Fharness\u002Ftests\u002Ffixtures\u002Fbadrepo\u002FClaudeCode\u002F.claude\u002Fskills\u002Fdemo.skill\u002FSKILL.md",[78],{"categoryNo":79,"categoryName":80,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",[82,83],"demo skill","demo",{"skillNo":85,"name":86,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":89,"publishedAt":35},"01M6MDVK20HAJYBMXM7VX50A3J","demo.noname","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002Ftools\u002Fharness\u002Ftests\u002Ffixtures\u002Fbadrepo\u002FClaudeCode\u002F.claude\u002Fskills\u002Fdemo.noname\u002FSKILL.md",[],[90,83],"demo noname",{"skillNo":92,"name":93,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":94,"categories":95,"keywords":96,"publishedAt":35},"01M6MDVFS20532JT4V7WT779XH","demo.common","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002Ftools\u002Fharness\u002Ftests\u002Ffixtures\u002Fbadrepo\u002FClaudeCode\u002F.claude\u002Fskills\u002Fdemo.common\u002FSKILL.md",[],[97,98,83],"demo common","common",{"skillNo":100,"name":101,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":102,"categories":103,"keywords":104,"publishedAt":35},"01M6MDVCV2JFN66NJTFG1CCJS1","demo.badname","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002Ftools\u002Fharness\u002Ftests\u002Ffixtures\u002Fbadrepo\u002FClaudeCode\u002F.claude\u002Fskills\u002Fdemo.badname\u002FSKILL.md",[],[105,83],"demo badname",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":115,"publishedAt":35},"01M6MDV7CHGZGPXR0MQ44VC4C1","xddp-update-knowledge","任意のタイミングで baseline_docs\u002F の knowledge ディレクトリに知識を追加・更新する。CR 非依存。対話形式と引数形式に対応。「知識を登録して」「callgraph を記録して」「メモを保存して」などで起動する。","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-update-knowledge\u002FSKILL.md",[112],{"categoryNo":113,"categoryName":114,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000021","资料检索与研究",[116,117,118,119,120,121,122,123,124,125,126,127],"xddp update knowledge","update knowledge","knowledge","update","note","structure","constraint","lesson","glossary","baseline","flow","docs",{"skillNo":129,"name":130,"nameZh":6,"description":131,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":132,"categories":133,"keywords":142,"publishedAt":35},"01M6MDV2Q1Z02WAN4CZ2WVFZ27","xddp-sync-design","コードから DSN を再生成してリビジョンとして記録し、AIレビュー→人承認を実施する。「設計を同期して」「DSN を更新して」などで起動する。","https:\u002F\u002Fgithub.com\u002Ftsuna44\u002FXddpSettings\u002Fblob\u002Fmain\u002FClaudeCode\u002F.claude\u002Fskills\u002Fxddp-sync-design\u002FSKILL.md",[134,137],{"categoryNo":135,"categoryName":136,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000015","视觉设计",{"categoryNo":138,"categoryName":139,"taxonomyType":140,"taxonomyTypeDesc":141},"01JBSEEDCAT000000000000032","设计师","PROFESSION","适用职业",[143,144,145,32],"sync","xddp sync design","design"]