Commit Graph

210 Commits

Author SHA1 Message Date
朱潮
195bd49236 Merge branch 'developing' into bot_manager 2026-06-13 19:28:37 +08:00
朱潮
73042c57a6 add subagent_context_middleware 2026-06-12 15:56:26 +08:00
朱潮
cb649d83ee Merge branch 'developing' into bot_manager
# Conflicts:
#	.features/skill/MEMORY.md
#	poetry.lock
#	requirements.txt
2026-06-08 20:07:30 +08:00
朱潮
77079539c1 refactor: remove file-parsing knowledge-base pipeline and Huey queue
The local file-parsing pipeline (upload -> Huey async parse -> generate
projects/data/.../document.txt) is no longer needed: RAG retrieval runs
against the backend vector store and does not read the local parse output,
so removing this has zero impact on existing bot Q&A.

- Delete task_queue/ (Huey queue, consumer, tasks, task status store)
- Delete parsing utils: dataset_manager, single_file_processor,
  data_merger, project_manager
- Delete db_manager.py (only managed task_status.db)
- routes/files.py: keep only POST /api/v1/upload; drop all
  parse/queue/task endpoints
- routes/projects.py: drop /tasks endpoint and task_status import
- utils/__init__.py & api_models.py: remove exports/models for deleted
  modules and queue task models
- start_unified.py & start_all_optimized.sh: no longer launch the
  queue consumer
- Drop huey dependency (keep redis)

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
2026-06-08 19:40:58 +08:00
朱潮
e6b28818bf add REDIS_URL 2026-06-08 19:00:55 +08:00
朱潮
1fc105a732 透传接口现在支持视觉图片识别 2026-06-07 11:02:10 +08:00
朱潮
be44c243fd Merge branch 'feature/mcp-ui' into staging 2026-05-28 09:55:30 +08:00
csh28
45cf140472 Optimize catalog-agent image embedding dependencies 2026-05-21 20:30:54 +08:00
朱潮
3809536746 refactor: replace mcp_resources API with direct /robots/ static file access
- Remove routes/mcp_resources.py (ui:// URI resolver endpoint)
- Frontend now directly accesses /robots/{bot_id}/skills/{server}/apps/{resource}.html
- Add Daytona fallback middleware to fetch files from sandbox on 404
- Add utils/daytona_file_fetcher.py for on-demand single file download
- Resolve merge conflict: keep voice, knowledge_base routes

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 19:21:40 +08:00
朱潮
b4f8bb2935 refactor: replace mcp_resources API with direct /robots/ static file access
- Remove routes/mcp_resources.py (ui:// URI resolver endpoint)
- Frontend now directly accesses /robots/{bot_id}/skills/{server}/apps/{resource}.html
- Add Daytona fallback middleware to fetch files from sandbox on 404
- Add utils/daytona_file_fetcher.py for on-demand single file download

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-20 18:58:58 +08:00
朱潮
eb307cb1de fix requirements 2026-05-15 17:54:42 +08:00
朱潮
32508ae9d4 fix: langfuse CallbackHandler API and tarfile dereference parameter
- Update langfuse CallbackHandler to use trace_context instead of removed trace_id/session_id/user_id params
- Pass session_id/user_id via LangChain metadata with langfuse_ prefix
- Move dereference param from TarFile.add() to tarfile.open()

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-14 17:14:37 +08:00
朱潮
3f895f8fe4 add langfuse 2026-05-14 12:14:21 +08:00
朱潮
a8f643a10c fix: use POST /api/token/{id}/key to get full unmasked key for new NewAPI v0.13.2
New version of NewAPI masks token keys with asterisks in list/detail endpoints.
Added get_token_key() method that calls the dedicated endpoint to retrieve
the full key, and integrated it into get_or_create_token() flow.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-05-13 12:49:38 +08:00
朱潮
718ec5302e Merge branch 'developing' into bot_manager 2026-05-12 12:44:19 +08:00
csh28
951948639e Add agent final answer first char metric 2026-05-08 15:43:48 +08:00
朱潮
f5bb23a2d1 merge 2026-05-07 19:36:27 +08:00
朱潮
3c0fa498b5 🐛 fix(sync): sync dataset symlinks to Daytona sandbox
The incremental sync used `find -type f` which misses symlinks (type l),
so dataset symlinks were never detected and synced to the sandbox.
Additionally, `tar.add()` without `dereference=True` would store broken
symlinks pointing to host-only paths.

- _list_local_changed_files: match both regular files and symlinks
- _tar_workspace_entries: dereference symlinks to pack actual content
- Unify dataset path to `datasets/` (plural) in prompts and SKILL.md

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-05-06 19:37:00 +08:00
朱潮
425f3c5bb4 chore: replace Chinese comments and log messages with English
Convert all Chinese comments, docstrings, logger/print output,
HTTPException detail messages, and API response messages to English
across the entire codebase. Functional zh/ja localized strings
(e.g. prompt templates, timezone display names, date formats) are
preserved as-is.

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-04-30 19:45:35 +08:00
朱潮
d554317db6 触发更新 2026-04-25 09:08:45 +08:00
朱潮
c93df5400e modify DAYTONA_SERVER_URL 2026-04-24 19:54:45 +08:00
朱潮
45a94942b8 异步执行 _execute_post_agent_hooks 2026-04-24 13:07:44 +08:00
朱潮
ac32ef8d0b update utils/daytona_sync.py 2026-04-23 16:38:44 +08:00
朱潮
8446dab1e4 daytona support 2026-04-23 15:09:09 +08:00
朱潮
c9e07898fc daytona support 2026-04-23 11:42:50 +08:00
朱潮
8e35d860a5 merge 2026-04-20 22:42:53 +08:00
朱潮
f13f208900 add ENABLE_SELF_KNOWLEDGE 2026-04-20 19:24:30 +08:00
朱潮
dfc1c003c6 sanitize_model_kwargs 2026-04-20 19:00:15 +08:00
朱潮
7c72a52bb7 SKILLS_SUBDIR改成PROJECT_NAME 2026-04-19 09:47:49 +08:00
朱潮
0addc55fa2 SKILLS_SUBDIR改成PROJECT_NAME 2026-04-19 09:45:09 +08:00
朱潮
5b109d5c27 修改skill目录 2026-04-19 09:21:14 +08:00
朱潮
fd7d838e09 修改skill目录 2026-04-19 00:28:14 +08:00
朱潮
990f50ed55 修改skill目录 2026-04-18 23:58:30 +08:00
朱潮
2911c67771 修改skill目录 2026-04-18 23:39:47 +08:00
朱潮
0adfbad600 修改skill目录 2026-04-18 23:36:32 +08:00
朱潮
db783a7c3d 修改skill目录 2026-04-18 23:19:46 +08:00
朱潮
2fa779e61e disable for autoload 2026-04-18 23:08:28 +08:00
朱潮
90229ffeaf 优化skill覆盖逻辑 2026-04-17 11:43:20 +08:00
朱潮
9d47324a76 add rag_retrieve-only 2026-04-16 20:09:02 +08:00
朱潮
e1bf685314 add rag_retrieve autoload 2026-04-16 19:38:13 +08:00
朱潮
8c49997ed6 dataset to datsets 2026-04-15 11:09:55 +08:00
朱潮
2964326cb8 update to deepagents 0.5.2 2026-04-11 16:23:59 +08:00
朱潮
ed34ff9ee9 Merge branch 'prod' into developing 2026-04-11 16:08:16 +08:00
朱潮
a9044c6d2e TOOL_OUTPUT_MAX_LENGTH 扩展 2026-04-11 13:31:45 +08:00
autobee-sparticle
213e541697
fix: resolve PrePrompt Hook env var crash and increase Mem0 pool size (#24)
1. Fix "all environment values must be bytes or str" error in hook execution
   by ensuring all env values are converted to str (getattr may return None
   when attribute exists but is None). Also sanitize shell_env values.

2. Increase MEM0_POOL_SIZE default from 20 to 50 to address "connection pool
   exhausted" errors under high concurrency.

Fixes: sparticleinc/felo-mygpt#2519

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-04-01 22:04:31 +09:00
朱潮
dc2e8a39e3 Merge branch 'feature/moshui20260330-schedule-job' into dev 2026-03-31 20:04:49 +08:00
朱潮
2b749e988f merge from feature/moshui20260330-schedule-job 2026-03-31 09:46:17 +08:00
朱潮
3b9c7165a9 feat: 添加定时任务调度系统(schedule-job)
- 新增 schedule-job skill,支持 cron 周期任务和一次性定时任务
- 新增 schedule_manager.py CLI 工具(list/add/edit/delete/toggle/logs)
- 新增 ScheduleExecutor 全局异步调度器,每 60s 扫描到期任务并调用 agent 执行
- 任务数据存储在 projects/robot/{bot_id}/users/{user_id}/tasks.yaml
- 执行结果写入 task_logs/execution.log
- 集成到 FastAPI lifespan 生命周期管理
- 添加 croniter、pyyaml 依赖

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-30 23:17:47 +08:00
朱潮
7214adcf8e Merge branch 'dev' of https://github.com/sparticleinc/catalog-agent into dev 2026-03-30 21:02:05 +08:00
autobee-sparticle
18bf296aa0
feat: move enable_thinking control from docker-compose to request body (#21)
* add page number

* feat: add skill feature memory

添加 skill 功能的 feature memory,记录技能包管理服务和 Hook 系统的核心信息。

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* feat(skill): add feature memory with changelog and decisions

添加 skill 功能的完整记忆文档:

Changelog:
- 2025-Q4: 初始实现 (GRPC 层 + 内置 skills)
- 2026-Q1: API 完善 (REST API + Hook 系统)

Design Decisions:
- 001: Skill 架构设计 (目录结构、Hook 系统)
- 002: 上传安全措施 (ZipSlip、路径遍历防护)

Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>

* soffice sharp 支持

* shell_env support

* feat: move enable_thinking control from docker-compose to request body

Remove DEFAULT_THINKING_ENABLE environment variable from docker-compose
and settings.py. The enable_thinking flag is now solely controlled via
request body (default: false), as felo-mygpt already passes this config
from RobotConfig database.

Closes sparticleinc/felo-mygpt#2473

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>

---------

Co-authored-by: 朱潮 <zhuchaowe@users.noreply.github.com>
Co-authored-by: Claude Opus 4.5 <noreply@anthropic.com>
Co-authored-by: zhuchao <zhuchaowe@163.com>
2026-03-26 20:12:39 +09:00