mirror of
https://github.com/Darkatse/TauriTavern.git
synced 2026-11-13 17:43:23 +00:00
Presets produced only role/content messages, so tool turns had to be faked as text and tool definitions injected by scripts. A Prompt Manager entry now carries a fields object that joins the object it produces: a tool call is an assistant entry with fields.tool_calls, a tool response is a tool entry, and a tool_definition entry declares a tool whose content is its description. preparePrompt expands macros in fields with the content's variables; an entry the request cannot express stops assembly and names the entry. The editor comes later. Messages carry fields through one serialization. In-chat entries with fields are neither merged nor prepared again, and fit the budget as one unit, so truncation never leaves a lone call or response. One function builds a request's tool data, replacing same-named executable tools in place, and the data travels with the prompt in generate_data, so Legacy sending, the live Agent handoff and SDK dry runs all carry the preset's definitions.
2.2 KiB
2.2 KiB
模块文档
这里记录各模块的工作方式与源码入口。Agent 的整体说明集中在 Agent,后端分层见 后端结构。
| 模块 | 文档内容 |
|---|---|
| 第三方扩展 | 加载、发现与资源访问 |
| 移动端视口 | 原生内容视口、窗口背景与第一方移动端行为 |
| 消息内嵌运行时 | iframe 的生命周期与渲染 |
| 启动流程 | Shell、Core、Full 阶段 |
| 安全模式 | 进入方式、恢复范围与找回设置 |
| Bootstrap | 启动输入与内存开销 |
| 聊天存储 | 完整历史、分页读取和保存 |
| 记忆扩展 | 聊天查询与扩展存储 |
| 媒体资源 | 浏览器资源与 Range 请求 |
| 系统 TTS | Android Web Speech 接入与当前边界 |
| 同步 | LAN Sync 与 TT-Sync |
| 文件传输 | 原生选取、交付与暂存 |
| 数据目录 | 桌面目录选择与迁移 |
| 原生模型 API | Responses、Claude、Gemini 等格式 |
| 预设工具条目 | 工具定义、调用与响应条目,fields 与工具清单 |
| iOS 策略 | 平台能力与分发设置 |
| 角色身份 | 角色、聊天目录、重命名与世界书绑定 |
| 日志 | tracing、Dev API 与 LLM 请求日志 |
| 资源缓存 | 资源版本与条件请求 |
| 更新渠道 | Stable、Canary 与更新检测 |
| Linux 分发 | APT、RPM 与 Nix |
| Windows 分发 | WinGet 与安装包 |
| MCP | 服务器、工具目录与模型调用 |
| 向量 API | 索引、embedding 与查询 |
| 自有界面 | React、TypeScript 与构建流程 |
| Web Host | 浏览器嵌入方(Tavern Studio)使用的宿主实现 |
| 性能基线 | 前后端工作量的计量、基线与新增场景 |