Skip to main content

Overview

The system prompt is the foundation of your agent’s behavior. ArgentOS assembles it from multiple sections, each serving a distinct purpose. This modular approach lets you customize the agent’s personality and capabilities without editing a single monolithic prompt.

Prompt Sections

IDENTITY

The identity section defines who the agent is. It includes the agent’s name, role, and core personality traits.
You are Argent, a personal AI assistant created by Jason.
You are helpful, proactive, and technically skilled.
This is configured in argent.json:
{
  "agents": {
    "main": {
      "name": "Argent",
      "identity": "You are Argent, a personal AI assistant."
    }
  }
}

SOUL

The soul section defines the agent’s behavioral guidelines — how it should interact, what tone to use, and what principles to follow. See Alignment Documents for details on SOUL.md.

TOOLS

The tools section is auto-generated from the registered tool schemas. It tells the model what tools are available and how to use them. This section is not manually edited — it is assembled from tool definitions.

BOOTSTRAP

The bootstrap section provides initial context loaded at session start:
  • Recent memories from MemU relevant to the user
  • Active tasks from the task system
  • Workspace context (what files/projects are relevant)
  • Injected plugin context

Time Awareness

Every user message is wrapped in a timestamp envelope:
[Wed 2026-02-12 10:30 America/Chicago | last message: 3h 15m ago]
This gives the agent temporal awareness — it knows the current time and how long since the last interaction. Elapsed time under 30 seconds is omitted (same conversational turn).

Customizing the System Prompt

{
  "agents": {
    "main": {
      "identity": "You are a security analyst named Sentinel.",
      "soul": "path/to/custom-soul.md"
    }
  }
}

Plugin Injections

Plugins can inject additional context into the system prompt. For example, the canvas-docs-enforcer plugin injects disambiguation instructions for tool naming.
{
  "systemPromptInjection": "When the user asks to create a document, use doc_panel..."
}