Module: AIA
- Defined in:
- lib/aia.rb,
lib/aia/config.rb,
lib/aia/errors.rb,
lib/aia/logger.rb,
lib/aia/session.rb,
lib/aia/utility.rb,
lib/aia/version.rb,
lib/aia/chat_loop.rb,
lib/aia/directive.rb,
lib/aia/skill_utils.rb,
lib/aia/ui_presenter.rb,
lib/aia/prompt_handler.rb,
lib/aia/history_manager.rb,
lib/aia/input_collector.rb,
lib/aia/prompt_pipeline.rb,
lib/aia/config/validator.rb,
lib/aia/ruby_llm_adapter.rb,
lib/aia/config/cli_parser.rb,
lib/aia/config/mcp_parser.rb,
lib/aia/config/model_spec.rb,
lib/aia/adapter/tool_filter.rb,
lib/aia/adapter/tool_loader.rb,
lib/aia/directive_processor.rb,
lib/aia/adapter/error_handler.rb,
lib/aia/adapter/gem_activator.rb,
lib/aia/adapter/mcp_connector.rb,
lib/aia/adapter/chat_execution.rb,
lib/aia/adapter/model_registry.rb,
lib/aia/chat_processor_service.rb,
lib/aia/adapter/multi_model_chat.rb,
lib/aia/adapter/modality_handlers.rb,
lib/aia/directives/model_directives.rb,
lib/aia/adapter/provider_configurator.rb,
lib/aia/directives/context_directives.rb,
lib/aia/directives/utility_directives.rb,
lib/aia/directives/execution_directives.rb,
lib/aia/directives/web_and_file_directives.rb,
lib/aia/directives/configuration_directives.rb
Overview
lib/aia/directives/configuration_directives.rb
Defined Under Namespace
Modules: Adapter, CLIParser, ConfigValidator, LoggerManager, McpParser, SkillUtils
Classes: AdapterError, ChatLoop, ChatProcessorService, Config, ConfigurationDirectives, ConfigurationError, ContextDirectives, Directive, DirectiveError, DirectiveProcessor, Error, ExecutionDirectives, Fzf, HistoryManager, InputCollector, MCPError, ModelDirectives, ModelSpec, PromptError, PromptHandler, PromptPipeline, RubyLLMAdapter, Session, ToolError, UIPresenter, Utility, UtilityDirectives, WebAndFileDirectives
Constant Summary
collapse
- ConfigSection =
Backward compatibility alias — existing code and tests reference AIA::ConfigSection
MywayConfig::ConfigSection
- VERSION =
The VERSION constant defines the current version of the AIA application, which is read from the .version file in the project root.
File.read(File.join(File.dirname(__FILE__), '..', '..', '.version')).strip
Class Attribute Summary collapse
Class Method Summary
collapse
Class Attribute Details
.client ⇒ Object
Returns the value of attribute client.
62
63
64
|
# File 'lib/aia.rb', line 62
def client
@client
end
|
.config ⇒ Object
Returns the value of attribute config.
62
63
64
|
# File 'lib/aia.rb', line 62
def config
@config
end
|
Class Method Details
.append? ⇒ Boolean
102
103
104
|
# File 'lib/aia.rb', line 102
def append?
@config&.output&.append == true
end
|
.bad_file?(filename) ⇒ Boolean
71
72
73
|
# File 'lib/aia.rb', line 71
def bad_file?(filename)
!good_file?(filename)
end
|
.chat? ⇒ Boolean
Convenience flag accessors (delegate to config.flags section)
77
78
79
|
# File 'lib/aia.rb', line 77
def chat?
@config&.flags&.chat == true
end
|
.debug? ⇒ Boolean
82
83
84
|
# File 'lib/aia.rb', line 82
def debug?
@config&.flags&.debug == true
end
|
.fuzzy? ⇒ Boolean
92
93
94
|
# File 'lib/aia.rb', line 92
def fuzzy?
@config&.flags&.fuzzy == true
end
|
.good_file?(filename) ⇒ Boolean
64
65
66
67
68
|
# File 'lib/aia.rb', line 64
def good_file?(filename)
File.exist?(filename) &&
File.readable?(filename) &&
!File.directory?(filename)
end
|
.run ⇒ Object
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
|
# File 'lib/aia.rb', line 107
def run
cli_overrides = CLIParser.parse
@config = Config.setup(cli_overrides)
ConfigValidator.tailor(@config)
if @config.flags.fuzzy
begin
if system('which fzf >/dev/null 2>&1')
require_relative 'aia/fzf'
else
warn 'Warning: Fuzzy search enabled but fzf not found. Install fzf for enhanced search capabilities.'
end
rescue StandardError => e
warn "Warning: Failed to load fzf: #{e.message}"
end
end
prompt_handler = PromptHandler.new
@client = RubyLLMAdapter.new
session = Session.new(prompt_handler)
session.start
end
|
.speak? ⇒ Boolean
97
98
99
|
# File 'lib/aia.rb', line 97
def speak?
@config&.flags&.speak == true
end
|
.verbose? ⇒ Boolean
87
88
89
|
# File 'lib/aia.rb', line 87
def verbose?
@config&.flags&.verbose == true
end
|