[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6DB60JZ0WC5Z6FTGHBDD5AP":3,"skill-same:01M6DB60JZ0WC5Z6FTGHBDD5AP":204},{"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":28,"publishedAt":49,"linkOnly":50,"markdownContent":51,"markdownBody":52,"frontMatter":53,"refName":54,"commitSha":55,"skillDirectory":56,"forksCount":14,"repositoryHtmlUrl":57,"repositoryHomepageUrl":6,"ownerHtmlUrl":58,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":59,"install":60,"resources":73},"01M6DB60JZ0WC5Z6FTGHBDD5AP","code-security",null,"Security guidelines for writing secure code. Use when writing code, reviewing code for vulnerabilities, or asked to 'check for SQL injection' or 'review security'. IMPORTANT: Always consult this when writing or reviewing code that handles user input, authentication, file operations, database queries, network requests, cryptography, or infra config - even if security is not mentioned.","Prekzursil\u002Fagent-skills-toolchain","Prekzursil","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F54636077?v=4","01M6DACZ1PCQHD99SCR1YXG28B","Andrei Mihai Visalon","01M6DACZ670WZF535V3WYYSS4Z",0,"MIT","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002FSKILL.md",[18,23],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":24,"categoryName":25,"taxonomyType":26,"taxonomyTypeDesc":27},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48],"code security","security","code","file","database queries","review security","infra","queries","use","operations","check","consult","writing","database","authentication","guidelines","secure","sql","config","review","2026-11-10 10:12:30",false,"---\nname: code-security\ndescription: \"Security guidelines for writing secure code. Use when writing code, reviewing code for vulnerabilities, or asked to 'check for SQL injection' or 'review security'. IMPORTANT: Always consult this when writing or reviewing code that handles user input, authentication, file operations, database queries, network requests, cryptography, or infra config - even if security is not mentioned.\"\n---\n\n# Code Security Guidelines\n\nComprehensive security rules for writing secure code across 15+ languages. Covers OWASP Top 10, infrastructure security, and coding best practices with 28 rule categories.\n\n## How to Use This Skill\n\n**Proactive mode** — When writing or reviewing code, automatically check for relevant vulnerabilities based on the language and patterns present. You don't need to wait for the user to ask about security.\n\n**Reactive mode** — When the user asks about security, use the categories below to find the relevant rule file, then read it for detailed vulnerable\u002Fsecure code examples.\n\n### Workflow\n1. Identify the language and what the code does (handles input? queries a DB? reads files?)\n2. Check the relevant rules below — focus on Critical and High impact first\n3. Read the specific rule file from `rules\u002F` for detailed code examples in that language\n4. Apply the secure patterns, or flag the vulnerable patterns if reviewing\n\n## Language-Specific Priority Rules\n\nWhen writing code in these languages, check these rules first:\n\n| Language | Priority Rules to Check |\n|----------|------------------------|\n| **Python** | SQL injection, command injection, path traversal, code injection, SSRF, insecure crypto |\n| **JavaScript\u002FTypeScript** | XSS, prototype pollution, code injection, insecure transport, CSRF |\n| **Java** | SQL injection, XXE, insecure deserialization, insecure crypto, SSRF |\n| **Go** | SQL injection, command injection, path traversal, insecure transport |\n| **C\u002FC++** | Memory safety, unsafe functions, command injection, path traversal |\n| **Ruby** | SQL injection, command injection, code injection, insecure deserialization |\n| **PHP** | SQL injection, XSS, command injection, code injection, path traversal |\n| **HCL\u002FYAML** | Terraform (AWS\u002FAzure\u002FGCP), Kubernetes, Docker, GitHub Actions |\n\n## Categories\n\n### Critical Impact\n- **SQL Injection** (`rules\u002Fsql-injection.md`) - Use parameterized queries, never concatenate user input\n- **Command Injection** (`rules\u002Fcommand-injection.md`) - Avoid shell commands with user input, use safe APIs\n- **XSS** (`rules\u002Fxss.md`) - Escape output, use framework protections\n- **XXE** (`rules\u002Fxxe.md`) - Disable external entities in XML parsers\n- **Path Traversal** (`rules\u002Fpath-traversal.md`) - Validate and sanitize file paths\n- **Insecure Deserialization** (`rules\u002Finsecure-deserialization.md`) - Never deserialize untrusted data\n- **Code Injection** (`rules\u002Fcode-injection.md`) - Never eval() user input\n- **Hardcoded Secrets** (`rules\u002Fsecrets.md`) - Use environment variables or secret managers\n- **Memory Safety** (`rules\u002Fmemory-safety.md`) - Prevent buffer overflows, use-after-free (C\u002FC++)\n\n### High Impact\n- **Insecure Crypto** (`rules\u002Finsecure-crypto.md`) - Use SHA-256+, AES-256, avoid MD5\u002FSHA1\u002FDES\n- **Insecure Transport** (`rules\u002Finsecure-transport.md`) - Use HTTPS, verify certificates\n- **SSRF** (`rules\u002Fssrf.md`) - Validate URLs, use allowlists\n- **JWT Issues** (`rules\u002Fauthentication-jwt.md`) - Always verify signatures\n- **CSRF** (`rules\u002Fcsrf.md`) - Use CSRF tokens on state-changing requests\n- **Prototype Pollution** (`rules\u002Fprototype-pollution.md`) - Validate object keys in JavaScript\n\n### Infrastructure\n- **Terraform AWS\u002FAzure\u002FGCP** (`rules\u002Fterraform-aws.md`, `rules\u002Fterraform-azure.md`, `rules\u002Fterraform-gcp.md`) - Encryption, least privilege, no public access\n- **Kubernetes** (`rules\u002Fkubernetes.md`) - No privileged containers, run as non-root\n- **Docker** (`rules\u002Fdocker.md`) - Don't run as root, pin image versions\n- **GitHub Actions** (`rules\u002Fgithub-actions.md`) - Avoid script injection, pin action versions\n\n### Medium\u002FLow Impact\n- **Regex DoS** (`rules\u002Fregex-dos.md`) - Avoid catastrophic backtracking\n- **Race Conditions** (`rules\u002Frace-condition.md`) - Use proper synchronization\n- **Correctness** (`rules\u002Fcorrectness.md`) - Avoid common logic bugs\n- **Best Practices** (`rules\u002Fbest-practice.md`) - General secure coding patterns\n\nSee `rules\u002F_sections.md` for the full index with CWE\u002FOWASP references.\n\n## Quick Reference\n\n| Vulnerability | Key Prevention |\n|--------------|----------------|\n| SQL Injection | Parameterized queries |\n| XSS | Output encoding |\n| Command Injection | Avoid shell, use APIs |\n| Path Traversal | Validate paths |\n| SSRF | URL allowlists |\n| Secrets | Environment variables |\n| Crypto | SHA-256, AES-256 |\n","# Code Security Guidelines\n\nComprehensive security rules for writing secure code across 15+ languages. Covers OWASP Top 10, infrastructure security, and coding best practices with 28 rule categories.\n\n## How to Use This Skill\n\n**Proactive mode** — When writing or reviewing code, automatically check for relevant vulnerabilities based on the language and patterns present. You don't need to wait for the user to ask about security.\n\n**Reactive mode** — When the user asks about security, use the categories below to find the relevant rule file, then read it for detailed vulnerable\u002Fsecure code examples.\n\n### Workflow\n1. Identify the language and what the code does (handles input? queries a DB? reads files?)\n2. Check the relevant rules below — focus on Critical and High impact first\n3. Read the specific rule file from `rules\u002F` for detailed code examples in that language\n4. Apply the secure patterns, or flag the vulnerable patterns if reviewing\n\n## Language-Specific Priority Rules\n\nWhen writing code in these languages, check these rules first:\n\n| Language | Priority Rules to Check |\n|----------|------------------------|\n| **Python** | SQL injection, command injection, path traversal, code injection, SSRF, insecure crypto |\n| **JavaScript\u002FTypeScript** | XSS, prototype pollution, code injection, insecure transport, CSRF |\n| **Java** | SQL injection, XXE, insecure deserialization, insecure crypto, SSRF |\n| **Go** | SQL injection, command injection, path traversal, insecure transport |\n| **C\u002FC++** | Memory safety, unsafe functions, command injection, path traversal |\n| **Ruby** | SQL injection, command injection, code injection, insecure deserialization |\n| **PHP** | SQL injection, XSS, command injection, code injection, path traversal |\n| **HCL\u002FYAML** | Terraform (AWS\u002FAzure\u002FGCP), Kubernetes, Docker, GitHub Actions |\n\n## Categories\n\n### Critical Impact\n- **SQL Injection** (`rules\u002Fsql-injection.md`) - Use parameterized queries, never concatenate user input\n- **Command Injection** (`rules\u002Fcommand-injection.md`) - Avoid shell commands with user input, use safe APIs\n- **XSS** (`rules\u002Fxss.md`) - Escape output, use framework protections\n- **XXE** (`rules\u002Fxxe.md`) - Disable external entities in XML parsers\n- **Path Traversal** (`rules\u002Fpath-traversal.md`) - Validate and sanitize file paths\n- **Insecure Deserialization** (`rules\u002Finsecure-deserialization.md`) - Never deserialize untrusted data\n- **Code Injection** (`rules\u002Fcode-injection.md`) - Never eval() user input\n- **Hardcoded Secrets** (`rules\u002Fsecrets.md`) - Use environment variables or secret managers\n- **Memory Safety** (`rules\u002Fmemory-safety.md`) - Prevent buffer overflows, use-after-free (C\u002FC++)\n\n### High Impact\n- **Insecure Crypto** (`rules\u002Finsecure-crypto.md`) - Use SHA-256+, AES-256, avoid MD5\u002FSHA1\u002FDES\n- **Insecure Transport** (`rules\u002Finsecure-transport.md`) - Use HTTPS, verify certificates\n- **SSRF** (`rules\u002Fssrf.md`) - Validate URLs, use allowlists\n- **JWT Issues** (`rules\u002Fauthentication-jwt.md`) - Always verify signatures\n- **CSRF** (`rules\u002Fcsrf.md`) - Use CSRF tokens on state-changing requests\n- **Prototype Pollution** (`rules\u002Fprototype-pollution.md`) - Validate object keys in JavaScript\n\n### Infrastructure\n- **Terraform AWS\u002FAzure\u002FGCP** (`rules\u002Fterraform-aws.md`, `rules\u002Fterraform-azure.md`, `rules\u002Fterraform-gcp.md`) - Encryption, least privilege, no public access\n- **Kubernetes** (`rules\u002Fkubernetes.md`) - No privileged containers, run as non-root\n- **Docker** (`rules\u002Fdocker.md`) - Don't run as root, pin image versions\n- **GitHub Actions** (`rules\u002Fgithub-actions.md`) - Avoid script injection, pin action versions\n\n### Medium\u002FLow Impact\n- **Regex DoS** (`rules\u002Fregex-dos.md`) - Avoid catastrophic backtracking\n- **Race Conditions** (`rules\u002Frace-condition.md`) - Use proper synchronization\n- **Correctness** (`rules\u002Fcorrectness.md`) - Avoid common logic bugs\n- **Best Practices** (`rules\u002Fbest-practice.md`) - General secure coding patterns\n\nSee `rules\u002F_sections.md` for the full index with CWE\u002FOWASP references.\n\n## Quick Reference\n\n| Vulnerability | Key Prevention |\n|--------------|----------------|\n| SQL Injection | Parameterized queries |\n| XSS | Output encoding |\n| Command Injection | Avoid shell, use APIs |\n| Path Traversal | Validate paths |\n| SSRF | URL allowlists |\n| Secrets | Environment variables |\n| Crypto | SHA-256, AES-256 |\n",{"name":5,"description":7},"main","a298c929b6cbd662e1fce54302ce520d5ceea1a5",".agents\u002Fskills\u002Fcode-security","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain","https:\u002F\u002Fgithub.com\u002FPrekzursil","2026-11-02 14:30:57",{"source":8,"skillName":5,"commands":61,"prompt":71,"zipAvailable":72},[62,65,68],{"tool":63,"command":64},"npx","npx skills add Prekzursil\u002Fagent-skills-toolchain --skill code-security",{"tool":66,"command":67},"bunx","bunx skills add Prekzursil\u002Fagent-skills-toolchain --skill code-security",{"tool":69,"command":70},"pnpm","pnpm dlx skills add Prekzursil\u002Fagent-skills-toolchain --skill code-security","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002FSKILL.md",true,[74,80,84,88,92,96,100,104,108,112,116,120,124,128,132,136,140,144,148,152,156,160,164,168,172,176,180,184,188,192,196,200],{"path":75,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":78,"sourceHtmlUrl":79},"AGENTS.md","REFERENCE","参考文档",112277,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002FAGENTS.md",{"path":81,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":82,"sourceHtmlUrl":83},"README.md",2744,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002FREADME.md",{"path":85,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":86,"sourceHtmlUrl":87},"rules\u002F_sections.md",7106,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002F_sections.md",{"path":89,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":90,"sourceHtmlUrl":91},"rules\u002F_template.md",635,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002F_template.md",{"path":93,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":94,"sourceHtmlUrl":95},"rules\u002Fauthentication-jwt.md",3012,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fauthentication-jwt.md",{"path":97,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":98,"sourceHtmlUrl":99},"rules\u002Fbest-practice.md",3169,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fbest-practice.md",{"path":101,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":102,"sourceHtmlUrl":103},"rules\u002Fcode-injection.md",3788,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fcode-injection.md",{"path":105,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":106,"sourceHtmlUrl":107},"rules\u002Fcommand-injection.md",3453,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fcommand-injection.md",{"path":109,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":110,"sourceHtmlUrl":111},"rules\u002Fcorrectness.md",3267,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fcorrectness.md",{"path":113,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":114,"sourceHtmlUrl":115},"rules\u002Fcsrf.md",3922,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fcsrf.md",{"path":117,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":118,"sourceHtmlUrl":119},"rules\u002Fdocker.md",2753,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fdocker.md",{"path":121,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":122,"sourceHtmlUrl":123},"rules\u002Fgithub-actions.md",5407,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fgithub-actions.md",{"path":125,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":126,"sourceHtmlUrl":127},"rules\u002Finsecure-crypto.md",4160,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Finsecure-crypto.md",{"path":129,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":130,"sourceHtmlUrl":131},"rules\u002Finsecure-deserialization.md",6811,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Finsecure-deserialization.md",{"path":133,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":134,"sourceHtmlUrl":135},"rules\u002Finsecure-transport.md",5399,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Finsecure-transport.md",{"path":137,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":138,"sourceHtmlUrl":139},"rules\u002Fkubernetes.md",4511,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fkubernetes.md",{"path":141,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":142,"sourceHtmlUrl":143},"rules\u002Fmaintainability.md",1823,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fmaintainability.md",{"path":145,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":146,"sourceHtmlUrl":147},"rules\u002Fmemory-safety.md",3186,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fmemory-safety.md",{"path":149,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":150,"sourceHtmlUrl":151},"rules\u002Fpath-traversal.md",5576,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fpath-traversal.md",{"path":153,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":154,"sourceHtmlUrl":155},"rules\u002Fperformance.md",3183,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fperformance.md",{"path":157,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":158,"sourceHtmlUrl":159},"rules\u002Fprototype-pollution.md",2684,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fprototype-pollution.md",{"path":161,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":162,"sourceHtmlUrl":163},"rules\u002Frace-condition.md",7137,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Frace-condition.md",{"path":165,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":166,"sourceHtmlUrl":167},"rules\u002Fregex-dos.md",3795,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fregex-dos.md",{"path":169,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":170,"sourceHtmlUrl":171},"rules\u002Fsecrets.md",4157,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fsecrets.md",{"path":173,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":174,"sourceHtmlUrl":175},"rules\u002Fsql-injection.md",5465,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fsql-injection.md",{"path":177,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":178,"sourceHtmlUrl":179},"rules\u002Fssrf.md",5076,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fssrf.md",{"path":181,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":182,"sourceHtmlUrl":183},"rules\u002Fterraform-aws.md",4396,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fterraform-aws.md",{"path":185,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":186,"sourceHtmlUrl":187},"rules\u002Fterraform-azure.md",10043,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fterraform-azure.md",{"path":189,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":190,"sourceHtmlUrl":191},"rules\u002Fterraform-gcp.md",8716,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fterraform-gcp.md",{"path":193,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":194,"sourceHtmlUrl":195},"rules\u002Funsafe-functions.md",4974,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Funsafe-functions.md",{"path":197,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":198,"sourceHtmlUrl":199},"rules\u002Fxss.md",5319,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fxss.md",{"path":201,"resourceType":76,"resourceTypeDesc":77,"sizeBytes":202,"sourceHtmlUrl":203},"rules\u002Fxxe.md",4571,"https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002F.agents\u002Fskills\u002Fcode-security\u002Frules\u002Fxxe.md",[205,225,254,279,293,309],{"skillNo":206,"name":207,"nameZh":6,"description":208,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":209,"categories":210,"keywords":211,"publishedAt":49},"01M6DF7D7478R55P46REYH4QAC","clarify-requirements","Resolve genuine pre-execution ambiguity by scanning repo context, generating 1-6 grounded options, and asking 1-3 focused questions via AskUserQuestion. NOT for mid-task use (injection risk); NOT when the goal is already unambiguous; use to disambiguate vague prompts before any file edits.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fworkspace-hooks\u002Fskills\u002Fclarify-requirements\u002FSKILL.md",[],[212,213,214,215,216,217,218,219,220,37,221,222,223,224,32],"clarify requirements","clarify","requirements","risk","options","task","prompts","goal","scanning","context","repo","injection","execution",{"skillNo":226,"name":227,"nameZh":6,"description":228,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":229,"categories":230,"keywords":234,"publishedAt":49},"01M6DF79CA4BHJS66J8EZDBPWJ","openmm-md","Run FREE, open-source, Windows-native GPU molecular dynamics via the openmm-md MCP (OpenMM + CUDA on the local NVIDIA GPU). Use for protein \u002F protein-ligand MD when you want a free stack or are on Windows without a Schrodinger license. Covers the full workflow (prepare, solvate, minimize, equilibrate, production, analyze, mmgbsa) AND an honest decision guide vs Schrodinger Desmond, including how to run Desmond legitimately on Linux or a cloud GPU with a real license. This is a deliberately LESSER free alternative and does NOT replace the schrodinger MCP tools. Do NOT use it to pick a free tool when a validated FEP+, WaterMap, IFD-MD, or Prime MM-GBSA result is actually required.","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Fmcp\u002Fopenmm-md-mcp\u002Fskill\u002Fopenmm-md\u002FSKILL.md",[231],{"categoryNo":232,"categoryName":233,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",[235,236,237,238,239,240,241,242,243,244,245,246,247,248,37,249,250,251,252,253],"openmm md","how","decision","pick","linux","analyze","tool","stack","open","NVIDIA","gpu","license","workflow","windows","free","molecular dynamics","local","do","MCP",{"skillNo":255,"name":256,"nameZh":6,"description":257,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":258,"categories":259,"keywords":266,"publishedAt":49},"01M6DF76C1MG85VEWP8VZCBNMN","visual-review","Take screenshots of web pages and UI using Playwright for visual review and iteration","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fvisual-review\u002FSKILL.md",[260,263],{"categoryNo":261,"categoryName":262,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000003","演示文稿",{"categoryNo":264,"categoryName":265,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量",[48,267,268,269,270,271,272,273,39,274,236,275,276,277,278],"visual","visual review","pages","web","false","iteration","take","slides","ui","screenshot","playwright","screenshots",{"skillNo":280,"name":281,"nameZh":6,"description":282,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":283,"categories":284,"keywords":285,"publishedAt":49},"01M6DF73AQVCBZKEN0YXEX9FXP","status","Diagnostic status report — shows metaswarm installation state, project setup, and potential issues","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstatus\u002FSKILL.md",[],[281,286,287,288,289,290,291,292],"setup","report","project","installation","project setup","issues","state",{"skillNo":294,"name":295,"nameZh":6,"description":296,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":297,"categories":298,"keywords":300,"publishedAt":49},"01M6DF6X6C2XB0P6GX76P7TTYV","start","Use when starting work on any task, when the user mentions metaswarm, or when the user wants to begin tracked development work","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fstart\u002FSKILL.md",[299],{"categoryNo":232,"categoryName":233,"taxonomyType":21,"taxonomyTypeDesc":22},[295,301,217,302,303,304,37,305,306,307,308],"start issue","issue","ready","work on issue","user","work","work on","development",{"skillNo":310,"name":286,"nameZh":6,"description":311,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":312,"categories":313,"keywords":314,"publishedAt":49},"01M6DF6QMJ9AJKFKHHKRT005PQ","Interactive project setup — detects your project, configures metaswarm, writes project-local files","https:\u002F\u002Fgithub.com\u002FPrekzursil\u002Fagent-skills-toolchain\u002Fblob\u002Fmain\u002Ftools\u002Feditor\u002Fmetaswarm\u002Fskills\u002Fsetup\u002FSKILL.md",[],[286,288,251,315,290,316],"files","interactive"]