All Commands & Features
AI Commands
jam ask
Send a one-shot question to the AI with full codebase context.
jam ask "How does authentication work?"
jam ask --provider anthropic "Explain this error"
echo "explain this" | jam ask --file README.md
jam ask --json "List all API endpoints"
--provider | AI provider to use (e.g. openai, anthropic, ollama) |
--model | Model name to use |
--file | Attach a file as additional context |
--json | Output the response as JSON |
--system | Custom system prompt |
--no-tools | Disable tool use for the request |
--quiet | Suppress non-essential output |
jam chat
Start an interactive multi-turn chat session.
jam chat
jam chat --provider anthropic --model claude-sonnet-4-20250514
jam chat --system "You are a security expert"
--provider | AI provider to use |
--model | Model name to use |
--system | Custom system prompt |
--resume | Resume a previous chat session |
jam explain
Explain the contents of one or more files.
jam explain src/utils/errors.ts
jam explain src/providers/*.ts
jam explain --json src/index.ts
--provider | AI provider to use |
--model | Model name to use |
--json | Output the explanation as JSON |
jam run
Execute a task workflow using AI and local tools.
jam run "add input validation to the login form"
jam run "refactor the database module to use connection pooling"
jam run --yes "update all deprecated API calls"
--provider | AI provider to use |
--model | Model name to use |
--yes | Auto-approve file writes |
--max-rounds | Maximum number of tool-use rounds |
jam diff
Review a git diff with AI.
jam diff
jam diff --staged
jam diff --no-review
--staged | Review only staged changes |
--no-review | Show the diff without AI review |
--provider | AI provider to use |
--model | Model name to use |
jam review
Review a branch or PR with AI.
jam review
jam review --base develop
jam review --pr 42
jam review --json
--base | Base branch to diff against |
--pr | Pull request number (requires gh CLI) |
--json | Output the review as JSON |
--provider | AI provider to use |
--model | Model name to use |
jam commit
Generate an AI commit message from staged changes and commit.
jam commit
jam commit --dry
jam commit --yes
jam commit --amend
--dry | Print the generated message without committing |
--yes | Auto-approve the generated commit message |
--amend | Amend the previous commit |
jam patch
Generate and optionally apply a code patch.
jam patch "add error handling to the API routes"
jam patch --apply "fix the race condition in worker.ts"
jam patch --json "add TypeScript types to utils"
--apply | Apply the generated patch immediately |
--json | Output the patch as JSON |
--provider | AI provider to use |
--model | Model name to use |
jam trace
Trace the call graph of a function, class, or symbol.
jam trace createProvider
jam trace --depth 3 handleRequest
jam trace --no-ai MyClass
--depth | Maximum depth of the call graph |
--no-ai | Skip AI analysis, show raw graph only |
--json | Output the trace as JSON |
--provider | AI provider to use |
jam diagram
Generate architecture diagrams from code analysis (Mermaid output).
jam diagram --type architecture
jam diagram --type deps src/providers
jam diagram --no-ai --type class
jam diagram --json
--type | Diagram type: architecture, deps, class, or flow |
--no-ai | Generate deterministic Mermaid from static analysis only |
--json | Output raw ProjectAnalysis data as JSON |
--provider | AI provider to use |
jam verify
Validate changes -- run checks, scan for secrets, assess risk.
jam verify
jam verify --skip-ai
jam verify --json
--skip-ai | Run only local checks, skip AI assessment |
--json | Output results as JSON |
--provider | AI provider to use |
Integrations
jam jira
Jira integration -- browse and start working on issues.
jam jira issues
jam jira start PROJ-123
jam jira view PROJ-456
issues | List issues assigned to you |
start | Create a branch and begin work on an issue |
view | View issue details |
Requires JIRA_URL and JIRA_TOKEN environment variables.
jam mcp
Manage MCP (Model Context Protocol) servers.
jam mcp list
jam mcp list --json
--json | Output server list as JSON |
Configure servers in the .jamrc mcpServers field.
Utilities
jam todo
Scan codebase for TODO/FIXME/HACK/XXX comments.
jam todo
jam todo --by-author
jam todo --by-age
jam todo --type FIXME BUG
jam todo --json
--by-author | Group results by git author |
--by-age | Sort results by age |
--type | Filter by comment type (TODO, FIXME, HACK, etc.) |
--pattern | Custom regex pattern to match |
--json | Output results as JSON |
jam ports
Show what is listening on your dev ports.
jam ports
jam ports --json
--json | Output port list as JSON |
jam recent
Show recently modified files by git activity.
jam recent
jam recent --days 30
jam recent --json
--days | Number of days to look back (default: 7) |
--json | Output file list as JSON |
jam stats
Codebase health dashboard -- LOC, churn, complexity.
jam stats
jam stats --json
--json | Output stats as JSON |
jam hash
Hash files or directories (.gitignore-aware).
jam hash src/
jam hash --algo sha1 package.json
jam hash --json src/utils/
--algo | Hash algorithm: sha256 (default), sha1, or md5 |
--json | Output hashes as JSON |
jam env
Manage .env files -- diff, validate, find missing vars, redact.
jam env
jam env --diff .env .env.example
jam env --redact
jam env --json
--diff | Compare two env files side by side |
--redact | Print env vars with values redacted |
--json | Output env data as JSON |
jam deps
Analyze import dependency graph -- cycles, orphans, hotspots.
jam deps
jam deps --json
--json | Output dependency analysis as JSON |
jam dup
Detect near-duplicate code blocks.
jam dup
jam dup --threshold 90
jam dup --min-lines 8
jam dup --json
--threshold | Similarity threshold percentage (default: 80) |
--min-lines | Minimum number of lines for a block (default: 6) |
--json | Output duplicates as JSON |
jam json
JSON swiss knife -- pretty print, query, diff, minify.
jam json package.json
jam json package.json --query '.dependencies'
jam json --diff a.json b.json
jam json --minify data.json
--query | JSONPath query to extract specific fields |
--diff | Diff two JSON files |
--flatten | Flatten nested JSON to dot-notation keys |
--minify | Output minified JSON |
jam convert
Convert between formats -- JSON, YAML, CSV, Base64, URL, Hex.
jam convert --from json --to yaml config.json
jam convert --from base64 --to text encoded.txt
jam convert --from csv --to json data.csv
--from | Source format |
--to | Target format |
jam pack
Package analyzer -- deps, size, unused detection, scripts.
jam pack
jam pack --json
--json | Output package analysis as JSON |
jam http
Quick HTTP client with pretty JSON output.
jam http GET https://api.example.com/users
jam http POST https://api.example.com/users -d '{"name":"test"}'
jam http --json https://api.example.com/status
-d | Request body data |
-H | Custom request header |
--json | Force JSON output formatting |
jam md2pdf
Convert a Markdown file to PDF.
jam md2pdf README.md
jam md2pdf --style minimal document.md
jam md2pdf --output report.pdf notes.md
--style | PDF style: default, minimal, or academic |
--output | Output file path |
jam git wtf
Explain the current git state in plain English — branch, upstream, conflicts, mid-rebase, stashes.
jam git wtf
jam git undo
Detect the last git operation and suggest the safe undo command with explanation.
jam git undo
jam git undo --dry
--dry | Preview only, do not execute |
jam git cleanup
Remove merged branches, prune stale remote refs, find old branches.
jam git cleanup
jam git cleanup --dry
jam git cleanup --json
--dry | Preview only, do not delete |
--json | JSON output |
jam git standup
Show your recent commits across all branches — perfect for daily standups.
jam git standup
jam git standup --days 7
jam git standup --author "Jane" --json
--days <n> | Days to look back (default: 1) |
--author <name> | Filter by author |
--json | JSON output |
jam git oops
Quick reference for 10 common git mistakes with step-by-step fixes.
jam git oops
Setup & Config
jam init
Set up Jam in the current project.
jam init
jam init --skip-detection
--skip-detection | Skip automatic project detection |
jam config
Manage Jam configuration.
jam config show
jam config init
show | Display the current resolved configuration |
init | Create a new .jamrc configuration file |
jam auth
Manage authentication credentials.
jam auth login
jam auth logout
login | Authenticate with a provider |
logout | Remove stored credentials |
jam models
Model management.
jam models list
jam models list --provider anthropic
--provider | Filter models by provider |
jam history
Manage chat session history.
jam history list
jam history show <session-id>
list | List all saved chat sessions |
show | Display a specific session by ID |
jam completion
Shell completion scripts.
jam completion install
install | Install completions for bash and zsh |
jam context
Manage the JAM.md project context file.
jam context init
jam context show
init | Create a new JAM.md context file |
show | Display the current project context |
jam cache
Manage the response cache.
jam cache stats
jam cache clear
jam cache prune
stats | Show cache size and hit rate |
clear | Delete all cached responses |
prune | Remove expired cache entries |
jam doctor
Run system diagnostics.
jam doctor
| Checks Node.js version, config validity, provider connectivity, ripgrep availability, and keytar status. |
jam plugin
Manage jam plugins.
jam plugin list
list | List all discovered plugins and their status |