Introduction
Flux Agent provides a calm, minimal architecture to design, connect, observe and optimize AI agents and their flows.
Built for production from day one: clear roles and goals, memory strategies, tool integration, and first‑class observability. Use it for customer support, data enrichment, and business automation.
Quick start
- Download the starter and run the server.
- Define an agent (role, goals, tools).
- Connect webhooks / HTTP endpoints.
- Send a test task and observe the session.
# 1) Clone
curl -L https://example.com/flux-agent-starter.tar.gz | tar xz
cd flux-agent-starter
# 2) Run (dev)
python -m venv .venv && source .venv/bin/activate
pip install -r requirements.txt
python app.py
# 3) Open local UI
open http://localhost:5173
Core concepts
- Agent — A role with goals, memory, and a toolset.
- Flow — Steps: Interpret → Plan → Tools → Memory → Output.
- Memory — Short‑term session notes and long‑term knowledge.
- Observability — Traces, logs, metrics, session replay.
Agent architecture
Agents are configured with a minimal JSON schema. Example:
{
"id": "support-agent",
"role": "Answer customer questions with a helpful, concise tone.",
"goals": ["Resolve issues", "Collect context", "Escalate when needed"],
"tools": ["kb.search", "http.post", "form.fill"],
"memory": {
"short_term": {"limit": 12},
"long_term": {"provider": "vector", "namespace": "support"}
}
}
Flows
A flow is a deterministic skeleton; models fill in the semantics. Example pseudo:
async function runFlow(input){
const intent = await interpret(input)
const plan = await planSteps(intent)
const results = []
for(const step of plan){
const r = await invokeTool(step)
results.push(r)
}
await remember({intent, plan, results})
return await synthesizeOutput(results)
}
Memory
Two layers: short‑term (session window) and long‑term (vector or key‑value). Use tags to route retrieval.
Tools
Tools are adapters (HTTP, DB, queues). Each tool advertises schema and cost to help the planner.
| Name | Type | Notes |
|---|---|---|
| kb.search | vector | Retrieve docs by semantic query |
| http.post | network | Call external API endpoints |
| form.fill | automation | Fill forms, validate, submit |
Observability
Record trace spans, logs and counters. Attach a session ID to follow the full path.
REST API
Minimal endpoints to enqueue tasks and read sessions.
POST /v1/tasks
Content-Type: application/json
{
"agent": "support-agent",
"input": "Where is my order?",
"meta": {"user_id": "u_123"}
}
GET /v1/sessions/:id
Webhooks
Receive events for task lifecycle. Example payload:
{
"type": "task.completed",
"id": "evt_9q2m",
"task": {"id": "t_55x", "agent": "support-agent"},
"result": {"status": "ok", "latency_ms": 420}
}
Examples
- Customer Support Agent (KB + forms)
- Data Enrichment (web + CRM)
- Business Automation (n8n/Make + queues)
FAQ
Is this model‑agnostic? Yes. Bring your preferred LLM(s) and switch by policy.
Can I run without a DB? For demos yes; for production, use a proper store.
Changelog
- v0.1 — Initial public docs, core concepts, API, and examples.