Decorator-based agents with tools, behaviors, and multi-agent composition.
Works with any LLM — local or cloud.
@agent({
name: "researcher",
llmClient: new OllamaClient("qwen2.5:7b"),
tools: [new WebTools()],
behavior: "./researcher.md",
maxSteps: 6,
})
class Researcher {}
// That's it. Run it.
const result = await runAgent(Researcher, "What's new in AI this week?");Define agents and tools with @agent and @tool. Zero boilerplate, full type safety.
Use compose() to nest agents as tools. Build orchestrator-executor patterns without custom routing code.
Define personality in plain Markdown files. Hot-reload in dev. Extend and merge behaviors across agents.
Auto-retry with backoff, state persistence, middleware hooks, and streaming support — out of the box.
Works with Ollama locally.