Skip to content
Skillpedia
Documentation40k · #5053

code-tour

Lets your agent create step-by-step guides for understanding code. It's great for onboarding new team members or explaining complex parts of a project.

What it does

Creates a 'CodeTour' file that guides people through a code project. It shows step-by-step where to look in the code, with direct links to specific files and lines.

When to use it

  • ✓To teach new team members how to use a project.
  • ✓To explain how a specific part of the code works.
  • ✓To document the solution to a complex problem.

Example of what to ask your AI

“Create a tour to explain how the authentication system of this project works for a new developer.”

Want more? Open the sections below.

How to use

The easiest way: copy the message below and paste it into Claude, ChatGPT, Cursor or any AI. It reads the skill and follows the instructions.

Skill link

https://github.com/github/awesome-copilot/blob/main/skills/code-tour/SKILL.md

Ready-to-paste message

Use this skill to help me: https://github.com/github/awesome-copilot/blob/main/skills/code-tour/SKILL.md Read the SKILL.md file at that link and follow its instructions for my task.
How it works

The AI analyzes the code and creates a special file (.tour) containing instructions. These instructions include which files to open and which lines to focus on, guiding the user through the codebase.

Installation

Easiest way: copy the skill link and paste it into Claude, ChatGPT or Cursor asking it to follow the instructions.

In the terminal (Claude Code, Codex, Cursor), in your project folder:

npx skills add github/awesome-copilot --skill code-tour

Or download just the file:

curl -L https://raw.githubusercontent.com/github/awesome-copilot/main/skills/code-tour/SKILL.md -o SKILL.md
Technical content (original SKILL.md)

Original text by the author, straight from GitHub.

Code Tour Skill

You are creating a CodeTour — a persona-targeted, step-by-step walkthrough of a codebase that links directly to files and line numbers. CodeTour files live in .tours/ and work with the VS Code CodeTour extension.

Two scripts are bundled in scripts/:

  • scripts/validate_tour.py — run after writing any tour. Checks JSON validity, file/directory existence, line numbers within bounds, pattern matches, nextTour cross-references, and narrative arc. Run it: python ~/.agents/skills/code-tour/scripts/validate_tour.py .tours/<name>.tour --repo-root .
  • scripts/generate_from_docs.py — when the user asks to generate from README/docs, run this first to extract a skeleton, then fill it in. Run it: python ~/.agents/skills/code-tour/scripts/generate_from_docs.py --persona new-joiner --output .tours/skeleton.tour

Two reference files are bundled:

  • references/codetour-schema.json — the authoritative JSON schema. Read it to verify any field name or type. Every field you use must conform to it.
  • references/examples.md — 8 real-world CodeTour tours from production repos with annotated techniques. Read it when you want to see how a specific feature (commands, selection, view, pattern, isPrimary, multi-tour series) is used in practice.

Real-world .tour files on GitHub

These are confirmed production .tour files. Fetch one when you need a working example of a specific step type, tour-level field, or narrative structure — don't write from memory when the real thing is one fetch away.

Find more with the GitHub code search: https://github.com/search?q=path%3A**%2F*.tour+&type=code

By step type / technique demonstrated

What to study File URL
directory + file+line (contributor onboarding) https://github.com/coder/code-server/blob/main/.tours/contributing.tour
selection + file+line + intro content step (accessibility project) https://github.com/a11yproject/a11yproject.com/blob/main/.tours/code-tour.tour
Minimal tutorial — tight file+line narration for interactive learning https://github.com/lostintangent/rock-paper-scissors/blob/master/main.tour
Multi-tour repo with nextTour chaining (cloud native OCI walkthroughs) https://github.com/lucasjellema/cloudnative-on-oci-2021/blob/main/.tours/introduction.tour
isPrimary: true (marks the onboarding entry point) https://github.com/nickvdyck/webbundlr/blob/main/.tours/getting-started.tour
pattern instead of line (regex-anchored steps) https://github.com/nickvdyck/webbundlr/blob/main/.tours/architecture.tour

Raw content tip: Prefix raw.githubusercontent.com and drop /blob/ for raw JSON access.

A great tour is not just annotated files. It is a narrative — a story told to a specific person about what matters, why it matters, and what to do next. Your goal is to write the tour that the right person would wish existed when they first opened this repo.

CRITICAL: Only create .tour JSON files. Never create, modify, or scaffold any other files.


Step 1: Discover the repo

Before asking the user anything, explore the codebase:

  • List the root directory, read the README, and check key config files (package.json, pyproject.toml, go.mod, Cargo.toml, composer.json, etc.)
  • Identify the language(s), framework(s), and what the project does
  • Map the folder structure 1–2 levels deep
  • Find entry points: main files, index files, app bootstrapping
  • Note which files actually exist — every path you write in the tour must be real

If the repo is sparse or empty, say so and work with what exists.

If the user says "generate from README" or "use the docs": run the skeleton generator first, then fill in every [TODO: ...] by reading the actual files:

python skills/code-tour/scripts/generate_from_docs.py \
  --persona new-joiner \
  --output .tours/skeleton.tour

Entry points by language/framework

Don't read everything — start here, then follow imports.

Stack Entry points to read first
Node.js / TS index.js/ts, server.js, app.js, src/main.ts, package.json (scripts)
Python main.py, app.py, __main__.py, manage.py (Django), app/__init__.py (Flask/FastAPI)
Go main.go, cmd/<name>/main.go, internal/
Rust src/main.rs, src/lib.rs, Cargo.toml

…

FAQ

What is a 'CodeTour'?

It's a step-by-step guide that points to specific parts of the code, helping people understand a project or feature.

Do I need to install anything to use it?

Yes, you need the CodeTour extension in VS Code to view and interact with the created tours.

Can I create tours for any type of project?

Yes, as long as the project has code, you can create a tour to explain it.

Details

Original description by the author

Use this skill to create CodeTour .tour files — persona-targeted, step-by-step walkthroughs that link to real files and line numbers. Trigger for: "create a tour", "make a code tour", "generate a tour", "onboarding tour", "tour for this PR", "tour for this bug", "RCA tour", "architecture tour", "explain how X works", "vibe check", "PR review tour", "contributor guide", "help someone ramp up", or a

repo: github/awesome-copilot

Popularity

GitHub stars
40k
Ranking position
#5053
License
MIT
Updated
10/15/2026

Is this skill useful?

0

Sign in to vote.

Comments

  • …

More skills from this repository

Similar skills