hermes - 💡(How to fix) Fix [Feature Request] 统一敏感操作的批准机制 - 从 /approve 迁移到可视化菜单 [1 participants]

Official PRs (…)
ON THIS PAGE

Recommended Tools

×6

Utilities matched from this issue’s tags and category — try them while you read without losing context.

GitHub issue graph ai analysis

Paste a GitHub issue URL. We fetch that issue, discover linked issues from bodies/comments/timeline, collect linked pull requests, and produce a structured English report.

The report is written in English Markdown for sharing and archival.

Helpful · Quick feedback

Loading…
GitHub stats
NousResearch/hermes-agent#14120Fetched 2026-04-23 07:46:41
View on GitHub
Comments
0
Participants
1
Timeline
5
Reactions
0
Participants
Timeline (top)
labeled ×5

Code Example

用户:/model glm-4-7-251222
→ 系统弹出可视化菜单:
   [Allow Once] [Session] [Always] [Deny]

用户:创建一个定时任务
→ 系统弹出可视化菜单:
   [Allow Once] [Session] [Always] [Deny]

---

/approve --session
RAW_BUFFERClick to expand / collapse

问题概述

Hermes 目前存在两种不同的批准机制,导致用户体验不一致:

操作当前机制用户体验
python3 -c "..."自动弹出可视化菜单✅ 直观,点按钮即可
/model 切换模型需要手动输入 /approve❌ 麻烦,容易输错
cronjob 创建任务需要手动输入 /approve❌ 麻烦,容易输错

用户更倾向于统一的可视化菜单式确认。


技术背景

1️⃣ 可视化菜单式(推荐)

触发条件:工具级别的安全检查

特性说明
级别工具调用级别(Hermes 框架层)
触发方式框架自动检测危险命令标志
典型场景python3 -cbash -c、修改系统关键文件
确认方式点击按钮
选项Allow Once / Session / Always / Deny
可配置性支持 Session/Always 永久记住

优势:

  • 统一、自动、可配置
  • 用户体验一致
  • 支持永久记住选择

2️⃣ 命令式 /approve(当前状态)

触发条件:业务级别的敏感操作

特性说明
级别业务逻辑级别(技能/插件逻辑层)
触发方式开发者手动在代码中写确认逻辑
典型场景创建/删除 cron job、创建/删除技能、修改配置文件
确认方式在聊天中输入 /approve
选项/approve
可配置性每次都需要确认

问题:

  • 分散、手动、每次确认
  • 用户体验不一致
  • 容易输错命令

理想状态

所有敏感操作都应该走统一的可视化菜单:

用户:/model glm-4-7-251222
→ 系统弹出可视化菜单:
   [Allow Once] [Session] [Always] [Deny]

用户:创建一个定时任务
→ 系统弹出可视化菜单:
   [Allow Once] [Session] [Always] [Deny]

建议的解决方案

短期方案(用户端)

如果经常需要输入 /approve,可以用 Session 模式:

/approve --session

长期方案(框架端)

建议 Hermes 开发者:

  1. 统一抽象层

    • 提取"敏感操作确认"的通用机制
    • 让业务逻辑层也能调用框架的自动菜单
  2. 重构现有命令

    • /model 使用统一菜单
    • cronjob 使用统一菜单
    • 其他敏感操作跟进
  3. 向后兼容

    • 保留 /approve 命令(脚本自动化需要)
    • 但默认行为改为弹出菜单

相关文件

  • Hermes 配置:/opt/data/config.yaml
  • 命令文档:skill_view('hermes-agent')

创建时间: 2026-04-22 状态: 📝 待反馈给 Hermes 维护者

extent analysis

TL;DR

统一敏感操作的确认机制,使用可视化菜单式确认,替代手动输入 /approve 命令。

Guidance

  1. 短期方案: 用户可以使用 Session 模式,输入 /approve --session 以避免频繁输入 /approve 命令。
  2. 长期方案: Hermes 开发者应统一抽象层,提取"敏感操作确认"的通用机制,让业务逻辑层也能调用框架的自动菜单。
  3. 重构现有命令: 将 /modelcronjob 等敏感操作命令改为使用统一菜单式确认。
  4. 向后兼容: 保留 /approve 命令,但默认行为改为弹出菜单,以兼容脚本自动化的需求。

Example

# 示例:使用统一菜单式确认的敏感操作
def sensitive_operation():
    # 触发统一菜单式确认
    confirm_menu = ["Allow Once", "Session", "Always", "Deny"]
    # 用户选择后,继续执行操作
    if user_choice == "Allow Once":
        # 执行操作
        pass

Notes

  • 需要 Hermes 开发者的配合,统一抽象层和重构现有命令。
  • 向后兼容是必要的,以确保脚本自动化的正常运行。

Recommendation

Apply workaround:使用短期方案,用户可以使用 Session 模式,输入 /approve --session 以避免频繁输入 /approve 命令。同时,Hermes 开发者应尽快实施长期方案,统一敏感操作的确认机制。

Vote matrix · Quick signals

Works
Did the solution work? Tap to confirm.
Easy Fix
Was it a quick fix?
Time Saver
Did it save you time?
Blocking
Was it severely blocking?
Common Issue
Are others likely hitting this too?
Flaky / Intermittent
Is it intermittent?
Verified / Reproducible
Can you reproduce it reliably?
Loading…

Still need to ship something?

×6

Another batch ranked right after the header list — different links, same matching logic.

Back to top recommendations

TRENDING

hermes - 💡(How to fix) Fix [Feature Request] 统一敏感操作的批准机制 - 从 /approve 迁移到可视化菜单 [1 participants]