Module: Observ

Defined in:
app/presenters/observ/agent_select_presenter.rb,
lib/observ.rb,
lib/observ/engine.rb,
lib/observ/version.rb,
app/models/observ/span.rb,
app/models/observ/score.rb,
app/models/observ/trace.rb,
lib/observ/asset_syncer.rb,
app/models/observ/prompt.rb,
lib/observ/configuration.rb,
app/models/observ/dataset.rb,
app/models/observ/session.rb,
lib/observ/asset_installer.rb,
app/models/observ/embedding.rb,
app/forms/observ/prompt_form.rb,
app/models/observ/annotation.rb,
app/models/observ/generation.rb,
app/models/observ/moderation.rb,
app/models/observ/dataset_run.rb,
app/models/observ/null_prompt.rb,
app/models/observ/observation.rb,
app/models/observ/review_item.rb,
app/models/observ/dataset_item.rb,
app/helpers/observ/chats_helper.rb,
app/jobs/observ/application_job.rb,
app/models/observ/transcription.rb,
lib/observ/index_file_generator.rb,
app/helpers/observ/prompts_helper.rb,
app/helpers/observ/reviews_helper.rb,
app/helpers/observ/datasets_helper.rb,
app/helpers/observ/markdown_helper.rb,
app/jobs/observ/dataset_runner_job.rb,
app/models/observ/dataset_run_item.rb,
app/models/observ/image_generation.rb,
app/services/observ/agent_provider.rb,
app/services/observ/prompt_manager.rb,
app/helpers/observ/dashboard_helper.rb,
app/helpers/observ/pagination_helper.rb,
app/models/concerns/observ/scoreable.rb,
app/models/observ/application_record.rb,
app/helpers/observ/application_helper.rb,
app/mailers/observ/application_mailer.rb,
app/models/concerns/observ/reviewable.rb,
app/services/observ/chat_instrumenter.rb,
app/services/observ/guardrail_service.rb,
app/controllers/observ/chats_controller.rb,
app/controllers/observ/scores_controller.rb,
app/controllers/observ/traces_controller.rb,
app/jobs/observ/moderation_guardrail_job.rb,
app/services/observ/trace_text_formatter.rb,
app/controllers/observ/prompts_controller.rb,
app/models/concerns/observ/json_queryable.rb,
app/controllers/observ/datasets_controller.rb,
app/controllers/observ/messages_controller.rb,
app/controllers/observ/sessions_controller.rb,
app/models/concerns/observ/agent_phaseable.rb,
app/services/observ/agent_executor_service.rb,
app/services/observ/dataset_runner_service.rb,
app/services/observ/embedding_instrumenter.rb,
app/services/observ/prompt_manager/caching.rb,
app/controllers/observ/dashboard_controller.rb,
app/models/concerns/observ/agent_selectable.rb,
app/services/observ/agent_selection_service.rb,
app/services/observ/moderation_instrumenter.rb,
app/models/concerns/observ/chat_enhancements.rb,
app/models/concerns/observ/prompt_management.rb,
app/models/concerns/observ/trace_association.rb,
app/services/observ/evaluator_runner_service.rb,
app/controllers/observ/annotations_controller.rb,
app/controllers/observ/application_controller.rb,
app/services/observ/evaluators/base_evaluator.rb,
app/services/observ/prompt_manager/comparison.rb,
app/validators/observ/prompt_config_validator.rb,
app/controllers/observ/dataset_runs_controller.rb,
app/controllers/observ/observations_controller.rb,
app/controllers/observ/review_queue_controller.rb,
app/services/observ/transcription_instrumenter.rb,
app/controllers/observ/dataset_items_controller.rb,
app/models/concerns/observ/message_enhancements.rb,
app/services/observ/concerns/observable_service.rb,
lib/generators/observ/install/install_generator.rb,
app/services/observ/moderation_guardrail_service.rb,
app/controllers/observ/prompt_versions_controller.rb,
app/services/observ/evaluators/contains_evaluator.rb,
app/services/observ/image_generation_instrumenter.rb,
app/controllers/observ/dataset_run_items_controller.rb,
app/services/observ/prompt_manager/cache_statistics.rb,
app/services/observ/evaluators/exact_match_evaluator.rb,
app/services/observ/prompt_manager/version_management.rb,
app/services/observ/evaluators/json_structure_evaluator.rb,
app/models/concerns/observ/observability_instrumentation.rb,
lib/generators/observ/install_chat/install_chat_generator.rb,
lib/generators/observ/add_phase_tracking/add_phase_tracking_generator.rb

Overview

Presenter for agent selection in the Observ domain

This presenter receives agents via dependency injection and formats them for display in select dropdowns. It has NO knowledge of:

- How agents are discovered
- Where agent files are located
- The BaseAgent class hierarchy

It only knows about the AgentSelectable interface that agents must implement.

Usage with dependency injection (recommended):

agents = Observ::AgentProvider.all_agents
presenter = Observ::AgentSelectPresenter.new(agents: agents)
presenter.options
# => [["Default Agent", ""], ["Deep Research", "DeepResearchAgent"], ...]

Usage with convenience class method:

Observ::AgentSelectPresenter.options
# => [["Default Agent", ""], ["Deep Research", "DeepResearchAgent"], ...]

Defined Under Namespace

Modules: AgentPhaseable, AgentSelectable, ApplicationHelper, ChatEnhancements, ChatsHelper, Concerns, DashboardHelper, DatasetsHelper, Evaluators, Generators, JsonQueryable, MarkdownHelper, MessageEnhancements, ObservabilityInstrumentation, PaginationHelper, PromptManagement, PromptsHelper, Reviewable, ReviewsHelper, Scoreable, TraceAssociation Classes: AgentExecutorService, AgentProvider, AgentSelectPresenter, AgentSelectionService, Annotation, AnnotationsController, ApplicationController, ApplicationJob, ApplicationMailer, ApplicationRecord, AssetInstaller, AssetSyncer, ChatInstrumenter, ChatsController, Configuration, DashboardController, Dataset, DatasetItem, DatasetItemsController, DatasetRun, DatasetRunItem, DatasetRunItemsController, DatasetRunnerJob, DatasetRunnerService, DatasetRunsController, DatasetsController, Embedding, EmbeddingInstrumenter, Engine, EvaluatorRunnerService, Generation, GuardrailService, ImageGeneration, ImageGenerationInstrumenter, IndexFileGenerator, MessagesController, Moderation, ModerationGuardrailJob, ModerationGuardrailService, ModerationInstrumenter, NullPrompt, Observation, ObservationsController, Prompt, PromptConfigValidator, PromptForm, PromptManager, PromptNotFoundError, PromptVersionsController, PromptsController, ReviewItem, ReviewQueueController, Score, ScoresController, Session, SessionsController, Span, StateTransitionError, Trace, TraceTextFormatter, TracesController, Transcription, TranscriptionInstrumenter, VariableSubstitutionError

Constant Summary collapse

VERSION =
"0.6.9"

Class Attribute Summary collapse

Class Method Summary collapse

Class Attribute Details

.configurationObject

Returns the value of attribute configuration.



15
16
17
# File 'lib/observ.rb', line 15

def configuration
  @configuration
end

Class Method Details

.configObject



23
24
25
# File 'lib/observ.rb', line 23

def self.config
  self.configuration ||= Configuration.new
end

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

Yields:



18
19
20
21
# File 'lib/observ.rb', line 18

def self.configure
  self.configuration ||= Configuration.new
  yield(configuration)
end