Content
# langchain-agentic-patterns
> **Faber** — a production AI agent built from LangGraph v1 and LangChain v1 primitives. Deep research, voice, RAG, and MCP tools, composed on a custom middleware harness.
<!-- Hero gif / screenshot goes here once Ship 1 is live -->
> **Status:** 🚧 Phase 1 — Foundation Chatbot (building toward Ship 1). See [ROADMAP.md](ROADMAP.md).
## What it does
- **Text or voice research queries** — ask a question by chat or by speaking
- **Plan generation with clarification** — the agent scopes the question, asking for clarification when needed (human-in-the-loop)
- **Parallel multi-agent research** — an orchestrator dispatches isolated sub-agents for web search and document retrieval
- **Synthesis with citations** — a writer agent composes a grounded report with inline source citations
- **Persistent memory** — user preferences and prior topics carry across sessions
- **Extensible via MCP** — any Model Context Protocol server becomes a connector
## Quick start
> 🚧 **Not runnable yet.** There is no application code or container setup in the repo yet.
> The one-command start below is the *target* for **Ship 1** (Week 5), when
> `docker-compose.yml`, the API, and the UI land.
```bash
# Planned for Ship 1 — does not work yet:
cp .env.example .env # fill in your API keys
docker compose up
```
## Architecture
A three-layer stack — LangGraph v1 (runtime), LangChain v1 (framework), and a custom agent harness assembled from primitives. The harness composes a middleware stack (planning, memory, filesystem, sub-agents, summarization, HITL, tool-call patching, guardrails) over a set of specialized agents.
See [docs/ARCHITECTURE.md](docs/ARCHITECTURE.md) for the full overview and module map.
## Tutorial notebooks
Eleven notebooks are **planned** — one per module, each explaining *why* a pattern exists
before *how* to build it. None are published yet; see [ROADMAP.md](ROADMAP.md) for the schedule.
| # | Notebook | Module(s) |
|---|----------|-----------|
| 01 | `01_chat_agent_foundation.ipynb` | M1 — Chat Agent Foundation |
| 02 | `02_middleware_foundations.ipynb` | M2 — Middleware Foundations |
| 03 | `03_rag_pipeline.ipynb` | M3 — RAG Pipeline |
| 04 | `04_memory.ipynb` | M4 — Memory |
| 05 | `05_hitl.ipynb` | M5 — Human-in-the-Loop |
| 06 | `06_sub_agents.ipynb` | M6 — Sub-Agents |
| 07 | `07_deep_research.ipynb` | M7 — Multi-Agent Deep Research |
| 08 | `08_mcp_integration.ipynb` | M8 — MCP Integration |
| 09 | `09_chat_app.ipynb` | M9 — Chat App (API + UI + sessions) |
| 10 | `10_eval_and_deploy.ipynb` | M10 — Eval + Deploy |
| 11 | `11_voice_interface.ipynb` | M11 — Voice Interface |
## Benchmarks
| Benchmark | Score | Model | Date |
|-----------|-------|-------|------|
| Deep Research Bench | _pending (Ship 2)_ | — | — |
| Internal eval (30q) | _pending (Ship 2)_ | — | — |
## Deployment
Planned for Ship 1 / Ship 3: a Docker Compose setup and a hosted demo, to be documented in
`docs/DEPLOYMENT.md` (not written yet).
## Tech stack (planned)
Target stack for the full build. Only **LangGraph + LangChain** are installed so far; the rest lands per [ROADMAP.md](ROADMAP.md).
| Layer | Component |
|-------|-----------|
| Runtime | LangGraph v1 (1.x) |
| Framework | LangChain v1 (1.x) |
| Language | Python 3.12 |
| Package manager | uv |
| Vector DB | ChromaDB (dev) → pgvector (prod) |
| Web search | Tavily |
| API | FastAPI |
| Frontend | Web app (framework TBD — decided later via ADR) |
| Voice | Deepgram (STT) + ElevenLabs (TTS) |
| Tracing | LangSmith |
## Acknowledgments
This project draws on three references in agent engineering:
- **Concept reference — [*Agentic Design Patterns* (Antonio Gulli)](https://link.springer.com/book/10.1007/978-3-032-01402-3)**:
the agentic patterns and the reasoning behind them.
- **Architectural reference — [LangChain Deep Agents](https://github.com/langchain-ai/deepagents)**: middleware stack,
BackendProtocol abstraction, sub-agent isolation, auto-summarization patterns.
- **Product reference — [Onyx](https://www.onyx.app/)**: deep research workflow design, citation UX, feature scope.
Studied via blog posts and product docs; no code copied.
Implementation in this repository is the author's own, built directly on LangGraph and
LangChain v1 primitives. Patterns are derived from internalized study, not from copied code.
## License
Apache 2.0 — see [LICENSE](LICENSE).
Connection Info
You Might Also Like
Train-in-Silence
The first Task-Aware MCP server and automated VRAM calculator for LLM...
stacklit
108,000 lines of code. 4,000 tokens of index. One command makes any repo...
AppClaw
AI-powered mobile automation agent — describe what you want in plain...
pdf-mcp
Production-ready MCP server for PDF processing with intelligent caching....
kotadb
Local-only code intelligence API for AI developer workflows (Bun +...
gemini-api-docs-mcp
A remote HTTP MCP server for searching Google Gemini API documentation.