Module: Phronomy::Agent

Defined in:
lib/phronomy/agent.rb,
lib/phronomy/agent/base.rb,
lib/phronomy/agent/runner.rb,
lib/phronomy/agent/immutable.rb,
lib/phronomy/agent/agent_root.rb,
lib/phronomy/agent/context_plan.rb,
lib/phronomy/agent/shared_state.rb,
lib/phronomy/agent/tool_executor.rb,
lib/phronomy/agent/context_policy.rb,
lib/phronomy/agent/journal_record.rb,
lib/phronomy/agent/agent_execution.rb,
lib/phronomy/agent/async_event_api.rb,
lib/phronomy/agent/context_request.rb,
lib/phronomy/agent/llm_call_record.rb,
lib/phronomy/agent/llm_input_patch.rb,
lib/phronomy/agent/tool_invocation.rb,
lib/phronomy/agent/agent_invocation.rb,
lib/phronomy/agent/context_importer.rb,
lib/phronomy/agent/context_assembler.rb,
lib/phronomy/agent/context_candidate.rb,
lib/phronomy/agent/journal_projection.rb,
lib/phronomy/agent/llm_input_manifest.rb,
lib/phronomy/agent/activation_registry.rb,
lib/phronomy/agent/concerns/filterable.rb,
lib/phronomy/agent/tool_definition_set.rb,
lib/phronomy/agent/derived_content_spec.rb,
lib/phronomy/agent/llm_operation_result.rb,
lib/phronomy/agent/execution_coordinator.rb,
lib/phronomy/agent/phase_machine_builder.rb,
lib/phronomy/agent/provider_call_outcome.rb,
lib/phronomy/agent/ruby_llm_materializer.rb,
lib/phronomy/agent/token_budget_resolver.rb,
lib/phronomy/agent/tool_approval_request.rb,
lib/phronomy/agent/tool_call_intercepted.rb,
lib/phronomy/agent/context_plan_validator.rb,
lib/phronomy/agent/context_selection_unit.rb,
lib/phronomy/agent/context/capability/base.rb,
lib/phronomy/agent/context_policy_registry.rb,
lib/phronomy/agent/llm_input_build_context.rb,
lib/phronomy/agent/context_policies/default.rb,
lib/phronomy/agent/concerns/before_llm_input.rb,
lib/phronomy/agent/context_policy_descriptor.rb,
lib/phronomy/agent/agent_execution_activation.rb,
lib/phronomy/agent/concerns/error_translation.rb,
lib/phronomy/agent/context_candidate_resolver.rb,
lib/phronomy/agent/approval_evaluation_request.rb,
lib/phronomy/agent/tool_invocation_session_builder.rb,
lib/phronomy/agent/agent_invocation_session_builder.rb,
lib/phronomy/agent/context/instruction/prompt_template.rb,
lib/phronomy/agent/context_parts/budget/token_budget_packer.rb,
lib/phronomy/agent/context_parts/selectors/recent_first_selector.rb,
lib/phronomy/agent/context_parts/validators/final_budget_validator.rb,
lib/phronomy/agent/context_parts/requirements/required_context_resolver.rb,
lib/phronomy/agent/context_parts/unit_builders/dependency_aware_unit_builder.rb

Defined Under Namespace

Modules: AsyncEventApi, Concerns, Context, ContextParts, ContextPolicies, Immutable, ToolExecutor Classes: ActivationRegistry, AgentExecution, AgentExecutionActivation, AgentInvocation, AgentInvocationSessionBuilder, AgentRoot, ApprovalEvaluationRequest, Base, ContextAssembler, ContextCandidate, ContextCandidateResolver, ContextImporter, ContextPlan, ContextPlanValidator, ContextPolicy, ContextPolicyDescriptor, ContextPolicyRegistry, ContextRequest, ContextSelectionUnit, DerivedContentSpec, ExecutionCoordinator, JournalProjection, JournalRecord, LLMCallRecord, LLMInputBuildContext, LLMInputManifest, LLMInputPatch, LLMOperationResult, PhaseMachineBuilder, ProviderCallOutcome, RubyLLMMaterializer, Runner, SharedState, StreamEvent, TokenBudgetResolver, ToolApprovalRequest, ToolCallIntercepted, ToolDefinitionSet, ToolInvocation, ToolInvocationSessionBuilder

Class Method Summary collapse

Class Method Details

.run_once(definition:, input:, context: nil, knowledge: [], **invoke_options) ⇒ Object



7
8
9
10
11
12
13
14
15
# File 'lib/phronomy/agent.rb', line 7

def self.run_once(definition:, input:, context: nil, knowledge: [], **invoke_options)
  persistence = Phronomy::Persistence::InMemory.new
  agent = definition.create(
    context: context,
    knowledge: knowledge,
    persistence: persistence
  )
  agent.invoke(input, **invoke_options)
end