LiteFlow LiteFlow
首页
  • v2.16.3 (当前版本)
  • What's New

    • What' s New In LiteFlow v2.16.2?
    • What' s New In LiteFlow v2.16.1?
    • What' s New In LiteFlow v2.16.0?
  • 历史版本

    • v2.15.X
    • v2.13.X
    • v2.12.X
    • v2.11.X
    • v2.10.X
    • v2.9.X
    • v2.8.X
  • 升级指南

    • 2.16.2 Agent 升级说明
    • 2.13.0升级指南
    • 2.12.4升级指南
    • 2.12.0升级指南
    • 升级到2.9.3说明
    • 升级到2.9.X说明
    • 升级到2.8.X说明
    • 升级到2.7.X说明
AI Agent
AI Skill
IDEA 插件
  • 答疑解惑

    • 常见问题
    • 如何理解上下文这个概念?
    • Slot是一个什么样的概念?
  • 项目与社区

    • 项目介绍
    • 项目成员
    • 更新记录
    • 参与开发
    • 加入群聊
    • 谁在使用
赞助
GitHub (opens new window)

广告采用随机轮播方式显示 ❤️成为赞助商
首页
  • v2.16.3 (当前版本)
  • What's New

    • What' s New In LiteFlow v2.16.2?
    • What' s New In LiteFlow v2.16.1?
    • What' s New In LiteFlow v2.16.0?
  • 历史版本

    • v2.15.X
    • v2.13.X
    • v2.12.X
    • v2.11.X
    • v2.10.X
    • v2.9.X
    • v2.8.X
  • 升级指南

    • 2.16.2 Agent 升级说明
    • 2.13.0升级指南
    • 2.12.4升级指南
    • 2.12.0升级指南
    • 升级到2.9.3说明
    • 升级到2.9.X说明
    • 升级到2.8.X说明
    • 升级到2.7.X说明
AI Agent
AI Skill
IDEA 插件
  • 答疑解惑

    • 常见问题
    • 如何理解上下文这个概念?
    • Slot是一个什么样的概念?
  • 项目与社区

    • 项目介绍
    • 项目成员
    • 更新记录
    • 参与开发
    • 加入群聊
    • 谁在使用
赞助
GitHub (opens new window)
  • 🤖 LiteFlow Agent 简介
  • 快速开始

    • 📦 引入依赖
    • ⚙️ 基本配置
    • 🧩 编写 Agent 组件
    • 📤 获取 Agent 结果
    • 🌊 流式输出
  • 🎬 演示项目
  • 🏪 模型配置
  • 📐 结构化输出
  • Jev 智能选择组件

    • Jev 模型与模块介绍
    • 依赖与配置
    • 编写选择组件
    • 置信度与异常处理
    • 客服演示与测试
  • Jev 布尔判断组件

    • Noul 与布尔判断组件
    • 编写布尔组件
  • 会话与记忆

    • 💬 会话标识
    • 🧠 会话存储
    • 🔄 多轮对话
    • 🗂️ 聊天历史
    • 📝 长对话与长期记忆
  • 工作空间与工具

    • 📂 工作区与执行环境
    • 📄 文件工具与产物
    • 🐚 Shell 工具
    • 🐳 Docker 沙箱
    • 🔧 Java 业务工具
    • 🔌 MCP 工具
  • 🎯 Skills 技能系统
    • 添加 Skill
    • 限制可用技能
    • 查看本次使用了哪些技能
  • 高级编排

    • 🔀 条件路由与并行调用
    • 🤝 多 Agent 协作
    • 🙋 工具调用前人工确认
    • 🧭 子代理与计划
    • 🌐 远程 A2A 调用
  • 运行机制与可观测

    • 🔁 迭代次数与超时
    • 📋 执行日志与事件
    • 🪝 中间件扩展
  • 📖 扩展点速查
  • ⚡ 配置速查
  • 🛡️ 执行与访问边界
  • 🔍 故障排查
  • ⬆️ 升级到 2.16.2
  • AI Agent编排
铂赛东
2026-09-19
目录

🎯 Skills 技能系统

Skill 描述一类任务的执行步骤,Java/MCP 工具提供实际业务操作。先按自定义工具注册 query_order,再添加下面的订单技能。

# 添加 Skill

创建 src/main/resources/agent/skills/order-helper/SKILL.md:

---
name: order-helper
description: 用户咨询订单状态时使用,先确认订单号,再查询订单。
---

先确认用户提供的订单号。
调用 query_order 获取实际状态。
只根据查询结果回答,不编造物流信息。

开启配置:

liteflow.agent.skills.enabled=true
liteflow.agent.skills.path=classpath:agent/skills

一个 Skill 放在一个独立子目录中,必须有 SKILL.md,其中 name、description 和正文不能为空。也可将 skills.path 改成部署机器上的目录,例如 /srv/liteflow/skills。

Skill 可以带 scripts/、references/、assets/ 等资源。框架会把资源放到会话的 .skills-cache/ 中,供模型读取或执行。技能引用的 Java/MCP 工具仍需注册;执行脚本还需开启 Shell,并在本地或镜像中安装解释器和依赖。

skills.path 始终是 Java 应用加载资源的位置。使用 Docker 时仍这样配置,不需要改成容器路径。业务输出放在 output/ 等目录,避免放入会被框架更新的 .skills-cache/。

# 限制可用技能

需要让某个组件只使用指定技能时覆写:

@Override
protected io.agentscope.core.skill.SkillFilter skillFilter() {
    return io.agentscope.core.skill.SkillFilter.only("order-helper");
}

默认允许全部技能。文件系统目录中的技能会在后续调用时重新发现;classpath 技能更新后,需要重新构建并部署应用。skills.strict 当前没有运行时作用,不用于控制是否忽略错误。

# 查看本次使用了哪些技能

在 handleReply(reply, context) 中读取 context.getUsedSkills(),可得到本次已成功加载的技能名称,用于记录执行过程。

技能刷新、筛选和资源准备不会替代工具注册,也不会自动安装脚本依赖。发现技能但执行不了时,先检查工具是否可用、Shell 是否开启,以及实际运行环境中的解释器和依赖。

帮助我们改善此文档 (opens new window)
上次更新: 2026/09/20, 11:49:27
🔌 MCP 工具
🔀 条件路由与并行调用

← 🔌 MCP 工具 🔀 条件路由与并行调用→

Theme by Vdoing | Copyright © 2020-2026 铂赛东 | MIT License
沪ICP备18012955号-2