One stack for building, running, and governing agents
Chronos keeps application code clean while the runtime handles durability, observability, and operational control.
Agent SDK
Compose chat agents, deterministic StateGraphs, tools, memory, skills, and multi-agent teams from Go or YAML.
RunDurable Runtime
Checkpoint graph progress, resume interrupted work, stream events, and scale workers over a lease-backed queue.
GovernChronosOS
Operate agents with auth, approvals, tracing, audit logs, rate limits, and production deployment patterns.
A layered runtime with explicit seams
Swap model providers, storage backends, vector stores, tools, hooks, guardrails, and sandbox backends without rewriting your agents.
Explore diagramsEverything needed beyond the first demo
Provider-neutral models
OpenAI, Anthropic, Gemini, Mistral, Ollama, Azure OpenAI, Groq, DeepSeek, and OpenAI-compatible endpoints.
Tools with policy
Typed tool definitions, permissions, approval gates, sandboxed execution, and audit-friendly results.
Memory and RAG
Short-term context, long-term memory extraction, vector-backed semantic recall, and knowledge search.
Teams and delegation
Sequential, parallel, router, coordinator, and swarm-style collaboration for specialized agents.
Interoperability
Expose or consume agents through MCP, A2A, and AG-UI without coupling your application to one ecosystem.
Evaluation loop
Capture traces, create datasets, run evaluators, and gate regressions before changes reach production.
Start with YAML. Drop into Go when you need control.
Use declarative configuration for operations-friendly agents, then compose the same primitives directly from Go for product code.
# .chronos/agents.yaml
agents:
- id: support
name: Support Agent
model:
provider: openai
model: gpt-5.5
api_key: ${OPENAI_API_KEY}
system_prompt: You resolve customer issues clearly and safely.
tools: [search_docs, create_ticket]
memory:
semantic_recall: true
store, _ := sqlite.New("chronos.db")
store.Migrate(ctx)
a, _ := agent.New("support", "Support Agent").
WithModel(model.NewOpenAI(os.Getenv("OPENAI_API_KEY"))).
WithStorage(store).
WithSystemPrompt("Resolve customer issues clearly and safely.").
Build()
resp, _ := a.ChatWithSession(ctx, "session-42", "Help me debug my order")
fmt.Println(resp.Content)