59 Commits

Author SHA1 Message Date
7a3058d8b5 docs: finalize streaming turn architecture 2026-07-17 17:45:22 +08:00
c7ceb877a2 feat: stream Anthropic turns with signed replay state 2026-07-17 17:11:26 +08:00
3ada5b9421 feat: stream agent turns through session lifecycle 2026-07-17 15:44:08 +08:00
588449d373 feat: stream OpenAI provider responses 2026-07-17 15:17:36 +08:00
a7980b7f72 feat: add authoritative turn state machine 2026-07-17 14:52:56 +08:00
a73f9edda2 支持工具读取图片并注入多模态模型 2026-07-16 19:07:56 +08:00
f4172fea38 实现tui和webui的附件收发,优化文件在消息中的处理 2026-07-16 17:49:51 +08:00
351af8870d 初步实现todo功能 2026-07-15 17:48:14 +08:00
24d3e26b43 fix(runtime): eliminate unowned persistence tasks 2026-07-14 11:50:55 +08:00
c2d4fc5f09 refactor: remove dead code and unused state 2026-07-14 11:41:07 +08:00
f691c1aad6 fix(agent): supervise background tasks atomically 2026-07-14 11:30:32 +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
fdd7f47305 系统提示词精简,拆分固定部分与可变部分,固化工具skill顺序,提升缓存命中率 2026-06-17 23:25:28 +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
3df628bd28 补充/info信息 2026-05-29 16:23:35 +08:00
ea1338c94f 优化子agent提示词 2026-05-29 11:22:48 +08:00
41b4895ff0 增加sub-agent机制。 2026-05-25 23:23:10 +08:00
a77c026826 增加deepseek的支持。 2026-05-25 17:40:17 +08:00
f0879f8d13 重构文件消息处理流程。 2026-05-25 11:59:29 +08:00
1a3cfbb0af 系统提示词优化 2026-05-13 18:31:23 +08:00
1e69fa3bd1 feat: enhance memory section guide and improve search tool descriptions for clarity 2026-05-11 18:01:25 +08:00
ac2c1e0fe0 chore: fix clippy lints and suppress dead_code warnings 2026-05-10 23:26:55 +08:00
5ef89cd667 refactor: remove unused functions and improve path resolution in tools 2026-05-10 23:14:12 +08:00
af07eaf820 feat: add default AGENTS.md and USER.md templates and ensure their presence in the user's config directory 2026-05-10 18:07:50 +08:00
c81b1e42c7 feat(skills): enhance SkillsLoader to support workspace skills directory and update skills loading logic
feat(get-skill): add action parameter for skill retrieval and implement skill listing functionality
fix(session): adjust skills prompt formatting for improved clarity
2026-05-10 17:45:34 +08:00
bafa7a606c fix: update database filename and improve session management in chat manager 2026-05-10 15:51:03 +08:00
11a8e93b77 feat(chat-manager): enhance message retrieval with pagination and time range filtering 2026-05-10 15:12:30 +08:00
25d37bcdc1 feat(system-prompt): add history section prompting agent to use timeline_recall 2026-05-10 14:46:20 +08:00
e65130450e feat(compressor): return CompressionResult with created_timelines flag, record marker in handle_message and /compact 2026-05-10 14:40:13 +08:00
f9ae4b2c69 fix(context): 全面修复和增强上下文压缩机制
Bug修复:
- fast_trim 死代码: 去掉 .clone() 使其真正修改原 history
- compress_once 边界错误: 第一条 user 重复 + 最后一条 user 丢失
- handle_cron_message 遗留的重复压缩调用

新特性:
- System prompt 不参与压缩,在压缩后注入
- 孤儿 tool 清理: compress_once 返回前修复 tool 对完整性
- Agent Loop 内每轮 token 检查: 80% 窗口阈值时预裁剪旧 tool 输出
- 上下文溢出恢复: 解析 LLM 错误中的实际 token limit 并降级重试
- 硬截断降级: tokens > 90% context_window 时 head+tail 保底
- parse_context_limit_from_error: 支持 OpenAI/Anthropic/llama.cpp 格式

测试: 新增 6 个单元测试覆盖上述所有场景
2026-05-10 12:23:26 +08:00
488e10dceb fix: advance last_consolidated_at after compression, update docs 2026-05-08 21:56:05 +08:00
81e9f1e7db clippy --fix: 合并嵌套if、简化map_or、移除冗余引用等机械性优化 2026-05-08 16:35:21 +08:00
5d62141658 1、修复和提升记忆系统 2、简化消息标记 2026-05-08 15:09:27 +08:00
2617558a27 记忆工具合并文件,改成记忆系统总是开启。 2026-05-08 10:28:34 +08:00
c602a0695d feat: add memory system with FTS5 search and context compression integration 2026-05-07 23:32:59 +08:00
61d2fe9ef0 修复及完善cron任务 2026-05-07 16:24:13 +08:00
0e146a8f2a 可观测性改善,llm api兼容性改善 2026-05-04 23:04:28 +08:00
98eb7bea3d 新增跨session消息发送能力 2026-05-04 00:32:24 +08:00
84bb06cc76 优化日志输出:斜杠命令执行时打印,过滤冗余的压缩日志
- 添加斜杠命令执行的 info 日志
- Context compression 日志只在实际触发压缩时输出 (debug级别)
2026-04-28 20:52:20 +08:00
8219e7c928 优化系统提示词:移除冗余的工具列表,自动创建skills目录
- 移除 ToolsSection:工具定义已通过 API 的 tools 参数传递,无需在提示词中重复
- SkillsLoader 启动时自动创建 ~/.picobot/skills 目录
2026-04-28 20:41:36 +08:00
c11eb348f9 Refactor: Make AgentLoop stateless, clean up architecture 2026-04-27 23:23:10 +08:00
1abac85034 集成技能功能到系统提示词框架
- 在 AgentLoop 中添加 SkillsLoader 支持\n- 在系统提示词构建中集成技能提示\n- 更新 Session 以传递 SkillsLoader\n- 修复所有编译错误和测试问题
2026-04-27 23:04:24 +08:00
f704900e07 统一工作目录管理 2026-04-27 17:23:52 +08:00
75a3bf9df4 增加系统提示词框架 2026-04-27 17:07:01 +08:00
81dcc67932 compressor不再使用独立的LLMProvider实例。减少开销 2026-04-24 10:04:21 +08:00
ef601107ac feat: 添加工具调用支持,优化消息处理和持久化 2026-04-18 14:17:23 +08:00
c971bc3639 feat: 添加上下文压缩功能,优化消息历史管理和工具调用日志记录 2026-04-12 18:38:38 +08:00
fb0a9e06aa feat(agent): add loop detection and result truncation for tool calls 2026-04-12 13:18:16 +08:00