跳到主要内容

对话与会话

Session 是 Anyy 保存持续对话的边界。消息、工具活动、审批、澄清、所选 Role 与模型状态,都会随会话保留,供之后继续使用。

会话属于当前 Profile,不属于 Dashboard 或终端进程。关掉网页、退出 TUI,都不会删除历史。

Session History 和长期记忆是两类存储:会话位于 state.db 及其引用对象;跨会话的用户事实与助手记忆分别位于 memory/USER.mdmemory/MEMORY.md

普通会话与后台会话

类型用途
Conversation由你从 Dashboard、TUI、CLI 或 Channel 发起的日常聊天
Background定时任务、委派工作和常驻检查使用的独立后台会话

Dashboard Chat 用 ChatsBackground 分开显示。寻找 Cron 或委派结果时,两边都要检查。

会话中的自动行为

普通对话有两项由模型辅助完成的生命周期动作。

自动生成标题

新会话最初显示为 New session。第一次用户/助手交流成功后,Anyy 会使用该 Session 已选的 Provider 与 Model,依据第一条用户消息的主要语言生成 3–7 个词的简短标题。

  • 标题请求在前台回答完成后独立运行,超时为 30 秒;
  • 第一轮交流会发给所选 Provider,因此会多一次模型请求,并可能增加 Token 与费用;
  • 如果创建 Session 时已经明确给了标题,自动流程不会覆盖;
  • 生成失败或结果不可用时,前台回答不受影响,标题继续保留 New session

自动压缩上下文

开始新一轮前,Anyy 会按照当前模型配置的 Context Length 估算上下文压力。达到 50% 时可以把较早部分整理成摘要;如果检查时已经达到 85%,则进入优先级更高的 Hygiene 路径。

压缩会保留最近消息,并为之后的模型输入保存一份 Current Context Summary。它不会删除或改写原始 Transcript;Dashboard History、Session Search、Backup 和 Audit Evidence 仍以原记录为准。

摘要通常由当前 Session 选择的 Provider/Model 生成,因此可能多一次请求、Token 和费用。模型摘要失败时,Anyy 可以退回到有边界的静态摘要,原始对话仍然保留。50% 与 85% 是根据模型上下文配置计算的运行保护线,不是“每 N 个 Turn”执行一次的定时任务。

上下文摘要不是长期记忆

压缩解决的是“同一段长对话如何继续”。需要跨 Session 使用的个人事实,应通过记忆保存到 USER.mdMEMORY.md

在 Dashboard 对话

先启动 Dashboard,再进入 Chat

anyy dashboard

点击 New session,输入内容后按 Enter 发送;换行使用 Shift+Enter。点击已有会话即可恢复历史,更早的会话与消息会按需分页加载。

控件作用
Enter发送当前消息
Shift+Enter插入换行
Stop请求中断正在运行的一轮
/浏览当前会话实际可用的命令
附件按钮或拖放区给下一条消息添加文件

Chat 顶部还可以查看或切换当前会话的模型、推理等级和执行模式。相关规则分别见模型与服务商审批和 ChangePlan

Queue 与 Steer

当前已有一轮正在运行时,新输入默认排成下一项。

  • Queue:当前工作结束后,再作为独立一轮执行;
  • Steer:把这条输入用于纠正正在进行的 Execution。

Dashboard 会显示等待中的条目,并允许执行前编辑或取消。只有仍存在活动 Execution 时才能 Steer;TUI 提供对应的选择、编辑、取消和 Steer 操作。

修正方向用 Steer,新增任务用 Queue

“不要读 PDF,改用 CSV”是在纠正当前工作;“完成后再拟一封邮件”应作为下一项。

回答 Clarification

信息不足时,Chat 会显示 Clarification needed 卡片。你可以选择已有选项,也可以在输入框中回答。卡片有效期间,这条输入会回答问题,不会另起一轮普通任务。

已经解决的 Clarification 会保留在会话历史中,让之后的工作知道当时作出了什么选择。

添加附件

Dashboard 一次最多接收 5 个非空文件,每个文件最大 50 MiB。还未随消息发送的暂存文件只属于当前会话,24 小时后过期。

模型或工具需要读取附件时,内容可能被发送到已配置的服务商或 Backend。只有在目的地可信且任务确实需要时,才上传私人文件;凭据不应作为附件发送。

下载、导出和留存规则见文件与交付物

中断与恢复

点击 Stop 会请求中断当前一轮。已经提交的消息与工具事件仍保留;随后可以在同一会话修正任务,或新建会话。

停止 Dashboard 不会删除 Session:

anyy dashboard --stop
anyy dashboard

真正负责连续性的是 Gateway 与 Profile 数据库,不是 Dashboard Web 进程。

TUI 可以通过 /sessions 选择历史,也可以直接恢复已知 ID:

anyy --resume SESSION_ID

找不到时先核对 Profile 或 --home。Anyy 不会跨 Profile 搜索 Session ID。

从终端新建会话

进入 TUI:

anyy

输入 /new 新建;需要指定初始 Role 时:

anyy --role scribe

单轮 CLI 调用:

anyy chat "整理我今天的优先事项"
anyy chat --session SESSION_ID "补充一个新的限制条件"

常用参数:

  • --role ROLE:只用于新建会话;
  • --session ID:继续已有会话;
  • --json:返回 Session、Execution、回答和审批信息;
  • --yes:为本次调用批准受支持的待处理审批。

--role--session 不能同时使用。anyy chat 需要已经运行的常驻 Gateway。

每个会话自己的执行模式

Session 会保存 approvalyolo,恢复会话后仍然沿用。Dashboard Chat 可从顶部控件切换;TUI 使用:

/yolo on
/yolo off

启用前先阅读审批与 ChangePlan

Slash Commands

在 Dashboard Chat 输入 /,应以实时菜单为准。可用命令会随 Anyy 版本、界面、Session、已启用 Skill 和能力变化。

稳定的命令类别和界面差异见 Slash Commands 参考

生命周期

  • 新建会话不会改动旧会话。
  • 中断后,已经提交的消息和工具活动仍然存在。
  • 自动标题与上下文摘要可能产生额外的 Provider Request。
  • 上下文压缩只改变后续模型输入,不改写持久 Transcript。
  • 后台工作保留自己的可查看历史。
  • 正常 Profile Backup 包含 Session 数据。
  • 当前没有面向用户的 Dashboard、TUI 或 CLI 单会话删除操作。

使用建议

  • 一个长期主题使用一个 Session。
  • Role、模型或推理方式发生大变化,且希望上下文干净时新建会话。
  • 独立持续运行的工作放到 Background
  • 审批是检查实际影响的步骤,不要形成无条件点击习惯。
  • 工具与 Provider 延迟不同,看清活动状态后再决定是否中断。
  • 程序调用需要 ID 时使用 --json

常见问题

现象处理方法
最近聊天找不到核对 Profile,并检查 ChatsBackground
无法发送检查主模型与凭据,再运行 anyy status
修正内容变成下一轮在目标 Execution 结束前使用 Steer
附件被拒绝一次不超过 5 个,每个不超过 50 MiB
TUI 无法打开 /sessions等当前一轮结束,或先中断
anyy chat 连接失败先运行 anyy gateway start
恢复后仍使用旧 Role/模型这是会话自身状态;使用新默认值请新建
Dashboard 不再实时更新刷新页面;仍有问题时运行 anyy status 并重启 Dashboard

界面启动方式见 Dashboard,终端交互见终端界面