{"owner":"walkinglabs","repo":"learn-harness-engineering","hasSkills":true,"hasMcp":false,"mcpConfig":null,"found":["CLAUDE.md"],"skills":{"CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nLearn Harness Engineering is a project-based course on building reliable coding environments for AI agents. The repo contains a VitePress documentation site plus hands-on project code.\n\n## Commands\n\n```sh\n# Documentation site\nnpm install\nnpm run docs:dev        # Dev server with hot reload (VitePress)\nnpm run docs:build      # Production build\nnpm run docs:preview    # Preview built site\n\n# Run lecture code examples\nnpx tsx docs/en/lectures/<lecture-dir>/code/<file>.ts\n\n# Project Electron apps (from each project directory)\ncd projects/project-NN/starter  # or solution/\nnpm install\nnpm run dev              # Build + launch Electron (via scripts/dev.js)\nnpm run check            # Type-check both tsconfig.json and tsconfig.node.json\nnpm run test             # Vitest run (single run)\nnpm run test:watch       # Vitest watch mode\n```\n\n## Repository Structure\n\n- `docs/` — VitePress documentation site (lectures, projects, resources)\n- `docs/.vitepress/config.mts` — Nav/sidebar config for all 15 locales (en, zh, zh-TW, ja, ko, es, fr, ru, de, ar, vi, uz, tr, uk, pt-BR)\n- `docs/<lang>/lectures/` — 14 lectures, each with `index.md` + `code/` examples\n- `docs/<lang>/projects/` — 8 project descriptions\n- `docs/<lang>/resources/` — localized templates, references, OpenAI advanced pack\n- `docs-readme/` — localized README translations (one directory per locale)\n- `projects/shared/` — Shared Electron + TypeScript + React foundation\n- `projects/project-NN/` — Per-project `starter/` and `solution/` directories (project-01 through project-06; project-07 and project-08 are docs-only so far)\n\n## Architecture\n\nThe course revolves around an Electron knowledge-base desktop app that evolves across the projects:\n- **Main process** (`src/main/`): Window management, IPC handlers, service initialization\n- **Preload** (`src/preload/`): contextBridge exposing typed API to renderer\n- **Renderer** (`src/renderer/`): React UI with document list, Q&A panel, status bar\n- **Services** (`src/services/`): DocumentService, IndexingService, QaService, PersistenceService\n- **Shared types** (`src/shared/types.ts`): Cross-boundary interfaces and IPC channel constants\n\nEach project's starter/solution is a complete copy of the Electron app at that evolutionary stage. P(N+1) starter is derived from P(N) solution. The shared foundation is in `projects/shared/`.\n\n## Key Patterns\n\n- IPC channels defined as constants in `src/shared/types.ts` (IPC_CHANNELS) — single source of truth\n- All data stored locally as JSON/text files (no database)\n- Mock Q&A returns structured answers with citations (no real LLM API)\n- Harness files in project roots: AGENTS.md, CLAUDE.md, feature_list.json, init.sh, claude-progress.md\n- Progressive disclosure: short AGENTS.md entrypoint linking to focused docs\n- Each project has two tsconfigs: `tsconfig.json` (renderer) and `tsconfig.node.json` (main/preload)\n\n## Multilingual Content\n\nCourse documentation is organized by locale under `docs/<lang>/`. Keep English as the structural source of truth, keep localized directories in sync, and preserve runnable code examples across languages.\n"},"files":{"CLAUDE.md":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nLearn Harness Engineering is a project-based course on building reliable coding environments for AI agents. The repo contains a VitePress documentation site plus hands-on project code.\n\n## Commands\n\n```sh\n# Documentation site\nnpm install\nnpm run docs:dev        # Dev server with hot reload (VitePress)\nnpm run docs:build      # Production build\nnpm run docs:preview    # Preview built site\n\n# Run lecture code examples\nnpx tsx docs/en/lectures/<lecture-dir>/code/<file>.ts\n\n# Project Electron apps (from each project directory)\ncd projects/project-NN/starter  # or solution/\nnpm install\nnpm run dev              # Build + launch Electron (via scripts/dev.js)\nnpm run check            # Type-check both tsconfig.json and tsconfig.node.json\nnpm run test             # Vitest run (single run)\nnpm run test:watch       # Vitest watch mode\n```\n\n## Repository Structure\n\n- `docs/` — VitePress documentation site (lectures, projects, resources)\n- `docs/.vitepress/config.mts` — Nav/sidebar config for all 15 locales (en, zh, zh-TW, ja, ko, es, fr, ru, de, ar, vi, uz, tr, uk, pt-BR)\n- `docs/<lang>/lectures/` — 14 lectures, each with `index.md` + `code/` examples\n- `docs/<lang>/projects/` — 8 project descriptions\n- `docs/<lang>/resources/` — localized templates, references, OpenAI advanced pack\n- `docs-readme/` — localized README translations (one directory per locale)\n- `projects/shared/` — Shared Electron + TypeScript + React foundation\n- `projects/project-NN/` — Per-project `starter/` and `solution/` directories (project-01 through project-06; project-07 and project-08 are docs-only so far)\n\n## Architecture\n\nThe course revolves around an Electron knowledge-base desktop app that evolves across the projects:\n- **Main process** (`src/main/`): Window management, IPC handlers, service initialization\n- **Preload** (`src/preload/`): contextBridge exposing typed API to renderer\n- **Renderer** (`src/renderer/`): React UI with document list, Q&A panel, status bar\n- **Services** (`src/services/`): DocumentService, IndexingService, QaService, PersistenceService\n- **Shared types** (`src/shared/types.ts`): Cross-boundary interfaces and IPC channel constants\n\nEach project's starter/solution is a complete copy of the Electron app at that evolutionary stage. P(N+1) starter is derived from P(N) solution. The shared foundation is in `projects/shared/`.\n\n## Key Patterns\n\n- IPC channels defined as constants in `src/shared/types.ts` (IPC_CHANNELS) — single source of truth\n- All data stored locally as JSON/text files (no database)\n- Mock Q&A returns structured answers with citations (no real LLM API)\n- Harness files in project roots: AGENTS.md, CLAUDE.md, feature_list.json, init.sh, claude-progress.md\n- Progressive disclosure: short AGENTS.md entrypoint linking to focused docs\n- Each project has two tsconfigs: `tsconfig.json` (renderer) and `tsconfig.node.json` (main/preload)\n\n## Multilingual Content\n\nCourse documentation is organized by locale under `docs/<lang>/`. Keep English as the structural source of truth, keep localized directories in sync, and preserve runnable code examples across languages.\n"},"items":[{"name":"CLAUDE.md","path":"CLAUDE.md","title":"CLAUDE.md","content":"# CLAUDE.md\n\nThis file provides guidance to Claude Code (claude.ai/code) when working with code in this repository.\n\n## Project Overview\n\nLearn Harness Engineering is a project-based course on building reliable coding environments for AI agents. The repo contains a VitePress documentation site plus hands-on project code.\n\n## Commands\n\n```sh\n# Documentation site\nnpm install\nnpm run docs:dev        # Dev server with hot reload (VitePress)\nnpm run docs:build      # Production build\nnpm run docs:preview    # Preview built site\n\n# Run lecture code examples\nnpx tsx docs/en/lectures/<lecture-dir>/code/<file>.ts\n\n# Project Electron apps (from each project directory)\ncd projects/project-NN/starter  # or solution/\nnpm install\nnpm run dev              # Build + launch Electron (via scripts/dev.js)\nnpm run check            # Type-check both tsconfig.json and tsconfig.node.json\nnpm run test             # Vitest run (single run)\nnpm run test:watch       # Vitest watch mode\n```\n\n## Repository Structure\n\n- `docs/` — VitePress documentation site (lectures, projects, resources)\n- `docs/.vitepress/config.mts` — Nav/sidebar config for all 15 locales (en, zh, zh-TW, ja, ko, es, fr, ru, de, ar, vi, uz, tr, uk, pt-BR)\n- `docs/<lang>/lectures/` — 14 lectures, each with `index.md` + `code/` examples\n- `docs/<lang>/projects/` — 8 project descriptions\n- `docs/<lang>/resources/` — localized templates, references, OpenAI advanced pack\n- `docs-readme/` — localized README translations (one directory per locale)\n- `projects/shared/` — Shared Electron + TypeScript + React foundation\n- `projects/project-NN/` — Per-project `starter/` and `solution/` directories (project-01 through project-06; project-07 and project-08 are docs-only so far)\n\n## Architecture\n\nThe course revolves around an Electron knowledge-base desktop app that evolves across the projects:\n- **Main process** (`src/main/`): Window management, IPC handlers, service initialization\n- **Preload** (`src/preload/`): contextBridge exposing typed API to renderer\n- **Renderer** (`src/renderer/`): React UI with document list, Q&A panel, status bar\n- **Services** (`src/services/`): DocumentService, IndexingService, QaService, PersistenceService\n- **Shared types** (`src/shared/types.ts`): Cross-boundary interfaces and IPC channel constants\n\nEach project's starter/solution is a complete copy of the Electron app at that evolutionary stage. P(N+1) starter is derived from P(N) solution. The shared foundation is in `projects/shared/`.\n\n## Key Patterns\n\n- IPC channels defined as constants in `src/shared/types.ts` (IPC_CHANNELS) — single source of truth\n- All data stored locally as JSON/text files (no database)\n- Mock Q&A returns structured answers with citations (no real LLM API)\n- Harness files in project roots: AGENTS.md, CLAUDE.md, feature_list.json, init.sh, claude-progress.md\n- Progressive disclosure: short AGENTS.md entrypoint linking to focused docs\n- Each project has two tsconfigs: `tsconfig.json` (renderer) and `tsconfig.node.json` (main/preload)\n\n## Multilingual Content\n\nCourse documentation is organized by locale under `docs/<lang>/`. Keep English as the structural source of truth, keep localized directories in sync, and preserve runnable code examples across languages.\n","category":"root","tokens":814}]}