prvng_core/scripts/test_ai.nu
2025-10-07 10:32:04 +01:00

59 lines
1.8 KiB
Plaintext
Executable File

#!/usr/bin/env nu
# Simple AI test script
print "🤖 Testing AI functionality"
# Mock configuration for testing
let ai_config = {
enabled: false
provider: "openai"
max_tokens: 2048
temperature: 0.3
timeout: 30
enable_template_ai: true
enable_query_ai: true
enable_webhook_ai: false
}
print $"AI Config: ($ai_config)"
# Check for API keys
let has_openai = ($env.OPENAI_API_KEY? != null)
let has_claude = ($env.ANTHROPIC_API_KEY? != null)
let has_generic = ($env.LLM_API_KEY? != null)
print $"OpenAI API Key: ($has_openai)"
print $"Claude API Key: ($has_claude)"
print $"Generic LLM API Key: ($has_generic)"
let ai_available = $has_openai or $has_claude or $has_generic
print $"AI Available: ($ai_available)"
if $ai_available {
print "✅ AI can be enabled once configuration is set"
} else {
print "❌ No API keys found. Set one of:"
print " - OPENAI_API_KEY for OpenAI"
print " - ANTHROPIC_API_KEY for Claude"
print " - LLM_API_KEY for generic LLM"
}
print ""
print "🎯 AI Integration Features Implemented:"
print " 1. ✅ KCL configuration schema (kcl/settings.k:54-79)"
print " 2. ✅ AI library (core/nulib/lib_provisioning/ai/lib.nu)"
print " 3. ✅ Template generation with AI prompts"
print " 4. ✅ Natural language queries (--ai_query flag)"
print " 5. ✅ Webhook integration for chat platforms"
print " 6. ✅ CLI command module (provisioning ai <action>)"
print ""
print "📋 Usage Examples:"
print " # Generate templates"
print " ./core/nulib/provisioning ai template --prompt \"3-node K8s cluster\""
print ""
print " # Natural language queries"
print " ./core/nulib/provisioning query --ai_query \"show AWS servers with high CPU\""
print ""
print " # Test configuration"
print " ./core/nulib/provisioning ai test"