Every team that adopts AI coding assistants hits the same wall within a quarter: each IDE wants its own format. Claude Projects expects a system prompt and a set of project files. Cursor reads .cursorrules. GitHub Copilot has custom instructions configured per-repo in YAML. OpenCode wants an agent.json. The rules are conceptually identical — “use TypeScript strict mode, don’t introduce new dependencies without asking, follow the testing pattern in tests/” — but the surface area is four different files in four different shapes, with four different update cycles.
What happens in practice is predictable. One engineer keeps their Cursor rules pristine. Another lives in Claude and curates the project. The Copilot config drifts. New hires inherit whichever flavor their onboarding buddy uses. Within six months, the team’s “shared standards” exist in name only — the agents giving advice across the team are quietly drifting apart.
One canonical definition, every runtime
AgentBundle exists to fix this at the definition layer. You write the agent once — its rules, its context files, its tool access — and the platform compiles that one definition into every target your team uses. Push an update to the rule about test naming conventions, and the next time anyone in the team pulls, their Claude project, their Cursor rules, their Copilot instructions, and their OpenCode agent are all in sync.

A concrete example
Take a code-review agent. The bundle defines the review checklist (security, naming, test coverage, accessibility), points to the team’s style guide, and grants access to the linter and test runner. Compile it: a Claude Project that knows to run npm test before approving, a Cursor rule that flags missing accessibility attributes inline, a Copilot instruction set that nudges toward the team’s naming patterns, an OpenCode agent that runs the full review on demand. Same rules. Same context. Same outcome regardless of which tool the engineer prefers.
The win is “everyone runs the same agent”
That is the real win — not “we support five IDEs” as a feature box, but everyone runs the same agent without sacrificing tool choice. Tool preference becomes a personal decision again, not a team-wide negotiation.