[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MQJRG74FAN1DPTHJBCQ2BT":3,"skill-same:01M6MQJRG74FAN1DPTHJBCQ2BT":107},{"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":43,"linkOnly":44,"markdownContent":45,"markdownBody":46,"frontMatter":47,"refName":57,"commitSha":58,"skillDirectory":59,"forksCount":60,"repositoryHtmlUrl":61,"repositoryHomepageUrl":6,"ownerHtmlUrl":62,"ownerBlogUrl":6,"ownerDescription":63,"updatedAt":64,"install":65,"resources":78},"01M6MQJRG74FAN1DPTHJBCQ2BT","lmstudio-subagents",null,"Reduces token usage from paid providers by offloading work to local LM Studio models. Use when: (1) Cutting costs—use local models for summarization, extraction, classification, rewriting, first-pass review, brainstorming when quality suffices, (2) Avoiding paid API calls for high-volume or repetitive tasks, (3) No extra model configuration—JIT loading and REST API work with existing LM Studio setup, (4) Local-only or privacy-sensitive work. Requires LM Studio 0.4+ with server (default :1234). No CLI required.","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\u002FAPIs与集成\u002Flm-studio-subagents\u002FSKILL.md",[17],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",[23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42],"lmstudio subagents","subagents","lm studio","review","studio","loading","token","local","volume","default","only","extra","work","model","api","Providers","Local Models","server","tasks","cli","2026-11-10 10:12:30",false,"---\nname: lmstudio-subagents\ndescription: \"Reduces token usage from paid providers by offloading work to local LM Studio models. Use when: (1) Cutting costs—use local models for summarization, extraction, classification, rewriting, first-pass review, brainstorming when quality suffices, (2) Avoiding paid API calls for high-volume or repetitive tasks, (3) No extra model configuration—JIT loading and REST API work with existing LM Studio setup, (4) Local-only or privacy-sensitive work. Requires LM Studio 0.4+ with server (default :1234). No CLI required.\"\nmetadata: {\"openclaw\":{\"requires\":{},\"tags\":[\"local-model\",\"local-llm\",\"lm-studio\",\"token-management\",\"privacy\",\"subagents\"]}}\nlicense: MIT\n---\n\n# LM Studio Models\n\nOffload tasks to local models when quality suffices. Base URL: http:\u002F\u002F127.0.0.1:1234. Auth: `Authorization: Bearer lmstudio`. instance_id = `loaded_instances[].id` (same model can have multiple, e.g. `key` and `key:2`).\n\n## Key Terms\n\n- **model**: From GET models key; use in chat and optional load.\n- **lm_studio_api_url**: Default http:\u002F\u002F127.0.0.1:1234 (paths \u002Fapi\u002Fv1\u002F...).\n- **response_id** \u002F **previous_response_id**: Chat returns response_id; pass as previous_response_id for stateful.\n- **instance_id**: For unload, use only the value from GET \u002Fapi\u002Fv1\u002Fmodels for that model: each `loaded_instances[].id`. Do not assume it equals the model key; with multiple instances ids can be like key:2. LM Studio docs: List (loaded_instances[].id), Unload (instance_id).\n\nTrigger in frontmatter; below = implementation.\n\n## Prerequisites\n\nLM Studio 0.4+, server :1234, models on disk; load\u002Funload via API (JIT optional); Node for script (curl ok).\n\n## Quick start\n\nMinimal path: list models, then one chat. Replace `\u003Cmodel>` with a key from GET \u002Fapi\u002Fv1\u002Fmodels and `\u003Ctask>` with the task text.\n\n```bash\ncurl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.5 --max-output-tokens=200\n```\n\nStateful multi-turn: pass `--previous-response-id=\u003Cid>` from the prior script output. Or use `--stateful` to persist response_id automatically. Optional `--log \u003Cpath>` for request\u002Fresponse.\n\n```bash\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> 'First turn...' --previous-response-id=$ID1\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> 'Second turn...' --previous-response-id=$ID2\n```\n\n## Complete Workflow\n\n### Step 0: Preflight\n\nGET \u003Cbase>\u002Fapi\u002Fv1\u002Fmodels; non-200 or connection error = server not ready.\n\n```bash\nexec command:\"curl -s -o \u002Fdev\u002Fnull -w '%{http_code}' -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\n```\n\n### Step 1: List Models and Select\n\nGET \u002Fapi\u002Fv1\u002Fmodels to list models. Parse each entry: key, type, loaded_instances, max_context_length, capabilities. If a model already has loaded_instances.length > 0 and fits the task, skip to Step 5; otherwise pick a key for chat (and optional load in Step 3). Choose by task: vision -> capabilities.vision; embedding -> type=embedding; context -> max_context_length. Prefer already-loaded; prefer smaller for speed, larger for reasoning. Note loaded_instances[].id for optional unload later.\n\n**Example — list models:**\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\n```\n\nParse models[] (key, type, loaded_instances, max_context_length, capabilities, params_string). If a model has loaded_instances.length > 0 and fits task, skip to Step 5; else pick key for chat (and optional load). Note loaded_instances[].id for optional unload.\n\n### Step 2: Model Selection\n\nPick key from GET response; use as model in chat (optional load). Constraints: vision -> capabilities.vision; embedding -> type=embedding; context -> max_context_length. Prefer loaded (loaded_instances non-empty), smaller for speed\u002Flarger for reasoning; fallback primary. If unsure, use the first loaded instance for that key or the smallest loaded model that fits the task. Optional POST load; else JIT on first chat.\n\n### Step 3: Load Model (optional)\n\nOptional: POST \u002Fapi\u002Fv1\u002Fmodels\u002Fload { model, context_length?, ... }. Or run scripts\u002Fload.mjs &lt;model&gt;. JIT: first chat loads; explicit load only for specific options.\n\n### Step 4: Verify Loaded (optional)\n\nIf explicit load: GET models, confirm loaded_instances. If JIT: no verify; first chat returns model_instance_id, stats.model_load_time_seconds.\n\n### Step 5: Call API\n\nFrom the skill folder: node scripts\u002Flmstudio-api.mjs &lt;model&gt; '&lt;task&gt;' [options].\n\n```bash\nexec command:\"node scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.7 --max-output-tokens=2000\"\n```\n\nStateful: add --previous-response-id=\u003Cresponse_id>. Curl: POST \u003Cbase>\u002Fapi\u002Fv1\u002Fchat, body model, input, store, temperature, max_output_tokens; optional previous_response_id. Parse: output (type message) -> content; response_id, model_instance_id, stats. Script outputs content, model_instance_id, response_id, usage.\n\n### Step 6: Unload (optional)\n\nFor the model key you used: GET \u002Fapi\u002Fv1\u002Fmodels, then for **each** `loaded_instances[].id` for that model, POST \u002Fapi\u002Fv1\u002Fmodels\u002Funload with body `{\"instance_id\": \"\u003Cthat id>\"}`. Use the id from the response only (do not send the model key unless it exactly equals that id). Or run scripts\u002Funload.mjs &lt;model_key&gt; (script does GET then unloads each instance id). Optional --unload-after (default off); use --keep to leave loaded. Unload only that model's instances. JIT+TTL auto-unload; explicit when needed.\n\n```bash\n# One unload per instance_id; repeat for each id in that model's loaded_instances\nexec command:\"curl -s -X POST http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\u002Funload -H 'Content-Type: application\u002Fjson' -H 'Authorization: Bearer lmstudio' -d '{\\\"instance_id\\\": \\\"\u003Cinstance_id>\\\"}'\"\n```\n\n### Step 7: Verify unload (optional)\n\nAfter unloading, confirm no instances remain for that model key. Run the jq check below; result must be `0`. If non-zero, unload the remaining instance_id(s) from that model and re-run the check. Do not infer from \"model object exists\"; the object still exists with an empty `loaded_instances` array.\n\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels | jq '.models[]|select(.key==\\\"\u003Cmodel_key>\\\")|.loaded_instances|length'\"\n```\n\nExpect output `0`. If not, unload remaining instance_ids and re-run.\n\n## Error Handling\n\n- Script retries on transient failure (2-3 attempts with backoff).\n- Model not found -> pick another model from GET response.\n- API\u002Fserver errors -> GET models, check URL.\n- Invalid output -> retry.\n- Memory -> unload or smaller model.\n- Unload fails -> instance_id must be exactly from GET \u002Fapi\u002Fv1\u002Fmodels for that model's loaded_instances[].id (not the model key unless it matches).\n\n## Copy-paste\n\nReplace `\u003Cmodel>` with a key from GET \u002Fapi\u002Fv1\u002Fmodels and `\u003Ctask>` with the task text. Optional unload per Step 6 (instance_id from GET models for that key).\n\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\nexec command:\"node scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.7 --max-output-tokens=2000\"\n```\n\n## LM Studio API Details\n\nHelper\u002FAPI: see Step 5. Output: content, model_instance_id, response_id, usage. Auth: Bearer lmstudio. List GET \u002Fapi\u002Fv1\u002Fmodels. Load POST \u002Fapi\u002Fv1\u002Fmodels\u002Fload (optional). Unload POST \u002Fapi\u002Fv1\u002Fmodels\u002Funload { instance_id }.\n\n## Scripts\n\nlmstudio-api.mjs: chat; options --stateful, --unload-after, --keep, --log &lt;path&gt;, --previous-response-id, --temperature, --max-output-tokens. load.mjs: load model by key. unload.mjs: unload by model key (all instances). test.mjs: smoke test (load, chat, unload one model).\n\n## Notes\n\n- LM Studio 0.4+.\n- JIT (first chat loads; model_load_time_seconds in stats); stateful (response_id \u002F previous_response_id).\n","# LM Studio Models\n\nOffload tasks to local models when quality suffices. Base URL: http:\u002F\u002F127.0.0.1:1234. Auth: `Authorization: Bearer lmstudio`. instance_id = `loaded_instances[].id` (same model can have multiple, e.g. `key` and `key:2`).\n\n## Key Terms\n\n- **model**: From GET models key; use in chat and optional load.\n- **lm_studio_api_url**: Default http:\u002F\u002F127.0.0.1:1234 (paths \u002Fapi\u002Fv1\u002F...).\n- **response_id** \u002F **previous_response_id**: Chat returns response_id; pass as previous_response_id for stateful.\n- **instance_id**: For unload, use only the value from GET \u002Fapi\u002Fv1\u002Fmodels for that model: each `loaded_instances[].id`. Do not assume it equals the model key; with multiple instances ids can be like key:2. LM Studio docs: List (loaded_instances[].id), Unload (instance_id).\n\nTrigger in frontmatter; below = implementation.\n\n## Prerequisites\n\nLM Studio 0.4+, server :1234, models on disk; load\u002Funload via API (JIT optional); Node for script (curl ok).\n\n## Quick start\n\nMinimal path: list models, then one chat. Replace `\u003Cmodel>` with a key from GET \u002Fapi\u002Fv1\u002Fmodels and `\u003Ctask>` with the task text.\n\n```bash\ncurl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.5 --max-output-tokens=200\n```\n\nStateful multi-turn: pass `--previous-response-id=\u003Cid>` from the prior script output. Or use `--stateful` to persist response_id automatically. Optional `--log \u003Cpath>` for request\u002Fresponse.\n\n```bash\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> 'First turn...' --previous-response-id=$ID1\nnode scripts\u002Flmstudio-api.mjs \u003Cmodel> 'Second turn...' --previous-response-id=$ID2\n```\n\n## Complete Workflow\n\n### Step 0: Preflight\n\nGET \u003Cbase>\u002Fapi\u002Fv1\u002Fmodels; non-200 or connection error = server not ready.\n\n```bash\nexec command:\"curl -s -o \u002Fdev\u002Fnull -w '%{http_code}' -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\n```\n\n### Step 1: List Models and Select\n\nGET \u002Fapi\u002Fv1\u002Fmodels to list models. Parse each entry: key, type, loaded_instances, max_context_length, capabilities. If a model already has loaded_instances.length > 0 and fits the task, skip to Step 5; otherwise pick a key for chat (and optional load in Step 3). Choose by task: vision -> capabilities.vision; embedding -> type=embedding; context -> max_context_length. Prefer already-loaded; prefer smaller for speed, larger for reasoning. Note loaded_instances[].id for optional unload later.\n\n**Example — list models:**\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\n```\n\nParse models[] (key, type, loaded_instances, max_context_length, capabilities, params_string). If a model has loaded_instances.length > 0 and fits task, skip to Step 5; else pick key for chat (and optional load). Note loaded_instances[].id for optional unload.\n\n### Step 2: Model Selection\n\nPick key from GET response; use as model in chat (optional load). Constraints: vision -> capabilities.vision; embedding -> type=embedding; context -> max_context_length. Prefer loaded (loaded_instances non-empty), smaller for speed\u002Flarger for reasoning; fallback primary. If unsure, use the first loaded instance for that key or the smallest loaded model that fits the task. Optional POST load; else JIT on first chat.\n\n### Step 3: Load Model (optional)\n\nOptional: POST \u002Fapi\u002Fv1\u002Fmodels\u002Fload { model, context_length?, ... }. Or run scripts\u002Fload.mjs &lt;model&gt;. JIT: first chat loads; explicit load only for specific options.\n\n### Step 4: Verify Loaded (optional)\n\nIf explicit load: GET models, confirm loaded_instances. If JIT: no verify; first chat returns model_instance_id, stats.model_load_time_seconds.\n\n### Step 5: Call API\n\nFrom the skill folder: node scripts\u002Flmstudio-api.mjs &lt;model&gt; '&lt;task&gt;' [options].\n\n```bash\nexec command:\"node scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.7 --max-output-tokens=2000\"\n```\n\nStateful: add --previous-response-id=\u003Cresponse_id>. Curl: POST \u003Cbase>\u002Fapi\u002Fv1\u002Fchat, body model, input, store, temperature, max_output_tokens; optional previous_response_id. Parse: output (type message) -> content; response_id, model_instance_id, stats. Script outputs content, model_instance_id, response_id, usage.\n\n### Step 6: Unload (optional)\n\nFor the model key you used: GET \u002Fapi\u002Fv1\u002Fmodels, then for **each** `loaded_instances[].id` for that model, POST \u002Fapi\u002Fv1\u002Fmodels\u002Funload with body `{\"instance_id\": \"\u003Cthat id>\"}`. Use the id from the response only (do not send the model key unless it exactly equals that id). Or run scripts\u002Funload.mjs &lt;model_key&gt; (script does GET then unloads each instance id). Optional --unload-after (default off); use --keep to leave loaded. Unload only that model's instances. JIT+TTL auto-unload; explicit when needed.\n\n```bash\n# One unload per instance_id; repeat for each id in that model's loaded_instances\nexec command:\"curl -s -X POST http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\u002Funload -H 'Content-Type: application\u002Fjson' -H 'Authorization: Bearer lmstudio' -d '{\\\"instance_id\\\": \\\"\u003Cinstance_id>\\\"}'\"\n```\n\n### Step 7: Verify unload (optional)\n\nAfter unloading, confirm no instances remain for that model key. Run the jq check below; result must be `0`. If non-zero, unload the remaining instance_id(s) from that model and re-run the check. Do not infer from \"model object exists\"; the object still exists with an empty `loaded_instances` array.\n\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels | jq '.models[]|select(.key==\\\"\u003Cmodel_key>\\\")|.loaded_instances|length'\"\n```\n\nExpect output `0`. If not, unload remaining instance_ids and re-run.\n\n## Error Handling\n\n- Script retries on transient failure (2-3 attempts with backoff).\n- Model not found -> pick another model from GET response.\n- API\u002Fserver errors -> GET models, check URL.\n- Invalid output -> retry.\n- Memory -> unload or smaller model.\n- Unload fails -> instance_id must be exactly from GET \u002Fapi\u002Fv1\u002Fmodels for that model's loaded_instances[].id (not the model key unless it matches).\n\n## Copy-paste\n\nReplace `\u003Cmodel>` with a key from GET \u002Fapi\u002Fv1\u002Fmodels and `\u003Ctask>` with the task text. Optional unload per Step 6 (instance_id from GET models for that key).\n\n```bash\nexec command:\"curl -s -H 'Authorization: Bearer lmstudio' http:\u002F\u002F127.0.0.1:1234\u002Fapi\u002Fv1\u002Fmodels\"\nexec command:\"node scripts\u002Flmstudio-api.mjs \u003Cmodel> '\u003Ctask>' --temperature=0.7 --max-output-tokens=2000\"\n```\n\n## LM Studio API Details\n\nHelper\u002FAPI: see Step 5. Output: content, model_instance_id, response_id, usage. Auth: Bearer lmstudio. List GET \u002Fapi\u002Fv1\u002Fmodels. Load POST \u002Fapi\u002Fv1\u002Fmodels\u002Fload (optional). Unload POST \u002Fapi\u002Fv1\u002Fmodels\u002Funload { instance_id }.\n\n## Scripts\n\nlmstudio-api.mjs: chat; options --stateful, --unload-after, --keep, --log &lt;path&gt;, --previous-response-id, --temperature, --max-output-tokens. load.mjs: load model by key. unload.mjs: unload by model key (all instances). test.mjs: smoke test (load, chat, unload one model).\n\n## Notes\n\n- LM Studio 0.4+.\n- JIT (first chat loads; model_load_time_seconds in stats); stateful (response_id \u002F previous_response_id).\n",{"name":5,"license":14,"metadata":48,"description":7},{"openclaw":49},{"tags":50,"requires":56},[51,52,53,54,55,24],"local-model","local-llm","lm-studio","token-management","privacy",{},"main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","APIs与集成\u002Flm-studio-subagents",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":66,"prompt":76,"zipAvailable":77},[67,70,73],{"tool":68,"command":69},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill lmstudio-subagents",{"tool":71,"command":72},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill lmstudio-subagents",{"tool":74,"command":75},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill lmstudio-subagents","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002FSKILL.md",true,[79,85,89,95,99,103],{"path":80,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":83,"sourceHtmlUrl":84},"_meta.json","REFERENCE","参考文档",842,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002F_meta.json",{"path":86,"resourceType":81,"resourceTypeDesc":82,"sizeBytes":87,"sourceHtmlUrl":88},"README.md",3296,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002FREADME.md",{"path":90,"resourceType":91,"resourceTypeDesc":92,"sizeBytes":93,"sourceHtmlUrl":94},"scripts\u002Flmstudio-api.mjs","SCRIPT","脚本",7347,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002Fscripts\u002Flmstudio-api.mjs",{"path":96,"resourceType":91,"resourceTypeDesc":92,"sizeBytes":97,"sourceHtmlUrl":98},"scripts\u002Fload.mjs",1258,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002Fscripts\u002Fload.mjs",{"path":100,"resourceType":91,"resourceTypeDesc":92,"sizeBytes":101,"sourceHtmlUrl":102},"scripts\u002Ftest.mjs",3097,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002Fscripts\u002Ftest.mjs",{"path":104,"resourceType":91,"resourceTypeDesc":92,"sizeBytes":105,"sourceHtmlUrl":106},"scripts\u002Funload.mjs",2178,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Flm-studio-subagents\u002Fscripts\u002Funload.mjs",[108,132,161,172,182,212],{"skillNo":109,"name":110,"nameZh":6,"description":111,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":112,"categories":113,"keywords":114,"publishedAt":43},"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",[],[110,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131],"safe","ethereum","defi","Optimization","user","use","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":133,"name":134,"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":135,"categories":136,"keywords":146,"publishedAt":43},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[137,138,141],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":139,"categoryName":140,"taxonomyType":20,"taxonomyTypeDesc":21},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[37,147,148,149,150,40,151,117,152,121,153,154,155,156,157,158,159,29,160],"zerion api","zerion","MCP","mcp server","blockchain","transactions","crypto wallet","crypto","evm","solana","query","across","positions","prices",{"skillNo":162,"name":163,"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":164,"categories":165,"keywords":169,"publishedAt":43},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[166,167,168],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":139,"categoryName":140,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},[37,170,171,147,148,149,150,40,151,117,152,121,154,155,156,157,158,159,29,160],"api skill","zerion api skill",{"skillNo":173,"name":174,"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":175,"categories":176,"keywords":180,"publishedAt":43},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[177,178,179],{"categoryNo":18,"categoryName":19,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":139,"categoryName":140,"taxonomyType":20,"taxonomyTypeDesc":21},{"categoryNo":142,"categoryName":143,"taxonomyType":144,"taxonomyTypeDesc":145},[149,37,181,147,148,150,40,117,152,121,153,154,155,156,157,158,159,29,160],"zerion api mcp",{"skillNo":183,"name":184,"nameZh":6,"description":185,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":186,"categories":187,"keywords":191,"publishedAt":43},"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",[188],{"categoryNo":189,"categoryName":190,"taxonomyType":144,"taxonomyTypeDesc":145},"01JBSEEDCAT000000000000040","财务",[192,193,194,195,196,197,198,199,200,201,202,203,204,205,206,207,208,209,210,211],"finance","yahoo finance","forex","yahoo","yahoo finance forex","github","https","sentiment","real-time","python3","install","Market","usd","news","time","currency","gbp","pip","market data","for",{"skillNo":213,"name":214,"nameZh":6,"description":215,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":216,"categories":217,"keywords":219,"publishedAt":43},"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",[218],{"categoryNo":189,"categoryName":190,"taxonomyType":144,"taxonomyTypeDesc":145},[192,193,195,42,220,221,222,223,224,203,30,225,226,227,228,229,230,231,160,210],"homebrew","find","check","brew","up","get","stock","link","trending","sf","quotes","ln"]