關(guān)與 AI Skills CLI 實(shí)戰(zhàn))
從 GitHub 同步私有技能到 Claude Code 與 CodexJarvis Registry Skill 網(wǎng)關(guān)與 AI Skills CLI 實(shí)戰(zhàn)【免費(fèi)下載鏈接】jarvis-registryConnect any AI copilot or autonomous agent to your enterprise tools — through a single, secure MCP/Agent gateway with built-in identity, access control, and full observability.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ja/jarvis-registryJarvis Registry 的 Skill 網(wǎng)關(guān)Skill Gateway可以把你存放在 GitHub 私有倉(cāng)庫(kù)中的 AI Skills 單向同步到企業(yè)私有注冊(cè)表中再借助 AI Skills CLI 一鍵同步分發(fā)到 Claude Code、Codex 和 GitHub Copilot 環(huán)境。整個(gè)過(guò)程由 ACL 權(quán)限與 OAuth 授權(quán)保護(hù)技能內(nèi)容無(wú)需發(fā)布到任何公開(kāi)市場(chǎng)是團(tuán)隊(duì)統(tǒng)一分發(fā)私有技能的完整方案。為什么需要 Skill 網(wǎng)關(guān)很多團(tuán)隊(duì)會(huì)在 GitHub 上沉淀一批 SKILL.md 技能文件但直接把私有倉(cāng)庫(kù)內(nèi)容復(fù)制進(jìn)各個(gè)開(kāi)發(fā)者的 Claude Code 或 Codex 配置目錄會(huì)帶來(lái)三個(gè)問(wèn)題內(nèi)容分散誰(shuí)拿到的是哪個(gè)版本無(wú)法追溯技能更新靠口頭通知權(quán)限失控私有技能可能被拷貝到不該看到的機(jī)器上憑據(jù)散落每個(gè)腳本都帶著 GitHub 和注冊(cè)表的 tokenSkill 網(wǎng)關(guān)把注冊(cè)表變成技能的唯一事實(shí)來(lái)源托管在注冊(cè)表 UI 或 API 中創(chuàng)建、編輯技能按分類(lèi)、標(biāo)簽組織并跟蹤版本治理技能默認(rèn)私有按 VIEW / EDIT / DELETE / SHARE 四級(jí) ACL 控制每個(gè)用戶(hù)的訪問(wèn)分發(fā)CLI 只同步當(dāng)前用戶(hù)有權(quán)訪問(wèn)的技能權(quán)限變更后自動(dòng)對(duì)賬reconcile功能細(xì)節(jié)可參考 docs/features/skill-gateway.md 與 docs/features/ai-skills-cli.md。三步接入GitHub 同步源創(chuàng)建指南第一步創(chuàng)建 Skill 同步源在注冊(cè)表中新建同步源時(shí)核心配置只有 4 項(xiàng)配置項(xiàng)說(shuō)明owner/repoGitHub 倉(cāng)庫(kù)支持私有倉(cāng)庫(kù)ref分支或標(biāo)簽?zāi)J(rèn)mainpaths要掃描的目錄如[skills/]每個(gè)直接子目錄含SKILL.md即被識(shí)別為一個(gè)技能GitHub App 憑據(jù)githubAppClientId與githubAppClientSecret服務(wù)端 AES-CBC 加密存儲(chǔ)響應(yīng)中永不返回同步是一次只進(jìn)的單向管道解析 ref → 下載不可變的倉(cāng)庫(kù)快照 → 發(fā)現(xiàn)SKILL.md→ 逐技能解析校驗(yàn) → 原子性落庫(kù)。路徑穿越、符號(hào)鏈接、超大文件和解壓炸彈都會(huì)在提取階段被攔截單個(gè)技能出錯(cuò)只記錄錯(cuò)誤項(xiàng)不會(huì)破壞整批同步。完整字段與校驗(yàn)規(guī)則見(jiàn) docs/design/skill-sync-source-api.md。第二步授權(quán) GitHub AppPKCE 安全流程授權(quán)分三步順序不能亂Connect GitHub瀏覽器整頁(yè)跳轉(zhuǎn)到 GitHub 授權(quán)頁(yè)采用 PKCE state 參數(shù)防 CSRF令牌加密存入服務(wù)端Test connection以dryRun: true觸發(fā)只讀校驗(yàn)確認(rèn)倉(cāng)庫(kù)、ref 與 GitHub App 安裝范圍都正確——這一步不產(chǎn)生任何寫(xiě)入Sync now真正的同步任務(wù)落庫(kù)為持久化 Job帶租約lease機(jī)制進(jìn)程崩潰后會(huì)自動(dòng)接管重試一個(gè)常見(jiàn)坑GitHub App 必須安裝在對(duì)應(yīng)組織并勾選目標(biāo)倉(cāng)庫(kù)且 Contents 權(quán)限為只讀。否則授權(quán)能成功但 API 調(diào)用返回 404同步任務(wù)會(huì)報(bào)github_not_found錯(cuò)誤。第三步跟蹤同步任務(wù)每次同步都會(huì)經(jīng)歷queued → downloading → extracting → discovering → applying → completed階段任務(wù)詳情里可以看到discoverySummary發(fā)現(xiàn)了多少技能與applySummary新建 / 更新 / 刪除 / 失敗各多少條。上游被刪除的技能會(huì)在下次同步時(shí)被自動(dòng)清理保持兩端一致。用 AI Skills CLI 同步到 Claude Code 與 Codex技能進(jìn)入注冊(cè)表后開(kāi)發(fā)者在自己機(jī)器上只需固定三條命令jarvis-registry configure jarvis-registry auth login jarvis-registry skills sync --mode claude # 或 codex、copilot憑據(jù)保存在操作系統(tǒng) keyring 中不寫(xiě)進(jìn)任何腳本同步是訪問(wèn)感知且可重復(fù)執(zhí)行的新增的技能會(huì)被投遞、變更的內(nèi)容會(huì)被更新、權(quán)限收回后本地托管技能會(huì)被對(duì)賬清理支持同步到個(gè)人目錄或指定項(xiàng)目目錄CLI 自動(dòng)處理各工具本地的目錄布局isExecutable標(biāo)記的文件同步后會(huì)自動(dòng)chmod xCLI 拉取內(nèi)容使用的是帶skills-readscope 的同步接口docs/design/skills-sync-api.md每個(gè)技能在本地重建為一個(gè)標(biāo)準(zhǔn)目錄skills-root/mongoose-to-beanie/ ├── SKILL.md └── references/ └── guide.mdSKILL.md由 frontmattername、description、allowed-tools 等加上正文重建而成與手工編寫(xiě)的技能文件完全兼容。權(quán)限與安全私有技能治理要點(diǎn)技能級(jí) ACL創(chuàng)建者自動(dòng)獲得 OWNER 權(quán)限其他用戶(hù)只獲得被顯式授予的權(quán)限列表和內(nèi)容接口都會(huì)先按 ACL 過(guò)濾無(wú)權(quán)技能根本不會(huì)出現(xiàn)在結(jié)果里文件限制單文件 5 MiB、單技能 200 個(gè)文件、總載荷 10 MiB保證內(nèi)容與同步行為可預(yù)期令牌隔離GitHub 訪問(wèn)/刷新令牌按用戶(hù) 同步源分別加密存儲(chǔ)更換 App 憑據(jù)會(huì)自動(dòng)刪除舊令牌強(qiáng)制重新授權(quán)雙向保護(hù)注冊(cè)表不向 GitHub 回寫(xiě)任何變更GitHub 憑據(jù)也只保存在服務(wù)端常見(jiàn)問(wèn)題 FAQQ同步是雙向的嗎不是。GitHub 是唯一的技能來(lái)源方向repository → Registry注冊(cè)表不會(huì)向 GitHub 推送變更。Q一個(gè)組織里不同用戶(hù)看到的技能會(huì)不同嗎會(huì)。CLI 同步是訪問(wèn)感知的每個(gè)用戶(hù)只拿到自己有權(quán)查看的技能這正是私有分發(fā)與公開(kāi)市場(chǎng)的關(guān)鍵區(qū)別。Q同步失敗如何定位查看任務(wù)的skillErrors字段含技能路徑、階段與錯(cuò)誤碼例如skill_name_mismatch表示 frontmatter 的name與文件夾名不一致file_too_large表示超過(guò) 5 MiB 限制。QGitHub 倉(cāng)庫(kù)后來(lái)新增了倉(cāng)庫(kù)給 App 授權(quán)需要重新連接嗎不需要后續(xù)添加的倉(cāng)庫(kù)直接生效但若修改了 App 權(quán)限需要組織管理員接受權(quán)限更新。延伸閱讀Skill 網(wǎng)關(guān)功能說(shuō)明docs/features/skill-gateway.mdAI Skills CLI 使用指南docs/features/ai-skills-cli.md同步源 API 設(shè)計(jì)含 PKCE 時(shí)序與狀態(tài)機(jī)docs/design/skill-sync-source-api.md技能同步下發(fā) APIdocs/design/skills-sync-api.md前端 GitHub 授權(quán)面板實(shí)現(xiàn)frontend/src/pages/FederationRegistryOrEdit/GithubAuthorizationPanel.tsx前端技能管理頁(yè)面frontend/src/pages/Skills/index.tsx【免費(fèi)下載鏈接】jarvis-registryConnect any AI copilot or autonomous agent to your enterprise tools — through a single, secure MCP/Agent gateway with built-in identity, access control, and full observability.項(xiàng)目地址: https://gitcode.com/gh_mirrors/ja/jarvis-registry創(chuàng)作聲明:本文部分內(nèi)容由AI輔助生成(AIGC),僅供參考