API Reference
Agent (/agent)
Status
GET /agent/status — provider and config flags.
Workflows / packs
GET /agent/workflows — list system + user packs (domains and packs aliases). Each item includes id (slug), pack_id, stages.
GET /agent/workflows/{slug} — project workflow state (auth).
PUT /agent/workflows/{slug} — bind pack/stage:
{ "domain": "pdlc", "stage": "develop", "pack_id": 1 }
Demo / chat / stream
POST /agent/demo — public PDLC demo.
POST /agent/chat — sync ReAct (auth). Fields: message, project_slug, domain, stage, advance, pack_id, node_key.
GET /agent/stream?message=...&project_slug=...&domain=pdlc&stage=develop&pack_id=1&advance=false
SSE events: status, pack, node, agent, workflow, awaiting_gate, stage, content, tool_call, tool_result, files_changed, error, done, close.
GET /agent/history/{slug} — chat history.
Studio (/studio)
HTML UI under /studio (login required). REST under /studio/api.
Models
| Method | Path |
|---|---|
| GET/POST | /studio/api/models |
| PUT/DELETE | /studio/api/models/{id} |
Body (create): label, provider (openai|anthropic|custom), model_id, optional api_base, temperature, max_tokens.
Skills
| Method | Path |
|---|---|
| GET/POST | /studio/api/skills |
| PUT/DELETE | /studio/api/skills/{id} |
Body: name, description, prompt_md, tool_allowlist, artifact_hint.
Agents
| Method | Path |
|---|---|
| GET/POST | /studio/api/agents |
| PUT/DELETE | /studio/api/agents/{id} |
Body: name, role, system_prompt, model_id, skill_ids, tool_allowlist, max_iterations.
Workflows
| Method | Path |
|---|---|
| GET/POST | /studio/api/workflows |
| GET/PUT/DELETE | /studio/api/workflows/{id} |
| GET/PUT | /studio/api/workflows/{id}/graph |
| POST | /studio/api/workflows/{id}/clone |
| POST | /studio/api/workflows/{id}/export |
| POST | /studio/api/workflows/import |
Graph PUT body:
{
"nodes": [
{"node_key":"discover","type":"agent","agent_id":1,"stage_label":"Discover","config":{"artifact":"docs/DISCOVER.md"},"position_x":200,"position_y":200}
],
"edges": [
{"from_node":"start","to_node":"discover","condition":null}
]
}
Export format: { "format": "quanta-workflow-pack", "version": 1, "pack": {...}, "models": [], "skills": [], "agents": [], "nodes": [], "edges": [] }.
Pages: /studio, /studio/models, /studio/skills, /studio/agents, /studio/workflows, /studio/workflows/{id}, /studio/workflows/{id}/run.