Why Fred - A Developer Manifesto
You want to build an agent that does more than answer questions.
You want it to:
- Use tools
 - Coordinate with others
 - Run in production
 - And not fight with lifecycle, async bugs, or YAML spaghetti.
 
Fred is for you.
Fred is an agentic framework built by practitioners, not just to demo ideas β but to run real agents, securely and repeatedly.
π What Fred gives you (thatβs surprisingly rare)
- β LangGraph-powered agents, with multi-step flows, conditionals, and state.
 - β
 Tools + Experts β like 
TabularExpert,DocumentsExpert,RagsExpertβ that actually work out of the box. - β Leader agents that plan, delegate, and summarize results across experts.
 - β Built-in support for OpenAI, Azure, Ollama, and real backend integration (RAG, vector search, SQL).
 - β Full lifecycle support: from dev notebooks to Docker to Kubernetes.
 
π Agents are easy to build
Define a new agent in seconds:
class MyAgent(AgentFlow):
    def __init__(self, settings: AgentSettings):
        self.model = get_model(settings.model)
        self._graph = self._build_graph()
        super().__init__(..., model=self.model, graph=self._graph)
    def _build_graph(self): ...Need tools? Add toolkit, bind tools, and use ToolNode.
Need async? Just implement async_init() β it’s all wired for you.
Fred abstracts the hard parts β async FastAPI, stateful memory, WebSocket streaming β so you can focus on logic.
π§© Static or Dynamic
Fred supports:
- β Declarative YAML-based agent loading
 - β Dynamic runtime creation (via API or code)
 - β Integration with MCP services (toolchains, databases, clusters, etc.)
 
Everything is typed, clean, and minimal.
What takes time without Fred
- Getting async + tool + graph orchestration to not break
 - Reusing models and toolkits across sessions without bugs
 - Hooking LangGraph + WebSockets + FastAPI the right way
 - Explaining to others whatβs happening
 
Youβll spend hours or days debugging what Fred gives you in minutes.
For data scientists too
Want to test your toolchain in a notebook? Easy.
agent = TabularExpert(agent_settings)
await agent.async_init()
await agent.compiled_graph.ainvoke({"messages": [HumanMessage(...)]})Fred works with LangChain and LangGraph directly.
No lock-in. No code generation. Just Python.
TL;DR
Fred is the missing layer between LangChain experiments and real agentic applications.
Itβs built to help you create serious, tool-using, multi-agent systems without getting lost in infra.
Try it.