现在各种 skills 满天飞。
对于复杂的 skills ,可以包含 scripts ,一般就是 bash / Python / Node.js 吧。比如说 Python 脚本,如果依赖一些第三方库,那 skill 里面应该怎么处理依赖的安装事项?
1
GreatAuk 9 天前
好像默认在当前项目下或全局下找依赖,如果没有则引导你安装
|
2
fengxsong 9 天前
解决方案就是 sandbox 啊
|
3
yukinotech 1 天前
好问题,当下的实际其实就是一坨。就是 uv 、npm 一把梭
我举个例子,比如你在用 codex ,写好了一个 cli 程序,方便 skills 调用,类似这样的调用方式 ``` ffmpeg xxxxx ``` 那么会发现,怎么让用户装呢? skills 里面命令,普通模式下是在沙箱里面执行的,沙箱默认不让联网,那么 npm install 这样的命令直接执行不了,这是第 1 个坑 如果能联网,执行 npm install 这样的命令,你会发现用户不一定有 nodejs 的环境,这是第 2 个坑 那 cli 产物是分发脚本还是二级制呢?分发总要有个平台吧,brew ,pip ,npm 之类的 所以会发现市面上的 skills ,大致分成 4 类 1. skills 辅助现有的 mcp 工作,所有的命令都是调 mcp 完成。skills 会引导用户装上 mcp 。比如 notion 在 codex 的 skills: ``` 1. Add the Notion MCP: - `codex mcp add notion --url https://mcp.notion.com/mcp` 2. Enable remote MCP client: - Set `[features].rmcp_client = true` in `config.toml` **or** run `codex --enable rmcp_client` ``` mcp 可以轻松集成服务端远程调用,鉴权,非常简单 2. bash 脚本+md 文档 3. 纯文案,md 文档,用来做上下文补充 4. 纯工具类的,没有联服务器的必要,比如说读 pdf ,就是开头说的这种 你会发现,skills 文档里会让 ai 判断环境,macos 就是 brew 安装,linux 就是 apt-get ,有 node 环境就走 npm ,有 uv 就走 uv 。因为当下 agent 是面向开发者的,基本默认了用户有这些环境。至于冲突,想多了,现在就是一把梭,就是这么朴实无华。 |