[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6Q0R4F0DHE6J33RCVCJ8063":3,"skill-same:01M6Q0R4F0DHE6J33RCVCJ8063":70},{"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":37,"linkOnly":38,"markdownContent":39,"markdownBody":40,"frontMatter":41,"refName":42,"commitSha":43,"skillDirectory":44,"forksCount":45,"repositoryHtmlUrl":46,"repositoryHomepageUrl":6,"ownerHtmlUrl":47,"ownerBlogUrl":6,"ownerDescription":48,"updatedAt":49,"install":50,"resources":63},"01M6Q0R4F0DHE6J33RCVCJ8063","lobster",null,"Lobster workflow runtime for deterministic pipelines with approval gates. Use when: (1) Running multi-step automations that need human approval before side effects, (2) Monitoring PRs\u002Fissues for changes, (3) Processing data through typed JSON pipelines, (4) Email triage or batch operations, (5) Any workflow that should halt and ask before acting. Lobster saves tokens by running deterministic pipelines instead of re-planning each step.","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数据与分析\u002Flobster\u002FSKILL.md",[],[5,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36],"deterministic","prs","effects","for","re","with","processing","gates","runtime","tokens","workflow runtime","use","ask","email","monitoring","batch","issues","planning","workflow","2026-11-10 10:12:30",false,"---\nname: lobster\ndescription: >\n  Lobster workflow runtime for deterministic pipelines with approval gates.\n  Use when: (1) Running multi-step automations that need human approval before side effects,\n  (2) Monitoring PRs\u002Fissues for changes, (3) Processing data through typed JSON pipelines,\n  (4) Email triage or batch operations, (5) Any workflow that should halt and ask before acting.\n  Lobster saves tokens by running deterministic pipelines instead of re-planning each step.\n---\n\n# Lobster\n\n> **Contribute:** Source code & PRs welcome at [github.com\u002Fguwidoe\u002Flobster-skill](https:\u002F\u002Fgithub.com\u002Fguwidoe\u002Flobster-skill)\n\nWorkflow runtime for AI agents — typed pipelines with approval gates.\n\n## CLI Location\n\n```bash\n# Set alias (adjust path to your install location)\nLOBSTER=\"node \u002Fhome\u002Fmolt\u002Fclawd\u002Ftools\u002Flobster\u002Fbin\u002Flobster.js\"\n\n# Or install globally: npm install -g @clawdbot\u002Flobster\n# Then use: lobster '\u003Cpipeline>'\n```\n\n## Quick Reference\n\n```bash\n# Run pipeline (human mode - pretty output)\n$LOBSTER '\u003Cpipeline>'\n\n# Run pipeline (tool mode - JSON envelope for integration)\n$LOBSTER run --mode tool '\u003Cpipeline>'\n\n# Run workflow file\n$LOBSTER run path\u002Fto\u002Fworkflow.lobster\n\n# Resume after approval\n$LOBSTER resume --token \"\u003Ctoken>\" --approve yes|no\n\n# List commands\u002Fworkflows\n$LOBSTER commands.list\n$LOBSTER workflows.list\n```\n\n## Core Commands\n\n| Command | Purpose |\n|---------|---------|\n| `exec --json --shell \"cmd\"` | Run shell, parse stdout as JSON |\n| `where 'field=value'` | Filter objects |\n| `pick field1,field2` | Project fields |\n| `head --n 5` | Take first N items |\n| `sort --key field --desc` | Sort items |\n| `groupBy --key field` | Group by key |\n| `dedupe --key field` | Remove duplicates |\n| `map --wrap key` | Transform items |\n| `template --text \"{{field}}\"` | Render templates |\n| `approve --prompt \"ok?\"` | **Halt for approval** |\n| `diff.last --key \"mykey\"` | Compare to last run (stateful) |\n| `state.get key` \u002F `state.set key` | Read\u002Fwrite persistent state |\n| `json` \u002F `table` | Render output |\n\n## Built-in Workflows\n\n```bash\n# Monitor PR for changes (stateful - remembers last state)\n$LOBSTER \"workflows.run --name github.pr.monitor --args-json '{\\\"repo\\\":\\\"owner\u002Frepo\\\",\\\"pr\\\":123}'\"\n\n# Monitor PR and emit message only on change\n$LOBSTER \"workflows.run --name github.pr.monitor.notify --args-json '{\\\"repo\\\":\\\"owner\u002Frepo\\\",\\\"pr\\\":123}'\"\n```\n\n## Approval Flow (Tool Mode)\n\nWhen a pipeline hits `approve`, it returns:\n\n```json\n{\n  \"status\": \"needs_approval\",\n  \"requiresApproval\": {\n    \"prompt\": \"Send 3 emails?\",\n    \"items\": [...],\n    \"resumeToken\": \"eyJ...\"\n  }\n}\n```\n\nTo continue:\n```bash\n$LOBSTER resume --token \"eyJ...\" --approve yes\n```\n\n## Example Pipelines\n\n```bash\n# List recent PRs, filter merged, show as table\n$LOBSTER 'exec --json --shell \"gh pr list --repo owner\u002Frepo --json number,title,state --limit 20\" | where \"state=MERGED\" | table'\n\n# Get data, require approval, then process\n$LOBSTER run --mode tool 'exec --json --shell \"echo [{\\\"id\\\":1},{\\\"id\\\":2}]\" | approve --prompt \"Process these?\" | pick id | json'\n\n# Diff against last run (only emit on change)\n$LOBSTER 'exec --json --shell \"gh pr view 123 --repo o\u002Fr --json state,title\" | diff.last --key \"pr:o\u002Fr#123\" | json'\n```\n\n## Workflow Files (.lobster)\n\nYAML\u002FJSON files with steps, conditions, and approval gates:\n\n```yaml\nname: pr-review-reminder\nsteps:\n  - id: fetch\n    command: gh pr list --repo ${repo} --json number,title,reviewDecision\n  - id: filter\n    command: jq '[.[] | select(.reviewDecision == \"\")]'\n    stdin: $fetch.stdout\n  - id: notify\n    command: echo \"PRs needing review:\" && cat\n    stdin: $filter.stdout\n    approval: required\n```\n\nRun: `$LOBSTER run workflow.lobster --args-json '{\"repo\":\"owner\u002Frepo\"}'`\n\n## Clawdbot Integration\n\nLobster can call Clawdbot tools via `clawd.invoke`:\n\n```bash\n$LOBSTER 'clawd.invoke --tool message --action send --args-json \"{\\\"target\\\":\\\"123\\\",\\\"message\\\":\\\"hello\\\"}\"'\n```\n\nRequires `CLAWD_URL` and `CLAWD_TOKEN` environment variables.\n\n## State Directory\n\nLobster stores state in `~\u002F.lobster\u002Fstate\u002F` by default. Override with `LOBSTER_STATE_DIR`.\n","# Lobster\n\n> **Contribute:** Source code & PRs welcome at [github.com\u002Fguwidoe\u002Flobster-skill](https:\u002F\u002Fgithub.com\u002Fguwidoe\u002Flobster-skill)\n\nWorkflow runtime for AI agents — typed pipelines with approval gates.\n\n## CLI Location\n\n```bash\n# Set alias (adjust path to your install location)\nLOBSTER=\"node \u002Fhome\u002Fmolt\u002Fclawd\u002Ftools\u002Flobster\u002Fbin\u002Flobster.js\"\n\n# Or install globally: npm install -g @clawdbot\u002Flobster\n# Then use: lobster '\u003Cpipeline>'\n```\n\n## Quick Reference\n\n```bash\n# Run pipeline (human mode - pretty output)\n$LOBSTER '\u003Cpipeline>'\n\n# Run pipeline (tool mode - JSON envelope for integration)\n$LOBSTER run --mode tool '\u003Cpipeline>'\n\n# Run workflow file\n$LOBSTER run path\u002Fto\u002Fworkflow.lobster\n\n# Resume after approval\n$LOBSTER resume --token \"\u003Ctoken>\" --approve yes|no\n\n# List commands\u002Fworkflows\n$LOBSTER commands.list\n$LOBSTER workflows.list\n```\n\n## Core Commands\n\n| Command | Purpose |\n|---------|---------|\n| `exec --json --shell \"cmd\"` | Run shell, parse stdout as JSON |\n| `where 'field=value'` | Filter objects |\n| `pick field1,field2` | Project fields |\n| `head --n 5` | Take first N items |\n| `sort --key field --desc` | Sort items |\n| `groupBy --key field` | Group by key |\n| `dedupe --key field` | Remove duplicates |\n| `map --wrap key` | Transform items |\n| `template --text \"{{field}}\"` | Render templates |\n| `approve --prompt \"ok?\"` | **Halt for approval** |\n| `diff.last --key \"mykey\"` | Compare to last run (stateful) |\n| `state.get key` \u002F `state.set key` | Read\u002Fwrite persistent state |\n| `json` \u002F `table` | Render output |\n\n## Built-in Workflows\n\n```bash\n# Monitor PR for changes (stateful - remembers last state)\n$LOBSTER \"workflows.run --name github.pr.monitor --args-json '{\\\"repo\\\":\\\"owner\u002Frepo\\\",\\\"pr\\\":123}'\"\n\n# Monitor PR and emit message only on change\n$LOBSTER \"workflows.run --name github.pr.monitor.notify --args-json '{\\\"repo\\\":\\\"owner\u002Frepo\\\",\\\"pr\\\":123}'\"\n```\n\n## Approval Flow (Tool Mode)\n\nWhen a pipeline hits `approve`, it returns:\n\n```json\n{\n  \"status\": \"needs_approval\",\n  \"requiresApproval\": {\n    \"prompt\": \"Send 3 emails?\",\n    \"items\": [...],\n    \"resumeToken\": \"eyJ...\"\n  }\n}\n```\n\nTo continue:\n```bash\n$LOBSTER resume --token \"eyJ...\" --approve yes\n```\n\n## Example Pipelines\n\n```bash\n# List recent PRs, filter merged, show as table\n$LOBSTER 'exec --json --shell \"gh pr list --repo owner\u002Frepo --json number,title,state --limit 20\" | where \"state=MERGED\" | table'\n\n# Get data, require approval, then process\n$LOBSTER run --mode tool 'exec --json --shell \"echo [{\\\"id\\\":1},{\\\"id\\\":2}]\" | approve --prompt \"Process these?\" | pick id | json'\n\n# Diff against last run (only emit on change)\n$LOBSTER 'exec --json --shell \"gh pr view 123 --repo o\u002Fr --json state,title\" | diff.last --key \"pr:o\u002Fr#123\" | json'\n```\n\n## Workflow Files (.lobster)\n\nYAML\u002FJSON files with steps, conditions, and approval gates:\n\n```yaml\nname: pr-review-reminder\nsteps:\n  - id: fetch\n    command: gh pr list --repo ${repo} --json number,title,reviewDecision\n  - id: filter\n    command: jq '[.[] | select(.reviewDecision == \"\")]'\n    stdin: $fetch.stdout\n  - id: notify\n    command: echo \"PRs needing review:\" && cat\n    stdin: $filter.stdout\n    approval: required\n```\n\nRun: `$LOBSTER run workflow.lobster --args-json '{\"repo\":\"owner\u002Frepo\"}'`\n\n## Clawdbot Integration\n\nLobster can call Clawdbot tools via `clawd.invoke`:\n\n```bash\n$LOBSTER 'clawd.invoke --tool message --action send --args-json \"{\\\"target\\\":\\\"123\\\",\\\"message\\\":\\\"hello\\\"}\"'\n```\n\nRequires `CLAWD_URL` and `CLAWD_TOKEN` environment variables.\n\n## State Directory\n\nLobster stores state in `~\u002F.lobster\u002Fstate\u002F` by default. Override with `LOBSTER_STATE_DIR`.\n",{"name":5,"description":7},"main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","数据与分析\u002Flobster",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":51,"prompt":61,"zipAvailable":62},[52,55,58],{"tool":53,"command":54},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill lobster",{"tool":56,"command":57},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill lobster",{"tool":59,"command":60},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill lobster","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F数据与分析\u002Flobster\u002FSKILL.md",true,[64],{"path":65,"resourceType":66,"resourceTypeDesc":67,"sizeBytes":68,"sourceHtmlUrl":69},"_meta.json","REFERENCE","参考文档",267,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F数据与分析\u002Flobster\u002F_meta.json",[71,94,130,141,151,180],{"skillNo":72,"name":73,"nameZh":6,"description":74,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":75,"categories":76,"keywords":77,"publishedAt":37},"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",[],[73,78,79,80,81,82,29,83,84,85,86,87,88,89,90,91,92,93],"safe","ethereum","defi","Optimization","user","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":95,"name":96,"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":97,"categories":98,"keywords":112,"publishedAt":37},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[99,104,107],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":105,"categoryName":106,"taxonomyType":102,"taxonomyTypeDesc":103},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":108,"categoryName":109,"taxonomyType":110,"taxonomyTypeDesc":111},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[113,114,115,116,117,118,119,80,120,83,121,122,123,124,125,126,127,128,129],"api","zerion api","zerion","MCP","mcp server","server","blockchain","transactions","crypto wallet","crypto","evm","solana","query","across","positions","token","prices",{"skillNo":131,"name":132,"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":133,"categories":134,"keywords":138,"publishedAt":37},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[135,136,137],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},{"categoryNo":105,"categoryName":106,"taxonomyType":102,"taxonomyTypeDesc":103},{"categoryNo":108,"categoryName":109,"taxonomyType":110,"taxonomyTypeDesc":111},[113,139,140,114,115,116,117,118,119,80,120,83,122,123,124,125,126,127,128,129],"api skill","zerion api skill",{"skillNo":142,"name":143,"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":144,"categories":145,"keywords":149,"publishedAt":37},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[146,147,148],{"categoryNo":100,"categoryName":101,"taxonomyType":102,"taxonomyTypeDesc":103},{"categoryNo":105,"categoryName":106,"taxonomyType":102,"taxonomyTypeDesc":103},{"categoryNo":108,"categoryName":109,"taxonomyType":110,"taxonomyTypeDesc":111},[116,113,150,114,115,117,118,80,120,83,121,122,123,124,125,126,127,128,129],"zerion api mcp",{"skillNo":152,"name":153,"nameZh":6,"description":154,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":155,"categories":156,"keywords":160,"publishedAt":37},"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",[157],{"categoryNo":158,"categoryName":159,"taxonomyType":110,"taxonomyTypeDesc":111},"01JBSEEDCAT000000000000040","财务",[161,162,163,164,165,166,167,168,169,170,171,172,173,174,175,176,177,178,179,21],"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":181,"name":182,"nameZh":6,"description":183,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":184,"categories":185,"keywords":187,"publishedAt":37},"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",[186],{"categoryNo":158,"categoryName":159,"taxonomyType":110,"taxonomyTypeDesc":111},[161,162,164,188,189,190,191,192,193,172,194,195,196,197,198,199,200,201,129,179],"cli","homebrew","find","check","brew","up","local","get","stock","link","trending","sf","quotes","ln"]