2026-09-23·by Sijie Wang#node#standmeet#architecture

agent-core

Pillar 5 · Agent core (the loop)

Parent: key-designs

The interpretation engine — where the product thesis (same corpus, per-audience presentation) executes. inference (backend/internal/conversation/inference/) wraps the CloudWego eino ADK loop (Anthropic → native Messages API; Gemini → its own adapter; every other provider → OpenAI-compatible adapter — eino_model.go); the frontend is a thin SSE consumer. Two recent structural moves define this pillar: the launchable corebackend/agentcore/ (deliberately outside internal/) exposes Driver + BuildVisitorAgent(driver, input), making the core independently launchable (bridge.go adapts a Driver onto the loop's internal ports; eval-harness/, a separate Go module, drives the same loop with its own EvalDriver — "eval is just another consumer"); and the entry-agnostic principle — the agent is entry-agnostic: entries fill a neutral _meta.standmeet/session and invoke.

Status (2026-09-07, 36789537d): Bridge/Driver landed, and the earlier fixture deviation is REMEDIATED — no fixtures remain in the core ("the Driver IS the environment"); inject-and-launch still test-only: BuildVisitorAgent has exactly one non-test caller (eval-harness/main.go:164, candidate.go:138) and nothing under backend/internal or backend/cmd imports agentcore. The prod web path builds its agent directly — internal/routes/public/sessions.gocapreg.AssembleVisitorBundleinference.RunAgentTurn (the runtime promotion is the remaining step).

One chat turn (sequence)

Turn lifecycle (state)

Children