V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
cairnechen
V2EX  ›  Claude Code

如果我的 Skill 要用到 node.js 安装依赖, package.json 要放到 skill 目录里吗?

  •  
  •   cairnechen · 19 小时 37 分钟前 · 712 次点击
    我看官网指引 Skill 结构是这样的:

    my-skill/
    ├── SKILL.md # Main instructions (required)
    ├── template.md # Template for Claude to fill in
    ├── examples/
    │ └── sample.md # Example output showing expected format
    └── scripts/
    └── validate.sh # Script Claude can execute

    或者这样:

    my-skill/
    ├── SKILL.md (required - overview and navigation)
    ├── reference.md (detailed API docs - loaded when needed)
    ├── examples.md (usage examples - loaded when needed)
    └── scripts/
    └── helper.py (utility script - executed, not loaded)

    一时不知道 package.json 应该放哪里了
    10 条回复    2026-02-08 17:33:31 +08:00
    urlk
        1
    urlk  
       19 小时 28 分钟前
    随便放哪都行, skilll.md 说明放到哪了 ai 自己会找
    donaldturinglee
        2
    donaldturinglee  
       19 小时 24 分钟前
    你在 skill 里面显示声明 package.json 的路径,它自己会去找,你只需要组织好你的项目结构即可
    AoEiuV020JP
        3
    AoEiuV020JP  
       9 小时 16 分钟前
    要么全局依赖,要么项目级依赖, 没有什么情况应该放到 skill 内部的,
    cairnechen
        4
    cairnechen  
    OP
       7 小时 12 分钟前
    @AoEiuV020JP 是的,所以我现在怀疑我对 skill 的认知有问题,比如我现在要弄一个 skill 可以把任意 V2EX 主题的全部帖子内容下载保存到本地,我知道可以依赖 axios 和 cheerio 运行脚本达成这个目的,所以 scripts 部分我可以搞一个 scraper.js ,然后在 SKILL.md 告诉 AI 这个脚本的作用、输入输出啥的,但是运行这个脚本需要 package.json 安装依赖,如果不包含在 skill 里,别人安装我的 skill 难道要自己添加一个 package.json ,还是说让 AI 自己推理(或者在 SKILL.md 说明?)运行这个脚本要安装哪些依赖?
    cairnechen
        5
    cairnechen  
    OP
       7 小时 11 分钟前
    @urlk 我现在纠结的是 skill 目录里面是不是压根就不该出现 package.json 这种东西
    cairnechen
        6
    cairnechen  
    OP
       7 小时 1 分钟前
    @cairnechen 我感觉我在把 skill 当成一个 npm 项目来组织,感觉从源头就弄错了
    AoEiuV020JP
        7
    AoEiuV020JP  
       5 小时 35 分钟前
    @cairnechen #4 你得先搞清楚“人”要怎么做你想做的事,然后才能教 AI ,
    就你这个案例,我有类似的情况, 我的做法是,
    那个工具单独一个项目,首先保证这个工具是“人”可以正确运行实现效果的,
    然后 skill 里加个简单脚本 cd 到工具目录里执行程序,
    最终结果这个 skill 显然是不通用的,别人要安装这个 skill 就得跟着安装工具项目以及指定项目位置,
    但显然抛开 AI ,你找个人来想做一样的事那也得安装这个工具项目, 那就没差,
    AoEiuV020JP
        8
    AoEiuV020JP  
       5 小时 27 分钟前
    @AoEiuV020JP #7 更进一步, 如果只是想通用的话, 再加一个脚本负责安装工具项目到某个位置,skill 里直接教 AI 遇到该工具未安装时要如何如何安装,就可以了,
    总之最终效果,skill 只介绍自己内部这个脚本的用法和效果, 不需要了解这个工具的细节,
    这解决的不只是 package.json ,还包括 npm i, 以及甚至 npm 不存在的情况都可以解决,而不是非要把脚本运行环境打包进 skill,
    当然这只是一种解决方案,也不是真的唯一正确,归根结底 skill 是要把”人的经验“保存起来交给 AI ,终究要先想清楚该怎么教一个陌生人,
    IvanLi127
        9
    IvanLi127  
       5 小时 20 分钟前
    这个就是 skill 内部的帮助脚本的话,丢在对应的 skill 目录下里我觉得没问题。 为了避免装错,肯定要把这个文件放在 skill 目录内。
    gnosis23
        10
    gnosis23  
       2 小时 16 分钟前
    复杂点的直接发到 npm ,然后在 SKILL 里写需要安装某个包
    关于   ·   帮助文档   ·   自助推广系统   ·   博客   ·   API   ·   FAQ   ·   Solana   ·   1926 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 21ms · UTC 11:50 · PVG 19:50 · LAX 03:50 · JFK 06:50
    ♥ Do have faith in what you're doing.