spatie/flare-cli
A command-line tool for interacting with the Flare API from your terminal. Log in via browser OAuth, device code, or API token, manage profiles and self-hosted servers, and securely store credentials for automation and CI workflows.
Overall read: adopt as a developer/CI tooling layer, not as an application integration. Value is real but bounded, and every automation use case is gated on two unverified questions: machine-readable output and exit-code semantics. Low adoption signals (3 stars, 0 dependents) are expected for a first-party vendor CLI and should be read as "no community backstop," not "abandoned."
Architecture fit. The scoping decision comes first: this is a globally installed, framework-agnostic PHP CLI wrapping the Flare HTTP API. It does not belong in any Laravel app's composer.json, and it never sits in the request path. Runtime error capture and performance instrumentation remain the job of the Flare Laravel SDK; flare-cli occupies the developer-tooling, runbook, and CI layers. Its legitimate jobs are triage (list/inspect errors), state mutation (resolve, unresolve, snooze), read-only reporting (project error counts, monitoring summaries, traces), and pipeline gating. Any proposal that substitutes this for the SDK integration is mis-scoped and should be rejected at intake.
Integration feasibility. High, with low switching cost. One composer global require, and three auth paths that map cleanly onto our environments: browser PKCE OAuth for laptops, --device for SSH/containers, --token for CI. Credential storage is keyed by issuer and API base, so production, staging, and self-hosted profiles coexist — that removes the usual "which environment am I pointed at" footgun, provided we enforce profile discipline. Security posture is better than typical for a CLI: 0700/0600 permissions, atomic config writes, remote revocation on logout, and a clear re-login hint when refresh fails.
Technical risk.
flare install-skill teaches coding agents to drive the CLI. That is genuinely interesting for autonomous triage, and genuinely a new way to have a write-capable token exercised without a human watching.Key questions to answer before commit.
--json / machine-readable output mode, and are exit codes stable enough to gate a pipeline on?list-project-errors and monitoring endpoints?Stack fit. Natural for a Laravel/PHP shop already on Flare: the CLI's vocabulary (projects, errors, occurrences, monitoring aggregations, traces) matches the dashboard 1:1, so there is no new mental model. Fit degrades outside PHP — non-PHP CI images need the PHAR or a PHP base image, which is a real constraint if the pipeline fleet is polyglot.
Migration path. Additive; nothing is replaced. We are not moving off any tool, so there is no cutover, no dual-run window, and no rollback plan beyond uninstalling. That keeps the change small and the exit cheap — a good property for a first adoption.
Compatibility. Non-production targets are handled by FLARE_BASE_URL (with /api defaulting), and self-hosted/staging credentials coexist as distinct profiles. The unknowns are PHP version floor and whether the remote spec cache behaves sanely behind a corporate proxy. Both are pilot-blocking, neither is architecture-blocking.
Sequencing.
--device and --token, confirm JSON output and exit codes, confirm rate limits, confirm proxy behaviour.Maintenance. Low, and mostly vendor-side. Upgrades are composer global require for laptops; CI images should pin an explicit version and be rebuilt deliberately rather than floating. The one ongoing cost is drift: a cached remote spec can change the effective command surface between builds, so any scripted use needs a smoke test in CI that fails loudly rather than silently no-op'ing.
Support. Vendor issues and docs only; no SLA to rely on for anything on the deploy path. Assign a named internal owner — realistically whoever owns observability tooling — so "the Flare CLI is broken" has a route. Budget for the case where the vendor deprioritises it: because it is a thin API wrapper, losing it costs us automation convenience, not capability.
Scaling. Scales with the Flare API, not with our infrastructure. Each command is one or a few HTTP calls, so the constraints are rate limits, pagination, and concurrent CI jobs hitting the same project. Fan-out from many pipelines is the thing to watch; nightly digests are cheap, per-PR polling is not. Cost is a Flare plan question, not a licence question.
Failure modes to design around.
Ramp-up. Very small — the command names are self-describing and --help is per-command; a competent Laravel developer is productive in under an hour. The non-obvious parts to document are auth-path choice per environment, the profile naming convention, and the rule that CI tokens are read-only and project-scoped. The bundled agent skill does the onboarding work for AI-assisted workflows, but it should be rolled out after humans have the conventions written down, not before.
How can I help you explore Laravel packages today?