可能是个常见的问题了,但还是感觉有点疑惑。
我的理解是 agent 是做事的主体,而 skill 则是做事的方法或工作流。
但写 agent 和写 skill 都是写 md 文件,如果不是为了省 token ,直接把工作流或方法写在 agent 里不好吗?还能避免 agent 不主动去加载 skill 的问题出现。
那么把 agent 和 skill 分开的理由是什么?因为我看到有些 agent 项目里经常出现一个 agent 和一个同名的 skill ,让我感觉有点奇怪。另外,如何判断一条规则应该写在 agent 里还是 skill 里?
补充一下,我这里的 agent 不是指 agents.md ,指的是类似 opencode 里那种 primary agent 和 subagent (虽然其实也差不多)