Jarvis Agent is a next-generation extension for Visual Studio Code. Whether you want to automate component creation, debug a complex system, or explore a huge codebase, Jarvis integrates seamlessly into your local environment to assist you.
Here is an example of what you can do with Jarvis Agent.
Select any block of code, press Cmd+K Cmd+K (or Ctrl+K Ctrl+K on Windows/Linux), and give Jarvis an instruction (e.g. "Add robust error handling to this function").
The AI writes the code live, and CodeLens (✓ Accept / ✗ Reject) lets you approve or reject the change line by line.
Jarvis doesn't suffer from the typical token limits of other AIs:
- @file: Instantly reference specific files in your requests.
- Semantic RAG (
@docs): Search your documentation and entire project by concept, not just by keyword. - AST Pruning: Jarvis analyzes syntactic structure (with
tree-sitter) to read only the important functions of a giant file without saturating the context.
Jarvis doesn't just write code, it runs it.
- TDD Workflow: Type
/tdd write me a fibonacci functionand Jarvis will write the test, try to run it, see the error, write the implementation, and verify the test passes. - Integrated Terminal: The agent can run
npm install,git commit, orcargo build. Human-in-the-Loop (HITL): in strict mode, it asks for your permission first.
Thanks to the Model Context Protocol (MCP), Jarvis can use external tools. Connect it to GitHub, a PostgreSQL database, or a third-party MCP server directly from the Settings tab. The built-in web search (search_web) is powered by DuckDuckGo — entirely free, no API key or account needed — with configurable default sources (StackOverflow, MDN, GitHub, or your own domains).
- 5 dedicated agents (
@QA-Agent,@Doc-Agent,@Refactor-Agent,@Security-Agent,@Perf-Agent), each with tool access genuinely restricted to its role —@Security-Agentaudits read-only,@QA-Agentruns tests without ever editing code. JARVIS.md: type/init(orJarvis: Initialize Projectin the command palette) so Jarvis initializes git if needed, analyzes your project, and generates an instructions file versioned with the code — shared with the whole team, unlike personal rules.- Folder-scoped rules: scope a rule to a subfolder (
src/backend/**) so it only applies to the relevant files. - Persistent task checklist above the chat, auto-filled for
/workflowruns. - Auto-open of the file being edited, with green/red decorations already in place.
- Inline autocomplete (Tab) — ghost-text suggestions as you type; disabled by default, enable it in Settings > Optimization.
- Install Jarvis Agent from the VS Code Marketplace.
- Click the Jarvis icon in the left sidebar (or run the
Jarvis: Start Chatcommand). - The Welcome screen will guide you through configuring your first model!
Jarvis is agnostic. You choose the brain behind your agent:
- Local (Free & Private): Connect Ollama or LM Studio in one click. We recommend recent models like
qwen2.5-coder:7borllama3:8b. - Cloud (Ultra Performant): Connect OpenRouter, Mistral AI, or any OpenAI-compatible API to use state-of-the-art models. For excellent performance completely free with no latency, we recommend Mistral AI models directly from the Mistral provider. Create a free API key here.
- Automatic: Jarvis analyzes the model's size and the task's complexity to choose between a plain text answer or a decomposition workflow (Task Decomposer).
- Fast: Quick text-only replies, no tool execution.
- Plan: Jarvis always creates a Markdown plan (
implementation_plan.md) for you to validate the architecture before it touches any code.
Cmd+K Cmd+K(Mac) orCtrl+K Ctrl+K(Win): Inline editing of a code selection.Tab: Accepts an inline autocomplete suggestion (if enabled in Settings > Optimization)./new: Starts a new conversation (clears context)./init: Initializes git if needed and generatesJARVIS.mdfrom a project analysis./rollback: Opens the "Checkpoints" list to fully undo Jarvis's impact on your project.
If a task is taking longer than expected or a command is stuck, use the stop button (Square) in the chat panel to interrupt the agent and cancel the current request.
All configuration is stored in ~/.jarvis/config.json (+ an optional per-workspace override in jarvis/jarvis-config.json).
You can configure Jarvis visually via the Settings tab:
- Adjust verbosity (Concise / Detailed).
- Hide or show the agent's thoughts.
- Manage
jarvisignoreto prevent access to certain sensitive folders. - Configure MCP server profiles.
- Configure your default sources for web search (free via DuckDuckGo, no key required).
- Customize specialized agents (system prompt + allowed tools) and rules (global or folder-scoped).
- Enable auto-open of the edited file (
always/never/strict-hitl-only) and inline autocomplete (disabled by default).
Get the most out of Jarvis and keep your token usage under control:
- Write a
JARVIS.md: run/initonce per project. It's versioned with the code (unlike personal rules), so the whole team benefits from the same project context on every request. - Scope rules to folders: instead of one long global rule, give a rule a
scopeglob (e.g.src/backend/**) so it only loads for the files it's actually relevant to — shorter prompts, more focused answers. - Save your own prompts as
/shortcuts: Settings > Prompts lets you turn any recurring instruction into a/nameshortcut. Jarvis ships with two disabled examples — aCommentatorrule and an/explainprompt — enable them or duplicate them as a starting point for your own. - Reach for
@fileand@docsbefore pasting code:@file:pathpulls in exactly the file you mean, and@docs:querysearches your indexed documentation semantically — both are cheaper and more accurate than dropping large code blocks into the chat. - Match the chat mode to the task: use Fast for quick text-only questions (no tool calls, no token overhead), Automatic for everyday coding, and Plan when you want to validate the approach before Jarvis touches any files.
- Delegate to a specialized agent:
@Security-Agentfor a read-only audit,@QA-Agentto just run tests,@Refactor-Agentwhen you want edits re-verified against the test suite — each has tool access restricted to its role, which keeps it focused and safer to run unattended. - Let
/tddand/workflowstructure multi-step work:/tdd <task>drives a write → test → fix loop automatically, and/workflow <id> <task>runs one of the predefined multi-step sequences (ordynamicfor an auto-decomposed task) instead of you prompting step by step. - Tune HITL to your risk tolerance:
strictmode confirms every terminal command and edit,moderatetrusts routine actions,freelets Jarvis run autonomously — pick per project depending on how much you want to supervise. - Use checkpoints as a safety net: Jarvis stashes a git checkpoint before actions/workflows, so
/rollback(or the Checkpoints tab) lets you experiment freely and undo anything that goes wrong. - Keep secrets out of the sandbox: maintain
.jarvisignore(auto-generated, stricter than.gitignore) so credentials and sensitive folders are never read or sent to a cloud model. - Tag model roles deliberately: in Settings > Models, assign a fast/cheap model to
autocompleteand a stronger one tochat, instead of using a single model for everything.
Jarvis is a community project, built by developers, for developers.
- Ideas, bugs? Open an Issue on GitHub.
- Want to contribute? Pull Requests are welcome! See CONTRIBUTING.md.
- Change history: see CHANGELOG.md.
Made for the VS Code community.