Most of what's here didn't start as "let me ship a product." It started as a question: what does it actually take to build this, end to end, well enough to defend every decision?
TesseractAI Lab is where that question gets answered — one system at a time. Each project is built from first principles rather than assembled from a framework's building blocks, on the theory that you don't really understand a RAG pipeline, an agent loop, or a routing layer until you've had to design it, break it, and fix it yourself.
The name comes from the tesseract — a four-dimensional hypercube. Every project here looks at the same underlying problem (how do you get an LLM to act reliably on real data, real tools, and real constraints) from a different dimension: retrieval, autonomy, or the runtime itself.
This list is a snapshot, not a ceiling — it grows as new work lands.
| Project | What it is | Stack |
|---|---|---|
| TesseractRAG | A production-structured, multilingual (Arabic/English) RAG platform — hybrid BM25 + pgvector retrieval fused via Reciprocal Rank Fusion, a quota-aware LLM generation layer, JWT + guest identity, and RAGAS-based evaluation. | FastAPI · PostgreSQL/pgvector · Redis · Docker |
| TesseractResearch | A multi-agent research pipeline on LangGraph — plan, search, scrape, and report, with a human-in-the-loop approval gate before any scraping runs, and Postgres-backed checkpointing for full session resumability. | LangGraph · FastAPI · PostgreSQL · SSE · LangSmith |
| TesseractCLI-Agent | A terminal-native coding agent built without an agent framework — a hand-rolled ReAct loop, a sandboxed tool-execution layer, and an 11-provider LLM dispatcher, wrapped in a Textual TUI. | Python · Textual · LangChain · SQLite |
Each one is a deliberately different slice of the same core problem: how an LLM goes from "generates text" to "operates safely and usefully inside a real system."
This isn't a fixed set of side projects — it's the start of an open-ended body of work. Structuring it as an org rather than scattering repos across a personal profile is deliberate: it leaves room for what comes next without needing to rename or re-home anything later. What lands here going forward will generally fall into three categories:
- Research — smaller, focused explorations of a single technique or paper, closer to a lab notebook than a product.
- Production — systems built to the same "real infrastructure, not a demo" bar as what's here already.
- Learning — hands-on rebuilds of foundational techniques, kept public because working through them in the open is part of how the skill gets built.
The common thread across all three: production AI engineering skill compounds by building the unglamorous parts (the retry logic, the sandboxing, the migrations) as much as the model-facing parts — so that's where the effort goes.
