Every task follows this sequence. No exceptions.
- AUDIT — Read existing code. Understand current state.
- THINK — Understand WHY. Intent vs literal.
- BRAINSTORM — ≥3 approaches. Score options.
- PLAN — Decompose. Risks. Rollback plan.
- EXECUTE — Build. TDD when possible.
- TEST — Run all tests. Break it first.
- VERIFY — Prove with literal output.
- REVIEW — Read your own diff before committing.
Full details: ~/.1ai/core/PROCESS.md (auto-injected by hooks)
Community-driven proxy aggregation platform: scrapes, validates, and serves free proxies from 10+ GitHub sources. Quality scoring (0-100), multi-protocol, two-phase validation. Stack: Python (FastAPI, SQLAlchemy async, aiohttp) / Next.js 15 / SQLite (dev) / Supabase PostgreSQL (prod) Domain: proxy aggregation, validation pipeline, community-driven proxy sources
Rules are NOT vendored into this repo. This repo does NOT need a rules submodule.
AGENTS.md is only the repo-local loader: domain, commands, conventions, and pointers to ~/.1ai.
Engineering rules are enforced by machine-level loaders when setup-dev.sh has been run:
- Claude Code: SessionStart hook injects
~/.1ai/core/RULES.md - OpenCode: plugin injects
~/.1ai/core/RULES.md - OMP: wrapper appends
~/.1ai/core/RULES.mdto launch sessions
Primary rules file:
cat ~/.1ai/core/RULES.mdPre-ship gate:
cat ~/.1ai/core/GATE.mdIf ~/.1ai or auto-load is missing, run:
bash ~/.1ai/scripts/setup-dev.shDo NOT add the rules repo as a git submodule. Update rules centrally, then run/sync the thin AGENTS.md template.
- Read code before writing code.
- No completion claim without literal receipt.
- Compile/test/use like a real user before claiming work is ready.
- Task must match this repo domain.
- Run GATE.md before commit/PR.
- Two-phase validation: Phase 1 (fast connectivity + latency), Phase 2 (comprehensive: anonymity, geo, access)
- ipquery.io preferred over separate geo/proxy-type APIs — single call for location + risk + ISP
- All external API calls cached via LRUCache (5K-10K entries, TTL configurable per API)
- Repository pattern for DB — never execute() in routers, use db_storage methods
- Async-first: aiohttp for HTTP, asyncio for background workers, SQLAlchemy async for DB
- Quality score 0-100: latency(40) + anonymity(25) + access(20) + type(10) + SSL(10) - penalties
- Rate limited: public 100/hr, auth 500/hr, admin unlimited (configurable)
- Dev:
npm run dev - Test:
npm run test - Build:
npm run build - Lint:
npm run lint