Communitygithub.com

docmd — 代理技能 (開發者)

一個模組化的技能組,讓 AI 代理能夠理解並處理 docmd 文件專案。

docmd — 代理技能 (開發者) 是什麼?

此技能專為開發者設計,用於修改 docmd 框架本身,而非消耗該框架的網站。它由 `npx docmd-skills dev <dir>` 載入,並在現有的 `docmd-skills/` 安裝旁新增 `docmd-dev/`。 技能會在使用者工作目錄為 docmd monorepo 的克隆、明確表示要編寫插件或模板,或正在編輯 monorepo 核心源碼時觸發。若無本地克隆,它會先要求使用者將其克隆或更新。此技能支援模擬開發者工作流程,如寫入插件、模板及進行引擎工作,並透過參考文件(如 `references/plugin-development.md` 和 `references/api-dev.md`)提供指引。載入規則謹慎,預設情況下優先使用「docmd-skills」。

相容平台~Claude Code~Codex CLI~Cursor
npx skills add docmd-io/docmd-skills

在你喜歡的 AI 中提問

開啟一個已預先載入此 Agent Skill 的新對話。

說明文件

docmd — 代理技能 (開發者) 是做什麼的?

當使用者想要修改 docmd 框架本身,而非使用該框架的網站時,請使用此技能。此技能由 npx docmd-skills dev <dir> 載入,並在現有的 docmd-skills/ 安裝旁新增 docmd-dev/。

何時使用此技能

當任何一項跡象為真時使用:

  1. 使用者的當前工作目錄是 docmd monorepo 的克隆。本地克隆目錄名為 docmd/(GitHub 路徑為 docmd-io/docmd/)。明顯標記:pnpm-lock.yaml、packages/core/src/、packages/ui/src/、packages/api/src/、packages/plugins/<name>/、packages/engines/。要克隆它:git clone https://github.com/docmd-io/docmd.git docmd && cd docmd。
  2. 使用者明確表示他們想要「編寫插件」、「編寫模板」、「擴展引擎」、「修改核心」、「添加鉤子」或類似內容。
  3. 使用者在編輯 docmd monorepo 內 packages/core/src/、packages/api/src/、packages/ui/src/、packages/plugins/*/src/ 或 packages/engines/*/ 中的檔案。

如果使用者需要框架協助,但工作目錄中沒有 docmd/ 克隆,在採取任何行動前先詢問:他們是否希望您克隆 monorepo(git clone https://github.com/docmd-io/docmd.git docmd)或更新現有的克隆(git -C docmd pull)?在沒有最新的本地克隆之前,不要開始編輯框架源碼。

不要將其用於:站點層級的配置或操作(請使用 docmd-skills),或用於頁面散文品質(請使用 docmd-writer)。

載入規則

  • 僅在使用者正在 docmd monorepo 內積極工作或明確詢問框架內部時載入此技能。
  • 如有疑問,預設使用 docmd-skills(使用者)。切換到此技能意味著使用者願意針對 monorepo 執行 pnpm 指令。

參考索引

每一行都是一個參考檔案。CLI 欄位顯示哪個安裝子指令會新增此檔案。

參考檔案CLI 安裝子指令用途
references/api-dev.mddocmd-skills dev框架作者的公開 Node API:EngineLoader、URL 工具、createActionDispatcher、TemplateSlot、鉤子/動作合約
references/plugin-development.mddocmd-skills dev編寫 docmd 插件:封裝形狀、清單、apply() 生命週期、template 能力、鉤子、測試
references/template-development.mddocmd-skills dev編寫 docmd 主題/模板:12 個模板插槽、資產管線、manifest.json、模板插件
references/engines.mddocmd-skills devJS 與 Rust 建置引擎、切換引擎、引擎特定配置、效能權衡

工作流程

1. 克隆或更新 monorepo

尚未克隆 — 克隆並安裝:

git clone https://github.com/docmd-io/docmd.git docmd
cd docmd
pnpm install

現有克隆 — 更新並重新安裝依賴項(如有需要):

git -C docmd pull
pnpm install

要在決定前檢查克隆是否落後,請執行 git -C docmd status(尋找「Your branch is behind」)或 git -C docmd log -1 --oneline,並與 https://github.com/docmd-io/docmd/commits/main 比較。

本地克隆目錄為 docmd/(而非 docmd-io/docmd/)。在內部,您會找到此技能中反覆參照的規範套件佈局。

2. 編寫插件

  1. 在建立支架之前,從頭到尾閱讀 references/plugin-development.md。
  2. 選擇 packages/plugins/<name>/ 下最接近的現有插件並複製其形狀。
  3. 交叉檢查 references/api-dev.md 以取得 Plugin 類型、鉤子名稱以及在 0.8.7 中引入的 template 能力。
  4. 在插件自己的 tests/ 下新增測試;monorepo 的 pnpm prep 會執行通用安全機制。

3. 編寫模板

  1. 閱讀 references/template-development.md 以了解 12 個模板插槽和資產管線。
  2. 比照現有模板(packages/templates/summer/ 為參考)所使用的清單形狀。
  3. 根據 references/api-dev.md 驗證 TemplateSlot 聯合類型(沒有 header 插槽 — 共有 12 個)。

4. 引擎工作

  1. 首先閱讀 references/engines.md — 確認您要定位的引擎及其配置金鑰。
  2. 對於引擎載入器的 Node 層級變更,請參考 references/api-dev.md §「Engine Loader API」。

跨技能導航

  • docmd-skills — 用於站點層級工作;預設先載入它。
  • docmd-writer — 當任務偏離到模板演示或範例文件中的散文品質時載入它。

相關技能