Jazz is an AI agent you install once and run everywhere: your terminal, a CI pipeline, a cron schedule, a Telegram thread, a pull request. Same agent, same tools, same memory, any model.
Quick Start · Where It Runs · Reliability · Workflows · Docs · Discord
A chatbot answers you. Jazz does the thing, wherever the work actually happens.
- Runs anywhere: the same agent works in your terminal, in a script, on a schedule, on a pull request, or behind a chat bot.
- Any model: every major provider, swap mid-conversation, or run fully local with no API key.
- Yours: MIT-licensed, runs on your own machine or server, works offline, nothing leaves your disk.
- Built for long jobs: tracks its own progress, summarizes as it goes, delegates to helper agents, and tells you what it spent.
You describe the outcome. Jazz plans, calls tools, checks its own work, and reports back.
npm install -g jazz-ai
jazzJazz walks you through provider setup on first run. Update anytime with jazz update.
Free option: OpenRouter with the
Free Models Router model, no credit card. Private
option: ollama, fully local.
> review the last 5 commits and flag anything risky
> check my unread email, summarize what matters, archive the rest
> deep-research the Three-Body Problem and write it into my Obsidian vault
> find every TODO in this repo, group by priority, and open an issue for the top 3
Your agent isn't trapped in a terminal. jazz run is the one command behind every surface
below. It prints the answer and nothing else, so any script, bot, or CI job can call it.
Full contract: Surfaces → Headless.
| Surface | How you run it |
|---|---|
| Terminal | jazz |
| Scripts & pipes | jazz run --json --agent dev "…" |
| Cron / launchd | jazz workflow schedule <name> |
| GitHub PRs & Actions | .github/jazz/, reviews every PR in this repo |
| Telegram | integrations/telegram-bot/, docker compose up |
Want Slack, Google Chat, or Discord instead? The same jazz run contract works there too, as
a bridge you write yourself (~100 lines). See Chat platforms.
Every major LLM provider, plus ollama and llama.cpp for running models locally with no
API key. Switch with /model mid-conversation, or point different agents at different
providers. Full list: Providers.
Fully airgapped mode is supported: JAZZ_OFFLINE=1 stops all outbound requests except
inference itself. See Airgapped & Self-Hosted.
Most agent tools fall apart on tasks longer than a couple of minutes. Jazz is built for tasks that take a while:
- Budgeted iterations that warn themselves to wrap up as they approach the limit.
- Loop detection that catches an agent repeating itself and forces a different approach.
- Automatic context compaction that summarizes and continues instead of truncating or crashing.
- Sub-agents for delegating research or coding work without blowing the parent's context.
- Cost tracking on every run, with a daily spend cap for unattended use.
Built on TypeScript and Effect-TS, so failures have a typed recovery path instead of crashing silently. Details: Agent loop · Design decisions.
43 built-in tools: files, git, shell, web search and fetch, HTTP, todos, sub-agents. Each has a documented risk level. See Tools reference.
Skills are playbooks the agent loads on demand: deep research, code review, meeting
notes, commit conventions. 18+ ship built in, and Jazz follows the
.agents convention, so anything from the ecosystem works. Add
your own to ~/.jazz/skills/ or ./skills/, or run npx skills add.
Personas control tone and style independently of the model: default, coder,
researcher, or your own with jazz persona create.
Custom tools let you add a capability with no code: a name, a schema, and a shell command or HTTP call in the agent's config. See Configuration.
MCP connects Jazz to anything else. jazz mcp add, paste a server config, and its
tools are available to any agent that requests them.
A workflow is a Markdown file that says what to do, when, and how much autonomy it gets.
---
name: daily-standup-prep
schedule: "0 9 * * 1-5" # weekdays, 9am
autoApprove: read-only
---
Check my git activity from yesterday and summarize what I worked on as bullet points.jazz workflow schedule daily-standup-prepJazz schedules through launchd on macOS and cron on Linux, and can catch up runs your
laptop slept through. Three workflows ship built in; the
Cookbook has seven more ready to copy.
Every pull request to this repo is reviewed by a Jazz agent, which posts inline comments on
the diff. Comment /jazz-review to re-run it, or /jazz <question> to ask about the PR.
Release notes are drafted the same way, from the commits since the last tag.
Copy .github/jazz/ and jazz.yml into your
own repo and add one provider secret to get the same setup. Guide:
.github/jazz/README.md.
Nothing runs without a say-so. One dial controls what's allowed to run unattended, for the terminal, CI, and any bot the same way:
| Policy | Auto-approves |
|---|---|
false |
Nothing, always asks |
read-only |
Reading files, search, web requests |
low-risk |
+ todo tracking, spawning sub-agents |
high-risk |
+ file changes, shell commands, git commit and push |
Every gated action is proposed before it executes, so you see exactly what will happen before it happens. Details: Tools & approval. Reporting a vulnerability: SECURITY.md.
jazz # start chatting
jazz run --agent <a> "<prompt>" # one-shot, headless
jazz agent create|list|show|edit|delete|chat
jazz workflow list|show|run|schedule|unschedule|scheduled|catchup|history
jazz mcp add|list|remove|enable|disable
jazz persona create|list|show|edit|delete
jazz config show|get|set
jazz updateIn chat: /tools /skills /model /mode /cost /context /compact /switch
/workflows, or /help. Full reference: CLI.
Start at docs/index.md.
| Topic | Links |
|---|---|
| Getting started | Quick Start · Creating Agents |
| Where it runs | Surfaces · Headless · Chat platforms · CI/CD · Scheduled |
| Examples | Use Cases · Cookbook · Examples |
| Concepts | Agents · Personas · Skills · Tools · Workflows |
| Self-hosting | Airgapped · Telegram bridge |
| Reference | CLI · Configuration · Tools |
| Internals | Agent loop · Context management · Design decisions |
Community: Discord · Discussions · Issues
Bug fixes, docs, tests, features, and ideas all welcome. See
CONTRIBUTING.md.
MIT. See LICENSE.
npm install -g jazz-ai && jazz