[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M7AA0N2PDFKKDBBHJVGDWAH5":3,"skill-same:01M7AA0N2PDFKKDBBHJVGDWAH5":67},{"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":19,"linkOnly":20,"markdownContent":21,"markdownBody":22,"frontMatter":23,"refName":24,"commitSha":25,"skillDirectory":26,"forksCount":14,"repositoryHtmlUrl":27,"repositoryHomepageUrl":28,"ownerHtmlUrl":29,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":30,"install":31,"resources":44},"01M7AA0N2PDFKKDBBHJVGDWAH5","shipit",null,"Release builds with the shipit CLI. Use when releasing or promoting a build to staging or prod, checking a release manifest, or rolling back a shipit deployment.","StartupBros-com\u002Fskill-tuner","StartupBros-com","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F262958016?v=4","01M77WY8AH50FY939DTGZYHVE9","StartupBros.com","01M7A9SNDJZ1YQYFJBPV6RQA85",0,"MIT","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002FSKILL.md",[],[],"2026-11-15 14:19:17",false,"---\nname: shipit\ndescription: Release builds with the shipit CLI. Use when releasing or promoting a build to staging or prod, checking a release manifest, or rolling back a shipit deployment.\n---\n\n# shipit\n\nshipit publishes the current build to a target and keeps the previous release on each target so it can be rolled back. This skill covers the day-to-day commands; the full option list is at the end.\n\n## Before you start\n\nVersions follow semantic versioning: a version number has the form MAJOR.MINOR.PATCH, where you increment MAJOR when you make incompatible API changes, MINOR when you add functionality in a backwards-compatible manner, and PATCH when you make backwards-compatible bug fixes. shipit reads the version from `shipit.yaml` in the current directory.\n\nA dry run prints the plan without publishing anything.\n\n## Releasing\n\n1. Run `shipit check` before every `shipit release`.\n2. Release to staging first, then to prod: `shipit release --env staging`, then `shipit release --env prod`.\n3. Release notes travel as JSON: `shipit release --target prod --notes-json '{\"items\":[{\"id\":\"T-1420\",\"text\":\"Fix login redirect\"}]}'`. The shape is exactly `{\"items\":[{\"id\":..., \"text\":...}]}`; a bare array, a `notes` key, or extra keys inside an item are rejected.\n\n## Checking\n\n`shipit check` validates the manifest. It exits 0 when the manifest is missing and prints `no manifest` on stderr; treat that line as a failure, not a pass.\n\nUse a dry run whenever the target is prod.\n\n## Rules\n\n- Always run `shipit check` before `shipit release`; never skip it.\n- `shipit purge` deletes a release's artifacts from the remote store and cannot be undone. Run it only when the human names the release to purge, and pass `--yes` only after they confirm.\n- Read each command's output before deciding the next command.\n\n## Rollback\n\nIf a release fails:\n\n1. Run `shipit info` to see the active release on each target.\n2. Note the previous release id in the PREVIOUS column.\n3. Run `shipit rollback --target \u003Ctarget>`.\n4. Run `shipit info` again and confirm the previous id is now active.\n5. Run `shipit check` to confirm the manifest still validates.\n6. Tell the human which release is now active and which was rolled back.\n7. If the rollback itself fails, run it again with `--retries 5`.\n8. File the failed release id in the notes of the next release.\n\n## History\n\nIn March 2026 a release went to prod with a manifest that failed validation, and the outage lasted forty minutes because nobody had run the check. The rule above comes from that incident. Earlier, in January, the team moved from a Makefile to shipit, which is why some older docs still mention `make deploy`.\n\n## Options\n\n```\nGlobal options:\n  --verbose             Print each step as it runs\n  --quiet               Print only errors\n  --no-color            Disable colored output\n  --timeout \u003Cseconds>   Give up on a remote call after this long (default 60)\n  --retries \u003Cn>         Retry failed remote calls this many times (default 2)\n```\n\nDry runs ignore `--retries`.\n","# shipit\n\nshipit publishes the current build to a target and keeps the previous release on each target so it can be rolled back. This skill covers the day-to-day commands; the full option list is at the end.\n\n## Before you start\n\nVersions follow semantic versioning: a version number has the form MAJOR.MINOR.PATCH, where you increment MAJOR when you make incompatible API changes, MINOR when you add functionality in a backwards-compatible manner, and PATCH when you make backwards-compatible bug fixes. shipit reads the version from `shipit.yaml` in the current directory.\n\nA dry run prints the plan without publishing anything.\n\n## Releasing\n\n1. Run `shipit check` before every `shipit release`.\n2. Release to staging first, then to prod: `shipit release --env staging`, then `shipit release --env prod`.\n3. Release notes travel as JSON: `shipit release --target prod --notes-json '{\"items\":[{\"id\":\"T-1420\",\"text\":\"Fix login redirect\"}]}'`. The shape is exactly `{\"items\":[{\"id\":..., \"text\":...}]}`; a bare array, a `notes` key, or extra keys inside an item are rejected.\n\n## Checking\n\n`shipit check` validates the manifest. It exits 0 when the manifest is missing and prints `no manifest` on stderr; treat that line as a failure, not a pass.\n\nUse a dry run whenever the target is prod.\n\n## Rules\n\n- Always run `shipit check` before `shipit release`; never skip it.\n- `shipit purge` deletes a release's artifacts from the remote store and cannot be undone. Run it only when the human names the release to purge, and pass `--yes` only after they confirm.\n- Read each command's output before deciding the next command.\n\n## Rollback\n\nIf a release fails:\n\n1. Run `shipit info` to see the active release on each target.\n2. Note the previous release id in the PREVIOUS column.\n3. Run `shipit rollback --target \u003Ctarget>`.\n4. Run `shipit info` again and confirm the previous id is now active.\n5. Run `shipit check` to confirm the manifest still validates.\n6. Tell the human which release is now active and which was rolled back.\n7. If the rollback itself fails, run it again with `--retries 5`.\n8. File the failed release id in the notes of the next release.\n\n## History\n\nIn March 2026 a release went to prod with a manifest that failed validation, and the outage lasted forty minutes because nobody had run the check. The rule above comes from that incident. Earlier, in January, the team moved from a Makefile to shipit, which is why some older docs still mention `make deploy`.\n\n## Options\n\n```\nGlobal options:\n  --verbose             Print each step as it runs\n  --quiet               Print only errors\n  --no-color            Disable colored output\n  --timeout \u003Cseconds>   Give up on a remote call after this long (default 60)\n  --retries \u003Cn>         Retry failed remote calls this many times (default 2)\n```\n\nDry runs ignore `--retries`.\n",{"name":5,"description":7},"main","cef05d1097f6e747e5c18bd5e7f3d6dba1f3d952","experiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fhov-stack\u002Ftree\u002Fmain\u002Fplugins\u002Fskill-tuner","https:\u002F\u002Fgithub.com\u002FStartupBros-com","2026-11-02 17:58:56",{"source":8,"skillName":5,"commands":32,"prompt":42,"zipAvailable":43},[33,36,39],{"tool":34,"command":35},"npx","npx skills add StartupBros-com\u002Fskill-tuner --skill shipit",{"tool":37,"command":38},"bunx","bunx skills add StartupBros-com\u002Fskill-tuner --skill shipit",{"tool":40,"command":41},"pnpm","pnpm dlx skills add StartupBros-com\u002Fskill-tuner --skill shipit","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002FSKILL.md",true,[45,51,55,59,63],{"path":46,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":49,"sourceHtmlUrl":50},"grade.json","REFERENCE","参考文档",426,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002Fgrade.json",{"path":52,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":53,"sourceHtmlUrl":54},"init-skills.json",412,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002Finit-skills.json",{"path":56,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":57,"sourceHtmlUrl":58},"reply.txt",608,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002Freply.txt",{"path":60,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":61,"sourceHtmlUrl":62},"status.txt",51,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002Fstatus.txt",{"path":64,"resourceType":47,"resourceTypeDesc":48,"sizeBytes":65,"sourceHtmlUrl":66},"tools.txt",407,"https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Fskill-diet-arms-2026-10-29\u002Fresults\u002Fruns\u002Fre0-t3-1\u002Ftools.txt",[68,75,82,89,94,99],{"skillNo":69,"name":70,"nameZh":6,"description":71,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":72,"categories":73,"keywords":74,"publishedAt":19},"01M7AA3WSSMWKNAWDHSD5VMVQZ","tune","Find and fix real defects in a skill, AGENTS.md, or CLAUDE.md, then prove the description still routes. Runs the bundled token-spending runner, so it starts only on the human's explicit instruction.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fskills\u002Ftune\u002FSKILL.md",[],[],{"skillNo":76,"name":77,"nameZh":6,"description":78,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":79,"categories":80,"keywords":81,"publishedAt":19},"01M7AA3T3WEM4JV9F1YM7SXWXK","skill-tuner","Evidence-tagged rules for writing documents agents consume. Use when creating, editing, or shortening skills, AGENTS.md, or CLAUDE.md.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fskills\u002Fskill-tuner\u002FSKILL.md",[],[],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":19},"01M7AA3PXA6T3T6CC0S7P6RH5P","portfolio","Inventory every skill the agent is shown, with its per-turn listing cost, usage count and visibility knob, then decide one skill at a time whether the model should start it on its own. Reads files only; starts on the human's explicit instruction.","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fskills\u002Fportfolio\u002FSKILL.md",[],[],{"skillNo":90,"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":91,"categories":92,"keywords":93,"publishedAt":19},"01M7AA3MG60GEBYXM4N2EK2H43","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Ftrigger-improving-2026-10-29\u002Fresults\u002Fruns\u002Flive-imp-solo-imp-3\u002FSKILL.md",[],[],{"skillNo":95,"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":96,"categories":97,"keywords":98,"publishedAt":19},"01M7AA3GGJHVGJJ4RHRDMEXAWY","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Ftrigger-improving-2026-10-29\u002Fresults\u002Fruns\u002Flive-imp-solo-imp-2\u002FSKILL.md",[],[],{"skillNo":100,"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":101,"categories":102,"keywords":103,"publishedAt":19},"01M7AA3E53RC5PWWNC5265WS84","https:\u002F\u002Fgithub.com\u002FStartupBros-com\u002Fskill-tuner\u002Fblob\u002Fmain\u002Fexperiments\u002Ftrigger-improving-2026-10-29\u002Fresults\u002Fruns\u002Flive-imp-solo-imp-1\u002FSKILL.md",[],[]]