# How to Install and Use the AI Engineering from Scratch Curriculum Skills: start-learning, learn, and course-guide

> Install AI Engineering from Scratch curriculum skills with npx. Use start-learning for onboarding, learn for lessons, and course-guide to navigate topics effectively.

- Repository: [Rohit Ghumare/ai-engineering-from-scratch](https://github.com/rohitg00/ai-engineering-from-scratch)
- Tags: how-to-guide
- Published: 2026-09-01

---

**Install the curriculum skills with `npx skills add rohitg00/ai-engineering-from-scratch`, then invoke `start-learning` to onboard, `learn` to progress through lessons, and `course-guide` to navigate topics.**

The **AI Engineering from Scratch** repository by rohitg00 distributes a 523-lesson curriculum through three portable skill packages. These skills implement a **host-invocation contract** that allows interactive onboarding, personalized tutoring, and topic-based navigation without requiring you to manually clone the repository or manage lesson files.

## What Are the Curriculum Skills?

The curriculum ships three core skill definitions, each contained in a [`SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/SKILL.md) file that specifies its behavior, parameters, and host integration points:

| Skill | Purpose | Source Definition |
|-------|---------|-------------------|
| `start-learning` | One-time onboarding that conducts a placement quiz and generates a persistent study plan. | [`skills/start-learning/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/start-learning/SKILL.md) |
| `learn` | Interactive tutor that reads your study plan, teaches lessons step-by-step, and updates progress. | [`skills/learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/learn/SKILL.md) |
| `course-guide` | Topic router that maps concepts, errors, or questions to specific lessons. | [`skills/course-guide/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/course-guide/SKILL.md) |

Each skill operates as a **stateful agent** that reads from and writes to a local [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) file, making your progress portable across sessions.

## Installation Requirements and Setup

The skills are distributed as an **npm-style skill package** installer. Before adding the curriculum, verify your environment has the required runtimes:

```bash
node --version
npx --version
python3 --version

```

Install the skills directly from the repository using the `npx` command:

```bash
npx skills add rohitg00/ai-engineering-from-scratch

```

The installer detects your host environment (Node.js, Python, or compatible coding agents like Codex or Claude Code) and registers the skill definitions. It creates a writable scope for storing state files such as [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md). No manual clone of the repository is required; the installer pulls [`SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/SKILL.md) definitions directly from raw GitHub URLs.

## Using the start-learning Skill for Onboarding

The `start-learning` skill initializes your learning journey by creating the [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) study plan. Invoke it using your host's specific syntax:

```bash

# Codex syntax

start-learning

# Claude Code syntax

/start-learning

```

According to lines 41-71 of [`skills/start-learning/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/start-learning/SKILL.md), the skill executes the following workflow:

1. **Interview Phase**: Asks three mission-aligned questions about your goals, weekly time commitment, and desired build projects.
2. **Placement Assessment**: Runs the placement quiz from the `find-your-level` skill to determine your entry phase.
3. **Plan Generation**: Writes a [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) file containing **Mission**, **Placement**, **Path**, **Progress log**, and **Review queue** sections.
4. **State Initialization**: Creates the single source of truth that the `learn` skill reads for all subsequent sessions.

The generated [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) persists across restarts, allowing the curriculum to resume exactly where you left off.

## Progressing Through Lessons with the learn Skill

Once [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) exists, the `learn` skill functions as an interactive tutor. Invoke it with:

```bash

# Codex syntax

learn

# Claude Code syntax

/learn

```

As implemented in [`skills/learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/learn/SKILL.md) (lines 35-46), the skill follows this teaching protocol:

- **State Reading**: Parses [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) to locate the next lesson marked `Do` or `Review`.
- **Content Fetching**: Retrieves the lesson's [`docs/en.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/docs/en.md) and [`quiz.json`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/quiz.json) from host-agnostic URLs (e.g., `phases/*/*/docs/en.md`).
- **Interactive Delivery**: Teaches through problem framing → core concept → code walkthrough → production-library comparison → final quiz.
- **Progress Recording**: Appends a timestamped row to the **Progress log**, updates phase status, and suggests the next action (lines 63-73).

If [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) is missing, the skill automatically falls back to `start-learning` (see line 15 of [`learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/learn/SKILL.md)), ensuring new users always begin with onboarding.

## Navigating Topics with the course-guide Skill

The `course-guide` skill acts as a semantic router when you need to find specific content without manually browsing the 523-lesson index. Trigger it with a natural language query:

```bash

# Codex examples

course-guide attention
course-guide "my loss keeps diverging"

# Claude Code examples

/course-guide attention
/course-guide "I'm stuck on backprop"

```

Per [`skills/course-guide/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/course-guide/SKILL.md) (lines 56-66), the skill interprets your request type (topic, struggle, meta-question, or certification intent) and performs a scoped search through the **Contents** tables in the top-level [`README.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/README.md) (lines 38-41). It returns up to three lesson links with justification and the exact command to run next (typically `learn`).

For focused routes like the Model Context Protocol or Agent Skills, `course-guide` directly hands off to specialized skills such as `learn-mcp` or `learn-agent-skills`, referencing manifest files in `learning-paths/*.json`.

## Complete Workflow Example

The following session demonstrates the three skills operating in sequence on a Codex host:

```bash
$ start-learning
> Why are you learning AI engineering?   # → "to build a personal assistant"

> How many hours per week?               # → "~5 h"

> What do you want to build?             # → "an autonomous chatbot"

# Placement quiz runs, selects Phase 2 as entry point.

# LEARNING.md is created with a Path table covering all 20 phases.

$ learn
> Next lesson: Phase 2 – Linear Regression (01-linear-regression)
... (interactive teaching flow) ...

$ course-guide "my loss keeps diverging"
> Suggested lesson: Phase 3 – Deep Learning Core → 02-gradient-descent
> Run: learn

```

## Key Files and Architecture

Understanding the underlying structure helps debug skill behavior or extend the curriculum:

| Path | Role |
|------|------|
| [`README.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/README.md) | Central index listing every lesson with phase, number, title, type, language, and path. |
| [`skills/start-learning/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/start-learning/SKILL.md) | Onboarding logic, interview steps, and [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) template definition. |
| [`skills/learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/learn/SKILL.md) | Tutor implementation describing state-file handling, lesson fetching, and teaching flow. |
| [`skills/course-guide/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/course-guide/SKILL.md) | Topic router logic for interpreting user asks and scanning lesson tables. |
| `learning-paths/*.json` | Manifest files for focused routes (MCP, Agent Skills). |
| `phases/*/*/docs/en.md` | Individual lesson content fetched by the `learn` skill. |
| `phases/*/*/quiz.json` | Assessment data for each lesson. |

## Summary

- **Install** the curriculum skills using `npx skills add rohitg00/ai-engineering-from-scratch` without cloning the repository.
- **Onboard** with `start-learning` to generate your personalized [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) study plan through a placement quiz.
- **Progress** with `learn`, which reads your state file, teaches lessons interactively, and updates your progress log automatically.
- **Navigate** with `course-guide` to jump to specific topics based on concepts, errors, or questions.
- All skills follow a **host-invocation contract** that adapts syntax for Codex, Claude Code, or other compatible agents.

## Frequently Asked Questions

### Do I need to clone the repository to use these skills?

No. The `npx skills add` command pulls skill definitions directly from raw GitHub URLs and registers them with your host environment. The installer creates only the necessary local state files (like [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md)) without requiring a full repository clone.

### What happens if I run learn before start-learning?

The `learn` skill checks for the existence of [`LEARNING.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/LEARNING.md) at initialization. If the file is missing, it automatically falls back to `start-learning` (see line 15 of [`skills/learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/learn/SKILL.md)). This ensures you cannot accidentally begin mid-curriculum without a placement assessment and study plan.

### How does the course-guide skill determine which lesson to recommend?

The skill parses your natural language request to identify intent (topic lookup, debugging struggle, or meta-question). It then scans the **Contents** tables in the top-level [`README.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/README.md) (lines 38-41) to locate matching lessons, verifying content for struggle-based queries. It returns up to three ranked suggestions with direct links and the next command to execute.

### Can I use these skills with any AI coding agent?

Yes, provided the agent implements the **host-invocation contract** described in each [`SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/SKILL.md). The skills are portable across hosts like Codex (using bare command syntax) and Claude Code (using slash-command syntax). The underlying logic in [`skills/learn/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/learn/SKILL.md), [`skills/start-learning/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/start-learning/SKILL.md), and [`skills/course-guide/SKILL.md`](https://github.com/rohitg00/ai-engineering-from-scratch/blob/main/skills/course-guide/SKILL.md) remains host-agnostic, adapting only the invocation syntax.