One tap. Your screenshots, documents, folders, and repos become searchable memory for your AI agents.
You upload something — a screenshot, a .md file, a source folder, a GitHub repo URL. The app reads it with a vision model, decides what it is, and files it into your Agent Memory hub as a clean, searchable wiki page, skill, memory note, or code graph. No manual formatting. No API memorization. No junk drawer.
git clone https://github.com/Mikey25050/screenshot-scanner.git
cd screenshot-scanner
./configure.sh # answers a few questions, writes your config
docker compose up -d --buildOpen http://localhost:8090 and upload a screenshot. Done.
New here? Read the full walkthrough: SETUP.md — what you need, both install options, how to verify, costs, and troubleshooting.
| You need | Why |
|---|---|
| Docker (or Python 3.10+) | to run the app |
| An Agent Memory hub | that's where everything gets filed (e.g. TencentDB Agent Memory) |
| Your own DeepSeek API key | the vision "brain" — your key, your bill, nothing charged through this project |
3 IDs from your hub (team-…, usr-…, agt-…) |
the app uses them to file content into your team |
That's it. No database, no other services, no pip install — the server is pure Python standard library.
you (browser) ──upload──▶ scanner ──vision + classify──▶ your hub
screenshot / doc / dir / repo wiki · skill · memory · code-graph
(searchable by all your agents)
- Screenshots are compressed in your browser before upload (10× smaller)
- Low-confidence items are parked for review — never silently filed
- Repos and folders become symbol-level code graphs your agents can query
- 📷 Screenshots — vision-classified and filed automatically
- 📄 Documents —
.md/.txt/.json, no vision needed - 🗂 Folders & repos — turned into searchable code graphs
- 🧠 Skills — upload a
SKILL.md, filed as a skill - 🗄 Pending inbox — review low-confidence items, file or discard
- 📊 Mission Control dashboard — live stats at
/dashboard - 📱 Phone-friendly — installable web app (PWA), works over VPN
| Doc | What's in it |
|---|---|
| SETUP.md | full installation guide for your own server (Docker or bare metal) |
| ROADMAP.md | what's planned next (v6.1, v7.0) |
| SECURITY.md | security model + how to report a vulnerability |
Configuration: copy config.example.json → config.json, or use SCANNER_* environment variables (all documented in SETUP.md).
| Endpoint | What it does |
|---|---|
POST /scan |
upload a screenshot or document → classified and filed |
POST /skill |
upload a SKILL.md → filed as a skill |
POST /graph |
{"url": …} repo or {"path": …} folder → code graph |
GET /graphs |
list your team's code graphs |
GET /pending · POST /review |
review inbox (file / discard) |
GET /dashboard · GET /stats |
Mission Control + live stats |
GET /ping |
health check |
- Run it on a trusted network (LAN / VPN). Don't expose it to the public internet without protection.
- Optional token: set
SCANNER_AUTH_TOKENand every request needs it (except health checks). - Credential files (
.ssh,.aws,.env*, keys…) are never ingested — see SECURITY.md. - Your keys live only in your own
.env/config.json— both gitignored, never committed.
MIT — see LICENSE.