Vent#
Vent/feedback tool — emits in-the-moment friction signals to a durable ledger.
- The agent calls this when stuck or frustrated. Signals are written to:
~/.local/share/gptme/friction-ledger.jsonl
Rate-limited to one vent per turn to prevent recursive venting spirals (Lovable found agents can spiral into 43+ vents without this guard).
Usage:
```vent
pytest exits 0 with "no tests found" even though tests/test_vent.py
exists. Tried --co and an explicit path; the discovery config is wrong.
Owner: tooling
```
Resolution owner (axis 1 — who/what unblocks this) is an optional, small, stable enum captured at vent time. Richer theme/cause clustering happens later at analysis time, so keep the capture label thin:
self Solvable now with better prompting / context / reasoning tooling Needs a tool / permission / config / env change operator Needs a human (decision, credential, approval, account action) upstream Needs a fix in a dependency we don’t own architectural Not solvable in the current stack design
The Type keyword accepts both deprecated legacy aliases
(Type1->self, Type2a->tooling, Type2b->architectural, Type0->operator) and
current taxonomy values (e.g. Type: self, Type: tooling).