API Reference
Agent 类
本地 Agent SDK 的核心公开接口
Agent 类
本地 Agent 的核心公开使用面包括:
new Agent(options)agent.start(options?)agent.stop()agent.createSession(input?)agent.getSession(sessionId)agent.listSessions(input?)agent.setInstruction(input)agent.getConfig()agent.getLogger()agent.plugins
agent.createSession() 和 agent.getSession() 返回 AgentSession。
agent.getConfig() 和 agent.getLogger() 是更窄的高级集成辅助入口。宿主如果需要更底层的装配能力,还可以使用 agent.getRuntime()、agent.getContext() 与 agent.getSessionCollection()。
构造参数
idpathmodelenvtoolsinstructionpluginsSession
当前没有 mode 这个构造参数。
核心语义
Agent本身是本地执行壳- 真正的执行对象是它创建出来的 session
从 API 设计上看,它更像一个“session 工厂 + 长期运行能力入口”。
start() 和 stop()
agent.start() 负责启动当前 agent 的长期运行能力。
当前真实语义包括:
- 启动 plugin lifecycle
- 可选启动本机 RPC 服务
推荐写法:
await agent.start({
rpc: {
host: "127.0.0.1",
port: 15314,
},
});如果你不调用 agent.start():
- 仍然可以直接
await agent.createSession()然后session.prompt() - 但不会启动后台 plugin lifecycle
- 也不会启动 RPC
agent.stop() 则负责关闭当前 agent 已启动的长期运行能力。
HTTP 和 Agent 的关系
如果你需要 HTTP 服务端点,不是通过:
agent.start({ http: { ... } })而是通过 Town 发布 Agent HTTP 网关:
town agent startagent.plugins
agent.plugins 是本地 SDK 里很重要的公开面。
你可以直接用它做:
agent.plugins.list()agent.plugins.availability(pluginName)agent.plugins.runAction({ plugin, action, payload })agent.plugins.pipeline(pointName, value)agent.plugins.guard(pointName, value)agent.plugins.effect(pointName, value)agent.plugins.resolve(pointName, value)