Laravel Prompts v0.3.15 Adds Streaming, Tasks, Autocomplete, and More

Published on by

Laravel Prompts v0.3.15 Adds Streaming, Tasks, Autocomplete, and More image

Laravel Prompts v0.3.15 is out and it introduces several new features that make it easier to create interactive, real-time, and even AI-driven terminal applications.

Laravel Prompts v0.3.15 is out! A ton of new primitives came out of building the Cloud CLI (+ some unreleased stuff 👀), so we decided to bake them in Prompts itself. - @joetannenbaum

Run Long Processes with task()

The new task() helper makes it simple to run long-running operations while keeping users informed.

It includes a live-updating spinner, scrolling log output, and clear success, warning, and error states that persist after completion. You can also dynamically update the task label as progress changes.

This is especially useful for deployments, installs, or any process where visibility matters.

Stream Output in Real Time with stream()

The stream() prompt enables incremental output directly to the terminal.

It includes built-in word wrapping, ANSI support, and a smooth fade-in effect. This makes it ideal for:

  • AI-generated responses
  • Live logs
  • Progressive output from APIs

Anything that arrives over time can now be displayed naturally in the CLI.

Smarter Input with autocomplete()

With autocomplete(), users get type-ahead suggestions while still retaining full control over their input.

You can provide:

  • A static array of options
  • A dynamic closure that filters suggestions as the user types

This is perfect for things like config keys, file paths, or commonly used values where speed matters.

Dynamic Context with Select Prompt info

Select-based prompts now support a dynamic info panel.

By passing a closure, you can display contextual details based on the currently highlighted option. This works across:

  • select
  • multiselect
  • search
  • multisearch
  • suggest

Use cases include showing pricing, descriptions, IDs, or any additional metadata that helps users make better decisions.

Set Terminal Titles with title()

The new title() helper allows you to update the terminal window or tab title programmatically.

This is particularly useful for long-running commands. Users can monitor progress at a glance, even when the terminal is in the background. Passing an empty string resets the title.

Send Desktop Alerts with notify()

notify() brings native system notifications to your CLI applications.

  • macOS support includes subtitles and sounds
  • Linux support includes custom icons

This is ideal for background tasks like deployments or builds. Start a process, switch tabs, and get notified when it completes.

Building AI-Powered CLI Apps

These new primitives work especially well together. A simple example:

  • Accept user input
  • Update the terminal title with title()
  • Process the request using an AI agent wrapped in task()
  • Stream the generated output with stream()

This pattern opens the door for powerful AI-driven developer tools directly in the terminal.


Learn More

All of these features are available now and fully documented in the official docs:

https://laravel.com/docs/13.x/prompts

You can also view the original announcement thread here:

https://x.com/joetannenbaum/status/2034297199610274296

Eric L. Barnes photo

Eric is the creator of Laravel News and has been covering Laravel since 2012.

Cube

Laravel Newsletter

Join 40k+ other developers and never miss out on new tips, tutorials, and more.

image
SerpApi

The Web Search API for Your LLM and AI Applications

Visit SerpApi
Kirschbaum logo

Kirschbaum

Providing innovation and stability to ensure your web application succeeds.

Kirschbaum
PhpStorm logo

PhpStorm

The go-to PHP IDE with extensive out-of-the-box support for Laravel and its ecosystem.

PhpStorm
Acquaint Softtech logo

Acquaint Softtech

Acquaint Softtech offers AI-ready Laravel developers who onboard in 48 hours at $3000/Month with no lengthy sales process and a 100 percent money-back guarantee.

Acquaint Softtech
Laravel Cloud logo

Laravel Cloud

Easily create and manage your servers and deploy your Laravel applications in seconds.

Laravel Cloud
Lucky Media logo

Lucky Media

Get Lucky Now - the ideal choice for Laravel Development, with over a decade of experience!

Lucky Media
Shift logo

Shift

Running an old Laravel version? Instant, automated Laravel upgrades and code modernization to keep your applications fresh.

Shift
Tinkerwell logo

Tinkerwell

The must-have code runner for Laravel developers. Tinker with AI, autocompletion and instant feedback on local and production environments.

Tinkerwell
Harpoon: Next generation time tracking and invoicing logo

Harpoon: Next generation time tracking and invoicing

The next generation time-tracking and billing software that helps your agency plan and forecast a profitable future.

Harpoon: Next generation time tracking and invoicing
SaaSykit: Laravel SaaS Starter Kit logo

SaaSykit: Laravel SaaS Starter Kit

SaaSykit is a Multi-tenant Laravel SaaS Starter Kit that comes with all features required to run a modern SaaS. Payments, Beautiful Checkout, Admin Panel, User dashboard, Auth, Ready Components, Stats, Blog, Docs and more.

SaaSykit: Laravel SaaS Starter Kit
No Compromises logo

No Compromises

Joel and Aaron, the two seasoned devs from the No Compromises podcast, are now available to hire for your Laravel project. ⬧ Flat rate of $9500/mo. ⬧ No lengthy sales process. ⬧ No contracts. ⬧ 100% money back guarantee.

No Compromises

The latest

View all →
JSON Schema Deserialization in Laravel 13.14 image

JSON Schema Deserialization in Laravel 13.14

Read article
Generate Short, URL-Safe IDs From Numbers With Sqids image

Generate Short, URL-Safe IDs From Numbers With Sqids

Read article
Scheduler List: A Web Dashboard for Laravel's Scheduled Tasks image

Scheduler List: A Web Dashboard for Laravel's Scheduled Tasks

Read article
Community Laravel Extension for Zed image

Community Laravel Extension for Zed

Read article
Advanced Eloquent Query Filtering with Filterable image

Advanced Eloquent Query Filtering with Filterable

Read article
Bulk Job Dispatching with Bus::bulk() in Laravel 13.13 image

Bulk Job Dispatching with Bus::bulk() in Laravel 13.13

Read article