aia 0.5.18 → 0.8.1

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.
Files changed (50) hide show
  1. checksums.yaml +4 -4
  2. data/.envrc +1 -0
  3. data/.version +1 -1
  4. data/CHANGELOG.md +39 -5
  5. data/README.md +388 -219
  6. data/Rakefile +16 -5
  7. data/_notes.txt +231 -0
  8. data/bin/aia +3 -2
  9. data/examples/README.md +140 -0
  10. data/examples/headlines +21 -0
  11. data/lib/aia/ai_client_adapter.rb +210 -0
  12. data/lib/aia/chat_processor_service.rb +120 -0
  13. data/lib/aia/config.rb +473 -4
  14. data/lib/aia/context_manager.rb +58 -0
  15. data/lib/aia/directive_processor.rb +267 -0
  16. data/lib/aia/{tools/fzf.rb → fzf.rb} +9 -17
  17. data/lib/aia/history_manager.rb +85 -0
  18. data/lib/aia/prompt_handler.rb +178 -0
  19. data/lib/aia/session.rb +215 -0
  20. data/lib/aia/shell_command_executor.rb +109 -0
  21. data/lib/aia/ui_presenter.rb +110 -0
  22. data/lib/aia/utility.rb +24 -0
  23. data/lib/aia/version.rb +9 -6
  24. data/lib/aia.rb +57 -61
  25. data/lib/extensions/openstruct_merge.rb +44 -0
  26. metadata +29 -42
  27. data/LICENSE.txt +0 -21
  28. data/doc/aia_and_pre_compositional_prompts.md +0 -474
  29. data/lib/aia/clause.rb +0 -7
  30. data/lib/aia/cli.rb +0 -452
  31. data/lib/aia/directives.rb +0 -142
  32. data/lib/aia/dynamic_content.rb +0 -26
  33. data/lib/aia/logging.rb +0 -62
  34. data/lib/aia/main.rb +0 -265
  35. data/lib/aia/prompt.rb +0 -275
  36. data/lib/aia/tools/backend_common.rb +0 -58
  37. data/lib/aia/tools/client.rb +0 -197
  38. data/lib/aia/tools/editor.rb +0 -52
  39. data/lib/aia/tools/glow.rb +0 -90
  40. data/lib/aia/tools/llm.rb +0 -77
  41. data/lib/aia/tools/mods.rb +0 -100
  42. data/lib/aia/tools/sgpt.rb +0 -79
  43. data/lib/aia/tools/subl.rb +0 -68
  44. data/lib/aia/tools/vim.rb +0 -93
  45. data/lib/aia/tools.rb +0 -88
  46. data/lib/aia/user_query.rb +0 -21
  47. data/lib/core_ext/string_wrap.rb +0 -73
  48. data/lib/core_ext/tty-spinner_log.rb +0 -25
  49. data/man/aia.1 +0 -272
  50. data/man/aia.1.md +0 -236
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 299a84f02f8f0fd0d2d26e8dd0c371e22bf7b19330c858273731eae0a017b965
4
- data.tar.gz: 64a39d4045392d1e207e6e21714925cb9cf28c68dba92df8b516efff7525b57f
3
+ metadata.gz: 54144943e09896335df01ec5d720b7f753aa183e5a01eebc866f6272b45f937b
4
+ data.tar.gz: c345ed440cf3ebb81f6c63d984731fb169e3893b6094297c9ee635c3cff00c2b
5
5
  SHA512:
6
- metadata.gz: d687ba13fa6a323046fd592efa9697502ba2ababe06623814ada87a5df430809bb9e54cd7da5d82c24b49d09641e59d8c77f0ed70fd4d3ae63878d2beaacc283
7
- data.tar.gz: 2c5e3d861ec585231206a2e92a973100f1228f4eddbc5066782e0ace4a6bb76de2dd5530df9e29d87e9dd3b5aa82c03fb5002c83fda6c2b1272918d9ed3a04c4
6
+ metadata.gz: 4f293b0ec3c8e45c9e07783cd5f453cc05d64ca5b804c1ef662fd4b9f23f0cbdc3f603801b667adf406bc549a856c4ae973739115d5f35884a6df9f3c9fab1b2
7
+ data.tar.gz: 399e4581d7459a1df068a7cc739a05782bc159dabc7f5ac7f6bedf5e4a485ea4ebae709347dc0a791d1290e2bbffacf32615d7364f700eb8fae57840ef73eaf6
data/.envrc CHANGED
@@ -1 +1,2 @@
1
1
  export RR=`pwd`
2
+ # PATH_add $RR/bin
data/.version CHANGED
@@ -1 +1 @@
1
- 0.5.18
1
+ 0.8.1
data/CHANGELOG.md CHANGED
@@ -1,10 +1,44 @@
1
- ## Unreleased
2
-
3
- ### [0.5.18] 2024-10-26
4
- - updated dependencies; using prompt_manager v0.4.2
1
+ # Changelog
2
+ ## [Unreleased]
5
3
 
6
4
  ## Released
7
5
 
6
+ ### [0.8.0] WIP - 2025-04-15
7
+ - Updated PromptManager to v0.5.1 which has some of the functionality that was originally developed in the AIA.
8
+ - Enhanced README.md to include a comprehensive table of configuration options with defaults and associated environment variables.
9
+ - Added a note in README.md about the expandability of configuration options from a config file for dynamic prompt generation.
10
+ - Improved shell command protection by ensuring dangerous patterns are checked and confirmed before execution.
11
+ - Ensured version consistency across `.version`, `aia.gemspec`, and `lib/aia/version.rb`.
12
+ - Verified and updated documentation to ensure readiness for release on RubyGems.org.
13
+
14
+ ### [0.7.1] WIP - 2025-03-22
15
+ - Added `UIPresenter` class for handling user interface presentation.
16
+ - Added `DirectiveProcessor` class for processing chat-based directives.
17
+ - Added `HistoryManager` class for managing conversation and variable history.
18
+ - Added `ShellCommandExecutor` class for executing shell commands.
19
+ - Added `ChatProcessorService` class for managing conversation processing logic.
20
+ - Added `PromptProcessor` class for processing prompts.
21
+ - Enhanced `Session` class to manage interactive session logic.
22
+ - Updated `Config` class to handle new configuration options and defaults.
23
+ - Improved handling of chat prompts and AI interactions.
24
+ - Added support for dynamic content processing in prompts, including shell commands and ERB.
25
+ - Improved error handling and user feedback for directive processing.
26
+ - Enhanced logging and output options for chat sessions.
27
+
28
+ ### [0.7.0] WIP - 2025-03-17
29
+ - Major code refactoring for better organization and maintainability:
30
+ - Extracted `DirectiveProcessor` class to handle chat-based directives
31
+ - Extracted `HistoryManager` class for conversation and variable history management
32
+ - Extracted `UIPresenter` class for UI-related functionality
33
+ - Extracted `ChatProcessorService` class for prompt processing and AI interactions
34
+ - Significantly reduced complexity of the `Session` class by applying separation of concerns
35
+ - Enhanced the `//clear` directive to properly reset conversation context
36
+ - Improved output handling to suppress STDOUT when chat mode is off and output file is specified
37
+ - Updated spinner format in the process_prompt method for better user experience
38
+
39
+ ### [0.6.?] WIP
40
+ - Implemented Tony Stark's Clean Slate Protocol on the develop branch
41
+
8
42
  ### [0.5.17] 2024-05-17
9
43
  - removed replaced `semver` with `versionaire`
10
44
 
@@ -59,7 +93,7 @@
59
93
  - Adding processing for directives, shell integration and erb to the follow up prompt in a chat session
60
94
  - some code refactoring.
61
95
 
62
- ### [0.5.3] 2024-01-14
96
+ ## [0.5.3] 2024-01-14
63
97
  - adding ability to render markdown to the terminal using the "glow" CLI utility
64
98
 
65
99
  ### [0.5.2] 2024-01-13