class Riffer::Rig::CLI::Flags
Constants
- BANNER
- HEADLESS_ONLY
Attributes
agents_md
[R]
bool
continue
[R]
bool
extensions
[R]
bool
headless
[R]
bool
help
[R]
bool
job_idle_timeout
[R]
Integer?
json
[R]
bool
max_steps
[R]
Integer?
model
[R]
String?
@dynamic model, reasoning, extensions, skills, agents_md, tools, max_steps, help, version @dynamic save, verbose, json, job_idle_timeout, headless, prompt, continue, resume
prompt
[R]
String?
reasoning
[R]
String?
resume
[R]
String?
save
[R]
bool
skills
[R]
bool
tools
[R]
Array[String]?
verbose
[R]
bool
version
[R]
bool
Public Class Methods
(?model: String?, ?reasoning: String?, ?extensions: bool, ?skills: bool, ?agents_md: bool, ?tools: Array[String]?, ?max_steps: Integer?, ?save: bool, ?verbose: bool, ?json: bool, ?job_idle_timeout: Integer?, ?headless: bool, ?prompt: String?, ?continue: bool, ?resume: String?, ?help: bool, ?version: bool) → void
Source
# File lib/riffer/rig/cli/flags.rb, line 143 def initialize( model: nil, reasoning: nil, extensions: true, skills: true, agents_md: true, tools: nil, max_steps: nil, save: true, verbose: false, json: false, job_idle_timeout: nil, headless: false, prompt: nil, continue: false, resume: nil, help: false, version: false ) @model = model @reasoning = reasoning @extensions = extensions @skills = skills @agents_md = agents_md @tools = tools&.freeze @max_steps = max_steps @save = save @verbose = verbose @json = json @job_idle_timeout = job_idle_timeout @headless = headless @prompt = prompt @continue = continue @resume = resume @help = help @version = version freeze end
@rbs model: String? @rbs reasoning: String? @rbs extensions: bool @rbs skills: bool @rbs agents_md: bool @rbs tools: Array? @rbs max_steps: Integer? @rbs save: bool @rbs verbose: bool @rbs json: bool @rbs job_idle_timeout: Integer? @rbs headless: bool @rbs prompt: String? @rbs continue: bool @rbs resume: String? @rbs help: bool @rbs version: bool @rbs return: void
(Array[String] argv) → (Riffer::Rig::CLI::Flags | String)
Source
# File lib/riffer/rig/cli/flags.rb, line 29 def self.parse(argv) values = {} #: Hash[Symbol, untyped] rest = parser.parse(argv, into: values) flags = assemble(values, rest.first) allowed = rest.empty? || (flags.headless && rest.size == 1) return "unexpected argument: #{rest.join(' ')}" unless allowed return 'missing argument: -r' if flags.headless && flags.resume == '' return "invalid argument: --max-steps #{flags.max_steps}" if flags.max_steps&.<(1) return "invalid argument: --job-idle-timeout #{flags.job_idle_timeout}" if flags.job_idle_timeout&.negative? stray = HEADLESS_ONLY.find { |key| values.key?(key) } unless flags.headless || flags.help || flags.version return "--#{stray} is only available with -p" if stray flags rescue OptionParser::ParseError => e e.message end
@rbs argv: Array @rbs return: Riffer::Rig::CLI::Flags | String
() → String
Source
# File lib/riffer/rig/cli/flags.rb, line 48 def self.usage parser.help end
@rbs return: String
Public Instance Methods
Source
# File lib/riffer/rig/cli/flags.rb, line 53 def to_options Riffer::Rig::Loader::Options.new( model: model, reasoning: reasoning, extensions: extensions, skills: skills, agents_md: agents_md, tools: tools, max_steps: max_steps ) end
@rbs return: Riffer::Rig::Loader::Options