Technical diagram showing the five-layer architecture of the Relay job-search Agent system: UI layer, API orchestration layer, Agent execution layer, shared services layer, and data and integration layer

Building a Production-Grade AI Agent System from Scratch: A Full Architecture Breakdown of Relay

“Most Agent projects die in the unmapped wilderness between PoC and production.” I wrote that line while reading through the Relay project documentation. Relay is an open-source AI Agent system for job searching — not a demo built on three lines of LangChain plus GPT-4, but a project with complete architectural documentation, 172 engineering tasks, a hybrid tech stack, and explicit counterexamples for every major design decision. It is not fully running yet. The Agent layer code is still being written. That is exactly why I think this article is worth writing: this is a system that has thought very deeply at the design level, and those deep thoughts — regardless of where this project ultimately lands — are valuable references for everyone doing Agent engineering. ...

June 24, 2026 · 20 min · 4223 words · Xinwei Xiong, Me

MarkItDown: Convert Documents to Markdown

This project is an ongoing journey — learning AI open source projects with steady, daily progress. Through hands-on work with real projects and AI tooling, the goal is to develop the ability to solve complex problems and document the process. Notion List 1. Introduction 1.1. MarkItDown and Markdown — Clarifying the Relationship First, it is important to clarify that “MarkItDown” is not a misspelling of the general-purpose markup language “Markdown.” MarkItDown is a specific Python library developed and open-sourced by Microsoft. While its name resembles Markdown and its core purpose is to convert various file formats into Markdown, MarkItDown is an independent software entity. This article focuses on analyzing the implementation principles, design philosophy, features, and practical applications of the MarkItDown tool, while also referencing the Markdown language itself as the target output format when relevant. ...

April 21, 2025 · 22 min · 4521 words · Xinwei Xiong, Me