loading…
Search for a command to run...
loading…
Proxy integration: forward Chorus operations to any external MCP server (GitHub, Postgres, Filesystem, Exa, etc.)
Proxy integration: forward Chorus operations to any external MCP server (GitHub, Postgres, Filesystem, Exa, etc.)
Federated workflow runtime with crowd-sourced integration maintenance.
n8n for the agent era — self-hosted, AI-repaired, signed patches propagate across the fleet.
Chorus is a workflow engine you run on your own box. It fires workflows on webhooks, cron, or manual triggers, and calls out to the SaaS services you use (Slack, Stripe, Linear, Postgres, Gmail, etc.).
When an integration breaks — because a vendor changed their API, an auth scheme rotated, or a rate limit appeared — Chorus doesn't just surface the error. It tries to fix it:
Every user's failure becomes a permanent regression test, forever. That's the moat.
┌─ your machine ───────────────────────────────────────────┐
│ │
│ runtime ─► integration ─► external API │
│ │ │ │
│ │ └──► (on failure) │
│ ▼ │
│ reporter ──► signature + redaction │
│ │ │
│ ▼ │
│ repair-agent ──► fetches docs, proposes patch │
│ │ │
│ ▼ │
│ snapshot-test ──► validates against recorded traffic │
│ │ │
└─────┼────────────────────────────────────────────────────┘
│ (signed patch)
▼
┌─ shared registry (git repo + signatures) ────────────────┐
│ │
│ canary ladder: 1 → 10 → 100 → fleet │
│ reputation weighted │
│ kill switch per-patch │
│ │
└──────────────────────────────────────────────────────────┘
│ (propagates fixes)
▼
everyone else's runtime
packages/core — shared types, Zod schemas, error signature formatpackages/runtime — workflow execution engine (cron, webhooks, retries, SQLite state)packages/registry — signed patch registry client/serverpackages/reporter — failure capture + PII redaction + signature extractionpackages/repair-agent — Claude-powered patch proposer + validatorpackages/cli — the chorus CLIintegrations/http-generic — make any HTTP callintegrations/slack-send — send a Slack message (reference integration)More integrations are added as community patches via the registry.
Early. See docs/ARCHITECTURE.md for the full design and docs/ROADMAP.md for what's coming.
No demo video yet — the author's laptop is currently OOM from 24 concurrent Claude Code instances running in terminal tabs. Once RAM is reclaimed, a proper walkthrough lands here.
npm install -g @delightfulchorus/cli
chorus init
That's it. chorus init scaffolds a ./chorus/ directory in the current folder, generates an Ed25519 keypair + AES encryption key, and creates an example workflow. Then chorus run starts the runtime.
Zero-install one-liner — runs once from npm's cache, nothing left on disk:
npx @delightfulchorus/cli init
Per-project (pinned version, recommended for teams):
npm install --save-dev @delightfulchorus/cli
npx chorus init
The CLI binary is always chorus. The scoped npm name (@delightfulchorus/cli) is only the package identifier — you never type it after a global install.
The client-side packages in packages/* are half the story. Operators who want to host a patch registry (org-private or public) should start at federation/RUNBOOK.md — it covers the registry repo template, GitHub Actions workflows, CDN revocation-list tooling, and the 5-minute incident playbook.
See QUICKSTART.md.
step.waitForEventMIT
Добавь это в claude_desktop_config.json и перезапусти Claude Desktop.
{
"mcpServers": {
"integration-mcp-proxy": {
"command": "npx",
"args": [
"-y",
"@delightfulchorus/integration-mcp-proxy"
]
}
}
}