filaforge/filament-deepseek-chat
A Filament plugin that adds a DeepSeek-powered AI chat interface to your Laravel admin panel, letting teams ask questions, generate content, and get assistance without leaving Filament.
This is an early-stage (v0.1.x) Filament plugin for adding a DeepSeek-backed chat interface to a panel. The v0.1.0 → v0.1.2 diff ships no human-readable release notes, only a compare link, so treat the changelog as the only source of truth and read the README and composer.json constraints first.
Minimum path to a working chat:
composer require filaforge/filament-deepseek-chat (pin the exact version while it is pre-1.0).php artisan vendor:publish --tag="filament-deepseek-chat-config" and any -migrations tag.DEEPSEEK_API_KEY (and base URL / model overrides if configurable) to .env; never hardcode the key.->plugin(FilamentDeepSeekChatPlugin::make())) and, if it ships a page, a nav item or a Chat page route.Where to look first: the plugin class (panel registration and navigation), the config file (model, temperature, system prompt, history limits), and the Livewire component if one exists (that is where streaming and state live). Check for a Chat Filament page — that is the natural integration point.
config/filament-deepseek-chat.php and env, not from code, so staging can point at a cheaper model.->view() or publish views only for cosmetic changes, so upstream fixes still land.max_execution_time.RateLimiter::for('deepseek-chat') middleware on the send action is the cheapest safeguard.Http::fake()) in feature tests so the chat page renders and the send path is exercised without burning API credits.v0.1.2 only links to a GitHub compare. Pin "filaforge/filament-deepseek-chat": "0.1.2" in composer.json and diff v0.1.0...v0.1.2 yourself before deploying; pre-1.0 minor bumps can rename config keys or classes without notice.0.1.x, assume config keys may move. Re-publish the config after upgrading and diff it against yours rather than assuming defaults..env and is only read in PHP. Do not pass it to the view.max_execution_time or move the call to a queued job with a broadcast/Livewire listener.composer.json for the supported Filament major (2 vs 3). A mismatch shows up as a missing plugin class or a broken page registration, not a clear error.->navigationLabel(), and conditional visibility; avoid editing package source so future v0.1.x bumps apply cleanly.v0.1.0 notes become descriptive, budget a quick diff review per upgrade and keep a smoke test that opens the chat page and sends one message.How can I help you explore Laravel packages today?