Skip to content
Agentmart
Submit a tool

khan-academy

Find a Khan Academy video fast and add it only on a strong match.

Skill by madhvantyagi

IndexedMIT★ 342
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/madhvantyagi-khan-academy

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Find a Khan Academy video fast and add it only on a strong match.

Use cases: education

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found
Runs as
Python package

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/khan-academy

What's inside

Skill name
khan-academy
Description
Find a Khan Academy video fast and add it only on a strong match.
License
MIT
Instructions
93 lines in SKILL.md · view on GitHub

Before installing

  • Ships executable scripts

Files (8)

  • SKILL.md
  • embedding.md · references/
  • finder-workflow.md · references/
  • incorporation.md · references/
  • selection.md · references/
  • probe_mcp.py · scripts/
  • review_video_blocks.py · scripts/
  • video_finder.py · scripts/

SKILL.md (first lines)

# Khan Academy Video Finder

This skill finds one Khan Academy video for one lesson step.
Find content with two searches: Khan first (Door 1), YouTube second (Door 2).
Add the video only for an exact topic match.
You need no MCP server. You need no transcript.

## When to Use and When to Skip

Use this skill for a single topic that needs a video.
An example query is `Bayes theorem`.
Another query is `linear transformations`.
Skip when the lesson already teaches the step.
Skip when no candidate clearly teaches the exact topic.
Use length only to choose a clip, never to reject a topic match.

## Find the Video in Four Steps

### Step 1 Find Names on Khan

Run the finder script with your query.

```bash
python3 skills/khan-academy/scripts/video_finder.py /tmp/khan-report.md "Bayes theorem"
```

The script calls Khan GraphQL and returns titles with contentIds.
Pick the title that matches your exact topic.
An example pick is `Conditional probability with Bayes' Theorem`.
Save its contentId and parent path.

### Step 2 Find Videos on YouTube

The same script feeds each exact Khan title to YouTube.
It searches YouTube for Khan Academy plus the quoted title.
It keeps two or three hits per title with channel and duration.
An example hit is a Khan Academy video near five minutes.

### Step 3 Join on Title and Duration

Match the Khan title to the YouTube title.
Allow only small word differences.
Match a Khan-owned channel: the name without spaces starts with `khanacademy`.
Note the duration so you can pick a clip later; length alone never rejects a match.
The script labels each pair as a strong candidate or a weak candidate.
Stop if nothing scores strong.
Read `references/selection.md` to judge direct, prerequisite-only, or partial coverage before you add the video.

### Step 4 Add the Video or Stop

Add the video only on a strong match.
If you have not confirmed the ID, link the Khan page instead.
One known page is below.

`https://www.khanacademy.org/math/ap-statistics/probability-ap/stats-conditional-probability/v/bayes-theorem-visualized`

Confirm the YouTube ID in a browser.
Confirm playback through the local HTTP server, never through `file://`.
A `file://` page sends no origin, and YouTube returns Error 153
for every embed even when the ID is correct.
Read `references/embedding.md` before you render or inspect.
Then use a video block with that ID.
Stop and report no match if unsure.

## Use a Video Block Only on an Exact Match

The video must teach the exact topic.
A close topic is not enough.
A playlist or part two is not enough.
Link the Khan page if you cannot confirm the ID.
Do not guess an ID.
Do not embed an unconfirmed ID.

## Record the Check

Save these eight items for each pick.

- Title
- Khan page URL
- contentId
- YouTube ID
- Duration
- Confidence
- Check date
- Placer name

Store URLs and IDs in code spans.
Read `references/finder-workflow.md` for endpoints and failures.
Read `references/selection.md` for coverage judgments.
Read `references/incorporation.md` for placement and prompts.
Read `references/embedding.md` for the iframe markup and the serve-over-HTTP playback check.

From madhvantyagi/Gnos, MIT.

More from madhvantyagi/Gnos

Signals

Stars
342
Forks
25
Open issues
2
Last commit (this folder)
Sep 28, 2026 (29 days ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from madhvantyagi

Cite this page

khan-academy skill. Agent Mart. https://agentmart.dev/skills/madhvantyagi-khan-academy (last updated 2026-10-24)