Remote Agent
Remote Session API
RemoteAgent 下 session 可用的核心方法和能力边界
Remote Session API
通过 RemoteAgent 拿到 session 后,最常用的方法有:
get_info()prompt()subscribe()messages()system()interactions()/respond()status()/set({ security })stop()/compact()fork()
这些 API 尽量和本地 session 的使用面保持一致,方便你在本地和远程模式之间复用同一套心智模型。
获取 session
const session = await agent.sessions.create();如果你要继续一个已有远程会话:
const session = await agent.sessions.get("repo-analysis");这样就可以切换到一个已知远程 session,而不是每次都从头开始。
发起一轮 prompt
const turn = await session.prompt({ query: "继续" });
await turn.finished;订阅后续事件
const unsubscribe = session.subscribe((event) => {
console.log(event);
});
unsubscribe();订阅会收到 message | part | delta | turn | compact | session 六类 Mutation。用户参与请求表现为 pending Interaction Part,关联 Tool 同时进入 waiting-user;通过 session.respond(...) 提交结构化响应。
显式压缩
const compact = await session.compact();
const result = await compact.finished;远程 Session 与本地 Session 使用相同 Handle:compact() 返回表示命令已经入队,finished 在服务端 Compact Command 真正完成后兑现。
历史消息
const messages = await session.messages();System prompts
const system = await session.system();状态与安全策略
const status = await session.status();
await session.set({
security: { approval_mode: "always-allow" },
});远程 Session 只能写入可序列化的安全配置,不能传输本地模型实例。
分叉
const next = await session.fork();