Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .claude-plugin/marketplace.json
Original file line number Diff line number Diff line change
Expand Up @@ -12,7 +12,7 @@
"displayName": "PostHog",
"source": "./",
"description": "Access PostHog analytics, feature flags, experiments, error tracking, and insights directly from your AI coding tool. Optionally capture Claude Code sessions to PostHog LLM Analytics.",
"version": "1.1.63",
"version": "1.1.64",
"author": {
"name": "PostHog",
"email": "hey@posthog.com",
Expand Down
2 changes: 1 addition & 1 deletion .claude-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "posthog",
"description": "Access PostHog analytics, feature flags, experiments, error tracking, and insights directly from your AI coding tool. Optionally capture Claude Code sessions to PostHog LLM Analytics.",
"version": "1.1.63",
"version": "1.1.64",
"author": {
"name": "PostHog",
"email": "hey@posthog.com",
Expand Down
2 changes: 1 addition & 1 deletion .codex-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "posthog",
"version": "1.0.61",
"version": "1.0.62",
"description": "Access PostHog analytics, feature flags, experiments, error tracking, and insights directly from Codex",
"author": {
"name": "PostHog",
Expand Down
2 changes: 1 addition & 1 deletion .cursor-plugin/plugin.json
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
{
"name": "posthog",
"displayName": "PostHog",
"version": "1.1.57",
"version": "1.1.58",
"description": "Access PostHog analytics, feature flags, experiments, error tracking, and insights directly from Cursor",
"author": {
"name": "PostHog",
Expand Down
2 changes: 1 addition & 1 deletion gemini-extension.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "posthog",
"version": "1.0.59",
"version": "1.0.60",
"description": "Access PostHog analytics, feature flags, experiments, error tracking, and insights directly from Gemini CLI",
"mcpServers": {
"posthog": {
Expand Down
10 changes: 3 additions & 7 deletions skills/.sync-manifest
Original file line number Diff line number Diff line change
Expand Up @@ -14,9 +14,11 @@ authoring-scouts
building-a-dashboard
building-canvases
building-html-canvases
building-loops
building-react-quill-canvases
building-workflows
checking-deploy-timing
checking-member-access
choosing-trend-or-slope-view
cleaning-up-stale-feature-flags
composing-grid-canvases
Expand All @@ -34,10 +36,8 @@ creating-box-plot-insights
creating-experiments
creating-online-evaluations
creating-replay-vision-scanners
creating-surveys
debugging-experiments
debugging-local-replay
debugging-mcp-analytics
debugging-signals-pipeline
debugging-surveys
designing-email-templates
diagnosing-ci-and-merge-bottlenecks
Expand Down Expand Up @@ -72,7 +72,6 @@ finding-replay-for-issue
finding-sessions-to-watch
formatting-insight-axes
grouping-noisy-errors
improving-mcp-tools
inbox-exploration
instrument-error-tracking
instrument-feature-flags
Expand All @@ -99,7 +98,6 @@ modeling-dimension-tables
modeling-product-usage-metrics
modeling-revenue-metrics
modeling-warehouse-foundations
organizing-conversations-code
planning-voice-agent-user-interviews
querying-canvas-data
querying-posthog-data
Expand All @@ -115,7 +113,6 @@ scanning-experiments-with-replay-vision
setting-up-a-custom-rest-source
setting-up-a-data-warehouse-source
setting-up-data-catalog
setting-up-support-slack-locally
setting-up-warehouse-properties
signals
signals-scout-ai-observability
Expand Down Expand Up @@ -150,7 +147,6 @@ skills-store
suggesting-data-imports
suggesting-path-cleaning-rules
suppressing-noisy-errors
testing-mcp-tools-locally
triaging-error-issues
triaging-visual-review-runs
tuning-incremental-sync-config
Expand Down
52 changes: 39 additions & 13 deletions skills/authoring-scouts/SKILL.md

Large diffs are not rendered by default.

9 changes: 6 additions & 3 deletions skills/authoring-scouts/references/dedupe-and-memory.md
Original file line number Diff line number Diff line change
Expand Up @@ -20,17 +20,20 @@ Bake this classifier into the scout's Decide section:
## Scratchpad memory

The scratchpad is durable, per-team prose keyed by string.
It has no tags or TTLs — **the category is encoded in the key prefix** so a future run finds an entry with a single `text=` search.
It has no tags: **the category is encoded in the key prefix** so a future run finds an entry with a single `text=` search.
Re-using a key rewrites the entry in place (the idempotent refresh — use it to confirm a quiet observation without duplicating entries).
An entry can carry an optional `expires_at`: expired entries drop out of searches (unless `include_expired=true`) and a daily janitor deletes them two weeks past expiry, so set it on anything with a natural shelf life (a `watch:` on a live issue, a cursor) and leave baselines and allowlists unexpiring.

**One keyspace, several writers.** Every scout on the team shares it, and so do the two report-pipeline stages: the research run and the self-driving implementation run.
Each search result carries `created_by_skill`, which reads a scout's skill name for a scout entry and `pipeline:report-research` or `pipeline:implementation` for a pipeline one, so a scout can tell its own memory from a sibling's before acting on it.
Each search result carries `created_by_skill`, which reads a scout's skill name for a scout entry and `pipeline:report-research` or `pipeline:implementation` for a pipeline one. It names the entry's original creator only: a rewrite of an existing key keeps the creator, so the field does not say who last wrote the content, and the current writer of a shared key is unknown.
Two rules follow. Search the identity of the thing (the issue id, the flag key, the file path) rather than only your own prefix, or you find your own past work and nothing else.
And only ever forget keys you wrote: `scout-scratchpad-forget` deletes by exact key without checking the writer, so removing another writer's cursor or `dedupe:` row makes it repeat work or lose its place.
And only ever forget keys under your own prefix that you created: `scout-scratchpad-forget` deletes by exact key without checking the writer, so removing another writer's cursor or `dedupe:` row, or a key of yours a sibling has since taken over, makes it repeat work or lose its place.

| Prefix | Use for |
| ------------- | ---------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
| `pattern:` | Durable observation about how this team's data normally shapes (baselines). |
| `watch:` | A live issue being tracked but still below the report bar: what to re-check and the condition that would clear the bar. |
| `followup:` | Harness-defined validation queue, keyed `followup:<skill-name>:<topic>`: a probe a later run should re-run to confirm a reported finding is fixed or still live. The run prompt tells every scout to read its own queue each run (`text=followup:<skill-name>:` with the trailing colon) and decide when a run becomes a validation run; write the probe and its state header so a future run can execute it cold. |
| `noise:` | Patterns to ignore (single-user, dev-only, recurring with no fix path). |
| `addressed:` | Team-confirmed fix shipped, or topic the team has moved on from. |
| `dedupe:` | Gates future runs on a specific issue / fingerprint so the scout doesn't re-file it. |
Expand Down
Loading