Commit Graph

413 Commits

Author SHA1 Message Date
autobee-sparticle
0c9c36cc54
fix: 禁止 NOVARE 设备控制二次确认循环 (#22)
* 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

* fix: 禁止 NOVARE 设备控制二次确认循环

- 添加"禁止二次确认"最高优先级规则,明确用户确认后必须立即执行工具调用
- 扩展确认关键词列表,增加更多日语确认表达(お願いします、はい、うん等)
- 添加正确/错误流程示例,防止模型循环询问确认
- 强化规则指南中的确认执行逻辑

Fixes: sparticleinc/mygpt-frontend#2303

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-27 18:34:12 +09: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
autobee-sparticle
85519da5a5
fix(memory): 改进 Memory 提取 prompt 使用大白话 (#20)
将 fact extraction prompt 中的技术性格式改为自然语言:
- "Contact: [name] (relationship, referred as [nick])" → "[name] is a [relationship], also called [nick]"
- 移除 "DEFAULT when user says" 等技术标记
- 添加 Plain Language Rule 明确要求输出通俗易懂的文本
- 更新所有示例为自然语言风格

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-26 10:14:13 +09:00
autobee-sparticle
e987cb6f6b
fix(novare): 添加位置粒度降级搜索策略,解决详细位置指定时设备匹配失败问题 (#18)
当用户指定过于详细的位置信息(如"3階執務スペース、フォーラム側窓側")时,
find_device_by_area 可能无法匹配到设备区域。新增降级搜索策略:
- 第1步:去除方位修饰语,保留核心区域名重新搜索
- 第2步:进一步简化到楼层级别搜索
- 降级成功时告知用户搜索范围变化并确认

Closes #2201 (mygpt-frontend)

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-20 15:47:48 +09:00
朱潮
2adc8fc5e3 Merge branch 'prod' into dev
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-18 15:40:43 +08:00
shuirong
822589eab6 ci: 重新调整CI 2026-03-18 16:16:53 +09:00
朱潮
709a967537 Merge branch 'developing' 2026-03-17 22:06:23 +08:00
朱潮
0c985607b5 Merge branch 'master' of https://github.com/sparticleinc/catalog-agent 2026-03-17 22:04:50 +08:00
朱潮
e2e0a7d985 跨语言场景 - 即使用户用其他语言提问,也必须用指定语言回复 2026-03-17 22:03:23 +08:00
朱潮
380764d5ed add chromium 2026-03-17 14:48:50 +08:00
朱潮
95e34ed172 add chromium 2026-03-17 14:27:16 +08:00
autobee-sparticle
a161e43421
feat: add POST /api/v1/memory endpoint for realtime conversation memory (#17)
* feat: add POST /api/v1/memory endpoint for realtime conversation memory

Add memory extraction API that accepts conversation messages and
stores them via Mem0. This enables realtime voice sessions to save
memories through the same pipeline as chat conversations.

Fixes: sparticleinc/mygpt-frontend#2126

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

* fix: address code review findings for memory API

- Use Literal["user","assistant"] for role field validation
- Add Field constraints (min_length, max_length=200)
- Track and report pairs_failed in response
- Hide internal exception details from HTTP response
- Remove unused authorization parameter (internal API)

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

---------

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-17 11:14:02 +09:00
autobee-sparticle
deb78a7625
fix: improve memory extraction for colloquial/informal speech (#16)
* chore: add .worktrees/ to .gitignore

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

* feat(CI): 添加 onprem-dev 环境的构建和部署配置

在 CircleCI 配置中新增 onprem-dev 环境的 build-and-push 和 deploy 任务,部署到 cluster-for-B 的 onprem-dev 命名空间

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

* fix: improve memory extraction for colloquial/informal speech

Add semantic completeness rules and multilingual few-shot examples
to FACT_RETRIEVAL_PROMPT to prevent truncated or semantically incorrect
memory extraction. Specifically addresses Japanese casual speech where
particles (が, を, に) are often omitted.

Closes sparticleinc/mygpt-frontend#2125

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

---------

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
Co-authored-by: shuirong <shuirong1997@icloud.com>
2026-03-17 10:37:49 +09:00
朱潮
f24c3ff78f playwright support 2026-03-16 23:07:00 +08:00
朱潮
c27270588f 增加取消推理 2026-03-16 22:22:39 +08:00
shuirong
0a6ec95518 feat(CI): 添加 onprem-dev 环境的构建和部署配置
在 CircleCI 配置中新增 onprem-dev 环境的 build-and-push 和 deploy 任务,部署到 cluster-for-B 的 onprem-dev 命名空间

Co-Authored-By: Claude Opus 4.6 (1M context) <noreply@anthropic.com>
2026-03-16 16:18:50 +09:00
朱潮
32fd8c8656 shell_env支持 2026-03-16 13:31:59 +08:00
朱潮
b8368068ae 心跳发送增加 15 秒间隔判断,发送后也更新 last_yield_time 2026-03-15 16:53:18 +08:00
朱潮
8cab0180e3 update novare 2026-03-13 21:50:57 +08:00
朱潮
7a058065c1 在 routes/skill_manager.py:669-672,解压完成后立即检测并删除 __MACOSX 目录,这样后续的 skill
验证流程就不会受到干扰。
2026-03-13 10:08:38 +08:00
朱潮
5de9803d0c Merge branch 'feature/agentic_rag' 2026-03-12 19:54:31 +08:00
朱潮
9f669e1b6d dataset支持dataset_id软连接 2026-03-12 19:54:09 +08:00
朱潮
0469ea2ecd 心跳输出格式改成json 2026-03-12 19:32:37 +08:00
朱潮
94471c90d8 添加心跳机制 2026-03-12 16:57:44 +08:00
朱潮
082630e281 table_rag_retrieve 和 rag_retrieve 增加调用策略 2026-03-12 11:59:38 +08:00
朱潮
8640f99674 table_rag 超时时间改成300 2026-03-11 22:05:37 +08:00
朱潮
e3c400f663 邮箱列表大幅扩展 2026-03-11 16:08:41 +08:00
朱潮
8360e1467c 已更新 description,移除了具体存储服务(Cloudflare R2、AWS S3、S3-compatible storage)的描述,只保留了文件上传操作相关的说明。 2026-03-11 12:50:54 +08:00
朱潮
21fb6c924f remove excel-analysis 2026-03-11 12:47:37 +08:00
朱潮
c1d2d48979 add table_rag 2026-03-11 12:25:31 +08:00
朱潮
4adf62afb7 add document skill 2026-03-11 09:27:08 +08:00
朱潮
67290f7e5e add config/s3-upload-sparticle.yaml 2026-03-11 09:21:43 +08:00
朱潮
25272015a0 add public 2026-03-11 09:21:18 +08:00
朱潮
611bd23a7c add skill 2026-03-11 09:02:05 +08:00
朱潮
f830b8bb08 add table_rag_retrieve 2026-03-10 16:13:48 +08:00
朱潮
38c5d1e622 修复方案:在 routes/webdav.py 中添加了一个 WSGI 中间件包装函数,在请求到达 WsgiDAV 前:
1. 读取 X-Forwarded-Proto 设置正确的 wsgi.url_scheme
  2. 将 Destination 头中的外部 scheme/host 重写为内部实际值
2026-03-09 18:51:08 +08:00
朱潮
5d97be9557 routes/webdav.py — 完全重写,从手写 WebDAV 协议改为使用 WsgiDAV 开源库 2026-03-09 18:33:05 +08:00
朱潮
4ad1c96bf3 ALLOWED_RESOURCE_TYPES 从 {robot, dataset} 改为 {robot, docs}。现在 WebDAV 路径为: 2026-03-09 16:00:07 +08:00
朱潮
9fd4a099da remove resource_id 2026-03-09 15:48:35 +08:00
朱潮
7039bec61a add webdav support 2026-03-09 12:54:38 +08:00
朱潮
49034bc571 add webdav support 2026-03-09 12:31:07 +08:00
朱潮
b277c9bbff add webdav support 2026-03-09 11:56:17 +08:00
朱潮
85cc57ce1a aupdate from_v2_request 新增 model_name、model_server、api_key 三个可选参数 2026-03-06 12:53:16 +08:00
朱潮
8264257ab6 现在 from_v2_request 的 model_name 和 model_server 优先级逻辑为:
1. 最高优先级:generate_cfg 中的 model / model_server(需不为空且不等于 whatever)
  2. 回退:bot_config 中的值(原有逻辑)
2026-03-06 12:47:33 +08:00
朱潮
49151916c6 Merge branch 'master' of https://github.com/sparticleinc/catalog-agent 2026-03-05 15:08:34 +08:00
朱潮
4c74acaf18 chat.py:730 的 v2 接口 exclude_fields 现在与 v1 接口保持一致,补上了 'model', 'model_server', 'dataset_ids', 'system_prompt', 'mcp_settings',
'robot_type', 'enable_thinking', 'skills', 'enable_memory' 这些字段。
2026-03-05 15:08:09 +08:00
autobee-sparticle
6309a53860
feat(novare): 添加人员在離判定规则,利用 last_communication_time 字段判断人员是否在 NOVARE 楼内 (#13)
EB API 始终返回人员最后已知坐标,不区分在馆/离馆。通过检查 last_communication_time
与当前时刻的差值(阈值5分钟/24小时),实现三级在離判定并提供对应的日语回答模板。

Closes sparticleinc/mygpt-frontend#1963

Co-authored-by: zhuchao <zhuchaowe@163.com>
Co-authored-by: Claude Opus 4.6 <noreply@anthropic.com>
2026-03-04 17:21:16 +09:00
朱潮
b6b821c9bb bug fix 2026-03-04 14:30:44 +08:00
朱潮
f7773a93e1 Merge branch 'upgrade/deepagents-0.4.4' 2026-03-04 14:08:51 +08:00
朱潮
52d8161b0e 修改确保 max_length 永远不会是 None 2026-03-04 14:08:26 +08:00