You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何判断Origen当前运行的命令/操作?区分Pattern与Program生成场景

嘿,这个场景我太熟了!在Origen里要区分当前是在跑Pattern生成、Program运行还是其他命令,其实有几个内置的实用方法可以直接搞定,我给你一步步说清楚:

核心判断方法:Origen.running?

Origen专门提供了Origen.running?(command)这个方法,你只需要传入对应的命令名称,就能精准判断当前的执行场景,非常直观。

1. 判断是否处于Pattern生成流程

如果要检测当前是不是在生成Pattern,直接用下面的代码就行:

if Origen.running?(:generate)
  # 这里编写Pattern生成时的专属逻辑
end

或者你想用更贴合场景的命令名,也可以写成这样,效果完全一致:

if Origen.running?(:pattern)
  # Pattern生成场景的专属逻辑
end

2. 判断是否处于Program运行流程

要检测当前是不是在运行Program,直接传入:program参数即可:

if Origen.running?(:program)
  # 这里编写Program运行时的专属逻辑
end

3. 判断其他命令场景

如果需要判断是否在执行其他命令(比如仿真simulate、测试test等),只需要把对应的命令名传入方法就行:

if Origen.running?(:simulate)
  # 仿真流程的专属逻辑
end

额外小技巧:获取当前执行的命令详情

如果你想直接拿到当前正在执行的命令对象,以便做更灵活的判断,可以调用Origen.command,然后通过它的属性获取更多信息:

current_command = Origen.command
puts current_command.name       # 输出当前命令的名称,比如"generate"、"program"
puts current_command.namespace  # 如果命令属于某个命名空间,也能直接获取

内容的提问来源于stack exchange,提问作者Ginty

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.29 08:57:54