|
|
0d66536e90
|
清理过期文档
|
2026-06-15 23:29:32 +08:00 |
|
|
|
0c3e740d15
|
修改说明文档+添加dockerfile
|
2026-06-15 23:20:13 +08:00 |
|
|
|
014538eedc
|
feat(tools): add PtyTool with PtyManager for persistent PTY sessions
|
2026-05-29 17:03:19 +08:00 |
|
|
|
2a69021e27
|
chore: add portable-pty dependency
|
2026-05-29 16:59:16 +08:00 |
|
|
|
3df628bd28
|
补充/info信息
|
2026-05-29 16:23:35 +08:00 |
|
|
|
ea1338c94f
|
优化子agent提示词
|
2026-05-29 11:22:48 +08:00 |
|
|
|
b89dce013c
|
修改版本号。
|
2026-05-25 23:25:58 +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 |
|
|
|
22be6e404b
|
优化斜杠命令处理机制,增加/stop命令
|
2026-05-24 18:12:18 +08:00 |
|
|
|
b84c6f85db
|
优化浏览器工具
|
2026-05-24 16:36:11 +08:00 |
|
|
|
4fc47d9b83
|
增加工具说明
|
2026-05-24 14:56:43 +08:00 |
|
|
|
b85578a7d2
|
新增浏览器调用能力。
|
2026-05-21 17:11:53 +08:00 |
|
|
|
2f11aed44a
|
feat(skills): add built-in skill packaging mechanism and about-picobot documentation
- Add build.rs: scan resources/skills/, compress each with tar+zstd, embed via include_bytes!
- Add src/skills/builtin.rs: runtime auto-install built-in skills to ~/.picobot/skills/
- Add about-picobot built-in skill: SKILL.md index + references/ (config, db-schema, architecture, faq, commands) + assets/config.example.json
- Update skill loading: reverse priority (agents < picobot < workspace), deduplicate by name
- Update skills prompt: re-query get_skill when user asks about installed skills
- Change max_tool_iterations default from 20 to 99
|
2026-05-15 12:00:18 +08:00 |
|
|
|
7a30848f65
|
修改skill加载机制
|
2026-05-15 10:39:35 +08:00 |
|
|
|
c92b07f2c6
|
fix(dependencies): update reqwest, regex, tokio, uuid, cron, ratatui, crossterm, hostname, and which versions; improve input area cursor positioning
|
2026-05-13 22:51:16 +08:00 |
|
|
|
db24d42076
|
feat(file_read): enhance file reading with encoding detection and support for binary files
|
2026-05-13 22:43:03 +08:00 |
|
|
|
1a3cfbb0af
|
系统提示词优化
|
2026-05-13 18:31:23 +08:00 |
|
|
|
2bff987be1
|
飞书渠道简化
|
2026-05-13 18:07:34 +08:00 |
|
|
|
52925fcd73
|
增加MCP适配
|
2026-05-13 16:43:38 +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 |
|
|
|
ebbf7e4036
|
refactor(session): make cron stateless, split session lock, eliminate deadlock
- handle_cron_message: bypass Session entirely, use create_cron_agent() for direct LLM call; cron LLM delivers results via send_message tool
- handle_message: split session lock into Phase1(prepare)/Phase2(LLM unlocked)/Phase3(persist), allowing send_message to lock freely
- send_message: restore lock().await (remove try_lock workaround)
- scheduler: remove outbound publish (LLM handles delivery via send_message)
|
2026-05-13 10:40:58 +08:00 |
|
|
|
99a57a816a
|
增加LLM相关错误处理
|
2026-05-13 08:59:23 +08:00 |
|
|
|
3d42f22f83
|
fix(session): replace Mutex with task-local storage to prevent reentrant deadlock in send_message
|
2026-05-13 08:48:31 +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 |
|
|
|
5aec8cefb9
|
feat: add config.example.json template and update AGENTS.md with new config path
|
2026-05-10 18:45:53 +08:00 |
|
|
|
a479b92cdf
|
feat(tools): add ContentSearchTool and FileSearchTool for enhanced file and content searching capabilities
|
2026-05-10 18:32:35 +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 |
|
|
|
8c0c76a232
|
fix(session): persist compression marker on retry, warn on storage/persist errors
|
2026-05-10 14:52:10 +08:00 |
|
|
|
709d70f828
|
docs: add incremental session recovery design and implementation plan
|
2026-05-10 14:46:27 +08:00 |
|
|
|
25d37bcdc1
|
feat(system-prompt): add history section prompting agent to use timeline_recall
|
2026-05-10 14:46:20 +08:00 |
|
|
|
3d29854079
|
feat(session): incremental recovery from storage using compressed timeline
|
2026-05-10 14:41:48 +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 |
|
|
|
29543444da
|
feat(storage): add load_messages_after_timestamp, load_session_timelines, get_max_message_seq
|
2026-05-10 14:36:40 +08:00 |
|
|
|
d022e30943
|
feat(storage): add last_compressed_message_at column to sessions table and Session struct
|
2026-05-10 14:35:21 +08:00 |
|
|
|
cb1140e9be
|
refactor(memory): Timeline 按 session 隔离,拆分知识/摘要检索工具
- storage/memory: search_memories 和 search_memories_by_time 增加 session_id 过滤参数
- memory/manager: recall/recall_by_time 透传 session_id
- tools: MemoryStoreTool/MemoryRecallTool 锁定 Knowledge 类别,移除 category 参数
- tools: 新增 TimelineRecallTool 用于检索会话摘要,支持可选 session_id 过滤
- tools: 输出格式化增加 session 信息显示
- tests: 新增 test_session_id_filter 验证会话级过滤
|
2026-05-10 13:35:21 +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 |
|
|
|
ceb8234a30
|
飞书渠道剥离思维链内容,不显示<think>标签
|
2026-05-08 16:19:19 +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 |
|
|
|
618016ac43
|
chore: add .worktrees/ to .gitignore
|
2026-05-07 23:05:01 +08:00 |
|