Describe, visualize and communicate agentic context structures with precision. ACDL captures the structure and dynamics of agentic LLM contexts in a concise, readable, and standard manner, along with visualizations.
ReactAgent[@T]: { S: { INSTRUCTIONS AVAILABLE_TOOLS } U: env.user_input[@1] // Action history ForEach(@t: range(1, @T)) { A: { resp.reasoning[@t] sys.tool_used[@t] } T: sys.tool_used[@t].response } S: SOLVE_TASK }
ACDL has been used to specify context structures for production agent systems including coding assistants, persistent agents, and multi-agent simulations.
Explore ReAct agents, RAG pipelines, multi-agent systems, and more
A concise syntax designed for describing complex LLM context structures
Four chat roles (System, User, Assistant, Tool) and a completion format. Each message carries exactly one role with visual color-coding.
Explicit indices describe context evolution. @T is the current step, with sub-steps (@T.I) and history iteration support.
Three namespaces: env (environment), sys (system state), and resp (LLM responses).
ForEach loops, If/ElseIf/Else conditions, and Switch/Case constructs determine context based on runtime state.
ALL_CAPS placeholders for text blocks. Separates architecture from prose, with optional parameterization.
Named functions for computed content—summarization, retrieval, or any transformation beyond simple lookups.