[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M78FAQG8KZ94GVMJYNFEYAV6":3,"skill-same:01M78FAQG8KZ94GVMJYNFEYAV6":50},{"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":17,"publishedAt":18,"linkOnly":19,"markdownContent":20,"markdownBody":21,"frontMatter":22,"refName":23,"commitSha":24,"skillDirectory":25,"forksCount":26,"repositoryHtmlUrl":27,"repositoryHomepageUrl":6,"ownerHtmlUrl":28,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":29,"install":30,"resources":43},"01M78FAQG8KZ94GVMJYNFEYAV6","repairing-hook-boundaries",null,"Repair Claude and Codex hook failures at their first failing boundary. Use when a hook fails, blocks, times out, or emits invalid output, including a registration, launcher, import path, payload, or exit status fault.","jl-cmd-projects\u002Fclaude-dev-env","jl-cmd-projects","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F338158757?v=4","01M78F4M55P4QY5YPN27XBQA9N","01M78F4M65AGEYC88NV6PW4715",7,"MIT","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fpackages\u002Fclaude-dev-env\u002F.agents\u002Fskills\u002Frepairing-hook-boundaries\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: repairing-hook-boundaries\ndescription: >-\n  Repair Claude and Codex hook failures at their first failing boundary. Use when a hook fails, blocks, times out, or emits invalid output, including a registration, launcher, import path, payload, or exit status fault.\n---\n\n# Repairing hook boundaries\n\n## Principle\n\nFind the first failing boundary and repair only that boundary. Treat source\nregistration, installed configuration, launcher and import path, payload,\noutput envelope, and exit status as separate boundaries.\n\n## Gotchas\n\n- A correct source entry does not prove the installed configuration matches it.\n- A valid launcher can receive an invalid payload or emit an invalid envelope.\n- State exact source, installed, and repository-root paths for each claim.\n- Get explicit approval before changing live configuration.\n- Run `\u002Fprivacy-hygiene` before durable output.\n- Reuse project validators. Do not copy their commands or implementation here.\n\n## When this applies\n\nUse this skill for Claude or Codex hook failures involving registered events,\nsettings, launchers, imports, paths, payloads, output envelopes, or exit status.\n\nFor installer-only work, say: `Installer work with no hook-boundary failure belongs outside this skill.`\n\n## Process\n\n1. When the session exposes a task tool, register the tasks in `reference\u002Ftask-seeds.md`.\n2. Record expected and observed behavior. Record exact source, installed, and repository-root paths.\n3. Check each boundary in order and identify the first mismatch.\n4. Repair only that boundary. Leave unrelated hooks and user settings unchanged.\n5. Recheck the boundary and its direct consumer with existing project validators.\n6. Get explicit approval before a live configuration change.\n7. Run `\u002Fprivacy-hygiene` before a durable report or publication.\n\n## Sub-skills\n\n| Skill | Use | Produces |\n| --- | --- | --- |\n| `\u002Fprivacy-hygiene` | Durable-output privacy review | Privacy result |\n\n## Files\n\n- `SKILL.md`. Boundary model and repair process.\n- `reference\u002Ftask-seeds.md`. Ordered tasks for one repair.\n\n```text\nrepairing-hook-boundaries\u002F\n├── SKILL.md\n└── reference\u002F\n    └── task-seeds.md\n```\n","# Repairing hook boundaries\n\n## Principle\n\nFind the first failing boundary and repair only that boundary. Treat source\nregistration, installed configuration, launcher and import path, payload,\noutput envelope, and exit status as separate boundaries.\n\n## Gotchas\n\n- A correct source entry does not prove the installed configuration matches it.\n- A valid launcher can receive an invalid payload or emit an invalid envelope.\n- State exact source, installed, and repository-root paths for each claim.\n- Get explicit approval before changing live configuration.\n- Run `\u002Fprivacy-hygiene` before durable output.\n- Reuse project validators. Do not copy their commands or implementation here.\n\n## When this applies\n\nUse this skill for Claude or Codex hook failures involving registered events,\nsettings, launchers, imports, paths, payloads, output envelopes, or exit status.\n\nFor installer-only work, say: `Installer work with no hook-boundary failure belongs outside this skill.`\n\n## Process\n\n1. When the session exposes a task tool, register the tasks in `reference\u002Ftask-seeds.md`.\n2. Record expected and observed behavior. Record exact source, installed, and repository-root paths.\n3. Check each boundary in order and identify the first mismatch.\n4. Repair only that boundary. Leave unrelated hooks and user settings unchanged.\n5. Recheck the boundary and its direct consumer with existing project validators.\n6. Get explicit approval before a live configuration change.\n7. Run `\u002Fprivacy-hygiene` before a durable report or publication.\n\n## Sub-skills\n\n| Skill | Use | Produces |\n| --- | --- | --- |\n| `\u002Fprivacy-hygiene` | Durable-output privacy review | Privacy result |\n\n## Files\n\n- `SKILL.md`. Boundary model and repair process.\n- `reference\u002Ftask-seeds.md`. Ordered tasks for one repair.\n\n```text\nrepairing-hook-boundaries\u002F\n├── SKILL.md\n└── reference\u002F\n    └── task-seeds.md\n```\n",{"name":5,"description":7},"main","974284b42eeb4609e94d4ebc1f6e36df400d54ca","packages\u002Fclaude-dev-env\u002F.agents\u002Fskills\u002Frepairing-hook-boundaries",1,"https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects","2026-11-15 05:02:47",{"source":8,"skillName":5,"commands":31,"prompt":41,"zipAvailable":42},[32,35,38],{"tool":33,"command":34},"npx","npx skills add jl-cmd-projects\u002Fclaude-dev-env --skill repairing-hook-boundaries",{"tool":36,"command":37},"bunx","bunx skills add jl-cmd-projects\u002Fclaude-dev-env --skill repairing-hook-boundaries",{"tool":39,"command":40},"pnpm","pnpm dlx skills add jl-cmd-projects\u002Fclaude-dev-env --skill repairing-hook-boundaries","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fpackages\u002Fclaude-dev-env\u002F.agents\u002Fskills\u002Frepairing-hook-boundaries\u002FSKILL.md",true,[44],{"path":45,"resourceType":46,"resourceTypeDesc":47,"sizeBytes":48,"sourceHtmlUrl":49},"reference\u002Ftask-seeds.md","REFERENCE","参考文档",305,"https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fpackages\u002Fclaude-dev-env\u002F.agents\u002Fskills\u002Frepairing-hook-boundaries\u002Freference\u002Ftask-seeds.md",[51,58,65,72,79,86],{"skillNo":52,"name":53,"nameZh":6,"description":54,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":55,"categories":56,"keywords":57,"publishedAt":18},"01M78FER7S09AE87MMJFT1E87E","update","Fast-forwards a local repository's main branch to a remote's main after confirming the repo path and source remote through AskUserQuestion. Use when the user says '\u002Fupdate', 'update main', 'fast-forward main', 'sync main from origin', 'pull latest main into \u003Cpath>', or 'bring main up to date'.","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Fupdate\u002FSKILL.md",[],[],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":64,"publishedAt":18},"01M78FENWZS01MB4PMGX6801X6","source-command-sr-loop","Converging cleanup loop: repeat \u002Fsimplify until clean, then repeat \u002Fcode-review --fix until clean","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Fsource-command-sr-loop\u002FSKILL.md",[],[],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":18},"01M78FEGZ7JDWEG3RM78M9Y8F8","skill-builder","Skill lifecycle: classify, scaffold, write via the skill-writer-agent, self-audit, compose sub-skills, polish description triggers, enforce deterministic scripts. Triggers: build a skill, new skill workflow, improve this skill, optimize skill description, skill development lifecycle, skill modularity, skill composition, description trigger catalog, deterministic skill scripts.","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Fskill-builder\u002FSKILL.md",[],[],{"skillNo":73,"name":74,"nameZh":6,"description":75,"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":78,"publishedAt":18},"01M78FEDEYHJYKTER9S566DMEZ","session-tidy","Audit, clean, and consolidate session logs in the Obsidian vault. Fixes format drift, resolves orphaned next-steps, updates stale statuses, and generates project rollup summaries. Use when session logs feel cluttered or before starting a new project milestone. Triggers on '\u002Fsession-tidy', 'tidy sessions', 'clean up session logs', 'session audit'.","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Fsession-tidy\u002FSKILL.md",[],[],{"skillNo":80,"name":81,"nameZh":6,"description":82,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":83,"categories":84,"keywords":85,"publishedAt":18},"01M78FE8QR789SKBF3A78N2T13","session-log","Logs a session report as an HTML page, tracks vault context, extracts decisions, and outputs a \u002Frename command. Use for \u002Fsession-log, 'journal this session', 'log this work', 'session report', 'summarize\u002Flog\u002Frecord this session', 'save session', 'capture session', or 'document what we did'.","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Fsession-log\u002FSKILL.md",[],[],{"skillNo":87,"name":88,"nameZh":6,"description":89,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":90,"categories":91,"keywords":92,"publishedAt":18},"01M78FE4JDJHKTJPWRWNQEX2HT","run-claude-dev-env","Build, install, run, and test the claude-dev-env installer. Use when asked to run claude-dev-env, install the Claude Code config into ~\u002F.claude, drive the installer, smoke-test it against a sandbox, or run its test suite.","https:\u002F\u002Fgithub.com\u002Fjl-cmd-projects\u002Fclaude-dev-env\u002Fblob\u002Fmain\u002Fskill-archive\u002Frun-claude-dev-env\u002FSKILL.md",[],[]]