# Chapter 19 Project Practice: AI Coding Assistant

> Build an AI coding assistant from scratch that can understand code, generate code, write tests, and fix bugs.

---

## Chapter Overview

This chapter is the first comprehensive hands-on project. We will apply the core Agent technologies learned so far — tool calling, memory systems, RAG, planning and reasoning — to build an AI coding assistant that truly helps developers.

## Chapter Goals

- ✅ Design the overall architecture of a coding assistant
- ✅ Implement code indexing and semantic search
- ✅ Build code generation and modification capabilities
- ✅ Implement automatic test generation and bug fixing
- ✅ Integrate everything into a complete, usable tool

## Chapter Structure

| Section | Content | Difficulty |
|---------|---------|-----------|
| 19.1 Project Architecture Design | Overall plan and component design | ⭐⭐ |
| 19.2 Code Understanding and Analysis | AST parsing, semantic search | ⭐⭐⭐ |
| 19.3 Code Generation and Modification | Structured generation, diff modification | ⭐⭐⭐ |
| 19.4 Test Generation and Bug Fixing | Automated testing, diagnostic repair | ⭐⭐⭐ |
| 19.5 Full Project Implementation | Integrating all components | ⭐⭐⭐⭐ |

## 🔗 Learning Path

> **Core Prerequisites**: [Chapter 4: Tool Calling](../chapter_tools/README.md), [Chapter 7: RAG](../chapter_rag/README.md), [Chapter 12: LangGraph](../chapter_langgraph/README.md)
> Recommended but not required: [Chapters 16–18: Production Series](../chapter_evaluation/README.md)
>
> **Related Projects**:
> - 📊 [Chapter 20: Data Analysis Agent](../chapter_data_agent/README.md)
> - 🎨 [Chapter 21: Multimodal Agent](../chapter_multimodal/README.md)

---

*Next: [19.1 Project Architecture Design](./01_architecture.md)*
