23e0b3e7a6
fix(feishu): bound media and retry API requests
2026-07-19 16:02:01 +08:00
7e53fa658b
fix(feishu): preserve reply and thread semantics
2026-07-19 15:52:53 +08:00
0512d91729
fix(feishu): harden websocket event processing
2026-07-19 15:47:27 +08:00
5d081e2580
fix(feishu): enforce inbound admission rules
2026-07-19 15:42:01 +08:00
76de8139de
perf: calibrate turn history incrementally
2026-07-19 13:51:14 +08:00
76685c3983
refactor: normalize inbound channel context
2026-07-19 13:42:43 +08:00
c6e022f6cb
feat: stream turns through Feishu cards
2026-07-17 17:30:38 +08:00
6230ac8e36
feat: stream turn snapshots to TUI and WebUI
2026-07-17 16:53:21 +08:00
55da3204f8
feat: coordinate live turn delivery
2026-07-17 15:56:52 +08:00
f4172fea38
实现tui和webui的附件收发,优化文件在消息中的处理
2026-07-16 17:49:51 +08:00
7a144cea8a
优化前端显示,渲染markdown、新增黑白主题
2026-07-15 18:16:18 +08:00
351af8870d
初步实现todo功能
2026-07-15 17:48:14 +08:00
27d126cf73
tui客户端增强。
2026-07-14 14:31:16 +08:00
18f1e47f77
fix(feishu): bound shutdown during connection
2026-07-14 12:43:02 +08:00
3f1350c33b
fix(channels): retry only transient delivery errors
2026-07-14 11:57:47 +08:00
24d3e26b43
fix(runtime): eliminate unowned persistence tasks
2026-07-14 11:50:55 +08:00
954bfd1d75
fix(messaging): make persistence and delivery explicit
2026-07-14 11:49:02 +08:00
c2d4fc5f09
refactor: remove dead code and unused state
2026-07-14 11:41:07 +08:00
a9c297764e
fix(channels): unify lifecycle ownership
2026-07-14 11:24:03 +08:00
63d20d1eb8
refactor: eliminate build warnings and legacy evaluator
...
Resolve strict Clippy findings across all targets, preserve public API compatibility with scoped lint exceptions, and fix sourced messages retaining media references. Replace meval and its future-incompatible nom dependency with a bounded internal expression parser and regression tests.
2026-07-14 11:00:39 +08:00
3d580828b5
fix(runtime): harden persistence scheduling and shutdown
...
Add versioned SQLite migrations, enforced runtime pragmas, and transactional message constraints. Claim scheduled jobs with durable leases, execute them concurrently within bounds, and commit completion atomically. Supervise background tasks and clean up WebSocket clients and writer tasks during ordered shutdown.
2026-07-14 10:37:58 +08:00
2558d6dae1
优化代码格式,调整断言和格式化共享日历事件输出
2026-06-17 22:40:43 +08:00
fe2bc3dfd3
更新版本号至1.1.2,优化Dockerfile中的himalaya安装方式,调整内容块构建逻辑以保留文本,增强Feishu通道的媒体处理,新增交互式消息设计文档
2026-06-17 22:22:41 +08:00
8f4ee79d8d
Format codebase with rustfmt
2026-06-15 23:47:24 +08:00
c6f4392e63
Fix CLI session routing and dialog controls
2026-06-15 23:44:41 +08:00
f0879f8d13
重构文件消息处理流程。
2026-05-25 11:59:29 +08:00
2bff987be1
飞书渠道简化
2026-05-13 18:07:34 +08:00
d957f9c649
feat(send_message): support file sending via Feishu; fix upload endpoint and message format
...
- OutboundMessenger trait: add media: Vec<MediaItem> param to send_message()
- send_message tool: add optional 'files' param with path-to-MediaItem conversion
- SessionManager::send_message(): forward media to OutboundMessage
- Feishu: fix image upload endpoint (/im/v1/images/upload → /im/v1/images)
- Feishu: fix post image tag (image → img)
- Feishu: fix file upload file_type mapping (use valid Feishu types)
- Feishu: send files as separate messages (file/audio/media msg_type), not embedded in post
- Feishu: add debug logging for upload/send responses
- Skip [message from] prefix for pure file messages to same session
2026-05-13 12:06:55 +08:00
5ef89cd667
refactor: remove unused functions and improve path resolution in tools
2026-05-10 23:14:12 +08:00
81e9f1e7db
clippy --fix: 合并嵌套if、简化map_or、移除冗余引用等机械性优化
2026-05-08 16:35:21 +08:00
ceb8234a30
飞书渠道剥离思维链内容,不显示<think>标签
2026-05-08 16:19:19 +08:00
5d62141658
1、修复和提升记忆系统 2、简化消息标记
2026-05-08 15:09:27 +08:00
0e146a8f2a
可观测性改善,llm api兼容性改善
2026-05-04 23:04:28 +08:00
98eb7bea3d
新增跨session消息发送能力
2026-05-04 00:32:24 +08:00
5c558027fa
feat(session): 添加 /? 帮助命令,错误命令显示友好提示
...
- 新增 /? 和 /help 命令显示所有可用斜杠命令
- 未知命令不再报错,而是提示"未知命令:/xxx。输入 /? 获取帮助。"
- execute_slash_command 错误现在返回友好提示而非传播为服务器错误
2026-04-29 22:57:59 +08:00
c48ed83a23
refactor(session): 移除 InboundMessage.dialog_id,dialog_id 完全由 SessionManager 管理
...
Channel 消息不再携带 dialog_id,完全由 SessionManager 通过
current_sessions 内部管理。/new 后下一条消息会自动路由到新 session。
改动:
- InboundMessage 移除 dialog_id 字段
- handle_message 移除 dialog_id 参数
- Feishu/CLI channel 创建 InboundMessage 时不再设置 dialog_id
- 路由逻辑简化为:current_sessions → find_active_session → 创建新 session
2026-04-28 23:05:06 +08:00
1ac6de118a
修复 /dump 命令:保存到文件并注入系统提示词
...
- /dump 现在保存到 {workspace}/dumps/ 目录而非仅返回文本
- dump 文件包含注入模型的完整系统提示词(AgentLoop + Skills)
- 修复 cli_chat 中 current_session_guard 变量声明问题
- gateway 正确处理 HandleResult::AgentResponse 和 CommandOutput
- 移除 cli_chat 中未使用的 parse_slash_command 导入
2026-04-28 21:27:36 +08:00
e61b78eaff
重构:斜杠命令通过 handle_message 处理,Channel 不再管理 Session
...
架构优化:
- Feishu 渠道的 handle_and_publish 简化为只发布消息到 bus
- Session 创建/复用由 SessionManager 在 handle_message 内部处理
- 斜杠命令检测移到 handle_message,execute_slash_command 直接调用
- CLI 和 Feishu 统一通过消息总线处理斜杠命令
2026-04-28 21:10:28 +08:00
e787203e94
修复飞书渠道会话创建时机:执行斜杠命令前先确保会话存在
...
在 Feishu 收到斜杠命令时,先通过 CreateDialog 创建会话,
再执行实际的命令。这样 /dump 等命令就能正确获取对话历史。
2026-04-28 21:06:25 +08:00
30b68599a4
为飞书渠道添加斜杠命令支持
...
重写 FeishuChannel 的 handle_and_publish 方法,在发布消息前
检查是否为斜杠命令。如果是,则通过控制平面执行命令并返回结果。
2026-04-28 20:58:31 +08:00
61eea62bfc
增强斜杠命令功能,支持参数解析和新命令;实现双重 Ctrl+C 退出确认
2026-04-28 00:01:28 +08:00
1abac85034
集成技能功能到系统提示词框架
...
- 在 AgentLoop 中添加 SkillsLoader 支持\n- 在系统提示词构建中集成技能提示\n- 更新 Session 以传递 SkillsLoader\n- 修复所有编译错误和测试问题
2026-04-27 23:04:24 +08:00
8226e8429d
Merge remote-tracking branch 'origin/main'
2026-04-27 22:47:37 +08:00
f704900e07
统一工作目录管理
2026-04-27 17:23:52 +08:00
98259a7770
重构: 添加斜杠命令支持和命令菜单功能
2026-04-26 22:09:04 +08:00
0c356e7ac4
重构: 添加斜杠命令解析和执行功能
2026-04-26 21:51:24 +08:00
bcee62713f
重构: 移除调试日志以简化消息处理流程
2026-04-26 21:26:27 +08:00
86dea0f874
Refactor session management to support dialog-based architecture
...
- Removed InputHandler and related input event handling code.
- Updated GatewayState to handle new session commands for dialogs.
- Introduced UnifiedSessionId for managing session identifiers across channels and chats.
- Refactored Session and SessionManager to manage dialogs instead of sessions.
- Added methods for creating, listing, switching, renaming, archiving, and deleting dialogs.
- Updated storage functions to accommodate dialog IDs in persistent session management.
- Enhanced tests to cover new dialog functionalities and ensure stability.
2026-04-26 20:59:54 +08:00
75281952d0
refactor: 统一 current_timestamp 函数到 bus::message 模块
...
- bus/message.rs: current_timestamp 改为 pub(crate) 导出
- cli_chat.rs: 删除本地定义,改用 crate:🚌 :message::current_timestamp()
- feishu.rs: 改用 crate:🚌 :message::current_timestamp()
- storage/mod.rs: 删除本地定义,改用 crate:🚌 :message::current_timestamp()
2026-04-26 17:24:44 +08:00
dfe0fad61e
重构: 统一消息总线与通道管理,消除重复引用
...
- OutboundDispatcher 改用 ChannelManager 获取通道,不再维护独立注册表
- CliChatChannel 通过控制消息通道操作 SessionStore,移除独立引用
- MessageBus 统一通过 ChannelManager 创建,避免重复实例
- GatewayState 移除冗余字段,统一通过 ChannelManager 访问
- 新增 ControlInbound/ControlOutbound/ControlMessage 类型支持会话管理操作
- 添加 ARCHITECTURE_REVIEW.md 记录架构问题与修复状态
2026-04-26 17:09:52 +08:00