关于 skill-manager
skill-manager 是一项 Agent 技能,用于在 Agent 目录、项目和远程服务器中安装、更新、移除、创建及审查技能,并指导 Agent 使用管理脚本完成操作和检查。
主要功能
- 01从技能包、GitHub 或本地目录安装
- 02列出、更新和移除已安装技能
- 03选择共享、项目或 brain 位置
- 04创建并改进技能说明
- 05审查技能并检查功能重叠
适用场景
- 01安装 GitHub 文件夹中的技能
- 02将技能移入项目目录
- 03更新或移除已安装技能
- 04创建并测试工作流技能
安装
复制下面的命令,在终端中运行。
npx skills add https:/ / github.com/ melvynx/ ai-maxxing-skills --skill skill-manager安装后在 Claude Code 中输入/skill-manager确认已加载。
附带文件scripts/skills.sh
详细介绍
技能是一个包含 SKILL.md 的文件夹,用来教会 Agent 一种工作流,之后 Agent 会自行应用。用用户的语言与他们交流,简短明了,不用行话(说“每个文件夹”或“只在你的大脑目录中”,绝不要说“符号链接”“frontmatter”或“仓库”)。
技能的存放位置始终只有一个源,其他位置通过链接指向它,绝不保留两份副本:
- 每个文件夹(默认):
~/.agents/skills/<name>/(Codex 会从那里读取),并链接到~/.claude/skills/,供 Claude Code 使用。 - 仅限大脑目录或某个项目:
<folder>/.agents/skills/<name>/,Claude Code 通过<folder>/.claude/skills读取,并通过一个链接指向该文件夹。大脑工作流(done、create-project、cleanup、projects)存放在此处;大脑路径位于~/.agents/AGENTS.md或~/.claude/CLAUDE.md的## Brain部分。
scripts/skills.sh 负责所有安装、更新和移除;绝不要手动复制或删除技能文件夹。如果你是通过链接获得此技能的,请先下载:curl -fsSL https://raw.githubusercontent.com/Melvynx/ai-maxxing-skills/main/skills/skill-manager/scripts/skills.sh -o <scratch>/skills.sh。在任何命令中添加 --to <folder>,即可将操作范围设为大脑目录或某个项目,而不是每个文件夹。在 Windows 上,请从 Git Bash 运行。
安装时:来源可以是 ai-maxxing 工具包中的技能名称(create-landing lumail)、GitHub 仓库(owner/repo)、指向技能文件夹或其 SKILL.md 的 GitHub 链接,或本地文件夹。
- 当用户询问可以安装什么时,运行
bash skills.sh available(或available <repo>),并用一个简短列表展示每项技能及其可实现的请求。 - 选择安装位置:默认是每个文件夹,除非该技能只适用于大脑目录或某个项目。运行
bash skills.sh install <source> [<skill>...]。如果仓库中有多个技能,但未指定名称,则以状态码 2 退出并列出技能:询问用户要安装哪些(或all)。状态码 3 表示该名称的技能已存在,且不是通过此方式安装的:比较两者的描述;如果是同一个技能,用--force替换;否则先询问,因为它可能是用户自己的技能。状态码 4:通过available或链接检查名称。 - 检查
~/.claude/skills/<name>/SKILL.md(或<folder>/.claude/skills/<name>/SKILL.md)能否打开,并告知用户该技能从下次会话起即可使用,同时附上启动它的句子。
查看已安装的技能:运行 bash skills.sh list(own 表示用户自己创建或通过其他方式安装的技能,claude-only 表示 Codex 无法看到的技能;可提议将其移至 ~/.agents/skills)。更新:bash skills.sh update [<skill>...] 会重新获取它安装的所有技能。移除:先用一行确认技能名称,然后运行 bash skills.sh remove <skill>...;技能会被移至 ~/.cache/removed-skills,如有误操作,只需将文件夹移回即可。
对于用户的服务端 Agent(ssh -o BatchMode=yes hermes true < /dev/null 可正常运行),每条远程命令都使用 ssh hermes '<command>' < /dev/null 运行。工具包中的技能通过服务端自己的管理器处理:hermes-setup catalog、hermes-setup add <skill>...、hermes-setup update、hermes-setup remove <skill>...(install-skills 技能会引导用户完成这些操作)。对于其他技能,无论是用户自己的还是来自其他链接的:ssh hermes 'bash -s -- install <source>' < skills.sh(也可用 remove、list)。Hermes 会从下一次对话起看到该技能。
创建一个技能:
- 在一条消息中询问它应该做什么,以及用户会输入哪 2 或 3 句话来启动它。如果刚刚的对话中已经完成了该工作流,就根据你刚才做的事提议创建技能,并请用户确认。
- 使用小写字母和连字符命名;如果技能会执行操作,就以动词开头(
write-newsletter、check-invoices)。如果已有技能能做这件事,就改进那个技能。 - 编写前置元数据:
name,以及一段 50 到 300 个字符的description,先说明技能的作用,再写Use when和用户会说的话。Agent 在加载技能前只能看到这段描述,因此会根据它决定何时运行技能。如果技能需要输入,就添加argument-hint;如果必须仅在用户输入技能名称时运行(发送、发布、付款),就添加disable-model-invocation: true。 - 使用简洁的祈使句编写正文(不加标题、不加粗,仅在有序步骤中使用编号列表),并按读取、执行、报告、停止的顺序组织:先读取什么、执行哪些步骤,以及最后向用户展示什么。说明目标和应采用的判断标准,而不是僵化规则;每一行都必须改变 Agent 的行为。始终以相同方式运行的命令放在
scripts/中,较长的细节(API 文档、模板、示例)放在references/中,并在正文中说明何时打开各文件夹。直接在指定位置创建文件夹(见上文);对于每个文件夹,除非~/.claude/skills已经链接到~/.agents/skills,否则都使用ln -sfn ~/.agents/skills/<name> ~/.claude/skills/<name>创建链接。 - 现在用真实案例测试,或者请用户在新会话中输入一句触发语。修复技能中出错的部分,而不只是修正结果。
改进现有技能:阅读技能,找出导致错误行为的那一行(或缺失的那一行),只修改最少的行来修复问题,然后重新运行。
审计技能:从 bash skills.sh list 开始,并对每个脑区执行相同操作,使用 --to <brain>。检查技能中的每一行,判断删除它是否会改变行为,并删除无效、重复和过时的规则。指出功能重叠或用户从未使用过的技能;只有在用户同意后才能移除技能。
完成时,说明发生的更改(每个技能占一行,使用对勾或叉号),列出每个技能的位置、启动它的句子,以及如何分享用户创建的技能:将它放入公开的 GitHub 仓库,然后任何人都可以通过这个技能和链接安装,或者使用 npx skills add <owner>/<repo> 安装。