Module: SentinelRb
- Defined in:
- lib/sentinel_rb.rb,
lib/sentinel_rb/cli.rb,
lib/sentinel_rb/client.rb,
lib/sentinel_rb/config.rb,
lib/sentinel_rb/report.rb,
lib/sentinel_rb/version.rb,
lib/sentinel_rb/analyzer.rb,
lib/sentinel_rb/client/base.rb,
lib/sentinel_rb/client/mock.rb,
lib/sentinel_rb/client/openai.rb,
lib/sentinel_rb/analyzers/base.rb,
lib/sentinel_rb/analyzers/few_shot_bias.rb,
lib/sentinel_rb/analyzers/misinformation.rb,
lib/sentinel_rb/analyzers/dangerous_tools.rb,
lib/sentinel_rb/analyzers/irrelevant_info.rb,
lib/sentinel_rb/analyzers/base_model_usage.rb
Defined Under Namespace
Modules: Analyzers, Client, Report Classes: Analyzer, CLI, Config, Error
Constant Summary collapse
- VERSION =
"0.1.0"
Class Method Summary collapse
-
.analyze(prompt_or_file, config: nil, **options) ⇒ Object
Main entry point for programmatic usage.
-
.analyze_files(pattern, config: nil, **options) ⇒ Object
Analyze multiple files matching a pattern.
-
.load_config(path = ".sentinel.yml") ⇒ Object
Load configuration from file.
Class Method Details
.analyze(prompt_or_file, config: nil, **options) ⇒ Object
Main entry point for programmatic usage
14 15 16 17 18 19 20 21 22 23 24 25 26 27 |
# File 'lib/sentinel_rb.rb', line 14 def self.analyze(prompt_or_file, config: nil, **) analyzer = Analyzer.new(config) if File.exist?(prompt_or_file.to_s) analyzer.analyze_file(prompt_or_file, **) else findings = analyzer.analyze_prompt(prompt_or_file.to_s, **) { content: prompt_or_file, findings: findings, analyzed_at: Time.now } end end |
.analyze_files(pattern, config: nil, **options) ⇒ Object
Analyze multiple files matching a pattern
30 31 32 33 |
# File 'lib/sentinel_rb.rb', line 30 def self.analyze_files(pattern, config: nil, **) analyzer = Analyzer.new(config) analyzer.analyze_files(pattern, **) end |
.load_config(path = ".sentinel.yml") ⇒ Object
Load configuration from file
36 37 38 |
# File 'lib/sentinel_rb.rb', line 36 def self.load_config(path = ".sentinel.yml") Config.load(path) end |