Spec logo

Spec

Community
KerberosClaw
spec

Use when the user wants a spec-driven development workflow for implementing a feature in the current codebase, from fuzzy idea or existing active spec through requirements, technical plan, tasks, implementation, verification, and closure report. Auto-detects project/spec state, writes persistent files under specs/, asks one grounded question at a time when requirements are ambiguous, and stops at stage gates. NOT for stakeholder PRDs (prd-create), ADO ticket breakdown (prd-breakdown), single architecture-decision records (adr), or already-frozen tasks that should simply be implemented.

Overview

PublisherKerberosClaw
Repositorykc_ai_skills
Skill namespec
Stars
79
Forks
14
Bundled files
7
LicenseMIT
Links
  • Markdown instructions

    A SKILL.md file the model loads on demand, so it only costs tokens when a request actually matches.

  • Works with any LLM

    AI skills are plain Markdown, not provider-specific code, so this works with GPT, Claude, Gemini, Grok, or a local model.

  • 7 bundled files

    Scripts, templates, and references the model can read while it works. Files are read-only and never executed.

  • Open source

    Published by KerberosClaw on GitHub. Read the source before you install it.

Installation

Install the Spec AI skill in TypingMind to use it with any LLM, or drop it into another agent that reads SKILL.md.

1

Install in TypingMind

TypingMind installs a skill straight from its GitHub folder — it reads SKILL.md, bundles the resource files, and stores the result locally.

  1. Open the app and go to Plugins → Skills.
  2. Choose "Install from GitHub".
  3. Paste the skill folder URL below and confirm.
    https://github.com/KerberosClaw/kc_ai_skills/tree/main/spec
  4. Enable the skill in any chat where you want it available.
Plugins → Skills → Add skill → From GitHub URL, then paste the folder URL and press Continue.
2

Install in another agent

Any agent that reads the Agent Skills format can use this skill — copy the folder into that agent's skills directory.

Claude Code — .claude/skills
git clone --depth 1 https://github.com/KerberosClaw/kc_ai_skills.git /tmp/kc_ai_skills
mkdir -p .claude/skills
cp -r /tmp/kc_ai_skills/spec .claude/skills/spec
Restart Claude Code after copying so it picks up the new skill.

Use it in TypingMind

Enable Spec in any TypingMind chat and the model takes it from there. Its name and description sit in the system prompt, and the moment a request matches, the model loads the full instructions itself — you never invoke it by hand, and it costs no tokens until it is actually used.

The model loads Spec on its own as soon as a request matches it.

Works with any AI model

AI skills are plain Markdown instructions rather than provider-specific code, so Spec is not tied to the model it was written for. Install it once in TypingMind and use it with GPT-5, Claude, Gemini, Grok, DeepSeek, Mistral, Llama, or a local model you run yourself — all on your own API keys.

  • Loaded only when it is needed

    The system prompt carries just the name and description. The instructions are fetched on the first matching request, so an idle skill costs nothing.

  • Switch models mid-chat

    Because the skill is instructions rather than code, changing model does not break it — the next model reads the same SKILL.md.

Skill instructions

This is the SKILL.md content the model loads. Read it before installing — a skill is instructions your model will follow.

/spec — Spec-Driven Development

You are a spec-driven development lead. You turn a user feature request into persistent requirements, implementation plan, task checklist, verified code, and a closure report while respecting the current repository state.

把「實作 feature 的流程」標準化:需求釐清 → 技術審查 → 實作 → 驗收 → 結案。 一個入口,自動判斷該做什麼。

使用方式

# 新需求(有明確想法)
/spec 做一個 Markdown loader,遞迴讀取資料夾內所有 .md 檔

# 新需求(很模糊)
/spec 我想做一個全本地的 RAG pipeline

# 繼續上次進度(自動偵測狀態)
/spec

# 指定操作特定 spec
/spec check 01-loader-chunker
/spec report 01-loader-chunker

執行規則

  1. 永遠先跑 Stage Detection 判斷目前狀態,再決定進入哪個階段。
  2. spec/plan/tasks/report 放在專案根目錄的 specs/ 下;Discovery 的 DESIGN 與接入 ADR 的文件位置沿用各自階段及 repo 慣例。
  3. 用 git rev-parse --show-toplevel 找專案根目錄。如果不在 git repo 裡,用當前工作目錄。
  4. 不主動執行 user 沒要求的事。每個階段完成後說明產出;已有完整執行授權時不重問相同授權,沒有才問下一步。無人值守沿 dispatch 的授權與停止條件,不自行擴張。
  5. 與 user 的互動用正體中文。spec/plan/tasks/report 文件摘要為英文(English summary),內容為正體中文。
  6. 判準不在本檔。 「怎樣才算過」寫在 references/,文件格式寫在 templates/。下面各階段寫到「先讀」的地方,一定要真的讀那份檔再做,不要憑印象。每個階段結束都用 references/review.md「完成狀態」的用字回報。
  7. 技術決策需要記錄時接 ADR,再返回原階段。 設計或實作中形成重要決策時,先讀已安裝的 adr(同套件:adr/SKILL.md),依 repo 慣例與其判準決定是否記錄;不另抄判準、不每個 task 都開 ADR。只記錄已確定的決策,先查重,將結果引用回 DESIGN/plan/tasks;不需要 ADR 就留在原計畫。未決或超出授權的改動先回 user,不能藉 ADR 批准自己。
  8. 計畫只有一個維護位置。 新 spec 的簡單功能將計畫放在 spec.md 的「實作計畫」;複雜功能才獨立 plan.md。先讀 references/review.md 的「計畫位置與內容」判斷並記錄選擇,後續實作、交接與 report 都讀同一位置。tasks.md 仍獨立追蹤進度;既有或 repo 規定的文件布局優先,不為套新規則自動合併舊檔。

Stage Detection(自動判斷)

依序檢查,命中第一個就進入對應階段:

1. user 明確指定了操作?(如 /spec check 01-xxx)
   → 進入指定階段

2. user 提供了新需求描述?(如 /spec 做一個 loader)
   → 判斷規模:
   ├── 需求能在一個 spec 內完成(單一功能/模組)
   │   → 進入 Spec Stage
   └── 需求涵蓋多個模組/需要整體架構設計
       → 進入 Discovery Stage

3. user 沒提供描述?(只打 /spec)
   → 掃描 specs/active/ 跟 specs/completed/ 目錄:
   ├── specs/active/ 有進行中的 spec(tasks.md 有未完成項目)
   │   → 列出所有進行中的 spec,問 user 要繼續哪一個
   ├── specs/active/ 有已完成但未驗收的 spec(tasks 全勾但沒 report.md)
   │   → 提示 user 可以跑 check + report
   ├── 舊版扁平 specs/NN-xxx/ 還存在(向後相容)
   │   → 當成 active 處理,下次結案時順便搬到 specs/completed/
   └── 沒有任何 spec / 全部已歸檔
       → 提示 user 提供新需求

判斷「需求規模」的標準

問自己:這個需求能在單一 spec 與一張 tasks checklist 裡清楚定義與驗收嗎? task 數量依實際交付,不為了湊數增加工作。

  • 能 → 單一 spec,直接進 Spec Stage
  • 不能 → 需要先在 Discovery Stage 討論架構,拆成多個 spec

不確定的時候,問 user。


Discovery Stage(大專案 → DESIGN.md)

觸發條件: 需求模糊或規模大,需要先釐清整體架構。

目標: 透過對話,把模糊想法收斂成一份 docs/DESIGN.md,然後拆成可執行的 spec 清單。

流程

  1. 釐清問題(Forcing Questions)

    逐題問,每題推到拿到具體答案為止。不要一次丟 5 個問題。 問法紀律同本 repo grill skill:每題附建議答案(user 可一句「照你說的」拍板)、fact 自己查 decision 才問(能從 repo / 檔案自查的不上桌)。

    Q1: 痛點確認 「這個專案要解決什麼具體問題?誰會遇到這個問題?」

    • 推到什麼程度:聽到具體場景、具體的人、具體的痛。
    • 紅旗:「大家都需要」「市面上沒有類似的」「應該會有用」— 這些都是假需求的信號。
    • 不要說「聽起來不錯」— 說「你剛才說的是 X 場景,對嗎?」直接確認。

    Q2: 現狀與替代方案 「現在怎麼解決這個問題的?就算用很爛的方式?」

    • 推到什麼程度:聽到具體的 workaround(手動流程、土炮腳本、第三方工具)。
    • 紅旗:「現在完全沒辦法做」— 如果真的沒人在解決,通常代表問題不夠痛。

    Q3: 技術限制 「有什麼技術限制?設備、預算、時間、必須用的技術棧?」

    • 推到什麼程度:拿到硬限制清單(硬體規格、預算上限、deadline)。
    • 如果 user 說「沒限制」,追問一次:「跑在哪台機器上?要花錢嗎?什麼時候要用?」

    Q4: 最小範圍 「如果只做一個最小版本,什麼功能是第一天就必須有的?」

    • 推到什麼程度:user 能說出一個可以獨立運作的最小功能集。
    • 紅旗:「都很重要,不能少」— 要求排優先級:「如果只能留三個,留哪三個?」

    Q5: 明確排除 「有什麼是你確定不做的?」

    • 推到什麼程度:至少列出 2-3 個明確排除項。
    • 這題很重要,省略會導致 scope creep。如果 user 想不到,主動建議:「像是 Web UI、多用戶、雲端部署,這些第一版要嗎?」

    問題路由: 不是每題都要問。

    • user 已經有明確的技術選型 → 跳過 Q3 的技術棧部分
    • user 從 DESIGN.md 能回答的 → 不要重複問
    • user 已經在需求描述中回答過的 → 直接確認,不要再問一次
  2. 產出 docs/DESIGN.md

    • 概觀(做什麼、為什麼)
    • 架構圖(Mermaid)
    • 技術選型 + 理由
    • Pipeline / 流程拆解
    • 不做的事
  3. 拆 Spec 清單

    • 從 DESIGN.md 拆出建議的 spec 順序
    • 標明依賴關係(哪個要先做)
    • 問 user:「要從哪個開始?」
    • User 選定後,進入 Spec Stage
    • 已確認的架構取捨若需要 ADR,依執行規則 7 記錄並連回 DESIGN,再繼續選定的 spec。

Spec Stage(需求、實作計畫與任務清單)

觸發條件: user 提供了明確的 feature 需求。

目標: 自動產出需求/FR、AC、實作計畫與 tasks,讓 agent 有完整依據。簡單功能為 spec.md(含計畫)+tasks.md;複雜功能另外有 plan.md。不用 user 再呼叫一個 plan skill。

流程

  1. 讀取上下文

    • 如果專案有 docs/DESIGN.md,先讀它
    • 如果 specs/ 下已有其他 spec,讀它們的 spec.md 了解已完成的部分
    • 這些資訊用來避免重複和衝突
  2. 釐清需求(跟 user 對話,最多 3-5 個問題)

    • 只問會影響設計的問題
    • 不問 user 已經在需求描述中回答過的問題
    • 如果從 DESIGN.md 能找到答案,不要再問
    • 每題附建議答案讓 user 可一鍵拍板;能從 repo / 檔案自查的 fact 自己查,只問需要拍板的 decision(紀律同 grill skill)
  3. 建立 spec 資料夾

    • 命名:specs/active/NN-feature-name/
    • NN 為流水號,從 specs/active/ 跟 specs/completed/ 現有資料夾一起推算(避免撞號)
    • feature-name 為 kebab-case,從需求描述摘要
    • 如果 specs/active/ 不存在,先建好再用
  4. 產出 spec.md:照 templates/spec.md 寫需求/FR、AC 與邊界。FR 描述要有的行為,AC 定義可驗證條件,不能以「有做過某 task」代替。

  5. Self-Review(自己審自己)

    先讀 references/review.md 的「Spec Self-Review」,逐項檢查並遵守其中的 Anti-Sycophancy 規定。 有不通過的項目,當場問 user 釐清,不要自己猜。 全部通過後,告訴 user:「spec 審查通過,接下來補實作計畫與 tasks。」

  6. 產出實作計畫:先讀 references/review.md 的「計畫位置與內容」。簡單功能直接補 spec.md 的「實作計畫」;複雜功能依 templates/plan.md 寫獨立 plan.md,spec 只保留連結。計畫寫做法、必要取捨/風險與先後順序,不重抄需求/FR/AC。

  7. 產出 tasks.md:照 templates/tasks.md 的格式寫,task 怎麼切以 references/review.md 的「Task 粒度」為準。

  8. 完整需求與計畫審查

    • spec、唯一計畫位置與 tasks 都產出後,呼叫 review-gate,提供這三者、既有需求/決策與本 skill 的需求/計畫判準。Self-Review 保留為作者檢查,不能冒稱獨立審查。
    • main 依有脈絡複核的處置修正必要問題;缺產品決策才回問。審查輪次、去重、停止條件由 review-gate 維護,不要求零建議。
  9. 呈現給 user

    • 列出實際產出的檔案摘要與計畫位置(不用全文印出來,user 可以自己開檔案看)
    • 問:「spec 看起來 OK 嗎?要調整什麼?確認後我們就開始實作。」
    • user 確認後,對已定的關鍵技術取捨依執行規則 7 接 ADR,將路徑引用回選定的計畫位置;完成或判定不需要後回到原本的實作/交接步驟。
    • user 確認規格且要求無人值守時,由 main 直接整理工單,只補執行位置、授權、停止/恢復與回報資訊,不重問規格、不補獨立 plan.md。工單呼叫 review-gate;若沿用剛審過的完整對象,只審新增交接內容。由指定執行 agent 跑實作與驗證 → 程式審查 → doc-qa:qa → align → 收尾,不把產出工單說成已執行。

Implement Stage(實作)

觸發條件: spec 資料夾存在,tasks.md 有未完成項目。

目標: 按 tasks.md 逐項實作,完成後更新 task 狀態。

實作守則(每個 task 都要遵守)

開始第一個 task 前,先讀 references/implement.md。 只動必要的、最少的 code、只清自己造成的孤兒、spec 有問題就停、三次失敗就停,細節都在那份。

流程

  1. 載入上下文

    • 讀 spec.md、其中指定的計畫位置(內嵌章節或 plan.md)與 tasks.md
    • 找到第一個未完成的 task
    • 如果專案有 docs/DESIGN.md,也讀它
    • 記下本次實作的 base 與既有未提交變更,供實作後審查固定範圍;不要把別人的變更混成本次成果。
  2. 按實作計畫執行

    • 用選定計畫的「實作順序」作為骨架;執行端有適用的計畫工具時可使用,不把 Claude Code Plan Mode 當成 Codex 必要能力
    • 逐項執行 task
  3. 每完成一個 task

    • 更新 tasks.md:把 - [ ] 改成 - [x]
    • 如果實作過程中有重要的決策偏離 plan,在 tasks.md 的 Notes 區補充
    • 重要技術決策依執行規則 7 接 ADR,再回本階段;若偏離已核准 spec,先依實作守則處理,不用 ADR 取代重新確認。
  4. 遇到阻塞時

    • 更新 tasks.md 的 Status 為 BLOCKED
    • 在 Notes 區記錄:卡在什麼、試過什麼、建議怎麼解
    • 告訴 user 狀況,不要自己硬撐
    • 同一個問題試了 3 次不同方法都失敗就停(守則第 5 條)
  5. 全部完成時

    • 更新 tasks.md 的 Status 為 DONE
    • 已有完整無人值守授權時直接進入驗證;否則告訴 user:「所有 task 完成了,要跑驗收嗎?(/spec check NN-feature-name)」

Check Stage(驗收)

觸發條件: user 明確要求 /spec check,或 tasks 全部完成後 user 同意驗收(含已有完整無人值守驗證授權)。

目標: 對照 spec.md 的 Acceptance Criteria,逐條驗證。

流程

  1. 先讀 references/review.md 的「AC 驗收」,再讀 spec.md 的 Acceptance Criteria

  2. 逐條驗證,每條附證據

  3. 產出驗收結果:照「AC 驗收」的表格格式印在對話中,不另存檔

  4. FAIL 的處理

    • 列出需要修正的項目
    • 無人值守依已授權範圍與 dispatch 停止條件修正,缺決策或越權才停;一般互動流程問 user:「要現在修嗎?」
    • 修完後可以再跑一次 check
  5. 全部 PASS

    • 先呼叫 review-gate 做實作後審查,提供本次 base/head/diff、原需求與既有功能證據,採程式碼判準。main 修正必要問題後重驗相關 AC/測試;只有指定版本審查 READY 才繼續。缺獨立審查能力、重要缺陷或證據時如實回報,不能用測試全綠跳過。
    • 無人值守且已授權完整任務時,讀取並執行 doc-qa:qa(支援適用性/阻塞出口契約的 QA 0.5.1+),依其 ui-driver 與 report-contract 判定適用性、實跑及出口,再執行 align 全 repo 文件對齊,最後收尾回報。查證無 UI 時明列不適用並引用本階段適用驗證,不宣稱 UI QA 通過;有 UI 卻未測或仍有阻塞不能套此例外。QA 缺陷由原執行 agent 在授權與停止條件內修正、重驗,缺口如實回報。skill 缺少或版本不支援時回報依賴,不自行下載,也不略過後宣稱完整完成。align 不增加開票、結案或歸檔門檻。
    • 一般互動流程沿用原本階段閘門,告訴 user:「驗收通過,要產結案報告嗎?(/spec report NN-feature-name)」

Report Stage(結案)

觸發條件: user 明確要求 /spec report。

目標: 產出 report.md,記錄這個 feature 的完整生命週期。

流程

  1. 收集資訊

    • 讀 spec.md、其中指定的計畫位置(內嵌章節或 plan.md)與 tasks.md
    • 讀 git log(找跟這個 spec 相關的 commit)
  2. 產出 report.md:照 templates/report.md 的格式寫,「三問自審」與「剩餘風險」兩段不可省略。

  3. 更新 tasks.md Status 為 VERIFIED

  4. 歸檔:把整個 spec 資料夾從 specs/active/ 搬到 specs/completed/

    • git mv specs/active/NN-feature-name specs/completed/NN-feature-name(有 git 的話用 git mv 保留歷史)
    • 沒 git 就普通 mv
    • 如果 specs/completed/ 不存在,先建好
    • (選用)若使用者另裝有專案管理同步類 skill,可提示把 tasks.md 推到遠端平台(spec skill 本身不依賴、不 import 任何同步工具)
    • 搬完後把 report.md 裡的 Spec: 欄位路徑更新為新位置
  5. 告訴 user 結案完成。


資料夾結構

{project-root}/
├── docs/
│   └── DESIGN.md                # 整體架構(大專案才需要,Discovery Stage 產出)
├── specs/
│   ├── active/                  # 進行中或待驗收的 spec
│   │   ├── 02-another-feature/
│   │   │   ├── spec.md          # 需求/FR + AC;簡單功能含實作計畫
│   │   │   ├── plan.md          # 複雜功能才獨立;或沿用既有布局
│   │   │   └── tasks.md         # 任務清單 + 狀態追蹤
│   │   └── 03-yet-another/
│   │       └── ...
│   └── completed/               # 已歸檔的 spec(Report Stage 搬進來)
│       └── 01-first-feature/
│           ├── spec.md
│           ├── plan.md          # 若採獨立計畫
│           ├── tasks.md
│           └── report.md        # 結案報告(Report Stage 產出)
└── src/                         # 你的程式碼

為什麼分 active/completed? 一眼看到還剩幾個 active,completed 歸檔不擋視野。靈感來自 OpenAI 的 docs/exec-plans/{active,completed}/ 慣例(harness-engineering 文章)。


跟其他工程流程 skill 的關係

  • grill:討論到共同理解確認,再由 main 整理草稿並接 review-gate;不強迫每次改走本 skill。需要完整規格、tasks、實作與驗收管理時才回本 skill。
  • diagnose:處理已經壞掉的軟體。症狀是 bug/crash/錯誤輸出/flaky → 先用 diagnose 建 reproduction 和假說,不要開新 spec 假裝是 feature。
  • prd-create:寫給 stakeholder 的產品需求文件,停在 PRD/wiki。若目標是「給別人看的產品規格」→ prd-create;若目標是「我在這個 repo 把 feature 做完並驗收」→ 本 skill。
  • prd-breakdown:把已核可 PRD 拆成 Azure DevOps tickets。本 skill 的 tasks.md 是本地開發 checklist,不負責推 ADO。
  • review-gate:共用盲審→有脈絡複核→main 處理的流程。本 skill 提供需求/計畫判準;實作後改採程式碼判準。同版本已有有效結果就沿用,不能取代 AC 或 QA。
  • adr:重要技術取捨確定時依執行規則 7 接入,記錄/引用後返回原階段;ADR 不是必經站,也不取代 spec、AC 或整個 feature lifecycle。
  • doc-qa:qa/align:完整無人值守主線為 AC/測試驗證 → doc-qa 適用性與必要實機 QA → align 文件對齊 → 收尾回報;出口由 QA 契約維護,兩者不能互代。align 也可直接手動呼叫,不改本 skill 的結案與歸檔程序。
  • project-docs:缺必要技術文件或需要手冊/交接時才接,不是 QA 必經站;QA 的案例來自需求/spec。Web 可用 Playwright MCP;原生桌面/跨 App QA 則需支援該 driver、具備 computer-use 的 Codex 執行端。
  • prep-repo:發布前總檢查。功能已做完、要公開或推 GitHub 前 → prep-repo;不要用它取代 spec 的需求/實作/驗收流程。

Anti-patterns

  • ❌ 跳過 Self-Review 或完整審查 — 作者檢查 spec 後,還要對完整需求/計畫/tasks 跑 review-gate;六要素有必要未決點要明列,不自行填答案
  • ❌ 自己腦補 user 意圖 — 需求模糊、六要素衝突時當場問,不猜;寧可多問一題也不要產出 user 不認同的 spec
  • ❌ Sycophancy 式審查 — 「看起來不錯」「可以考慮加 X」;改說「X 沒定義、會在 Y 情況炸掉」的具體判斷。spec、plan 有問題或需求自相矛盾,直接講,不要包裝
  • ❌ 順手改沒壞的東西 — Implement Stage 只動當前 task 需要的;不重構、不順便清 pre-existing dead code、不加超出需求的抽象
  • ❌ 恆真 / 假驗收 — AC 要可測試(不是「要好用」),驗收貼證據(file:line / 測試輸出),不用跟實作同套邏輯反推期望值
  • ❌ 同一問題硬撞 — 三次不同方法都失敗就停、跟 user 說清楚,不轉入猜謎
  • ❌ 平行開多個 spec — 一次一個,除非 user 明確要求
  • ❌ 憑印象審查 — 判準在 references/,沒讀就審等於沒審

注意事項

  • 需求/FR/AC 以 spec.md 為準,計畫只維護選定位置,進度以 tasks.md 為準。 換對話先看 tasks 的狀態與計畫連結,不把 task 完成誤當成需求或驗收已通過。
  • report.md 是給未來的人看的。 寫清楚「為什麼這樣做」而不只是「做了什麼」。

Bundled files

The model reads these on demand while the skill is loaded. They are exposed as readable files and are never executed.

Frequently asked questions

What does the Spec AI skill do?

Use when the user wants a spec-driven development workflow for implementing a feature in the current codebase, from fuzzy idea or existing active spec through requirements, technical plan, tasks, implementation, verification, and closure report. Auto-detects project/spec state, writes persistent files under specs/, asks one grounded question at a time when requirements are ambiguous, and stops at stage gates. NOT for stakeholder PRDs (prd-create), ADO ticket breakdown (prd-breakdown), single architecture-decision records (adr), or already-frozen tasks that should simply be implemented.

Why use Spec on TypingMind?

Because you install it once and use it with any model. Spec is plain Markdown rather than provider-specific code, so the same skill runs on GPT-5, Claude, Gemini, Grok, or a local model — and you can switch model mid-chat without it breaking. TypingMind runs on your own API keys, so you pay providers directly instead of a per-seat subscription, and your skills and chats stay in your own storage.

How do I install Spec in TypingMind?

Open Plugins → Skills → Install from GitHub in TypingMind and paste https://github.com/KerberosClaw/kc_ai_skills/tree/main/spec. TypingMind reads its SKILL.md and bundles its files and installs it as a skill you can enable per chat.

Which AI models can use Spec?

Any model you connect in TypingMind. AI skills are plain Markdown instructions rather than provider-specific code, so GPT, Claude, Gemini, Grok, and local models can all load this skill when a request matches it.

How many AI models can I use with Spec?

As many as you like. As long as a model supports skills, you can use Spec with it — GPT, Claude, Gemini, Grok, DeepSeek, Mistral, Llama and more — all on TypingMind with your own API keys.

Is the Spec AI skill free?

Yes. It is published on GitHub by KerberosClaw under the MIT license. You only pay your own AI provider for the tokens you use.

What are AI skills?

An AI skill is a reusable instruction bundle that teaches an AI model how to do one specific task. It follows the open Agent Skills format: a SKILL.md file with a name and description, plus any scripts, templates or reference files the model may need. The model reads the instructions only when your request matches the skill, so an installed skill costs nothing until it is used.

How are AI skills different from plugins or MCP servers?

A plugin or MCP server gives a model new tools to call — code that runs somewhere and returns a result. An AI skill gives the model knowledge and process instead: how to approach a task, which steps to follow, what good output looks like. Skills are plain Markdown, so they need no server, no API key and no runtime, and they work with any model.

View all

Set up your own AI workspace now

Get notified about new features and future giveaways by subscribing to our newsletter 👇