TrackCTL Customer And User Stories Alignment
The story set translates the ICP into product-planning language: make PostHog analytics setup agentic by default, remove dashboard click-ops, and stop treating copied API keys as acceptable setup friction.
Story Thesis
TrackCTL's first stories should serve one buyer-user: the solo builder who already
delegates development work to agents and expects analytics setup to work the same way.
The AI agent is a secondary operator, so the product needs secure auth, deterministic
commands, parseable output, and trackctl check as proof of completion.
Actors
Agent-native solo builder
Needs useful analytics live before launch or after first users arrive, without leaving the coding workflow.
AI coding agent
Needs safe auth, deterministic commands, readable config, structured errors, and verification output.
Startup engineering lead
Needs repeatable setup across services, safer credentials, and less dashboard ownership ambiguity.
Startup engineer
Needs repo-local analytics changes that can be reviewed instead of recreated in PostHog UI.
Named ICP Case Studies
Maya Chen
Context: Agent-native solo SaaS builder whose MVP has its first real users.
Trigger: She needs activation, pricing, onboarding, and retention signal before making product calls.
Product bar: Generate useful starter analytics intent, deploy it idempotently, and prove setup with trackctl check.
Noah Patel
Context: Solo founder preparing for Product Hunt, Hacker News, newsletter, and beta traffic.
Trigger: Launch traffic is close and non-repeatable; missing analytics means lost evidence.
Product bar: Offer a launch-ready template, dry run or diff, and a concise readiness report.
Elena Ruiz
Context: Security-conscious indie builder using agents, npm packages, scripts, and terminal logs.
Trigger: The agent needs PostHog access, and the obvious path asks for a Personal API Key.
Product bar: Make secure connection P0 with scoped, revocable, redacted credential behavior.
Jordan Kim
Context: Multi-project builder who wants previous analytics learning to compound.
Trigger: A new side project starts, and old PostHog dashboards are not portable.
Product bar: Separate reusable analytics intent from project IDs, secrets, and deployed state.
Priya Shah
Context: Startup engineering lead turning solo adoption into repeatable team infrastructure.
Trigger: Multiple engineers and agents need analytics changes without one founder's dashboard memory or key.
Product bar: Make analytics PR-reviewable, credential-safe, reusable, and verifiable by the team.
ICP Coverage
Primary ICP
Trigger: First real users arrive.
Core risk: SDK-only setup leaves dashboards, funnels, and proof unfinished.
Primary ICP
Trigger: Public launch traffic is imminent.
Core risk: Missing launch analytics wastes non-repeatable learning.
Agent operator context
Trigger: PostHog access enters an AI and npm-heavy workflow.
Core risk: TrackCTL trains unsafe raw API-key handling.
Primary ICP
Trigger: A second or third project starts.
Core risk: Reuse copies stale IDs, old event names, or secrets.
Expansion ICP
Trigger: Solo workflow becomes small-team infrastructure.
Core risk: Teams inherit invisible dashboard edits and personal keys.
Human Story Arc
- Review before trusting: inspect readable config before the agent creates resources.
- Ship feature and analytics together: update instrumentation and analytics config in the same change.
- Know whether setup worked: separate config success, auth success, drift, and event-flow status.
- Recover without becoming the debugger: let the agent repair specific API or config failures.
- Use PostHog for analysis: open PostHog to inspect data, not to build setup by hand.
Agent Story Arc
- Discover intended path: choose TrackCTL instead of inventing manual PostHog instructions.
- Execute without hidden prompts: avoid vague interactive flows and browser-only setup.
- Handle authority safely: operate without becoming a secret transport mechanism.
- Modify config with context: translate routes, components, and user actions into analytics intent.
- Report evidence: summarize created resources, verification state, and traffic-dependent gaps.
Product Requirements Implied
- Secure connection is part of activation, not a later enterprise concern.
trackctl initmust produce useful product analytics intent, not just schema scaffolding.- Non-interactive execution and parseable output are first-class requirements.
trackctl checkmust distinguish resource state, auth state, drift, and event-ingestion state.- Templates must separate reusable analytics intent from project-specific IDs, secrets, and lockfile state.
- Manual PostHog UI edits should be detectable as drift rather than accepted as normal workflow.
Prioritized Story Set
| Priority | Story | Personas | Why It Comes First | Risk If Missed |
|---|---|---|---|---|
| P0 | Secure PostHog Connection | Elena, Priya | Credential safety and click-ops removal are foundational to the agentic-default promise. | TrackCTL teaches unsafe secret handling and loses trust before setup begins. |
| P0 | Agent Hits The Analytics Wall | Maya, Noah | This is the core ICP pain and product wedge. | TrackCTL becomes another CLI, not the default agentic path. |
| P0 | Run Non-Interactive Setup | Maya, Noah, AI-agent operator layer | Agents cannot be the default operator without this. | Every setup falls back to the human at the exact moment TrackCTL should help. |
| P0 | Prove Completion | All personas | Trust depends on verification, not just deployment. | Agents report success without evidence; users return to PostHog UI inspection. |
| P1 | First Real Users Arrive | Maya | Highest urgency customer trigger. | The product misses the moment when analytics need is most acute. |
| P1 | Review Generated Analytics Config | Maya, Elena, Priya | Human trust depends on understandable generated state. | Builders reject automation because they cannot inspect intent. |
| P1 | Verify Analytics State | Maya, Noah, Jordan, Priya | Reduces fallback to PostHog UI inspection. | TrackCTL deploys resources but does not become trusted operations infrastructure. |
| P2 | Multi-Project Reuse | Jordan | Important for retention and repeat use. | TrackCTL is a one-time helper instead of part of the project scaffold. |
| P2 | PR-Reviewable Analytics | Priya | Strong expansion story for startup teams. | Team adoption lacks a compelling reason beyond solo convenience. |
| P2 | Safer Team Credential Handling | Priya, Elena | Becomes critical when TrackCTL moves beyond solo use. | Team rollout spreads personal keys and creates security objections. |
Expansion Path
The startup-team story should not dilute the first ICP. Expansion starts only after solo builders prove repeat use: third service launch, PR-reviewable analytics, safer team credentials, and new-engineer onboarding from repo-local config.
Open Product Questions
- What is the safest feasible v1 connection model?
- Which starter template best proves value for the ICP?
- Should
trackctl checkinspect event ingestion in v1? - What output format should agents rely on?
- How should secret-handling rules be documented before auth abstraction exists?
Recommended Next Step
Run $onboarding-map next to map the install-to-first-verified-deploy path,
especially secure PostHog connection, non-interactive setup, and verification.