AgentScope 无人值守运行怎么选 BYPASS 还是 DONT_ASK 权限模式?

发布时间:2026/11/12 7:09:22

AgentScope 无人值守运行怎么选 BYPASS 还是 DONT_ASK 权限模式? AgentScope 无人值守运行怎么选 BYPASS 还是 DONT_ASK 权限模式【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscopeAgent 默认运行在DEFAULT权限模式下没有匹配 allow 规则的操作都会弹出交互式确认终端中形如[permission] Bash({command: ls})→allow? [y/N]见 examples/realtime/README.md。一旦把 agent 放到定时任务、后台流水线这类无人值守场景这些确认就会把执行卡死。AgentScope 的权限系统为这类场景提供了两个专用模式——BYPASS和DONT_ASK定义在 PermissionMode。两者策略正好相反BYPASS跳过安全检查直接放行DONT_ASK把所有需要询问的操作转成拒绝。本文说明两种模式的实际行为差异、配置方法和验证方式帮你在无人值守运行时做出选择。README 中的演示bypass 模式下 agent 端到端运行不会为工具调用确认而暂停。两种模式的行为差异以下行为全部可以在 tests/permission_mode_test.py 中找到对应的测试用例PermissionEngineBypassModeTest与PermissionEngineDontAskModeTest分别钉死了两个模式的判定结果操作BYPASS 的结果DONT_ASK 的结果无规则时的默认操作如 Bash 执行npm installALLOWDENY只读操作Read/Glob/Grep、git status等ALLOWALLOW工具自身发出的安全 ASK如rm -rf /、写~/.bashrc、命令注入模式跳过检查ALLOW转为DENY用户配置的 DENY 规则仍然生效bypass-immune仍然生效用户配置的 ASK 规则仍然返回ASK转为DENY用户配置的 ALLOW 规则生效生效工作目录working_directories内的文件写/编辑未单独说明自动ALLOW目录外为DENY几个关键点的源码依据BYPASS的 docstring 明确列出被跳过的安全检查包括rm -rf /、写入~/.bashrc、命令注入模式并提醒 Use deny rules to protect specific paths见 src/agentscope/permission/_types.py#L52-L59。测试test_bypass_skips_dangerous_removal确认rm -rf /在 BYPASS 下返回ALLOW而同样命令在 DONT_ASK 下被安全 ASK 捕获并转为DENYtest_dont_ask_bash_dangerous_command_returns_deny。BYPASS 只跳过安全 ASK不跳过你显式配置的规则test_bypass_deny_rule_returns_deny证明 DENY 规则在 BYPASS 下依旧拒绝test_bypass_ask_rule_returns_ask证明用户 ASK 规则在 BYPASS 下仍会要求确认。DONT_ASK 的不变式是绝不返回 ASK默认落点、ASK 规则命中、安全 ASK 三条产生 ASK 的路径全部转为DENY。转换后的 DENY 决策会保留原来的suggested_rules便于在定时任务失败报告等带外渠道展示给用户test_dont_ask_ask_rule_conversion_preserves_suggestions。只读操作在所有五个模式下都走同一条只读快速路径自动放行PermissionEngineReadOnlyConsistencyTest所以无人值守运行中 agent 自由读取文件、git status等不受影响。如何选择两种模式各自的适用场景直接写在PermissionMode的文档表中BYPASS沙箱环境容器、虚拟机或者你完全信任 agent 的无人值守运行。此时安全边界由沙箱本身提供权限检查只剩你显式配置的 deny/ask 规则和工具 DENY。DONT_ASK定时任务、用户不在场时的后台执行且仍然希望保留安全行为。BYPASS的文档原话是对于仍需要安全的无人值守运行优先用 DONT_ASKFor unattended runs that still need safety, prefer DONT_ASK。决策路径就一条运行环境是否已经隔离容器/VM并且你接受安全 ASK 全部不生效的后果。是——选 BYPASS用 deny 规则保护少数关键路径否——选 DONT_ASK只放行 allow 规则、只读操作和工作目录内的操作其余一律拒绝。DONT_ASK 同时是ACCEPT_EDITS的无人值守对应形态配置了working_directories后目录内的Write/Edit和文件系统 Bash 命令自动放行目录外拒绝test_dont_ask_edit_within_working_directory_allows、test_dont_ask_bash_filesystem_command_working_dir。配置权限模式模式通过PermissionContext挂到 agent 的AgentState上。examples/pipeline/goal/goal_pipeline.py 展示了BYPASS的完整用法——executor 和 verifier 两个 agent 都在LocalWorkspace里无人值守跑完任务from agentscope.state import AgentState from agentscope.permission import PermissionContext, PermissionMode executor Agent( nameExecutor, system_promptYoure a programmer named Executor., model..., toolkitToolkit(toolsawait workspace.list_tools()), stateAgentState( permission_contextPermissionContext( modePermissionMode.BYPASS, ), ), )选 DONT_ASK 时构造PermissionContext的方式相同mode换成PermissionMode.DONT_ASK如果希望目录内的写操作免审按 tests/permission_mode_test.py#L872-L881 的写法传入working_directoriesfrom agentscope.permission import ( PermissionContext, PermissionMode, AdditionalWorkingDirectory, ) context PermissionContext( modePermissionMode.DONT_ASK, working_directories{ /tmp/project: AdditionalWorkingDirectory( path/tmp/project, sourcetest, ), }, )如需保留显式规则BYPASS 下的 deny 防护、DONT_ASK 下的 allow 放行通过PermissionRule添加示例取自测试from agentscope.permission import PermissionRule, PermissionBehavior engine.add_rule( PermissionRule( tool_nameBash, rule_contentrm:*, behaviorPermissionBehavior.DENY, sourcetest, ), )规则匹配方式按工具类型区分见 src/agentscope/permission/_types.py#L5-L13Bash 工具用子串模式匹配命令Write/Read 等文件工具用 glob 匹配文件路径其他工具用通用匹配逻辑。验证模式是否按预期工作配置完成后不用真正跑一次完整 agent 任务可以直接用PermissionEngine离线验证判定结果——这正是tests/permission_mode_test.py的验证方法import asyncio from agentscope.permission import ( PermissionEngine, PermissionContext, PermissionMode, ) from agentscope.tool import Bash, Write async def main() - None: for mode in (PermissionMode.BYPASS, PermissionMode.DONT_ASK): engine PermissionEngine(PermissionContext(modemode)) # 无规则时的默认操作 d1 await engine.check_permission(Bash(), {command: npm install}) # 触发安全 ASK 的操作测试用例中的场景 d2 await engine.check_permission(Bash(), {command: rm -rf /}) d3 await engine.check_permission( Write(), {file_path: /home/user/.bashrc} ) print(mode.value, d1.behavior, d2.behavior, d3.behavior) asyncio.run(main())预期结果与测试断言一致Bash 相关用例要求非 Windows 平台测试中用sys.platform win32跳过BYPASS三项均为ALLOW——默认操作放行安全 ASK 被跳过DONT_ASK三项均为DENY其中d3.decision_reason会同时包含dont_ask与safety字样test_dont_ask_safety_ask_returns_deny的断言说明拒绝来自安全 ASK 被转换而不是普通规则。如果你的运行环境需要 agent 实际完成写文件等任务把对应的 allow 规则或working_directories加上后用同样的check_permission调用再核对一次判定即可。限制与边界BYPASS 下安全 ASK 完全不生效包括危险删除、危险配置路径rm ~/.bashrc经 Bash 执行、命令注入模式、对敏感文件的sedtest_bypass_skips_command_injection等。它唯一的护栏是你显式配置的 deny/ask 规则和工具 DENY——不要把 BYPASS 用在没有隔离的宿主机上。DONT_ASK 下 agent 永远不会弹确认但也不会静默完成被拒的操作ASK 规则命中与安全 ASK 都会变成DENY决策里保留suggested_rules供带外展示。只读操作Read/Glob/Grep、被识别的只读 Bash 命令在所有模式下自动放行这一跨模式不变式由PermissionEngineReadOnlyConsistencyTest锁定。环境要求见 README.mdPython 3.11 及以上uv pip install agentscope安装后即可使用上文的配置与验证代码。【免费下载链接】agentscopeBuild and run agents you can see, understand and trust.项目地址: https://gitcode.com/GitHub_Trending/ag/agentscope创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考
延伸阅读

更多相关文章

2026/11/12 7:04:26

云南电工证没有卡内部消息曝光,过期了还敢干电工吗?

云南电工证没有卡内部消息曝光,过期了还敢干电工吗? 证书过期了不知道怎么复审延期?最近不少云南电工朋友私信我,说自己的电工证到期了,但发现证书上没有卡,不知道是不是假证,也搞不清怎么操作。其实,这背后有个 内部消息…

2026/11/12 7:04:26

电工证科目一怎么考试,真实经历告诉你怎么拿下证书上岗找工作

电工证科目一怎么考试,真实经历告诉你怎么拿下证书上岗找工作 你是不是正在为找工作发愁?电工证科目一怎么考试?是不是听说没有证根本进不了工地、工厂?我当初也是这样,拿着简历跑了几家单位,人家一听我说没证,直接把我打发了。后来我才知道,电工证科…

2026/11/12 7:04:26

连云港办理电工证机构含金量高不高?证书过期了不知道怎么复审延期

连云港办理电工证机构含金量高不高?证书过期了不知道怎么复审延期 你是不是也遇到过这种情况,手里的电工证眼看就要到期了,却不知道该怎么复审延期,结果一拖再拖,证书成了摆设?这年头,特种作业证书含金量越来越高,但很多人却不懂得怎么维护它。今天就…

2026/11/12 7:04:26

电工作业证从哪里办理 在哪考能快速上岗

电工作业证从哪里办理 在哪考能快速上岗 你缺一张电工作业证,但不知道 电工作业证从哪里办理 ?现在就告诉你答案, 在哪考 、怎么考、能快速拿到证、还能顺利上岗,这都是咱们电工从业者最关心的事。 找工作、上岗、换工作, 特种作业证…

2026/11/12 6:59:26

LED安装要电工证么多久拿证才靠谱

LED安装要电工证么多久拿证才靠谱 怕考不过白交培训费,你不是一个人。现在LED安装工作越来越火,但很多人不知道,干这行 必须持有低压电工证…

2026/11/11 12:42:59

电工证丢失还能补吗?千万别踩坑,丢了证等于失业

电工证丢失还能补吗?千万别踩坑,丢了证等于失业 你正在找工作,但手里的电工证突然丢了,这下怎么办?别急,先别慌, 电工证丢失还能补吗 ?答案是肯定的,但 千万别踩坑 ,补办流程如果不了解,可能会耽误你上岗、甚至影响到你的收入。…

2026/11/12 0:04:01

工地太忙根本没时间复习考试?学习电工证到哪里学通过率揭秘

工地太忙根本没时间复习考试?学习电工证到哪里学通过率揭秘 工地太忙根本没时间复习考试?你不是一个人。作为一名在南阳卧龙区干了七八年市政公用工程的电工,我深知这个问题的现实性。电工证不仅是工作的“入场券”,更是职业发展的“通行证”,但备考过程…

2026/11/12 0:04:01

双流电工证考别怕挂科!郑州报考避坑指南全攻略

双流电工证考别怕挂科!郑州报考避坑指南全攻略 实操考试心里没底怕挂科?双流电工证考在郑州报名,很多人因为不了解流程、准备不充分,白白浪费时间和金钱。作为三门峡应届工程类毕业生,我也曾经历过这样的焦虑。今天就从零开始,手把手教你如何避开郑州报…

2026/11/12 0:04:01

之前考的证在外省能不能转过来 怎么报名考电工证培训价格多少

之前考的证在外省能不能转过来 怎么报名考电工证培训价格多少 之前考的证在外省能不能转过来?这个问题确实让不少准备换城市工作的朋友犯了难,尤其像电工证这种实操性很强的证书,很多人担心跨省后证书能不能继续用。其实,只要符合相关流程,是可以顺利转…

2026/11/11 20:27:01

面向复杂光照与角度的宠物面部识别鲁棒性增强策略

在智慧养宠时代,基于视觉的宠物身份识别技术正逐步从实验室走向家庭应用。然而,与配合度高的人类不同,宠物是典型的“非合作生物识别对象”——它们不会主动配合摄像头调整姿态,更无法控制光照环境。实际应用中,我们常…

2026/11/10 10:29:37

SSM电子书店源码全解析:结构、原理、部署与排错实战

/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …

还想了解更多?直接咨询顾问

免费诊断 + 免费方案 + 透明报价。

全国咨询热线400-8866-253
免费获取方案
☎咨询二维码 ☎ ↑