About 5 min read

Task Management

Karma One runs AI work in the background through a robust task queue system. Whether an avatar is conducting deep research, generating a report, or executing a multi-step automation, every unit of work is tracked as a task with full lifecycle visibility.

How Tasks Work

When you send a request that requires extended processing --- such as agent-mode research, sandbox code execution, or scheduled autopilot jobs --- Karma One creates a background task rather than blocking the conversation. You can continue chatting or close the app entirely; the task runs to completion on the server.

Task States

Every task moves through a well-defined set of states:

| State | Description | |---|---| | Queued | The task has been accepted and is waiting for an available worker. | | Running | Active processing is underway. Progress updates stream in real time. | | Completed | The task finished successfully. Results are available in the conversation. | | Failed | An error occurred. The failure reason is recorded for review. |

Viewing Task History

Open the task panel from your conversation to see all past and active tasks. Each entry shows:

  • Task type and description
  • Creation time and duration
  • Current state with a progress indicator
  • The avatar that owns the task (if applicable)
  • Output summary or error message

Tip: Long-running tasks such as deep research display a real-time step-by-step plan. Each step updates with a checkbox as it completes, so you always know where the process stands.

Long-Running Task Progress

For complex agent tasks, Karma One uses a plan tracking system:

  1. The agent writes a plan file with numbered steps.
  2. On each iteration, the server reads the plan and checks off completed steps.
  3. A plan_update event streams to the client with the current step list and iteration count.
  4. If no progress is detected for several iterations, the system injects a drift alert to get the agent back on track.

This means you get a live progress view --- not just a spinner --- for tasks that may run for minutes.

Task Rating

After a task completes, you can rate the result. Ratings feed into the avatar's performance history and help the system improve over time. To rate a task:

  1. Open the completed task result in your conversation.
  2. Tap the rating control (thumbs up / thumbs down).
  3. Optionally add a comment explaining what was good or what could improve.

Avatar Task Association

Every task is linked to the avatar that executed it. This association enables:

  • Per-avatar task history --- see everything a specific avatar has done.
  • Autopilot attribution --- tasks triggered by an avatar's autopilot schedule are tagged with a "Proactive" badge so you can distinguish them from your manual requests.
  • Performance tracking --- task success rates and durations are tracked per avatar.

Scheduled Tasks

Tasks can be triggered on a schedule rather than by a manual request. See Scheduling & Autopilot for details on:

  • Recurring schedules (cron-based)
  • One-time delayed tasks
  • Morning briefing tasks
  • Avatar autopilot task cycles

Task Concurrency

Karma One manages concurrency automatically. Multiple tasks from different avatars can run in parallel. The queue system ensures fair resource allocation and prevents any single conversation from monopolizing server capacity.

Retry and Failure Handling

If a task fails due to a transient error (network timeout, temporary service unavailability), the system records the failure with a clear error message. You can review the failure reason and re-trigger the task manually. For scheduled tasks, the next scheduled run proceeds normally regardless of a previous failure.

Best Practices

  • Let tasks run in the background. You do not need to keep the conversation open.
  • Check the plan view for long-running agent tasks to monitor progress.
  • Rate completed tasks to help improve avatar performance over time.
  • Review failed tasks promptly --- the error message usually indicates whether a retry will help or whether the request needs adjustment.