Filter history by human, agent, task or date

The queries that matter once agents are committing.

Written By Dustin

Last updated 31 minutes ago

Once agents commit to a repository, “who changed this” needs a better answer than an author string.

tovio log --entity humantovio log --entity agent

Splits history by the kind of actor. agent means the commit was made under a capability token and carries provenance; human means it carries none. This is a property of the recorded provenance, not a guess based on the author name. Those are the only two accepted values.

By task

tovio log --task-id <id>

Every change made under one task, across lanes and authors — and it implies agent authorship, because a task id is only recorded on an agent commit. This is how you review a whole piece of agent work rather than individual commits.

By date

tovio log --date relativetovio log --date absolute

--date is a rendering choice, not a filter: it changes how each commit's time is printed, and it does not narrow the set. To cap the output, use --limit.

Combining

These filters compose with each other and with --why:

tovio log --entity agent --why --limit 50

Fifty agent changes with the deliberation behind each — the practical review loop for a repository where agents are working.

What they do not compose with is the graph: --graph and --all both conflict with --entity, --task-id, a <path> argument, and --why. A filtered view is rendered as a list.

Reaching through merges

By default a filtered view reaches through a merge into the lanes it integrated, so a change is credited to the agent that wrote it and not to the human who landed it. Add --first-parent if you want the opposite — the lane-summary view, where the merge stands in for everything it carried.

For scripts

tovio log --entity agent --format jsontovio log --entity agent --format csv