Back to Skills

ce-product-pulse

Generate time-windowed product pulse reports from configured signals.

22,461stars1,664forksUpdated 7/2/2026

Security Assessment

Safe(100/100)
Security Score100/100

About ce-product-pulse

Product Pulse generates a time-windowed product pulse report from configured data signals, giving a founder-style read on how a product is doing over a chosen lookback window. Invoked with an argument such as 24h, 7d, or 1h (default 24h), it queries the product's data sources and produces a compact, single-page report covering usage, performance, errors, and followups, saving it to docs/pulse-reports/ and surfacing the key points in chat. It is strictly read-only with respect to the product: it does not mutate the product, database, or any external system, and its only writes are pulse settings appended to .compound-engineering/config.local.yaml and the report file itself; data-source and MCP tools are invoked in read-only mode.

Its core principles shape both tone and safety. Reports are read like a founder with no hardcoded good/bad thresholds, presenting numbers for the reader to judge; they stay to a single page of about 30 to 40 lines and contain no PII such as emails or account IDs. Analytics and tracing queries run in parallel while database queries run serially to avoid load, database access is read-only and entirely optional, and every run is written to disk so past pulses form a browseable timeline. When a STRATEGY.md exists it seeds the setup with the product name and key metrics. The lookback argument accepts trailing hours or days, and a 15-minute trailing buffer is applied to the window's upper bound to account for ingestion lag.

Execution routes by config state. Phase 0 resolves the repo root and reads pulse_* keys from the local config; if the product name is unset it runs a first-run interview (Phase 1) before reporting (Phase 2). The interview, seeded from strategy where available, walks through product name, primary engagement event, value-realization event, completions or conversions, optional quality scoring for AI products, data sources (nudging toward MCP and refusing read-write database credentials), system performance defaults, and the default lookback window, holding each proposed metric to a SMART bar. It prefers a blocking question tool such as AskUserQuestion and asks one question at a time.

FAQ

Does this skill change my product or database?

No. It does not mutate the product, database, or any external system. Its only writes are pulse settings in .compound-engineering/config.local.yaml and the report file; database and MCP access are read-only.

What time windows can I request?

A lookback argument like trailing hours (24h, 48h, 72h, 1h) or days (7d, 30d). It defaults to the configured pulse_lookback_default or 24h, and applies a 15-minute trailing buffer to account for ingestion lag.

Where do the reports go?

Each run is saved as a single-page report of about 30 to 40 lines to docs/pulse-reports/, with the key points surfaced in chat, so past pulses form a browseable timeline.

Is a database required?

No. Database access is optional and, when used, must be read-only; the interview refuses read-write credentials. Many products complete a pulse with analytics and tracing alone.

What happens on first run?

If the product name is unset in config, it runs a first-run interview (seeded from STRATEGY.md when present) covering the product name, key events, optional quality scoring, data sources, performance, and default lookback before producing a report.

All Files

3 files
references/interview.md21.1 KB
View
references/report-template.md4.6 KB
View
SKILL.md13.4 KB
View

Install ce-product-pulse

Download and extract the skill files to your .claude/skills/ directory.

Quick Setup:

  1. Copy the skill folder to .claude/skills/
  2. Claude will automatically detect and use the skill