A local-first grocery price tracker that exposes read-only price history and comparison data through MCP. The server sits on top of dealwatcherer's core engine, which crawls vendor sites, normalizes prices, and stores everything locally with full source traceability. You get tools to query product price history, compare current prices across stores, and surface deals without leaving Claude. Pairs naturally with the browser extension for right-click product capture. Reach for this when you want AI-assisted shopping decisions backed by your own crawled data instead of trusting third-party APIs. No cloud roundtrip, no telemetry, just SQLite and stdio transport. Part of the "yard family" of structured-input-structured-output tools from the same author.
let prices fight, you sit and watch
What You Get • Install • How It Work • Ecosystem
dealwatcherer watches the products you care about across vendors, replays history, and tells you when to pull the trigger. Browser extension and dashboard included.
┌──────────────────────────────────────┐
│ LOCAL-FIRST ████████ 100% │
│ SOURCE-TRACEABLE ████████ 100% │
│ TYPING REQUIRED ░░░░░░░░ 0% │
│ VIBES ████████ ZERO │
│ FILLER│
└──────────────────────────────────────┘
Track prices across vendors. Get the receipt before you check out.
| Surface | What |
|---|---|
dealwatcherer core | Price-monitoring engine. Crawl, normalize, score, alert. |
dealwatcherer frontend | Compare-first dashboard. See the deal, not the noise. |
browser extension | Right-click any product. dealwatcherer does the rest. |
dealwatcherer worker | Scheduled checks, alembic-backed history. |
public skills | Drop into Claude/Codex/OpenClaw and let the agent shop. |
[!IMPORTANT] Local-first by default. No silent telemetry. No cloud round-trip. Your data stays on your machine until you explicitly ship it somewhere.
git clone https://github.com/xiaojiou176-open/dealwatcherer.git
cd dealwatcherer
# follow the per-stack quickstart in INSTALL.md or docs/
Three commands. No curl | sh. No login. Read what you run.
Install break? Open your favorite agent and say "Read AGENTS.md and bootstrap dealwatcherer for me." Agent fix own brain. Long version: docs/.
The repo is seven layers — exactly the seven commits in git log. New work goes in as small named PRs. No 50-file mystery commits.
| Layer | What |
|---|---|
chore: scaffold | License, governance, hygiene gates, CI scaffolding. |
feat(core) | The primary engine. The reason dealwatcherer exists. |
feat(modules) | Packages, adapters, services, plugins. The second floor. |
feat(contracts) | Schemas, configs, public boundaries. Other code talks here. |
test: | Receipts. Everything in this layer must run. |
feat(ops) | Scripts, infra, CI helpers, build glue. |
docs: | Public docs surface. The pretty face. |
git log reads like a building floor plan. Look once, know the whole shape.
dealwatcherer lives in the yard family: seven yards. one philosophy: structured input, structured output, structured proof.
| Repo | What |
|---|---|
| switchyard | model & agent runtime switch board |
| browserclickyard | your AI clicks, your browser obeys |
| noteyard | your Apple Notes never really die |
| dealwatcherer (you here) | let prices fight, you sit and watch |
| docyard | docs site in, markdown out, no scraping by hand |
| fileyard | messy folders in, organized library out |
| proofyard | every claim ships with its receipt |
Cross-family taste: BeamMe · BrewMe · OpenVibeCoding · proofyard.
If dealwatcherer saves you a click, an hour, or a headache — star costs zero. Fair trade. ⭐
MIT — small print, big freedom.