LabscoMCP early access ↗
luismichioMCP SERVER · OFFICIAL PROJECT

Semantic-Sift

Compress logs, documents and chat history before they reach the context window, with every model running on your machine.

by luismichio ↗Codebase Context Packing & Compression✓ Official

LABSCO SUMMARY

It spends CPU so the model does not spend context.

The engines doing the compression are downloaded and run on your machine — nothing goes out to a compression service, and there is no key. That is also the cost, which is why sift_warmup exists: the first call pays for loading the models. The honest touch is sift_extraction's diff mode, which shows exactly what was thrown away rather than asking you to trust a rate.

What it is

A Python server that sits between raw data and the context window. It routes each input to one of three engines — a heuristic sieve for logs, LLMLingua-2 semantic compression for prose, and a local BGE cross-encoder for ranking — and returns the distilled text with an audit header showing token reduction and latency.

What you get

  • A local file read through the right pipeline instead of raw, with .pdf, .docx, .xlsx, .pptx, .zip and .html converted to Markdown first — sift_read_file
  • A noise estimate for a file or a string before you spend context on it, ending in a recommendation for which sifter to use — sift_analyze_file, sift_analyze
  • Repetitive log noise stripped while errors and stack traces survive — sift_logs
  • Prose and chat history condensed at a rate you choose, with a low-fidelity warning appended when vocabulary overlap falls below the threshold — sift_chat
  • Long documentation put through two stages: structural sieve first, then semantic compression — sift_doc
  • OCR and PDF extractions cleaned of metadata debris, optionally with a --- REMOVED CONTENT --- section so you can check what was cut — sift_extraction
  • A list of chunks ranked against a query by a local cross-encoder, returning the top results with confidence scores — sift_rank
  • Token-saving and latency telemetry, a one-shot project setup that writes IDE hooks, and a model warm-up — get_sift_stats, sift_onboard, sift_warmup

Requirements

No API key: every model runs locally. pip install "semantic-sift[neural]", then run semantic-sift. Reads outside the workspace root are blocked unless SIFT_ALLOW_GLOBAL_READS=true. SIFT_RANK_TOP_N sets the default result count for sift_rank (default 3), and SIFT_COMPACTION_FIDELITY_THRESHOLD (default 0.3) decides when a compaction is flagged as low fidelity. The package is semantic-sift 0.3.8; the [multi-modal] extra adds MarkItDown for binary formats.

Setup effort

One command — pip install "semantic-sift[neural]"