[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M69BTMVPSVQS4SSTD84PE2GA":3,"skill-same:01M69BTMVPSVQS4SSTD84PE2GA":60},{"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":30,"linkOnly":31,"markdownContent":32,"markdownBody":33,"frontMatter":34,"refName":36,"commitSha":37,"skillDirectory":38,"forksCount":39,"repositoryHtmlUrl":40,"repositoryHomepageUrl":41,"ownerHtmlUrl":42,"ownerBlogUrl":43,"ownerDescription":44,"updatedAt":45,"install":46,"resources":59},"01M69BTMVPSVQS4SSTD84PE2GA","rust-code-style",null,"Write idiomatic, well-structured Rust for Wassette — single-responsibility design, anyhow error handling, Arc\u002FMutex for shared state, and the required formatting and linting with cargo +nightly fmt, cargo clippy, and cargo machete. Use when adding or refactoring Rust code in this repository.","microsoft\u002Fwassette","microsoft","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F6154722?v=4","01M698VYDXZ6JW5WH3CRV650R8","Microsoft","01M69BT553NXFDG3N73C20P27P",977,"MIT","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Frust-code-style\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[24,25,26,27,28,29],"rust","code style","code","rust code style","design","error handling","2026-11-10 10:12:30",false,"---\nname: rust-code-style\ndescription: Write idiomatic, well-structured Rust for Wassette — single-responsibility design, anyhow error handling, Arc\u002FMutex for shared state, and the required formatting and linting with cargo +nightly fmt, cargo clippy, and cargo machete. Use when adding or refactoring Rust code in this repository.\nallowed-tools: Bash, Read, Write, Edit, Glob, Grep\n---\n\n# rust-code-style skill\n\nApply Wassette's Rust conventions when writing or refactoring `.rs` files.\n\n## Best practices\n\n- **Single responsibility**: each function and struct has one clear purpose.\n- **DRY**: extract shared logic into reusable functions or modules.\n- **Descriptive naming**: name functions, variables, and types for readability.\n- **Unit tests**: cover every public function and its edge cases.\n- **Keep it simple**: prefer straightforward solutions over clever complexity.\n- **Dependencies**: manage them carefully in `Cargo.toml`; avoid unnecessary\n  ones that bloat the project.\n- **Error handling**: use `anyhow` to add context and stack traces.\n- **Traits and generics**: use traits for shared behavior and generics for\n  reusable, type-safe, extensible APIs.\n- **Thread safety**: use stdlib primitives like `Arc` and `Mutex` for shared\n  state.\n- **Performance**: choose appropriate data types, e.g. `&str` over `String`\n  when possible.\n\n## Formatting and linting\n\nAlways run before committing:\n\n```bash\ncargo +nightly fmt          # Format (nightly toolchain required)\ncargo clippy --workspace    # Lint; resolve every warning\ncargo machete               # Check for unused dependencies\n```\n\nWrite code that passes `cargo clippy` without warnings.\n\n## Copyright headers\n\nEvery `.rs` file must start with the Microsoft copyright header. See the\n`copyright-headers` skill for the exact format and the automated script.\n","# rust-code-style skill\n\nApply Wassette's Rust conventions when writing or refactoring `.rs` files.\n\n## Best practices\n\n- **Single responsibility**: each function and struct has one clear purpose.\n- **DRY**: extract shared logic into reusable functions or modules.\n- **Descriptive naming**: name functions, variables, and types for readability.\n- **Unit tests**: cover every public function and its edge cases.\n- **Keep it simple**: prefer straightforward solutions over clever complexity.\n- **Dependencies**: manage them carefully in `Cargo.toml`; avoid unnecessary\n  ones that bloat the project.\n- **Error handling**: use `anyhow` to add context and stack traces.\n- **Traits and generics**: use traits for shared behavior and generics for\n  reusable, type-safe, extensible APIs.\n- **Thread safety**: use stdlib primitives like `Arc` and `Mutex` for shared\n  state.\n- **Performance**: choose appropriate data types, e.g. `&str` over `String`\n  when possible.\n\n## Formatting and linting\n\nAlways run before committing:\n\n```bash\ncargo +nightly fmt          # Format (nightly toolchain required)\ncargo clippy --workspace    # Lint; resolve every warning\ncargo machete               # Check for unused dependencies\n```\n\nWrite code that passes `cargo clippy` without warnings.\n\n## Copyright headers\n\nEvery `.rs` file must start with the Microsoft copyright header. See the\n`copyright-headers` skill for the exact format and the automated script.\n",{"name":5,"description":7,"allowed-tools":35},"Bash, Read, Write, Edit, Glob, Grep","main","ee84fd272e2cedebd800d8fcefc9dcd178aee832",".agents\u002Fskills\u002Frust-code-style",78,"https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette","https:\u002F\u002Fmicrosoft.github.io\u002Fwassette\u002F","https:\u002F\u002Fgithub.com\u002Fmicrosoft","https:\u002F\u002Fopensource.microsoft.com","Open source projects and samples from Microsoft","2026-11-03 09:16:45",{"source":8,"skillName":5,"commands":47,"prompt":57,"zipAvailable":58},[48,51,54],{"tool":49,"command":50},"npx","npx skills add microsoft\u002Fwassette --skill rust-code-style",{"tool":52,"command":53},"bunx","bunx skills add microsoft\u002Fwassette --skill rust-code-style",{"tool":55,"command":56},"pnpm","pnpm dlx skills add microsoft\u002Fwassette --skill rust-code-style","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Frust-code-style\u002FSKILL.md",true,[],[61,75,96,104,112],{"skillNo":62,"name":63,"nameZh":6,"description":64,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":65,"categories":66,"keywords":72,"publishedAt":30},"01M69BTJK89QHYK1VKMND8ACXT","pull-request","Write concise, focused pull request descriptions for Wassette — at most three sentences on the what and why, with an explicit note on any breaking public-API change and how users adapt. Use when opening or editing a Wassette pull request.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fpull-request\u002FSKILL.md",[67],{"categoryNo":68,"categoryName":69,"taxonomyType":70,"taxonomyTypeDesc":71},"01JBSEEDCAT000000000000007","代码审查","SCENARIO","使用场景",[73,74],"pull request","change",{"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":87,"publishedAt":30},"01M69BTFTMBK5TZCSSP0XPVGQA","mcp-inspector-testing","Validate Wassette changes end-to-end by running the MCP server with just and driving it with the MCP Inspector CLI over Streamable HTTP — listing tools, resources, and prompts, and calling tools. Use before committing server changes or when debugging tool exposure and behavior.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fmcp-inspector-testing\u002FSKILL.md",[81,84],{"categoryNo":82,"categoryName":83,"taxonomyType":70,"taxonomyTypeDesc":71},"01JBSEEDCAT000000000000008","测试与质量",{"categoryNo":85,"categoryName":86,"taxonomyType":70,"taxonomyTypeDesc":71},"01JBSEEDCAT000000000000023","Skill与智能体开发",[88,89,90,91,92,93,94,95],"mcp inspector testing","MCP","testing","debugging","http","validate","mcp server","cli",{"skillNo":97,"name":98,"nameZh":6,"description":99,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":100,"categories":101,"keywords":102,"publishedAt":30},"01M69BTDBWZWEH9S0CFF28B2RS","documentation","Build, serve, and write Wassette's mdBook documentation under docs\u002F — concise, code-first prose, the multi-version URL layout, and navigation in SUMMARY.md. Use when editing docs\u002F pages or previewing the documentation site.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fdocumentation\u002FSKILL.md",[],[98,26,103],"docs",{"skillNo":105,"name":106,"nameZh":6,"description":107,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":108,"categories":109,"keywords":110,"publishedAt":30},"01M69BTB1705N052CCK0AFPSXQ","copyright-headers","Ensure every Rust (.rs) file in Wassette starts with the required Microsoft copyright header, using the idempotent scripts\u002Fcopyright.sh helper. Use when adding new Rust files or when a copyright-header check fails.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcopyright-headers\u002FSKILL.md",[],[111,9,24],"copyright headers",{"skillNo":113,"name":114,"nameZh":6,"description":115,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":116,"categories":117,"keywords":119,"publishedAt":30},"01M69BT76MF6EGT2WKJ4ZA2DGF","build-and-test","Build the Wassette workspace and run its test suite with the just recipes — debug and release builds, example and test components, and the combined unit plus documentation tests. Use when compiling Wassette, building example components, or running and debugging tests.","https:\u002F\u002Fgithub.com\u002Fmicrosoft\u002Fwassette\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fbuild-and-test\u002FSKILL.md",[118],{"categoryNo":82,"categoryName":83,"taxonomyType":70,"taxonomyTypeDesc":71},[120,121,122,123,124,98,91,125],"build and test","test","debug","components","release","run"]