<p>The root cause is simple: the agent doesn't know which version you're running, and it doesn't have access to the docs for that version.</p><p>Today's release fixes that.</p><h2>What's new</h2><p>Elyra v0.7.16 adds three tools to the <code>@elyracode/laravel</code> extension:</p><ul><li><p><code>laravel_docs</code> — semantic search across 17,000+ Laravel ecosystem documentation entries</p></li><li><p><code>laravel_logs</code> — read and filter your application log without leaving the conversation</p></li><li><p><code>laravel_last_error</code> — grab the most recent exception in one call</p></li></ul><p>The docs tool is the headline. The log tools are the kind of small, practical addition that saves you from alt-tabbing to a terminal twelve times a day.</p><h2>How the docs search works</h2><p>When the agent needs to answer a Laravel question, it calls <code>laravel_docs</code> with one or more search queries. Three things happen behind the scenes:</p><ol><li><p>Elyra reads your <code>composer.lock</code> and <code>package.json</code> to build a list of installed packages and their versions. Laravel 13.2? Livewire 4.x? Inertia 3.x? It picks all of that up automatically.</p></li><li><p>It sends the queries and package versions to Laravel Boost's hosted documentation API — the same semantic search engine that powers Boost's MCP server.</p></li><li><p>The API returns version-specific documentation fragments, ranked by relevance.</p></li></ol><p>The agent gets back precise, current documentation for <em>your</em> stack. Not generic answers. Not outdated answers. The right answers.</p><p>Here's what it looks like in practice. You ask:</p><pre><code>&gt; How do I set up Sanctum token authentication for a mobile app?
</code></pre><p>The agent calls <code>laravel_docs</code> with queries like "Sanctum API token authentication" and "Sanctum mobile app setup." It gets back the exact Sanctum docs for whatever version is in your <code>composer.lock</code>. Then it generates code that actually matches your project.</p><p>No hallucinated methods. No deprecated APIs. No version mismatch.</p><h3>What it covers</h3><p>The search isn't limited to <code>laravel/framework</code>. It covers the full ecosystem — anything with hosted documentation:</p><ul><li><p>Laravel, Sanctum, Passport, Horizon, Telescope, Pulse</p></li><li><p>Livewire, Inertia, Filament</p></li><li><p>Pest, Tailwind CSS, Alpine.js</p></li><li><p>Spatie packages, and more</p></li></ul><p>If the package is in your <code>composer.lock</code> or <code>package.json</code>, Elyra includes it in the search scope. You can also narrow the search to specific packages:</p><pre><code class="language-js">// The agent can focus on just Livewire docs
laravel_docs({
  queries: ["reactive form validation"],
  packages: ["livewire/livewire"]
})
</code></pre><h3>No setup required</h3><p>This works out of the box. No API key, no Composer dependency, no configuration. The Boost documentation API is public. You need an internet connection, and that's it.</p><p>If you already have <code>@elyracode/laravel</code> installed, update to 0.7.16 and the tools are available immediately:</p><pre><code class="language-bash">elyra install npm:@elyracode/laravel
</code></pre><h2>Reading your logs</h2><p>The other two tools are smaller, but they fill a real gap. When something breaks in your Laravel app, the debugging loop usually looks like this:</p><ol><li><p>Something fails</p></li><li><p>Open a terminal</p></li><li><p><code>tail -50 storage/logs/laravel.log</code></p></li><li><p>Copy the error</p></li><li><p>Paste it into the agent conversation</p></li><li><p>Wait for the agent to parse it</p></li></ol><p>With <code>laravel_last_error</code>, the agent does all of that in one tool call:</p><pre><code>&gt; The checkout page is throwing a 500 error, can you check what's going on?
</code></pre><p>The agent calls <code>laravel_last_error</code>, gets the full stack trace, reads the relevant source file, and starts debugging. No copy-pasting. No context switching.</p><p><code>laravel_logs</code> is the broader version — it reads the last N entries, optionally filtered by level:</p><pre><code class="language-js">// Get the last 20 warnings
laravel_logs({ entries: 20, level: "warning" })
</code></pre><p>It handles multi-line PSR-3 log entries correctly, so stack traces stay intact instead of getting split across entries.</p><h2>Why this matters</h2><p>AI coding agents are good at generating code. They're bad at generating <em>correct</em> code for a specific version of a specific framework. The difference between a helpful agent and a frustrating one is often just context — does it know what version you're running, and does it have access to the right documentation?</p><p>With this release, Elyra's Laravel tools cover the full loop:</p><p>What the agent needs to know Tool Your data model and relationships <code>laravel_models</code> Your routes and middleware <code>laravel_routes</code> Your project's architecture <code>laravel_analyze</code> How the framework works at your version <code>laravel_docs</code> What's going wrong right now <code>laravel_logs</code> / <code>laravel_last_error</code></p><p>That's a pretty complete picture. The agent sees your models, your routes, your conventions, the official docs for your exact versions, and your error logs. It has roughly the same context a senior Laravel developer would have when sitting down at your project for the first time — except it loads all of it in under a second.</p><h2>Get it</h2><pre><code class="language-bash">npm install -g @elyracode/coding-agent
elyra install npm:@elyracode/laravel
</code></pre><p>If you're already on <code>@elyracode/laravel</code>, just reinstall to get 0.7.16. The new tools register automatically in any Laravel project.</p><p>Full changelog: <a target="_blank" rel="noopener noreferrer nofollow" href="https://elyracode.com/changelog">v0.7.16</a></p>