@@ -238,20 +238,63 @@ function Invoke-ImportTests {
238238 Write-Host " ----------------------------------------"
239239
240240 $imports = @ (
241+ # Core CLI
241242 @ {Module = " gaia.cli" ; Desc = " CLI module" },
242- @ {Module = " gaia.chat.sdk" ; Desc = " Chat SDK" },
243- @ {Module = " gaia.llm" ; Desc = " LLM client" },
244- @ {Module = " gaia.agents.base.agent" ; Desc = " Base agent" }
243+
244+ # LLM Clients (test module and key exports)
245+ @ {Module = " gaia.llm" ; Desc = " LLM package" },
246+ @ {Import = " from gaia.llm import LLMClient" ; Desc = " LLM client class" },
247+ @ {Import = " from gaia.llm import VLMClient" ; Desc = " Vision LLM client" },
248+ @ {Import = " from gaia.llm import create_client" ; Desc = " LLM factory" },
249+
250+ # Chat SDK
251+ @ {Module = " gaia.chat.sdk" ; Desc = " Chat SDK module" },
252+ @ {Import = " from gaia.chat.sdk import ChatSDK" ; Desc = " Chat SDK class" },
253+ @ {Import = " from gaia.chat.sdk import ChatConfig" ; Desc = " Chat configuration" },
254+ @ {Import = " from gaia.chat.sdk import quick_chat" ; Desc = " Quick chat function" },
255+
256+ # RAG SDK
257+ @ {Module = " gaia.rag.sdk" ; Desc = " RAG SDK module" },
258+ @ {Import = " from gaia.rag.sdk import RAGSDK" ; Desc = " RAG SDK class" },
259+
260+ # Base Agent System
261+ @ {Module = " gaia.agents.base.agent" ; Desc = " Base agent module" },
262+ @ {Import = " from gaia.agents.base.agent import Agent" ; Desc = " Base Agent class" },
263+ @ {Import = " from gaia.agents.base import MCPAgent" ; Desc = " MCP agent mixin" },
264+ @ {Import = " from gaia.agents.base import tool" ; Desc = " Tool decorator" },
265+
266+ # Specialized Agents
267+ @ {Import = " from gaia.agents.chat import ChatAgent" ; Desc = " Chat agent" },
268+ @ {Import = " from gaia.agents.code import CodeAgent" ; Desc = " Code agent" },
269+ @ {Import = " from gaia.agents.jira import JiraAgent" ; Desc = " Jira agent" },
270+ @ {Import = " from gaia.agents.docker import DockerAgent" ; Desc = " Docker agent" },
271+
272+ # Database
273+ @ {Import = " from gaia.database import DatabaseAgent" ; Desc = " Database agent" },
274+ @ {Import = " from gaia.database import DatabaseMixin" ; Desc = " Database mixin" },
275+
276+ # Utilities
277+ @ {Import = " from gaia.utils import FileWatcher" ; Desc = " File watcher" }
245278 )
246279
247280 $failed = $false
248281 $script :ImportsIssues = 0
249282 foreach ($import in $imports ) {
250- $cmd = " $PYTHON_PATH -c `" import $ ( $import.Module ) ; print('OK: $ ( $import.Desc ) imports')`" "
251- Write-Host " [CMD] $cmd " - ForegroundColor DarkGray
252- & $PYTHON_PATH - c " import $ ( $import.Module ) ; print('OK: $ ( $import.Desc ) imports')" 2>&1 | Out-String - Width 4096
283+ # Handle both "Module" (import x) and "Import" (from x import y) syntax
284+ if ($import.Module ) {
285+ $cmd = " import $ ( $import.Module ) ; print('OK: $ ( $import.Desc ) imports')"
286+ $displayCmd = " python -c `" import $ ( $import.Module ) ; print('OK: $ ( $import.Desc ) imports')`" "
287+ $failedImport = $import.Module
288+ } elseif ($import.Import ) {
289+ $cmd = " $ ( $import.Import ) ; print('OK: $ ( $import.Desc ) imports')"
290+ $displayCmd = " python -c `" $ ( $import.Import ) ; print('OK: $ ( $import.Desc ) imports')`" "
291+ $failedImport = $import.Import
292+ }
293+
294+ Write-Host " [CMD] $displayCmd " - ForegroundColor DarkGray
295+ & $PYTHON_PATH - c $cmd 2>&1 | Out-String - Width 4096
253296 if ($LASTEXITCODE -ne 0 ) {
254- Write-Host " [!] Failed to import $ ( $import .Module ) " - ForegroundColor Red
297+ Write-Host " [!] Failed: $failedImport " - ForegroundColor Red
255298 $failed = $true
256299 $script :ImportsIssues ++
257300 }
0 commit comments