4.3 SessionPrompt:会话的入口
4.3.1 prompt() 方法的完整执行流程
prompt() 方法的完整执行流程export const prompt = fn(PromptInput, async (input) => {
// 1. 获取会话
const session = await Session.get(input.sessionID)
// 2. 清理未完成的回滚
await SessionRevert.cleanup(session)
// 3. 创建用户消息
const message = await createUserMessage(input)
// 4. 更新会话时间戳
await Session.touch(input.sessionID)
// 5. 处理运行时权限覆盖(向后兼容)
const permissions: PermissionNext.Ruleset = []
for (const [tool, enabled] of Object.entries(input.tools ?? {})) {
permissions.push({
permission: tool,
action: enabled ? "allow" : "deny",
pattern: "*",
})
}
// 6. 如果标记 noReply,直接返回(不触发 AI 响应)
if (input.noReply === true) return message
// 7. 进入 Agentic Loop
return loop({ sessionID: input.sessionID })
})4.3.2 系统指令(Instruction)注入机制
4.3.3 消息预处理与格式化
Last updated
