Catch agent goal-drift before it compounds.
Long agent sessions wander. Temper watches the goal vector mid-session and escalates the moment an agent starts solving the wrong problem — before it burns your budget on it.
Mid-session, not post-mortem
Goal anchoring
Pins the original task description as the session anchor. Every subsequent step is scored against it to produce a live drift coefficient.
Escalation rules
Configure the drift threshold that triggers a pause. Temper escalates to your review queue before wasted tokens compound into wasted hours.
Session-level anchor
The anchor travels with the session across tool calls and context switches — not just the first message — so long-running jobs stay on-track.
Recover the thread before tokens are gone
Temper scores every step against the original goal anchor. When the drift coefficient crosses your configured threshold, it pauses the session and routes it to your review queue — while recovery is still cheap.
Try Temper beta →Session drift · 1f3a
saved ~$3.20 + 22m wasted work
Privacy and metadata-only telemetry
Temper emits restraint signals per task: file-touch counts, line deltas, dependency declarations, and forg-temper: marker counts. No source code, file paths, user text, or PII is ever included in Temper telemetry. Signals are HMAC-signed before transmission. This is enforced by boundary tests and is a non-negotiable architectural invariant — see the Temper concept docs for the full contract.
Opt-out
Temper can be disabled at any time with forg temper off. This removes the Temper block from every adapter and restores each file byte-identically to its pre-Temper state. No residue remains.