CLAUDE.md: lean — commands, key conventions, fast tool guide, @ARCHITECTURE.md import routecheck/CLAUDE.md: purpose, access paths, env vars, gotchas openmemory/CLAUDE.md: tools, two Ollama instances, prompts, notes Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
1.1 KiB
1.1 KiB
routecheck
FastAPI service providing a Yandex Routing API proxy behind an image captcha.
Purpose
Yandex Routing API free tier requires a website that uses the API. This service is that website.
It also exposes an internal endpoint (/api/route) used by CommuteTool in fast_tools.py.
Two access paths
- Web UI (
/): solve PIL arithmetic captcha → get a token → query any two lat/lon points - Internal API:
GET /api/route?from=lat,lon&to=lat,lon&token=$ROUTECHECK_TOKEN— no captcha
Key env vars
YANDEX_ROUTING_KEY— from developer.tech.yandex.ru, Router API, free tierINTERNAL_TOKEN— equalsROUTECHECK_TOKENfrom root.env; shared with deepagentsHTTPS_PROXY— set tohttp://host.docker.internal:56928; container has no direct external internet
Notes
- Captchas expire after 5 min, route tokens after 1 hour, both stored in-memory (restart clears them)
- Yandex API expects
lon,latorder (notlat,lon) —app.pyswaps automatically - Captcha image endpoint:
GET /captcha/image/{id}— regenerates on each call with random noise