[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71KVSTRE9KPDFCS874G606W":3,"skill-same:01M71KVSTRE9KPDFCS874G606W":64},{"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":31,"linkOnly":32,"markdownContent":33,"markdownBody":34,"frontMatter":35,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":39,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":42,"ownerDescription":6,"updatedAt":43,"install":44,"resources":57},"01M71KVSTRE9KPDFCS874G606W","lcm-release",null,"Use when explicitly asked to cut or recover a manual LCM release. Not for ordinary version bumps or Changesets release-note\u002Fversion PR work.","donadiosolutions\u002Flcm","donadiosolutions","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F144397773?v=4","01M71KV7RZTX2KAPTB9NN513YW","Donadio Solutions","01M71KV7T4419Z0HTJQ3G3TYN2",4,"MIT","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Flcm-release\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30],"release","lcm release","work","changesets","pr","for","cut","manual","use","when","note","version","2026-11-10 10:56:23",false,"---\nname: lcm-release\ndescription: Use when explicitly asked to cut or recover a manual LCM release. Not for ordinary version bumps or Changesets release-note\u002Fversion PR work.\n---\n\n# Manual LCM release\n\n## Directives\n\nThe helper ends at a **draft GitHub release, not npm publication**. Changesets\nremains the normal release-note\u002Fversion PR flow. Read repository\u002Flocal rules first;\na maintainer reviews and publishes the draft manually. Only `release: published`\npublishes npm; a tag-triggered run must leave npm unpublished.\n\nNever delete, move or overwrite release tags. Signed annotated tags must identify\nthe exact release PR merge commit, not a later main HEAD. Existing local\u002Fremote tag\nobjects must match exactly and verify cryptographically; valid one-sided tags are\nrecovered by fetching or pushing, not recreating them.\n\n`package.json` is the version source; generated runtime\u002Fconnector resources have no\nindependent version. Version-only edits leave `pnpm-lock.yaml` unchanged and stage\nonly `package.json` and `CHANGELOG.md`; the release changelog block must exist.\nBuild\u002Fcheck with pnpm; npm retains packing (`npm pack --ignore-scripts`) and trusted\npublication. Stable releases update `latest` to the highest stable version;\nalpha and beta releases update their matching npm dist-tags. Changesets' internal\nchannel label on the open version PR preserves manual alpha\u002Fbeta\u002Fstable intent\nacross main pushes until that PR merges\u002Fcloses.\n\n## Preflight\n\nRequire merged feature PRs, authenticated `gh`, an available signing key\u002Fagent and\ntrusted local signature verification. Choose canonical `MAJOR.MINOR.PATCH`,\n`MAJOR.MINOR.PATCH-alpha.N`, or `MAJOR.MINOR.PATCH-beta.N` above the corresponding\nnpm dist-tag; other prereleases\nand build metadata are unsupported. The helper rejects stale\u002Fpublished versions\nbefore repository\u002Ftag mutation.\n\nUse the [verified pnpm bootstrap](..\u002F..\u002F..\u002Fdocs\u002Fdevelopment.md) and\n`pnpm install --frozen-lockfile`, not a global pnpm install. New unpublished tags\nmust contain `pnpm-lock.yaml`, `.npmrc`, `pnpm-workspace.yaml`, integrity-pinned\n`packageManager` and bootstrap script. npm-only historical tags cannot be rebuilt;\nalready-published versions use the publication workflow's verification-only recovery,\nnot this helper's unpublished-version path.\n\n## Procedure\n\nRun at repository root:\n\n```bash\nbash .agents\u002Fskills\u002Flcm-release\u002Fscripts\u002Frelease.sh 0.5.0-alpha.0\n# Resume only after verifying earlier steps really completed:\nbash .agents\u002Fskills\u002Flcm-release\u002Fscripts\u002Frelease.sh 0.5.0-alpha.0 --from-step 8\n```\n\n| Step | Operation |\n| --- | --- |\n| 0 | Verify clean tracked state; check out main and fast-forward from origin |\n| 1 | Reject existing release tag or published npm version |\n| 2 | Create `release\u002Fv\u003Cversion>` from main |\n| 3 | Update\u002Fverify package version and changelog |\n| 4 | Commit with signoff and push |\n| 5 | Open release PR targeting main |\n| 6 | Require successful CI; missing\u002Funqueryable checks are not a pass |\n| 7 | Revalidate exact-head checks, merge with expected-head guard and `--merge`, then confirm `MERGED` |\n| 8 | Create\u002Fverify signed annotated tag at exact merge SHA, push if absent, verify successful tag-triggered draft creation and npm still unpublished |\n\n`--from-step N` accepts 0–8. Resuming step 7 does not bypass admission. Step 8\nresolves the merged `release\u002Fv\u003Cversion>` PR; do not assume it discovers arbitrary\nChangesets\u002Fversion branch names. Review the resulting draft and publish manually.\n\n## Recovery\n\n| Failure | Action |\n| --- | --- |\n| Version taken; conflicting target\u002Fobject; lightweight\u002Funsigned\u002Fmisnamed tag | Stop and inspect; never overwrite public history; choose a higher version when taken |\n| Main diverged or merge SHA unreachable from origin\u002Fmain | Preserve work and reconcile\u002Fverify selected release PR before retrying |\n| CI absent\u002Ffailing, query failure or head drift | Resolve admission\u002Fevidence and resume step 6; do not skip to an unchecked merge |\n| `publish.yml` skipped or not successful | Inspect printed run URL, tag and draft before retrying step 8 |\n| Invalid `PUBLISH_MAX_WAIT` | Use integer seconds 0–9223372036854775807; default 900 bounds draft-run discovery |\n| Draft exists but npm already has the version | Stop and audit bypassed manual publication; do not retag |\n| Published release restored to draft | Fix failed\u002Fcancelled publication and manually publish the restored draft again; existing npm versions are verified without republishing |\n| npm verification timed out or retry hit E409 \"previously staged version\" | Re-run the recovery: a staged upload for the same version is not re-uploaded and is verified through the ~30-minute window |\n| Earlier failed public release blocks later release | Complete the earlier event successfully or withdraw it to draft before retrying |\n| Earlier failure for the same republished tag | Expected retry history; same-tag failure is ignored while native FIFO concurrency still serializes different release runs |\n\nGitHub publication is not transactional with npm: the release may briefly be public\nbefore failed preflight or last-moment guards restore it to draft.\n","# Manual LCM release\n\n## Directives\n\nThe helper ends at a **draft GitHub release, not npm publication**. Changesets\nremains the normal release-note\u002Fversion PR flow. Read repository\u002Flocal rules first;\na maintainer reviews and publishes the draft manually. Only `release: published`\npublishes npm; a tag-triggered run must leave npm unpublished.\n\nNever delete, move or overwrite release tags. Signed annotated tags must identify\nthe exact release PR merge commit, not a later main HEAD. Existing local\u002Fremote tag\nobjects must match exactly and verify cryptographically; valid one-sided tags are\nrecovered by fetching or pushing, not recreating them.\n\n`package.json` is the version source; generated runtime\u002Fconnector resources have no\nindependent version. Version-only edits leave `pnpm-lock.yaml` unchanged and stage\nonly `package.json` and `CHANGELOG.md`; the release changelog block must exist.\nBuild\u002Fcheck with pnpm; npm retains packing (`npm pack --ignore-scripts`) and trusted\npublication. Stable releases update `latest` to the highest stable version;\nalpha and beta releases update their matching npm dist-tags. Changesets' internal\nchannel label on the open version PR preserves manual alpha\u002Fbeta\u002Fstable intent\nacross main pushes until that PR merges\u002Fcloses.\n\n## Preflight\n\nRequire merged feature PRs, authenticated `gh`, an available signing key\u002Fagent and\ntrusted local signature verification. Choose canonical `MAJOR.MINOR.PATCH`,\n`MAJOR.MINOR.PATCH-alpha.N`, or `MAJOR.MINOR.PATCH-beta.N` above the corresponding\nnpm dist-tag; other prereleases\nand build metadata are unsupported. The helper rejects stale\u002Fpublished versions\nbefore repository\u002Ftag mutation.\n\nUse the [verified pnpm bootstrap](..\u002F..\u002F..\u002Fdocs\u002Fdevelopment.md) and\n`pnpm install --frozen-lockfile`, not a global pnpm install. New unpublished tags\nmust contain `pnpm-lock.yaml`, `.npmrc`, `pnpm-workspace.yaml`, integrity-pinned\n`packageManager` and bootstrap script. npm-only historical tags cannot be rebuilt;\nalready-published versions use the publication workflow's verification-only recovery,\nnot this helper's unpublished-version path.\n\n## Procedure\n\nRun at repository root:\n\n```bash\nbash .agents\u002Fskills\u002Flcm-release\u002Fscripts\u002Frelease.sh 0.5.0-alpha.0\n# Resume only after verifying earlier steps really completed:\nbash .agents\u002Fskills\u002Flcm-release\u002Fscripts\u002Frelease.sh 0.5.0-alpha.0 --from-step 8\n```\n\n| Step | Operation |\n| --- | --- |\n| 0 | Verify clean tracked state; check out main and fast-forward from origin |\n| 1 | Reject existing release tag or published npm version |\n| 2 | Create `release\u002Fv\u003Cversion>` from main |\n| 3 | Update\u002Fverify package version and changelog |\n| 4 | Commit with signoff and push |\n| 5 | Open release PR targeting main |\n| 6 | Require successful CI; missing\u002Funqueryable checks are not a pass |\n| 7 | Revalidate exact-head checks, merge with expected-head guard and `--merge`, then confirm `MERGED` |\n| 8 | Create\u002Fverify signed annotated tag at exact merge SHA, push if absent, verify successful tag-triggered draft creation and npm still unpublished |\n\n`--from-step N` accepts 0–8. Resuming step 7 does not bypass admission. Step 8\nresolves the merged `release\u002Fv\u003Cversion>` PR; do not assume it discovers arbitrary\nChangesets\u002Fversion branch names. Review the resulting draft and publish manually.\n\n## Recovery\n\n| Failure | Action |\n| --- | --- |\n| Version taken; conflicting target\u002Fobject; lightweight\u002Funsigned\u002Fmisnamed tag | Stop and inspect; never overwrite public history; choose a higher version when taken |\n| Main diverged or merge SHA unreachable from origin\u002Fmain | Preserve work and reconcile\u002Fverify selected release PR before retrying |\n| CI absent\u002Ffailing, query failure or head drift | Resolve admission\u002Fevidence and resume step 6; do not skip to an unchecked merge |\n| `publish.yml` skipped or not successful | Inspect printed run URL, tag and draft before retrying step 8 |\n| Invalid `PUBLISH_MAX_WAIT` | Use integer seconds 0–9223372036854775807; default 900 bounds draft-run discovery |\n| Draft exists but npm already has the version | Stop and audit bypassed manual publication; do not retag |\n| Published release restored to draft | Fix failed\u002Fcancelled publication and manually publish the restored draft again; existing npm versions are verified without republishing |\n| npm verification timed out or retry hit E409 \"previously staged version\" | Re-run the recovery: a staged upload for the same version is not re-uploaded and is verified through the ~30-minute window |\n| Earlier failed public release blocks later release | Complete the earlier event successfully or withdraw it to draft before retrying |\n| Earlier failure for the same republished tag | Expected retry history; same-tag failure is ignored while native FIFO concurrency still serializes different release runs |\n\nGitHub publication is not transactional with npm: the release may briefly be public\nbefore failed preflight or last-moment guards restore it to draft.\n",{"name":5,"description":7},"main","f436832f32da25160decef3252a945e0856fccf9",".agents\u002Fskills\u002Flcm-release",2,"https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions","https:\u002F\u002Fbcdonadio.com","2026-11-08 01:34:23",{"source":8,"skillName":5,"commands":45,"prompt":55,"zipAvailable":56},[46,49,52],{"tool":47,"command":48},"npx","npx skills add donadiosolutions\u002Flcm --skill lcm-release",{"tool":50,"command":51},"bunx","bunx skills add donadiosolutions\u002Flcm --skill lcm-release",{"tool":53,"command":54},"pnpm","pnpm dlx skills add donadiosolutions\u002Flcm --skill lcm-release","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Flcm-release\u002FSKILL.md",true,[58],{"path":59,"resourceType":60,"resourceTypeDesc":61,"sizeBytes":62,"sourceHtmlUrl":63},"scripts\u002Frelease.sh","SCRIPT","脚本",27154,"https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Flcm-release\u002Fscripts\u002Frelease.sh",[65,89,106,123,137],{"skillNo":66,"name":67,"nameZh":6,"description":68,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":69,"categories":70,"keywords":71,"publishedAt":31},"01M71KW4S5MP70Y3EZBV6VNRTZ","triage-security-issues","Use when asked to coordinate triage and remediation of a repository's Dependabot malware\u002Fvulnerability, GitHub Code Scanning, GitHub Secret Scanning, and Codex Security cloud alerts. Not for starting a new scan or merely authoring or reviewing skills.","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftriage-security-issues\u002FSKILL.md",[],[72,73,74,75,76,77,78,79,80,81,82,83,28,84,24,85,86,87,88,27],"issues","triage","security","triage security issues","alerts","codex","github","scanning","remediation","dependabot","vulnerability","code","coordinate","scan","github code","secret","new",{"skillNo":90,"name":91,"nameZh":6,"description":92,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":95,"publishedAt":31},"01M71KW14J9KP5VS0XEEW1YFKM","triage-fix-all-bugs","Use when asked to coordinate triage and remediation of all currently open native GitHub Bug issues in this repository. Not for a single issue or merely authoring or reviewing skills.","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Ftriage-fix-all-bugs\u002FSKILL.md",[],[73,96,97,98,80,99,100,78,28,27,101,102,72,24,84,103,104,105],"fix","bugs","triage fix all bugs","bug","native","single","open","repository","authoring","issue",{"skillNo":107,"name":108,"nameZh":6,"description":109,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":110,"categories":111,"keywords":112,"publishedAt":31},"01M71KVWVSNMYKBZWHS0DTP2XN","procedural-development","Use when executing or resuming a specified issue or bounded development inventory in a GitHub repository. Not for repository-wide Bug discovery, Epic assessment, or merely authoring or reviewing skills.","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fprocedural-development\u002FSKILL.md",[],[113,114,115,104,27,105,116,99,103,78,117,118,28,119,120,121,122,24],"procedural development","procedural","development","wide","resuming","EPIC","bounded","assessment","inventory","discovery",{"skillNo":124,"name":125,"nameZh":6,"description":126,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":127,"categories":128,"keywords":129,"publishedAt":31},"01M71KVPKACRW3S0EDSQEN699C","implement-epic","Use when asked to execute or resume an existing planned native GitHub Epic and its required deliverables in this repository. Not for inventing a roadmap, triaging all Bugs, or merely authoring or reviewing skills.","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fimplement-epic\u002FSKILL.md",[],[130,131,118,97,78,132,133,28,134,135,27,24,100,136,104,103],"implement epic","implement","deliverables","resume","roadmap","Existing","execute",{"skillNo":138,"name":139,"nameZh":6,"description":140,"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":31},"01M71KVMFBVCGBV5W00Z7NZV4Z","flock","Use when cooperating workers need exclusive ownership of a named resource on the same Linux host through an advisory flock mutex.","https:\u002F\u002Fgithub.com\u002Fdonadiosolutions\u002Flcm\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fflock\u002FSKILL.md",[],[139,144,145,28,146,27,147,148,149],"advisory","ownership","workers","host","mutex","linux"]