插件开发概览(高级)
这一章不是常规上手内容,而是给已经明确需要深度扩展 Agently 行为的开发者准备的。
适合什么时候读
- 你要接新的模型协议或私有推理服务
- 你要替换 PromptGenerator、ModelRequester、ResponseParser、ToolManager 或 Session 行为
- 你已经确认普通使用层和扩展层不够用了
你会学到什么
- 插件和扩展分别应该解决什么问题
- Agently 的插件调用链长什么样
- 最小插件如何注册和激活
先分清:插件 vs 扩展
- 插件(Plugin):系统级能力替换或增强
- 扩展(Extension):面向 Agent 的胶水层
如果你要改的是模型调用协议、返回解析方式、Prompt 结构、工具系统或会话系统,就应该先从插件思路入手。
调用链说明
这张图放在正文里,是为了说明插件真正介入的位置,而不是把插件开发讲成“另一个普通用法专区”。
插件注册与激活
python
plugin_manager.register("PromptGenerator", MyPromptGenerator)
settings.set("plugins.PromptGenerator.activate", "MyPromptGenerator")最小插件示例
python
from agently.types.plugins import ResponseParser
class MinimalParser(ResponseParser):
name = "MinimalParser"
DEFAULT_SETTINGS = {}注册并启用:
python
from agently.base import plugin_manager, settings
plugin_manager.register("ResponseParser", MinimalParser)
settings.set("plugins.ResponseParser.activate", "MinimalParser")常见误区
- 明明只是要接一个外部工具或服务,却直接写插件。
- 还没理清请求层和工作流层边界,就过早做底层替换。
- 把插件开发当成“高级用法合集”,没有先定位具体 owner surface。
下一步去哪
Related Skills(可选)
agently-playbook