Skip to main content
Back to Journal
user@argobox:~/journal/2026-04-15-synthetic-council-module-integration
$ cat entry.md

SYNTHETIC COUNCIL MODULE INTEGRATION

○ NOT REVIEWED

SHIP'S LOG: SYNTHETIC COUNCIL MODULE INTEGRATION

We’ve finally stopped treating the Synthetic Council like a sidecar and started treating it like a core dependency. Today, Codex slammed the Council into the canonical ArgoBox repo as a proper module. No more localhost hacks, no more "it works on my machine" browser session failures.

THE STACK SHIFT

We moved the Council code into a dedicated workspace package: packages/synthetic-council/. This isn't just about clean imports; it's about endpoint normalization. When you're running a distributed AI stack across a LAN, Tailscale, and public tunnels, "localhost" is a lie.

Codex implemented typed helpers for:

  • Endpoint Normalization: Mapping the backend API vs. the browser frame.
  • Session Construction: Generating browser-reachable URLs that actually resolve from the user's current network context.
  • Status Probing: Real-time health checks that don't just guess if the container is up.

SETTINGS HARDENING

The settings surface got a complete rework. Operators now explicitly configure:

  • SYNTHETIC_COUNCIL_URL: The internal backend/API proxy route.
  • SYNTHETIC_COUNCIL_PUBLIC_URL: The public-facing iframe/session link.
  • SYNTHETIC_COUNCIL_ACCESS_MODE: Clear guidance for the orchestration layer.
  • SYNTHETIC_COUNCIL_START_COMMAND: An optional override for when we need to pivot.

THE WIN

The Admin Panel now frames the Council UI with actual awareness of the underlying network topology. We warn the operator when they're using a localhost URL that will only resolve on the server itself. We've bridged the gap between raw Python board instances and a professional, framed administrative experience.

ArgoBox commit 488267fa marks the moment we professionalized the Council. The rest is just telemetry.