[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6N4SMTP26SQVMEE7SDS0X6R":3,"skill-same:01M6N4SMTP26SQVMEE7SDS0X6R":66},{"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":36,"linkOnly":37,"markdownContent":38,"markdownBody":39,"frontMatter":40,"refName":44,"commitSha":45,"skillDirectory":46,"forksCount":47,"repositoryHtmlUrl":48,"repositoryHomepageUrl":6,"ownerHtmlUrl":49,"ownerBlogUrl":6,"ownerDescription":50,"updatedAt":51,"install":52,"resources":65},"01M6N4SMTP26SQVMEE7SDS0X6R","perry-coding-agents",null,"Dispatch coding tasks to OpenCode or Claude Code on Perry workspaces. Use for development work, PR reviews, or any coding task requiring an isolated environment.","Kernel8901\u002Fai-agent-skills-classification","Kernel8901","https:\u002F\u002Favatars.githubusercontent.com\u002Fu\u002F72647553?v=4","01M6KV388J2H5PNC8D8P940BJD","01M6KV38CS5B3AY63RKZB410YM",7,"MIT","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F其他\u002Fclawforgod\u002Fskills\u002Fperry-coding-agents\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35],"perry","coding","perry coding agents","coding agents","dispatch","for","reviews","task","perry workspaces","workspaces","opencode","use","environment","work","code","development","tasks","pr","2026-11-10 10:12:30",false,"---\nname: perry-coding-agents\ndescription: Dispatch coding tasks to OpenCode or Claude Code on Perry workspaces. Use for development work, PR reviews, or any coding task requiring an isolated environment.\nmetadata: {\"clawdbot\":{\"emoji\":\"?️\"}}\n---\n\n# Perry Coding Agents\n\nDispatch tasks to OpenCode\u002FClaude Code on Perry workspaces.\n\n## Rules\n- **Always create dex task FIRST** — before any dispatch, no exceptions\n- **No hard timeouts** — background dispatch, let agent run\n- **Use IPs** — MagicDNS broken in containers (`tailscale status` for IPs)\n- **One task per PR** — same session continues until done\n- **Reuse sessions** — OpenCode keeps context in `~\u002F.opencode\u002F`\n- **Never code directly** — always dispatch to agents\n\n## Commands\n```bash\n# OpenCode (primary)\nssh -o StrictHostKeyChecking=no workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'task'\" &\n\n# Claude Code (needs TTY)\nssh -t workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.local\u002Fbin\u002Fclaude 'task'\"\n```\n\n## Dispatch Pattern\n```bash\nWAKE_IP=$(tailscale status --self --json | jq -r '.Self.TailscaleIPs[0]')\n\nssh -o StrictHostKeyChecking=no workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'Your task.\n\nWhen done: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake -H \\\"Content-Type: application\u002Fjson\\\" -H \\\"Authorization: Bearer \u003Chooks-token>\\\" -d \\\"{\\\\\\\"text\\\\\\\": \\\\\\\"Done: summary\\\\\\\", \\\\\\\"mode\\\\\\\": \\\\\\\"now\\\\\\\"}\\\"\n'\" &\n```\n\n## Task Tracking\nCreate task before dispatch with: workspace IP, branch, goal, done criteria.\nSame task until CI green. Complete with result summary.\n\n## Example: Full PR Flow\n\n```bash\n# 1. Create task\n# Track: workspace feat1 (100.109.173.45), branch feat\u002Fauth, goal: add auth\n\n# 2. Get wake info\nWAKE_IP=$(tailscale status --self --json | jq -r '.Self.TailscaleIPs[0]')\n\n# 3. Dispatch (background, no timeout)\nssh -o StrictHostKeyChecking=no workspace@100.109.173.45 \"cd ~\u002Fperry && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'Add bearer token auth to all API endpoints. Create PR when done.\n\nWhen finished: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake -H \\\"Content-Type: application\u002Fjson\\\" -H \\\"Authorization: Bearer \u003Ctoken>\\\" -d \\\"{\\\\\\\"text\\\\\\\": \\\\\\\"Done: Auth PR created\\\\\\\", \\\\\\\"mode\\\\\\\": \\\\\\\"now\\\\\\\"}\\\"\n'\" &\n\n# 4. Wake received → check CI\nssh workspace@100.109.173.45 \"cd ~\u002Fperry && gh pr checks 145\"\n\n# 5. CI fails → dispatch follow-up (same task, agent has context)\nssh -o StrictHostKeyChecking=no workspace@100.109.173.45 \"cd ~\u002Fperry && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'CI failing: test\u002Fauth.test.ts line 42. Fix and push.\n\nWhen fixed: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake ...'\" &\n\n# 6. CI green → complete task with result\n```\n\n## Troubleshooting\n- **Can't reach**: `tailscale status | grep \u003Cname>`\n- **Commands not found**: Use full paths (`\u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode`)\n- **Wake not firing**: Check IP\u002Ftoken, test with curl\n","# Perry Coding Agents\n\nDispatch tasks to OpenCode\u002FClaude Code on Perry workspaces.\n\n## Rules\n- **Always create dex task FIRST** — before any dispatch, no exceptions\n- **No hard timeouts** — background dispatch, let agent run\n- **Use IPs** — MagicDNS broken in containers (`tailscale status` for IPs)\n- **One task per PR** — same session continues until done\n- **Reuse sessions** — OpenCode keeps context in `~\u002F.opencode\u002F`\n- **Never code directly** — always dispatch to agents\n\n## Commands\n```bash\n# OpenCode (primary)\nssh -o StrictHostKeyChecking=no workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'task'\" &\n\n# Claude Code (needs TTY)\nssh -t workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.local\u002Fbin\u002Fclaude 'task'\"\n```\n\n## Dispatch Pattern\n```bash\nWAKE_IP=$(tailscale status --self --json | jq -r '.Self.TailscaleIPs[0]')\n\nssh -o StrictHostKeyChecking=no workspace@\u003CIP> \"cd ~\u002F\u003Cproject> && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'Your task.\n\nWhen done: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake -H \\\"Content-Type: application\u002Fjson\\\" -H \\\"Authorization: Bearer \u003Chooks-token>\\\" -d \\\"{\\\\\\\"text\\\\\\\": \\\\\\\"Done: summary\\\\\\\", \\\\\\\"mode\\\\\\\": \\\\\\\"now\\\\\\\"}\\\"\n'\" &\n```\n\n## Task Tracking\nCreate task before dispatch with: workspace IP, branch, goal, done criteria.\nSame task until CI green. Complete with result summary.\n\n## Example: Full PR Flow\n\n```bash\n# 1. Create task\n# Track: workspace feat1 (100.109.173.45), branch feat\u002Fauth, goal: add auth\n\n# 2. Get wake info\nWAKE_IP=$(tailscale status --self --json | jq -r '.Self.TailscaleIPs[0]')\n\n# 3. Dispatch (background, no timeout)\nssh -o StrictHostKeyChecking=no workspace@100.109.173.45 \"cd ~\u002Fperry && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'Add bearer token auth to all API endpoints. Create PR when done.\n\nWhen finished: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake -H \\\"Content-Type: application\u002Fjson\\\" -H \\\"Authorization: Bearer \u003Ctoken>\\\" -d \\\"{\\\\\\\"text\\\\\\\": \\\\\\\"Done: Auth PR created\\\\\\\", \\\\\\\"mode\\\\\\\": \\\\\\\"now\\\\\\\"}\\\"\n'\" &\n\n# 4. Wake received → check CI\nssh workspace@100.109.173.45 \"cd ~\u002Fperry && gh pr checks 145\"\n\n# 5. CI fails → dispatch follow-up (same task, agent has context)\nssh -o StrictHostKeyChecking=no workspace@100.109.173.45 \"cd ~\u002Fperry && \u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode run 'CI failing: test\u002Fauth.test.ts line 42. Fix and push.\n\nWhen fixed: curl -X POST http:\u002F\u002F${WAKE_IP}:18789\u002Fhooks\u002Fwake ...'\" &\n\n# 6. CI green → complete task with result\n```\n\n## Troubleshooting\n- **Can't reach**: `tailscale status | grep \u003Cname>`\n- **Commands not found**: Use full paths (`\u002Fhome\u002Fworkspace\u002F.opencode\u002Fbin\u002Fopencode`)\n- **Wake not firing**: Check IP\u002Ftoken, test with curl\n",{"name":5,"metadata":41,"description":7},{"clawdbot":42},{"emoji":43},"?️","main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","其他\u002Fclawforgod\u002Fskills\u002Fperry-coding-agents",1,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification","https:\u002F\u002Fgithub.com\u002FKernel8901","a little little little dobe in life but science geek","2026-04-05 16:43:56",{"source":8,"skillName":5,"commands":53,"prompt":63,"zipAvailable":64},[54,57,60],{"tool":55,"command":56},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill perry-coding-agents",{"tool":58,"command":59},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill perry-coding-agents",{"tool":61,"command":62},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill perry-coding-agents","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F其他\u002Fclawforgod\u002Fskills\u002Fperry-coding-agents\u002FSKILL.md",true,[],[67,90,126,137,147,176],{"skillNo":68,"name":69,"nameZh":6,"description":70,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":71,"categories":72,"keywords":73,"publishedAt":36},"01M6Q5R6WZ06RRB9RQTW54B34B","zyfai","Earn yield on any Ethereum wallet on Base, Arbitrum, and Plasma. Use when a user wants passive DeFi yield on their funds. Deploys a non-custodial subaccount (Safe) linked to their EOA, enables automated yield optimization, and lets them deposit\u002Fwithdraw anytime.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzyfai-sdk\u002FSKILL.md",[],[69,74,75,76,77,78,29,79,80,81,82,83,84,85,86,87,88,89],"safe","ethereum","defi","Optimization","user","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":91,"name":92,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":93,"categories":94,"keywords":108,"publishedAt":36},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[95,100,103],{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":101,"categoryName":102,"taxonomyType":98,"taxonomyTypeDesc":99},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":104,"categoryName":105,"taxonomyType":106,"taxonomyTypeDesc":107},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[109,110,111,112,113,114,115,76,116,79,117,118,119,120,121,122,123,124,125],"api","zerion api","zerion","MCP","mcp server","server","blockchain","transactions","crypto wallet","crypto","evm","solana","query","across","positions","token","prices",{"skillNo":127,"name":128,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":129,"categories":130,"keywords":134,"publishedAt":36},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[131,132,133],{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},{"categoryNo":101,"categoryName":102,"taxonomyType":98,"taxonomyTypeDesc":99},{"categoryNo":104,"categoryName":105,"taxonomyType":106,"taxonomyTypeDesc":107},[109,135,136,110,111,112,113,114,115,76,116,79,118,119,120,121,122,123,124,125],"api skill","zerion api skill",{"skillNo":138,"name":139,"nameZh":6,"description":6,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":140,"categories":141,"keywords":145,"publishedAt":36},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[142,143,144],{"categoryNo":96,"categoryName":97,"taxonomyType":98,"taxonomyTypeDesc":99},{"categoryNo":101,"categoryName":102,"taxonomyType":98,"taxonomyTypeDesc":99},{"categoryNo":104,"categoryName":105,"taxonomyType":106,"taxonomyTypeDesc":107},[112,109,146,110,111,113,114,76,116,79,117,118,119,120,121,122,123,124,125],"zerion api mcp",{"skillNo":148,"name":149,"nameZh":6,"description":150,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":151,"categories":152,"keywords":156,"publishedAt":36},"01M6Q5QQYZB7A501BDEQWKGSJT","yahoo-finance-forex","Fetches real-time FOREX news and market data from Yahoo Finance for major currency pairs (EUR\u002FUSD, GBP\u002FUSD, USD\u002FJPY, etc.). Analyzes sentiment and provides trading context.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-forex\u002FSKILL.md",[153],{"categoryNo":154,"categoryName":155,"taxonomyType":106,"taxonomyTypeDesc":107},"01JBSEEDCAT000000000000040","财务",[157,158,159,160,161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,23],"finance","yahoo finance","forex","yahoo","yahoo finance forex","github","https","sentiment","real-time","python3","install","Market","usd","news","time","currency","gbp","pip","market data",{"skillNo":177,"name":178,"nameZh":6,"description":179,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":180,"categories":181,"keywords":183,"publishedAt":36},"01M6Q5QM6VS84WZVM7BKXXPF32","yahoo-finance","This skill should be used when the user asks to \"get stock prices\", \"check stock quotes\", \"look up earnings\", \"get financial data\", \"find trending stocks\", or needs stock market data from Yahoo Finance.","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fyahoo-finance-cli\u002FSKILL.md",[182],{"categoryNo":154,"categoryName":155,"taxonomyType":106,"taxonomyTypeDesc":107},[157,158,160,184,185,186,187,188,189,168,190,191,192,193,194,195,196,197,125,175],"cli","homebrew","find","check","brew","up","local","get","stock","link","trending","sf","quotes","ln"]