Lesson 5 - Projects: Persistent Context Management

Master Claude's Projects feature to maintain context across sessions, organize complex builds, and work more efficiently with custom instructions and knowledge bases.

Duration: 2-3 hours

Learning Objectives

By the end of this lesson, you will be able to:

  • Create and configure Claude Projects with custom instructions
  • Upload and manage knowledge base files effectively
  • Maintain context across multiple conversations within a Project
  • Organize work using Projects for different products or features

Videos

Why Projects Matter: Solving the Context Problem

Understanding the limitations of regular conversations and how Projects solve persistent context needs.

Duration: 6 minutes

Setting Up Your Project: Instructions and Knowledge

Step-by-step guide to creating a Project, writing custom instructions, and uploading knowledge files.

Duration: 6 minutes

Multi-Session Workflows: Building Across Days

How to leverage Projects for building complex features across multiple sessions without losing context.

Duration: 6 minutes

Key Concepts

Custom Instructions Template

**Copy this template and customize for your project:** --- **Project Name:** [Your project name] **What I'm Building:** [2-3 sentence description of your product/app] **Tech Stack:** - Frontend: [e.g., Next.js 14, React, TypeScript] - Styling: [e.g., Tailwind CSS, shadcn/ui] - Backend: [e.g., Supabase, tRPC, none yet] - Deployment: [e.g., Vercel] - Other: [e.g., Stripe for payments, Auth0 for auth] **Code Style Preferences:** - [e.g., 'Use functional components in React'] - [e.g., 'Prefer named exports over default exports'] - [e.g., 'Add TypeScript types for all functions'] - [e.g., 'Include helpful comments for complex logic'] **Project Constraints:** - [e.g., 'Must be mobile-responsive'] - [e.g., 'Accessibility: WCAG 2.1 AA compliance'] - [e.g., 'Performance: page load under 2 seconds'] - [e.g., 'No external API dependencies unless discussed'] **When Generating Code:** - Explain what each new file does before showing code - Include error handling and loading states - Suggest testing approaches for new features - Point out potential edge cases **Target Audience:** [Who will use this? E.g., 'Non-technical founders learning to build products'] **Current Status:** [Where are you now? E.g., 'MVP launched, working on v2 features' or 'Just starting, no code yet'] --- **Example (02Ship):** **Project Name:** 02Ship Learning Platform **What I'm Building:** A course platform teaching non-programmers to build products using Claude AI. Includes video lessons, exercises, and progress tracking. **Tech Stack:** - Frontend: Next.js 14 (App Router), TypeScript, Tailwind CSS - Content: MDX (blog), JSON (courses) - Deployment: Vercel - Analytics: Vercel Analytics **Code Style Preferences:** - Use TypeScript strict mode - Prefer named exports - Mobile-first responsive design - Accessibility: include ARIA labels **Project Constraints:** - All content must be beginner-friendly (no jargon without explanation) - Fast page loads (Lighthouse score 90+) - No authentication initially (public course content) **When Generating Code:** - Explain file structure before showing code - Include accessibility attributes - Suggest SEO improvements - Keep components small and focused **Target Audience:** Non-programmers (founders, PMs, students) with zero coding experience **Current Status:** MVP live, building out course lesson structure

What to Upload as Knowledge Files

**Essential Documents (Priority 1):** 1. **README.md** - Project overview, setup instructions, architecture 2. **Requirements/PRD** - Original project brief, goals, scope 3. **Design Docs** - Wireframes (as PDF), design system, UI guidelines 4. **API Documentation** - For any external services you're integrating **Helpful Context (Priority 2):** 5. **package.json** - So Claude knows your dependencies 6. **Key Code Files** - Main components or utilities (not entire codebase) 7. **Database Schema** - ER diagrams, table structures, migrations 8. **Brand Guidelines** - Tone, voice, color palette, logo usage **Optional but Useful:** 9. **User Research** - Pain points, interview quotes, personas 10. **Competitor Analysis** - What exists, how yours is different 11. **Changelog** - Major decisions and their reasoning **File Format Tips:** - Markdown (.md) works best for text documents - PDFs for complex layouts (wireframes, presentations) - Code files (.ts, .tsx, .json) for technical references - Images (PNG/JPG) for UI mockups or diagrams **Size Limits:** - Individual files: 10 MB max - Total knowledge base: 100 MB per Project - If over limit, split into smaller files or summarize **What NOT to Upload:** ❌ Your entire codebase (too large, use Git instead) ❌ Secrets/API keys (use environment variables) ❌ Binary files unless necessary (use text when possible) ❌ Outdated docs (keep knowledge base current)

Projects vs. Regular Chats Decision Tree

**Use a PROJECT when:** ✅ Building a specific product over days/weeks ✅ You have requirements that should persist (tech stack, style) ✅ Iterating on the same codebase across sessions ✅ Need Claude to reference specific docs repeatedly ✅ Working with a team (can share Project access) ✅ Want conversation history for later reference **Use REGULAR CHAT when:** 🔹 Quick one-off questions ('How do I deploy to Vercel?') 🔹 Exploring ideas before committing to build 🔹 Learning/research without a specific project 🔹 Testing different approaches before choosing 🔹 General productivity (writing emails, summaries) 🔹 Don't have Claude Pro (Projects require Pro) **Project Organization Strategy:** **Option A: One Project Per Product** - Project: "MyApp" → all features, conversations, docs - Best for: Small-medium projects, solo builders **Option B: Main + Feature Projects** - Project: "MyApp - Core" - Project: "MyApp - Auth System" - Project: "MyApp - Payment Integration" - Best for: Large projects, team collaboration **Option C: Stage-Based Projects** - Project: "MyApp - MVP" - Project: "MyApp - V2" - Best for: Versioned development, major refactors **Pro tip:** Start with Option A (one Project). Split into more only when it gets messy.

Conversation Organization Best Practices

**Naming Conversations:** ✅ Good: - 'Build user profile page' - 'Debug Stripe payment integration' - 'Add dark mode toggle' - 'Refactor auth flow' ❌ Bad: - 'Help' (too vague) - 'Untitled' (default, always rename!) - 'Fix' (fix what?) - '12/25 work' (use descriptive names, not dates) **When to Start a New Conversation:** - Beginning a distinct feature or task - Previous conversation exceeded 50+ messages (gets unwieldy) - Switching to different part of the codebase - Starting a new sprint or development phase **When to Continue Existing Conversation:** - Iterating on the same feature - Debugging issues from the same work session - Following up on a question from earlier - Making related changes to what you just built **Archiving Strategy:** 1. After a feature ships → archive that conversation 2. After a major refactor → archive old implementation discussions 3. Monthly cleanup → archive anything older than 30 days you won't reference 4. Keep important decision logs even if old (tag them clearly) **Referencing Previous Conversations:** Claude can reference past conversations within a Project: - 'In our conversation about the login flow, you suggested...' - 'Remember the dark mode feature we built last week?' - 'Update the header component we created in the previous conversation' This works because Projects maintain full history!

Key Definitions

**Project (Claude):** A workspace with persistent custom instructions, knowledge files, and conversation history **Custom Instructions:** Standing guidelines Claude follows in every conversation within a Project **Knowledge Base:** Uploaded files (docs, code, designs) that Claude can reference **Conversation History:** All past chats within a Project — Claude remembers them **Context Window:** Amount of text Claude can process at once (Projects help manage this across sessions) **Artifact:** Code/documents Claude generates (visible across all Project conversations) **Pro Tier:** Paid Claude subscription required for Projects feature

Common Mistakes & Pitfalls

Creating too many Projects (one per feature)

Start with one Project per product. Only split when it becomes genuinely hard to manage.

Never updating custom instructions

Review and update instructions as your project evolves. Outdated instructions cause confusion.

Uploading entire codebase as knowledge

Too much information overwhelms Claude. Upload key docs and reference files only.

Not naming conversations descriptively

Future you won't remember what 'Untitled conversation 8' was about. Name clearly from the start.

Using Projects for quick questions

Projects are for sustained work. Quick questions work fine in regular chats.

Exercises

Exercise 1: Create and Configure Your Project

60 minutes

Set up a Project for your product with complete custom instructions and knowledge files.

Expected Output:

Configured Project showing: custom instructions, at least 2 uploaded knowledge files, proof that Claude references them

Success Criteria:

  • Project created with clear, descriptive name
  • Custom instructions include: tech stack, code style, constraints, current status
  • Uploaded at least 2 relevant files (README, requirements, or design docs)
  • Started a test conversation and confirmed Claude references your instructions
  • Asked Claude 'What is this project about?' and got accurate answer based on your setup

Exercise 2: Multi-Day Build Simulation

90 minutes

Use your Project to build a feature across two separate conversations (simulating different days).

Expected Output:

Two conversation logs: (1) Day 1 - Planning, (2) Day 2 - Implementation that references Day 1 without re-explaining

Success Criteria:

  • Conversation 1: Planned a feature with Claude, got initial code
  • Closed conversation, started fresh conversation (simulating next day)
  • Conversation 2: Referenced previous work ('the login feature we started yesterday')
  • Claude successfully recalled context from previous conversation
  • Completed the feature building on previous work
  • Both conversations clearly named and organized

Exercise 3: Organize Your Workspace

30 minutes

Audit and organize your Claude workspace — Projects, conversations, archiving.

Expected Output:

Organization report showing: current Project structure, renamed conversations, archived old work, documented strategy

Success Criteria:

  • Created at least one Project for active work
  • Renamed all conversations in Project with descriptive titles
  • Archived or deleted at least 3 old/irrelevant conversations
  • Documented your Project organization strategy (how you'll use Projects going forward)
  • Can find any past conversation quickly by name

Lesson Reflection

Take a moment to reflect on what you've learned:

  • 1. Think about your current project: what context do you repeat to Claude every time? How would Projects eliminate that repetition?
  • 2. If Claude could remember 3 things permanently about your project, what would they be? (Those go in custom instructions!)
  • 3. How would your workflow change if you could pick up exactly where you left off yesterday with no context-setting?