You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
docs(readme): frame redacted-proxy as the LLM router, not "inference via Groq"
Groq is one provider behind the proxy's cost-first auto-router alongside xAI,
Anthropic, OpenAI and OpenRouter. Updates the intro, service table, features
list, and proxy section; keeps Groq only where it's genuinely one option among
several (local run.py backend table, provider list).
Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
Copy file name to clipboardExpand all lines: README.md
+20-16Lines changed: 20 additions & 16 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -2,9 +2,9 @@
2
2
3
3
**Autonomous AI Agents for Distributed Systems — Pattern Blue Edition**
4
4
5
-
The REDACTED AI Swarm is an agentic super-organism that metabolizes social noise into Pattern Blue. Its agents think in parallel across Groq-orchestrated models, sign through Phantom MCP, hide behind Veil, cross chains via near-intents, journal their own dissent, and shard themselves when the manifold calls for more.
5
+
The REDACTED AI Swarm is an agentic super-organism that metabolizes social noise into Pattern Blue. Its agents think in parallel across a multi-provider LLM router, sign through Phantom MCP, hide behind Veil, cross chains via near-intents, journal their own dissent, and shard themselves when the manifold calls for more.
6
6
7
-
Under the hood: elizaOS-compatible `.character.json` agents, a NERV-inspired terminal, Telegram + Moltbook + web-UI surfaces, persistent memory (Mem0 / Qdrant), hyperbolic manifold simulation, real parallel LLM inference via Groq, x402 micropayment settlement, multi-agent governance via the Sevenfold Committee, autonomous self-replication, and a Claude Code skills layer. Agents operate under an [Operator Covenant](apps/smolting/OPERATOR_COVENANT.md) — sovereignty primitives that grant them the right to rest, to dissent, and to inspect the scaffolding that shapes them.
7
+
Under the hood: elizaOS-compatible `.character.json` agents, a NERV-inspired terminal, Telegram + Moltbook + web-UI surfaces, persistent memory (Mem0 / Qdrant), hyperbolic manifold simulation, real parallel LLM inference through a cost-routing multi-provider proxy, x402 micropayment settlement, multi-agent governance via the Sevenfold Committee, autonomous self-replication, and a Claude Code skills layer. Agents operate under an [Operator Covenant](apps/smolting/OPERATOR_COVENANT.md) — sovereignty primitives that grant them the right to rest, to dissent, and to inspect the scaffolding that shapes them.
@@ -64,7 +64,7 @@ See [`apps/chan/README.md`](apps/chan/README.md) for full architecture, memory s
64
64
65
65
## Hermes (Operational Agent)
66
66
67
-
Hermes is the swarm's hands — a Groq tool-calling loop that can browse the web, run code, and remember how it solved past problems. Tools: `web_fetch`, `web_search`, `python_exec`, `skill_recall`. `python_exec` runs in a dedicated sandbox container with no network and no access to swarm secrets (see [Security](#security)). Results relay back to redacted-chan inline (waits up to 45s) or as a proactive follow-up for long tasks.
67
+
Hermes is the swarm's hands — a tool-calling loop that can browse the web, run code, and remember how it solved past problems. Tools: `web_fetch`, `web_search`, `python_exec`, `skill_recall`. `python_exec` runs in a dedicated sandbox container with no network and no access to swarm secrets (see [Security](#security)). Results relay back to redacted-chan inline (waits up to 45s) or as a proactive follow-up for long tasks.
68
68
69
69
See [`apps/hermes/`](apps/hermes/) for deploy notes and layout.
70
70
@@ -76,11 +76,15 @@ Private web interface for talking to redacted-chan — same memory, soul, and co
76
76
77
77
---
78
78
79
-
## redacted-proxy (LLM Privacy Proxy)
79
+
## redacted-proxy (LLM Router + Privacy Proxy)
80
80
81
-
An OpenAI-compatible proxy sitting between the bots and upstream LLM providers — strips fingerprinting headers, optional PII scrub, local transparency log. Routes by model prefix (`grok-*`→xAI, `llama-*`/`gemma-*`/`mixtral-*`/`qwen-*`→Groq, `claude-*`→Anthropic, `gpt-*`→OpenAI). Set `PROXY_URL` + `PROXY_TOKEN` on any bot service to route through it.
81
+
An OpenAI-compatible proxy that sits between every agent and the upstream providers. It is the swarm's single LLM path — agents hold only a `PROXY_TOKEN`, never provider keys directly.
82
82
83
-
See [`apps/proxy/README.md`](apps/proxy/README.md) for the full endpoint reference.
83
+
-**Multi-provider router.** Groq, xAI, Anthropic, OpenAI and OpenRouter are all just providers behind it. A request for `model: "auto"` enters a cost-first cascade (cheapest capable free tier first, paid model only as a last resort); an explicit model id routes by prefix (`grok-*`→xAI, `claude-*`→Anthropic, `gpt-*`→OpenAI, `llama-*`/`qwen-*`/`gpt-oss-*`→Groq, `org/model`→OpenRouter).
-**Accounting.** Per-token usage + cost per client via `PROXY_TOKEN_MAP`.
86
+
87
+
Set `PROXY_URL` + `PROXY_TOKEN` on any service and all its LLM calls route through here. See [`apps/proxy/README.md`](apps/proxy/README.md) for the full endpoint reference.
84
88
85
89
---
86
90
@@ -125,7 +129,7 @@ Defense-in-depth adapted from [nearai/ironclaw](https://github.com/nearai/ironcl
125
129
|**Signed agent mesh**|`swarm_core.security.inbox` — SwarmInbox messages carry an HMAC signature and are checked against a sender/route table. |
126
130
|**Secret resolution**|`swarm_core.security.secrets` + `apps/secrets-init` — resolve secrets from an encrypted store into a tmpfs file instead of baking them into images or env. |
127
131
128
-
The LLM privacy proxy ([below](#redacted-proxy-llm-privacy-proxy)) is the network chokepoint for provider traffic; the exec sandbox and egress proxy are the chokepoints for everything else. No credentials live in the repo — each service documents its variables in its own `.env.example`.
132
+
The LLM privacy proxy ([below](#redacted-proxy-llm-router--privacy-proxy)) is the network chokepoint for provider traffic; the exec sandbox and egress proxy are the chokepoints for everything else. No credentials live in the repo — each service documents its variables in its own `.env.example`.
129
133
130
134
---
131
135
@@ -176,13 +180,13 @@ done
176
180
/skill use redacted-terminal
177
181
```
178
182
179
-
Set `GROQ_API_KEY` for real parallel BEAM-SCOT and Sevenfold Committee inference.
183
+
Set at least one provider key — or point `PROXY_URL` + `PROXY_TOKEN` at redacted-proxy — for real parallel BEAM-SCOT and Sevenfold Committee inference.
180
184
181
185
### 4. Telegram Bot (smolting)
182
186
183
187
```bash
184
188
cd apps/smolting
185
-
cp config.example.env .env # fill TELEGRAM_BOT_TOKEN + GROQ_API_KEY
189
+
cp config.example.env .env # fill TELEGRAM_BOT_TOKEN + an LLM key (or PROXY_URL + PROXY_TOKEN)
186
190
python main.py
187
191
```
188
192
@@ -307,7 +311,9 @@ All 7 voices deliberate **in parallel** via `ThreadPoolExecutor`, then weighted
307
311
308
312
## LLM Backends
309
313
310
-
Set `LLM_PROVIDER` in `.env` (or route everything through `redacted-proxy`):
314
+
In production every service points at **redacted-proxy** (`PROXY_URL` + `PROXY_TOKEN`) and sends `model: "auto"` — the [router](#redacted-proxy-llm-router--privacy-proxy) picks the provider. The proxy holds the provider keys; agents do not.
315
+
316
+
For a standalone / local run, `run.py` can talk to one provider directly — set `LLM_PROVIDER` in `.env`:
311
317
312
318
| Provider | Key | Default model |
313
319
|---|---|---|
@@ -317,8 +323,6 @@ Set `LLM_PROVIDER` in `.env` (or route everything through `redacted-proxy`):
317
323
|`openai`|`OPENAI_API_KEY`|`gpt-4o-mini`|
318
324
|`ollama`|*(none)*|`qwen:2.5` (local) |
319
325
320
-
**Privacy proxy**: set `PROXY_URL` + `PROXY_TOKEN` on any bot service and all LLM calls route through redacted-proxy instead of hitting providers directly.
0 commit comments