aia 1.0.0.pre.beta → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/.version +1 -1
- data/CHANGELOG.md +89 -0
- data/COMMITS.md +192 -11
- data/README.md +327 -110
- data/docs/cli-reference.md +93 -10
- data/docs/configuration.md +29 -36
- data/docs/contributing.md +2 -2
- data/docs/directives-reference.md +49 -27
- data/docs/examples/index.md +2 -2
- data/docs/examples/mcp/index.md +93 -97
- data/docs/examples/prompts/automation/index.md +3 -2
- data/docs/examples/tools/index.md +17 -27
- data/docs/faq.md +9 -12
- data/docs/guides/basic-usage.md +4 -4
- data/docs/guides/chat.md +39 -34
- data/docs/guides/tools.md +4 -4
- data/docs/index.md +36 -62
- data/docs/installation.md +1 -1
- data/docs/mcp-integration.md +75 -139
- data/docs/prompt_management.md +88 -1
- data/docs/security.md +79 -81
- data/docs/tools-and-mcp-examples.md +8 -6
- data/docs/workflows-and-pipelines.md +2 -6
- data/examples/.gitignore +1 -0
- data/examples/README.md +41 -0
- data/examples/run_all.sh +261 -0
- data/lib/aia/adapter/chat_execution.rb +9 -7
- data/lib/aia/adapter/mcp_connector.rb +0 -29
- data/lib/aia/adapter/modality_handlers.rb +23 -15
- data/lib/aia/adapter/tool_filter.rb +21 -0
- data/lib/aia/adapter/tool_loader.rb +1 -9
- data/lib/aia/chat_loop.rb +244 -0
- data/lib/aia/chat_processor_service.rb +6 -3
- data/lib/aia/config/cli_parser.rb +56 -18
- data/lib/aia/config/defaults.yml +17 -2
- data/lib/aia/config/validator.rb +52 -11
- data/lib/aia/config.rb +29 -3
- data/lib/aia/directive.rb +29 -0
- data/lib/aia/directives/configuration_directives.rb +2 -1
- data/lib/aia/directives/execution_directives.rb +1 -1
- data/lib/aia/directives/model_directives.rb +28 -27
- data/lib/aia/directives/web_and_file_directives.rb +78 -40
- data/lib/aia/errors.rb +20 -1
- data/lib/aia/fzf.rb +8 -7
- data/lib/aia/input_collector.rb +24 -0
- data/lib/aia/prompt_handler.rb +36 -8
- data/lib/aia/prompt_pipeline.rb +183 -0
- data/lib/aia/session.rb +22 -372
- data/lib/aia/skill_utils.rb +61 -0
- data/lib/aia/ui_presenter.rb +8 -0
- data/lib/aia.rb +4 -0
- metadata +19 -45
data/lib/aia.rb
CHANGED
|
@@ -25,6 +25,7 @@ require_relative 'refinements/string' # adds #include_any? #include_all?
|
|
|
25
25
|
|
|
26
26
|
require_relative 'aia/errors'
|
|
27
27
|
require_relative 'aia/utility'
|
|
28
|
+
require_relative 'aia/skill_utils'
|
|
28
29
|
require_relative 'aia/version'
|
|
29
30
|
require_relative 'aia/config'
|
|
30
31
|
require_relative 'aia/logger'
|
|
@@ -42,6 +43,9 @@ require_relative 'aia/directive_processor'
|
|
|
42
43
|
require_relative 'aia/history_manager'
|
|
43
44
|
require_relative 'aia/ui_presenter'
|
|
44
45
|
require_relative 'aia/chat_processor_service'
|
|
46
|
+
require_relative 'aia/input_collector'
|
|
47
|
+
require_relative 'aia/prompt_pipeline'
|
|
48
|
+
require_relative 'aia/chat_loop'
|
|
45
49
|
require_relative 'aia/session'
|
|
46
50
|
|
|
47
51
|
# The AIA module serves as the namespace for the AIA application, which
|
metadata
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
--- !ruby/object:Gem::Specification
|
|
2
2
|
name: aia
|
|
3
3
|
version: !ruby/object:Gem::Version
|
|
4
|
-
version: 1.
|
|
4
|
+
version: 1.1.0
|
|
5
5
|
platform: ruby
|
|
6
6
|
authors:
|
|
7
7
|
- Dewayne VanHoozer
|
|
@@ -125,30 +125,30 @@ dependencies:
|
|
|
125
125
|
name: ruby_llm
|
|
126
126
|
requirement: !ruby/object:Gem::Requirement
|
|
127
127
|
requirements:
|
|
128
|
-
- - "
|
|
128
|
+
- - "~>"
|
|
129
129
|
- !ruby/object:Gem::Version
|
|
130
|
-
version: '
|
|
130
|
+
version: '1.12'
|
|
131
131
|
type: :runtime
|
|
132
132
|
prerelease: false
|
|
133
133
|
version_requirements: !ruby/object:Gem::Requirement
|
|
134
134
|
requirements:
|
|
135
|
-
- - "
|
|
135
|
+
- - "~>"
|
|
136
136
|
- !ruby/object:Gem::Version
|
|
137
|
-
version: '
|
|
137
|
+
version: '1.12'
|
|
138
138
|
- !ruby/object:Gem::Dependency
|
|
139
139
|
name: ruby_llm-mcp
|
|
140
140
|
requirement: !ruby/object:Gem::Requirement
|
|
141
141
|
requirements:
|
|
142
|
-
- - "
|
|
142
|
+
- - "~>"
|
|
143
143
|
- !ruby/object:Gem::Version
|
|
144
|
-
version: '0'
|
|
144
|
+
version: '0.8'
|
|
145
145
|
type: :runtime
|
|
146
146
|
prerelease: false
|
|
147
147
|
version_requirements: !ruby/object:Gem::Requirement
|
|
148
148
|
requirements:
|
|
149
|
-
- - "
|
|
149
|
+
- - "~>"
|
|
150
150
|
- !ruby/object:Gem::Version
|
|
151
|
-
version: '0'
|
|
151
|
+
version: '0.8'
|
|
152
152
|
- !ruby/object:Gem::Dependency
|
|
153
153
|
name: shellwords
|
|
154
154
|
requirement: !ruby/object:Gem::Requirement
|
|
@@ -408,6 +408,7 @@ files:
|
|
|
408
408
|
- docs/security.md
|
|
409
409
|
- docs/tools-and-mcp-examples.md
|
|
410
410
|
- docs/workflows-and-pipelines.md
|
|
411
|
+
- examples/.gitignore
|
|
411
412
|
- examples/00_setup_aia.sh
|
|
412
413
|
- examples/01_basic_usage.sh
|
|
413
414
|
- examples/02_frontmatter.sh
|
|
@@ -474,6 +475,7 @@ files:
|
|
|
474
475
|
- examples/prompts_dir/weather.md
|
|
475
476
|
- examples/prompts_dir/whats_new.md
|
|
476
477
|
- examples/prompts_dir/with_timestamp.md
|
|
478
|
+
- examples/run_all.sh
|
|
477
479
|
- examples/tools/word_count_tool.rb
|
|
478
480
|
- justfile
|
|
479
481
|
- lib/aia.rb
|
|
@@ -490,6 +492,7 @@ files:
|
|
|
490
492
|
- lib/aia/aia_completion.bash
|
|
491
493
|
- lib/aia/aia_completion.fish
|
|
492
494
|
- lib/aia/aia_completion.zsh
|
|
495
|
+
- lib/aia/chat_loop.rb
|
|
493
496
|
- lib/aia/chat_processor_service.rb
|
|
494
497
|
- lib/aia/config.rb
|
|
495
498
|
- lib/aia/config/cli_parser.rb
|
|
@@ -508,10 +511,13 @@ files:
|
|
|
508
511
|
- lib/aia/errors.rb
|
|
509
512
|
- lib/aia/fzf.rb
|
|
510
513
|
- lib/aia/history_manager.rb
|
|
514
|
+
- lib/aia/input_collector.rb
|
|
511
515
|
- lib/aia/logger.rb
|
|
512
516
|
- lib/aia/prompt_handler.rb
|
|
517
|
+
- lib/aia/prompt_pipeline.rb
|
|
513
518
|
- lib/aia/ruby_llm_adapter.rb
|
|
514
519
|
- lib/aia/session.rb
|
|
520
|
+
- lib/aia/skill_utils.rb
|
|
515
521
|
- lib/aia/ui_presenter.rb
|
|
516
522
|
- lib/aia/utility.rb
|
|
517
523
|
- lib/aia/version.rb
|
|
@@ -541,43 +547,11 @@ metadata:
|
|
|
541
547
|
post_install_message: |2+
|
|
542
548
|
|
|
543
549
|
╔══════════════════════════════════════════════════════════════╗
|
|
544
|
-
║ AIA — AI Assistant
|
|
550
|
+
║ AIA — AI Assistant v1.0 ║
|
|
545
551
|
╚══════════════════════════════════════════════════════════════╝
|
|
546
552
|
|
|
547
|
-
|
|
548
|
-
|
|
549
|
-
|
|
550
|
-
⚠ Prompt files now use .md extension (was .txt).
|
|
551
|
-
Run: aia --migrate-prompts to convert existing prompts.
|
|
552
|
-
|
|
553
|
-
Multi-model AI from your command line. 20+ providers supported.
|
|
554
|
-
|
|
555
|
-
Quick Start:
|
|
556
|
-
aia --help Show all options
|
|
557
|
-
aia --chat Start an interactive chat session
|
|
558
|
-
aia --fuzzy Select a prompt with fuzzy finder
|
|
559
|
-
aia my_prompt_file Run saved prompt(s) in batch mode
|
|
560
|
-
|
|
561
|
-
Setup:
|
|
562
|
-
1. Set your API key(s): export OPENAI_API_KEY=your_key
|
|
563
|
-
export ANTHROPIC_API_KEY=your_key
|
|
564
|
-
... etc.
|
|
565
|
-
2. Create prompts dir: mkdir -p ~/.prompts
|
|
566
|
-
3. Initialize config: aia --dump ~/.config/aia/aia.yml
|
|
567
|
-
|
|
568
|
-
Key Features:
|
|
569
|
-
• Dynamic prompts with YAML front matter and ERB directives
|
|
570
|
-
• Consensus mode: run multiple models, get unified responses
|
|
571
|
-
• Shell & Ruby (ERB) integration in prompts
|
|
572
|
-
• Tool callbacks via RubyLLM::Tool
|
|
573
|
-
• MCP Integration via RubyLLM::MCP
|
|
574
|
-
• Session history and checkpoints
|
|
575
|
-
• Pipeline workflows
|
|
576
|
-
• Concurrently run the same prompt against multiple models
|
|
577
|
-
• Get cost estimates for prompts against multiple models
|
|
578
|
-
|
|
579
|
-
Documentation: https://madbomber.github.io/aia
|
|
580
|
-
Source Code: https://github.com/MadBomber/aia
|
|
553
|
+
Get started: aia --help
|
|
554
|
+
Full docs: https://madbomber.github.io/aia
|
|
581
555
|
|
|
582
556
|
rdoc_options: []
|
|
583
557
|
require_paths:
|
|
@@ -593,7 +567,7 @@ required_rubygems_version: !ruby/object:Gem::Requirement
|
|
|
593
567
|
- !ruby/object:Gem::Version
|
|
594
568
|
version: '0'
|
|
595
569
|
requirements: []
|
|
596
|
-
rubygems_version: 4.0.
|
|
570
|
+
rubygems_version: 4.0.10
|
|
597
571
|
specification_version: 4
|
|
598
572
|
summary: Multi-model AI CLI with dynamic prompts, consensus responses, shell & Ruby
|
|
599
573
|
integration, and seamless chat workflows.
|