{"release":{"tag":{"name":"v1.1.56","path":"/startvibecoding/mothx/tags/v1.1.56","tree_path":"/startvibecoding/mothx/tree/v1.1.56","message":"","commit":{"id":"2558e71e4259e9c9692b8c37628e676f87a1cdb9","short_id":"2558e71","title":"fix changelog","title_markdown":"fix changelog","description":"","description_markdown":"","message":"fix changelog\n","message_markdown":"fix changelog","detail_path":"/startvibecoding/mothx/commit/2558e71e4259e9c9692b8c37628e676f87a1cdb9","commits_path":"/startvibecoding/mothx/commits/2558e71e4259e9c9692b8c37628e676f87a1cdb9","tree_path":"/startvibecoding/mothx/tree/2558e71e4259e9c9692b8c37628e676f87a1cdb9","author":{"name":"gitgame","email":"admin@pkold.com","username":"gitwebgame","user_path":"/gitwebgame","enterprise_user_path":null,"image_path":"no_portrait.png#gitgame-gitwebgame","is_gitee_user":true,"is_enterprise_user":null,"widget_url":""},"committer":{"name":"gitgame","email":"admin@pkold.com","username":"gitwebgame","user_path":"/gitwebgame","enterprise_user_path":null,"image_path":"no_portrait.png#gitgame-gitwebgame","is_gitee_user":true,"is_enterprise_user":null,"widget_url":""},"authored_date":"2026-07-02T04:11:05+08:00","committed_date":"2026-07-02T04:11:05+08:00","signature":null,"build_state":null},"archive_path":"/startvibecoding/mothx/repository/archive/v1.1.56","signature":null},"operating":{"edit":false,"download":true,"destroy":false,"enterprise_forbid_zip":false},"release":{"title":"v1.1.56","path":"/startvibecoding/mothx/releases/tag/v1.1.56","tag_path":"/startvibecoding/mothx/tree/v1.1.56","project_id":47883436,"created_at":"2026-07-02T09:24:09+08:00","is_prerelease":false,"description":"# 更新日志\r\n\r\n\r\n## v1.1.56\r\n\r\n### ✨ 新功能\r\n\r\n- **交互式会话选择对话框**\r\n  - `/sessions` 现在打开交互式选择对话框，支持方向键上下导航、回车切换、`n` 新建会话、`d` 删除会话。原有 `/sessions ls`、`/sessions set \u003Cid\u003E`、`/sessions clear`、`/sessions del \u003Cid\u003E` 命令仍然保留。\r\n  - TUI 启动时延迟创建会话，直到用户发送第一条消息时才初始化。`--continue`、`--resume`、`--session` 和 `/sessions set` 仍会绑定已有会话。\r\n  - 在 TUI 中继续或切换会话时，会把加载到的会话历史打印到终端 scrollback 中。\r\n\r\n- **统计 Web 面板**\r\n  - `vibecoding stats` 启动 Web 面板，默认监听 `127.0.0.1:7878`，含图表与筛选功能。\r\n  - 纯 HTML/CSS/JS 面板，无外部依赖，图表通过 `\u003Ccanvas\u003E` 绘制。\r\n  - 显示总体概览（请求数、token、费用、时长）、时间序列图、按厂商/模型分类统计，以及分页的最近请求列表。\r\n  - 支持按时间范围（今日/本周/本月/全部）、厂商和协议筛选。\r\n  - `vibecoding stats --cli` 直接在终端打印统计信息。\r\n  - `vibecoding stats --db \u003Cpath\u003E` 可打开指定的 sessions.db 文件。\r\n\r\n- **统计面板：协议与厂商分离**\r\n  - 统计面板中的「Provider」列已按语义拆分为**厂商**（公司名称）和**协议**（API 协议类型，如 `openai-chat`、`anthropic-messages`、`google-gemini`）。\r\n  - 新增 `Provider.API()` 接口方法，在 `request_stats` 中同时记录协议类型与厂商名称。\r\n  - 新增厂商与协议筛选下拉框；饼图与表格现在同时展示两个维度。\r\n  - 数据库迁移 006 为 `request_stats` 表添加 `protocol` 列（已有数据回填为空字符串）。\r\n\r\n- **LongCat 厂商支持**\r\n  - 新增 `longcat` 厂商适配器，支持 OpenAI 兼容协议（`https://api.longcat.chat/openai`）与 Anthropic 兼容协议（`https://api.longcat.chat/anthropic`）两种接入方式。\r\n  - 默认设置中注册了两个内置 provider：`longcat`（OpenAI 协议，`LONGCAT_API_KEY`）与 `longcat-anthropic`（Anthropic 协议，`LONGCAT_ANTHROPIC_API_KEY`）。\r\n  - 默认模型 `LongCat-2.0`：上下文长度 1M，最大输出长度 128K Tokens。\r\n  - TUI 授权对话框中，在 `longcat` 厂商下提供 OpenAI / Anthropic 两种 BaseURL 的选择。\r\n\r\n- **OpenAI 兼容模型的内联 `\u003Cthink\u003E` 推理**\r\n  - 为 OpenAI 兼容供应商新增 `parseReasoningInContent` 模型兼容标志。启用后，正文流中以 `\u003Cthink\u003E...\u003C/think\u003E` 包裹的推理内容会被提取并作为思考增量输出，而不再作为普通文本。\r\n  - 流式解析器能正确处理跨多个 SSE 分块的标签，并在流结束时将残留的不完整标签按字面文本处理。\r\n\r\n- **Auth V2 设置追踪**\r\n  - 为 `ProviderConfig` 和 `ModelConfig` 新增 `fieldSet` 字段追踪，通过自定义 `UnmarshalJSON` 实现对 JSON 显式设置字段的检测，支持 auth V2 合并逻辑。\r\n  - 自定义 `Settings.UnmarshalJSON` 处理映射风格的 `providers` 键，无需修改结构体字段。\r\n\r\n- **项目级 Bash 自动审批规则**\r\n  - `allow.json` 新增 `bashCommands`（精确匹配）和 `bashPrefixes`（前缀匹配），支持在 agent 模式下为项目配置 bash 自动审批。\r\n  - 审批对话框新增「始终允许此命令」和「始终允许命令前缀」选项，规则持久化到 `.vibe/allow.json`。\r\n  - 设置级 `bashBlacklist` 优先级高于项目允许规则（黑名单命令始终需要审批）。\r\n  - `allow.json` 中 `autoEdit` 默认值改为 `true`（文件不存在时），更贴合开发者日常工作流。\r\n\r\n- **完整的 `/settings` 设置对话框**\r\n  - `/settings` 现在打开结构化根菜单，而非直接跳入 provider 列表。分类包括：Providers、Defaults、Behavior、Web Search、Context Files、Status Line、Compaction、Sandbox、Paths、Retry 和 Approval。\r\n  - 每个顶层设置分组拥有独立的子菜单，支持字段编辑、布尔切换和列表编辑。\r\n  - 顶层设置编辑使用 `SaveGlobalSettingsPatch()` 仅更新受影响的 JSON 键，防止无关默认值被展开写入 `settings.json`。\r\n\r\n- **交互式审批对话框**\r\n  - 用专用对话框替代了行内「y/n」审批提示，支持 ↑/↓ 导航、Enter 确认、y/n 快捷操作和 Esc 中止。\r\n  - 审批对话框按工具类型展示结构化详情：bash 命令附带 timeout/async 元数据；edit/write 展示参数摘要。\r\n  - 底部提示改为「! APPROVAL REQUIRED: ↑/↓ Enter」以反映新的交互方式。\r\n\r\n### 🔧 改进\r\n\r\n- 将约 1000 行内嵌仪表板 HTML 从 `internal/stats/dashboard.go` 提取至独立的 `internal/stats/dashboard.html` 文件，启动时通过 `go:embed` 加载。\r\n- 每次 LLM 调用后 agent loop 自动记录统计数据。stats 服务器启动时调用 `session.ApplyMigrations()` 确保 `request_stats` 表存在。\r\n- 更新火山引擎 provider：新增 `agentplan` 和 `codingplan` 供应商，统一 gitee/moark 适配器，移除 `seed` 供应商。\r\n- PyPI 构建新增 venv 隔离（`.venv-build`），使构建脱离系统 Python。\r\n- 抽取 `bashCommandArg()` 辅助函数，在审批路径中统一支持 `command` 和 `cmd` 两种参数键名。\r\n- 将 TUI Esc 处理重构为 `abortPendingRequest()`，正确清理审批和问题状态。\r\n- 修复 auth 对话框切换视图时 `ParamField` / `ParamFieldKey` 残留问题；切换和子菜单不再残留输入模式。\r\n- 修复默认 provider 配置中模型切片的缩进问题。\r\n- 新增 auth 对话框和配置字段追踪的测试。\r\n","author":{"name":"真如赝","username":"zhenruyan","path":"/zhenruyan","avatar_url":"https://foruda.gitee.com/avatar/1676900861588670495/94767_zhenruyan_1578917234.png!avatar30"},"attach_files":[{"download_url":"/startvibecoding/mothx/attach_files/2873006/download/vibecoding_1.1.56_arm64-musl.deb.sha256","name":"vibecoding_1.1.56_arm64-musl.deb.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_arm64-musl.deb.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873007/download/vibecoding_1.1.56_arm64.deb.sha256","name":"vibecoding_1.1.56_arm64.deb.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_arm64.deb.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873008/download/vibecoding_1.1.56_amd64-musl.deb.sha256","name":"vibecoding_1.1.56_amd64-musl.deb.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_amd64-musl.deb.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873009/download/vibecoding_1.1.56_loong64.deb.sha256","name":"vibecoding_1.1.56_loong64.deb.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_loong64.deb.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873010/download/vibecoding-1.1.56-windows-arm64.zip.sha256","name":"vibecoding-1.1.56-windows-arm64.zip.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding-1.1.56-windows-arm64.zip.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873011/download/vibecoding_1.1.56_amd64.deb.sha256","name":"vibecoding_1.1.56_amd64.deb.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_amd64.deb.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873012/download/vibecoding-1.1.56-windows-amd64.zip.sha256","name":"vibecoding-1.1.56-windows-amd64.zip.sha256","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding-1.1.56-windows-amd64.zip.sha256","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873013/download/vibecoding_1.1.56_arm64-musl.deb","name":"vibecoding_1.1.56_arm64-musl.deb","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_arm64-musl.deb","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873014/download/vibecoding_1.1.56_arm64.deb","name":"vibecoding_1.1.56_arm64.deb","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_arm64.deb","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873015/download/vibecoding_1.1.56_loong64.deb","name":"vibecoding_1.1.56_loong64.deb","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_loong64.deb","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873016/download/vibecoding_1.1.56_amd64-musl.deb","name":"vibecoding_1.1.56_amd64-musl.deb","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_amd64-musl.deb","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873017/download/vibecoding-1.1.56-windows-arm64.zip","name":"vibecoding-1.1.56-windows-arm64.zip","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding-1.1.56-windows-arm64.zip","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873018/download/vibecoding-1.1.56-windows-amd64.zip","name":"vibecoding-1.1.56-windows-amd64.zip","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding-1.1.56-windows-amd64.zip","censor_failed":false,"censor_tip":null},{"download_url":"/startvibecoding/mothx/attach_files/2873019/download/vibecoding_1.1.56_amd64.deb","name":"vibecoding_1.1.56_amd64.deb","cli_download_url":"https://gitee.com/startvibecoding/mothx/releases/download/v1.1.56/vibecoding_1.1.56_amd64.deb","censor_failed":false,"censor_tip":null}],"zip_download_url":"/startvibecoding/mothx/releases/tag/v1.1.56.zip","tar_download_url":"/startvibecoding/mothx/releases/tag/v1.1.56.tar.gz"}}}