PostHog analytics in the web client, disabled when no key is set so tests, CI, and sandboxes need no account, with a typed event catalog and a pre-init buffer.
Paste the prompt into the coding agent working on your project.
View prompt
Add the posthog fragment to this existing repository.
1. Run npx @steamfield/stacks show posthog --json and check that it fits the project. If it does not, explain why before changing files.
2. Run npx @steamfield/stacks add posthog and follow the brief it prints.
3. In this repository, run npx @steamfield/stacks verify. Fix failures without weakening or skipping verification steps.
4. Summarize what changed and the verification result. Quote published stats only when they are available, including their interval and sample size.
The stacks docs, written for agents, are at https://stacks.steamfield.io/llms.txt.
Or use the terminal
$npx @steamfield/stacks add posthog
Verify steps
Step
Phase
Layer
Command
No additional verify steps declared. Run the project’s existing verification after applying the brief.
Use with a new stack
Starting fresh instead? These stacks support this fragment.
OpenRouter as the LLM provider for a TypeScript project: an optional API key, model discovery with a ten-minute cache, routing settings, bounded retries with safe upstream errors, a scriptable local stub server for tests, and an eval report format with a dry-run checker.
Also applies to: react-router
Files
This fragment supplies instructions rather than project files.
Usage
Among stacks projects in the 28 days through 30 Oct 2026: 6,395 projects; 80% reached a green verify (79–81%, n=4,375).
Weekly projects by stack
Projects whose final fragment set included this fragment, grouped by stack.
astro-blog
python-react
react-router
astro-blog
python-react
react-router
Stacks projects per UTC week through 30 Oct 2026. Published stack counts only.
Data table
Week ending
Stack
Projects
5 Jul 2026
astro-blog
95
12 Jul 2026
astro-blog
180
19 Jul 2026
astro-blog
270
26 Jul 2026
astro-blog
365
2 Aug 2026
astro-blog
340
9 Aug 2026
astro-blog
355
16 Aug 2026
astro-blog
400
23 Aug 2026
astro-blog
415
30 Aug 2026
astro-blog
450
6 Sept 2026
astro-blog
450
13 Sept 2026
astro-blog
430
20 Sept 2026
astro-blog
595
27 Sept 2026
astro-blog
570
4 Oct 2026
astro-blog
545
11 Oct 2026
astro-blog
600
18 Oct 2026
astro-blog
635
25 Oct 2026
astro-blog
645
5 Jul 2026
python-react
355
12 Jul 2026
python-react
605
19 Jul 2026
python-react
835
26 Jul 2026
python-react
1,020
2 Aug 2026
python-react
1,065
9 Aug 2026
python-react
1,215
16 Aug 2026
python-react
1,275
23 Aug 2026
python-react
1,320
30 Aug 2026
python-react
1,415
6 Sept 2026
python-react
1,490
13 Sept 2026
python-react
1,550
20 Sept 2026
python-react
1,605
27 Sept 2026
python-react
1,775
4 Oct 2026
python-react
1,865
11 Oct 2026
python-react
1,430
18 Oct 2026
python-react
1,190
25 Oct 2026
python-react
875
5 Jul 2026
react-router
–
12 Jul 2026
react-router
–
19 Jul 2026
react-router
–
26 Jul 2026
react-router
–
2 Aug 2026
react-router
–
9 Aug 2026
react-router
–
16 Aug 2026
react-router
–
23 Aug 2026
react-router
–
30 Aug 2026
react-router
–
6 Sept 2026
react-router
–
13 Sept 2026
react-router
–
20 Sept 2026
react-router
–
27 Sept 2026
react-router
–
4 Oct 2026
react-router
–
11 Oct 2026
react-router
–
18 Oct 2026
react-router
–
25 Oct 2026
react-router
–
By stack
How often this fragment stays in a default composition, or gets attached as an option.