[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill:01M6MQ04H3XRYDHPRJTCBCZ90P":3,"skill-same:01M6MQ04H3XRYDHPRJTCBCZ90P":81},{"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":38,"linkOnly":39,"markdownContent":40,"markdownBody":41,"frontMatter":42,"refName":43,"commitSha":44,"skillDirectory":45,"forksCount":46,"repositoryHtmlUrl":47,"repositoryHomepageUrl":6,"ownerHtmlUrl":48,"ownerBlogUrl":6,"ownerDescription":49,"updatedAt":50,"install":51,"resources":64},"01M6MQ04H3XRYDHPRJTCBCZ90P","azure-proxy",null,"Enable Azure OpenAI integration with OpenClaw via a lightweight local proxy. Use when configuring Azure OpenAI as a model provider, when encountering 404 errors with Azure OpenAI in OpenClaw, or when needing to use Azure credits (e.g. Visual Studio subscription) with OpenClaw subagents. Solves the api-version query parameter issue that prevents direct Azure OpenAI integration.","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与集成\u002Fazure-proxy\u002FSKILL.md",[],[18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37],"proxy","azure proxy","azure","provider","studio","errors","with","via","as","local","visual","query","issue","version","use","model","api","integration","openai","azure openai","2026-11-10 10:12:30",false,"---\nname: azure-proxy\ndescription: Enable Azure OpenAI integration with OpenClaw via a lightweight local proxy. Use when configuring Azure OpenAI as a model provider, when encountering 404 errors with Azure OpenAI in OpenClaw, or when needing to use Azure credits (e.g. Visual Studio subscription) with OpenClaw subagents. Solves the api-version query parameter issue that prevents direct Azure OpenAI integration.\n---\n\n# Azure OpenAI Proxy for OpenClaw\n\nA lightweight Node.js proxy that bridges Azure OpenAI with OpenClaw.\n\n## The Problem\n\nOpenClaw constructs API URLs like this:\n```javascript\nconst endpoint = `${baseUrl}\u002Fchat\u002Fcompletions`;\n```\n\nAzure OpenAI requires:\n```\nhttps:\u002F\u002F{resource}.openai.azure.com\u002Fopenai\u002Fdeployments\u002F{model}\u002Fchat\u002Fcompletions?api-version=2025-01-01-preview\n```\n\nWhen `api-version` is in the baseUrl, OpenClaw's path append breaks it.\n\n## Quick Setup\n\n### 1. Configure and Run the Proxy\n\n```bash\n# Set your Azure details\nexport AZURE_OPENAI_ENDPOINT=\"your-resource.openai.azure.com\"\nexport AZURE_OPENAI_DEPLOYMENT=\"gpt-4o\"\nexport AZURE_OPENAI_API_VERSION=\"2025-01-01-preview\"\n\n# Run the proxy\nnode scripts\u002Fserver.js\n```\n\n### 2. Configure OpenClaw Provider\n\nAdd to `~\u002F.openclaw\u002Fopenclaw.json`:\n\n```json\n{\n  \"models\": {\n    \"providers\": {\n      \"azure-gpt4o\": {\n        \"baseUrl\": \"http:\u002F\u002F127.0.0.1:18790\",\n        \"apiKey\": \"YOUR_AZURE_API_KEY\",\n        \"api\": \"openai-completions\",\n        \"authHeader\": false,\n        \"headers\": {\n          \"api-key\": \"YOUR_AZURE_API_KEY\"\n        },\n        \"models\": [\n          { \"id\": \"gpt-4o\", \"name\": \"GPT-4o (Azure)\" }\n        ]\n      }\n    }\n  },\n  \"agents\": {\n    \"defaults\": {\n      \"models\": {\n        \"azure-gpt4o\u002Fgpt-4o\": {}\n      }\n    }\n  }\n}\n```\n\n**Important:** Set `authHeader: false` — Azure uses `api-key` header, not Bearer tokens.\n\n### 3. (Optional) Use for Subagents\n\nSave Azure credits by routing automated tasks through Azure:\n\n```json\n{\n  \"agents\": {\n    \"defaults\": {\n      \"subagents\": {\n        \"model\": \"azure-gpt4o\u002Fgpt-4o\"\n      }\n    }\n  }\n}\n```\n\n## Run as systemd Service\n\nCopy the template and configure:\n\n```bash\nmkdir -p ~\u002F.config\u002Fsystemd\u002Fuser\ncp scripts\u002Fazure-proxy.service ~\u002F.config\u002Fsystemd\u002Fuser\u002F\n\n# Edit the service file with your Azure details\nnano ~\u002F.config\u002Fsystemd\u002Fuser\u002Fazure-proxy.service\n\n# Enable and start\nsystemctl --user daemon-reload\nsystemctl --user enable azure-proxy\nsystemctl --user start azure-proxy\n```\n\n## Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `AZURE_PROXY_PORT` | `18790` | Local proxy port |\n| `AZURE_PROXY_BIND` | `127.0.0.1` | Bind address |\n| `AZURE_OPENAI_ENDPOINT` | — | Azure resource hostname |\n| `AZURE_OPENAI_DEPLOYMENT` | `gpt-4o` | Deployment name |\n| `AZURE_OPENAI_API_VERSION` | `2025-01-01-preview` | API version |\n\n## Health Check\n\n```bash\ncurl http:\u002F\u002Flocalhost:18790\u002Fhealth\n# {\"status\":\"ok\",\"deployment\":\"gpt-4o\"}\n```\n\n## Troubleshooting\n\n**404 Resource not found:** Check endpoint hostname and deployment name match Azure Portal.\n\n**401 Unauthorized:** API key is wrong or expired.\n\n**Content Filter Errors:** Azure has aggressive content filtering — some prompts that work on OpenAI may get blocked.\n","# Azure OpenAI Proxy for OpenClaw\n\nA lightweight Node.js proxy that bridges Azure OpenAI with OpenClaw.\n\n## The Problem\n\nOpenClaw constructs API URLs like this:\n```javascript\nconst endpoint = `${baseUrl}\u002Fchat\u002Fcompletions`;\n```\n\nAzure OpenAI requires:\n```\nhttps:\u002F\u002F{resource}.openai.azure.com\u002Fopenai\u002Fdeployments\u002F{model}\u002Fchat\u002Fcompletions?api-version=2025-01-01-preview\n```\n\nWhen `api-version` is in the baseUrl, OpenClaw's path append breaks it.\n\n## Quick Setup\n\n### 1. Configure and Run the Proxy\n\n```bash\n# Set your Azure details\nexport AZURE_OPENAI_ENDPOINT=\"your-resource.openai.azure.com\"\nexport AZURE_OPENAI_DEPLOYMENT=\"gpt-4o\"\nexport AZURE_OPENAI_API_VERSION=\"2025-01-01-preview\"\n\n# Run the proxy\nnode scripts\u002Fserver.js\n```\n\n### 2. Configure OpenClaw Provider\n\nAdd to `~\u002F.openclaw\u002Fopenclaw.json`:\n\n```json\n{\n  \"models\": {\n    \"providers\": {\n      \"azure-gpt4o\": {\n        \"baseUrl\": \"http:\u002F\u002F127.0.0.1:18790\",\n        \"apiKey\": \"YOUR_AZURE_API_KEY\",\n        \"api\": \"openai-completions\",\n        \"authHeader\": false,\n        \"headers\": {\n          \"api-key\": \"YOUR_AZURE_API_KEY\"\n        },\n        \"models\": [\n          { \"id\": \"gpt-4o\", \"name\": \"GPT-4o (Azure)\" }\n        ]\n      }\n    }\n  },\n  \"agents\": {\n    \"defaults\": {\n      \"models\": {\n        \"azure-gpt4o\u002Fgpt-4o\": {}\n      }\n    }\n  }\n}\n```\n\n**Important:** Set `authHeader: false` — Azure uses `api-key` header, not Bearer tokens.\n\n### 3. (Optional) Use for Subagents\n\nSave Azure credits by routing automated tasks through Azure:\n\n```json\n{\n  \"agents\": {\n    \"defaults\": {\n      \"subagents\": {\n        \"model\": \"azure-gpt4o\u002Fgpt-4o\"\n      }\n    }\n  }\n}\n```\n\n## Run as systemd Service\n\nCopy the template and configure:\n\n```bash\nmkdir -p ~\u002F.config\u002Fsystemd\u002Fuser\ncp scripts\u002Fazure-proxy.service ~\u002F.config\u002Fsystemd\u002Fuser\u002F\n\n# Edit the service file with your Azure details\nnano ~\u002F.config\u002Fsystemd\u002Fuser\u002Fazure-proxy.service\n\n# Enable and start\nsystemctl --user daemon-reload\nsystemctl --user enable azure-proxy\nsystemctl --user start azure-proxy\n```\n\n## Environment Variables\n\n| Variable | Default | Description |\n|----------|---------|-------------|\n| `AZURE_PROXY_PORT` | `18790` | Local proxy port |\n| `AZURE_PROXY_BIND` | `127.0.0.1` | Bind address |\n| `AZURE_OPENAI_ENDPOINT` | — | Azure resource hostname |\n| `AZURE_OPENAI_DEPLOYMENT` | `gpt-4o` | Deployment name |\n| `AZURE_OPENAI_API_VERSION` | `2025-01-01-preview` | API version |\n\n## Health Check\n\n```bash\ncurl http:\u002F\u002Flocalhost:18790\u002Fhealth\n# {\"status\":\"ok\",\"deployment\":\"gpt-4o\"}\n```\n\n## Troubleshooting\n\n**404 Resource not found:** Check endpoint hostname and deployment name match Azure Portal.\n\n**401 Unauthorized:** API key is wrong or expired.\n\n**Content Filter Errors:** Azure has aggressive content filtering — some prompts that work on OpenAI may get blocked.\n",{"name":5,"description":7},"main","f4cb2d49f7667e79ef7804f50396d5aaffdf1f56","APIs与集成\u002Fazure-proxy",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":52,"prompt":62,"zipAvailable":63},[53,56,59],{"tool":54,"command":55},"npx","npx skills add Kernel8901\u002Fai-agent-skills-classification --skill azure-proxy",{"tool":57,"command":58},"bunx","bunx skills add Kernel8901\u002Fai-agent-skills-classification --skill azure-proxy",{"tool":60,"command":61},"pnpm","pnpm dlx skills add Kernel8901\u002Fai-agent-skills-classification --skill azure-proxy","安装技能，技能地址：https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Fazure-proxy\u002FSKILL.md",true,[65,71,75],{"path":66,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":69,"sourceHtmlUrl":70},"_meta.json","REFERENCE","参考文档",295,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Fazure-proxy\u002F_meta.json",{"path":72,"resourceType":67,"resourceTypeDesc":68,"sizeBytes":73,"sourceHtmlUrl":74},"README.md",989,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Fazure-proxy\u002FREADME.md",{"path":76,"resourceType":77,"resourceTypeDesc":78,"sizeBytes":79,"sourceHtmlUrl":80},"scripts\u002Fserver.js","SCRIPT","脚本",4899,"https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002FAPIs与集成\u002Fazure-proxy\u002Fscripts\u002Fserver.js",[82,105,139,150,160,190],{"skillNo":83,"name":84,"nameZh":6,"description":85,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":86,"categories":87,"keywords":88,"publishedAt":38},"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",[],[84,89,90,91,92,93,32,94,95,96,97,98,99,100,101,102,103,104],"safe","ethereum","defi","Optimization","user","Wallet","base","deposit","withdraw","yield","arbitrum","non-custodial","passive","defi yield","earn","yield optimization",{"skillNo":106,"name":107,"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":108,"categories":109,"keywords":123,"publishedAt":38},"01M6Q5R337B5JSNER4P4YS03TN","zerion-api","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api\u002FSKILL.md",[110,115,118],{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000010","后端与接口","SCENARIO","使用场景",{"categoryNo":116,"categoryName":117,"taxonomyType":113,"taxonomyTypeDesc":114},"01JBSEEDCAT000000000000023","Skill与智能体开发",{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000030","开发工程师","PROFESSION","适用职业",[34,124,125,126,127,128,129,91,130,94,131,132,133,134,29,135,136,137,138],"zerion api","zerion","MCP","mcp server","server","blockchain","transactions","crypto wallet","crypto","evm","solana","across","positions","token","prices",{"skillNo":140,"name":141,"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":142,"categories":143,"keywords":147,"publishedAt":38},"01M6Q5QZFYTDAZMZ27BN5VZXAR","zerion-api-skill","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-skill\u002FSKILL.md",[144,145,146],{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},{"categoryNo":116,"categoryName":117,"taxonomyType":113,"taxonomyTypeDesc":114},{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},[34,148,149,124,125,126,127,128,129,91,130,94,132,133,134,29,135,136,137,138],"api skill","zerion api skill",{"skillNo":151,"name":152,"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":153,"categories":154,"keywords":158,"publishedAt":38},"01M6Q5QW17QW98RA3FE45E4RD8","zerion-api-mcp","https:\u002F\u002Fgithub.com\u002FKernel8901\u002Fai-agent-skills-classification\u002Fblob\u002Fmain\u002F金融\u002Fzerion-api-mcp\u002FSKILL.md",[155,156,157],{"categoryNo":111,"categoryName":112,"taxonomyType":113,"taxonomyTypeDesc":114},{"categoryNo":116,"categoryName":117,"taxonomyType":113,"taxonomyTypeDesc":114},{"categoryNo":119,"categoryName":120,"taxonomyType":121,"taxonomyTypeDesc":122},[126,34,159,124,125,127,128,91,130,94,131,132,133,134,29,135,136,137,138],"zerion api mcp",{"skillNo":161,"name":162,"nameZh":6,"description":163,"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":38},"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",[166],{"categoryNo":167,"categoryName":168,"taxonomyType":121,"taxonomyTypeDesc":122},"01JBSEEDCAT000000000000040","财务",[170,171,172,173,174,175,176,177,178,179,180,181,182,183,184,185,186,187,188,189],"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":191,"name":192,"nameZh":6,"description":193,"descriptionZh":6,"repositoryFullName":8,"ownerLogin":9,"ownerAvatarUrl":10,"ownerAccountNo":11,"ownerDisplayName":6,"repositoryNo":12,"starsCount":13,"licenseSpdxId":14,"licenseFileUrl":6,"sourceHtmlUrl":194,"categories":195,"keywords":197,"publishedAt":38},"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",[196],{"categoryNo":167,"categoryName":168,"taxonomyType":121,"taxonomyTypeDesc":122},[170,171,173,198,199,200,201,202,203,181,27,204,205,206,207,208,209,210,138,188],"cli","homebrew","find","check","brew","up","get","stock","link","trending","sf","quotes","ln"]