Yuyao Huang
26746335c4
refactor(commands): rename status command to list and update related references
...
feat(feishu): update card schema to 2.0 and simplify approval card structure
docs(feishu): add documentation for card json schema 2.0 changes
2026-04-01 14:50:30 +08:00
Yuyao Huang
44bd1a4300
feat(handler): implement card callback response with toast and updated card
...
Add visual feedback for card actions by returning toast messages and updated cards per Feishu requirements. The handler now responds within 3 seconds with appropriate success/warning toasts and card updates showing approval/denial status. Also added operator tracking in logs and comprehensive tests.
2026-04-01 13:22:41 +08:00
Yuyao Huang
eac90941ef
feat: add SDK session implementation with approval flow and audit logging
...
- Implement SDK session with secretary model for tool approval flow
- Add audit logging for tool usage and permission decisions
- Support Feishu card interactions for approval requests
- Add new commands for task interruption and progress checking
- Remove old test files and update documentation
2026-04-01 12:51:00 +08:00
Yuyao Huang (Sam)
b707fa84f9
feat: add default permission mode + rename accept→edit
...
- Add "default" permission mode: no flags passed to CC, uses its own
built-in default (asks about everything). Now the system default.
- Rename "accept" alias to "edit" (acceptEdits) for clarity
- Remove "skip" alias (duplicate of "bypass")
- Update all help text, error messages, tests, and LLM prompts
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-03-30 01:54:32 +08:00
Yuyao Huang (Sam)
9c04d47c8e
docs: 更新命令前缀从/改为//
...
更新所有文档和代码中的命令前缀,从单斜杠`/`改为双斜杠`//`,以保持一致性
2026-03-30 01:40:53 +08:00
Yuyao Huang (Sam)
3ca492634d
refactor(feishu): 将send_text改为send_markdown的别名
...
所有消息现在都通过markdown卡片发送,简化了消息发送逻辑
2026-03-30 01:36:52 +08:00
Yuyao Huang (Sam)
1b2bb8cdc2
refactor: rename pty_process to cc_runner
...
The module has long since moved away from PTY technology, using
claude -p with --output-format stream-json and --resume instead.
Rename to cc_runner to accurately reflect what it does.
Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
2026-03-30 00:55:19 +08:00
Yuyao Huang (Sam)
a278ece348
feat: 添加可配置的命令前缀以避免与Claude Code冲突
...
引入可配置的COMMAND_PREFIX参数,默认设置为"//"以避免与Claude Code的"/"命令冲突
修改相关文件以支持新的命令前缀,包括配置解析、路由逻辑和命令处理
更新帮助文档和提示信息以反映新的命令前缀
2026-03-30 00:11:41 +08:00
Yuyao Huang (Sam)
5a9fe871fe
feat(router): 在路由模式下仅处理特定命令
...
在路由模式下,本地仅处理路由相关命令(/nodes, /node, /help等),其他会话命令直接转发到节点。同时优化路由代理逻辑,对于会话命令直接转发到活跃节点,减少不必要的LLM调用。
2026-03-29 19:11:56 +08:00
Yuyao Huang (Sam)
c6e38026ec
feat(消息通知): 添加对markdown格式消息的支持
...
新增send_markdown函数用于发送富文本格式消息,替换原有send_text调用以支持代码块、标题等格式内容显示。自动分割长消息为多个卡片发送,提升消息展示效果。
2026-03-29 18:38:23 +08:00
Yuyao Huang (Sam)
88b7eabe14
feat(节点跟踪): 改进用户跟踪功能并添加新用户通知
...
当新用户首次发送消息时,返回布尔值并通知可用节点。在handler.py中添加对新用户的处理逻辑,当检测到新用户时,向其发送当前在线的节点列表。这有助于新用户更快了解可用资源。
2026-03-29 18:14:46 +08:00
Yuyao Huang (Sam)
2a8f745b3d
feat(router): 添加用户追踪和节点通知功能
...
在ROUTER_MODE启用时跟踪用户消息,并在节点注册/注销时通知相关用户。新增_known_users集合记录活跃用户,重构通知逻辑以支持所有已知用户或特定服务用户的通知。
2026-03-29 18:11:00 +08:00
Yuyao Huang (Sam)
d6183594d6
feat(handler): 添加消息去重功能防止飞书重复投递
...
实现基于(user_id, content)的消息去重机制,避免飞书在网络抖动时重复投递相同消息。使用10秒时间窗口判断重复消息,超过窗口的旧记录会被自动清理。
2026-03-29 07:10:58 +08:00
Yuyao Huang (Sam)
cbeafa35a5
feat(perm): 添加会话权限模式管理功能
...
实现会话权限模式管理功能,包括:
1. 在 pty_process 中定义三种权限模式标志
2. 添加 /perm 命令用于修改会话权限模式
3. 新增 run_command 工具用于执行 bot 控制命令
4. 在会话管理中支持权限模式设置
5. 添加完整的测试用例和文档说明
2026-03-29 06:46:45 +08:00
Yuyao Huang (Sam)
8dab229aaf
feat: 添加测试框架及功能测试用例
...
test: 实现BDD测试框架及功能测试
docs: 添加测试配置文件及文档
refactor: 重构命令处理逻辑以支持测试
2026-03-29 04:24:27 +08:00
Yuyao Huang (Sam)
52a9d085f7
feat: 重构数据存储路径并优化任务通知机制
...
将审计日志、会话数据和定时任务文件移动到统一的data目录下
为后台任务添加完成回调功能,优化CC任务完成后的通知流程
更新README和ROADMAP文档,标记已完成的功能项
2026-03-29 02:32:48 +08:00
Yuyao Huang (Sam)
80e4953cf9
feat: 优化WebSocket连接和心跳机制
...
- 在main.py和standalone.py中添加ws_ping_interval和ws_ping_timeout配置
- 调整ws.py中的心跳发送逻辑,先发送ping再等待
- 在host_client中优化消息处理,使用任务队列处理转发请求
- 更新WebTool以适配新的API格式并增加搜索结果限制
- 在agent.py中添加日期显示和web调用次数限制
- 修复bot/handler.py中的事件循环问题
2026-03-28 15:53:44 +08:00
Yuyao Huang (Sam)
a3622ce26d
refactor: 替换 asyncio.get_event_loop 为 get_running_loop 并优化会话卡片
...
- 将多处 asyncio.get_event_loop() 替换为更安全的 asyncio.get_running_loop()
- 重构 Feishu 卡片功能,新增 build_sessions_card 方法显示所有会话
- 优化文件路径处理逻辑,支持绝对路径和相对路径
- 在健康检查接口中添加 pending_requests 计数
- 更新会话状态命令以支持卡片显示
2026-03-28 14:59:33 +08:00
Yuyao Huang (Sam)
09b63341cd
refactor: 统一使用现代类型注解替代传统类型注解
...
- 将 Dict、List 等传统类型注解替换为 dict、list 等现代类型注解
- 更新类型注解以更精确地反映变量类型
- 修复部分类型注解与实际使用不匹配的问题
- 优化部分代码逻辑以提高类型安全性
2026-03-28 14:27:21 +08:00
Yuyao Huang (Sam)
64297e5e27
feat: 实现多主机架构的核心组件
...
新增路由器、主机客户端和共享协议模块,支持多主机部署模式:
- 路由器作为中央节点管理主机连接和消息路由
- 主机客户端作为工作节点运行本地代理
- 共享协议定义通信消息格式
- 新增独立运行模式standalone.py
- 更新配置系统支持路由模式
2026-03-28 14:08:47 +08:00
Yuyao Huang (Sam)
8ecc701d5e
feat: 添加任务调度器、后台任务运行器及多种工具支持
...
实现后台任务调度器(scheduler.py)和任务运行器(task_runner.py),支持长时间运行任务的异步执行和状态跟踪
新增多种工具支持:Shell命令执行、文件操作(读写/搜索/发送)、网页搜索/问答、定时提醒等
扩展README和ROADMAP文档,描述新功能和未来多主机架构规划
在配置文件中添加METASO_API_KEY支持秘塔AI搜索功能
优化代理逻辑,自动识别通用问题直接回答而不创建会话
2026-03-28 13:45:20 +08:00
Yuyao Huang (Sam)
de6205d2fd
feat(命令): 添加直接模式和智能模式切换功能
...
- 在 OrchestrationAgent 中添加 passthrough 状态管理
- 新增 /direct 和 /smart 命令用于切换模式
- 修改 /list 命令为 /status 并显示当前模式状态
- 更新帮助信息包含新模式命令
2026-03-28 12:33:41 +08:00
Yuyao Huang (Sam)
5d55d01f40
refactor(commands): 修改未知命令处理逻辑为返回None
...
移除orchestrator/agent.py中不再需要的命令检测逻辑,因命令处理已提前在bot/commands.py中完成
2026-03-28 12:18:41 +08:00
Yuyao Huang (Sam)
6307deb701
feat: 实现用户权限控制、会话管理和审计日志功能
...
- 添加用户权限检查功能,支持配置允许使用的用户列表
- 实现会话管理功能,包括会话创建、关闭、列表和切换
- 新增审计日志模块,记录所有交互信息
- 改进WebSocket连接,增加自动重连机制
- 添加健康检查端点,包含Claude服务可用性测试
- 实现会话持久化功能,重启后恢复会话状态
- 增加命令行功能支持,包括/new、/list、/close等命令
- 优化消息处理流程,支持直接传递模式
2026-03-28 08:39:32 +08:00
Yuyao Huang (Sam)
c3741ea006
refactor(logging): 优化日志格式和内容以提高可读性
...
- 调整日志格式,增加模块名显示
- 将部分debug日志升级为info级别以增加可见性
- 简化日志消息,缩短显示长度
- 统一日志前缀格式
- 优化工具调用日志显示
2026-03-28 08:09:10 +08:00
Yuyao Huang (Sam)
b67e2dd2db
feat: 增强日志功能并添加rich依赖
...
- 添加rich库依赖以改进日志显示
- 在各模块添加详细调试日志,包括消息处理、命令执行和工具调用过程
- 使用RichHandler美化日志输出并抑制第三方库的噪音日志
- 在关键路径添加日志记录,便于问题排查
2026-03-28 07:57:24 +08:00
Yuyao Huang (Sam)
0eb29f2dcc
feat: 初始化项目基础结构
...
添加项目基础文件和目录结构,包括:
- 初始化空包目录(bot/agent/orchestrator)
- 配置文件(config.py)和示例(keyring.example.yaml)
- 依赖文件(requirements.txt)
- 主程序入口(main.py)
- 调试脚本(debug_test.py)
- 文档说明(README.md)
- Git忽略文件(.gitignore)
- 核心功能模块(pty_process/manager/handler/feishu等)
2026-03-28 07:44:44 +08:00