Preconfigs

Agent personality presets that define tools, model, and system prompt.

Preconfigs

Preconfigs define what your agent can do — which tools it has access to, what model it uses, and how it behaves. They live in ~/.jean2/preconfigs/.

Each preconfig is a file named by its ID. Two formats are supported:

  • Markdown with YAML frontmatter (recommended)
  • JSON

Both formats are equivalent — use whichever you prefer. Markdown is recommended because the system prompt is written directly in the file body, which is easier to read and edit for long prompts.

This is where the magic happens. Jean2 doesn't prepend any hidden system message to your prompt — it only injects information about available subagents. The system prompt is entirely yours. This means you can steer your agent's behavior however you want, and fine-tune preconfigs for different models since they respond to different wording styles.

File formats

The file name becomes the preconfig ID. For example, ~/.jean2/preconfigs/my-agent.md:

---
name: My Agent
description: A custom agent for my workflow
tools:
  - read-file
  - write-file
  - shell
  - grep
  - glob
model: gpt-5.4
provider: codex
variant: medium
settings:
  temperature: 0.3
mode: primary
canSpawnSubagents:
  - explore
  - code-planning
skills:
  - code-review
isDefault: false
---

You are a specialized assistant for my project.

Follow these rules:
- Always read files before modifying them
- Test your changes after each step
- Ask before running destructive commands

The markdown body below the frontmatter is the system prompt.

JSON

Same preconfig as a JSON file (~/.jean2/preconfigs/my-agent.json):

{
  "id": "my-agent",
  "name": "My Agent",
  "description": "A custom agent for my workflow",
  "tools": ["read-file", "write-file", "shell", "grep", "glob"],
  "model": "gpt-5.4",
  "provider": "codex",
  "variant": "medium",
  "systemPrompt": "You are a specialized assistant for my project.\n\nFollow these rules:\n- Always read files before modifying them\n- Test your changes after each step\n- Ask before running destructive commands",
  "settings": { "temperature": 0.3 },
  "mode": "primary",
  "canSpawnSubagents": ["explore", "code-planning"],
  "skills": ["code-review"],
  "isDefault": false
}

Schema

Field Description
id Unique identifier. For markdown files, derived from the filename. Required in JSON.
name Display name in the preconfig picker
description What this agent is for
systemPrompt The system prompt. In markdown format, this is the file body. In JSON, a string field. Jean2 does not prepend any hidden system message — this is your full prompt, only augmented with available subagent information.
tools List of tools the agent can use. null means all available tools.
model Model ID to use. Falls back to the default in models.json.
provider Provider ID to use. Falls back to the default in models.json.
variant Model variant to use (e.g. high for high reasoning effort)
settings Overrides passed to the LLM — e.g. { "temperature": 0.2 }
mode primary (user-facing), subagent (Task tool only), or both. Default: primary.
canSpawnSubagents Controls which subagents this preconfig can spawn. true (or omitted) = all available. false or null = none. A list like ["explore", "code-planning"] = only those specific subagent IDs.
skills Controls which skills this preconfig can access. Omitted or null = all available. [] = none. A list like ["code-review", "deploy"] = only those named skills.
isDefault Whether this preconfig is loaded for new sessions.

Modes

Mode Where it appears
primary In the preconfig picker when creating or switching sessions
subagent Only available when another agent delegates via the Task tool
both Available everywhere

Default preconfigs

These are created by jean2 init in ~/.jean2/preconfigs/:

General

Read-only research and multi-step task execution. Can spawn subagents.

  • Tools: read-file, glob, grep, ls, webfetch
  • Mode: primary
  • Temperature: 0.3

Code

Full code editing — read, write, edit, patch, and shell access. Can spawn subagents.

  • Tools: read-file, write-file, edit, multiedit, apply-patch, glob, grep, ls, webfetch, shell, todoread, todowrite
  • Mode: primary
  • Temperature: 0.2

Code Planning

Planning-focused — analyzes codebases and designs solutions without editing code. Can spawn subagents.

  • Tools: read-file, write-file, glob, grep, ls, webfetch
  • Mode: primary
  • Temperature: 0.3

Explore

Fast codebase search and file discovery. Read-only, cannot spawn subagents. Only available as a subagent — it doesn't appear in the preconfig picker.

  • Tools: read-file, glob, grep, ls, webfetch
  • Mode: subagent
  • Temperature: 0.2

Creating custom preconfigs

Add a markdown or JSON file to ~/.jean2/preconfigs/. It will appear in the preconfig picker on the next page load.

You can also create preconfigs through the REST API or the desktop client.

Applying changes

No restart needed for preconfig edits — the server reloads them on the next session creation or preconfig switch.