freshprobe
以下摘录自该仓库的 README(片段) · 在 GitHub 读完整 README →
Data freshness verification for AI agents.
Stop your agents from acting on stale data.
---
> *"I asked my agent to check flight prices. It gave me options. I booked one. The fare had changed 3 hours ago."*
AI agents routinely act on stale data without knowing it. A financial agent queries cached quotes from 47 minutes ago. A support bot tells a customer their order doesn't exist because the CRM hasn't synced. An RAG pipeline confidently answers with yesterday's docs.
**freshprobe** sits between your agent and the external world. Before the agent acts, it asks: *is this data fresh enough?* The answer is always a deterministic JSON verdict: **FRESH**, **STALE**, or **UNKNOWN**.
Single Go binary. No dependencies. Runs as CLI, MCP server, or HTTP microservice.
Why this matters
| Problem | Cost |
|---------|------|
| E-commerce agent used 6-month-old product data | $5M+ revenue loss |
| Enterprise RAG with overlapping refresh infrastructure | $340K/year wasted |
| AI project failures from data quality issues | 60%+ of failures (Gartner) |
Unlike crashes that trigger alerts, stale data produces **confident, well-formatted, completely wrong responses**. Chain a few of those in a multi-agent pipeline and every component reports green while the output is catastrophically wrong.
Install
**Go install (recommended):**
**Docker:**
**From source:**
**GitHub Releases:** Download pre-built binaries for Linux, macOS, and Windows from Releases.
Quick start
Six verification signals
| Signal | What it checks |
|--------|---------------|
| **HTTP cache headers** | Parses Last-Modified, Cache-Control, Age, ETag, Date, Expires. Computes 0.0 to 1.0 freshness score |
| **Endpoint liveness** | Measures response latency (P50/P95/P99), status codes, body size, degradation patterns |
| **Content fingerprinting** | SHA-256 hashes response bodies across repeated probes to detect stale caches |
| **TLS certificate health** | Certificate validity, days remaining, OCSP stapling status |
| **DNS resolution timing** | DNS lookup latency as infrastructure health signal |
| **Redirect chain analysis** | Tracks 301/302/307/308 hops, detects stale CDN configs |
Three deployment modes
CLI
MCP server (for AI agents)
Add to your AI tool config:
Claude Desktop / Claude Code
Cursor
In .cursor/mcp.json:
VS Code (Copilot)
In .vscode/mcp.json:
This exposes three tools to AI agents:
| Tool | Description |
|------|-------------|
| freshprobe_check | Probe a single endpoint. Returns JSON verdict |
| freshprobe_batch | Probe multiple endpoints concurrently |
| freshprobe_policy | Check an endpoint against a named freshness policy |
HTTP server
Policies (freshness-as-code)
Define freshness thresholds per domain in YAML:
When a probe violates a policy:
Example output:
Prometheus metrics
The HTTP server exposes /metrics with Prometheus-compatible text format:
How it compares
| Feature | freshprobe | Uptime Kuma | Gatus | freshcontext-mcp |