{"slug": "show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api", "title": "Show HN: Makoda: reuse your Codex or Claude subscriptions as API", "summary": "Makoda released a free macOS beta tool that turns a user's existing ChatGPT Codex or Claude Code subscription sign-in into a local API on 127.0.0.1, requiring no API key and billing requests against the plan's normal limits. The npm SDK, installed via `npm install makoda`, routes development calls through Makoda and production calls to the user's own OpenAI or Anthropic client, with jobs submitted via POST /v1/jobs returning a job ID, results kept for 24 hours, and an Idempotency-Key that returns the same job for 7 days. Makoda states it runs the official, unmodified CLI on the user's own computer, never reads or stores credentials, and is development-only — not for production traffic — with remote access in beta requiring a free Makoda account and supported on Apple silicon Macs or Ubuntu 24.04 x86-64 desktops.", "body_md": "MAC BETA free Codex + Claude Code (beta)\n\n# \n              Compute you buy.\n\nNow your API.\n\nReuse the ChatGPT or Claude plan you already pay for as a local API for your dev project, with no API key.\n\n## Or install from Terminal\n\n`curl -fsSL https://makoda.ai/install.sh | sh`\n                Node.js SDK:\n                [makoda on npm](https://www.npmjs.com/package/makoda) \n\nFree. Requests count against your plan's normal limits.\n\n## One small app. Every project.\n\n- Checks your setup\n- Confirms Codex and Claude Code are signed in.\n- One token per project\n- Copy one setup prompt. Revoke it anytime.\n- Stays on your computer\n- The API listens on 127.0.0.1.\n\n## One job, there and back.\n\nYour app, Makoda, your AI, and back with a job ID.\n\nstatus **queued**\nPOST /v1/jobs answered 202 with a job ID\n\n1. \nPOST /v1/jobs\n### Your app hands over a job.Prompt, model and effort in. A job ID back at once.\n2. \nstatus: running\n### Makoda carries it to your AI.Your signed-in Codex or Claude Code runs it on your plan.\n3. \nGET /v1/jobs/{id}\n### The answer comes home by ID.Poll by ID. Results stay for 24 hours.\n4. \nsame Idempotency-Key\n### Lost connection, same job.Resend with the same key: same job, no second run.\n\n## Set up in two minutes.\n\n1. \n01\n### InstallOne command, or the app download.\n2. \n02\n### ConnectName your project, copy its prompt.\n3. \n03\n### PasteYour coding agent adds a dev-only adapter.\n\n## How Makoda behaves\n\nFree app. Your plan, its normal limits. Never a paid API key.\n\n- 24 h\n- results kept for lookup\n- 7 days\n- a retry key returns the same job\n- 1\n- revocable token per project\n- 0\n- paid API fallbacks\n\n## API key or Makoda?\n\n| Testing an AI feature with an API key compared with Makoda |  |  | \n|---|---|---|\n| While you build | API key | Makoda | \n|---|---|---|\n| Each test run | Billed per token | On your plan | \n| Keys to create and guard | Yes | None, uses your sign-in | \n| Retry after a timeout | You build it | Same key, same job | \n| Production traffic | Yes | No, development only | \n\n## Your plan in dev. Your API in prod.\n\n              The free [makoda](https://www.npmjs.com/package/makoda)\n              npm SDK sends dev calls through Makoda and production calls to your own OpenAI or\n              Anthropic client. Same code, no silent paid fallback.\n            \n\n``` python\n$ npm install makoda\n\nimport OpenAI from \"openai\";\nimport { createMakoda } from \"makoda\";\n\nconst ai = createMakoda({\n  environment: process.env.APP_ENV, // dev → Makoda, prod → API\n  makoda: { token: process.env.MAKODA_TOKEN },\n  direct: { openai: new OpenAI() },\n});\n\nconst { text } = await ai.generate({\n  provider: \"codex\", effort: \"medium\",\n  model: process.env.AI_MODEL, // per-environment ID\n  prompt: \"Summarize this ticket\",\n});\n```\n\n## Questions, answered.\n\nFree app, your plan, your computer.\n\n## Which AI tools does Makoda work with?\n\nCodex through your ChatGPT plan, and Claude Code through your Claude plan (beta). Each request picks the provider, model and effort.\n\n## Do I need an API key?\n\nNo. Makoda uses the Codex or Claude Code sign-in on your computer and never bills an API account.\n\n## Is the model usage free?\n\nThe app is free. Requests count against your plan's normal limits, and account extra charges may apply.\n\n## Is this allowed by OpenAI and Anthropic?\n\nMakoda runs the official, unmodified CLI you signed in to, on your own computer, for your own development, and never reads or stores your credentials. Follow your provider's terms and use their API for production.\n\n## Can I use it in production or from a server?\n\nNot for production traffic: Makoda is for development and listens on 127.0.0.1. Remote access (beta) gives a staging app a private HTTPS address that still needs your project token and works only while Makoda is open. It needs a free Makoda account; the local gateway does not.\n\n## What do I need?\n\nAn Apple silicon Mac or an Ubuntu 24.04 x86-64 desktop. Codex signed in to ChatGPT, or Claude Code signed in to your Claude plan.\n\n## Is there an SDK?\n\nYes, [on npm](https://www.npmjs.com/package/makoda): `npm install makoda` routes Node.js calls to Makoda in development and to your own OpenAI or Anthropic client in production. Plain HTTP works too; see the [docs](https://makoda.ai/docs/).\n\n## Is the Mac app signed?\n\nYes. From 0.2.0 the Mac app is signed with an Apple Developer ID and notarized by Apple; update older versions to skip the Open Anyway step.\n\n## Stop paying per token to test.\n\nApple silicon Mac beta, notarized by Apple. Works with Codex or Claude Code (beta).\n\nApple silicon Mac beta", "url": "https://wpnews.pro/news/show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api", "canonical_source": "https://makoda.ai/", "published_at": "2026-11-06 19:08:44+00:00", "updated_at": "2026-11-06 19:20:27.717327+00:00", "lang": "en", "topics": ["ai-tools", "developer-tools", "ai-products", "large-language-models"], "entities": ["Makoda", "OpenAI", "Anthropic", "ChatGPT", "Codex", "Claude Code", "npm"], "also_reported_by": [], "alternates": {"html": "https://wpnews.pro/news/show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api", "markdown": "https://wpnews.pro/news/show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api.md", "text": "https://wpnews.pro/news/show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api.txt", "jsonld": "https://wpnews.pro/news/show-hn-makoda-reuse-your-codex-or-claude-subscriptions-as-api.jsonld"}}