Skip to content

Tracking Work Epics and Tasks

Rafael Fragoso edited this page Jun 8, 2026 · 2 revisions

Tracking Work: Epics, Stories & Tasks

Epics, stories and tasks are structured memory — a passive, durable record of work that lives alongside memories, all under the unified memory command. Columbus stores and retrieves; it never drives, gates, or enforces transitions (see Scope Boundary).

The model

The hierarchy is epic → story → task:

  • An epic groups related work and carries tags, references, and history.
  • A story belongs to an epic (--parent epic_NNN).
  • A task belongs to a story (--parent story_NNN); its epic is the story's.
  • Status is a recorded field from a fixed vocabulary: todo, in_progress, blocked, done, cancelled. Any status can move to any other — no order is enforced.
  • Every status change and comment is recorded in an append-only event log.

Each item is embedded, so it surfaces in semantic search.

Create work

$ columbus memory add epic --title "Configurable networking" --tag infra
epic_001 [todo] Configurable networking

$ columbus memory add story --parent epic_001 --title "Host & port overrides"
story_001 [todo] Host & port overrides (epic_001)

$ columbus memory add task --parent story_001 --title "Support HOST override"
task_001 [todo] Support HOST override (story_001)

Record progress

$ columbus memory update task task_001 --status in_progress --comment "started"
task_001 [in_progress] Support HOST override (story_001)

$ columbus memory update task task_001 --comment "blocked on tokenizer choice"

--status accepts any of the five statuses; --comment attaches a note to the event (alone, or annotating a status change).

Attach references

Tie work to the code and memories it concerns (drift-checked, like memory evidence):

columbus memory update epic epic_001 --add-ref file:src/server.ts --add-ref memory:mem_001

References resolve to indexed file / dir / memory / symbol targets; an unresolved ref surfaces as a warning on the item (never fatal).

Inspect

$ columbus show epic epic_001
epic_001 [todo] Configurable networking
tags: infra
…child stories & tasks, references (inline drift), and history

show epic lists fields, references, history, and child stories/tasks; show task does the same for a task.

List and filter

columbus memory list epic --status in_progress
columbus memory list story --parent epic_001
columbus memory list task --parent story_001

It's searchable

Work items are first-class in search:

columbus search "networking" --kind epic
columbus search "override"   --kind task

And show file | symbol | memory lists, in reverse, the work that references that entity — answering "what touches this?"

Delete

columbus memory remove epic  epic_001  --force   # cascades stories + tasks; ids retired
columbus memory remove story story_001 --force   # cascades tasks
columbus memory remove task  task_001  --force

Related

Command: memory · Project Memory

Clone this wiki locally