Developer-first AI CLI.
Cross-language code intelligence.
Jam is the senior dev who's seen everything — direct, opinionated, and helpful without being corporate. Trace call graphs across Java, SQL, Python, and TypeScript. Impact analysis tells you what breaks before you change it. Agentic execution writes code that matches your conventions. Works with GitHub Copilot, Gemini, or any provider. Windows, macOS, Linux.
Works Everywhere You Do
Windows support. Copilot and Gemini auto-detection. No API keys required — if you have a VSCode AI extension, Jam uses it.
Copilot + Gemini
Jam auto-detects GitHub Copilot or Gemini Code Assist in VSCode. No API key, no config — just works. Status bar shows connection state.
Windows Native
Full support for PowerShell, cmd.exe, and Windows Terminal. Tab completions, port scanning via netstat, cross-platform process management.
Model Selection
jam models list shows available models. jam models set gpt-4o sets your default. Or use --model per command.
Clean Output
No more verbose planning logs. Clean, focused answers by default. Use --verbose when you want to see the agent's thinking.
Cross-Language Impact Analysis
"If I change this function, what breaks?" Jam traces call graphs across Java, SQL, Python, and TypeScript — then tells you exactly what depends on it, down to individual SQL columns.
Trace any symbol
Follow a function through its callers, callees, and upstream chain. Works across language boundaries — a Java service calling a SQL procedure, a Python script importing TypeScript.
Impact before you change
The --impact flag shows every caller, every SQL column dependent, and a risk assessment. Know exactly what breaks before you touch a line of code. No other CLI tool does this.
The Agent Engine
Give it a task. It plans, decomposes, dispatches parallel workers, and writes code that matches your conventions. Two modes: interactive console or one-shot autonomous.
Intelligence
Workers
Verify
jam go — Interactive Agent
An always-on console session. Type tasks, watch workers execute in parallel, give feedback mid-flight. Session memory carries context between tasks.
jam run — One-Shot Autonomous
Give it a task, it runs to completion. Decomposes, executes, validates, exits. Perfect for CI/CD pipelines and scripts.
Workspace Intelligence
Before writing a single line, the agent profiles your project. Code style, test patterns, naming conventions, frameworks — all detected and cached. The code it writes looks like yours.
See it in action
Ask about your codebase
Jam searches, reads, and synthesizes. It doesn't guess — it reads the actual code before answering.
Smart commits
Auto-detects your project's convention. Conventional Commits, Jira prefixes, or custom patterns.
Architecture diagrams
Static analysis maps modules, dependencies, and cycles. Generates Mermaid output. AI refinement optional.
Validate before you ship
Secrets, lint, and AI review in one command. Catches problems before they reach your repo.
Built for developers
Codebase-Aware AI
Ask questions, explain files, search code. Jam reads your repo for grounded answers.
Verify Before You Ship
Secret scanning, lint checks, AI review — one command validates everything.
Architecture Diagrams
Generate Mermaid diagrams from static analysis. Modules, deps, cycles, symbols.
Multi-Provider + Integrations
Ollama, OpenAI, Anthropic, Groq, Embedded. Plus Jira and MCP server integration.
19 Built-in Utilities
todo, stats, deps, dup, json, convert, hash, env, ports — zero LLM required.
Layered Configuration
Global → repo → CLI flags. Named profiles, secure keychain, shell completions.
Your model, your choice
Auto-detects your best provider: Copilot → Anthropic → OpenAI → Ollama. No --provider needed.
Default is localhost. Your code stays on your machine.
40+ commands. Many need no AI at all.
Plus: jam trace with cross-language call graphs, impact analysis, and column-level SQL dependency tracking.
Up and running in 60 seconds
Try instantly
npx @sunilp-org/jam-cli doctor
Install
npm install -g @sunilp-org/jam-cli
or brew tap sunilp/tap && brew install jam-cli
First command
jam ask "How does auth work in this project?"