Skip to content

Latest commit

 

History

2 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

swimming-pool — AI 游泳培训管家(游泳培训馆)

DSH(deepseek-harness-java)Java Native Plugin 场景案例 P78。 游泳培训馆演示应用:课程价目、教练查询、报名约课、订单查询、运营统计,全部能力通过 Java Native 插件注册为 DSH Agent 工具,前端 AI 管家经 SSE 实时问答。

需求与场景

游泳培训馆需要一个「AI 游泳培训管家」:

  • 家长问课程价格、教练专长,AI 直接查价目与教练表回答;
  • 报名前 AI 必须复述要素(学员/课程/单价/课时/总价/首次课时间)请家长确认,确认后落单并回报单号;
  • 家长随时查订单状态(已约课/上课中/已结课);
  • 店长问运营,AI 汇报总单量、待上课时、营收与预计营收、分课程分教练分布,并给营销建议。

运行地址(演示)

服务 地址 说明
培训馆前端 http://127.0.0.1:18117 运营看板 + 课程 + 订单 + AI 管家
DSH 平台 http://127.0.0.1:8090 Agent 编排与插件运行时

插件信息

项 值
pluginId swim-copilot
名称 AI 游泳培训管家
runtimeType JAVA_NATIVE(进程内加载)
入口类 cn.xiaofuge.s.plugin.SwimPlugin
基类 AbstractHarnessPlugin + 5 个 AbstractTool

工具清单(5 个)

工具 说明 对应 REST
plugin__swim-copilot__course_list 游泳课程价目表(5 门课程,含 88 折规则与免费体测) GET /api/courses
plugin__swim-copilot__coach_list 教练列表(姓名/特长/评分/在带学员) GET /api/coaches
plugin__swim-copilot__book 报名约课(7 参数,先复述确认再调用) POST /api/book
plugin__swim-copilot__order_info 订单查询(学员/课程/教练/课时/金额/状态) GET /api/order
plugin__swim-copilot__stats 运营统计(单量/营收/分布/营销建议) GET /api/stats

预置数据

  • 5 门课程:幼儿启蒙 ¥120(45 分钟)/ 少儿初级 ¥150 / 少儿提高 ¥180 / 成人零基础 ¥200 / 私教一对一 ¥380(元/课时)
  • 3 位教练:孙教练 C01(幼儿启蒙/亲子课,4.9)、钱教练 C02(少儿考级/竞速,5.0)、白教练 C03(成人教学/怕水克服,4.8)
  • 3 笔种子订单:S8001 闵先生(幼儿启蒙·已约课)、S8002 贾女士(少儿提高·上课中)、S8003 应先生(成人零基础·已结课)

业务规则

  • 一次报 10 课时起享 88 折,免费体测一次(含水质与泳姿评估);
  • 报名必填:家长/电话/学员(姓名+年龄)/课程/首次课时间/课时数;coachId 可选,默认 C01;
  • 订单状态流:已约课 → 上课中 → 已结课;营收只计已结课,预计营收计未结课;
  • 红线:首次课前免费体测;心脏病/癫痫等禁忌症不可报名;缺课提前 2 小时可改期;水质每日检测公示;价格与优惠只转述工具返回。

体验流程

  1. 打开 http://127.0.0.1:18117 —— 运营看板(总单量/上课中/已结课/待上课时)、5 门课程卡片、最新订单;
  2. 右侧 AI 管家逐条试:
    • 「有哪些游泳课程?少儿初级多少钱?」→ course_list
    • 「有哪些教练?擅长什么?」→ coach_list
    • 「给孩子报名少儿初级,钱教练,小柏(7 岁),柏先生 13800777777,周六 14:00,10 课时」→ 先复述确认 → book 报单号与 88 折
    • 「查一下订单 S8001」→ order_info
    • 「今天运营情况怎么样?」→ stats
  3. DSH 控制台话术:激活 swim-copilot 插件后,问课程价格或直接报名。

构建与启动

# 1. 构建(JDK 17)
cd swimming-pool && mvn clean package

# 2. 启动应用(端口 18117)
SERVER_PORT=18117 java -jar s-app/target/s-app-1.0.0-SNAPSHOT.jar

# 3. 安装插件到 DSH(先拷 jar 再装再激活)
cp s-plugin/target/s-plugin-1.0.0-SNAPSHOT.jar ~/.dsh/standalone/plugins/swim-copilot.jar
curl -X POST http://127.0.0.1:8090/api/harness/plugins/install -H 'Content-Type: application/json' \
  -d '{"pluginId":"swim-copilot","displayName":"AI 游泳培训管家","pluginVersion":"1.0.0","runtimeType":"JAVA_NATIVE","sourcePath":"'"$HOME"'/.dsh/standalone/plugins/swim-copilot.jar","entrypoint":"cn.xiaofuge.s.plugin.SwimPlugin"}'
curl -X POST http://127.0.0.1:8090/api/harness/plugins/activate -H 'Content-Type: application/json' -d '{"pluginId":"swim-copilot"}'

# 4. DSH standalone(如未启动)
cd ~/.dsh/standalone && java -Dspring.profiles.active=standalone -Dserver.port=8090 \
  -jar ~/.dsh/skills/dsh-java-plugin-skills/runtime/deepseek-harness-java-app.jar

工程结构

swimming-pool/
├── pom.xml                # 聚合工程 swimming-pool
├── s-app/                 # Spring Boot 应用(18117)
│   └── src/main/java/cn/xiaofuge/s/app/
│       ├── SwimApplication.java
│       ├── SStore.java        # 课程/教练/订单内存数据中心
│       ├── SController.java   # REST 5 端点(sessions 数值双格式容错)
│       └── AssistantController.java  # /api/assistant/stream SSE 透传 DSH
└── s-plugin/              # Java Native 插件
    └── src/main/
        ├── java/cn/xiaofuge/s/plugin/SwimPlugin.java  # 5 工具 + 系统提示词 + PRE_TOOL_USE hook
        └── resources/META-INF/
            ├── plugin.yaml
            └── services/cn.xiaofuge.deepseek.harness.domain.spi.JavaHarnessPlugin

坑位记录

  • 插件激活端点是全局的:POST /api/harness/plugins/activate(body 带 pluginId);
  • 复制模板时 docs/images 会带过来:截图前清理旧图,否则新旧混杂;
  • 数值参数双格式容错:sessions 用 instanceof Number + 字符串兜底双解析。

端到端验证记录(2026-09-25)

# 问题 触发工具 结果
T1 有哪些游泳课程?少儿初级多少钱? course_list ✅ 5 门课程 + 150 元/课时
T2 有哪些教练?擅长什么? coach_list ✅ 3 位教练特长/评分
T3 报名:少儿初级 钱教练 10 课时 book ✅ S8004,¥1320(88 折),sessions 容错生效
T4 查订单 S8001 order_info ✅ 小闵(4 岁)幼儿启蒙 已约课
T5 运营情况 stats ✅ 总单量 4 / 待上课时 30 / 预计营收 ¥4440

About

AI 游泳培训管家:游泳培训馆 DSH Java Native 插件场景案例(P78)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages