{"id":"onecli-gateway","name":"onecli-gateway","summary":"OneCLIゲートウェイ:保存された認証情報を送信通話に注入する透過HTTPSプロキシです。ユーザーがメールの閲覧、カレンダーの確認、GitHubリポジトリへのアクセス、問題の作成、Stripeの支払いチェック、外部サービスやAPIとのやり取りを求めた際には、このスキルを必ず使わなければなりません。","body":"# OneCLI Gateway\n\nYour outbound HTTPS traffic is transparently proxied through the OneCLI\ngateway, which injects stored credentials at the proxy boundary. You never\nsee or handle credential values directly.\n\n## How to Access External Services\n\nYou have direct HTTP access to external APIs. OAuth apps (Gmail, GitHub,\nGoogle Calendar, Google Drive, etc.) and API key services are all available\nthrough the gateway. Just make the request directly; the gateway injects\ncredentials if the app is connected. If not, it returns an error with a\nconnect URL you can present to the user.\n\n## Making Requests\n\nCall the real API URL. The gateway intercepts the request and injects\ncredentials automatically.\n\n```bash\ncurl -s \"https://gmail.googleapis.com/gmail/v1/users/me/messages?maxResults=5\"\ncurl -s \"https://api.github.com/user/repos?per_page=10\"\ncurl -s \"https://api.stripe.com/v1/charges?limit=5\"\n```\n\nStandard HTTP clients (curl, fetch, requests, axios, Go net/http, git) all\nhonor the `HTTPS_PROXY` environment variable automatically. You do not need\nto set any auth headers.\n\n## Credential Stubs for MCP Servers\n\nSome MCP servers need local credential files to start. Stubs for connected\napps are pre-written automatically. Files containing `\"onecli-managed\"`\nvalues are managed by OneCLI — do NOT modify or delete them.\n\nIf an MCP server won't start due to missing credentials, create stubs\n**before** starting it. Use `\"onecli-managed\"` as the placeholder for all\nsecret values, with file permissions `0600`. See the guide at:\nhttps://www.onecli.sh/docs/guides/credential-stubs/general-app\n\n## When a Request Fails\n\nIf you get a 401, 403, or a gateway error (e.g., `app_not_connected`):\n\n**Step 1 — Show the user a connect link.** Use the `connect_url` from the\nerror response:\n\n> To connect [service], open this link:\n> [connect_url from the error response]\n\nIf there is no `connect_url` in the error, tell the user to open the\nOneCLI dashboard and connect the service there.\n\n**Step 2 — Retry after the user connects.** Let the user know you will\nretry once they have connected. When they confirm, retry the original\nrequest. If the retry still fails, ask if they need help with the setup.\n\n## Rules\n\n- **Never** say \"I don't have access to X\" without first making the HTTP\n  request through the proxy.\n- **Never** use browser extensions, gcloud, or manual auth flows. The\n  gateway handles credentials for you.\n- **Never** ask the user for API keys or tokens directly. Direct them to\n  connect the service in the OneCLI dashboard.\n- **Never** suggest the user open Gmail/Calendar/GitHub in their browser\n  when they ask you to read or interact with those services. You have API\n  access. Use it.\n- If the gateway returns a policy error (403 with a JSON body), respect\n  the block. Do not retry or circumvent it.","author":"@nanocoai","ownerProfile":null,"authorContacts":null,"sourceUrl":"https://github.com/nanocoai/nanoclaw/tree/main/container/skills/onecli-gateway","license":"MIT","category":"productivity","lang":"en","tokens":671,"stars":0,"calls30d":1,"claimed":false,"visibility":"public","origin":"crawler","version":"0.1.0","createdAt":"2026-08-22","updatedAt":"2026-08-22","files":[{"path":"instructions.md","size":760,"sha256":"6ab09b9d3007e8e4f432c3b95b814731a2c9c7968b4700a476f21046e40ced15"}],"requires":{"mcp":[],"tools":[]},"safety":{"flags":[],"scannedAt":"2026-08-22","hasScripts":false,"networkEndpoints":["api.github.com","api.stripe.com","gmail.googleapis.com","www.onecli.sh"]}}