18617351030 1030-6

1030-6 pushed para master em 223-template-240/blank

  • 7bf7c65716 fix: 传递 state 属性给 Renderer 组件以支持 $state 引用解析 - 在 ChatMessage.tsx 中,Renderer 组件现在会接收 spec.state - 这样组件中的 {"$state": "/novels"} 引用才能正确解析 Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 25a07dcfa6 fix: json-render 系统提示统一化 + 错误日志功能 - 修复前端 componentsPrompt 与后端 availableComponents 字段名不匹配问题 - 清理 conversation_manager.py 中多余的工具指南 (NOVEL_TOOLS_GUIDE, NO_TOOLS_GUIDE) - 前端统一使用 catalog.prompt({ mode: inline }) 生成组件系统提示 - 后端直接使用前端传来的 componentsPrompt,不再添加额外内容 - 添加 log_error 函数到 debug_logger.py - 在 app_fastapi.py 所有 except 块中添加 log_error 调用 - 添加 quick-spec-json-render-system-prompt.md 规格文档 Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 7d0c9fbe25 fix(json-render): 统一系统提示格式,默认使用 inline 模式 - 修改 catalog.ts getCatalogPrompt() 添加 mode 参数,默认 'inline' - 移除 conversation_manager.py 中冗余的 ```json 格式指令 - 解决三向格式冲突问题(api-client vs component-registry vs backend) 问题:component-registry.ts 调用 getCatalogPrompt() 使用默认 standalone 模式, 而后端 BASE_SYSTEM_PROMPT 要求 LLM 用 ```json 代码块包裹组件, 两者与 api-client.ts 的 inline 模式冲突。 解决:统一使用 inline 模式,移除冲突的格式指令。 Generated with [Claude Code](https://claude.ai/code) via [Happy](https://happy.engineering) Co-Authored-By: Claude <noreply@anthropic.com> Co-Authored-By: Happy <yesreply@happy.engineering>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 534535558b fix(config): Use dotenv_values for highest priority .env loading

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • facda79c34 feat(debug): Add debug_logger.py with /tmp log path for auto-cleanup on restart

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 03c783a151 feat: 支持智谱 GLM API (Anthropic 兼容格式) - 添加 dotenv 加载 .env 配置文件 - 简化 API 配置,支持 ANTHROPIC_AUTH_TOKEN - 添加 debug_logger 调试工具 配置方式: ANTHROPIC_AUTH_TOKEN=<api-key> ANTHROPIC_BASE_URL=https://open.bigmodel.cn/api/anthropic ANTHROPIC_MODEL=GLM-4.7 Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 8ba9ef9928 chore: 删除备份文件 Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 26c8690374 fix: 修复 json-render Provider 问题,SpecStream 流式渲染正常工作 - 使用 JSONUIProvider 包装 Renderer 组件 - 在 page.tsx 中添加 specs 到 useChat 解构 - 将 specs prop 传递给 ChatMessage 组件 - 添加 catalog、registry 等组件注册相关文件 - 添加 API 路由用于组件 prompt Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • a2da92cecc fix(mcp): 修复 MCP 启用/禁用状态同步和 Hydration 错误 1. 统一 McpServerCard 使用 mcpTokenManager.isEnabled() 读取状态 2. 修复 toggleEnabled/setEnabled 方法的 localStorage 存储逻辑 3. 修复 Header 从 MCP_SERVERS 获取正确的总数(4 个) 4. 添加 mounted 状态模式避免 React Hydration 错误 5. 所有条件渲染添加 mounted 检查确保 SSR/CSR 一致性 6. 后端系统提示词根据 enabledMcpList 动态生成 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • d62ffe5e37 fix(mobile): 修复 MCP 管理页移动端布局和 Hydration 错误 1. Header 移动端两行布局 - 标题和导航在第一行,MCP 状态在第二行 2. 聊天页输入框固定底部 - 使用 100dvh 动态视口高度解决浏览器地址栏遮挡 3. MCP 管理页移动端优化: - 统计文字响应式 (text-xs md:text-sm) - 按钮增大点击区域 (min-h-[44px]) - URL 截断显示 (truncate max-w-full) - 禁用状态灰色圆点 4. Hydration 错误修复 - 添加 mounted state 和 suppressHydrationWarning 5. MCP 计数同步修复 - Header 从 MCP_SERVERS 获取总数 (4 个) Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 4b6b12ce63 style(mobile): 优化移动端 Header 和输入框布局 Header 优化: - 移动端使用两行布局,避免元素挤在一起 - 调整字体大小和间距适配移动端 - 添加顶部安全区域支持 输入框优化: - 移动端固定在视口底部,避免被浏览器地址栏遮挡 - 使用 100dvh 解决移动端视口高度问题 - 添加底部安全区域支持(iPhone 刘海屏) Co-Authored-By: Claude <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 9062ea7fee fix(mcp): 修复启用/禁用按钮文本反转和代码清理 - 修复 McpServerCard.tsx 按钮文本逻辑反转问题 - 错误: isEnabled ? '启用' : '禁用' - 修复: isEnabled ? '禁用' : '启用' - 删除 mcp-token-manager.ts 中重复的 getAllTokens() 函数 - 添加 debug 日志跟踪 MCP 过滤流程 验证通过: - 0 个 MCP 启用 → 0 个工具 - 1 个 MCP 启用 → 11 个工具 - 2 个 MCP 启用 → 36 个工具 Co-Authored-By: Claude <noreply@anthropic.com>
  • 8096d2d754 fix(mcp): 空启用列表时使用配置文件 fallback 当 enabled_mcp_list = [] 时,应回退到 config.py 中的 enabled 配置, 而不是禁用所有 MCP 服务器。 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • Ver comparação para estes 2 commits »

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • c05e7cd74c fix: 静态欢迎组件按钮点击无响应 - 问题:renderChildren 没有传递 emit 函数给子组件 - 修复:Card 和 Stack 组件正确传递 emit 函数 - 结果:suggestion-buttons 按钮现在可以正常发送消息 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • bab626b065 feat: MCP 服务器启用/禁用管理功能 - 添加每个 MCP 的启用/禁用开关 - 禁用的 MCP 显示为灰色,不参与聊天请求 - 顶部统计显示:已启用 X/3 | 已连接 Y/3 | 已登录 Z/3 - localStorage 持久化启用状态 - 默认所有 MCP 为启用状态 feat: 静态首页欢迎组件 - 移除自动调用 AI 的欢迎逻辑 - 使用静态 WELCOME_SPEC 组件 - 包含快速操作按钮 feat: 开发环境测试账号快速复制 - 登录表单下方显示测试账号 - 一键复制邮箱和密码按钮 - User MCP: reader-test@example.com / ReaderTest2026@ - Admin MCP: admin-test@example.com / AdminTest2026@ Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • dce1d4f4e8 fix(mcp): 修复连接统计逻辑 - 连接等于服务器健康 - 已连接 X/3 = 所有健康的 MCP 服务器 - 已连接 | 未登录 - 服务器在线但未登录 - 更新说明:Platform User MCP 部分工具无需登录 - 已连接表示服务器在线,已登录表示可调用需要权限的工具 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 24467a9090 feat(mcp): 完善健康检查和连接统计功能 - 使用 HEAD 请求检测 MCP 服务器可达性,解决 405 错误 - 修复连接统计逻辑:Novel Translator 无需登录即可算已连接 - 显示服务器响应延迟(毫秒) - 修复无限循环更新问题:使用 useCallback 稳定回调引用 - 使用 ref 跟踪上次报告状态,避免重复报告相同值 - 开发环境测试账号快速复制功能 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 7bf55dc4a9 feat(mcp): 区分服务器健康状态和登录状态 - 新增 MCP 服务器健康检查功能 - 后端添加 /api/mcp/health/:mcpType 端点 - 前端 McpTokenManager 添加 checkHealth() 方法 - McpServerCard 显示逻辑改进: - ✅ 已连接 (服务器健康 + 已登录) - 🟢 在线(未登录)(服务器健康 + 未登录) - 🔴 离线 (服务器不健康) - 添加延迟显示 (ms) - 每 30 秒自动重新检查健康状态 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 2001a386b2 feat(mcp): 添加开发环境测试账号快速复制功能 - McpServerCard 新增 DevTestAccounts 组件 - 显示测试账号:reader-test@example.com / admin-test@example.com - 一键复制邮箱和密码 - 仅在开发环境 (NODE_ENV === 'development') 显示 - 优化 UI 反馈,复制后显示"已复制 ✓" Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • ce9d4de58a feat(json-render): 修复 markdown JSON 提取和渲染时序问题 - 添加 extractJsonFromMarkdown 函数从 response 提取 JSON - 修复时序问题:specs 更新后自动更新最后一条消息 - 修复循环依赖:移除不必要依赖项 - 小说列表卡片正确渲染(10个卡片) 测试验证:移动端模式下,"获取小说列表"成功渲染 10 个小说卡片 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • d36d4f6a54 feat: 简化翻译卡片 + MCP 管理功能 翻译卡片优化 (json-render-catalog.tsx): - 简化只显示译文和使用的术语 - 移除源语言/目标语言等多余字段 - 修复复制按钮反馈问题 新增组件交互系统: - action-context.tsx: 新增 ActionContext 和 ActionProvider - 支持 emit 事件回调机制 - 实现工具调用结果反馈 主页面更新 (app/page.tsx): - 添加 ActionProvider 包装器 - 集成事件系统支持 - 支持组件交互功能 组件注册优化 (json-render-registry.tsx): - 更新 TranslationResult 组件接口 - 适配新的事件系统 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • 5034cfe6fa feat(json-renderer): 添加从 markdown 代码块中提取 JSON 的功能 - 新增 extractJsonFromMarkdown 函数,支持以下格式: * ```json {...} ``` 代码块 * ``` {...} ``` 代码块 * 直接的 JSON 字符串 - 修改 data 处理逻辑,支持字符串类型输入并自动提取 JSON - 支持对象和数组形式的 JSON spec Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
  • Ver comparação para estes 4 commits »

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • a1deafe5a0 feat: 简化翻译卡片 + MCP 管理功能 - 简化 TranslationResult 组件,只显示译文和术语 - 修复数据结构适配后端 MCP 响应 - 添加复制按钮反馈提示 - 新增 MCP 管理页面,支持多 MCP 登录 - 新增 McpTokenManager 单例管理 Token - 更新 JsonRenderer 支持 action 处理 - 修复热更新配置 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás

1030-6 pushed para master em 223-template-240/blank

  • 0c1c839f0b docs: 模板 240 - 修复翻译结果卡片显示和复制按钮反馈 本次更新内容: 1. 修复 json-render-catalog.tsx - 简化 translate_text case,只保留 translated 和 termsUsed 字段 2. 修复 json-render-registry.tsx - 简化 TranslationResult 组件,移除原文/语言标签,只显示译文和术语 3. 添加复制按钮反馈 - 点击后显示"已复制!",2秒后恢复 4. 修复数据解析逻辑 - 处理 dataObj.result 不存在的情况 Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>

há 1 mês atrás