Skip to content
AI Growth Lab
Navigation menu
AI Growth Lab

Loading lesson…

CoursesContactPrivacy

Curriculum based on Datawhale / Easy Vibe · CC BY-NC-SA 4.0

← Back to course

AI-Native Engineer

Claude Code Fundamentals
  1. Getting Started with Claude Code
  2. Essential Claude Code Techniques
  3. Configuring Claude Code for Your Project
  4. Everyday Development Workflows
  5. Troubleshooting Claude Code
MCP: Connecting Claude Code to Tools
  1. Getting Started with MCP in Claude Code
  2. Using and Troubleshooting MCP
  3. Configuring Common MCP Servers
Claude Code Skills
  1. Finding and Using Your First Skills
  2. Understanding Skills and SKILL.md
  3. Creating and Improving Your Own Skills
  4. How Claude Skills Work Internally
Claude Agent Teams
  1. Understanding and Setting Up Agent Teams
  2. Build an RPG with Agent Teams
  3. Agent Teams Best Practices
  4. Choosing When to Use Agent Teams
AI-Assisted Development Workflows
  1. Choosing an AI Development Strategy
  2. Developing Features and Fixing Bugs with AI
  3. Refactoring and Reviewing Code with AI
  4. Building a Project Knowledge Base
  5. Improving AI Collaboration Efficiency
Building Agents with Claude Agent SDK
  1. Getting Started with Claude Agent SDK
  2. Advanced Features and Practical Agent Examples
  3. Building a Code-Quality Guardrail Pipeline
Engineering Workflows with Superpowers
  1. Getting Started with Superpowers and Its Core Skills
  2. Build an Authentication System with Superpowers
  3. Configuring and Using Superpowers Effectively
Spec Coding
  1. Spec Coding Foundations
  2. Practicing Spec Coding in Claude Code
  3. Moving from Vibe Coding to Spec Coding
  4. Spec Coding FAQ and Summary
GitHub Spec-Driven Development
  1. Workflow Foundations and Setup
  2. From Product Idea to Specification
  3. From Specification to Working Software
  4. Reusable Prompts and Responsible Autonomy
Cross-Platform Development
  1. From a Web Page to Real Software and an AI-Native Product
  2. How to Choose the Right Platform for Your App
  3. How to Build an Android App with Jetpack Compose
  4. How to Build an iOS App with SwiftUI
  5. Build a Store Inspection App with React Native and Expo
On this page
  • 4.1 Create a Project Description File
  • 4.2 Record Common Problems and Solutions
  • 4.3 Maintain Technical Decision Records

4. Build a Project Knowledge Base

To help AI understand your project better, it is recommended to build a knowledge base inside the project. That way AI can work according to your conventions and habits.

4.1 Create a Project Description File

Create a or file in the project root to record key project information:

Lesson Contents

  1. 4.1 Create a Project Description File
  2. 4.2 Record Common Problems and Solutions
  3. 4.3 Maintain Technical Decision Records
AI Development FAQ and Summary
How to Build a Cross-Platform App with Flutter
  • How to Build a PWA Local App
  • How to Build a Browser AI Assistant Extension
  • How to Build a Cross-Platform Electron Desktop App
  • How to Build Platform, Pixel-Art, and 3D Games with Godot
  • How to Build a VS Code Extension
  • How to Build an Industrial Qt Desktop App
  • How to Build Your Personal Website and Academic Blog
  • How to Publish the Application You Built
  • CLAUDE.md
    AGENTS.md
    # Project Overview
    
    ## Project Summary
    This is an online learning platform that provides course management, user learning, assignment submission, and other features.
    
    ## Tech Stack
    - Frontend: React 18 + TypeScript + Vite
    - Backend: Node.js + Express + PostgreSQL
    - Deployment: Vercel (frontend) + Railway (backend)
    
    ## Project Structure
    

    src/ ├── components/ # React components ├── pages/ # Page components ├── api/ # API calls ├── utils/ # Utility functions └── types/ # TypeScript type definitions

    
    ## Code Conventions
    - Use ESLint and Prettier to format code
    - Component files use PascalCase (such as UserProfile.tsx)
    - Utility functions use camelCase (such as formatDate.ts)
    - Constants use UPPER_SNAKE_CASE (such as API_BASE_URL)
    
    ## Development Flow
    1. Create a feature branch from main
    2. Submit a PR after development is complete
    3. Merge after code review passes
    
    ## Common Tasks
    - Start the development server: `npm run dev`
    - Run tests: `npm test`
    - Build for production: `npm run build`
    - Format code: `npm run format`
    
    ## Notes
    - All API calls must include error handling
    - User input must be validated and escaped
    - Use parameterized queries for database operations to avoid SQL injection
    - Sensitive information (passwords, tokens) must not be written to logs
    
    ## Database Schema
    - users: user table (id, email, password_hash, created_at)
    - courses: course table (id, title, description, teacher_id)
    - enrollments: enrollment table (id, user_id, course_id, enrolled_at)
    

    4.2 Record Common Problems and Solutions

    Create docs/troubleshooting.md in the project to record common problems:

    # Common Problems
    
    ## Development Environment Problems
    
    ### Problem: npm install fails
    **Cause:** Node version is incompatible
    **Solution:** Use Node.js 18 or higher
    
    ### Problem: database connection fails
    **Cause:** environment variables are not configured
    **Solution:** Copy .env.example to .env and fill in the database connection info
    
    ## Feature Problems
    
    ### Problem: after users log in, refreshing the page logs them out
    **Cause:** the token is stored in sessionStorage
    **Solution:** switch to localStorage
    
    ### Problem: image upload fails
    **Cause:** file size exceeds the limit
    **Solution:** add a file size check on the frontend and limit it to 5MB
    

    4.3 Maintain Technical Decision Records

    Create a docs/decisions/ directory to record important technical decisions:

    # ADR-001: Choosing PostgreSQL as the Database
    
    ## Status
    Accepted
    
    ## Background
    The project needs to choose a relational database. The candidates are MySQL and PostgreSQL.
    
    ## Decision
    Choose PostgreSQL
    
    ## Rationale
    1. Better JSON support, suitable for storing course content
    2. Stronger full-text search
    3. The team is more familiar with PostgreSQL
    
    ## Consequences
    - We need to learn PostgreSQL-specific features
    - Deployment requires a PostgreSQL environment
    
    Previous
    Sign in to track progress
    Next