Browse documentation
Docs target stable release v0.18.2.Stable vs main checked 2026-10-31

Tag and search

Portable v2 tags are mutable metadata outside the artifact digest. The tine tag command re-saves the file, removes any attached signature, and warns; re-sign when the tagged file must remain authenticated.

Terminal
tine tag result.tine --add prod --add regression
tine tag result.tine --remove regression
tine tag result.tine --list

tine search "tag:prod model:claude cost:>0.05"
tine ls --status failed --since 2026-06-01 --cost-min 0.01

# Rebuild .tine_runs/index.json from artifacts
tine repo storage reindex

Filters

Action queries add who, actions, touched, and audit. Search also supports harness/provider predicates and tool-argument text, with full-file fallback when indexed text is truncated.

tine ls and the search DSL support tag, model, exact status, minimum or maximum cost, date bounds, and text matching. tine ls also accepts --limit.

Machine-readable search

Terminal
tine search "tag:prod model:claude" --json

Introduced in v0.5, tine search --json emits exactly one object containing command, the joined query, count, and matching runs. A tag listing also supports tine tag result.tine --list --json; mutating --add and --remove operations refuse JSON mode. tine repo storage reindex does not accept --json.

Rebuildable index

.tine_runs/index.json is a sidecar for fast lookup, not the source of truth. tine repo storage reindex reconstructs it from .tine artifacts in that directory.

The index examples above target portable files. In a discovered repository, plain tag uses repository behavior unless a file path or legacy ID selects file mode; --legacy forces that mode. search --repo queries repository history. See repository dispatch.