Corsair is an open-source integration layer for agents (~70 plugin packages).
packages/<plugin>/— one integration each (slack, gmail, …). Everything exceptcorsair,cli,mcp,studio,ui,appis a plugin.packages/corsair/— core; plugins register incore/constants.ts.www/— corsair.dev site incl. the OSS contributor dashboard (src/app/oss/).scripts/pr-review/— automated PR review loop (seedocs/pr-review-bot.md).
pnpm lint/pnpm lint:fix(biome),pnpm typecheck,pnpm build,pnpm testpnpm generate:plugin— scaffold a new plugin (correct footprint: its own package + one registration edit inpackages/corsair/core/constants.ts)pnpm run validate:plugins— structural plugin checks
.github/PLUGIN_PR_RULES.md is the source of truth for plugin PRs
(scope, tests, description, demo video). Greptile + the gate job enforce it.
Never auto-merge; never use eval/new Function() on generated content.
Model calls go through llm.corsair.dev (LiteLLM, OpenAI-compatible) with
budget-limited keys — never provider SDKs or personal provider keys.
Docs: docs.corsair.dev/llm-gateway.
The hosted product moved from corsairdev/hosted to corsairdev/hub.
hosted receives documentation updates only.