aia 0.9.11 → 0.9.12

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 (61) hide show
  1. checksums.yaml +4 -4
  2. data/.version +1 -1
  3. data/CHANGELOG.md +66 -2
  4. data/README.md +133 -4
  5. data/docs/advanced-prompting.md +721 -0
  6. data/docs/cli-reference.md +582 -0
  7. data/docs/configuration.md +347 -0
  8. data/docs/contributing.md +332 -0
  9. data/docs/directives-reference.md +490 -0
  10. data/docs/examples/index.md +277 -0
  11. data/docs/examples/mcp/index.md +479 -0
  12. data/docs/examples/prompts/analysis/index.md +78 -0
  13. data/docs/examples/prompts/automation/index.md +108 -0
  14. data/docs/examples/prompts/development/index.md +125 -0
  15. data/docs/examples/prompts/index.md +333 -0
  16. data/docs/examples/prompts/learning/index.md +127 -0
  17. data/docs/examples/prompts/writing/index.md +62 -0
  18. data/docs/examples/tools/index.md +292 -0
  19. data/docs/faq.md +414 -0
  20. data/docs/guides/available-models.md +366 -0
  21. data/docs/guides/basic-usage.md +477 -0
  22. data/docs/guides/chat.md +474 -0
  23. data/docs/guides/executable-prompts.md +417 -0
  24. data/docs/guides/first-prompt.md +454 -0
  25. data/docs/guides/getting-started.md +455 -0
  26. data/docs/guides/image-generation.md +507 -0
  27. data/docs/guides/index.md +46 -0
  28. data/docs/guides/models.md +507 -0
  29. data/docs/guides/tools.md +856 -0
  30. data/docs/index.md +173 -0
  31. data/docs/installation.md +238 -0
  32. data/docs/mcp-integration.md +612 -0
  33. data/docs/prompt_management.md +579 -0
  34. data/docs/security.md +629 -0
  35. data/docs/tools-and-mcp-examples.md +1186 -0
  36. data/docs/workflows-and-pipelines.md +563 -0
  37. data/examples/tools/mcp/github_mcp_server.json +11 -0
  38. data/examples/tools/mcp/imcp.json +7 -0
  39. data/lib/aia/chat_processor_service.rb +19 -3
  40. data/lib/aia/config/base.rb +224 -0
  41. data/lib/aia/config/cli_parser.rb +409 -0
  42. data/lib/aia/config/defaults.rb +88 -0
  43. data/lib/aia/config/file_loader.rb +131 -0
  44. data/lib/aia/config/validator.rb +184 -0
  45. data/lib/aia/config.rb +10 -860
  46. data/lib/aia/directive_processor.rb +27 -372
  47. data/lib/aia/directives/configuration.rb +114 -0
  48. data/lib/aia/directives/execution.rb +37 -0
  49. data/lib/aia/directives/models.rb +178 -0
  50. data/lib/aia/directives/registry.rb +120 -0
  51. data/lib/aia/directives/utility.rb +70 -0
  52. data/lib/aia/directives/web_and_file.rb +71 -0
  53. data/lib/aia/prompt_handler.rb +23 -3
  54. data/lib/aia/ruby_llm_adapter.rb +307 -128
  55. data/lib/aia/session.rb +27 -14
  56. data/lib/aia/utility.rb +12 -8
  57. data/lib/aia.rb +11 -2
  58. data/lib/extensions/ruby_llm/.irbrc +56 -0
  59. data/mkdocs.yml +165 -0
  60. metadata +77 -20
  61. /data/{images → docs/assets/images}/aia.png +0 -0
@@ -0,0 +1,507 @@
1
+ # Image Generation
2
+
3
+ AIA supports AI-powered image generation through various models, enabling you to create images from text descriptions, modify existing images, and integrate visual content generation into your workflows.
4
+
5
+ ## Supported Models
6
+
7
+ ### DALL-E Models (OpenAI)
8
+ - **DALL-E 3**: Latest and most capable image generation model
9
+ - **DALL-E 2**: Previous generation, still available and capable
10
+
11
+ ### Image Model Capabilities
12
+ ```bash
13
+ # Check available image generation models
14
+ aia --available_models text_to_image
15
+
16
+ # Example output:
17
+ # - dall-e-3 (openai) text to image
18
+ # - dall-e-2 (openai) text to image
19
+ ```
20
+
21
+ ## Basic Image Generation
22
+
23
+ ### Simple Image Generation
24
+ ```bash
25
+ # Generate an image with default settings
26
+ aia --model dall-e-3 "A serene mountain lake at sunset"
27
+
28
+ # Generate with specific size
29
+ aia --model dall-e-3 --image_size 1024x1024 "Modern office workspace"
30
+
31
+ # Generate with quality settings
32
+ aia --model dall-e-3 --image_quality hd "Professional headshot"
33
+ ```
34
+
35
+ ### Image Configuration Options
36
+
37
+ #### Image Size (`--image_size`, `--is`)
38
+ ```bash
39
+ # Square formats
40
+ aia --image_size 1024x1024 "Square image prompt"
41
+ aia --is 512x512 "Smaller square image"
42
+
43
+ # Landscape formats
44
+ aia --image_size 1792x1024 "Wide landscape image"
45
+ aia --is 1344x768 "Medium landscape"
46
+
47
+ # Portrait formats
48
+ aia --image_size 1024x1792 "Tall portrait image"
49
+ aia --is 768x1344 "Medium portrait"
50
+ ```
51
+
52
+ **Available sizes**:
53
+ - Square: `256x256`, `512x512`, `1024x1024`
54
+ - Landscape: `1792x1024`, `1344x768`
55
+ - Portrait: `1024x1792`, `768x1344`
56
+
57
+ #### Image Quality (`--image_quality`, `--iq`)
58
+ ```bash
59
+ # Standard quality (faster, less expensive)
60
+ aia --image_quality standard "Quick concept image"
61
+
62
+ # HD quality (better detail, more expensive)
63
+ aia --image_quality hd "High-quality marketing image"
64
+ aia --iq hd "Detailed technical diagram"
65
+ ```
66
+
67
+ **Quality options**:
68
+ - `standard`: Good quality, faster generation, lower cost
69
+ - `hd`: Enhanced detail and resolution, slower, higher cost
70
+
71
+ #### Image Style (`--style`, `--image_style`)
72
+ ```bash
73
+ # Vivid style (hyper-real, dramatic colors)
74
+ aia --image_style vivid "Dramatic sunset over city skyline"
75
+
76
+ # Natural style (more natural, less stylized)
77
+ aia --image_style natural "Realistic portrait of a person reading"
78
+ aia --style natural "Documentary-style photograph"
79
+ ```
80
+
81
+ **Style options**:
82
+ - `vivid`: Hyper-real and dramatic images
83
+ - `natural`: More natural, less stylized results
84
+
85
+ ## Advanced Image Generation
86
+
87
+ ### Using Prompts for Image Generation
88
+ Create reusable image generation prompts:
89
+
90
+ ```markdown
91
+ # ~/.prompts/product_photography.txt
92
+ //config model dall-e-3
93
+ //config image_size 1024x1024
94
+ //config image_quality hd
95
+ //config image_style natural
96
+
97
+ # Product Photography Generator
98
+
99
+ Generate a professional product photograph of: <%= product %>
100
+
101
+ Style requirements:
102
+ - Clean, minimalist background
103
+ - Professional lighting
104
+ - Commercial photography style
105
+ - <%= lighting || "Soft, even lighting" %>
106
+ - <%= background || "White background" %>
107
+
108
+ Additional specifications:
109
+ - Angle: <%= angle || "45-degree angle" %>
110
+ - Context: <%= context || "Isolated product shot" %>
111
+ - Mood: <%= mood || "Clean and professional" %>
112
+ ```
113
+
114
+ ```bash
115
+ # Use the prompt
116
+ aia product_photography --product "wireless headphones" --lighting "dramatic side lighting"
117
+ ```
118
+
119
+ ### Complex Image Descriptions
120
+ ```markdown
121
+ # ~/.prompts/detailed_scene.txt
122
+ //config model dall-e-3
123
+ //config image_size 1792x1024
124
+ //config image_quality hd
125
+ //config image_style vivid
126
+
127
+ # Detailed Scene Generator
128
+
129
+ Create a detailed image of: <%= scene_type %>
130
+
131
+ ## Visual Elements:
132
+ - Setting: <%= setting %>
133
+ - Time of day: <%= time_of_day || "golden hour" %>
134
+ - Weather: <%= weather || "clear" %>
135
+ - Color palette: <%= colors || "warm and inviting" %>
136
+
137
+ ## Composition:
138
+ - Perspective: <%= perspective || "eye level" %>
139
+ - Focal point: <%= focal_point %>
140
+ - Depth of field: <%= depth || "shallow depth of field" %>
141
+
142
+ ## Style and Mood:
143
+ - Art style: <%= art_style || "photorealistic" %>
144
+ - Mood: <%= mood || "peaceful and serene" %>
145
+ - Technical quality: <%= quality || "professional photography" %>
146
+
147
+ Generate a <%= scene_type %> scene with <%= focal_point %> as the main subject,
148
+ set in <%= setting %> during <%= time_of_day %>.
149
+ ```
150
+
151
+ ### Image Series Generation
152
+ ```ruby
153
+ # ~/.prompts/image_series.txt
154
+ //config model dall-e-3
155
+ //config image_size 1024x1024
156
+
157
+ # Image Series Generator
158
+
159
+ //ruby
160
+ series_theme = '<%= theme %>'
161
+ variations = ['<%= var1 %>', '<%= var2 %>', '<%= var3 %>']
162
+ base_prompt = '<%= base_description %>'
163
+
164
+ puts "Generating #{variations.length} variations of #{series_theme}:"
165
+ puts
166
+
167
+ variations.each_with_index do |variation, index|
168
+ puts "## Image #{index + 1}: #{variation.capitalize}"
169
+ puts "#{base_prompt} featuring #{variation}."
170
+ puts "Style: Consistent with series theme of #{series_theme}"
171
+ puts
172
+ end
173
+ ```
174
+
175
+ ```bash
176
+ # Generate a series
177
+ aia image_series \
178
+ --theme "modern architecture" \
179
+ --base_description "Professional architectural photograph" \
180
+ --var1 "glass and steel skyscraper" \
181
+ --var2 "minimalist residential house" \
182
+ --var3 "contemporary office building"
183
+ ```
184
+
185
+ ## Image Generation Workflows
186
+
187
+ ### Marketing Asset Pipeline
188
+ ```markdown
189
+ # ~/.prompts/marketing_pipeline.txt
190
+ //pipeline concept_image,hero_image,detail_shots,social_media_variants
191
+
192
+ # Marketing Asset Generation Pipeline
193
+
194
+ Product: <%= product_name %>
195
+ Brand style: <%= brand_style || "modern and clean" %>
196
+ Target audience: <%= audience || "professionals" %>
197
+
198
+ ## Stage 1: Concept Image
199
+ //config model dall-e-3
200
+ //config image_size 1024x1024
201
+ //config image_style natural
202
+
203
+ Generate initial concept image for <%= product_name %>:
204
+ - Style: <%= brand_style %>
205
+ - Context: Product introduction
206
+ - Purpose: Initial concept validation
207
+
208
+ //next hero_image
209
+ ```
210
+
211
+ ### Creative Workflow
212
+ ```markdown
213
+ # ~/.prompts/creative_workflow.txt
214
+ //config model dall-e-3
215
+ //config image_quality hd
216
+ //config image_style vivid
217
+
218
+ # Creative Image Workflow
219
+
220
+ Theme: <%= creative_theme %>
221
+ Artistic direction: <%= art_direction %>
222
+
223
+ ## Brainstorming Phase
224
+ Generate 3 conceptual variations of <%= creative_theme %>:
225
+
226
+ 1. **Abstract interpretation**: Focus on mood and emotion
227
+ 2. **Realistic approach**: Photographic, detailed representation
228
+ 3. **Stylized version**: Artistic, illustrative style
229
+
230
+ Each image should embody <%= art_direction %> while exploring different artistic approaches.
231
+ ```
232
+
233
+ ## Integration with Other AIA Features
234
+
235
+ ### Image Generation in Chat Mode
236
+ ```bash
237
+ # Start chat with image generation capability
238
+ aia --chat --model dall-e-3
239
+
240
+ You: Generate an image of a cozy coffee shop interior
241
+ AI: I'll create that image for you...
242
+
243
+ You: Now make it more modern and minimalist
244
+ AI: Here's a more modern version...
245
+
246
+ You: Can you create a series showing different times of day?
247
+ AI: I'll generate morning, afternoon, and evening versions...
248
+ ```
249
+
250
+ ### Combining Text and Image Generation
251
+ ```markdown
252
+ # ~/.prompts/content_with_visuals.txt
253
+ //config model gpt-4
254
+
255
+ # Content + Visuals Generator
256
+
257
+ Topic: <%= topic %>
258
+
259
+ ## Step 1: Generate Written Content
260
+ Create comprehensive content about <%= topic %>:
261
+ - Introduction and overview
262
+ - Key concepts and explanations
263
+ - Practical applications
264
+ - Conclusion and takeaways
265
+
266
+ ## Step 2: Identify Visual Opportunities
267
+ Based on the content, suggest 3-5 images that would enhance understanding:
268
+ - Conceptual illustrations
269
+ - Diagrams or infographics
270
+ - Real-world examples
271
+ - Supporting visuals
272
+
273
+ ## Step 3: Generate Image Prompts
274
+ For each suggested visual, provide detailed DALL-E prompts that would create appropriate images.
275
+
276
+ //next generate_supporting_images
277
+ ```
278
+
279
+ ### Technical Documentation with Visuals
280
+ ```markdown
281
+ # ~/.prompts/technical_docs_with_images.txt
282
+ //config model gpt-4
283
+
284
+ # Technical Documentation with Visual Aids
285
+
286
+ System/Process: <%= system_name %>
287
+
288
+ ## Documentation Phase
289
+ Create technical documentation for <%= system_name %> including:
290
+ - Architecture overview
291
+ - Process flows
292
+ - Component relationships
293
+ - User interfaces
294
+
295
+ ## Visual Requirements Analysis
296
+ Identify diagrams and illustrations needed:
297
+ - System architecture diagrams
298
+ - Process flow charts
299
+ - UI mockups
300
+ - Component diagrams
301
+
302
+ ## Image Generation Specifications
303
+ For each identified visual need, create detailed prompts for:
304
+ - Technical diagram style
305
+ - Professional color schemes
306
+ - Appropriate level of detail
307
+ - Consistent visual language
308
+
309
+ //next technical_image_generation
310
+ ```
311
+
312
+ ## Best Practices for Image Generation
313
+
314
+ ### Effective Prompt Writing
315
+
316
+ #### Be Specific and Detailed
317
+ ```bash
318
+ # Vague prompt (poor results)
319
+ aia --model dall-e-3 "office space"
320
+
321
+ # Detailed prompt (better results)
322
+ aia --model dall-e-3 "Modern open-plan office with floor-to-ceiling windows, ergonomic furniture, plants, natural lighting, clean minimal aesthetic, professional photography style"
323
+ ```
324
+
325
+ #### Use Style and Technical Terms
326
+ ```bash
327
+ # Include photography terms
328
+ aia --model dall-e-3 "Portrait with shallow depth of field, golden hour lighting, 85mm lens perspective"
329
+
330
+ # Include art style references
331
+ aia --model dall-e-3 "Landscape in the style of landscape photography, dramatic sky, wide angle lens, HDR processing"
332
+ ```
333
+
334
+ #### Specify Composition Elements
335
+ ```bash
336
+ # Composition guidance
337
+ aia --model dall-e-3 "Centered composition, symmetrical balance, rule of thirds, leading lines toward focal point"
338
+ ```
339
+
340
+ ### Quality Optimization
341
+
342
+ #### Resolution and Size Selection
343
+ ```bash
344
+ # Choose size based on use case
345
+ aia --image_size 1792x1024 "Website hero image" # Landscape
346
+ aia --image_size 1024x1792 "Mobile app screenshot" # Portrait
347
+ aia --image_size 1024x1024 "Social media post" # Square
348
+ ```
349
+
350
+ #### Quality vs. Cost Balance
351
+ ```bash
352
+ # Standard for concepts/drafts
353
+ aia --image_quality standard "Initial concept image"
354
+
355
+ # HD for final/published images
356
+ aia --image_quality hd "Final marketing image"
357
+ ```
358
+
359
+ ### Iterative Refinement
360
+ ```bash
361
+ # Generate initial concept
362
+ aia --model dall-e-3 --out_file concept_v1.png "Modern kitchen design"
363
+
364
+ # Refine based on results
365
+ aia --model dall-e-3 --out_file concept_v2.png "Modern kitchen with marble countertops, pendant lighting, minimalist cabinets"
366
+
367
+ # Final version with specific details
368
+ aia --model dall-e-3 --image_quality hd --out_file final_kitchen.png "Ultra-modern kitchen with white marble waterfall countertops, brass pendant lights, handleless cabinets, large island, professional photography"
369
+ ```
370
+
371
+ ## Troubleshooting Image Generation
372
+
373
+ ### Common Issues
374
+
375
+ #### Content Policy Violations
376
+ ```
377
+ Error: Your request was rejected as a result of our safety system.
378
+ ```
379
+ **Solution**: Revise prompt to avoid:
380
+ - Inappropriate content
381
+ - Copyrighted material references
382
+ - Specific person names (unless historical figures)
383
+
384
+ #### Unclear or Generic Results
385
+ **Problem**: Generated images are too generic or don't match expectations
386
+
387
+ **Solutions**:
388
+ ```bash
389
+ # Add more specific details
390
+ aia --model dall-e-3 "Specific, detailed description with style, lighting, and composition details"
391
+
392
+ # Use technical photography terms
393
+ aia --model dall-e-3 "Subject photographed with 50mm lens, f/2.8, natural lighting, professional studio setup"
394
+ ```
395
+
396
+ #### Size/Quality Issues
397
+ **Problem**: Images are not the right dimensions or quality
398
+
399
+ **Solutions**:
400
+ ```bash
401
+ # Specify exact requirements
402
+ aia --model dall-e-3 --image_size 1792x1024 --image_quality hd "Detailed prompt"
403
+
404
+ # Match use case to settings
405
+ aia --is 1024x1024 --iq standard "Social media post" # Standard for social media
406
+ aia --is 1792x1024 --iq hd "Website banner" # HD for web headers
407
+ ```
408
+
409
+ ### Performance Optimization
410
+
411
+ #### Batch Generation
412
+ ```ruby
413
+ # Generate multiple related images
414
+ //ruby
415
+ concepts = ['<%= concept1 %>', '<%= concept2 %>', '<%= concept3 %>']
416
+ base_style = '<%= base_style %>'
417
+
418
+ concepts.each_with_index do |concept, index|
419
+ puts "\n## Image #{index + 1}: #{concept}"
420
+ puts "#{base_style} featuring #{concept}"
421
+ end
422
+ ```
423
+
424
+ #### Cost Management
425
+ ```bash
426
+ # Use standard quality for iterations
427
+ aia --image_quality standard "Draft version for review"
428
+
429
+ # Use HD only for finals
430
+ aia --image_quality hd "Final approved concept"
431
+ ```
432
+
433
+ ## Integration Examples
434
+
435
+ ### Blog Post with Custom Images
436
+ ```markdown
437
+ # ~/.prompts/illustrated_blog.txt
438
+ //config model gpt-4
439
+
440
+ # Illustrated Blog Post Generator
441
+
442
+ Topic: <%= blog_topic %>
443
+ Target audience: <%= audience %>
444
+
445
+ ## Content Creation
446
+ Write a comprehensive blog post about <%= blog_topic %> for <%= audience %>:
447
+ - Engaging introduction
448
+ - 3-4 main sections with subheadings
449
+ - Practical examples and tips
450
+ - Compelling conclusion
451
+
452
+ ## Visual Content Planning
453
+ For each main section, identify opportunities for custom images:
454
+ - Hero image for the post
455
+ - Illustrative images for key concepts
456
+ - Supporting visuals for examples
457
+
458
+ ## Image Generation Prompts
459
+ Create detailed DALL-E prompts for each identified visual:
460
+ - Consistent style across all images
461
+ - Professional quality specifications
462
+ - Appropriate for <%= audience %>
463
+ - Enhances the written content
464
+
465
+ //next generate_blog_images
466
+ ```
467
+
468
+ ### Product Documentation
469
+ ```markdown
470
+ # ~/.prompts/product_docs_visual.txt
471
+ //pipeline analyze_product,create_documentation,identify_visuals,generate_images
472
+
473
+ # Product Documentation with Visuals
474
+
475
+ Product: <%= product_name %>
476
+ Documentation type: <%= doc_type %>
477
+
478
+ ## Phase 1: Product Analysis
479
+ Analyze <%= product_name %> to understand:
480
+ - Key features and benefits
481
+ - User interface elements
482
+ - Use cases and workflows
483
+ - Target user needs
484
+
485
+ ## Phase 2: Visual Requirements
486
+ Identify images needed for effective documentation:
487
+ - Product screenshots/mockups
488
+ - Feature highlight images
489
+ - User workflow diagrams
490
+ - Conceptual illustrations
491
+
492
+ //config model dall-e-3
493
+ //config image_quality hd
494
+ //config image_style natural
495
+ ```
496
+
497
+ ## Related Documentation
498
+
499
+ - [Working with Models](models.md) - Model selection and configuration
500
+ - [CLI Reference](../cli-reference.md) - Image generation command options
501
+ - [Advanced Prompting](../advanced-prompting.md) - Complex image generation techniques
502
+ - [Chat Mode](chat.md) - Interactive image generation
503
+ - [Workflows and Pipelines](../workflows-and-pipelines.md) - Image generation workflows
504
+
505
+ ---
506
+
507
+ Image generation opens up new creative possibilities with AIA. Experiment with different prompts, styles, and configurations to create compelling visual content for your projects!
@@ -0,0 +1,46 @@
1
+ # Guides
2
+
3
+ Welcome to the AIA guides section! These comprehensive guides will help you master all aspects of using AIA effectively.
4
+
5
+ ## Getting Started
6
+
7
+ - [Getting Started](getting-started.md) - Your first steps with AIA
8
+ - [Basic Usage Patterns](basic-usage.md) - Common ways to use AIA
9
+ - [Your First Prompt](first-prompt.md) - Create and run your first prompt
10
+
11
+ ## Core Features
12
+
13
+ - [Chat Mode](chat.md) - Interactive conversations with AI models
14
+ - [Working with Models](models.md) - Multi-model support and configuration
15
+ - [Available Models](available-models.md) - Complete list of supported AI models
16
+ - [Image Generation](image-generation.md) - Generate images with AI
17
+ - [Tools Integration](tools.md) - Extend AIA with custom Ruby tools
18
+
19
+ ## Advanced Topics
20
+
21
+ - [Prompt Management](../prompt_management.md) - Organize and manage your prompts
22
+ - [Advanced Prompting](../advanced-prompting.md) - Master complex prompt techniques
23
+ - [Workflows & Pipelines](../workflows-and-pipelines.md) - Chain prompts for complex tasks
24
+ - [MCP Integration](../mcp-integration.md) - Use Model Context Protocol clients
25
+
26
+ ## Examples and Use Cases
27
+
28
+ - [Tools & MCP Examples](../tools-and-mcp-examples.md) - Practical examples
29
+ - [Code Examples](../examples/index.md) - Browse example prompts, tools, and configurations
30
+
31
+ ## Reference
32
+
33
+ - [CLI Parameters](../cli-reference.md) - Complete command-line reference
34
+ - [Directives Reference](../directives-reference.md) - All available prompt directives
35
+ - [Configuration](../configuration.md) - Complete configuration guide
36
+
37
+ ## Tips and Best Practices
38
+
39
+ Each guide includes:
40
+ - Step-by-step instructions
41
+ - Code examples
42
+ - Best practices
43
+ - Troubleshooting tips
44
+ - Links to related topics
45
+
46
+ Choose a guide that matches your current needs, or start with [Getting Started](getting-started.md) if you're new to AIA.