ArgentOSDocs

Task System Overview

ArgentOS task system — a priority queue with accountability for your AI agent.

Overview

The task system gives your ArgentOS agent a structured way to track work. Instead of ad-hoc requests that get lost in conversation history, tasks are persistent records with status, priority, and accountability tracking.

Tasks are stored in a SQLite database shared between the agent and the dashboard, so both sides have the same view of what needs to be done.

Core Concepts

Task Structure

interface Task {
  id: string;
  title: string;
  description?: string;
  status: "pending" | "in_progress" | "blocked" | "completed" | "failed";
  priority: "urgent" | "high" | "normal" | "low" | "background";
  source: "user" | "agent" | "heartbeat" | "schedule";
  createdAt: string;
  updatedAt: string;
  completedAt?: string;
}

Priority Queue

Tasks are ordered by priority:

PriorityWhen to Use
urgentNeeds immediate attention
highImportant, do soon
normalStandard priority (default)
lowDo when there is free time
backgroundLong-running, no deadline

The agent processes tasks in priority order when triggered by the heartbeat or user.

Sources

Tasks can be created by:

  • User: Explicitly requested via chat, dashboard, or CLI
  • Agent: The agent creates tasks for itself based on conversations
  • Heartbeat: Recurring tasks generated by the heartbeat system
  • Schedule: Cron-like scheduled tasks

Agent Tools

The agent interacts with tasks through these tools:

ToolDescription
tasks_listList all tasks, optionally filtered by status or priority
tasks_addCreate a new task
tasks_startMark a task as in_progress
tasks_completeMark a task as completed
tasks_blockMark a task as blocked with a reason

Storage

Tasks are stored in:

~/.argentos/data/dashboard.db

This database is shared between the dashboard API server and the agent runtime.