Docs
Jan Agent
Overview

Overview

Jan Agent is an AI agent that lives in your terminal. You give it a task in plain language, and it reads files, edits them, runs commands, and searches the web until the work is done - asking for your approval before anything touches your machine.

It uses the providers you have already configured in Jan Desktop, so if you're a Jan user there is nothing new to sign up for.


jan

That single command opens the interactive console in whatever directory you're in.

Jan Agent and Jan Desktop

They're two front ends onto the same stack, built for different jobs. Jan Desktop is where you run models on your own hardware and work in a GUI. Jan Agent is where you point a model at a folder and let it work.

Jan DesktopJan Agent
InterfaceDesktop appTerminal, interactive or headless
Where models runLocally via llama.cpp or MLX, or a cloud providerCloud providers, or any OpenAI-compatible endpoint
Works onConversations, projects, and files you attachA project folder on disk
Files and shellThrough MCP servers you addBuilt in - read, write, edit, and run commands, each gated by approval
MCP serversYesYes, the same ones
Skills and memoryYesYes, the same ones

Neither replaces the other. A common setup is Jan Desktop serving a local model, with Jan Agent pointed at it - see running against local models.

Provider settings, MCP servers, skills, and memory are all shared, so anything you set up in one is already there in the other.

Install

⚠️

Jan Agent is a preview. The installer on dev pulls from the agent-nightly channel - expect nightly-quality builds.


curl -fsSL https://delta.jan.ai/jan-cli/install-jan-agent.sh | bash

Then check it landed:


jan --version

The Quickstart covers connecting a provider and finishing a first task. Looking for the desktop app instead? Download Jan Desktop (opens in a new tab).

What it can do

  • Read and change a project - open files, make targeted edits, create new ones.
  • Run commands - build, test, grep, and read the output to decide what to do next.
  • Search the web - look things up mid-task when the answer isn't in your project.
  • Use your MCP servers - every connector configured in Jan Desktop is available here too.
  • Follow your project's skills - reusable procedures it loads when a task calls for them.
  • Remember across sessions - durable facts about the project, kept as files you can review.
  • Delegate - split large jobs across subagents that work in parallel.
  • Keep working toward a goal - /goal keeps it going until a condition you set is true.

Jan Agent ships no inference engine of its own, so a model always runs somewhere else. That can be a cloud provider, or your own machine - point it at any OpenAI-compatible endpoint, such as Jan Desktop's local API server, with jan config set --base-url.

Get started

Staying in control

The agent edits files and runs commands without stopping to ask. File paths are checked against the project root, and .jan/agent/ internals and anything in [tools] deny are refused outright - but shell commands are not sandboxed by default, so one runs with your own access.

Three ways to change that:

  • Plan mode (jan --plan) makes the session read-only. The agent investigates and proposes, but cannot change anything.
  • Safe mode (jan --safe) asks before every write and shell command, instead of auto-approving them.
  • Sandbox (jan --sandbox) confines shell commands to the project with an OS sandbox. Off by default on the CLI, always on in the desktop app.

See Tools & permissions for the full picture.