[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6D91B36643KY7X64PD28RYD":3,"skill-same:01M6D91B36643KY7X64PD28RYD":248},{"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":39,"linkOnly":40,"markdownContent":41,"markdownBody":42,"frontMatter":43,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":50,"ownerDescription":51,"updatedAt":52,"install":53,"resources":66},"01M6D91B36643KY7X64PD28RYD","ecc-python-testing",null,"Domain skill for 'python-testing'. Use when requests involve Python development, testing, quality, and review workflows; testing strategy, reliability, and maintenance.","oabdelmaksoud\u002FAgention","oabdelmaksoud","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F50699149?v=4","01M6D5CVVN778ZCDP1WHS816SP","Omar Abdelmaksoud","01M6D8A4TE76V3DCSH3D94VG1V",2,"MIT","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fskills\u002Fecc-python-testing\u002FSKILL.md",[18],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000008","测试与质量","SCENARIO","使用场景",[24,25,26,27,28,29,30,31,32,33,34,35,36,37,38],"testing","python","python testing","ecc python testing","review","workflows","python development","development","quality","strategy","use","reliability","maintenance","testing strategy","domain","2026-11-10 10:12:30",false,"---\nname: ecc-python-testing\ndescription: \"Domain skill for 'python-testing'. Use when requests involve Python development, testing, quality, and review workflows; testing strategy, reliability, and maintenance.\"\n---\n\n# ecc-python-testing\n\nApply the skill as a concrete workflow rather than static guidance.\n\n## Workflow\n\n1. Clarify the task objective and constraints.\n2. Load `references\u002Fupstream-summary.md` for source intent.\n3. Translate upstream harness-specific semantics into OpenClaw tool steps.\n4. Execute in smallest safe increments.\n5. Verify outcomes and report evidence.\n\n## Output Requirements\n\n- Objective\n- Actions taken\n- Verification performed\n- Risks\u002Flimitations\n- Next recommended step\n\n## Rules\n\n- Prefer deterministic scripts\u002Fcommands when possible.\n- Avoid unverified claims; provide evidence.\n- If uncertain, state assumptions explicitly.\n\n## ECC Parity Notes\n\n- This skill is adapted from ECC intent and translated to OpenClaw-native tool workflows.\n- Prefer reproducible, tool-backed execution over harness-specific slash semantics.\n- Keep outputs evidence-based and verification-first.\n\n## OpenClaw Constraints\n\n- If upstream flow assumes unavailable hooks\u002Ftools, use documented fallback scripts in `openclaw-ecc\u002Fscripts\u002F`.\n- Mark non-applicable checks as `SKIP` rather than hard-failing when environment support is absent.\n\n","# ecc-python-testing\n\nApply the skill as a concrete workflow rather than static guidance.\n\n## Workflow\n\n1. Clarify the task objective and constraints.\n2. Load `references\u002Fupstream-summary.md` for source intent.\n3. Translate upstream harness-specific semantics into OpenClaw tool steps.\n4. Execute in smallest safe increments.\n5. Verify outcomes and report evidence.\n\n## Output Requirements\n\n- Objective\n- Actions taken\n- Verification performed\n- Risks\u002Flimitations\n- Next recommended step\n\n## Rules\n\n- Prefer deterministic scripts\u002Fcommands when possible.\n- Avoid unverified claims; provide evidence.\n- If uncertain, state assumptions explicitly.\n\n## ECC Parity Notes\n\n- This skill is adapted from ECC intent and translated to OpenClaw-native tool workflows.\n- Prefer reproducible, tool-backed execution over harness-specific slash semantics.\n- Keep outputs evidence-based and verification-first.\n\n## OpenClaw Constraints\n\n- If upstream flow assumes unavailable hooks\u002Ftools, use documented fallback scripts in `openclaw-ecc\u002Fscripts\u002F`.\n- Mark non-applicable checks as `SKIP` rather than hard-failing when environment support is absent.\n\n",{"name":5,"description":7},"main","a318f48de3c5718e8ea2e9f6fae7790e8a759e85","skills\u002Fecc-python-testing",0,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud","https:\u002F\u002Fwww.linkedin.com\u002Fin\u002Fo-abdelmaksoud\u002F","Full-Stack Engineer | AI Systems Architect | Building autonomous multi-agent systems","2026-03-08 21:23:03",{"source":8,"skillName":5,"commands":54,"prompt":64,"zipAvailable":65},[55,58,61],{"tool":56,"command":57},"npx","npx skills add oabdelmaksoud\u002FAgention --skill ecc-python-testing",{"tool":59,"command":60},"bunx","bunx skills add oabdelmaksoud\u002FAgention --skill ecc-python-testing",{"tool":62,"command":63},"pnpm","pnpm dlx skills add oabdelmaksoud\u002FAgention --skill ecc-python-testing","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fskills\u002Fecc-python-testing\u002FSKILL.md",true,[67,73,79,85,89,93,97,101,105,109,113,117,121,125,129,133,137,141,145,149,153,157,161,165,169,173,177,181,185,189,193,197,201,205,209,213,217,221,225,228,232,236,240,244],{"path":68,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":71,"sourceHtmlUrl":72},"checklist.md","REFERENCE","参考文档",3791,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fchecklist.md",{"path":74,"resourceType":75,"resourceTypeDesc":76,"sizeBytes":77,"sourceHtmlUrl":78},"customize.toml","OTHER","其他",1605,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fcustomize.toml",{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"game-types.csv","ASSET","资产文件",2935,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types.csv",{"path":86,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":87,"sourceHtmlUrl":88},"game-types\u002Faction-platformer.md",786,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Faction-platformer.md",{"path":90,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":91,"sourceHtmlUrl":92},"game-types\u002Fadventure.md",2054,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fadventure.md",{"path":94,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":95,"sourceHtmlUrl":96},"game-types\u002Fcard-game.md",1506,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fcard-game.md",{"path":98,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":99,"sourceHtmlUrl":100},"game-types\u002Ffighting.md",1673,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Ffighting.md",{"path":102,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":103,"sourceHtmlUrl":104},"game-types\u002Fhorror.md",1920,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fhorror.md",{"path":106,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":107,"sourceHtmlUrl":108},"game-types\u002Fidle-incremental.md",1452,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fidle-incremental.md",{"path":110,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":111,"sourceHtmlUrl":112},"game-types\u002Fmetroidvania.md",1850,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fmetroidvania.md",{"path":114,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":115,"sourceHtmlUrl":116},"game-types\u002Fmoba.md",1562,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fmoba.md",{"path":118,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":119,"sourceHtmlUrl":120},"game-types\u002Fparty-game.md",1683,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fparty-game.md",{"path":122,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":123,"sourceHtmlUrl":124},"game-types\u002Fpuzzle.md",924,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fpuzzle.md",{"path":126,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":127,"sourceHtmlUrl":128},"game-types\u002Fracing.md",1696,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fracing.md",{"path":130,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":131,"sourceHtmlUrl":132},"game-types\u002Frhythm.md",1502,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Frhythm.md",{"path":134,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":135,"sourceHtmlUrl":136},"game-types\u002Froguelike.md",1108,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Froguelike.md",{"path":138,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":139,"sourceHtmlUrl":140},"game-types\u002Frpg.md",1091,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Frpg.md",{"path":142,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":143,"sourceHtmlUrl":144},"game-types\u002Fsandbox.md",1645,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fsandbox.md",{"path":146,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":147,"sourceHtmlUrl":148},"game-types\u002Fshooter.md",1604,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fshooter.md",{"path":150,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":151,"sourceHtmlUrl":152},"game-types\u002Fsimulation.md",1512,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fsimulation.md",{"path":154,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":155,"sourceHtmlUrl":156},"game-types\u002Fsports.md",1438,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fsports.md",{"path":158,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":159,"sourceHtmlUrl":160},"game-types\u002Fstrategy.md",1823,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fstrategy.md",{"path":162,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":163,"sourceHtmlUrl":164},"game-types\u002Fsurvival.md",1544,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fsurvival.md",{"path":166,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":167,"sourceHtmlUrl":168},"game-types\u002Ftext-based.md",1959,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Ftext-based.md",{"path":170,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":171,"sourceHtmlUrl":172},"game-types\u002Ftower-defense.md",1669,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Ftower-defense.md",{"path":174,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":175,"sourceHtmlUrl":176},"game-types\u002Fturn-based-tactics.md",1986,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fturn-based-tactics.md",{"path":178,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":179,"sourceHtmlUrl":180},"game-types\u002Fvisual-novel.md",2022,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fgame-types\u002Fvisual-novel.md",{"path":182,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":183,"sourceHtmlUrl":184},"references\u002Fupstream-summary.md",4575,"https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fskills\u002Fecc-python-testing\u002Freferences\u002Fupstream-summary.md",{"path":186,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":187,"sourceHtmlUrl":188},"steps-c\u002Fstep-01-init.md",9223,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-01-init.md",{"path":190,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":191,"sourceHtmlUrl":192},"steps-c\u002Fstep-01b-continue.md",6041,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-01b-continue.md",{"path":194,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":195,"sourceHtmlUrl":196},"steps-c\u002Fstep-02-context.md",11128,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-02-context.md",{"path":198,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":199,"sourceHtmlUrl":200},"steps-c\u002Fstep-03-platforms.md",7626,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-03-platforms.md",{"path":202,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":203,"sourceHtmlUrl":204},"steps-c\u002Fstep-04-vision.md",7099,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-04-vision.md",{"path":206,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":207,"sourceHtmlUrl":208},"steps-c\u002Fstep-05-core-gameplay.md",8432,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-05-core-gameplay.md",{"path":210,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":211,"sourceHtmlUrl":212},"steps-c\u002Fstep-06-mechanics.md",7875,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-06-mechanics.md",{"path":214,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":215,"sourceHtmlUrl":216},"steps-c\u002Fstep-07-game-type.md",7754,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-07-game-type.md",{"path":218,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":219,"sourceHtmlUrl":220},"steps-c\u002Fstep-08-progression.md",8327,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-08-progression.md",{"path":222,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":223,"sourceHtmlUrl":224},"steps-c\u002Fstep-09-levels.md",8421,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-09-levels.md",{"path":226,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":211,"sourceHtmlUrl":227},"steps-c\u002Fstep-10-art-audio.md","https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-10-art-audio.md",{"path":229,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":230,"sourceHtmlUrl":231},"steps-c\u002Fstep-11-technical.md",7896,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-11-technical.md",{"path":233,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":234,"sourceHtmlUrl":235},"steps-c\u002Fstep-12-epics.md",7656,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-12-epics.md",{"path":237,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":238,"sourceHtmlUrl":239},"steps-c\u002Fstep-13-metrics.md",7706,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-13-metrics.md",{"path":241,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":242,"sourceHtmlUrl":243},"steps-c\u002Fstep-14-complete.md",9977,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Fsteps-c\u002Fstep-14-complete.md",{"path":245,"resourceType":69,"resourceTypeDesc":70,"sizeBytes":246,"sourceHtmlUrl":247},"templates\u002Fgdd-template.md",1564,"https:\u002F\u002Fgithub.com\u002Ftonygomes-wq\u002Fevo\u002Fblob\u002Fmain\u002F.agent\u002Fskills\u002Fgds-create-gdd\u002Ftemplates\u002Fgdd-template.md",[249,271,285,314,340,359],{"skillNo":250,"name":251,"nameZh":6,"description":252,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":253,"categories":254,"keywords":258,"publishedAt":39},"01M6G2QFCBNBYAJF2KTK85G9A6","visa-doc-translate","Translate visa application documents (images) to English and create a bilingual PDF with original and translation","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fvisa-doc-translate\u002FSKILL.md",[255],{"categoryNo":256,"categoryName":257,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000002","文档处理",[259,260,261,262,263,264,265,266,267,268,269,270],"translate","doc","visa doc translate","bilingual","with","english","application","PDF","translation","documents","create","images",{"skillNo":272,"name":273,"nameZh":6,"description":274,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":275,"categories":276,"keywords":277,"publishedAt":39},"01M6G2QB09TSK6BY4ME5X20EVQ","verification-loop","A comprehensive verification system for Claude Code sessions.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fverification-loop\u002FSKILL.md",[],[278,279,280,281,282,283,284],"verification","loop","verification loop","sessions","code","claude code sessions","system",{"skillNo":286,"name":287,"nameZh":6,"description":288,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":289,"categories":290,"keywords":300,"publishedAt":39},"01M6G2Q6V2F7G03VAAF27FXPJR","tdd-workflow","Use this skill when writing new features, fixing bugs, or refactoring code. Enforces test-driven development with 80%+ coverage including unit, integration, and E2E tests.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Ftdd-workflow\u002FSKILL.md",[291,292,295],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},{"categoryNo":293,"categoryName":294,"taxonomyType":21,"taxonomyTypeDesc":22},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":296,"categoryName":297,"taxonomyType":298,"taxonomyTypeDesc":299},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[301,302,303,34,304,305,306,307,308,282,31,309,310,311,263,312,313],"workflow","tdd","tdd workflow","unit","coverage","refactoring","e2e","integration","e2e tests","tests","driven","test","writing",{"skillNo":315,"name":316,"nameZh":6,"description":317,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":318,"categories":319,"keywords":320,"publishedAt":39},"01M6G2Q359YJRWAR2PFCEQAXF3","swiftui-patterns","SwiftUI architecture patterns, state management with @Observable, view composition, navigation, performance optimization, and modern iOS\u002FmacOS UI best practices.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswiftui-patterns\u002FSKILL.md",[],[321,322,323,324,325,326,327,328,329,330,331,332,333,334,335,336,337,338,339,263],"patterns","swiftui","swiftui patterns","architecture","macos","performance","state management","best practices","state","ui","Optimization","ios","architecture patterns","Composition","performance optimization","view","management","swiftui architecture","navigation",{"skillNo":341,"name":342,"nameZh":6,"description":343,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":344,"categories":345,"keywords":347,"publishedAt":39},"01M6G2PY8B2FWZTWPZ84H83Y7C","swift-protocol-di-testing","Protocol-based dependency injection for testable Swift code — mock file system, network, and external APIs using focused protocols and Swift Testing.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-protocol-di-testing\u002FSKILL.md",[346],{"categoryNo":19,"categoryName":20,"taxonomyType":21,"taxonomyTypeDesc":22},[348,349,350,24,282,351,352,353,354,284,355,356,357,358],"swift protocol di testing","protocol","swift","protocols","file","network","injection","dependency","swift testing","dependency injection","mock",{"skillNo":360,"name":361,"nameZh":6,"description":362,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":12,"repositoryNo":13,"starsCount":14,"licenseSpdxId":15,"licenseFileUrl":6,"sourceHtmlUrl":363,"categories":364,"keywords":365,"publishedAt":39},"01M6G2PSCN2GXV9FFZDRRRWVB6","swift-concurrency-6-2","Swift 6.2 Approachable Concurrency — single-threaded by default, @concurrent for explicit background offloading, isolated conformances for main actor types.","https:\u002F\u002Fgithub.com\u002Foabdelmaksoud\u002FAgention\u002Fblob\u002Fmain\u002Fupstream-sync\u002Fwork\u002Fecc\u002Fskills\u002Fswift-concurrency-6-2\u002FSKILL.md",[],[366,367,368,350,369,44,370],"concurrency","swift concurrency","swift concurrency 6 2","default","types"]