Use the AI You Already Pay For in Your Own Tools
Official APIs vs. local client bridges — costs, limits, caveats, and a concrete walkthrough.
Many developers now have at least one AI subscription and a signed-in AI client open all day. In that client sits a conversation that already knows your project brief, your product details and how you like things written.
Then you build a small tool — a browser extension, a script, a scheduled job — and want it to use AI too. The usual answer is "get an API key". That is often correct, but it means a second bill, a second set of credentials, and re-explaining all the context your existing conversation already holds.
This post walks through the options honestly: when the official API is the right choice, what a local client bridge is, what it cannot do, and how the bridge approach works in practice with AgentRelay, a free local tool from GoodExts, and the XFollower extension.
The problem: your context lives in a chat window
Here is a typical repeated job: every evening, take a handful of posts or sources, classify them, and draft replies or topics in a specific brand voice. Done by hand, it looks like this:
- Collect the material in one tool.
- Copy it into an AI chat.
- Re-explain the brief if the chat lost track.
- Copy the answer back and record what happened to which item.
Steps 2–4 are pure transfer work. The interesting part — the judgment — happens in a conversation you already prepared. What you want is for your tool to send the next task to that conversation and get the result back, tied to the original item.
Option 1: the official provider API
The standard route is the provider's platform API with an API key.
Strengths:
- Runs anywhere: servers, CI, cloud functions.
- Clear terms for programmatic use and designed for production scale.
- The right choice if you are building a product that serves other people.
Tradeoffs:
- Usage-based billing, separate from your chat subscription.
- Stateless by default: you resend instructions and history on each call, or build your own memory layer.
One common confusion is worth clearing up. Some subscriptions come with API-related benefits, and some coding clients support both subscription sign-in and API keys. GoodExts has a separate explainer on what a ChatGPT subscription does and doesn't give you for API access. In short, an official API integration, a signed-in client like Codex, and a local bridge each use different connections and credentials. Before comparing costs, check which one your tool actually uses.
Option 2: a local bridge to a signed-in AI client
The other route runs locally. A small service on your computer talks to an AI client you are already signed in to, and exposes one local interface that your own tools can call.
The responsibilities split cleanly:
- Your tool decides when to run, which account a task belongs to, where the material comes from, and where results go.
- The bridge passes the task to a chosen client and conversation, and gives you a task ID to follow.
- The AI client does the AI work under your own account.
The honest caveats
This approach has real limits, and you should know them before building on it:
- Your plan's limits still apply. A bridge doesn't make a subscription unlimited, and it doesn't turn it into universally authorized API access. Every test message uses up your allowance.
- Terms matter. Use supported clients within their terms. "It technically works" is not the same as "it is permitted".
- Local doesn't mean offline. The bridge runs on your machine, but the AI client may still process prompts in the cloud under the provider's data policies.
- Your computer must stay on. The computer, the bridge and the selected client must remain available while a workflow runs.
- It suits personal workflows, not production backends. If you serve other users, use the official API.
- Security is your job. A local token authorizes the bridge. Keep it out of source code, chats, screenshots and public repos.
How AgentRelay implements the bridge
AgentRelay, the free local AI hub from GoodExts, is a desktop service for Windows 10/11 (x64) and macOS (Apple Silicon). It connects compatible extensions, apps and workflows to three AI clients today:
- Codex: list conversations, create a new one, and continue the same chat. The Codex CLI must be installed and signed in.
- Grok Bot: choose an existing Bot and send repeated tasks to it.
- Antigravity: discover IDE conversations, create a conversation, and send follow-up tasks.
The site lists other tools, including Claude Desktop, ChatGPT Desktop, Gemini CLI, Cursor and Ollama, as planned integration candidates. They are not part of the current download. So if your AI lives only in a ChatGPT or Claude browser tab, this tool doesn't cover that today.
Some design details are worth borrowing even if you build your own bridge:
- Explicit conversations. You choose an existing conversation or explicitly create a new one. A new chat is never a side effect of every message.
- Task IDs instead of blocking requests. A request creates a task and returns its ID. You check that ID to retrieve the reply, which handles work that takes longer than one browser request.
- Local state. Configuration and task records stay on your computer.
- Safe upgrades. Updates wait for active work and back up service data. If validation of the new version fails, the previous version can be restored.
AgentRelay is free and doesn't sell model credits. The application source is private.
Walkthrough: connecting XFollower to AgentRelay
XFollower is a GoodExts Chrome extension for daily X operations: followers, follow-up queues, saved posts and writing knowledge. It's a good concrete example because it uses the bridge for several separate jobs. The full guide is in Connect XFollower to AgentRelay. Condensed:
1. Start AgentRelay and your AI client. Install and sign in to the client you want to use. On the AgentRelay home screen, confirm the service is running and copy its base address and access token. The default is http://127.0.0.1:8787, but use the port actually shown.
2. Allow the extension to reach the local service. The default Allow all origins setting usually means no per-extension setup, though API requests still need the token. If you turn that setting off, add the extension's origin (chrome-extension://<extension-id>) to AgentRelay's allowed origins.
3. Enter the connection and pick a conversation. In XFollower, open System settings → AI engines. Enter the base address and token without appending /codex, /grokbot or /antigravity. Then choose an engine and read its conversations. The three engines share the address and token, but each keeps its own conversation selection.
4. Test, save, reopen. Use a dedicated test conversation and click Test and save once. This sends a real verification message and uses your allowance. Then reopen the settings and confirm the engine, conversation and verified status.
5. Route each feature to its own conversation. For example, use one conversation for collecting and classifying posts and another for brand replies. Inspect a small batch before enabling anything automatic. A successful connection doesn't enable posting.
What happens when a scheduled task runs
- XFollower prepares the post text, account instructions and writing references.
- It submits them to the selected engine and conversation.
- AgentRelay creates a task and returns its ID.
- XFollower stores the task ID with the original post and queries that task. It doesn't open a new chat on every poll.
- When the full result arrives, XFollower records the tags or comment draft against the post.
If the panel closes or the service restarts, query the original task first. Pending doesn't mean failed, and blindly resending creates duplicates.
Troubleshooting is mostly predictable:
| Symptom | What to check |
|---|---|
| Cannot connect | Service status, base address, port, browser local-access permission |
| 401 | The current AgentRelay token, not one from an old instance |
| 403 | Extension origin in the allowlist (if Allow all origins is off) |
| Engine unavailable | Client running and signed in; engine status in AgentRelay |
| Renamed conversation | Bindings use the conversation ID, not the editable title |
Connecting your own project
To wire your own extension or app to AgentRelay, the AgentRelay page offers an integration skill to download: a ZIP containing a SKILL.md, a client, and test tools that need Node.js 22+. You give it to a coding assistant that can read local files. The assistant checks the service, binds a conversation, and sends two harmless test messages. Those messages verify that context carries over, that bindings survive a reopen, and that recovery works by querying the original job instead of resending.
That test plan is worth copying even if you never use the tool.
Count the whole cost
The bridge is free, but the workflow isn't automatically cheaper. Count the time to prepare batches, any model costs or plan upgrades, and the time spent correcting results. No fixed savings percentage fits everyone. A bridge is worth it when it removes enough repeated transfer work for your task. GoodExts has a longer guide on designing an AI workflow that runs while you're away, covering how to separate the schedule, business context and AI connection.
Wrapping up
- Building for other users or need scale? Use the official API.
- Automating your own repeated tasks with a client you already use? A local bridge can save a lot of copy-paste, as long as you respect plan limits and terms, keep the token private, and poll task IDs instead of resending.
- Start small: one job, one conversation, two test requests, then a small batch you actually review.
What repeated AI task do you still do by copy-paste? Tell me in the comments.
Disclosure: I'm the developer behind GoodExts. The split between tool, bridge and AI client, and the habit of tracking task IDs instead of resending, work just as well if you build your own bridge or use the official API.







