What problem does it solve?
Signals are automated observations that PostHog generates by monitoring a customer's product data across multiple sources — error tracking, web analytics, experiments, session replay, and more. Each signal is a short natural-language description of something noteworthy (for example, "Error rate spiked 3× on /checkout").
Signals are grouped into Signal Reports. When a report accumulates enough weight it gets summarized and assessed for actionability. A signal report represents a cluster of related observations that together describe a meaningful issue or trend.
Signals and their embeddings are stored in the document_embeddings table, queryable via HogQL through the posthog:execute-sql MCP tool. They provide a useful way to semantically query for recent things that happened in the user's product.
The skill enables semantic and full-text querying, deduplication of signals, and targeted fetches by report or product.
The Skill's primary purpose is to help teams monitor product health by exploring signals with natural-language queries and guided SQL-like examples.
Quick Start
Find the top 10 signals most similar to the description 'checkout error' using semantic search.
Core Features & Use Cases
- Semantic search: locate signals by natural language queries using embedText() and cosineDistance() to rank results.
- Fetch by report: retrieve all signals associated with a specific report_id for deeper inspection.
- List signal types: summarize available signal types by unique (source_product, source_type) pairs from the last month.
- Recent signals by source: pull the latest signals for a particular source_product (e.g., error_tracking).
- Full-text search: perform keyword-based lookups on signal content using ILIKE for fast filtering.
- Deduplication: apply argMax(...) with grouping by document_id to avoid duplicates and stale results.