sleuth-io/sx

GitHub: sleuth-io/sx

sx 是一个 AI 编码助手的包管理器,解决团队间 AI 资产共享和管理的难题。

Stars: 198 | Forks: 10

sx
### `sx` 是您团队用于 AI 资产(技能、MCP 配置、命令等)的私有 npm。 ### 捕获您最优秀的 AI 用户所学到的知识,并自动将其传播给每个人。
[![Stars](https://img.shields.io/github/stars/sleuth-io/sx?style=flat&color=F59E0B)](https://github.com/sleuth-io/sx/stargazers) [![Star History](https://img.shields.io/badge/Star_History-chart-8B5CF6)](https://star-history.com/#sleuth-io/sx&Date) [![Downloads](https://img.shields.io/github/downloads/sleuth-io/sx/total?color=3B82F6)](https://github.com/sleuth-io/sx/releases) [![PRs Welcome](https://img.shields.io/badge/PRs-welcome-10B981.svg)](https://github.com/sleuth-io/sx/pulls) ⭐ [为此仓库点星](https://github.com/sleuth-io/sx) · 🌐 [网站](https://skills.new) · 📋 [更新日志](https://github.com/sleuth-io/sx/releases) · 📄 [许可证](LICENSE)
![Demo](https://static.pigsec.cn/wp-content/uploads/repos/2026/05/6f6a59342b180302.gif) ## 为什么选择 sx? 您最优秀的开发者已经摸索出了如何让 AI 助手变得极其高效——自定义技能、MCP 配置、斜杠命令、经过验证的模式。但这些知识只停留在他们自己的机器上。 **现有的变通方法无法扩展:** - **复制到每个仓库** —— 噩梦般的重复,没有集中更新,版本漂移 - **全局配置** —— 为不需要这些技能的项目/任务膨胀上下文 - **客户端插件** —— 需要手动安装每一个,锁定在单个 AI 客户端上,无法打包 **sx 通过以下方式解决此问题:** - **分享专业知识** —— 将个人的发现转化为团队资产 - **即时上手** —— 新开发者从第一天起就能继承团队的 AI 操作手册 - **集中更新** —— 在您的仓库中更改一次,所有人都会获得更新 - **作用域安装** —— 为每个组织、团队、机器人、仓库或个人提供正确的资产,不膨胀上下文 - **兼容任何 AI 客户端** —— Claude Code、Cursor、GitHub Copilot、Gemini、Kiro、OpenCode 等,以及通过云中继支持 claude.ai 和 chatgpt.com ## 快速入门 **通过 Homebrew 安装 (macOS/Linux):** ``` brew tap sleuth-io/tap brew install sx ``` **或通过 shell 脚本安装:** ``` curl -fsSL https://raw.githubusercontent.com/sleuth-io/sx/main/install.sh | bash ``` 然后 ``` # 初始化 sx init # 从您的 vault 添加资产 sx add /path/to/my-skill # 安装资产到您的当前项目 sx install ``` **有多个仓库?** 使用配置文件在它们之间切换: ``` sx profile add work # Add a new profile sx profile use work # Switch to it sx profile list # See all profiles ``` **安装目标** —— 选择谁可以看到哪些资产: ``` sx install my-skill --org # everyone in the vault sx install my-skill --repo github.com/acme/infra # only inside that repo sx install my-skill --path github.com/acme/infra#docs/ # one path in a repo sx install my-skill --team platform # every member of a team sx install my-skill --user alice@acme.com # a single user (must be the caller) sx install my-skill --bot python-backend # a bot identity (CI runner, agent) ``` | 作用域 | 谁会得到它 | |-------|-------------| | `--org` | 所有人 —— 如果没有设置标志,这是默认值 | | `--repo` / `--path` | 在指定仓库或子路径内工作的调用者 | | `--team` | 团队成员;需要管理员批准 | | `--user` | 单个人类用户,必须与调用者的 git 身份匹配 | | `--bot` | 一个机器人身份,在设置了 `SX_BOT=` 时解析 | 完整概述请参见 [docs/scoping.md](docs/scoping.md),以及每个安装目标的作用域文档链接。 **预览** —— 查看 `sx install` 会为您解析什么,相当于 `pip freeze`,无需下载或写入任何内容: ``` sx install --dry-run ``` **从 claude.ai 或 chatgpt.com 使用您的仓库** —— 通过 skills.new 中继将其公开为一个 MCP 端点: ``` sx cloud connect # opens skills.new, paste back the attach line sx cloud serve # keep this running — Ctrl+C exits sx cloud status # prints the MCP URL to paste into claude.ai / chatgpt.com ``` 中继通过您机器打开的 WebSocket 转发请求——仓库内容保持在本地。详见 [docs/cloud-relay.md](docs/cloud-relay.md)。 **使用分析和审计**: ``` sx stats # adoption dashboard sx stats --since 7d --json # machine-readable sx audit # recent team/install mutations sx audit --actor alice@acme.com --since 30d --event install.set ``` ### 已经在使用 Claude Code? 如果您已经在 `.claude` 目录中构建了技能、插件或 MCP 配置,`sx` 可以帮助您进行版本控制、跨机器同步以及与队友共享。 ``` # 添加您现有的技能/命令(sx 自动检测类型) sx add ~/.claude/commands/my-command sx add ~/.claude/skills/my-skill sx add code-review@claude-plugins-official ``` 您的提示文件将保持原样 - `sx` 只是用元数据包装它们以便进行版本控制。 ## 您可以构建和分享什么? - **技能** —— 用于特定任务的自定义提示和行为 - **规则** —— 适用于特定文件类型或路径的编码标准和指南 - **代理** —— 具有特定目标的自主 AI 代理 - **命令** —— 用于快速操作的斜杠命令 - **钩子** —— 生命周期事件的自动化触发器 - **MCP 服务器**(实验性)—— 用于外部集成的 Model Context Protocol (MCP) 服务器 - **插件** —— 包含命令、技能等的 Claude Code 插件包 ## skills.sh 支持 sx 集成了 [skills.sh](https://skills.sh),这是一个拥有 85,000+ 个代理技能的社区目录。 ``` sx add anthropics/skills/frontend-design # Add a specific skill sx add vercel-labs/agent-skills # Browse skills in a repo sx add --browse # Search and browse the full directory ``` ## 分发模型 为您的团队选择合适的分发模型: ### 本地(个人) 非常适合在多个个人项目中轻松共享个人工具 ``` sx init --type path --path my/vault/path ``` ### Git 仓库(小型团队) 通过共享 git 仓库共享资产 ``` sx init --type git --repo git@github.com:yourteam/skills.git ``` ### Skills.new(大型团队和企业) 集中化管理,带有用于发现、创建、共享和使用分析的用户界面 ``` sx init --type sleuth ``` ## 工作原理 sx 遵循 npm、cargo 和 uv 使用的清单和锁文件模式: 1. **清单(`sx.toml`)** —— 仓库的真实来源。列出每个托管资产、其安装作用域(`org`、`repo`、`path`、`team`、`bot`、`user`)和团队定义(成员、管理员、仓库)。提交到 git / 路径仓库。详见 [docs/manifest-spec.md](docs/manifest-spec.md)。 2. **锁文件** —— 每个用户解析的产物。`sx install` 读取清单,根据调用者的 git 身份解析团队和用户作用域,并将结果写入用户的缓存目录(`~//sx/lockfiles/`)。当解析的锁文件发生变化时,之前的文件会被加上时间戳进行轮换,以使旧安装保持可重现性。 3. **审计 + 使用情况流** —— 每次团队/安装变更都会在 `.sx/audit/YYYY-MM.jsonl` 中追加一个审计条目;使用事件追加到 `.sx/usage/YYYY-MM.jsonl`。使用 `sx audit` / `sx stats` 查询它们。 高级概览:**创建**带有元数据的资产,**共享**到您的仓库,**安装**[全局、按仓库、按路径、按团队、按机器人或按用户](docs/scoping.md),**自动安装**在新的 Claude Code 会话中,**保持同步** —— 每个人都会自动获得相同的工具。 ## 支持的客户端 | 客户端 | 状态 | 备注 | |-------------------------|--------------|----------------------------------------------------------| | Claude Code | ✅ 支持 | 完全支持所有资产类型 | | Cline | ✅ 支持 | 技能、规则、工作流作为命令、MCP 服务器、钩子 | | Codex | ✅ 支持 | 技能、命令、MCP 服务器 | | Cursor | ✅ 支持 | 技能、规则、命令、MCP 服务器、钩子 | | GitHub Copilot | ✅ 支持 | 技能、规则、命令、代理、MCP 服务器、本地钩子 | | Gemini (CLI/VS Code) | ✅ 支持 | 技能、规则、命令、MCP 服务器、钩子 | | Gemini (JetBrains) | ✅ 支持 | 仅规则、MCP 服务器(无命令/钩子) | | Gemini (Android Studio) | ✅ 支持 | 仅规则、MCP-remote(HTTP,无 stdio) | | Kiro | ✅ 支持 | 技能、规则、命令、MCP 服务器 | | Openclaw | ✅ 支持 | 技能、规则、命令 | | OpenCode | ✅ 支持 | 技能、命令、代理、规则、MCP 服务器 | | claude.ai (网页版) | ✅ 支持 | 通过 [skills.new 云中继](docs/cloud-relay.md) | | chatgpt.com (网页版) | ✅ 支持 | 通过 [skills.new 云中继](docs/cloud-relay.md) | ## 路线图 - ✅ 本地、Git 和 Skills.new 仓库 - ✅ Claude Code 支持 - ✅ Cline 支持 - ✅ Cursor 支持 - ✅ GitHub Copilot 支持 - ✅ Gemini 支持 - ✅ Codex 支持 - ✅ Kiro 支持 - ✅ Openclaw 支持 - ✅ OpenCode 支持 - ✅ 通过 skills.new 云中继支持 claude.ai 和 chatgpt.com - ✅ 所有仓库类型的组织、团队、机器人、仓库和个人安装目标 - ✅ 技能发现 - 使用 Skills.new 从您的代码和架构中发现相关技能 - ✅ 分析 - 跟踪技能使用情况和影响 - **RBAC 和变更请求流程** - 支持门控的技能更新流程 ## 许可证 详见 LICENSE 文件。 ## 开发
点击展开开发说明 ### 文档 - [仓库规范](docs/vault-spec.md) - 仓库目录结构 - [清单规范](docs/manifest-spec.md) - sx.toml 真实来源格式(资产、作用域、团队) - [锁文件规范](docs/lock-spec.md) - 每个用户解析的锁文件 - [作用域](docs/scoping.md) - 安装目标和每个作用域文档的链接(组织、仓库、团队、用户、机器人) - [审计日志](docs/audit.md) - 事件目录、`sx audit` 过滤器、存储格式 - [使用分析](docs/stats.md) - `sx stats` 仪表板、JSON 输出、事件格式 - [元数据规范](docs/metadata-spec.md) - 资产元数据格式 - [MCP 规范](docs/mcp-spec.md) - MCP 服务器和查询工具 - [配置文件](docs/profiles.md) - 多个配置文件 - [客户端](docs/clients.md) - 客户端支持模型和 IDE 与 CLI 的限制 - [云中继](docs/cloud-relay.md) - 通过 skills.new 将您的仓库暴露给 claude.ai 和 chatgpt.com ### 前置条件 需要 Go 1.25 或更高版本。使用 [gvm](https://github.com/moovweb/gvm) 安装: ``` # 安装 gvm bash < <(curl -s -S -L https://raw.githubusercontent.com/moovweb/gvm/master/binscripts/gvm-installer) # 安装 Go(如需,使用 go1.4 作为引导) gvm install go1.4 -B gvm use go1.4 export GOROOT_BOOTSTRAP=$GOROOT gvm install go1.25 gvm use go1.25 --default ``` ### 从源码构建 ``` make init # First time setup (install tools, download deps) make build # Build binary make install # Install to GOPATH/bin ``` ### 测试 ``` make test # Run tests with race detection make format # Format code with gofmt make lint # Run golangci-lint make prepush # Run before pushing (format, lint, test, build) ``` ### 发布 添加标签并推送以通过 GoReleaser 触发自动发布: ``` git tag v0.1.0 git push origin v0.1.0 ```
标签:AI编码助手, AI资产, EVTX分析, MCP配置, SOC Prime, 包管理器, 占用监测, 命令管理, 团队协作, 多客户端支持, 安全可观测性, 开发工具, 技能管理, 效率提升, 日志审计, 版本控制, 知识共享, 私有npm, 统一API, 网络空间测绘, 自动化传播, 资产管理, 配置分发