Documentation
Telltale
Last updated
Telltale is self-hosted product analytics and PHP error reporting for NativePHP desktop and mobile apps. A small client package inside your NativePHP app records screen views, estimated sessions, release versions, your own custom events and the PHP errors Laravel reports. It sends them to a Telltale server that runs in your own Laravel Cloud account and stores everything in that deployment's PostgreSQL database.
Telltale is MCP-first. Its web dashboard only manages apps, ingest values and ingest health. You do the analysis by asking a coding agent questions, and the agent answers them with Telltale's MCP tools: active users, release adoption, screen flow, funnels, retention, sessions and error groups.
Telltale is open source. The server, the client (artisan-build/telltale-client) and the shared wire contracts (artisan-build/telltale-contracts) live in the artisan-build/telltale repository.
Telltale is Experimental in the Scalpels catalog. Only supporters and partner teams can install it through Scalpels.
What Telltale does not do
Telltale v1 has a deliberately narrow scope. It does not capture:
- native crashes, out-of-memory failures, ANRs or Electron Crashpad reports;
- exceptions rendered inside NativePHP SuperNative screens, which never reach Laravel's exception handler;
- mobile
AsyncTaskfailures, which NativePHP consumes before Laravel sees them; - any new lifecycle signal. It only observes events NativePHP already dispatches.
It does not upload in the background on mobile, and it has no session replay, heatmaps, feature flags, experiments or chart dashboard.
How it fits with Scalpels
Scalpels forks Telltale into your GitHub account, provisions its Cloud resources, runs its migrations and deploys it. That is where Scalpels stops. Telltale has no connect flow: Scalpels does not edit your NativePHP app, set its build environment or inject credentials into it. You add the client to your app by hand, as described in Instrumenting your app.
In these docs
- Getting started: install through Scalpels, set a permanent domain, sign in and create your first app.
- Instrumenting your app: install the client in a NativePHP app, set its two build values, record custom events and check the wiring.
- Managing apps: the dashboard, one-time ingest values, rotation and ingest health.
- MCP tools: reach Telltale from an agent and what each tool returns.
- Privacy and data: what is captured, store privacy declarations, retention, deleting and revoking installs.
- Configuration: server limits and retention, and client settings.
- Troubleshooting: failure modes and how to recognise them.
Want a branded address for this deployment? Use your own domain.
Changelog
- Published.