Never explain yourself to AI again.

Your accounts, memory, skills and secrets in one place you own, reachable by every agent you use.

Your brain, and you keep the keys.

Everything your agents run on, and every part of it stays yours to read, move or delete.

Connections

Your mail, calendar, files and issues, each on its own credential.

Memory

What you want remembered between sessions, in plain Markdown you can read.

Tasks

What you have to do, each with a status any agent can close.

Skills

Your own procedures, followed by every agent rather than guessed at.

Assets

Files you want kept, stored by name and handed over on request.

Identity

The names and addresses you write as, so an agent signs off as you.

Entities

The people and companies you deal with, so an address is looked up, not guessed.

Vault

Passwords and API keys, released only where you have allowed it.

Connect once. Every agent inherits it.

Over a hundred services and growing, each account on its own credentials and its own permissions.

Gmail

Google Calendar

Google Drive

iCloud

Notion

Linear

One account. Different powers, in different places.

Connect an account once. Each profile decides what it may do with it, and who may use it.

Grants each account separately

Read one mailbox here, write another there, from the same sign-in.

Keeps memory and skills apart

What an agent learns in work never surfaces in personal.

Says who may use it

A profile reaches the people it lists, and nobody else. Nothing is shared by default.

Change your AI. Keep your brain.

Claude, ChatGPT, a terminal, whatever ships next: each one reads the same memory, skills and accounts.

Your machine, or a cloud you own.

Same endpoint, same connections, same policy. Only the address changes.

Local

It runs beside the agent that calls it. Bun is the only thing it needs.

lanes link start

Self-Hosted

It runs on Cloud Run in a project you own. Any agent reaches it from anywhere.

lanes link deploy

Lanes Cloud

Coming soon

We run the same endpoint for you. There is no machine to keep awake.

Join the waitlist

One command, and no account anywhere.

bun install -g @lanes-sh/link

and then

Start the quickstart

Prefer not to use a terminal?

The Lanes desktop app drives the same CLI from a settings page: connect accounts, start the endpoint, register your agents.

lanes link desktop

Frequently asked questions.

Built-in connectors work, but they belong to that AI client. Switch to another agent and you often start again: reconnect your tools, recreate your setup, and explain how you work. Lanes Link gives every AI you use the same foundation. Connect your accounts once, keep your memory, skills, permissions and context in one place, and make them available to any agent you trust. So you can move from Claude to ChatGPT to Cursor, or whatever comes next, without starting over. Your AI changes. Your context doesn't. You connect once, and never have to explain yourself to AI again.

No. Memory, tasks, skills, assets, identity and the vault hold your own material rather than an account, so they work the moment the endpoint is up. Connecting Gmail or a calendar is the next step, not the first one.

Anything that speaks MCP. On your own machine that is Claude Code, Codex, Claude Desktop and Cowork, and lanes link mcp add registers it with Claude Code and Codex for you, along with a skill and a scout agent. Deploy it to your own cloud and claude.ai, ChatGPT and your phone reach the same endpoint under the same policy.

No. Requests go from your machine straight to the provider, and the response comes back to your machine. Signing in is the one exception: trading an authorisation code for a token needs an OAuth client secret, which cannot ship inside software you run yourself. Register a client of your own with lanes link connect gmail --own-client and even that stops.

Yes, and that is the point. Everything is denied until you allow it, and the endpoint enforces that when a call is dispatched rather than asking the model to behave, so gmail.search = allow with gmail.send = deny holds whatever the agent was told. It limits the endpoint only, never your own tools.

No. Lanes does not run a model and never receives your Google user data. When you ask an agent to read something, it goes from your machine to whichever AI provider you configured, on your own account with them. The scopes each product asks for, what reaches our servers and the full Limited Use statement are in section 7 of the privacy policy.

Because it is not verified yet. Review for these scopes includes a third-party security assessment and takes months, and we would rather ship and finish the review in parallel. Choose Advanced, then Go to Lanes. Registering your own OAuth client skips the screen entirely.

Locally, yes: the endpoint has to be up for an agent to reach anything through it. lanes link deploy puts it in a cloud project of your own instead, which also makes it reachable from claude.ai, ChatGPT or a phone. Lanes Cloud runs it for you and is not open yet, so join the waitlist.

Yes. Any MCP server, any REST API with an OpenAPI spec, any IMAP mailbox, any CalDAV or CardDAV server. Most take a short YAML file in your profile directory and no code, and they sit behind the same permissions and the same audit log as everything else.

Profiles, and they are enforced rather than remembered. Every call names the profile it is for, so there is no current profile to switch and no default to get wrong. A profile reaches only the accounts you granted it, with only the permissions you allowed on each, and an account you did not grant is not listed at all: an agent never learns it exists. Naming a connection from another profile is refused before anything runs.

Disconnect the account in Lanes Link, which deletes the stored tokens from your machine. Or revoke it from your Google Account permissions page, which kills the tokens immediately, whatever is running locally.

Nothing. Lanes Link is free and open source, and you run it yourself.

One brain. Every agent. Yours.

Connect once, remember once, decide once. Every agent you use inherits all of it, on your terms.