Module: Ask::Agent

Defined in:
lib/ask/agent.rb,
lib/ask/agent/loop.rb,
lib/ask/agent/hooks.rb,
lib/ask/agent/events.rb,
lib/ask/agent/session.rb,
lib/ask/agent/version.rb,
lib/ask/agent/compactor.rb,
lib/ask/agent/reflector.rb,
lib/ask/agent/telemetry.rb,
lib/ask/agent/meta_agent.rb,
lib/ask/agent/configuration.rb,
lib/ask/agent/tool_executor.rb,
lib/ask/agent/persistence/base.rb,
lib/ask/agent/extensions/audit_log.rb,
lib/ask/agent/persistence/in_memory.rb,
lib/ask/agent/tool_abort_controller.rb,
lib/ask/agent/extensions/rate_limiter.rb,
lib/ask/agent/extensions/permission_gate.rb

Defined Under Namespace

Modules: Events, Extensions, Persistence Classes: Aborted, CompactionFailed, Compactor, Configuration, Error, Hooks, Loop, LoopDetected, MaxTurnsExceeded, MetaAgent, Reflector, Session, SessionNotPersisted, Telemetry, ToolAbortController, ToolExecutionError, ToolExecutor

Constant Summary collapse

VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.configurationObject



26
27
28
# File 'lib/ask/agent.rb', line 26

def configuration
  @configuration ||= Configuration.new
end

.configure {|configuration| ... } ⇒ Object

Yields:



30
31
32
# File 'lib/ask/agent.rb', line 30

def configure
  yield configuration
end

.load_extensionsObject



34
35
36
37
# File 'lib/ask/agent.rb', line 34

def load_extensions
  Dir[File.expand_path("agent/extensions/*.rb", __dir__)].each { |f| require f }
rescue Errno::ENOENT
end