diff --git a/Components-Roadmap.-.md b/Components-Roadmap.-.md new file mode 100644 index 0000000..9c4bdf3 --- /dev/null +++ b/Components-Roadmap.-.md @@ -0,0 +1,46 @@ +# Components Roadmap + +SecondBrain is the first component extracted from the Atlas local-first autonomy stack into +its own clean, generalized, secret-free repo. This page tracks the **sister components** worth +the same treatment — the result of a full read-only survey of the stack. + +Extraction rules (applied to SecondBrain, applied to all): +1. **No secrets, ever** — config moves to env / example files; hardcoded creds are scrubbed and the git history starts clean. +2. **Generalize** — strip host/path/tenant specifics; sane local-first defaults. +3. **Redeployable** — README + `.env.example` + install + systemd/Docker. + +## Ship-ready (config already externalized — low effort) + +| Component | Proposed repo | What it is | Effort | +|---|---|---|---| +| **LLM router** | `llm-mux` | OpenAI-compatible `/v1/chat/completions` gateway that routes across Anthropic + local/remote Ollama nodes, with a cheapest-that-fits auto-router, circuit breakers, and streaming. Single FastAPI file, fully env-driven. | LOW | +| **Notifier** | `notify-mux` | Zero-dependency fan-out of title/body/priority to self-hosted ntfy push + WhatsApp (Evolution). Config in an external JSON. | LOW | +| **Approval gate** ⭐ | `agent-gate` | A human-in-the-loop "brake": money / external-comms / irreversible / self-modify actions are parked in a SQLite approvals queue pending release; reversible actions pass and log. The liability shield that makes agent autonomy safe to resell. | MED | +| **Content-aware monitor** | `site-sentinel` | Uptime monitor that checks *body content* (size + marker), not just HTTP 200, and self-heals by restoring from a mirror + restarting the service. | MED | + +## Needs generalization first (valuable, more coupled) + +| Component | Proposed repo | Note | +|---|---|---| +| Multi-node Ollama orchestrator + file job-queue | `ollama-cluster` | Node table → config; pairs well with `llm-mux`. | +| Odoo invoice CLI (create → PDF email → cloud upload) | `odoo-invoice-cli` | Odoo-schema-specific; config already in env. | +| Stock-driven newsletter (HTML + PDF) builder | `stock-newsletter` | ⚠️ must scrub a hardcoded mail credential before extraction. | + +## Keep internal (Atlas-specific glue) +The perception→cognition→action "Mind" spine (`atlas_loop`, `atlas_orchestrator`, the `sense_*` +collectors, effectors) is tightly bound to the private event kernel and tenant workflows. The one +cleanly-extractable keystone from it is the **approval gate** above. + +## Do NOT create original repos (upstream forks only) +Deployments of third-party OSS (LiteLLM, Glance, n8n, Firefly, Paperless, Nextcloud, MeshCentral, +Open WebUI, Stalwart, Authentik, Forgejo, …) are config around upstream projects — fork upstream +only if a custom patch is needed. + +## Security gate on every extraction +Two internal tools carry hardcoded credentials and must be scrubbed **before** any extraction: +a newsletter mailer and a document-bridge API token. The router, notifier, gate, invoice, and +sentinel candidates are already secret-free in source (config externalized) — those are the +cleanest to ship first. + +--- +_Recommended order:_ `llm-mux` → `notify-mux` → `agent-gate` → `site-sentinel` → the rest.