斜杠命令参考
概览
Hermes Agent 提供了两种主要的用户交互方式:交互式命令行界面 (CLI) 和 消息平台中的斜杠命令 (Slash Commands)。这些功能允许用户通过自然语言或结构化指令与智能体进行交互,执行任务、查询信息、管理配置等。
一、交互式 CLI(命令行界面)
启动 CLI
hermes-cli
依赖项:
hermes-agent包含hermes-cli可执行文件。
基本用法
# 启动交互式会话
hermes-cli
# 使用特定配置文件启动
hermes-cli --config ./configs/my-config.json
# 以调试模式运行
hermes-cli --debug
支持的命令
| 命令 | 描述 |
|---|---|
help | 显示帮助信息 |
list agents | 列出所有可用智能体 |
use <agent-name> | 切换当前活动智能体 |
config | 查看和编辑当前配置 |
reset | 重置当前会话状态 |
exit / quit | 退出 CLI |
示例会话
> help
Available commands: help, list agents, use <name>, config, reset, exit
> list agents
- writer-agent (用于内容创作)
- research-agent (用于信息检索)
- code-agent (用于代码生成)
- planner-agent (用于任务规划)
> use writer-agent
Switched to agent: writer-agent
> config
{
"model": "gpt-4o",
"temperature": 0.7,
"max_tokens": 2048
}
> reset
Session reset. Ready for new task.
> exit
Goodbye!
二、消息平台中的斜杠命令(Slash Commands)
Hermes Agent 支持在主流消息平台中使用斜杠命令进行交互。目前支持以下平台:
- Telegram
- Discord
- Slack
- Signal
- Matrix
- Mattermost
- DingTalk
- Feishu
- WeCom (企业微信)
命令格式
/命令 [参数]
例如:
/writer "写一篇关于人工智能的文章"
/research "最新大模型进展"
/code "生成一个 Python 函数,实现斐波那契数列"
支持的斜杠命令
| 命令 | 参数 | 功能描述 |
|---|---|---|
/writer | 文本提示 | 使用写作智能体生成文章、邮件、文案等 |
/research | 查询关键词 | 执行网络搜索与信息整合,返回摘要 |
/code | 代码需求 | 生成可运行的代码片段(支持多种语言) |
/plan | 任务描述 | 创建多步骤任务计划,支持子任务分解 |
/summarize | 文本或链接 | 对长文本或网页内容进行摘要 |
/translate | 文本 + 目标语言 | 多语言翻译(如:/translate Hello world en->zh) |
/ask | 问题 | 通用问答,适用于知识库或推理任务 |
/config | 配置键值对 | 动态修改当前会话的模型参数 |
/status | 无 | 查看当前智能体状态与资源使用情况 |
/help | 无 | 显示可用命令列表 |
命令示例
写作任务
/writer "请为我们的新产品撰写一份宣传文案,突出其 AI 驱动的个性化推荐功能。"
研究任务
/research "2025 年最值得关注的 AI 模型趋势"
代码生成
/code "用 Python 实现一个异步 HTTP 客户端,支持重试机制"
任务规划
/plan "准备一场线上发布会,包括策划、宣传、技术测试和直播流程"
摘要
/summarize https://example.com/article-long
翻译
/translate "The future of AI is bright." en->zh
动态配置
/config model=gpt-4o-mini temperature=0.3 max_tokens=1024
状态检查
/status
高级功能
多轮对话上下文
斜杠命令支持上下文记忆。连续发送多个命令时,系统会自动维护对话历史。
/writer "写一段关于气候变化的开头"
→ 回复:[文章开头]
/writer "接着写第二段,强调政策干预的重要性"
→ 回复:[续写段落]
附件处理
支持上传文件(如 PDF、Word、Markdown)并结合命令处理:
/research @report.pdf
系统将自动解析文件内容,并基于其进行研究。
快捷别名
可通过配置定义命令别名,例如:
{
"aliases": {
"w": "/writer",
"r": "/research",
"c": "/code"
}
}
然后可使用:
/w "生成一个登录页面的 HTML 代码"
三、配置与自定义
全局配置文件 (config.json)
{
"default_agent": "writer-agent",
"platforms": [
"telegram",
"discord",
"slack",
"wechat"
],
"models": {
"gpt-4o": { "provider": "openai", "api_key": "sk-..." },
"nous-hermes-3": { "provider": "openrouter", "api_key": "or-" }
},
"command_aliases": {
"w": "/writer",
"r": "/research"
}
}
环境变量
| 变量 | 说明 |
|---|---|
HERMES_API_KEY | 主 API 密钥(OpenAI/OpenRouter) |
HERMES_CONFIG_PATH | 自定义配置路径 |
HERMES_DEBUG | 开启调试日志(true/false) |
HERMES_PLATFORMS | 启用的消息平台(逗号分隔) |
四、开发者扩展
自定义智能体注册
通过 agents/ 目录添加新智能体,需实现以下接口:
interface Agent {
name: string;
description: string;
execute(input: string): Promise<string>;
supportsContext?: boolean;
}
斜杠命令插件开发
创建插件目录 plugins/slash-commands/,实现命令处理器:
export default class WriterCommand {
command = '/writer';
async handle(message: string) {
return await this.agent.execute(message);
}
}
五、常见问题
Q: 为什么某些命令不响应?
- 检查是否已正确启用对应平台。
- 确保 API 密钥有效且有足够额度。
- 查看日志输出(启用
--debug模式)。
Q: 如何限制某个智能体的使用权限?
在配置中设置:
"restricted_agents": ["code-agent"],
"allowed_users": ["@alice", "@bob"]
Q: 是否支持中文命令?
是的,所有命令均支持中文输入。例如:
/写作 "写一篇关于量子计算的文章"
/研究 "大模型的伦理挑战"
六、参考资源
- 官方文档:https://docs.hermes-agent.io
- GitHub 仓库:https://github.com/hermes-agent/hermes-agent
- 社区论坛:https://community.agentskills.io
- 模型提供商集成指南:
- OpenAI: https://platform.openai.com/docs
- OpenRouter: https://openrouter.ai/docs
- Nous Research: https://portal.nousresearch.com
✅ 提示:建议使用
hermes-cli进行本地调试,再部署到生产环境。
📌 推荐使用config.json管理多环境配置,避免硬编码密钥。
文档版本:v1.2.0 | 最后更新:2025-04-05"
斜杠命令参考
Hermes 具有两个斜杠命令界面,均由 COMMAND_REGISTRY 驱动,该组件位于 hermes_cli/commands.py 中:
- 交互式 CLI 斜杠命令 —— 由
cli.py触发,支持从注册表中获取自动补全 - 消息平台斜杠命令 —— 由
gateway/run.py触发,帮助文本和平台菜单由注册表生成
已安装的技能也会在两个界面上以动态斜杠命令的形式暴露。这包括内置技能如 /plan,该命令会启动计划模式,并将 Markdown 计划文件保存至相对于当前工作区/后端工作目录的 .hermes/plans/ 路径下。
交互式 CLI 斜杠命令
在 CLI 中输入 / 以打开自动补全菜单。内置命令不区分大小写。
会话管理
| 命令 | 说明 |
|---|---|
/new(别名:/reset) | 启动新会话(生成新的会话 ID 和历史记录) |
/clear | 清屏并启动新会话 |
/history | 显示对话历史 |
/save | 保存当前对话 |
/retry | 重试上一条消息(重新发送给代理) |
/undo | 移除最后一条用户/助手对话条目 |
/title | 为当前会话设置标题(用法:/title 我的会话名称) |
/compress | 手动压缩对话上下文(清空记忆并摘要) |
/rollback | 列出或恢复文件系统检查点(用法:/rollback [数字]) |
/stop | 终止所有正在运行的后台进程 |
/queue <prompt>(别名:/q) | 将提示排队至下一回合(不会中断当前代理响应)。注意: /q 被 /queue 和 /quit 共享;最终注册者胜出,因此实际中 /q 解析为 /quit。请显式使用 /queue。 |
/resume [name] | 恢复之前命名的会话 |
/statusbar(别名:/sb) | 开启或关闭上下文/模型状态栏显示 |
/background <prompt>(别名:/bg) | 在独立后台会话中运行提示。代理将独立处理您的提示——您当前的会话保持空闲,可用于其他任务。任务完成后结果将以面板形式出现。详见 CLI 后台会话。 |
/btw <question> | 使用会话上下文进行临时旁问(不使用工具,不持久化)。适用于快速澄清问题,且不影响对话历史。 |
/plan [request] | 加载内置的 plan 技能,用于编写 Markdown 计划而非执行任务。计划文件将保存至相对于当前工作区/后端工作目录的 .hermes/plans/ 路径下。 |
/branch [name](别名:/fork) | 分支当前会话(探索不同路径) |
配置管理
| 命令 | 说明 |
|---|---|
/config | 显示当前配置 |
/model [model-name] | 显示或更改当前模型。支持:/model claude-sonnet-4、/model provider:model(切换提供商)、/model custom:model(自定义端点)、/model custom:name:model(命名自定义提供商)、/model custom(自动检测来自端点) |
/provider | 显示可用提供商及当前所用提供商 |
/personality | 设置预设人格 |
/verbose | 循环切换工具进度显示:关闭 → 新增 → 全部 → 详细。可通过配置在消息平台中启用。 |
/reasoning | 管理推理努力程度与显示方式(用法:/reasoning [级别|show|hide]) |
/skin | 显示或更改显示主题/皮肤 |
/voice [on|off|tts|status] | 切换 CLI 语音模式及语音播放功能。录音使用 voice.record_key(默认:Ctrl+B)。 |
/yolo | 切换 YOLO 模式——跳过所有危险命令的确认提示。 |
工具与技能
| 命令 | 说明 |
|---|---|
/tools [list|disable|enable] [name...] | 管理工具:列出可用工具,或禁用/启用特定工具。禁用工具会将其从代理工具集中移除,并触发会话重置。 |
/toolsets | 列出可用工具集 |
/browser [connect|disconnect|status] | 管理本地 Chrome CDP 连接。connect 将浏览器工具连接到正在运行的 Chrome 实例(默认:ws://localhost:9222)。disconnect 断开连接。status 显示当前连接状态。若未检测到调试器,则自动启动 Chrome。 |
/skills | 从在线注册表中搜索、安装、检查或管理技能 |
/cron | 管理定时任务(列出、添加/创建、编辑、暂停、恢复、运行、删除) |
/reload-mcp(别名:/reload_mcp) | 从 config.yaml 重新加载 MCP 服务器 |
/plugins | 列出已安装插件及其状态 |
信息查询
| 命令 | 说明 |
|---|---|
/help | 显示此帮助信息 |
/usage | 显示 token 使用情况、费用明细及会话时长 |
/insights | 显示使用洞察与分析数据(最近 30 天) |
/platforms(别名:/gateway) | 显示网关/消息平台状态 |
/paste | 检查剪贴板中是否有图片并附加 |
/profile | 显示当前活动的配置文件名称及主目录路径 |
退出操作
| 命令 | 说明 |
|---|---|
/quit | 退出 CLI(也可使用 /exit)。参见上方 /q 的注意事项。 |
动态 CLI 斜杠命令
| 命令 | 说明 |
|---|---|
/<skill-name> | 将任意已安装技能作为按需命令加载。例如:/gif-search、/github-pr-workflow、/excalidraw。 |
/skills ... | 从注册表和官方可选技能目录中搜索、浏览、检查、安装、审计、发布和配置技能。 |
快捷命令
用户自定义的快捷命令将短别名映射到较长的提示内容。可在 ~/.hermes/config.yaml 中进行配置:
quick_commands:
review: "Review my latest git diff and suggest improvements"
deploy: "Run the deployment script at scripts/deploy.sh and verify the output"
morning: "Check my calendar, unread emails, and summarize today's priorities"
然后在 CLI 中输入 /review、/deploy 或 /morning。快捷命令在分派时解析,不会出现在内置自动补全/帮助表格中。
别名解析规则
命令支持前缀匹配:输入 /h 会解析为 /help,/mod 会解析为 /model。当某个前缀存在歧义(匹配多个命令)时,按注册顺序取第一个匹配项。完整命令名和已注册别名始终优先于前缀匹配。
消息平台斜杠命令
消息网关支持以下内置命令,可在 Telegram、Discord、Slack、WhatsApp、Signal、Email 及 Home Assistant 聊天中使用:| 命令 | 说明 |
|------|------|
| /new | 开始新对话。 |
| /reset | 重置对话历史记录。 |
| /status | 显示会话信息。 |
| /stop | 终止所有正在运行的后台进程并中断当前运行的代理。 |
| /model [provider:model] | 显示或更改所用模型。支持切换服务商(/model zai:glm-5)、自定义端点(/model custom:model)、命名自定义服务商(/model custom:local:qwen)以及自动检测(/model custom)。 |
| /provider | 显示服务商可用性及认证状态。 |
| /personality [name] | 为当前会话设置个性叠加层。 |
| /retry | 重试上一条消息。 |
| /undo | 删除最后一条对话交换。 |
| /sethome(别名:/set-home) | 将当前聊天标记为平台主通道,用于接收交付内容。 |
| /compress | 手动压缩对话上下文。 |
| /title [name] | 设置或显示会话标题。 |
| /resume [name] | 恢复之前命名的会话。 |
| /usage | 显示令牌使用情况、估算费用明细(输入/输出)、上下文窗口状态和会话持续时间。 |
| /insights [days] | 显示使用分析数据。 |
| /reasoning [level\|show\|hide] | 更改推理强度或切换推理显示模式。 |
| /voice [on\|off\|tts\|join\|channel\|leave\|status] | 控制聊天中的语音回复。join/channel/leave 用于管理 Discord 语音频道模式。 |
| /rollback [number] | 列出或恢复文件系统检查点。 |
| /background <prompt> | 在独立后台会话中运行一个提示。任务完成后,结果将返回到同一聊天中。详见 消息后台会话。 |
| /plan [request] | 加载内置的 plan 技能,以编写 Markdown 计划而非直接执行任务。计划将保存在相对于当前工作区/后端工作目录的 .hermes/plans/ 路径下。 |
| /reload-mcp(别名:/reload_mcp) | 从配置重新加载 MCP 服务器。 |
| /yolo | 切换 YOLO 模式——跳过所有危险命令的确认提示。 |
| /commands [page] | 列出所有命令与技能(分页显示)。 |
| /approve [session\|always] | 批准并执行待处理的危险命令。session 仅对当前会话生效;always 将其添加至永久允许列表。 |
| /deny | 拒绝待处理的危险命令。 |
| /update | 更新 Hermes Agent 至最新版本。 |
| /help | 显示消息帮助。 |
| /<skill-name> | 通过名称调用任意已安装的技能。 |
注意事项
/skin、/tools、/toolsets、/browser、/config、/cron、/skills、/platforms、/paste、/statusbar和/plugins为 仅 CLI 命令。/verbose默认为 仅 CLI 命令,但可通过在config.yaml中设置display.tool_progress_command: true启用其在消息平台上的功能。启用后,该命令将循环切换display.tool_progress模式,并保存至配置文件。/status、/sethome、/update、/approve、/deny和/commands为 仅消息平台命令。/background、/voice、/reload-mcp、/rollback和/yolo在 CLI 和消息网关 中均有效。/voice join、/voice channel和/voice leave仅在 Discord 上有意义。