Catalog PyPI
PACKAGE EXPLORERView in registry

agentsbridge

PyPI

Bridge AGENTS.md to every AI coding tool's rules file - one source of truth for Claude Code, Copilot, Cursor, Windsurf, Cline, Aider, Roo Code, Kilo Code, Junie, and Amazon Q.

agents-mdaiaideramazon-qclaudeclaude-codecliclinecopilotcursordeveloper-toolsgeminijuniekilo-coderoo-coderules
All keywords (17)
windsurf
Versions collected1
Direct dependencies0From release 0.2.0
Last observed20 Oct, 23:17 UTC

README

Version 0.2.0 documentation
agentsbridge

One AGENTS.md. Every AI coding tool. Zero drift.

CI PyPI Python License: MIT Ruff

Bridge · Quick start · Supported tools · CI drift check · FAQ


Why

Your team uses Claude Code. Your teammate uses Cursor. Someone just switched to Codex CLI. And suddenly your coding standards live in five different files that silently drift apart:

AGENTS.md                          ← Codex, Gemini CLI, Jules, Amp, Zed read this
CLAUDE.md                          ← Claude Code reads this (not AGENTS.md)
.github/copilot-instructions.md    ← GitHub Copilot reads this (not AGENTS.md)
.cursor/rules/*.mdc                ← Cursor reads this (not AGENTS.md, older versions)
.windsurfrules / .clinerules       ← Windsurf / Cline read these
CONVENTIONS.md                     ← Aider reads this

agentsbridge fixes this with one command. You maintain one AGENTS.md (the emerging industry standard) — it generates and keeps every tool's file in sync. Edit once, sync everywhere, and let CI catch anything that drifts.

Quick start

pipx install agentsbridge        # or: pip install agentsbridge / uv tool install agentsbridge

Already have rules somewhere? Import them:

agentsbridge import              # seeds AGENTS.md from CLAUDE.md, .cursorrules, etc.

Starting fresh?

agentsbridge init                # creates a starter AGENTS.md

Then — the only command you'll ever need again:

agentsbridge sync
  + created   CLAUDE.md
  + created   .github/copilot-instructions.md
  + created   .cursor/rules/agentsbridge.mdc
  + created   .windsurfrules
  + created   .clinerules
  + created   CONVENTIONS.md
  + created   .roo/rules/agentsbridge.md
  + created   .kilocode/rules/agentsbridge.md
  + created   .junie/guidelines.md
  + created   .amazonq/rules/agentsbridge.md
  + created   GEMINI.md

wrote 11 file(s)

Edit AGENTS.md, run agentsbridge sync, commit. That's the whole workflow.

Supported tools

ToolFile generatedNotes
Claude CodeCLAUDE.md
GitHub Copilot.github/copilot-instructions.md
Cursor.cursor/rules/agentsbridge.mdcwith alwaysApply frontmatter
Roo Code / Zoo Code.roo/rules/agentsbridge.md
Kilo Code.kilocode/rules/agentsbridge.md
JetBrains Junie.junie/guidelines.md
Amazon Q Developer.amazonq/rules/agentsbridge.md
Windsurf.windsurfrules
Cline.clinerules
AiderCONVENTIONS.md
Gemini CLI (legacy)GEMINI.mdrecent versions read AGENTS.md natively
Codex CLI, Gemini CLI, Jules, Amp, Zed, opencode—read AGENTS.md natively, nothing to generate

Run agentsbridge list to see this table in your terminal.

Missing a tool? Open an issue — adding a target is ~10 lines.

Safety

Generated files are marked:

<!-- generated by agentsbridge; do not edit -->

If a target file already exists without that marker (i.e. you wrote it by hand), sync skips it instead of clobbering your work. Use --force to adopt it deliberately.

agentsbridge sync --force        # adopt existing files
agentsbridge sync --dry-run      # preview changes
agentsbridge sync -t claude,copilot   # subset of targets

Tip: set AGENTSBRIDGE_TARGETS=claude,copilot in your environment (e.g. CI) to pin a subset without repeating -t on every invocation. Explicit -t always wins over the env var.

CI drift check

The whole point: rules that drift are rules nobody follows. Add the check to your workflow and CI fails whenever someone edits a generated file — or forgets to re-sync after editing AGENTS.md:

# .github/workflows/ci.yml
name: rules
on: [push, pull_request]
jobs:
  agentsbridge:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - uses: DavidStarYu/agentsbridge/action@main

Or invoke the CLI directly: agentsbridge check (exit code 1 on drift).

This repository runs the same check on itself — dogfooding.

FAQ

Why AGENTS.md as the source, not my own config? AGENTS.md is the emerging standard (adopted by OpenAI Codex, Gemini CLI, Jules, Amp, Zed and others — see agents.md). Tools that don't read it yet are exactly the ones this bridge targets. You keep zero agentsbridge-specific config: the source file is a standard.

Cursor already reads AGENTS.md, why generate an .mdc? Newer Cursor versions read AGENTS.md directly; many teams run versions that don't, or want explicit rule scoping. The generated .mdc is harmless if redundant — and you can exclude it: agentsbridge sync -t claude,copilot,....

Does it send my code anywhere? No. No network calls, no telemetry, no API keys. It's a template engine over one markdown file. Zero dependencies.

How is this different from X? rulesync (Node.js) covers more features — MCP servers, subagents, commands — at the cost of a bigger footprint and a .rulesync/ directory convention. agentsbridge does one thing: keep rule files in sync, in pure Python with zero dependencies. If you live in pipx/uv and want the simple thing, this is for you.

Development

git clone https://github.com/DavidStarYu/agentsbridge
cd agentsbridge
pip install -e . pytest ruff
pytest            # 47 tests
ruff check .

License

MIT

Downloads & popularity

Awaiting observations

No metric observations yet

Download counts and popularity will appear here as the collector receives them.

Versions 1

Collected releases
VersionPublishedDirect dependenciesOpen version
0.2.03 Oct 20260

Package advisories

0
No matching advisories collected

This describes our collected data; it is not a security assessment.

Repository

PENDING
davidstaryu/agentsbridge

Shared repository data · GitHub

License detected in repository
Not collected

Metadata history

Meaningful changes
Current collected state Current

Observed since 20 Oct, 23:17 UTC

No superseded metadata states collected. Unchanged observations do not create new revisions.

Record identity

package:adde75c18826fe2df1ffa4340759e2c398dfd9d5ba0583f68c15af5d5e9fbdae