The Problem

AI coding agents operate unpredictably when environments, state, and verification mechanisms aren't explicitly structured. Without a harness, agents lose continuity across sessions, overreach into unrelated tasks, and declare victory on incomplete work. This repository systematically documents the patterns, antipatterns, and subsystems that make agent workflows reliable.

What This Does

This is a project-based course (14 lectures, 8 projects) that builds a "harness" - the environment, state management, verification, and control mechanisms that make AI coding agents work reliably. The repository contains two main components: docs/ (1913 files) with 14 lecture series covering topics from why capable agents still fail to loop engineering and graph engineering, and projects/ (495 files) with 8 hands-on projects project-01 through project-08, each with starter and solution directories. The docs are available in 15 languages (evidenced by the language-specific directories: ar, de, en, es, fr, ja, ko, pt-BR, ru, tr, uk, uz, vi, zh-CN, zh-TW). The course is forked from walkinglabs/learn-harness-engineering (13,008 stars). Entry points include docs/.vitepress/theme/index.js for the course site, and projects/project-01/solution/src/renderer/App.tsx and projects/project-01/starter/src/main/main.ts for the first project's React frontend built with Vite. The lecture code examples are predominantly TypeScript/TSX with some shell scripts.

How It Is Wired

Control flows through a VitePress-based docs site (docs/.vitepress/config.mts, docs/.vitepress/theme/index.js) that serves lecture content organized by lesson and language. Each lecture directory contains code/ with TypeScript demonstrations and index.md with the lesson narrative. Project directories follow a consistent pattern: projects/project-01/{starter,solution}/{package.json,tsconfig.json,vite.config.ts} with React + TypeScript source under src/renderer/App.tsx and src/main/main.ts. The GitHub Actions workflows (.github/workflows/deploy-pages.yml, .github/workflows/release-course-pdfs.yml) automate course deployment and PDF generation. The internal call graph maps each lecture's code examples as standalone TS scripts (e.g., docs/en/lectures/lecture-02-what-a-harness-actually-is/code/minimal-harness-loop.ts) that illustrate concepts without runtime dependencies beyond Node. No inter-project runtime wiring was detected; each project is self-contained.

How To Use It

Setup: The repository requires Node.js. Root package.json and project-level package.json files (e.g., projects/project-01/solution/package.json, projects/project-01/starter/package.json) indicate npm as the package manager. No root-level build script was observed; each project manages its own dependencies.

Configuration: Language selection is handled through the docs directory structure - placing content under docs/{lang}/lectures/ makes it available. The VitePress config at docs/.vitepress/config.mts controls the site theme and plugins. Project-specific Vite configs (projects/project-01/solution/vite.config.ts) configure the React dev server.

Running it: To launch the course site locally, navigate to the docs directory and run the VitePress dev server. The exact command is not documented in the available evidence; the structure suggests npx vitepress dev docs/ or similar, but this requires verification against the actual package.json scripts. Each project can be opened in its directory and run via its own npm install and npm run dev (or equivalent), but the starter/solution distinction implies the starter is the starting point and solution is the completed version.

Real-World Use

The harness concepts apply to any system where AI agents need reliable multi-session operation. For example, a code-generation agent working across weeks of a project needs initialization boundaries (lecture 6), feature-list primitives with pass-gate policies (lecture 8), and clean-state checkpoints between sessions (lecture 12). The docs/en/lectures/lecture-06-why-initialization-needs-its-own-phase/code/init.sh and docs/en/lectures/lecture-08-why-feature-lists-are-harness-primitives/code/pass-gate-policy.md provide concrete patterns for separating setup logic from execution logic and validating scope before task commitment. The projects/project-02-agent-readable-workspace/ project likely extends these ideas into a practical workspace layout.

Code Health & Issues

Measured analysis found no structural red flags: tests, CI, license, and lockfile are present where expected. The repository has 120 test files and 2000 doc files. GitHub Actions workflows are configured for deployment and PDF releases. No missing license or committed secrets were detected in the file structure. The primary risk is the absence of mapped inter-project runtime dependencies - the harness concepts are documented but not assembled into a single runnable agent framework.

The Bottom Line

This is a well-structured, multi-language course repository that systematically documents harness engineering patterns for AI agent reliability. The lecture code examples are clear and concept-focused, and the project scaffolding follows consistent patterns. It's best suited as a learning resource or reference framework rather than a ready-to-deploy agent system - someone looking to build a production agent platform would need to assemble the documented subsystems (initialization, feature gating, clean-state enforcement, observability) into their own runtime. The multi-language doc coverage is a significant asset for distributed teams.