COMSAT

composable search · v0.1.0 · MIT

Sources produce canonical records. Consumers decide what they mean.

COMSAT retrieves public evidence and emits a Record stream. It does not score truth, write a summary, or keep a search unless you ask it to watch.

Source and CLI Operations

How it works

  1. One query, three bindings.

    CLI, MCP, and Code Mode invoke the same command graph. A local query needs no COMSAT account.

  2. Sources retrieve in their own protocols.

    GitHub, Hacker News, the web, and Stack Exchange each speak their API. Plugins never return vendor JSON to the caller.

  3. Every hit becomes a Record.

    Identity, source, kind, URL, optional title, text, author, timestamps, and a metadata object. IDs are source-scoped.

  4. The engine merges and collapses duplicates.

    Order is retrieval order, not a ranking. Consumers decide what the evidence means.

  5. Search is ephemeral. Watches persist.

    Search prints JSON Lines and does not write to the store. A watch repeats the query on a schedule and keeps observations, tenant-fenced.

Use it

cargo install --path crates/comsat-cli --bin comsat
comsat search "MCP OAuth" --source github --limit 5
comsat --mcp

This host

The managed service on this domain requires Authorization: Bearer. Authenticated routes are /search, /fetch, /follow, /watch/*, /history, /mcp, and /health. Browser origins are denied unless explicitly allowed. Web search needs a Brave key; GitHub and Stack Exchange keys are optional.