Repository navigation
Skills and Slash Commands
AceGuru-mjh edited this page Oct 1, 2026
·
4 revisions
📑 本页目录
Skill 是可组合的能力包;斜杠命令是它的命令行入口。 二者与市场五个货架共同构成"不用改代码就能扩展智能体"的通道。
JSON manifest,schema apex-skill-v1,存放在 filesDir/skills/<id>.json:
| 类型 | 机制 | 示例 |
|---|---|---|
| Composite |
steps[] 链式编排既有工具,{{var}} / {{prev_output}} 模板替换 |
网页爬虫 = fetch → 解析 → 存档 |
| Prompt | 启用时注入系统提示片段 | "回答必须带引用来源" |
| Script | 内嵌 Python/Shell 脚本,由 shell_execute 执行 |
数据清洗脚本 |
| Connector | 连接外部服务(URL / SSH) | Google Drive 桥(孵化中) |
注册的工具有五个入口供 LLM 调用:
skill_search · skill_install · skill_create · skill_list · skill_uninstall
flowchart LR
S["skill_search('网页抓取')"] --> I["skill_install(url / 内置模板 / 内容)"]
I --> A["auto_setup 执行安装步骤"]
A --> L["skill_list 确认已安装"]
L --> R["SkillToolAdapter 注册为运行时工具<br/>(如 web_scrape)"]
R --> T["LLM 像调用内置工具一样调用它"]
动态安装的技能通过 SkillToolAdapter 注册进 ToolRegistry,因此对 LLM 而言技能与内置工具无差别。
| 货架 | 内容 |
|---|---|
| 🧰 工具 | 已注册工具浏览(含分类 / 风险 / 使用统计) |
| 🧩 技能 | 可安装 Skill(内置模板 40+) |
| 🛰️ MCP | Model Context Protocol 服务器接入 |
| 🔌 插件 | AIDL 插件 APK(见 插件 SDK) |
| 🔗 连接器 | 外部服务连接(孵化中) |
Note
抽屉里原来的 Skill 屏已合并进市场屏(ApexRoot.kt 有注释说明)。
输入栏 / 按钮弹出四类命令,实时联想、追加而不覆盖已输入文本:
/<type>:<id> [key=value ...] [自由文本]
/skill:code_interpreter
/skill:web_search query=Android 18 news
/mcp:github repo=owner/name ← 未连接时自动引导 GitHub 连接流程
/connector:google_drive
/plugin:pdf_reader
| 类型前缀 | 含义 |
|---|---|
/skill: |
直接调用某个已安装技能 |
/mcp: |
调用 MCP 服务器工具(未连接则引导连接) |
/connector: |
调用连接器能力 |
/plugin: |
调用插件 APK 暴露的工具 |
文法容错:
- 空白容忍;
- 畸形输入降级为
Unknown并原样转发(不会报错丢消息); - 解析与路由在纯 JVM 包
com.apex.agent.slash中实现(独立可测,4 个测试类锁定行为)。
{
"schema": "apex-skill-v1",
"id": "web_scrape",
"name": "网页抓取",
"type": "Composite",
"description": "抓取 URL 并抽取正文与标题",
"params": { "url": "string" },
"steps": [
{ "tool": "web_fetch", "args": { "url": "{{url}}" } },
{ "tool": "regex_extract", "args": { "pattern": "<title>(.*?)</title>", "input": "{{prev_output}}" } }
]
}- 保存为
filesDir/skills/web_scrape.json(也可通过skill_install让 Agent 自己写); - 之后 LLM 可以直接调用工具
web_scrape;用户也可以在输入框打/skill:web_scrape url=…。
Tip
想让能力在同一步里批量执行且带熔断/追踪时,用 Shortcut 组合动作; 想要人类可读、可分享、可市场化的包时用 Skill。
- 工具系统 —— Skill 变成工具的那一步
- 插件 SDK —— 跨进程版本的能力包
- 界面导航地图 —— 市场屏在哪
- Contributing —— 提交新技能模板的要求
-
MCP 生态总览
新 - (沙箱 MCP · 官方 Hub · 逆向 Host · 门控语义)
- 终端运行时
- 终端 API 契约
- SDK 边界
- Termux 能力矩阵
- Ubuntu rootfs 供给
- Ubuntu 生命周期
- PRoot 二进制溯源
- VT100/ANSI 模拟器
- 终端性能
- 终端迁移
- 原生层 C++/JNI