| atom |
kind |
version |
input |
output |
errors |
side_effects |
idempotent |
timeout_ms |
deprecated |
stability |
keywords |
related |
| kei-task::create |
command |
0.1.0 |
| schema |
required |
example |
| schemas/create-input.json |
|
| title |
priority |
| Fix auth bug |
high |
|
|
| schema |
example |
| schemas/create-output.json |
| id |
created_at |
| 42 |
1714000000 |
|
|
| code |
http_analog |
description |
| InvalidPriority |
400 |
Priority must be one of: critical, high, medium, low |
|
| code |
http_analog |
description |
| InvalidTitle |
400 |
Title must be non-empty |
|
| code |
http_analog |
description |
| StoreError |
500 |
Underlying SQLite store failed to insert the task |
|
|
| op |
domain |
| write |
kei-task-db |
|
|
false |
5000 |
null |
stable |
| task |
| todo |
| create |
| dag |
| planning |
|
|
kei-task::create
Creates a new task row in the kei-task SQLite DAG. Returns the inserted
row id and the created_at unix timestamp. Also indexes title +
description into the FTS table used by kei-task::search.
Example
kei-task create "Fix auth bug" --priority high --description "Token rotation fails on leap second"
Returns the new task id on stdout:
42
Programmatic callers (runtime invocation) receive:
{ "id": 42, "created_at": 1714000000 }
Gotchas
priority defaults to "medium" if omitted. Case sensitive —
High returns InvalidPriority.
description defaults to empty string; blank descriptions are still
indexed by FTS but yield no search hits until populated.
milestone_id in the input schema is reserved for future use; the
current CLI does NOT accept it — link via kei-task link-milestone
after creation.
- Title uniqueness is NOT enforced at DB level; duplicate titles are
allowed and will all be returned by
kei-task::search.
Related