Packages & installation
Use this page as the single entry point for every client library, script, and mirror repo that ships from the Lookout monorepo. Each row links to the canonical README (full API and configuration) and to the relevant HTTP docs where applicable.
Choose your integration (quick path)
- Laravel or PHP (errors, traces, logs, metrics, RUM, profiling) — Install
lookout/tracingvia Composer. Auto-registers Laravel service provider; useTracer,Tracing,lookout_logger(),lookout_metrics(), and the ingest helpers described in the package README. Deep reference: Ingest API, Protocol overview, Monitoring modes. - Rails — Copy
packages/lookout-rails/lib/lookout_framework.rbinto your app. Followpackages/lookout-rails/README.mdin the monorepo (or your split mirror). Not a gem; same ingest contract as step 1. Summary: Framework integrations. - WordPress — Copy
packages/lookout-wordpress/intowp-content/plugins/lookout/(seepackages/lookout-wordpress/README.md). Enable under Plugins, configure Settings → Lookout with base URL + project API key. Split mirror:SPLIT_LOOKOUT_WORDPRESS_REPO. - Terminal automation (projects, grouped errors, triage) — Install
lookout/cli(composer require --dev lookout/clior global). Uses Sanctum personal access tokens against/api/v1/*. Seepackages/lookout-cli/README.mdandlookout list. - Browser: uncaught JS errors — Host
public/js/lookout.jsfrom your Lookout app (or the split mirror forpublic/js) and add the script tag withdata-ingest-urlanddata-api-key. Details: rootREADME.mdsection JavaScript (frontend errors). - Browser: Web Vitals / SPA (RUM) — Use
packages/lookout-tracing/resources/rum/lookout-rum.js(same project API key; performance ingest must be enabled). Seepackages/lookout-tracing/README.md§ Real User Monitoring. - REST without SDK — Personal access token or project API key per REST API (v1); OpenAPI: v1.yaml.
- Raw HTTPS only — Any client that can POST JSON: Ingest API.
Monorepo layout & mirror splits
These paths exist in the main Lookout repository. Maintainers can git subtree split each prefix to an empty GitHub mirror (workflow .github/workflows/package-split.yml; repository variables SPLIT_*).
| Deliverable | Monorepo path | Consumer install | Split variable (optional) |
|---|---|---|---|
lookout/tracing (Composer) |
packages/lookout-tracing |
composer require lookout/tracing |
SPLIT_LOOKOUT_TRACING_REPO |
lookout/cli (Composer) |
packages/lookout-cli |
composer require --dev lookout/cli |
SPLIT_LOOKOUT_CLI_REPO |
| Rails module (copy-paste) | packages/lookout-rails |
Copy lib/lookout_framework.rb |
SPLIT_LOOKOUT_RAILS_REPO |
| WordPress plugin | packages/lookout-wordpress |
Copy folder to wp-content/plugins/lookout/ |
SPLIT_LOOKOUT_WORDPRESS_REPO |
| RUM bundle | packages/lookout-tracing/resources/rum |
Script tag or mirror checkout | SPLIT_LOOKOUT_RUM_REPO |
Embed JS (lookout.js, pulse.js) |
public/js |
Static host or script src |
SPLIT_LOOKOUT_EMBED_JS_REPO |
The main app’s composer.json uses path repositories for packages/lookout-tracing and packages/lookout-cli during development ("lookout/tracing": "@dev", "lookout/cli": "@dev" in require-dev for the CLI).
Where to read next
| Topic | Document |
|---|---|
| Laravel env, glows, breadcrumbs, service provider | packages/lookout-tracing/README.md |
CLI commands, ship-logs, agent skill |
packages/lookout-cli/README.md |
Rails env, install!, report_exception |
packages/lookout-rails/README.md |
| WordPress: Settings → Lookout, test event | packages/lookout-wordpress/README.md |
| Product UI and workflows | Using the app |
| Framework comparison (short) | Framework integrations |