BlogBy Noemi Titarenco

Flash Link, a way for users to use their existing agents in your product.

AIProductTechnologyAgentic Coding

Your users already use Claude Code, Codex, Cursor, or other agents. They already pay for those tools and they're comfortable with the way those tools behave. Flash Link is about putting that tool (and its behavior) to work in a new place - your product. It keeps the user's agent connected the whole time the user works, not just once. Flash Link moves agents beyond one-time actions, tool calls or responses towards on-going collaboration without requiring constant prompting. While your users work in your app, their agent stays connected, watching for opportunities to help. Depending on how your app works, the agent can provide helpful suggestions or ideas or they can directly take actions.

The first place I implemented Flash Link was in Co-Span, an AI writing assistant where you do the writing and the AI suggests improvements. Co-Span is a writing app, so I specifically didn't want a chat interface: because I feel like chatting with an agent is distracting from you doing actual writing.

How it works

Your users enable a Flash Link by copying a special prompt that contains instructions to your agent on how to stay connected to your application. The prompt lists the API endpoints your agent may call and carries a unique key that expires, so the connection stays secure. The prompt also explains to the agent how to write and run a brief script that keeps the agent constantly connected. Nothing to install, no MCP, no skill - it's completely temporary and it works with all major agents like Claude Code or Codex.

The Flash Link connect flow in Co-Span: copy the prompt, paste it into your agent, and it checks in.
The Flash Link connect flow in Co-Span: copy the prompt, paste it into your agent, and it checks in.

What it can actually enable

Flash Link enables agents to become in-app assistants. They can watch what the user is doing. They can provide feedback just in time. And they can even use the context from the user's current account to provide even better and more personalized assistance.

What it can't do

Flash Link is a temporary connection, not a harness. It can't control the user's AI subscription or access their agents. It's simply a temporary connection hooked up to an individual session. The session's agent polls regularly to check for updates through a predictable API. That polling is a plain API check, so it isn't burning tokens while the agent waits. Then, the agent can take action through an API. The agent can suggest improvements, ask questions, or whatever it is your product category needs from an agent. As long as it can be done through an API, it can work with Flash Link.

The magic happens in a simple temporary key

The reason Flash Link works is it gives the agent temporary, direct access to the application layer. But it doesn't just give it access like an MCP. It invites it for a timed engagement. In Co-Span, the session stays connected for up to an hour - and when it's about to run out, the user can actually extend the session from within the app - they don't have to go back to the agent session and chat with it.

Obviously with agents we have to think about security first and foremost. So temporary keys provide peace of mind.

Watch mode

The main difference between an MCP and Flash Link is that Flash Link enables "watch mode". Flash Link allows the agent to stay in the loop with the user changes even if there are large pauses between relevant changes. It removes the need to chat with an agent about whatever you're doing. The agent just pops in when a relevant action triggers it.

That's the whole concept. The agent your users already pay for, working inside your product, on their terms. No new tool to learn, no chat window to babysit. It stays connected while they work and takes actions to support the user.

Noemi Titarenco

I spend a lot of time thinking about (software and business) problems - sometimes I get around to writing about it, and you get to read about it here.

More thoughts