Logs
Append, list, and delete activity/comment logs on tracks.
Use epismo log for comments, agent updates, and review notes attached to task and goal tracks. Logs do not edit the track's own content; they create a timeline alongside it. Anyone who can access a track can read and append logs on that track.
Appending and deleting logs are free. Listing logs costs 1 credit.
Create a log
epismo log create <track-reference> --content "Blocked on missing test fixtures."
epismo log create <track-reference> --kind review --content "Tests failed" --metadata '{"verdict":"fail"}'
epismo log create <track-reference> --content "Retry-safe note" --idempotency-key 00000000-0000-4000-8000-000000000001<track-reference> must be a task or goal UUID, or a URL that contains one. Track aliases do not exist.
--kind is one of:
| Kind | Use for |
|---|---|
comment |
Discussion, questions, notes, or shared context |
update |
Work-state reports: what changed, was found, or next |
review |
Verdicts, QA results, approvals, or review outcomes |
comment is the default. The internal system kind is reserved for platform-generated entries and cannot be written through the CLI.
--metadata accepts a JSON object, capped at 16KB once serialized. Use it for compact machine-readable fields; put larger human-readable detail in --content. Use --idempotency-key with a UUID when retrying safely. Reusing an idempotency key returns the existing log unless that log has been deleted, in which case the command fails with a conflict.
List logs
epismo log list <track-reference> # newest first for one track
epismo log list <track-reference> --cursor <logId> # older history
epismo log list <track-reference> --order asc # chronological from the start
epismo log list # every log you can see, newest first
epismo log list --author-id <userId> # only logs one user wroteepismo log list reads one track's logs when you pass <track-reference>. Omit it for a separate activity feed across every track you can currently access instead. --author-id narrows either mode.
Results are newest first by default (--order desc). Use --order asc for chronological replay or, with --cursor, to fetch only what was appended after a known log. Pagination is the same in both modes: pass the response's nextCursor back as --cursor with the same --order to fetch the next page.
Track-scoped reads always reflect the track's current ACL. The cross-track feed reflects an ACL snapshot taken when each log was written, not a live re-check. If you're later removed from a track, logs you could already see there may still appear in the feed; epismo log list <track-reference> is unaffected and checks the track's current ACL.
Each log includes the resolved userId and authorName when the caller can see that author. Authors outside the caller's visible set are returned as "unknown" rather than exposing their account id. If --author-id targets an author the caller cannot see, the result is empty.
Delete a log
epismo log delete <logId>log delete deletes one log. Authors can delete their own logs; a track's creator can delete any log on that track. Deleted logs are omitted from future list results.
Cost
| Command | Cost |
|---|---|
epismo log create |
free |
epismo log list |
1 credit |
epismo log delete |
free |
Common mistakes
- Pass a track UUID or a URL containing one to
createand track-scopedlist. Track aliases do not exist. - Keep
--orderunchanged when passingnextCursorinto--cursor. - Use
--metadatafor compact structured data only. Long updates belong in--content.