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.