[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M71TE18BPRZ5DH660PF95CNC":3,"skill-same:01M71TE18BPRZ5DH660PF95CNC":57},{"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":17,"publishedAt":32,"linkOnly":33,"markdownContent":34,"markdownBody":35,"frontMatter":36,"refName":37,"commitSha":38,"skillDirectory":39,"forksCount":13,"repositoryHtmlUrl":40,"repositoryHomepageUrl":6,"ownerHtmlUrl":41,"ownerBlogUrl":6,"ownerDescription":6,"updatedAt":42,"install":43,"resources":56},"01M71TE18BPRZ5DH660PF95CNC","tdd-workflows-tdd-green",null,"Implement the minimal code needed to make failing tests pass in the TDD green phase.","javiertarazon\u002Fide-agente-free-jt7-","javiertarazon","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F153141207?v=4","01M71R52TB3S9HXKH6WSNT8A7V","01M71R52VG5KS2DKDDH4GDQ30A",0,"MIT","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Ftdd-workflows-tdd-green\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31],"green","tdd","tdd workflows tdd green","workflows","tdd workflows","community","failing","minimal","tests","unknown","code","implement","phase","make","2026-11-10 13:02:02",false,"---\nname: tdd-workflows-tdd-green\ndescription: \"Implement the minimal code needed to make failing tests pass in the TDD green phase.\"\nrisk: unknown\nsource: community\n---\n\n# Green Phase: Simple function\ndef product_list(request):\n    products = Product.objects.all()\n    return JsonResponse({'products': list(products.values())})\n\n# Refactor: Class-based view\nclass ProductListView(View):\n    def get(self, request):\n        products = Product.objects.all()\n        return JsonResponse({'products': list(products.values())})\n\n# Refactor: Generic view\nclass ProductListView(ListView):\n    model = Product\n    context_object_name = 'products'\n```\n\n### Express Patterns\n\n**Inline → Middleware → Service Layer:**\n```javascript\n\u002F\u002F Green Phase: Inline logic\napp.post('\u002Fapi\u002Fusers', (req, res) => {\n  const user = { id: Date.now(), ...req.body };\n  users.push(user);\n  res.json(user);\n});\n\n\u002F\u002F Refactor: Extract middleware\napp.post('\u002Fapi\u002Fusers', validateUser, (req, res) => {\n  const user = userService.create(req.body);\n  res.json(user);\n});\n\n\u002F\u002F Refactor: Full layering\napp.post('\u002Fapi\u002Fusers',\n  validateUser,\n  asyncHandler(userController.create)\n);\n```\n\n## Use this skill when\n\n- Moving from red to green in a TDD cycle\n- Implementing minimal behavior to satisfy tests\n- You want to keep implementation intentionally simple\n\n## Do not use this skill when\n\n- You are refactoring for design or performance\n- Tests are already passing and you need new requirements\n- You need a full architectural redesign\n\n## Instructions\n\n1. Review failing tests and identify the smallest fix.\n2. Implement the minimal change to pass the next test.\n3. Run tests after each change to confirm progress.\n4. Record shortcuts or debt for the refactor phase.\n\n## Safety\n\n- Avoid bypassing tests to make them pass.\n- Keep changes scoped to the failing behavior only.\n\n## Resources\n\n- `resources\u002Fimplementation-playbook.md` for detailed patterns and examples.\n","# Green Phase: Simple function\ndef product_list(request):\n    products = Product.objects.all()\n    return JsonResponse({'products': list(products.values())})\n\n# Refactor: Class-based view\nclass ProductListView(View):\n    def get(self, request):\n        products = Product.objects.all()\n        return JsonResponse({'products': list(products.values())})\n\n# Refactor: Generic view\nclass ProductListView(ListView):\n    model = Product\n    context_object_name = 'products'\n```\n\n### Express Patterns\n\n**Inline → Middleware → Service Layer:**\n```javascript\n\u002F\u002F Green Phase: Inline logic\napp.post('\u002Fapi\u002Fusers', (req, res) => {\n  const user = { id: Date.now(), ...req.body };\n  users.push(user);\n  res.json(user);\n});\n\n\u002F\u002F Refactor: Extract middleware\napp.post('\u002Fapi\u002Fusers', validateUser, (req, res) => {\n  const user = userService.create(req.body);\n  res.json(user);\n});\n\n\u002F\u002F Refactor: Full layering\napp.post('\u002Fapi\u002Fusers',\n  validateUser,\n  asyncHandler(userController.create)\n);\n```\n\n## Use this skill when\n\n- Moving from red to green in a TDD cycle\n- Implementing minimal behavior to satisfy tests\n- You want to keep implementation intentionally simple\n\n## Do not use this skill when\n\n- You are refactoring for design or performance\n- Tests are already passing and you need new requirements\n- You need a full architectural redesign\n\n## Instructions\n\n1. Review failing tests and identify the smallest fix.\n2. Implement the minimal change to pass the next test.\n3. Run tests after each change to confirm progress.\n4. Record shortcuts or debt for the refactor phase.\n\n## Safety\n\n- Avoid bypassing tests to make them pass.\n- Keep changes scoped to the failing behavior only.\n\n## Resources\n\n- `resources\u002Fimplementation-playbook.md` for detailed patterns and examples.\n",{"name":5,"risk":27,"source":23,"description":7},"release\u002Fv4.2.11-panel-pro","a92ea02bcf7e2b3dbaf46d49696c29a3cb490d4f",".github\u002Fskills\u002Ftdd-workflows-tdd-green","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-","https:\u002F\u002Fgithub.com\u002Fjaviertarazon","2026-07-12 07:10:45",{"source":8,"skillName":5,"commands":44,"prompt":54,"zipAvailable":55},[45,48,51],{"tool":46,"command":47},"npx","npx skills add javiertarazon\u002Fide-agente-free-jt7- --skill tdd-workflows-tdd-green",{"tool":49,"command":50},"bunx","bunx skills add javiertarazon\u002Fide-agente-free-jt7- --skill tdd-workflows-tdd-green",{"tool":52,"command":53},"pnpm","pnpm dlx skills add javiertarazon\u002Fide-agente-free-jt7- --skill tdd-workflows-tdd-green","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Ftdd-workflows-tdd-green\u002FSKILL.md",true,[],[58,88,115,135,150,170],{"skillNo":59,"name":60,"nameZh":6,"description":61,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":62,"categories":63,"keywords":69,"publishedAt":32},"01M71TQ7Q6Z10VWF3C2H5X1KW9","zustand-store-ts","Create Zustand stores with TypeScript, subscribeWithSelector middleware, and proper state\u002Faction separation. Use when building React state management, creating global stores, or implementing reacti...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzustand-store-ts\u002FSKILL.md",[64],{"categoryNo":65,"categoryName":66,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000009","前端开发","SCENARIO","使用场景",[70,71,72,23,73,74,75,76,77,27,78,79,80,81,82,83,84,85,86,87],"zustand","store","zustand store ts","middleware","implementing","use","react state management","when","react","with","state","create","state management","typescript","action","management","separation","global",{"skillNo":89,"name":90,"nameZh":6,"description":91,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":92,"categories":93,"keywords":97,"publishedAt":32},"01M71TQ5EAR40G6W0MV5ZDVEZT","zoom-automation","Automate Zoom meeting creation, management, recordings, webinars, and participant tracking via Rube MCP (Composio). Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoom-automation\u002FSKILL.md",[94],{"categoryNo":95,"categoryName":96,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000023","Skill与智能体开发",[98,99,100,23,101,102,103,104,105,27,106,107,108,109,110,111,112,113,85,114],"zoom automation","zoom","automation","creation","for","search","schemas","MCP","first","via","meeting","search tools","tracking","webinars","composio","recordings","Tools",{"skillNo":116,"name":117,"nameZh":6,"description":118,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":119,"categories":120,"keywords":122,"publishedAt":32},"01M71TQ29B1EYBCEAP1ZBGXQ1A","zoho-crm-automation","Automate Zoho CRM tasks via Rube MCP (Composio): create\u002Fupdate records, search contacts, manage leads, and convert leads. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzoho-crm-automation\u002FSKILL.md",[121],{"categoryNo":95,"categoryName":96,"taxonomyType":67,"taxonomyTypeDesc":68},[123,124,100,125,126,127,23,128,129,102,130,103,104,131,105,27,132,133,134,81],"crm automation","zoho crm automation","crm","zoho crm","zoho","leads","manage leads","manage","records","convert","tasks","contacts",{"skillNo":136,"name":137,"nameZh":6,"description":138,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":139,"categories":140,"keywords":142,"publishedAt":32},"01M71TPZPMN60DH0XV58KVHY23","zendesk-automation","Automate Zendesk tasks via Rube MCP (Composio): tickets, users, organizations, replies. Always search tools first for current schemas.","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzendesk-automation\u002FSKILL.md",[141],{"categoryNo":95,"categoryName":96,"taxonomyType":67,"taxonomyTypeDesc":68},[143,100,144,23,102,103,104,105,145,27,133,146,147,106,107,148,109,112,114,149],"zendesk automation","zendesk","organizations","replies","users","tickets","automate",{"skillNo":151,"name":152,"nameZh":6,"description":153,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":154,"categories":155,"keywords":156,"publishedAt":32},"01M71TPXDWKHKG4N6TVEPXWD0N","zapier-make-patterns","No-code automation democratizes workflow building. Zapier and Make (formerly Integromat) let non-developers automate business processes without writing code. But no-code doesn't mean no-complexity ...","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fzapier-make-patterns\u002FSKILL.md",[],[157,158,159,31,160,161,162,163,164,100,165,27,28,166,167,168,169,149],"zapier make patterns","zapier","patterns","No-Code","complexity","writing","spawner","business","workflow","integromat","apache","processes","but",{"skillNo":171,"name":172,"nameZh":6,"description":173,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":174,"categories":175,"keywords":179,"publishedAt":32},"01M71TPT5T10WXNKW9G7ZXZ27W","youtube-summarizer","Extract transcripts from YouTube videos and generate comprehensive, detailed summaries using intelligent analysis frameworks","https:\u002F\u002Fgithub.com\u002Fjaviertarazon\u002Fide-agente-free-jt7-\u002Fblob\u002Frelease\u002Fv4.2.11-panel-pro\u002F.github\u002Fskills\u002Fyoutube-summarizer\u002FSKILL.md",[176],{"categoryNo":177,"categoryName":178,"taxonomyType":67,"taxonomyTypeDesc":68},"01JBSEEDCAT000000000000016","图像与多媒体",[180,181,182,183,23,184,185,186,187,188,189,190,28,191,192,193,194,195,196,197],"summarizer","youtube","youtube summarizer","Video","content-analysis","frameworks","copilot","2025","github-copilot","extract transcripts","analysis","codex","cli","summaries","github","generate","summarization","2026"]