[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6P8Q35RTYNVEN0N1GZ6SSP9":3,"skill-same:01M6P8Q35RTYNVEN0N1GZ6SSP9":61},{"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":34,"linkOnly":35,"markdownContent":36,"markdownBody":37,"frontMatter":38,"refName":39,"commitSha":40,"skillDirectory":41,"forksCount":42,"repositoryHtmlUrl":43,"repositoryHomepageUrl":44,"ownerHtmlUrl":45,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":46,"install":47,"resources":60},"01M6P8Q35RTYNVEN0N1GZ6SSP9","js-ts-authoring",null,"Write or revise JavaScript and TypeScript source, including scripts, tests, and Svelte modules. Apply its documentation and Prettier practices.","chattocorp\u002Fchatto","chattocorp","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F261891647?v=4","01M6P8ECJF78VVQ1TJBW2JAWQ8","ChattoCorp GmbH","01M6P8ECPWHQVQBB8XNCRR70B9",2947,"AGPL-3.0","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fjs-ts-authoring\u002FSKILL.md",[],[19,20,21,22,23,24,25,26,27,28,29,30,31,32,33],"js","authoring","js ts authoring","typescript","javascript","documentation","write","modules","prettier","svelte","tests","revise","scripts","source","apply","2026-11-10 10:12:30",false,"---\nname: js-ts-authoring\ndescription: Write or revise JavaScript and TypeScript source, including scripts, tests, and Svelte modules. Apply its documentation and Prettier practices.\n---\n\n# JavaScript and TypeScript authoring\n\nRead the nearest `AGENTS.md` and follow the package's existing module, type, and test conventions. For Svelte components and modules, also use the repository's Svelte skills and checks.\n\n## Write code that explains its behavior\n\n- Keep modules focused. Give functions and values names that identify their role.\n- Model input and output types at API boundaries. Narrow `unknown` before use. Avoid `any`, broad type assertions, and hidden mutable state when a precise type or explicit parameter is practical.\n- Handle failure, cancellation, and cleanup at the owner of the operation. Make ordering and ownership clear when asynchronous work or subscriptions are involved.\n- Give each nontrivial module a short comment that states its responsibility. Include lifetime or important constraints when they affect correct use.\n- Document public functions, classes, types, and important fields with JSDoc or the package's established code documentation style. Explain the contract: what it does, significant inputs and outputs, errors, side effects, lifecycle, and invariants where relevant. Also document private helpers whose behavior is hard to infer.\n- Add inline comments where a reader needs context to follow a branch, transformation, ordering requirement, protocol rule, or non-obvious calculation. State what the code does and why that behavior is required. Keep comments next to the code they describe and update them when behavior changes. Do not add a comment to every line or repeat a descriptive name.\n\n## Format every source edit\n\nBefore finishing, run Prettier on every JavaScript or TypeScript source file you created or changed, including tests, scripts, and files produced by the agent. In the root pnpm workspace, pass the paths explicitly:\n\n```sh\nmise x -- pnpm format -- path\u002Fto\u002Ffile.ts path\u002Fto\u002Fother-file.mjs\nmise x -- pnpm format:check -- path\u002Fto\u002Ffile.ts path\u002Fto\u002Fother-file.mjs\n```\n\nFormat each changed Svelte file with the nearest package's Prettier configuration too. Do not hand-edit generated protobuf clients; change their source and regenerate them through the repository workflow. Run the relevant type, lint, and test checks after formatting. Report the checks that actually ran.\n","# JavaScript and TypeScript authoring\n\nRead the nearest `AGENTS.md` and follow the package's existing module, type, and test conventions. For Svelte components and modules, also use the repository's Svelte skills and checks.\n\n## Write code that explains its behavior\n\n- Keep modules focused. Give functions and values names that identify their role.\n- Model input and output types at API boundaries. Narrow `unknown` before use. Avoid `any`, broad type assertions, and hidden mutable state when a precise type or explicit parameter is practical.\n- Handle failure, cancellation, and cleanup at the owner of the operation. Make ordering and ownership clear when asynchronous work or subscriptions are involved.\n- Give each nontrivial module a short comment that states its responsibility. Include lifetime or important constraints when they affect correct use.\n- Document public functions, classes, types, and important fields with JSDoc or the package's established code documentation style. Explain the contract: what it does, significant inputs and outputs, errors, side effects, lifecycle, and invariants where relevant. Also document private helpers whose behavior is hard to infer.\n- Add inline comments where a reader needs context to follow a branch, transformation, ordering requirement, protocol rule, or non-obvious calculation. State what the code does and why that behavior is required. Keep comments next to the code they describe and update them when behavior changes. Do not add a comment to every line or repeat a descriptive name.\n\n## Format every source edit\n\nBefore finishing, run Prettier on every JavaScript or TypeScript source file you created or changed, including tests, scripts, and files produced by the agent. In the root pnpm workspace, pass the paths explicitly:\n\n```sh\nmise x -- pnpm format -- path\u002Fto\u002Ffile.ts path\u002Fto\u002Fother-file.mjs\nmise x -- pnpm format:check -- path\u002Fto\u002Ffile.ts path\u002Fto\u002Fother-file.mjs\n```\n\nFormat each changed Svelte file with the nearest package's Prettier configuration too. Do not hand-edit generated protobuf clients; change their source and regenerate them through the repository workflow. Run the relevant type, lint, and test checks after formatting. Report the checks that actually ran.\n",{"name":5,"description":7},"main","d3d21f4a4fb6c1315aa62df97a6cb6617680af95",".agents\u002Fskills\u002Fjs-ts-authoring",151,"https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto","https:\u002F\u002Fchatto.run","https:\u002F\u002Fgithub.com\u002Fchattocorp","2026-11-12 23:51:16",{"source":8,"skillName":5,"commands":48,"prompt":58,"zipAvailable":59},[49,52,55],{"tool":50,"command":51},"npx","npx skills add chattocorp\u002Fchatto --skill js-ts-authoring",{"tool":53,"command":54},"bunx","bunx skills add chattocorp\u002Fchatto --skill js-ts-authoring",{"tool":56,"command":57},"pnpm","pnpm dlx skills add chattocorp\u002Fchatto --skill js-ts-authoring","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fjs-ts-authoring\u002FSKILL.md",true,[],[62,83,102,116,139,164],{"skillNo":63,"name":64,"nameZh":6,"description":65,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":66,"categories":67,"keywords":78,"publishedAt":34},"01M6P8S7F1NYMKD9PW2RGZ0B2P","writing-tests","Instructions and hints for writing tests.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fwriting-tests\u002FSKILL.md",[68,73],{"categoryNo":69,"categoryName":70,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000018","写作与文案","SCENARIO","使用场景",{"categoryNo":74,"categoryName":75,"taxonomyType":76,"taxonomyTypeDesc":77},"01JBSEEDCAT000000000000036","内容创作者","PROFESSION","适用职业",[79,80,29,81,82],"writing","writing tests","instructions","for",{"skillNo":84,"name":85,"nameZh":6,"description":86,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":87,"categories":88,"keywords":92,"publishedAt":34},"01M6P8S131Q068WC04FS0YW3RR","update-project-dependencies","Update Chatto Go and frontend dependencies within their compatible version ranges, then run tests.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fupdate-project-dependencies\u002FSKILL.md",[89],{"categoryNo":90,"categoryName":91,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000009","前端开发",[93,94,95,96,97,98,99,100,101,29],"dependencies","update","project","update project dependencies","frontend","go","run tests","run","version",{"skillNo":103,"name":104,"nameZh":6,"description":105,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":106,"categories":107,"keywords":108,"publishedAt":34},"01M6P8RERB7E3KYD4PW98D94SR","svelte-docs","Look up official Svelte, SvelteKit, and Svelte CLI documentation.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsvelte-docs\u002FSKILL.md",[],[28,109,110,111,112,113,24,114,115],"svelte docs","docs","look","cli","official","sveltekit","up",{"skillNo":117,"name":118,"nameZh":6,"description":119,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":120,"categories":121,"keywords":122,"publishedAt":34},"01M6P8RA0PS8DFAR8GXMB1CBFN","svelte-core-bestpractices","Guidance on writing fast, robust, modern Svelte code. Load this skill whenever in a Svelte project and asked to write\u002Fedit or analyze a Svelte component or module. Covers reactivity, event handling, styling, integration with libraries and more.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsvelte-core-bestpractices\u002FSKILL.md",[],[28,123,124,125,126,127,95,128,129,130,25,131,132,133,134,135,136,137,79,138],"svelte core bestpractices","core","with","event","module","guidance","styling","edit","analyze","more","load","component","integration","code","libraries","fast",{"skillNo":140,"name":141,"nameZh":6,"description":142,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":143,"categories":144,"keywords":151,"publishedAt":34},"01M6P8R685PAMMR1DD530NGY40","svelte-code-writer","CLI tools for Svelte 5 documentation lookup and code analysis. MUST be used whenever creating, editing or analyzing any Svelte component (.svelte) or Svelte module (.svelte.ts\u002F.svelte.js). If possible, this skill should be executed within the svelte-file-editor agent for optimal results.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsvelte-code-writer\u002FSKILL.md",[145,148],{"categoryNo":146,"categoryName":147,"taxonomyType":71,"taxonomyTypeDesc":72},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":149,"categoryName":150,"taxonomyType":76,"taxonomyTypeDesc":77},"01JBSEEDCAT000000000000030","开发工程师",[136,152,28,153,134,154,112,24,155,82,156,127,157,158,19,159,160,161,162,163],"svelte code writer","writer","editor","svelte 5","code analysis","results","editing","documentation lookup","analysis","Tools","analyzing","file",{"skillNo":165,"name":166,"nameZh":6,"description":167,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":168,"categories":169,"keywords":170,"publishedAt":34},"01M6P8QN03VSSHF538WV0E701T","session-wrap-up","Review a completed, paused, or blocked coding-agent session to identify friction, mistakes, near misses, missing context, and opportunities to improve future work. Use when the user asks to wrap up, run a retrospective, explain what issues the agent faced, capture lessons learned, or recommend improvements to repository instructions, documentation, skills, tooling, tests, or workflows. Produce an evidence-based, propose-only report; do not apply follow-up changes unless the user asks.","https:\u002F\u002Fgithub.com\u002Fchattocorp\u002Fchatto\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fsession-wrap-up\u002FSKILL.md",[],[171,172,115,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,100,24,188,189],"wrap","session wrap","session","session wrap up","wrap up","Coding-Agent","agent session","when","recommend","near","follow-up","learned","only","work","improve","repository","issues","workflows","review"]