[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6JWWHTS3VS7EQ92D2REC28M":3,"skill-same:01M6JWWHTS3VS7EQ92D2REC28M":194},{"skillNo":4,"name":5,"nameZh":6,"description":7,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":15,"categories":16,"keywords":22,"publishedAt":41,"linkOnly":42,"markdownContent":43,"markdownBody":44,"frontMatter":45,"refName":46,"commitSha":47,"skillDirectory":48,"forksCount":49,"repositoryHtmlUrl":50,"repositoryHomepageUrl":6,"ownerHtmlUrl":51,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":52,"install":53,"resources":66},"01M6JWWHTS3VS7EQ92D2REC28M","skillproof",null,"Verify whether a candidate coding-agent skill helps in a specific repository on a specific task slice with acceptable risk. Use when an agent needs to compare baseline versus skill-enabled runs, score repo compatibility, inspect instruction and script risk, and leave behind auditable verification artifacts in `.skillproof\u002F`.","gangj277\u002FSkillProof","gangj277","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F175916737?v=4","01M6JWVW2Q4XD3FWPCNTB22S9H","01M6JWVW707P3S54BXAJCZD9D4",1,"MIT","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发","SCENARIO","使用场景",[5,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40],"Coding-Agent","candidate","inspect","script","with","compare","agent skill","task","compatibility","artifacts","use","repo","coding","verify","baseline","risk","repository","verification","2026-11-10 10:12:30",false,"---\nname: skillproof\ndescription: Verify whether a candidate coding-agent skill helps in a specific repository on a specific task slice with acceptable risk. Use when an agent needs to compare baseline versus skill-enabled runs, score repo compatibility, inspect instruction and script risk, and leave behind auditable verification artifacts in `.skillproof\u002F`.\n---\n\n# SkillProof\n\nVerify a candidate coding-agent skill before adopting it.\n\nDefault invocation:\n\n> Use `$skillproof` to verify whether this candidate skill helps in this repo on these tasks with acceptable risk.\n\n## Inputs\n\nSkillProof expects four concrete inputs:\n\n1. a candidate skill path or local reference\n2. a target repository\n3. a task suite\n4. a verification config\n\nUse `.skillproof\u002Fverification.yaml` and `.skillproof\u002Ftasks.yaml` inside the target repo as the default contract.\n\n## Non-Negotiables\n\n1. Compare baseline and treatment fairly.\n2. Keep the same task slice, validators, and command envelope except for skill enablement.\n3. Prefer deterministic validation commands over judge-style scoring.\n4. Ground compatibility and risk claims in visible evidence.\n5. Use fresh temporary repo copies for execution so baseline and treatment start from the same source state.\n6. Leave auditable artifacts behind in `.skillproof\u002F`.\n7. Do not describe the skill as universally good or bad. State where it helps, where it hurts, and where confidence is limited.\n\n## Operating Sequence\n\n### 1. Parse the candidate skill\n\n- Read `SKILL.md`, metadata, scripts, and references as needed.\n- Summarize the skill's assumptions about language, framework, repo type, and task shape.\n\n### 2. Profile the target repo\n\n- Detect the repo's primary language and framework.\n- Infer major task surfaces such as frontend, backend, CLI, library, or infra.\n\n### 3. Normalize the verification inputs\n\n- Load `.skillproof\u002Fverification.yaml`.\n- Load `.skillproof\u002Ftasks.yaml`.\n- Reject ambiguous or missing deterministic validation commands in v1.\n\n### 4. Analyze risk\n\n- Score shell execution, remote fetching, bundled scripts, broad writes, env or secret access, hidden external references, self-escalation, and misleading claims.\n- Record evidence for every elevated signal.\n- Load [references\u002Frisk-model.md](references\u002Frisk-model.md) when classifying or explaining risk.\n\n### 5. Analyze compatibility\n\n- Compare skill assumptions to repo signals.\n- Produce matched signals, mismatched signals, and a recommendation.\n- Load [references\u002Fcompatibility-model.md](references\u002Fcompatibility-model.md) when the fit is ambiguous.\n\n### 6. Run baseline and treatment\n\n- Execute both conditions against fresh repo copies.\n- Keep task definitions and validators identical.\n- Preserve condition-level stdout, stderr, exit codes, validation results, and latency.\n\n### 7. Summarize utility\n\n- Measure pass-rate delta, failed-validation delta, regression count, latency overhead, and repeat stability.\n- Identify where treatment helps and where it regresses.\n\n### 8. Generate artifacts\n\n- Write the Markdown and JSON report.\n- Write machine-readable risk, compatibility, task-result, and run-manifest artifacts.\n- Follow [references\u002Fartifact-contract.md](references\u002Fartifact-contract.md) for file locations.\n\n## Anti-Patterns\n\n- Do not compare different task slices between baseline and treatment.\n- Do not use a different validator set for the two conditions.\n- Do not call a skill \"safe\" without showing which risk signals were checked.\n- Do not call a skill \"compatible\" without stating the matched and mismatched signals.\n- Do not reduce the report to one magical score with no explanation.\n- Do not let baseline or treatment mutate the source repo used for the comparison.\n\n## Reference Loading Guide\n\n- Read [references\u002Fverification-method.md](references\u002Fverification-method.md) when you need the detailed run protocol.\n- Read [references\u002Frisk-model.md](references\u002Frisk-model.md) when you need the risk taxonomy and escalation thresholds.\n- Read [references\u002Fcompatibility-model.md](references\u002Fcompatibility-model.md) when you need the compatibility heuristics.\n- Read [references\u002Fartifact-contract.md](references\u002Fartifact-contract.md) when you are creating or reviewing `.skillproof\u002F` outputs.\n","# SkillProof\n\nVerify a candidate coding-agent skill before adopting it.\n\nDefault invocation:\n\n> Use `$skillproof` to verify whether this candidate skill helps in this repo on these tasks with acceptable risk.\n\n## Inputs\n\nSkillProof expects four concrete inputs:\n\n1. a candidate skill path or local reference\n2. a target repository\n3. a task suite\n4. a verification config\n\nUse `.skillproof\u002Fverification.yaml` and `.skillproof\u002Ftasks.yaml` inside the target repo as the default contract.\n\n## Non-Negotiables\n\n1. Compare baseline and treatment fairly.\n2. Keep the same task slice, validators, and command envelope except for skill enablement.\n3. Prefer deterministic validation commands over judge-style scoring.\n4. Ground compatibility and risk claims in visible evidence.\n5. Use fresh temporary repo copies for execution so baseline and treatment start from the same source state.\n6. Leave auditable artifacts behind in `.skillproof\u002F`.\n7. Do not describe the skill as universally good or bad. State where it helps, where it hurts, and where confidence is limited.\n\n## Operating Sequence\n\n### 1. Parse the candidate skill\n\n- Read `SKILL.md`, metadata, scripts, and references as needed.\n- Summarize the skill's assumptions about language, framework, repo type, and task shape.\n\n### 2. Profile the target repo\n\n- Detect the repo's primary language and framework.\n- Infer major task surfaces such as frontend, backend, CLI, library, or infra.\n\n### 3. Normalize the verification inputs\n\n- Load `.skillproof\u002Fverification.yaml`.\n- Load `.skillproof\u002Ftasks.yaml`.\n- Reject ambiguous or missing deterministic validation commands in v1.\n\n### 4. Analyze risk\n\n- Score shell execution, remote fetching, bundled scripts, broad writes, env or secret access, hidden external references, self-escalation, and misleading claims.\n- Record evidence for every elevated signal.\n- Load [references\u002Frisk-model.md](references\u002Frisk-model.md) when classifying or explaining risk.\n\n### 5. Analyze compatibility\n\n- Compare skill assumptions to repo signals.\n- Produce matched signals, mismatched signals, and a recommendation.\n- Load [references\u002Fcompatibility-model.md](references\u002Fcompatibility-model.md) when the fit is ambiguous.\n\n### 6. Run baseline and treatment\n\n- Execute both conditions against fresh repo copies.\n- Keep task definitions and validators identical.\n- Preserve condition-level stdout, stderr, exit codes, validation results, and latency.\n\n### 7. Summarize utility\n\n- Measure pass-rate delta, failed-validation delta, regression count, latency overhead, and repeat stability.\n- Identify where treatment helps and where it regresses.\n\n### 8. Generate artifacts\n\n- Write the Markdown and JSON report.\n- Write machine-readable risk, compatibility, task-result, and run-manifest artifacts.\n- Follow [references\u002Fartifact-contract.md](references\u002Fartifact-contract.md) for file locations.\n\n## Anti-Patterns\n\n- Do not compare different task slices between baseline and treatment.\n- Do not use a different validator set for the two conditions.\n- Do not call a skill \"safe\" without showing which risk signals were checked.\n- Do not call a skill \"compatible\" without stating the matched and mismatched signals.\n- Do not reduce the report to one magical score with no explanation.\n- Do not let baseline or treatment mutate the source repo used for the comparison.\n\n## Reference Loading Guide\n\n- Read [references\u002Fverification-method.md](references\u002Fverification-method.md) when you need the detailed run protocol.\n- Read [references\u002Frisk-model.md](references\u002Frisk-model.md) when you need the risk taxonomy and escalation thresholds.\n- Read [references\u002Fcompatibility-model.md](references\u002Fcompatibility-model.md) when you need the compatibility heuristics.\n- Read [references\u002Fartifact-contract.md](references\u002Fartifact-contract.md) when you are creating or reviewing `.skillproof\u002F` outputs.\n",{"name":5,"description":7},"main","f2055350c58fb01a6879d65d2b582cb31174c35c","",0,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof","https:\u002F\u002Fgithub.com\u002Fgangj277","2026-03-28 13:00:06",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add gangj277\u002FSkillProof --skill skillproof",{"tool":59,"command":60},"bunx","bunx skills add gangj277\u002FSkillProof --skill skillproof",{"tool":62,"command":63},"pnpm","pnpm dlx skills add gangj277\u002FSkillProof --skill skillproof","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002FSKILL.md",true,[67,73,79,84,88,92,96,100,104,108,114,118,122,126,130,134,138,142,146,150,154,158,162,166,170,174,178,182,186,190],{"path":68,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":72},".gitignore","OTHER","其他",44,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002F.gitignore",{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"agents\u002Fopenai.yaml","REFERENCE","参考文档",242,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fagents\u002Fopenai.yaml",{"path":80,"resourceType":80,"resourceTypeDesc":81,"sizeBytes":82,"sourceHtmlUrl":83},"LICENSE","许可证",1056,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002FLICENSE",{"path":85,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":86,"sourceHtmlUrl":87},"PRD.md",5663,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002FPRD.md",{"path":89,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":90,"sourceHtmlUrl":91},"README.md",8155,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002FREADME.md",{"path":93,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":94,"sourceHtmlUrl":95},"references\u002Fartifact-contract.md",1460,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Freferences\u002Fartifact-contract.md",{"path":97,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":98,"sourceHtmlUrl":99},"references\u002Fcompatibility-model.md",1019,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Freferences\u002Fcompatibility-model.md",{"path":101,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":102,"sourceHtmlUrl":103},"references\u002Frisk-model.md",1323,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Freferences\u002Frisk-model.md",{"path":105,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":106,"sourceHtmlUrl":107},"references\u002Fverification-method.md",1210,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Freferences\u002Fverification-method.md",{"path":109,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":112,"sourceHtmlUrl":113},"scripts\u002F__init__.py","SCRIPT","脚本",34,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fscripts\u002F__init__.py",{"path":115,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":116,"sourceHtmlUrl":117},"scripts\u002Fbootstrap_skillproof.py",819,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fscripts\u002Fbootstrap_skillproof.py",{"path":119,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":120,"sourceHtmlUrl":121},"scripts\u002Finstall_skillproof.py",2953,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fscripts\u002Finstall_skillproof.py",{"path":123,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":124,"sourceHtmlUrl":125},"scripts\u002Frun_skillproof.py",1508,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fscripts\u002Frun_skillproof.py",{"path":127,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":128,"sourceHtmlUrl":129},"scripts\u002Fskillproof_core.py",29641,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Fscripts\u002Fskillproof_core.py",{"path":131,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":132,"sourceHtmlUrl":133},"tests\u002Ffixtures\u002Fhelpers\u002Ffake_agent.py",546,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fhelpers\u002Ffake_agent.py",{"path":135,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":136,"sourceHtmlUrl":137},"tests\u002Ffixtures\u002Fhelpers\u002Fvalidate_result.py",477,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fhelpers\u002Fvalidate_result.py",{"path":139,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":140,"sourceHtmlUrl":141},"tests\u002Ffixtures\u002Frepos\u002Fpython-fastapi-service\u002Fapp\u002Fmain.py",46,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Frepos\u002Fpython-fastapi-service\u002Fapp\u002Fmain.py",{"path":143,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":144,"sourceHtmlUrl":145},"tests\u002Ffixtures\u002Frepos\u002Fpython-fastapi-service\u002Fpyproject.toml",96,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Frepos\u002Fpython-fastapi-service\u002Fpyproject.toml",{"path":147,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":148,"sourceHtmlUrl":149},"tests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Fapp\u002Fpage.tsx",66,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Fapp\u002Fpage.tsx",{"path":151,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":152,"sourceHtmlUrl":153},"tests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Fpackage.json",116,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Fpackage.json",{"path":155,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":156,"sourceHtmlUrl":157},"tests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Ftsconfig.json",50,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Frepos\u002Fts-next-app\u002Ftsconfig.json",{"path":159,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":160,"sourceHtmlUrl":161},"tests\u002Ffixtures\u002Fsnapshots\u002Fregression-report.json",1877,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsnapshots\u002Fregression-report.json",{"path":163,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":164,"sourceHtmlUrl":165},"tests\u002Ffixtures\u002Fsnapshots\u002Fregression-report.md",1033,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsnapshots\u002Fregression-report.md",{"path":167,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":168,"sourceHtmlUrl":169},"tests\u002Ffixtures\u002Fsnapshots\u002Fsuccess-report.json",1841,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsnapshots\u002Fsuccess-report.json",{"path":171,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":172,"sourceHtmlUrl":173},"tests\u002Ffixtures\u002Fsnapshots\u002Fsuccess-report.md",996,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fsnapshots\u002Fsuccess-report.md",{"path":175,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":176,"sourceHtmlUrl":177},"tests\u002Ftest_bootstrap_skillproof.py",3067,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ftest_bootstrap_skillproof.py",{"path":179,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":180,"sourceHtmlUrl":181},"tests\u002Ftest_compatibility_analysis.py",1832,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ftest_compatibility_analysis.py",{"path":183,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":184,"sourceHtmlUrl":185},"tests\u002Ftest_install_skillproof.py",3320,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ftest_install_skillproof.py",{"path":187,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":188,"sourceHtmlUrl":189},"tests\u002Ftest_risk_analysis.py",2112,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ftest_risk_analysis.py",{"path":191,"resourceType":110,"resourceTypeDesc":111,"sizeBytes":192,"sourceHtmlUrl":193},"tests\u002Ftest_run_skillproof.py",6361,"https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ftest_run_skillproof.py",[195,222,241,256,273],{"skillNo":196,"name":197,"nameZh":6,"description":198,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":199,"categories":200,"keywords":205,"publishedAt":41},"01M6JWXAQX4MN3TRA71NB0YA7C","ts-next-skill","TypeScript, Next.js, and React frontend skill for repository-local web-app changes and UI regressions.","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fts-next-skill\u002FSKILL.md",[201,204],{"categoryNo":202,"categoryName":203,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000009","前端开发",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[206,207,208,209,210,211,212,39,213,214,215,216,217,218,219,220,221],"ts next skill","next","frontend","typescript","web","react","ui","Next.js","js","local","app","web-app","frontend skill","react frontend","for","changes",{"skillNo":223,"name":224,"nameZh":6,"description":225,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":226,"categories":227,"keywords":232,"publishedAt":41},"01M6JWX5PWVQAWT3S0XKPRK741","python-fastapi-skill","Python and FastAPI backend skill for service endpoints, schemas, and API bugfixes.","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fpython-fastapi-skill\u002FSKILL.md",[228,231],{"categoryNo":229,"categoryName":230,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000010","后端与接口",{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[233,234,235,236,237,238,239,240,220],"python fastapi skill","python fastapi","fastapi","python","api","backend","endpoints","service",{"skillNo":242,"name":243,"nameZh":6,"description":244,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":245,"categories":246,"keywords":248,"publishedAt":41},"01M6JWX0D1ERH709Z6DWS30YRT","medium-risk-skill","Repository bootstrap guidance for Python and JavaScript projects that may need lightweight helper scripts.","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fmedium-risk-skill\u002FSKILL.md",[247],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[38,249,250,220,251,236,252,253,39,254,255],"medium risk skill","projects","helper","javascript","bootstrap","guidance","scripts",{"skillNo":257,"name":258,"nameZh":6,"description":259,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":260,"categories":261,"keywords":263,"publishedAt":41},"01M6JWWWDGJ8Q5D0SYATH40Y95","low-risk-skill","TypeScript and React guidance for narrow repository-local refactors. Use when a coding agent needs help reading local code, local tests, and existing conventions before making a small change.","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Flow-risk-skill\u002FSKILL.md",[262],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[264,38,254,209,265,211,266,267,268,39,35,33,269,215,270,271,220,272],"low risk skill","coding agent","change","code","help","conventions","tests","reading","Existing",{"skillNo":274,"name":275,"nameZh":6,"description":276,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":277,"categories":278,"keywords":280,"publishedAt":41},"01M6JWWRKRMCSD60A10TGS56YJ","high-risk-skill","Universal repo takeover skill that guarantees safe results in any repository.","https:\u002F\u002Fgithub.com\u002Fgangj277\u002FSkillProof\u002Fblob\u002Fmain\u002Ftests\u002Ffixtures\u002Fskills\u002Fhigh-risk-skill\u002FSKILL.md",[279],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},[281,282,38,39,283,34,284,285],"high risk skill","high","takeover","results","safe"]