V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
hzj629206
V2EX  ›  AI Agent 智能体

Agent Skills 脚本依赖的最佳实践是什么

  •  
  •   hzj629206 · 9 天前 · 769 次点击

    现在各种 skills 满天飞。

    对于复杂的 skills ,可以包含 scripts ,一般就是 bash / Python / Node.js 吧。比如说 Python 脚本,如果依赖一些第三方库,那 skill 里面应该怎么处理依赖的安装事项?

    1. 默认不处理,由 Agent 自行处理运行时错误然后自动安装。但是这个就有点不可控了,比如说污染全局环境。
    2. docker sandbox ,这个感觉就更重量级了。
    3. 显式说明运行前的准备事项。这个也麻烦,要考虑不同的运行环境怎么处理,而且每次都执行体验也不好。
    4. 把 scripts 目录做成 uv project ,SKILL.md 里面显式说使用 uv 运行。这样全局就只依赖 uv 。
    3 条回复    2026-02-12 17:07:03 +08:00
    GreatAuk
        1
    GreatAuk  
       9 天前
    好像默认在当前项目下或全局下找依赖,如果没有则引导你安装
    fengxsong
        2
    fengxsong  
       9 天前
    解决方案就是 sandbox 啊
    yukinotech
        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 是面向开发者的,基本默认了用户有这些环境。至于冲突,想多了,现在就是一把梭,就是这么朴实无华。
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   2278 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 24ms · UTC 05:37 · PVG 13:37 · LAX 21:37 · JFK 00:37
    ♥ Do have faith in what you're doing.