---
description: In-progress task conventions -- doc format, status values, auto-save behavior
---
<!-- @generated by packages/sdk/scripts/copy-reference-docs.mjs -- DO NOT EDIT -->
<!-- Regenerate: pnpm scaffold:sync -->


# Task Tracking

## Status Values

Exactly three values for frontmatter `status`: `planned`, `in-progress`, `complete`.

## Doc Format

- Frontmatter: `title`, `description`, `status` only -- nothing else belongs in task-doc frontmatter; `resume_context` is DB-canonical on `prj_tasks`
- Sections: Objective, Plan, Progress, Resume Context
- Progress subsections use markers: `### Step N: Title -- PENDING`, `-- IN PROGRESS`, `-- COMPLETE`

## Auto-Update Behavior

- When working on a tracked task, update the Progress section when a plan step transitions:
  - PENDING -> IN PROGRESS (starting work on a step)
  - IN PROGRESS -> COMPLETE (finishing a step)
- Do NOT update on every action -- only on step transitions

## Auto-Save Behavior

The agent auto-saves progress (no user action needed) when:

- The conversation context is getting heavy (many tool calls, large file reads)
- The user appears to be wrapping up (thanks, goodbye, switching topics)
- Significant progress has been made (2+ steps completed without saving)
- Before a context reset

Auto-save updates the task doc's Progress and Resume Context sections silently, then briefly confirms. The canonical persistence path is `pnpm elevasis-sdk project:task:save` -- the CLI writes through to `prj_tasks.resume_context` (JSONB) so another agent can resume without re-deriving intent.

## Completion Suggestions

When all plan steps are marked COMPLETE, **suggest** completing the task -- never auto-invoke. Ask: "All steps for '{task}' look done. Want me to finalize it?"

## Where Tasks Live

Project tasks for this template live in the `prj_tasks` Supabase table, not in repo-local files. Operate on them via the SDK CLI:

- `pnpm elevasis-sdk project:work` -- entrypoint for task work (resume / new intent detection)
- `pnpm elevasis-sdk project:list` -- portfolio / task listing
- `pnpm elevasis-sdk project:task:save` -- persist progress + `resume_context` to the DB

The monorepo-side `/work` slash command still exists for monorepo task docs under `apps/docs/content/docs/in-progress/**`; that flow is unchanged. What went away is the external template's own `/work` skill and its `docs/in-progress/` directory -- external projects now route through the DB-backed `project:*` surface above.
