Observed since 20 Oct, 17:34 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
0bridge
One bridge for all your AI agent tooling — MCP servers, skills, and AGENTS.md synced across Claude Code, Codex, Cursor, and more.
One bridge for your AI tools.
Sign in to Linear, Notion, Sentry and the rest once. Claude Code, Codex, Cursor, Claude and
ChatGPT all use them through one MCP endpoint, https://0bridge.dev/mcp. The 0b CLI also keeps
your MCP servers, skills and AGENTS.md in sync across the AI tools on each machine.
The point is that your context isn't locked into one vendor: the same services, instructions,
memory and session history in every tool, so you can continue a session in a different tool
(0b resume 0b:k3f9x2), steer your coding agents from your phone (off until you turn it on) and
switch tools without starting over. Which AI products work, and how well, is dated in
Supported clients.
Also: one board of what every coding session is doing (0b sessions, which one needs you), one command
that sets up your dev environment on an AI agent's own computer (0b setup --agent-vm; Muse and Manus
are untested, Instinct is not supported), Drive folders of files and instructions every AI app works
in, synced to a folder on your computer (0b drive), webhooks that run a command on your machine,
forward to your server or wake an agent instead of a polling timer (0b webhook), and token counts
with an estimated cost (0b usage). Details and limits:
docs.
Status: early development. The gateway runs at https://0bridge.dev.
Let your agent do it. Copy the setup prompt from https://0bridge.dev and paste it into Claude Code, Codex or Cursor. The agent installs the CLI and runs the steps below; you only approve sign-ins in the browser.
Or run it yourself:
npm install -g 0bridge@latest
0b setup # sign in (browser, one-time code) and add 0bridge to every AI tool here
0b connect linear # opens Linear's sign-in; every tool now has linear__* tools
0b connect linear --label acme # a second Linear workspace: linear__acme__*
0b tree # everything at a glance
0b setup --yes never prompts (for agents and scripts). Run 0b on its own to bring your
existing MCP servers and skills under 0bridge and keep every tool in sync.
0b secret set STRIPE_KEY # asks for the value; encrypted on this machine, synced as ciphertext
0b secret import .env --dry-run # list what would move (replaces? localhost?); stores nothing
0b secret import .env --only A,B # move just those names (without --only: the whole file)
0b secret paste # or paste KEY=value lines (from a dashboard, a teammate…)
0b secret show STRIPE_KEY # see a value yourself (secrets go to your terminal only)
0b exec -- bun dev # runs with this repo's values as env vars
0b exec --env prod -- wrangler deploy # prod: approve in your browser with your passkey first
Values are per repo (or --global) and per environment, and each is a secret (hidden, shown
as *** in output an agent reads) or a plain variable like PORT (--variable). Pasted and
imported lines are sorted for you; switch with 0b secret mark NAME --secret|--variable. The vault key stays on your machines. On a new
machine, 0b vault unlock asks for it: approve in the dashboard with your passkey, or run
0b vault approve on a machine that has it (both show the same code). The first 0b secret set
also shows a recovery key; keep it in your password manager. The dashboard's Secrets page opens
the vault in your browser only.
Your .env files keep working; the vault is there when you want agents to stop reading them.
https://0bridge.dev/mcp.~/.0bridge/0bridge.json is the single source of truth for local sync.${secret:name};
global vault values (0b secret set NAME --global) resolve there too.0b backups, 0b restore <id>).packages/core — manifest, per-tool adapters, import/plan/apply engineapps/cli — the 0b CLI (published to npm as 0bridge)bun install
bun test
bun run typecheck
bun run build # apps/cli/dist/0b.js (runs on Node >= 20.12)
Download counts and popularity will appear here as the collector receives them.
| Package / target | Requirement | Relationship |
|---|---|---|
diffEnvironment{
"local_name": "diff",
"alias": false,
"peer_metadata": null
} | ^8 | development |
@0bridge/coreEnvironment{
"local_name": "@0bridge/core",
"alias": false,
"peer_metadata": null
} | workspace:* | development |
@clack/promptsEnvironment{
"local_name": "@clack/prompts",
"alias": false,
"peer_metadata": null
} | ^1.8.1 | development |
Source distribution
{
"shasum": "abb6c38e2d75774228eb51a47724f09be3f035bb",
"tarball": "https://registry.npmjs.org/0bridge/-/0bridge-0.2.2.tgz",
"fileCount": 4,
"integrity": "sha512-NByZk7m44VWU5Klrnnqz6KGfPG+5UR09/6vqDgK9bxBPMic7KV6XEMw2RM2TBdeZVly6+MDrC/ydCEES/TxN0A==",
"signatures": [
{
"sig": "MEYCIQDoG9UkhdbD+OsQVXUp7zbpuRAwcFXsXOAfJm/5Bs9rtgIhAJ8EdWxVksW0xr5Jhn9tJ96cJ5EI/mps5GVEbOTSp9LV",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
},
{
"sig": "MEUCIQCyqNdPJaC99vtLNQZ/mrnkEHZ1x/DV7EK6Crhd2OojFwIgNatkSRmWAZrFqMiNzDlWgrPwJH1gtnKBE3fKyI9yiOM=",
"keyid": "SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"
}
],
"unpackedSize": 371077
}Observed since 20 Oct, 17:34 UTC
No superseded metadata states collected. Unchanged observations do not create new revisions.
package_version:b4a67e9d8766b73973d2fa54debf7f4387c0aee6f5e104c338ea77678596cbc8