Branches (2)

main (default)

1eb3e4d feat: add workflow-aware status validation

Click to expand commit body
When creating or updating tasks, status is now validated against the
area's workflow. Error messages include valid options for that workflow:

invalid status for workflow: 'foo' for Kanban; valid: later, next, ...

MCP tools (create/update) validate when area context is available. The
query tool's hardcoded status list is replaced with a dynamic one.

CLI (task add/update) passes resolved area to status validation. When no
area is specified, falls back to listing all valid statuses.

Assisted-by: Claude Opus 4.5 via Crush

Amolith created

mcp-server-mode

35848a1 refactor(mcp)!: consolidate 23 tools into 7

Click to expand commit body
BREAKING CHANGE: Tool names have changed completely.

Before (23 tools): create_task, update_task, delete_task, list_tasks,
show_task, create_note, update_note, delete_note, list_notes, show_note,
create_person, update_person, delete_person, list_people, show_person,
add_timeline_note, track_habit, list_habits, list_areas, list_goals,
list_notebooks, add_journal_entry, get_timestamp

After (7 tools):
- create: entity={task, note, person, journal}
- update: entity={task, note, person}
- delete: entity={task, note, person}
- query: entity={task, note, person, area, goal, notebook, habit}
- track_habit: standalone action
- add_timeline_note: standalone action (extracted to timeline/)
- get_timestamp: standalone utility

Benefits:
- Clearer action-based semantics for LLM tool selection
- Reduced cognitive load (7 vs 23 tools)
- Consistent entity parameter across CRUD operations
- Config-based entities (area, goal, notebook, habit) now queryable

Also fixes track_habit to accept config keys, UUIDs, or deep links
(previously only accepted UUIDs).

Assisted-by: Claude Opus 4.5 via Crush

Amolith created