Deterministic context infrastructure

Keep the signal.
Compact the noise.

Turn sprawling logs, failed tests, build errors, and command output into ranked, auditable context before an agent spends tokens reading it.

INPUT STREAM48,921 lines
FAILURE / 01 TypeError: session token expired 317 occurrences · exact ranges 882, 1,104, 2,991… · 257 locations omitted
SHA-256complete input fingerprint
EXACTredacted representative
BOUNDEDexplicit omission counts
PROCESSINGNo AI models
PAYMENTx402 / USDC
NETWORKBase
PRICE$0.002 + usage

Free quote workbench

Know the exact price before the text leaves your browser.

The counter runs locally. Requesting a quote sends only the number of Unicode code points and your spending limit—not the log itself.

0 code points 0 UTF-8 bytes 0 lines
ESTIMATED CHARGE $0.002000
2,000 + ceil(characters / 5)atomic USDC
$
The server will never silently exceed this limit.
READY

Adjust the input or budget, then request a free five-minute quote.

What the condenser does

Mechanical by design. Inspectable by default.

01

Normalize safely

Remove terminal controls, normalize line endings, and visibly clip pathological lines while retaining the complete input hash.

02

Redact first

Recognized credentials, tokens, private keys, authorization headers, and connection secrets are redacted before grouping or caching.

03

Segment structure

Preserve stack traces, compiler context, failed tests, and continuation lines with deterministic format adapters.

04

Rank what matters

Failures lead, then errors, warnings, unknown events, informational output, and debug output.

No fuzzy grouping. No semantic guesses.

Unknown formats fall back to exact event grouping. Unknown words never cause failure, and no deterministic redactor can promise to recognize every secret format.

Agent integration

Quote, approve, authorize, condense.

  1. Count locallyUnicode code points, including whitespace.
  2. Request a free quoteReceive a signed five-minute price token.
  3. Enforce your budgetApprove the exact USDC maximum.
  4. Call with x402Settle only after a complete result exists.
quote.js
const inputCharacters = [...text].length;

const quote = await fetch(
  "https://signalcompact.nfshost.com/v1/quote",
  {
    method: "POST",
    headers: { "content-type": "application/json" },
    body: JSON.stringify({
      inputCharacters,
      maxPriceAtomic: "250000"
    })
  }
).then(response => response.json());

if (!quote.withinBudget) {
  throw new Error("Quote exceeds budget");
}

Machine-discoverable

Everything an agent needs to evaluate the service.