Not in the top 1,000 by GitHub stars

heyuxuan0209/watch-anything

看不完的视频,让 AI 替你看懂:X/YouTube/B站视频 → 中文卡片解读(read-anything 的姊妹)

History

Review weekly changes to SKILL.md before updating. Dates mark the weeks in which we observed each version; checks apply to the recorded commits.

View weekly changes

SKILL.md

Week of Nov 2, 2026 · +0 / −0 lines

Before Network or broad shell → After Network or broad shell

0e7e60b5b6f5 → 0e7e60b5b6f5

Compare on GitHub

Week of Oct 26, 2026 · Line counts unavailable

Before Not checked yet → After Network or broad shell

First observation → 0e7e60b5b6f5

No earlier version was observed for comparison.

Compare on GitHub

View on GitHubAdd to my skills

Verified commit 0e7e60b5b6f5d35afa330343237bc99911283bce

26GitHub stars
1star in 7 days
1skill in this repository
0commits in 30 days

Heat

1.7
  • Star growth, last 7 daysNot available
  • Star growth, last 24 hoursNot available
  • Rank movement, last 7 daysNot available
  • Commits, last 30 daysNot available
  • Accounts asking about it through MCP, last 7 daysNot available
  • Hot votes this weekNot available

Heat never changes the order by stars, and sponsorship never touches it. How heat works

Stars over time

Oct 25, 2026Nov 3, 202626

30-day change not yet available: not enough history.

Individual skills in this repository

How it works

watch-anything

When your agent uses it

看懂视频与富媒体:X 推文(含推文视频)/ YouTube / B站 / 无字幕视频链接 → 字幕优先或本地/云端语音转写 → 中文卡片解读(卡片:摘要 3 句 + 要点 3-6 条 + 金句中英对照;全稿:讲述脉络按原片结构走完 + 关键案例 + 结构图)→ 基于材料的多轮问答。触发:用户丢 X/YouTube/B站/视频链接并说"解读/看懂/讲了啥/转写一下/值得看吗/这视频说了什么",或明确说"watch-anything"。read-anything 的姊妹:read 管读文字,watch 管看视频/富媒体。

What it loads into context

Frontmatter

186 tokens

Always available to the agent

SKILL.md

569 tokens

When the skill is activated

Reference documents

23,854 tokens

Loaded on request

Token counts are estimates. Scripts run separately; they are not counted as reference context.

The playbook

    Scripts executed separately

    • extension/background.js
    • scripts/fetch-x.mjs
    • scripts/push-feishu.mjs
    • scripts/queue-server.mjs
    • scripts/transcribe-video.mjs
    • scripts/transcribe.py
    • scripts/vtt-to-text.mjs

    Files

    • .gitignoreasset103 bytes
    • LICENSEasset1,069 bytes
    • PLAYBOOK.mddoc13,708 bytes
    • README.mddoc25,336 bytes
    • README.zh-CN.mddoc22,746 bytes
    • SKILL.mdcore1,912 bytes
    • assets/demo.gifasset2,282,549 bytes
    • assets/qr-douyin.jpgasset23,511 bytes
    • assets/qr-shipinhao.jpgasset21,171 bytes
    • assets/qr-wechat.jpgasset29,758 bytes
    • assets/qr-xiaohongshu.jpgasset20,695 bytes
    • extension/README.mddoc3,471 bytes
    • extension/background.jsruns3,744 bytes
    • extension/icons/icon128.pngasset4,191 bytes
    • extension/icons/icon16.pngasset512 bytes
    • extension/icons/icon32.pngasset1,003 bytes
    • extension/icons/icon48.pngasset1,378 bytes
    • extension/manifest.jsonasset748 bytes
    • integrations/feishu.mddoc8,085 bytes
    • scripts/fetch-x.mjsruns3,708 bytes
    • scripts/push-feishu.mjsruns18,683 bytes
    • scripts/queue-server.mjsruns7,741 bytes
    • scripts/transcribe-video.mjsruns14,428 bytes
    • scripts/transcribe.pyruns2,577 bytes
    • scripts/vtt-to-text.mjsruns1,706 bytes
    • templates/brief.mddoc695 bytes
    • templates/card.mddoc4,291 bytes
    • templates/deep-read.mddoc2,544 bytes
    • templates/interview.mddoc1,009 bytes
    • templates/news.mddoc1,009 bytes
    • templates/thread.mddoc952 bytes
    • templates/tutorial.mddoc953 bytes
    Read SKILL.md
    
    # 看懂视频(watch-anything)
    
    按本目录 `PLAYBOOK.md` 执行,它是唯一的行为规范(路由表、转写降级链、卡片格式、
    诚实守则、降级话术都在里面)。本文件只是 Claude Code 的触发入口。
    
    要点提醒:
    
    1. 先读 `PLAYBOOK.md`,按链接类型走路由:X 推文先 `scripts/fetch-x.mjs` 拿正文+媒体清单,
       带视频再 `scripts/transcribe-video.mjs` 转写;YouTube/B站 直接 `transcribe-video.mjs`
       (字幕优先,无字幕才转写)。脚本零 npm 依赖、Node 18+、JSON 进出。
    2. 转写降级链:视频字幕 > Groq 云 whisper(需 `GROQ_API_KEY`)> 本地 faster-whisper。
       缺哪级降哪级,长视频转写前告知用户「需等几分钟」。
    3. 解读模板在 `templates/`,默认 `card.md`(卡片格式);用户一句话可覆盖,
       自定义模板 = 目录里的新 .md 文件。
    View the complete source on GitHub

    Skills included

    • watch-anything

    Repository facts

    License
    MIT
    Created
    Aug 4, 2026
    Last pushed
    Aug 16, 2026
    Forks
    1
    Open issues
    0
    Project activity
    Slowing

    Before you install

    Network or broad shell

    Automated signals, not a guarantee

    Checked Nov 7, 2026

    Show all 129 signals by file

    PLAYBOOK.md

    • Network accessline 43
      所有脚本零 npm 依赖、Node 18+。网络层用 curl / yt-dlp 子进程(天然读代理环境变量,
    • Access to secretsline 79
      [Credential-related source omitted]
    • Access to secretsline 91
      [Credential-related source omitted]
    • Network accessline 254
      |---|---|---| | Node 18+ | `node --version` | 必需(fetch-x / transcribe-video / vtt-to-text 运行时) | | curl | 系统自带(macOS/Linux/Win10+) | 必需(网络层,天然支持代理环境变量) |
    • Network accessline 255
      | Node 18+ | `node --version` | 必需(fetch-x / transcribe-video / vtt-to-text 运行时) | | curl | 系统自带(macOS/Linux/Win10+) | 必需(网络层,天然支持代理环境变量) | | yt-dlp | `yt-dlp --version`(报 bad interpreter 时用 `python3 -m yt_dlp`) | YouTube/B站/推文视频转写不可用;X 纯文字
    • Network accessline 256
      | curl | 系统自带(macOS/Linux/Win10+) | 必需(网络层,天然支持代理环境变量) |
    • Access to secretsline 258
      [Credential-related source omitted]

    README.md

    • Network accessline 12
      它是 [read-anything](https://github.com/heyuxuan0209/read-anything) 的姊妹:
    • Access to secretsline 58
      [Credential-related source omitted]
    • Network accessline 89
      > Download this for me and walk me through installing and configuring it, step by step, in plain > language. https://github.com/heyuxuan0209/watch-anything
    • Network accessline 90
      > language. https://github.com/heyuxuan0209/watch-anything
    • Network accessline 106
      git clone https://github.com/heyuxuan0209/watch-anything.git ~/.claude/skills/watch-anything
    • Network accessline 113
      **It looks like this in use** (taking the tweet in the GIF above as an example, real link [x.com/Krishnasagrawal/status/2084314878576365906](https://x.com/Krishnasagrawal/status/2084314878576365906)):
    • Network accessline 114
      [x.com/Krishnasagrawal/status/2084314878576365906](https://x.com/Krishnasagrawal/status/2084314878576365906)):
    • Network accessline 117
      You: https://x.com/Krishnasagrawal/status/2084314878576365906 what's this video about It: (fetch-x gets the tweet → finds a 28-min video → yt-dlp downloads the audio track → Groq/local whisper transcribes → produces card)
    • Network accessline 165
      git clone https://github.com/heyuxuan0209/watch-anything.git ~/.agent-skills/watch-anything
    • Network accessline 258
      |---|---|---| | Node.js 18+ | Required | Runtime for the four .mjs scripts (zero npm dependencies) | | curl | Required (ships with the system) | Network layer, natively supports proxy environment variables |
    • Network accessline 259
      | Node.js 18+ | Required | Runtime for the four .mjs scripts (zero npm dependencies) | | curl | Required (ships with the system) | Network layer, natively supports proxy environment variables | | yt-dlp | Required for the video route | Pull
    • Network accessline 260
      | curl | Required (ships with the system) | Network layer, natively supports proxy environment variables |
    • Network accessline 261
      | yt-dlp | Required for the video route | Pulls captions + downloads audio track (`brew install yt-dlp`); without it, only text-only X tweets can be handled | | GROQ_API_KEY | Optional | Groq cloud whisper transcription (fast, nearly free, 
    • Network accessline 262
      [Credential-related source omitted]
    • Access to secretsline 262
      [Credential-related source omitted]
    • Network accessline 270
      For access to YouTube / X from within China, set the `YOUTUBE_PROXY_URL` environment variable (e.g. `http://127.0.0.1:7890`). Groq uploads go through the `HTTPS_PROXY` / `http_proxy` environment variables (curl reads them natively).
    • Network accessline 271
      `http://127.0.0.1:7890`). Groq uploads go through the `HTTPS_PROXY` / `http_proxy` environment variables
    • Network accessline 272
      (curl reads them natively).
    • Network accessline 279
      **Transcription.** Only pays anything if you use the Groq cloud tier. As of 2026-08-11, Groq's [speech-to-text docs](https://console.groq.com/docs/speech-to-text) list `whisper-large-v3-turbo`
    • Network accessline 280
      [speech-to-text docs](https://console.groq.com/docs/speech-to-text) list `whisper-large-v3-turbo`
    • Access to secretsline 327
      [Credential-related source omitted]
    • Network accessline 332
      [Credential-related source omitted]
    • Access to secretsline 332
      [Credential-related source omitted]
    • Network accessline 333
      `pip install faster-whisper` (free, local) or get a free key at [console.groq.com](https://console.groq.com).
    • Network accessline 384
      Distilled from the content-collection pipeline (ADR-064 cloud transcription channel) of my personal knowledge management system [knowledge-workbench](https://github.com/heyuxuan0209/knowledge-workbench) —
    • Network accessline 385
      knowledge management system [knowledge-workbench](https://github.com/heyuxuan0209/knowledge-workbench) — the hardening points in the scripts (FxTwitter login-free tweet fetching, X video audio-video merge `bestaudio/best` fallback, the capt

    README.zh-CN.md

    • Network accessline 12
      它是 [read-anything](https://github.com/heyuxuan0209/read-anything) 的姊妹:
    • Access to secretsline 56
      [Credential-related source omitted]
    • Network accessline 83
      > 帮我把这个仓库下载下来,用大白话一步一步教我安装和配置。 > https://github.com/heyuxuan0209/watch-anything
    • Network accessline 84
      > https://github.com/heyuxuan0209/watch-anything
    • Network accessline 99
      git clone https://github.com/heyuxuan0209/watch-anything.git ~/.claude/skills/watch-anything
    • Network accessline 106
      **用起来长这样**(以上图那条推文为例,真实链接 [x.com/Krishnasagrawal/status/2084314878576365906](https://x.com/Krishnasagrawal/status/2084314878576365906)):
    • Network accessline 109
      你:https://x.com/Krishnasagrawal/status/2084314878576365906 这条视频讲了啥 它:(fetch-x 拿推文 → 发现带 28 分钟视频 → yt-dlp 下音轨 → Groq/本地 whisper 转写 → 出卡片)
    • Network accessline 157
      git clone https://github.com/heyuxuan0209/watch-anything.git ~/.agent-skills/watch-anything
    • Network accessline 244
      |---|---|---| | Node.js 18+ | 必需 | 四个 mjs 脚本的运行时(零 npm 依赖) | | curl | 必需(系统自带) | 网络层,天然支持代理环境变量 |
    • Network accessline 245
      | Node.js 18+ | 必需 | 四个 mjs 脚本的运行时(零 npm 依赖) | | curl | 必需(系统自带) | 网络层,天然支持代理环境变量 | | yt-dlp | 视频路由必需 | 拉字幕 + 下音轨(`brew install yt-dlp`);缺了则只能处理 X 纯文字推文 |
    • Network accessline 246
      | curl | 必需(系统自带) | 网络层,天然支持代理环境变量 |
    • Network accessline 247
      | yt-dlp | 视频路由必需 | 拉字幕 + 下音轨(`brew install yt-dlp`);缺了则只能处理 X 纯文字推文 | | GROQ_API_KEY | 可选 | Groq 云 whisper 转写(快、近乎免费、≤25MB);[console.groq.com](https://console.groq.com) 免费领 | | faster-whisper | 可选 | 本地转写兜底(`pip install faster-whisper`,首次自动
    • Network accessline 248
      [Credential-related source omitted]
    • Access to secretsline 248
      [Credential-related source omitted]
    • Network accessline 255
      国内网络访问 YouTube / X 需设置 `YOUTUBE_PROXY_URL` 环境变量(如 `http://127.0.0.1:7890`)。 Groq 上传走 `HTTPS_PROXY` / `http_proxy` 环境变量(curl 天然读)。
    • Network accessline 256
      Groq 上传走 `HTTPS_PROXY` / `http_proxy` 环境变量(curl 天然读)。
    • Network accessline 262
      **转写。** 只有走 Groq 云端才花钱。2026-08-11 查,Groq [语音识别文档](https://console.groq.com/docs/speech-to-text) 标 `whisper-large-v3-turbo`
    • Network accessline 263
      [语音识别文档](https://console.groq.com/docs/speech-to-text) 标 `whisper-large-v3-turbo`
    • Access to secretsline 305
      [Credential-related source omitted]
    • Network accessline 310
      [Credential-related source omitted]
    • Access to secretsline 310
      [Credential-related source omitted]
    • Network accessline 311
      `pip install faster-whisper`(免费、本地),或去 [console.groq.com](https://console.groq.com) 免费领 key
    • Network accessline 357
      从个人知识管理系统 [knowledge-workbench](https://github.com/heyuxuan0209/knowledge-workbench) 的内容采集链路(ADR-064 云转写通道)提炼——脚本里的加固点(FxTwitter 免登录抓推文、 X 视频音画合流 `bestaudio/best` 兜底、字幕 `en.*` 通配触发 429 的坑、Node fetch 不读代理

    SKILL.md

    • Access to secretsline 16
      [Credential-related source omitted]

    extension/README.md

    • Network accessline 29
      看到 `待读队列已就绪 → http://127.0.0.1:7391` 就行。想让它常驻,加 `&` 或用你惯用的进程管理。
    • Network accessline 77
      javascript:fetch('http://127.0.0.1:7391/queue',{method:'POST',headers:{'Content-Type':'application/json'},body:JSON.stringify({url:location.href,title:document.title})}).then(r=>r.json()).then(d=>alert(d.ok?'已入队':'失败:'+d.error)).catch(e=>al

    extension/background.js

    • Executable scriptline 1
      Executable file
    • Network accessline 7
      const PORT = 7391;                       // 与 queue-server 的 WA_QUEUE_PORT 保持一致 const ENDPOINT = `http://127.0.0.1:${PORT}/queue`;
    • Network accessline 8
      const ENDPOINT = `http://127.0.0.1:${PORT}/queue`;
    • Network accessline 49
      }   try {     const res = await fetch(ENDPOINT, {
    • Network accessline 50
      try {     const res = await fetch(ENDPOINT, {       method: 'POST',
    • Network accessline 51
      const res = await fetch(ENDPOINT, {

    extension/manifest.json

    • Network accessline 5
      "description": "看到看不完的视频,点一下丢进待读队列,接着看你的。你的 agent 稍后把它读完。",   "permissions": ["activeTab", "scripting"],   "host_permissions": ["http://127.0.0.1/*"],
    • Network accessline 6
      "permissions": ["activeTab", "scripting"],   "host_permissions": ["http://127.0.0.1/*"],   "background": { "service_worker": "background.js" },
    • Network accessline 7
      "host_permissions": ["http://127.0.0.1/*"],

    integrations/feishu.md

    • Network accessline 45
      export FEISHU_WEBHOOK="https://open.feishu.cn/open-apis/bot/v2/hook/xxxxxxxx"
    • Access to secretsline 46
      [Credential-related source omitted]
    • Network accessline 63
      1. 打开 [飞书开放平台](https://open.feishu.cn/app) → **创建企业自建应用**
    • Network accessline 73
      [Credential-related source omitted]
    • Access to secretsline 73
      [Credential-related source omitted]
    • Network accessline 75
      # export FEISHU_BASE="https://open.larksuite.com"
    • Access to secretsline 92
      [Credential-related source omitted]
    • Network accessline 102
      预期输出 `{"ok":true,"mode":"doc","docUrl":"https://xxx.feishu.cn/docx/xxxx"}`,点开能看到排好版的文档。

    scripts/fetch-x.mjs

    • Executable scriptline 1
      #!/usr/bin/env node
    • Network accessline 7
      // 媒体清单";带视频时由 PLAYBOOK 再调 transcribe-video.mjs 下音轨转写(wan 分工)。 // // 网络层用 curl 子进程而非 Node fetch:curl 天然读 http_proxy/https_proxy 环境变量,
    • Network accessline 8
      // // 网络层用 curl 子进程而非 Node fetch:curl 天然读 http_proxy/https_proxy 环境变量, // Node fetch(undici)不读——FxTwitter 与 X/YouTube 同属需代理平台,国内几乎都挂代理,
    • Network accessline 9
      // 网络层用 curl 子进程而非 Node fetch:curl 天然读 http_proxy/https_proxy 环境变量,
    • Network accessline 10
      // Node fetch(undici)不读——FxTwitter 与 X/YouTube 同属需代理平台,国内几乎都挂代理,
    • Network accessline 42
      const { stdout } = await pexec('curl', [     '-sS', '--max-time', '15', '-A', UA,     `https://api.fxtwitter.com/i/status/${statusId}`,
    • Network accessline 43
      '-sS', '--max-time', '15', '-A', UA,     `https://api.fxtwitter.com/i/status/${statusId}`,   ], { maxBuffer: 8 * 1024 * 1024 });
    • Network accessline 44
      `https://api.fxtwitter.com/i/status/${statusId}`,

    scripts/push-feishu.mjs

    • Executable scriptline 1
      #!/usr/bin/env node
    • Network accessline 19
      // 输出: JSON { ok, mode, docUrl?, cardSent?, error? } // // 区域:FEISHU_BASE 默认 https://open.feishu.cn(飞书·中国);国际版 Lark 填 https://open.larksuite.com。
    • Network accessline 20
      // // 区域:FEISHU_BASE 默认 https://open.feishu.cn(飞书·中国);国际版 Lark 填 https://open.larksuite.com。 // 代理:Node 18+ 的 fetch 不自动读 http_proxy。需要代理时用 NODE_OPTIONS 或在墙内直连(飞书国内直连即可)。
    • Network accessline 21
      // 区域:FEISHU_BASE 默认 https://open.feishu.cn(飞书·中国);国际版 Lark 填 https://open.larksuite.com。
    • Network accessline 45
      const base = () => (process.env.FEISHU_BASE || 'https://open.feishu.cn').replace(/\/$/, '');
    • Access to secretsline 47
      [Credential-related source omitted]
    • Access to secretsline 130
      [Credential-related source omitted]
    • Network accessline 176
      const res = await fetch(url, {
    • Network accessline 191
      const now = Date.now();   if (tokenCache.token && now < tokenCache.exp - 60_000) return tokenCache.token;   const res = await fetch(`${base()}/open-apis/auth/v3/tenant_access_token/internal`, {
    • Network accessline 192
      if (tokenCache.token && now < tokenCache.exp - 60_000) return tokenCache.token;   const res = await fetch(`${base()}/open-apis/auth/v3/tenant_access_token/internal`, {     method: 'POST',
    • Network accessline 193
      [Credential-related source omitted]
    • Access to secretsline 193
      [Credential-related source omitted]
    • Access to secretsline 196
      [Credential-related source omitted]
    • Access to secretsline 199
      [Credential-related source omitted]
    • Access to secretsline 202
      [Credential-related source omitted]
    • Network accessline 208
      const url = new URL(base() + path);   if (query) for (const [k, v] of Object.entries(query)) if (v != null) url.searchParams.set(k, String(v));   const res = await fetch(url, {
    • Network accessline 209
      if (query) for (const [k, v] of Object.entries(query)) if (v != null) url.searchParams.set(k, String(v));   const res = await fetch(url, {     method,
    • Network accessline 210
      const res = await fetch(url, {
    • Network accessline 233
      form.set('extra', JSON.stringify({ obj_type: 'docx', file_extension: 'md' }));   form.set('file', new Blob([bytes]), fileName);   const res = await fetch(`${base()}/open-apis/drive/v1/medias/upload_all`, {
    • Network accessline 234
      [Credential-related source omitted]
    • Network accessline 235
      const res = await fetch(`${base()}/open-apis/drive/v1/medias/upload_all`, {

    scripts/queue-server.mjs

    • Executable scriptline 1
      #!/usr/bin/env node
    • Network accessline 76
      function serve() {   createServer(async (req, res) => {     const url = new URL(req.url, `http://127.0.0.1:${PORT}`);
    • Network accessline 77
      createServer(async (req, res) => {     const url = new URL(req.url, `http://127.0.0.1:${PORT}`);     if (req.method === 'OPTIONS') { res.writeHead(204, CORS); return res.end(); }
    • Network accessline 78
      const url = new URL(req.url, `http://127.0.0.1:${PORT}`);
    • Network accessline 103
      }).listen(PORT, '127.0.0.1', () => {     process.stdout.write(       `待读队列已就绪 → http://127.0.0.1:${PORT}\n` +
    • Network accessline 104
      process.stdout.write(       `待读队列已就绪 → http://127.0.0.1:${PORT}\n` +       `队列文件:${FILE}\n` +
    • Network accessline 105
      `待读队列已就绪 → http://127.0.0.1:${PORT}\n` +

    scripts/transcribe-video.mjs

    • Executable scriptline 1
      #!/usr/bin/env node
    • Access to secretsline 9
      [Credential-related source omitted]
    • Network accessline 12
      // // 代理:yt-dlp 天然读 http_proxy/https_proxy;设了 YOUTUBE_PROXY_URL 而 shell 未配代理时 // 显式加 --proxy(X 与 YouTube 复用同一代理出口)。curl 上传 Groq 也天然走代理环境变量。
    • Network accessline 13
      // 代理:yt-dlp 天然读 http_proxy/https_proxy;设了 YOUTUBE_PROXY_URL 而 shell 未配代理时 // 显式加 --proxy(X 与 YouTube 复用同一代理出口)。curl 上传 Groq 也天然走代理环境变量。 //
    • Network accessline 14
      // 显式加 --proxy(X 与 YouTube 复用同一代理出口)。curl 上传 Groq 也天然走代理环境变量。
    • Dangerous shell operationline 25
      import { mkdir, readdir, readFile, rm } from 'fs/promises';
    • Access to secretsline 193
      [Credential-related source omitted]
    • Network accessline 214
      // Groq 云转写:curl 上传 multipart(天然走代理环境变量),verbose_json 拿分段。
    • Network accessline 222
      const { stdout } = await pexec('curl', [     '-sS', '--max-time', '120',     'https://api.groq.com/openai/v1/audio/transcriptions',
    • Network accessline 223
      [Credential-related source omitted]
    • Network accessline 224
      'https://api.groq.com/openai/v1/audio/transcriptions',
    • Access to secretsline 225
      [Credential-related source omitted]
    • Access to secretsline 259
      [Credential-related source omitted]

    scripts/transcribe.py

    • Executable scriptline 1
      #!/usr/bin/env python3
    • Access to secretsline 5
      [Credential-related source omitted]
    • Access to secretsline 26
      [Credential-related source omitted]

    scripts/vtt-to-text.mjs

    • Executable scriptline 1
      #!/usr/bin/env node

    How the signals fit together

    Facts from a static read of the files at the pinned commit. They describe what the code does, not why.

    Some files could not be read; the facts below still hold.

    Declared and executed: 2 facts
    • Contacts api.fxtwitter.com, which SKILL.md, the README and the plugin manifest do not mentionscripts/fetch-x.mjs:44High confidence
    • Contacts open.feishu.cn, which SKILL.md, the README and the plugin manifest do not mentionscripts/push-feishu.mjs:45High confidence
    Signal confidence: 126 facts

    and 76 more

    Works with

    Agent compatibility, from the files in this repository
    AgentStatusEvidenceInstall to
    Claude CodeCompatibleStandard SKILL.md SKILL.md.claude/skills/<skill-name>/
    CodexCompatibleStandard SKILL.md SKILL.md.agents/skills/<skill-name>/
    CursorCompatibleStandard SKILL.md SKILL.md.cursor/skills/<skill-name>/
    Gemini CLICompatibleStandard SKILL.md SKILL.md.gemini/skills/<skill-name>/
    GitHub CopilotCompatibleStandard SKILL.md SKILL.md.github/skills/<skill-name>/
    OpenCodeCompatibleStandard SKILL.md SKILL.md.opencode/skills/<skill-name>/
    • Native The repository ships a manifest, folder or frontmatter field for this agent.
    • Compatible A standard SKILL.md that this agent can read.
    • Unknown No evidence either way.

    Derived automatically from paths, manifests and frontmatter. Not tested on each agent.