$ show vizra-ai/vizra-adk
Vizra ADK is a retired Laravel package (final release v0.0.48) that provides a comprehensive framework for building AI agents with LLM orchestration, tool systems, memory, workflows, evaluations, tracing, and MCP integration. It is not a standalone application but a library designed to be installed into Laravel projects. The architecture follows Laravel package conventions: service providers, facades (Agent, Workflow), Eloquent models, Artisan commands, Livewire components, and database migrations. Key entry points include the Agent facade for running agents, the Workflow facade for orchestrating multi-agent workflows, and a set of CLI generators for scaffolding agents, tools, and evaluations. The system supports multiple LLM providers via Prism PHP, persistent memory (session, user, vector), tool chaining, sub-agent delegation, and an evaluation framework with LLM-as-a-Judge assertions. The codebase is well-structured with strong test coverage (Pest + Mockery), but the package is officially retired with no further development, leading to high technical drift as dependencies age out. Despite retirement, many components (e.g., ToolChain, VersionablePrompts, AgentVectorProxy, HasLogging) are self-contained and demonstrate reusable patterns suitable for extraction into new projects.
The LLM identified 4 files worth highlighting for reuse:
Implements a fluent pipeline for executing tools in sequence with pipe, transform, tap, and conditional steps. Supports error continuation, tracing integration, and result aggregation. Self-contained and could be extracted as a generic pipeline library.
Provides a layered prompt resolution strategy (override > database > file > class property) with Blade template rendering and version/variant support. Demonstrates a clean, extensible pattern for managing prompt templates in AI applications.
A transparent proxy that wraps an agent class and delegates vector memory operations to VectorMemoryManager, automatically injecting the agent class for namespace isolation. Simplifies RAG integration and could be reused as a generic proxy for service delegation.
A reusable trait that adds configurable logging with levels, component tags, and global disable. Used across multiple services (VectorMemoryManager, Tracer, EvalRunner). Demonstrates a clean, non-intrusive logging pattern suitable for any PHP class.