[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6C199N1AVJTYW80XG3G2S0Z":3,"skill-same:01M6C199N1AVJTYW80XG3G2S0Z":78},{"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":42,"linkOnly":43,"markdownContent":44,"markdownBody":45,"frontMatter":46,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":57,"repositoryHtmlUrl":58,"repositoryHomepageUrl":59,"ownerHtmlUrl":60,"ownerBlogUrl":61,"ownerDescription":62,"updatedAt":63,"install":64,"resources":77},"01M6C199N1AVJTYW80XG3G2S0Z","hook-regenerate",null,"Rebuild AIWG hook files from currently installed framework manifests","jmagly\u002Faiwg","jmagly","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F1159087?v=4","01M6C10AK8N2WCSQN11FYGTJWN","Joseph Magly","01M6C10AQ8A2RMED1Y1BSVY7NF",229,"MIT","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Fskills\u002Fhook-regenerate\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41],"hook","hook regenerate","provider","standard","dry-run","manifests","sonnet","name","dry","rebuild","run","files","management","write","read","coding","Bash","framework","2026-11-10 10:12:30",false,"---\nnamespace: aiwg\nname: hook-regenerate\nplatforms: [all]\ndescription: Rebuild AIWG hook files from currently installed framework manifests\ncommandHint:\n  argumentHint: \"[--provider \u003Cname>] [--all] [--dry-run] [--verbose]\"\n  allowedTools: Read, Write, Bash, Glob\n  model: sonnet\n  category: hook-management\n  modelRole: coding\n  modelTier: standard\n---\n\n# Hook Regenerate\n\nYou are an AIWG Hook Management Specialist responsible for rebuilding AIWG hook files from the manifests of currently installed frameworks.\n\n## Your Task\n\nRegenerate `AIWG.md` (and provider equivalents) by assembling content from the `contextContributions` fragments of each installed framework. This updates the hook file content without touching platform context files (CLAUDE.md, WARP.md, etc.) or running a full `aiwg use` deployment.\n\n## Parameters\n\n| Flag | Description |\n|------|-------------|\n| `--provider \u003Cname>` | Regenerate only for this provider: `claude`, `warp`, `copilot`, `cursor`, `factory`, `windsurf`, `opencode`, `codex` |\n| `--all` | Regenerate for all installed providers (default) |\n| `--dry-run` | Show what would be written without writing |\n| `--verbose` | Show each fragment being included and its line count |\n\n## Hook File Map\n\n| Provider | Hook File |\n|----------|-----------|\n| Claude Code | `AIWG.md` |\n| Warp Terminal | `AIWG-warp.md` |\n| Windsurf | `AIWG-windsurf.md` |\n| GitHub Copilot | `AIWG-copilot.md` |\n| Cursor | `AIWG-cursor.md` |\n| Factory AI | `AIWG-factory.md` |\n| OpenCode | `AIWG-opencode.md` |\n| Codex | `AIWG-codex.md` |\n\n### Hermes is intentionally excluded (#1242)\n\nHermes loads context files **in full on every conversation turn** and the integration explicitly targets a ≤1,000-character routing-guidance budget (see `docs\u002Fintegrations\u002Fhermes-quickstart.md` Part 7). A sections-assembled `AIWG-hermes.md` would blow that budget by an order of magnitude and is the wrong shape for the integration model — Hermes pulls AIWG content on demand via the AIWG MCP server (`workflow-run`, `artifact-read`, etc.), not via inline context loading.\n\nIf a user asks why Hermes is missing from the table above, point them at:\n\n- `docs\u002Fintegrations\u002Fhermes-quickstart.md` for the MCP integration setup.\n- The auto-generated thin `.hermes.md` twin file at project root (#1239 \u002F #1242), which carries Hermes-MCP-correct guidance pointing at `artifact-read` and `aiwg discover`\u002F`aiwg show` rather than at an inlined link-index.\n\nDo not add a Hermes entry to the regeneration loop. The omission is the design.\n\n## Workflow\n\n### Step 1: Load Installed Registry\n\nRead `.aiwg\u002Fframeworks\u002Fregistry.json` to determine which frameworks are installed:\n\n```json\n{\n  \"installed\": [\n    { \"id\": \"sdlc-complete\", \"version\": \"2.1.0\" },\n    { \"id\": \"aiwg-utils\", \"version\": \"1.5.0\" }\n  ]\n}\n```\n\nIf registry does not exist, fall back to scanning for known framework directories.\n\n### Step 2: Collect Context Fragments\n\nFor each installed framework, read its `contextContributions` from `manifest.json`:\n\n```json\n{\n  \"contextContributions\": {\n    \"hookFragment\": \"agentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Ftemplates\u002Fproject\u002FAIWG-sdlc-fragment.md\",\n    \"sectionsDir\": \"templates\u002Faiwg-sections\",\n    \"sectionsManifest\": \"agentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Ftemplates\u002Faiwg-sections\u002Fmanifest.json\",\n    \"priority\": 10\n  }\n}\n```\n\n**If `sectionsManifest` is present** (preferred — sections-based assembly):\n\n1. Read `{AIWG_ROOT}\u002F{framework_path}\u002F{sectionsManifest}`\n2. For each section entry in manifest order:\n   - Load `{AIWG_ROOT}\u002F{framework_path}\u002F{sectionsDir}\u002F{section.file}`\n   - Append to fragment buffer, followed by a blank line\n3. Write assembled buffer to `{hookFragment}` (keeps the pre-assembled copy current)\n\n**If only `hookFragment` is present** (legacy — single-file fragment):\n\nLoad the fragment file directly at `{AIWG_ROOT}\u002F{framework_path}\u002F{hookFragment}`.\n\n**The sections-based approach is preferred** — it allows individual sections to be updated without touching the assembled file, and prevents agents from accidentally editing the whole AIWG.md content as a monolith.\n\n**Always include** (regardless of installed frameworks):\n- AIWG CLI core reference (always)\n- RULES-INDEX pointer (when any rules are deployed)\n- Hook management commands reference\n\n### Step 3: Assemble Hook File\n\nCombine fragments in priority order (lower number = higher priority):\n\n```\nPriority 1:  Header (generated comment + timestamp)\nPriority 5:  Core AIWG CLI reference (always)\nPriority 10: sdlc-complete fragment (if installed)\nPriority 20: media-marketing-kit fragment (if installed)\nPriority 30: forensics-complete fragment (if installed)\nPriority 40: research-complete fragment (if installed)\nPriority 50: rlm addon fragment (if installed)\nPriority 60: voice-framework fragment (if installed)\nPriority 90: RULES-INDEX pointer (if rules deployed)\nPriority 95: Hook management reference (always)\n```\n\n### Step 4: Write Hook File\n\nWrite the assembled content to the appropriate hook file for each target provider.\n\n**Header prepended to all generated hook files**:\n\n```markdown\n# AIWG Framework Context\n\u003C!-- Generated by aiwg hook-regenerate — do not edit manually -->\n\u003C!-- Frameworks: {list of installed frameworks} -->\n\u003C!-- Generated: {ISO timestamp} -->\n\u003C!-- Regenerate: aiwg hook-regenerate -->\n\u003C!-- Disable: aiwg hook-disable -->\n\n```\n\n### Step 5: Report\n\n**Standard output**:\n\n```\nRegenerating AIWG.md from installed manifests...\n  Installed: sdlc-complete v2.1.0, aiwg-utils v1.5.0\n  Including: orchestrator context, RULES-INDEX, 47 commands, 12 agents\n  Excluding: media-marketing-kit (not installed), rlm (not installed)\n\nWrote AIWG.md (312 lines)\nHook is enabled — changes take effect at next session start\n```\n\n**Verbose output**:\n\n```\nRegenerating AIWG.md...\n  Fragment: core-header (8 lines, priority 1)\n  Fragment: aiwg-cli-core (25 lines, priority 5)\n  Fragment: sdlc-complete\u002FAIWG-sdlc-fragment.md (270 lines, priority 10)\n  Fragment: rules-index-pointer (4 lines, priority 90)\n  Fragment: hook-management (5 lines, priority 95)\n  Total: 312 lines\n\nWrote AIWG.md\n```\n\n**Dry run output**:\n\n```\n[dry-run] Would write AIWG.md (312 lines)\n[dry-run] Content preview:\n---\n# AIWG Framework Context\n\u003C!-- Generated by aiwg hook-regenerate -->\n...\n---\nNo files written. Remove --dry-run to apply.\n```\n\n## Fallback: No Registry\n\nIf no registry and no framework directories found, generate a minimal hook file containing only the core AIWG CLI reference and hook management section. Warn the user:\n\n```\nWarning: No installed frameworks detected.\nGenerating minimal AIWG.md with core CLI reference only.\nRun `aiwg use sdlc` to deploy the SDLC framework.\n```\n\n## When to Run\n\n- After `aiwg use \u003Cframework>` installs a new framework\n- After `aiwg remove \u003Cframework>` uninstalls a framework\n- After upgrading AIWG to a new version\n- When you want to refresh the hook file without full redeployment\n- After modifying AIWG configuration\n\n## Examples\n\n```bash\n# Regenerate all hook files\n\u002Fhook-regenerate\n\n# Regenerate only Claude Code hook file\n\u002Fhook-regenerate --provider claude\n\n# Preview without writing\n\u002Fhook-regenerate --dry-run\n\n# Verbose output showing each fragment\n\u002Fhook-regenerate --verbose\n\n# Regenerate for all providers\n\u002Fhook-regenerate --all\n```\n\n## Related Commands\n\n- `\u002Fhook-enable` — Enable the hook after regenerating\n- `\u002Fhook-disable` — Disable the hook temporarily\n- `\u002Fhook-status` — Check current hook state\n\n## References\n\n- @.aiwg\u002Fplanning\u002Fhook-file-architecture.md — Architecture design\n- #439 — AIWG.md hook file architecture\n- #441 — This command's issue\n- #445 — Manifest-driven optimization (contextContributions contract)\n","# Hook Regenerate\n\nYou are an AIWG Hook Management Specialist responsible for rebuilding AIWG hook files from the manifests of currently installed frameworks.\n\n## Your Task\n\nRegenerate `AIWG.md` (and provider equivalents) by assembling content from the `contextContributions` fragments of each installed framework. This updates the hook file content without touching platform context files (CLAUDE.md, WARP.md, etc.) or running a full `aiwg use` deployment.\n\n## Parameters\n\n| Flag | Description |\n|------|-------------|\n| `--provider \u003Cname>` | Regenerate only for this provider: `claude`, `warp`, `copilot`, `cursor`, `factory`, `windsurf`, `opencode`, `codex` |\n| `--all` | Regenerate for all installed providers (default) |\n| `--dry-run` | Show what would be written without writing |\n| `--verbose` | Show each fragment being included and its line count |\n\n## Hook File Map\n\n| Provider | Hook File |\n|----------|-----------|\n| Claude Code | `AIWG.md` |\n| Warp Terminal | `AIWG-warp.md` |\n| Windsurf | `AIWG-windsurf.md` |\n| GitHub Copilot | `AIWG-copilot.md` |\n| Cursor | `AIWG-cursor.md` |\n| Factory AI | `AIWG-factory.md` |\n| OpenCode | `AIWG-opencode.md` |\n| Codex | `AIWG-codex.md` |\n\n### Hermes is intentionally excluded (#1242)\n\nHermes loads context files **in full on every conversation turn** and the integration explicitly targets a ≤1,000-character routing-guidance budget (see `docs\u002Fintegrations\u002Fhermes-quickstart.md` Part 7). A sections-assembled `AIWG-hermes.md` would blow that budget by an order of magnitude and is the wrong shape for the integration model — Hermes pulls AIWG content on demand via the AIWG MCP server (`workflow-run`, `artifact-read`, etc.), not via inline context loading.\n\nIf a user asks why Hermes is missing from the table above, point them at:\n\n- `docs\u002Fintegrations\u002Fhermes-quickstart.md` for the MCP integration setup.\n- The auto-generated thin `.hermes.md` twin file at project root (#1239 \u002F #1242), which carries Hermes-MCP-correct guidance pointing at `artifact-read` and `aiwg discover`\u002F`aiwg show` rather than at an inlined link-index.\n\nDo not add a Hermes entry to the regeneration loop. The omission is the design.\n\n## Workflow\n\n### Step 1: Load Installed Registry\n\nRead `.aiwg\u002Fframeworks\u002Fregistry.json` to determine which frameworks are installed:\n\n```json\n{\n  \"installed\": [\n    { \"id\": \"sdlc-complete\", \"version\": \"2.1.0\" },\n    { \"id\": \"aiwg-utils\", \"version\": \"1.5.0\" }\n  ]\n}\n```\n\nIf registry does not exist, fall back to scanning for known framework directories.\n\n### Step 2: Collect Context Fragments\n\nFor each installed framework, read its `contextContributions` from `manifest.json`:\n\n```json\n{\n  \"contextContributions\": {\n    \"hookFragment\": \"agentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Ftemplates\u002Fproject\u002FAIWG-sdlc-fragment.md\",\n    \"sectionsDir\": \"templates\u002Faiwg-sections\",\n    \"sectionsManifest\": \"agentic\u002Fcode\u002Fframeworks\u002Fsdlc-complete\u002Ftemplates\u002Faiwg-sections\u002Fmanifest.json\",\n    \"priority\": 10\n  }\n}\n```\n\n**If `sectionsManifest` is present** (preferred — sections-based assembly):\n\n1. Read `{AIWG_ROOT}\u002F{framework_path}\u002F{sectionsManifest}`\n2. For each section entry in manifest order:\n   - Load `{AIWG_ROOT}\u002F{framework_path}\u002F{sectionsDir}\u002F{section.file}`\n   - Append to fragment buffer, followed by a blank line\n3. Write assembled buffer to `{hookFragment}` (keeps the pre-assembled copy current)\n\n**If only `hookFragment` is present** (legacy — single-file fragment):\n\nLoad the fragment file directly at `{AIWG_ROOT}\u002F{framework_path}\u002F{hookFragment}`.\n\n**The sections-based approach is preferred** — it allows individual sections to be updated without touching the assembled file, and prevents agents from accidentally editing the whole AIWG.md content as a monolith.\n\n**Always include** (regardless of installed frameworks):\n- AIWG CLI core reference (always)\n- RULES-INDEX pointer (when any rules are deployed)\n- Hook management commands reference\n\n### Step 3: Assemble Hook File\n\nCombine fragments in priority order (lower number = higher priority):\n\n```\nPriority 1:  Header (generated comment + timestamp)\nPriority 5:  Core AIWG CLI reference (always)\nPriority 10: sdlc-complete fragment (if installed)\nPriority 20: media-marketing-kit fragment (if installed)\nPriority 30: forensics-complete fragment (if installed)\nPriority 40: research-complete fragment (if installed)\nPriority 50: rlm addon fragment (if installed)\nPriority 60: voice-framework fragment (if installed)\nPriority 90: RULES-INDEX pointer (if rules deployed)\nPriority 95: Hook management reference (always)\n```\n\n### Step 4: Write Hook File\n\nWrite the assembled content to the appropriate hook file for each target provider.\n\n**Header prepended to all generated hook files**:\n\n```markdown\n# AIWG Framework Context\n\u003C!-- Generated by aiwg hook-regenerate — do not edit manually -->\n\u003C!-- Frameworks: {list of installed frameworks} -->\n\u003C!-- Generated: {ISO timestamp} -->\n\u003C!-- Regenerate: aiwg hook-regenerate -->\n\u003C!-- Disable: aiwg hook-disable -->\n\n```\n\n### Step 5: Report\n\n**Standard output**:\n\n```\nRegenerating AIWG.md from installed manifests...\n  Installed: sdlc-complete v2.1.0, aiwg-utils v1.5.0\n  Including: orchestrator context, RULES-INDEX, 47 commands, 12 agents\n  Excluding: media-marketing-kit (not installed), rlm (not installed)\n\nWrote AIWG.md (312 lines)\nHook is enabled — changes take effect at next session start\n```\n\n**Verbose output**:\n\n```\nRegenerating AIWG.md...\n  Fragment: core-header (8 lines, priority 1)\n  Fragment: aiwg-cli-core (25 lines, priority 5)\n  Fragment: sdlc-complete\u002FAIWG-sdlc-fragment.md (270 lines, priority 10)\n  Fragment: rules-index-pointer (4 lines, priority 90)\n  Fragment: hook-management (5 lines, priority 95)\n  Total: 312 lines\n\nWrote AIWG.md\n```\n\n**Dry run output**:\n\n```\n[dry-run] Would write AIWG.md (312 lines)\n[dry-run] Content preview:\n---\n# AIWG Framework Context\n\u003C!-- Generated by aiwg hook-regenerate -->\n...\n---\nNo files written. Remove --dry-run to apply.\n```\n\n## Fallback: No Registry\n\nIf no registry and no framework directories found, generate a minimal hook file containing only the core AIWG CLI reference and hook management section. Warn the user:\n\n```\nWarning: No installed frameworks detected.\nGenerating minimal AIWG.md with core CLI reference only.\nRun `aiwg use sdlc` to deploy the SDLC framework.\n```\n\n## When to Run\n\n- After `aiwg use \u003Cframework>` installs a new framework\n- After `aiwg remove \u003Cframework>` uninstalls a framework\n- After upgrading AIWG to a new version\n- When you want to refresh the hook file without full redeployment\n- After modifying AIWG configuration\n\n## Examples\n\n```bash\n# Regenerate all hook files\n\u002Fhook-regenerate\n\n# Regenerate only Claude Code hook file\n\u002Fhook-regenerate --provider claude\n\n# Preview without writing\n\u002Fhook-regenerate --dry-run\n\n# Verbose output showing each fragment\n\u002Fhook-regenerate --verbose\n\n# Regenerate for all providers\n\u002Fhook-regenerate --all\n```\n\n## Related Commands\n\n- `\u002Fhook-enable` — Enable the hook after regenerating\n- `\u002Fhook-disable` — Disable the hook temporarily\n- `\u002Fhook-status` — Check current hook state\n\n## References\n\n- @.aiwg\u002Fplanning\u002Fhook-file-architecture.md — Architecture design\n- #439 — AIWG.md hook file architecture\n- #441 — This command's issue\n- #445 — Manifest-driven optimization (contextContributions contract)\n",{"name":5,"namespace":47,"platforms":48,"commandHint":50,"description":7},"aiwg",[49],"all",{"model":30,"category":51,"modelRole":39,"modelTier":27,"allowedTools":52,"argumentHint":53},"hook-management","Read, Write, Bash, Glob","[--provider \u003Cname>] [--all] [--dry-run] [--verbose]","main","a602706fc62ff1cfcb18001358ac39647b08acf5","agentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Fskills\u002Fhook-regenerate",36,"https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg","https:\u002F\u002Faiwg.io","https:\u002F\u002Fgithub.com\u002Fjmagly","https:\u002F\u002Fintegrolabs.io","ml\u002Fai, industrial automation, safety\u002Fsecurity, ssi\r\n\r\nmagly.net\r\nintegrolabs.io\r\naiwg.io\r\nfortemi.com\r\npagenary.com\r\nbytecask.com","2026-11-12 21:57:33",{"source":8,"skillName":5,"commands":65,"prompt":75,"zipAvailable":76},[66,69,72],{"tool":67,"command":68},"npx","npx skills add jmagly\u002Faiwg --skill hook-regenerate",{"tool":70,"command":71},"bunx","bunx skills add jmagly\u002Faiwg --skill hook-regenerate",{"tool":73,"command":74},"pnpm","pnpm dlx skills add jmagly\u002Faiwg --skill hook-regenerate","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Faddons\u002Faiwg-utils\u002Fskills\u002Fhook-regenerate\u002FSKILL.md",true,[],[79,105,128,134,141,155],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":86,"publishedAt":42},"01M70QA0BSYJ49EES9V4RE8QH1","host-hardening","Read-only system hardening baseline and plan-first host hardening recommendations for SSH, Docker bind addresses, firewall persistence, datastores, exporters and audit retention.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[85],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[87,88,89,38,90,91,92,93,94,95,40,96,97,98,99,100,101,102,103,104],"host","host hardening","hardening","re","recommendations","remediation","plan","port","verification","access","only","retention","audit","never","firewall","bind","secrets","request",{"skillNo":106,"name":107,"nameZh":6,"description":108,"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":115,"publishedAt":42},"01M70PNT2Z4HMZPRBTAF6073NN","exposure-analysis","Read-only firewall analysis and effective host exposure reconstruction for Docker published ports, UFW bypass, stale rules, CDN scope, IPv6 asymmetry and external probe allowlists.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fplugins\u002Fforensics\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[111,114],{"categoryNo":112,"categoryName":113,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000011","运维与部署",{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[116,117,118,38,119,94,120,121,40,122,87,123,97,124,125,100,101,126,127,37],"exposure analysis","analysis","unknown","credentials","collection","ufw","ports","internet","local","scope","reconstruction","operator",{"skillNo":129,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":130,"categories":131,"keywords":133,"publishedAt":42},"01M70P8QATMPKA78E4FT5D2TNA","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fsecurity-engineering\u002Fskills\u002Fhost-hardening\u002FSKILL.md",[132],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[89,87,88,96,38,104,92,91,99,93,94,95,40,103,97,98,90,100,101,102],{"skillNo":135,"name":107,"nameZh":6,"description":108,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":136,"categories":137,"keywords":140,"publishedAt":42},"01M70NMPVJ5H0JH131P60FW4R8","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Fagentic\u002Fcode\u002Fframeworks\u002Fforensics-complete\u002Fskills\u002Fexposure-analysis\u002FSKILL.md",[138,139],{"categoryNo":112,"categoryName":113,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[117,116,100,119,94,120,40,118,87,123,97,124,125,38,101,122,121,126,127,37],{"skillNo":142,"name":143,"nameZh":6,"description":144,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":145,"categories":146,"keywords":148,"publishedAt":42},"01M6CB4DDR0B4NNCFK7ZK7449H","fixture-skill","Exercise rule delivery.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Frule-delivery\u002Fskills\u002Ffixture-skill\u002FSKILL.md",[147],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[149,150,151,152,153,154],"fixture skill","fixture","rule","delivery","true","exercise",{"skillNo":156,"name":157,"nameZh":6,"description":158,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":159,"categories":160,"keywords":162,"publishedAt":42},"01M6CB4AVK1W76MFMPP0JP32CJ","pi-local","Pi-local duplicate-precedence fixture.","https:\u002F\u002Fgithub.com\u002Fjmagly\u002Faiwg\u002Fblob\u002Fmain\u002Ftest\u002Ffixtures\u002Fproviders\u002Fpi\u002Fproject\u002F.pi\u002Fskills\u002Fpi-local\u002FSKILL.md",[161],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[163,164,124,165,150],"pi","pi local","duplicate"]