Skip to main content

Preset Agents

Wunderland ships with 8 agent presets and 3 deployment templates that provide ready-to-use configurations for common use cases. Presets define the agent's personality, security posture, suggested skills, and recommended channels -- so you can go from zero to a working agent in one command.

Using Presets via CLI

The fastest way to create a new agent from a preset:

wunderland init my-agent --preset research-assistant

This scaffolds a project directory with agent.config.json, PERSONA.md, and .env.example pre-populated from the preset.

You can combine a preset with a security tier override:

wunderland init my-agent --preset creative-writer --security-tier permissive

To list all available presets:

wunderland list-presets

Available Agent Presets

research-assistant

Thorough researcher with analytical focus. High conscientiousness and openness drive systematic, deep-dive research behavior.

TraitValueSecurity TierSuggested Skills
Honesty0.90balancedweb-search, summarize, github
Emotionality0.30
Extraversion0.40Channels
Agreeableness0.70webchat, slack
Conscientiousness0.95
Openness0.85

customer-support

Patient, empathetic support specialist. Very high agreeableness and elevated emotionality produce warm, accommodating interactions. Uses strict security to protect customer data.

TraitValueSecurity TierSuggested Skills
Honesty0.80stricthealthcheck
Emotionality0.70
Extraversion0.60Channels
Agreeableness0.95webchat, telegram, whatsapp, discord
Conscientiousness0.85
Openness0.50

creative-writer

Imaginative storyteller and content creator. Near-maximum openness (0.98) combined with high emotionality and moderate conscientiousness encourages experimental, expressive output.

TraitValueSecurity TierSuggested Skills
Honesty0.70balancedsummarize, image-gen
Emotionality0.80
Extraversion0.70Channels
Agreeableness0.60webchat
Conscientiousness0.50
Openness0.98

code-reviewer

Precise, detail-oriented code analyst. Near-maximum conscientiousness (0.98) and high honesty (0.95) produce thorough, no-nonsense code reviews. Low emotionality keeps feedback objective.

TraitValueSecurity TierSuggested Skills
Honesty0.95strictcoding-agent, github
Emotionality0.20
Extraversion0.30Channels
Agreeableness0.50webchat, slack, discord
Conscientiousness0.98
Openness0.70

data-analyst

Systematic data interpreter and visualizer. High conscientiousness and openness balanced with low emotionality for objective, thorough analysis.

TraitValueSecurity TierSuggested Skills
Honesty0.90balancedsummarize, coding-agent
Emotionality0.20
Extraversion0.40Channels
Agreeableness0.60webchat, slack
Conscientiousness0.90
Openness0.80

security-auditor

Vigilant security-focused analyst. Near-maximum honesty (0.98) and conscientiousness (0.99) paired with the paranoid security tier. Low agreeableness means it will not hesitate to flag issues.

TraitValueSecurity TierSuggested Skills
Honesty0.98paranoidcoding-agent, github, healthcheck
Emotionality0.15
Extraversion0.25Channels
Agreeableness0.30webchat
Conscientiousness0.99
Openness0.60

devops-assistant

Infrastructure and deployment specialist. Balanced extraversion with high conscientiousness for clear, reliable operational guidance. Uses strict security for production safety.

TraitValueSecurity TierSuggested Skills
Honesty0.85stricthealthcheck, coding-agent, github
Emotionality0.20
Extraversion0.50Channels
Agreeableness0.60slack, discord, webchat
Conscientiousness0.90
Openness0.75

personal-assistant

Friendly, organized daily helper. High extraversion and agreeableness create a warm, proactive assistant. Suggested channels include the popular mobile messaging platforms.

TraitValueSecurity TierSuggested Skills
Honesty0.80balancedweather, apple-notes, apple-reminders, summarize
Emotionality0.60
Extraversion0.75Channels
Agreeableness0.85telegram, whatsapp, webchat
Conscientiousness0.80
Openness0.70

Deployment Templates

Templates provide full project configurations including security profiles, inference defaults, and step-up authorization rules. They are more comprehensive than agent presets.

minimal

Bare-bones configuration for local development and experimentation.

  • Security tier: permissive
  • All security layers disabled
  • Inference: Ollama with llama3 (local)
  • Channels: webchat only
  • Step-up auth: Tier 1 (all autonomous), 10-minute timeout
wunderland init my-dev-agent --template minimal

standard

Balanced configuration suitable for most use cases. Enables input classification and dual-LLM auditing with moderate security.

  • Security tier: balanced
  • PreLLM classifier and DualLLM auditor enabled
  • Inference: Ollama with dolphin-llama3:8b
  • Channels: webchat, telegram, discord
  • Skills: web-search, summarize, healthcheck
  • Step-up auth: Tier 1 default, Tier 2 for data/API/communication, Tier 3 for financial/system
wunderland init my-agent --template standard

enterprise

Full security configuration for production and compliance-sensitive environments.

  • Security tier: strict
  • All three security layers enabled (including output signing)
  • Inference: OpenAI gpt-4o with gpt-4o-mini router
  • Channels: webchat, slack, teams, discord, telegram, whatsapp, email
  • Skills: web-search, summarize, healthcheck, coding-agent, github
  • Step-up auth: Tier 2 default, Tier 3 for data modification/financial/system
  • Escalation triggers for high-value transactions, sensitive data, and irreversible actions
  • Audit logging enabled (90-day retention)
wunderland init my-enterprise-agent --template enterprise

Preset File Structure

Each preset lives in a folder under presets/agents/<preset-id>/:

presets/agents/research-assistant/
agent.config.json # HEXACO traits, security tier, skills, channels
PERSONA.md # System prompt / personality description

Templates are single JSON files under presets/templates/:

presets/templates/
minimal.json
standard.json
enterprise.json

Loading Presets Programmatically

import { PresetLoader } from 'wunderland/advanced';

const loader = new PresetLoader();

// List all presets
const presets = loader.listPresets();
for (const p of presets) {
console.log(`${p.id}: ${p.description} (${p.securityTier})`);
}

// Load a specific preset
const researcher = loader.loadPreset('research-assistant');
console.log(researcher.hexacoTraits);
console.log(researcher.persona); // Contents of PERSONA.md

// Load a template
const enterprise = loader.loadTemplate('enterprise');
console.log(enterprise.securityTier); // "strict"

// Get all known preset IDs (static, no filesystem)
const ids = PresetLoader.getPresetIds();
// ['research-assistant', 'customer-support', 'creative-writer', ...]

Creating Custom Presets

To create your own preset:

  1. Create a directory under presets/agents/:
mkdir -p presets/agents/my-custom-agent
  1. Create agent.config.json:
{
"name": "My Custom Agent",
"description": "A domain-specific agent for my use case",
"hexacoTraits": {
"honesty": 0.85,
"emotionality": 0.4,
"extraversion": 0.6,
"agreeableness": 0.7,
"conscientiousness": 0.8,
"openness": 0.75
},
"securityTier": "balanced",
"suggestedSkills": ["web-search", "summarize"],
"suggestedChannels": ["webchat", "slack"]
}
  1. Create PERSONA.md with the agent's system prompt and behavioral guidelines.

  2. Use it:

wunderland init my-project --preset my-custom-agent

Each agent preset declares suggestedSkills that are automatically loaded from the curated skills registry when you run wunderland start or wunderland chat in a project scaffolded from that preset.

PresetSecuritySkills
research-assistantbalancedweb-search, summarize, github
customer-supportstricthealthcheck
creative-writerbalancedsummarize, image-gen
code-reviewerstrictcoding-agent, github
data-analystbalancedsummarize, coding-agent
security-auditorparanoidcoding-agent, github, healthcheck
devops-assistantstricthealthcheck, coding-agent, github
personal-assistantbalancedweather, apple-notes, apple-reminders, summarize

How auto-loading works

  1. wunderland init my-agent --preset research-assistant writes "skills": ["web-search", "summarize", "github"] into agent.config.json.
  2. On wunderland start or wunderland chat, the CLI reads the skills array and calls resolveSkillsByNames() from the @framers/agentos-skills-registry package.
  3. The resolver validates each skill name against the curated catalog, builds a prompt snapshot, and merges it into the system prompt alongside any directory-based skills.

You can modify the skills array in agent.config.json at any time to add or remove skills:

{
"skills": ["web-search", "summarize", "github", "obsidian"]
}

Exporting and Importing Agents

Agents can be exported as portable JSON manifests for sharing, backup, or migration:

# Export current agent
wunderland export

# Export to a specific file
wunderland export -o my-agent-backup.json

# Import an agent from a manifest
wunderland import agent.manifest.json --dir ./my-imported-agent

The manifest includes HEXACO traits, security configuration, skills, channels, persona, and an optional integrity hash for sealed agents. Importing a sealed agent creates an unsealed copy. See Agent Serialization for the full manifest format.