Prompt gallery

Prompts

promptsPage.hero.subtitle

MCP-ready prompts touch real registry/event data once @gurulu/mcp-server is installed. AI-layer (Phase 2) prompts are on the roadmap — copy them now, be ready.

50 prompts

MCP-readyDeveloper

Add a new event to the registry

@gurulu I want to add a new event. First call list_events to check for collisions, then add_event with this contract:

Event: {{event_key}}
Class: {{interaction|intent|outcome}}
Owning team: {{team_name}}
Trigger location: {{trigger_location}}

Required properties:
- {{required_property_1}}: {{type}}
- {{required_property_2}}: {{type}}

Optional properties:
- {{optional_property_1}}: {{type}}

Enforce snake_case. Summarize the contract back to me before adding.
#registry#mcp
MCP-readyDeveloper

Generate a typed event tracker

@gurulu Generate a TypeScript wrapper for these registry events: {{event_keys}}

- One function per event (e.g. trackSignupCompleted())
- Required fields required, optional optional
- JSDoc with the registry description and a sample payload
- Works against both @gurulu/web and @gurulu/node

Return a single copy-pasteable file: events.gen.ts
#registry#codegen
MCP-readyDeveloper

Debug a missing production event

@gurulu This event is not showing up in production: {{event_key}}

Check in order:
1. Is it defined in the registry? (validate_event)
2. Did it land in ingestion in the last hour? (event-health)
3. If it did, was it quarantined or rejected? Why?
4. Could the current consent state be blocking it?
5. If a webhook is involved, give me the last dispatches + error rate.

List findings by priority and propose a fix.
#pipeline#debug
MCP-readyDeveloper

Write and simulate an attribution policy

@gurulu Let's author a new attribution policy for {{tenant_or_workspace}}.

Context: {{free_text_business_context}}
Outcome event: {{outcome_event_key}}
Touchpoint events: {{touchpoint_event_keys}}
Lookback: {{14d|30d|90d}}
Model: {{first_touch|last_touch|linear|time_decay|position_based|data_driven}}

Return the policy as JSON with provenance trace enabled. Simulate it across 3 sample touchpoint paths before applying.
#attribution
MCP-readyDeveloper

Wire contract drift checks into CI

@gurulu Propose a CI workflow for this repo: on every PR, run `gurulu validate` so any event call that doesn't match the registry contract fails the PR.

Branch: {{main}}
Package manager: {{bun|pnpm|npm}}
CI: {{github_actions|gitlab|circle}}

Give me the YAML + the secrets needed (GURULU_API_KEY, GURULU_PROJECT_REF). Show a dry-run first.
#ci#registry
MCP-readyDeveloper

Audit a specific user's consent state

@gurulu Run a consent audit for this user:

person_id or anonymous_id: {{id}}

Return:
- Latest GCM v2 decision (analytics_storage, ad_storage, ad_user_data, ad_personalization)
- Decision-change history (when, from which channel)
- DSR export / forget request history
- Which events are currently blocked given their consent

Is there anything to fix under GDPR / CCPA / KVKK?
#consent#gdpr
MCP-readyDeveloper

Identity merge — dry-run first

@gurulu Dry-run a merge BEFORE applying it:

Source anonymous_id: {{anon_id}}
Target person_id: {{person_id}}

Report:
- Timeline after merge (how many events combine)
- 3-level confidence score
- Property conflicts (e.g. two different emails)
- Proposed ledger entry description
- Reversibility plan (how we roll back if wrong)

Do not perform the real merge without my approval.
#identity
AI layer · P2Developer

Generate webhook verifier integration tests

@gurulu/node webhook verifier — generate an integration test suite:

Provider: {{stripe|shopify|lemonsqueezy|custom}}
Framework: {{hono|express|fastify}}
Test runner: {{bun_test|vitest|jest}}

Coverage:
- Valid signature → 200 + event consumed
- Invalid signature → 401, no replay
- Stale timestamp (>5min) → reject
- Body tampering → reject
- Same event twice (dedup)

Single file, with mock fixtures.
#webhook#sdk-server
MCP-readyDeveloper

Author an anomaly health rule

@gurulu Set up an anomaly health rule for {{event_key}}:

Metric: {{volume|unique_users|payload_size|missing_required_fields_rate}}
Window: {{1h|6h|24h}}
Expected deviation: {{stddev|percent}}
Alert severity: {{info|warn|critical}}
Notification channel: {{discord|email|slack|webhook}}

Pull the last 14 days as baseline, propose the threshold, and show me before saving.
#health#anomaly
MCP-readyDeveloper

Spin up a workspace + invite the team

@gurulu Set up a new workspace:

Tenant: {{tenant_slug}}
Workspace name: {{workspace_name}}
Environment: {{development|staging|production}}
Region: {{eu_falkenstein|eu_helsinki}}

Invite:
- {{email_1}}{{owner|admin|member|viewer}}
- {{email_2}}{{role}}

Initial seed: {{industry_pack: ecommerce|saas|gambling|media|finance}}. Create workspace + memberships + magic-link invites in one go, confirm the audit log entries.
#onboarding
AI layer · P2Marketer

Weekly channel performance summary

@gurulu Summarize last week (Mon-Sun, {{week_range}}) for marketing:

- Outcome event: {{outcome_event_key}}
- Compare against: previous week + 4-week average
- Break down by: channel × campaign × device
- Top 3 risers, top 3 fallers
- Anomaly note for any spike / dip
- 3 paste-ready Slack action recommendations

Format numbers cleanly.
#report#weekly
MCP-readyMarketer

Cross-model attribution comparison

@gurulu For the last {{30d|90d}}, compare 5 attribution models against the same outcome:

Outcome: {{outcome_event_key}}
Scope: {{tenant_or_workspace}}
Models: last_touch, first_touch, linear, time_decay, data_driven

Table: | Channel | Last | First | Linear | Time-decay | Data-driven |

Comment on which model flatters which channel. End with one data-grounded recommendation.
#attribution
MCP-readyMarketer

Highest-converting channels & creatives

@gurulu For the last {{30d}}, surface the highest-converting sources:

Outcome: {{outcome_event_key}}
Min touchpoints: {{50}}
Dimensions: utm_source × utm_medium × utm_campaign × utm_content

Metrics: count, conversion rate, avg time-to-outcome, median revenue (if available).

Top 10 + bottom 5 as separate lists. Flag rows with low sample as low-confidence.
#channels
MCP-readyMarketer

UTM coverage audit

@gurulu Run a UTM coverage report for the last {{14d}}:

- % of sessions missing utm_source + their top referers
- Most-used utm_campaigns and the channels they show up on
- Spelling variants of the same campaign (Spring_Sale vs spring-sale)
- 3 hypotheses for what's hiding inside '(direct)' traffic

Sort by fix priority — big-loss first, cosmetic last.
#utm#health
AI layer · P2Marketer

Copy variants for the highest-converting flow

Identify the highest-converting step on {{flow_or_landing_url}} and write 5 alternative headlines + 3 CTAs.

Audience: {{audience_short_description}}
Brand tone: {{terminal|plain|friendly}}
Banned words: {{list_optional}}

For each variant, parenthesize the pain it targets. Recommend which one to A/B first.
#copy
AI layer · P2Marketer

Quarterly board slide draft

Board deck for {{quarter — Q3 2026}}:

- Primary outcome: {{outcome_event_key}}
- vs last quarter and vs start of year
- 3 wins, 2 misses (with evidence and numbers)
- Plan vs actual
- 3 priorities for next quarter

Output: 6 slide titles + 3 bullets each + speaking notes. Friendly to CFOs but no polish on the numbers.
#report#board
AI layer · P2Marketer

Explain a traffic drop

Last week {{paid_search|paid_social|organic}} traffic dropped {{X}}%. Enumerate possible causes:

- Budget / campaign pause
- Bidding change (CPC spike?)
- Creative fatigue (rising frequency)
- Broken UTMs
- Server / CDN / landing perf (event-health rage_click)
- Seasonality / event calendar

Pull evidence for each. Start with the top 3 most likely.
#anomaly
MCP-readyMarketer

Landing-page behavior audit

@gurulu For the last {{30d}}, report on {{landing_url}}:

- Pageview count
- Scroll-depth distribution (25 / 50 / 75 / 100)
- Rage_click frequency
- Form_started → form_submitted conversion rate
- Top 10 outbound click destinations
- Bounce by source

Recommend 3 concrete fixes: copy, layout, performance — which is priority?
#landing#bounce
MCP-readyGrowth

Funnel drop-off analysis

@gurulu Build this funnel:
1. {{step_1_event_key}}
2. {{step_2_event_key}}
3. {{step_3_event_key}}
4. {{step_4_event_key}}
5. {{outcome_event_key}}

Window: {{7d|14d|30d}} · Cohort: {{new_users|returning|all}}

Return:
- Per-step conversion + drop-off
- The step with the biggest drop
- Most common failure pattern at that step (form_validation_error, payment_declined…)
- Mobile vs desktop split

Write one hypothesis for the drop.
#funnel
MCP-readyGrowth

Cohort retention — biggest drop

@gurulu Weekly cohort retention table:

Cohort definition: {{first_seen_week}}
Retention event: {{retention_event_key}}
Weeks observed: 8

Return:
- Table (cohort × W0..W8)
- Which cohort dropped sharply? In which week?
- That cohort's acquisition source
- How it differs from a 'healthy' cohort

Recommend whether this looks like a product issue or an acquisition issue.
#cohort#retention
AI layer · P2Growth

Find the activation moment in data

Which event or event-chain correlates most strongly with retention?

Retention proxy: {{day_7_return | day_28_return}}
Candidate events: {{event_keys_optional}}

Return:
- Strongest correlate: event or event_count ≥ N
- Correlation ≠ causation caveat + a counterfactual to consider
- A one-sentence 'aha-moment' candidate
- Suggested onboarding action to pull users toward it

Add a sample-size warning.
#activation
AI layer · P2Growth

Turn an observation into an experiment hypothesis

Turn this observation into a Lean experiment hypothesis:

Observation: {{plain_text_observation}}
Affected metric: {{metric_name}}

Return:
- Hypothesis ('if … then … because …')
- Minimum detectable effect (MDE)
- Required sample size (alpha 0.05, power 0.8)
- Estimated duration given current traffic
- 2 guardrail metrics

If sample is short, narrow the hypothesis.
#experiment
AI layer · P2Growth

Surface a churn signal

Identify users who haven't returned in {{X}} days, then mine the last 7 days before they left for shared patterns:

- Events that dropped most vs the prior week
- 'Near-exit' events (error_shown, payment_failed, support_ticket_opened)
- Plan / tier breakdown
- Onboarding step skipped in the first 24h

Draft a re-engagement segment and tell me how many users it covers.
#churn
MCP-readyGrowth

Build a re-engagement segment

@gurulu Build and name this segment:

Name: {{segment_name}}
Definition: users who did {{trigger_event_key}} in the last {{30d}} but did NOT do {{exclude_event_key}}
Property filter: {{country_in: TR,DE}} and plan_tier = {{free}}
Min outcome: {{outcome_event_key}} ≥ 1

Prepare it for {{crm|ads}} destinations. Tell me the count, save the manifest.
#audience
MCP-readyGrowth

North-star — 90-day trend

@gurulu North-star: {{north_star_metric}}

Return:
- 90-day weekly series
- Last 4-week average vs prior 4-week average
- Trend: up / down / flat
- Major breakpoints (deploys, campaigns, external events)
- 95% confidence interval

Project 30/60/90 days linearly under 'if this trend continues'.
#metric
AI layer · P2Growth

A/B test statistical read

Analyze this A/B result:

Control: n={{n_control}}, conversions={{c_control}}
Variant: n={{n_variant}}, conversions={{c_variant}}
Primary metric: {{metric_name}}
Alpha 0.05, two-sided.

Return:
- Lift (% and absolute)
- p-value
- 95% confidence interval
- Significant or not, why
- Peeking-penalty warning
- Decision: ship / kill / continue

Run a sample ratio mismatch (SRM) check too.
#experiment#stats
AI layer · P2Founder

Morning brief — what happened yesterday

Yesterday's summary, readable in 3 minutes:

- 3 core outcome event totals + prior 7-day average
- The one anomalous event (if any) + raw count
- New health rule alerts
- Yesterday's top rising and top falling channel
- Open DSR / forget request count

One sentence per bullet. Tag anything that needs action 'TODAY'.
#daily
MCP-readyFounder

Health across all integrations

@gurulu Sweep every active integration:

- SDK web: last 24h volume, error rate, version split
- SDK server: same + webhook dispatch error rate
- Webhook providers (Stripe / Shopify / LS / Custom): last 100 dispatches, failure %
- CAPI destinations (Meta / Google Ads / EMQ): dedup match rate
- AI layer: model fallback count, latency p95

Red flags first. One-line action per item.
#health
AI layer · P2Founder

Outcome-driven revenue summary

Last 30 days — outcome-driven revenue summary:

Outcome event: {{outcome_event_key}}
Currency: {{TRY|EUR|USD}}

- Total: net + refunds
- vs prior 30 days
- Top 5 customers by value (anon ID + amount)
- New vs renewal split
- Refund rate + top 5 reasons

Top-line only — don't confuse with burn.
#outcome#revenue
MCP-readyFounder

Data-quality audit

@gurulu Run a data-quality audit for the last {{7d}}:

- Quarantine / reject count + top 10 reasons
- Missing required-field patterns (event_key × field)
- Duplicate count (dedup hits)
- Identity confidence distribution (low / medium / high %)
- Schema drift warnings
- Pending conflicting person-merge suggestions

Sort by volume first, then by persistent pattern.
#quality
MCP-readyFounder

This month vs last month

@gurulu Compare this month ({{month_year}}) to last month:

Outcome event: {{outcome_event_key}}

- Total + % change
- Weekly curve (both months together)
- 3 most-changed channels (up + down)
- New big customer / segment won or lost
- vs same period last year (if available)

No bold claims — say what the data says.
#compare#monthly
AI layer · P2Founder

What changed materially this week

Pull everything that changed materially last week into one list:

- Outcome events with ±2σ or ±15% deviation
- Registry events added or removed
- Unusual jumps in the identity merge ledger
- New health rule alerts
- New destination / CAPI connection
- DSR forget backlog

1 line per item with a 'why it matters' parenthetical. Max 10 items.
#anomaly#weekly
AI layer · P2Founder

Investor update draft

Draft an investor update for {{month_year}}:

- TL;DR (3 bullets, top line is the most important number)
- Community + product metrics: {{north_star}}, MRR/ARR, customer count, NPS
- Wins + learnings this month
- Open asks — what can the investor help with?
- 3 priorities for next month

No number chasing. If we dropped somewhere, say why and what the plan is.
#investor
AI layer · P2Founder

Anomaly explanation

Explain the {{event_or_metric}} anomaly on {{date}}:

- Magnitude (absolute + % vs baseline)
- Any other anomalous signals at the same time (deploy, ad spike, downstream service)
- Top 3 likely causes
- Data error vs real — what evidence
- 2 queries to run for verification

This will be used for a board / investor summary — keep it short and honest.
#anomaly
MCP-readyMarketer

Build a high-value audience from an RFM cohort

@gurulu Create an M24 audience from an RFM cohort and push it to a destination:

Source cohort: {{cohort_id}}
RFM segment filter: {{rfm_segment}}
Target destination: {{destination_id}}

- Pull the top 10% by monetary score from {{cohort_id}}
- Intersect with the {{rfm_segment}} (e.g. champions, loyal, at_risk)
- Materialize the audience with provenance trace (which events qualified each person)
- Sync to {{destination_id}} (Meta CAPI / Google Ads / webhook)
- Show me the eligible-vs-pushed count + 5 sample members before flipping it live.
#M24#audience#rfm
AI layer · P2Growth

Behavior-based audience (last 30 day active)

Build a behavior-based M24 audience template:

Qualifying event: {{event_key}}
Lookback window: {{lookback_days}} days
Property filters: {{property_filters}}

Example: people who fired {{event_key}} in the last {{lookback_days}} days AND match {{property_filters}} (e.g. plan=pro AND completed_onboarding=true).

- Output: audience definition JSON ready for the M24 builder
- Estimate audience size + 3 lookalike expansion strategies
- Recommend which destination kind fits best (paid retargeting vs lifecycle email)
- Note any consent or GCM v2 constraint to apply before sync.
#M24#audience#behavior
MCP-readyFounder

B2B account-level audience for CSM outreach

@gurulu Build an account-level audience (M24) for CSM / enterprise outreach:

Account IDs: {{account_id_list}}
Tier filter: {{tier_filter}}

- Roll up person → account via the workspace's company identifier
- Filter to accounts in {{tier_filter}} (e.g. enterprise, mid-market)
- Surface health signals per account (last login, MAU trend, support ticket volume)
- Group by CSM owner if available
- Output: CSV-ready table + a Slack-friendly summary for the CSM team.
#M24#audience#b2b
AI layer · P2Developer

Churn-risk audience automation

Automate a churn-risk audience (M24) that fires when engagement drops:

Declining metric: {{declining_metric}}
Threshold: {{threshold}}
Webhook to notify: {{webhook_url}}

- Compare last 7 days vs prior 7 days for {{declining_metric}} per person
- Add to audience when drop > {{threshold}} (e.g. -50%)
- On membership change, POST to {{webhook_url}} with HMAC signature
- Auto-remove when the metric recovers above threshold
- Include a guardrail: pause automation if total audience size > 5% of MAU.
#M24#audience#churn
MCP-readyMarketer

Meta CAPI first-time setup, step by step

@gurulu Walk me through wiring an M25 Meta CAPI destination from zero:

Pixel ID: {{pixel_id}}
Access token: {{access_token}}
Target audience: {{audience_id}}

1. Validate {{access_token}} against the Marketing API + confirm pixel ownership
2. Map our outcome events to Meta standard events (Purchase, Lead, CompleteRegistration)
3. Set up deduplication (event_id + event_time + fbp/fbc)
4. Send 3 test events from the sandbox, confirm them in Events Manager
5. Flip {{audience_id}} sync to live + show me the first hour's match rate.
#M25#destinations#meta
MCP-readyGrowth

Google Ads OAuth + Customer Match setup

@gurulu Set up an M25 Google Ads Customer Match destination:

Customer ID: {{customer_id}}
User list ID: {{user_list_id}}
Developer token: {{developer_token}}

- Run the OAuth flow with refresh-token storage
- Confirm {{customer_id}} access level (standard vs basic)
- Hash PII (email, phone) with SHA-256 + normalization before upload
- Push the first batch into {{user_list_id}}, report match rate per identifier kind
- Schedule incremental sync every 6h + alert if match rate drops below 40%.
#M25#destinations#google-ads
AI layer · P2Developer

Webhook integration with HMAC pattern

Generate an M25 webhook destination with HMAC verification:

Webhook URL: {{webhook_url}}
Shared secret: {{secret}}
Payload shape: {{payload_shape}}

- Sign each POST with `HMAC-SHA256(secret, body)` in the `X-Gurulu-Signature` header
- Include `X-Gurulu-Timestamp` (Unix ms) and reject replays > 5 minutes old
- Match the receiving system's expected payload {{payload_shape}}
- Retry: 5 attempts with exponential backoff (1s, 5s, 30s, 2m, 10m)
- After 5 fails, dead-letter the delivery and notify the workspace owner.
#M25#destinations#webhook
MCP-readyFounder

Audience-to-destination link best practices

@gurulu Link an M24 audience to an M25 destination cleanly:

Audience: {{audience_id}}
Destination kind: {{destination_kind}}
Sync frequency: {{sync_frequency}}

- Pick the right cadence for {{destination_kind}}: realtime CAPI vs hourly batch vs daily CSV
- Map provenance: which event qualified each person stays on the synced row
- Set up rate-limit guardrails (don't exceed the destination's daily quota)
- Add monitoring: alert if sync lag > 2x {{sync_frequency}} or error rate > 2%
- Document a tear-down plan so we can disconnect cleanly during incidents.
#M25#destinations#sync
AI layer · P2Marketer

Customize the morning summary for my sector

Customize the M27 morning summary for {{sector}}:

Sector: {{sector}} (e.g. ecommerce, saas, gambling, media, finance)
Focus metrics: {{focus_metrics}}
Tone: {{tone}} (e.g. terminal, plain, friendly)

- Replace generic 'sessions / signups' with sector-native KPIs ({{focus_metrics}})
- Format numbers the way operators in {{sector}} expect (GMV vs ARR vs handle/hold)
- Lead with 1 anomaly worth reacting to, end with 1 question worth asking
- Keep tone {{tone}}, no marketing fluff, no hedging
- Save the customized summary as the workspace default.
#M27#ai-layer#summary
AI layer · P2Developer

Anomaly investigation workflow

@gurulu Investigate this M27 anomaly end to end:

Alert ID: {{alert_id}}
Event key: {{event_key}}
Severity: {{severity}}

1. Pull the baseline window + the anomalous window for {{event_key}}
2. Decompose by source × campaign × device × geo to find the largest contributor
3. Correlate with deploys, registry changes, destination errors in the same window
4. Rule out data quality issues (quarantine spike? dedup miss? identity merge wave?)
5. Produce 3 ranked hypotheses + 2 SQL queries to verify each
6. Recommend an action by {{severity}} (info → log, warn → review, critical → page on-call).
#M27#ai-layer#anomaly
MCP-readyFounder

AI cost optimization (chain provider tuning)

@gurulu Tune the M27 ai-layer chain to fit a monthly budget:

Monthly budget: {{monthly_budget}}
Provider preference: {{provider_preference}} (e.g. minimax_first, bedrock_first, cheapest_first)

- Profile last 30 days: per-prompt-type cost split (summary, anomaly, copy, codegen)
- Suggest which prompt classes can drop to cheaper providers without quality loss
- Configure cache hit targets per class (target ≥ 60% on summaries)
- Reorder the fallback chain to honor {{provider_preference}}
- Show projected monthly cost vs {{monthly_budget}} + a hard cap that pauses non-critical jobs.
#M27#ai-layer#cost
AI layer · P2Growth

Multi-language summary prompt

Generate an M27 summary in {{language}} for {{audience}}:

Target language: {{language}} (e.g. tr, en, zh, ar)
Audience: {{audience}} (e.g. founders, marketers, finance team)
Persona voice: {{persona_voice}} (e.g. analyst, coach, terminal)

- Write natively in {{language}}, do not translate from English (avoid awkward calques)
- Match {{audience}}'s metric literacy (no jargon for finance team, deep for analysts)
- Keep {{persona_voice}} across the whole summary
- For RTL languages (ar) wrap numbers in LTR isolates to keep ordering correct
- End with one action item phrased in the target language's imperative form.
#M27#ai-layer#i18n
MCP-readyFounder

Partner application + Stripe Connect onboarding

@gurulu Onboard a new M43 affiliate partner:

Partner type: {{partner_type}} (e.g. agency, creator, community, integrator)
Expected monthly volume: {{expected_volume}}

- Review the application + flag any compliance risk (sanctioned regions, conflict of interest)
- Provision a Stripe Connect Express account (KYC + payout currency)
- Generate the partner's referral slug + dashboard credentials
- Pick the starting commission tier based on {{partner_type}} + {{expected_volume}}
- Send a welcome message with 3 templates: blog, X thread, podcast plug-in.
#M43#affiliate#stripe
AI layer · P2Marketer

Referral tracking + UTM strategy

Design an M43 referral + UTM tracking plan:

Campaign: {{utm_campaign}}
Landing path: {{landing_path}}
Referral slug: {{slug}}

- Build the canonical link: gurulu.io{{landing_path}}?ref={{slug}}&utm_source=affiliate&utm_medium=referral&utm_campaign={{utm_campaign}}
- Persist `ref` in a first-party cookie for 30 days (consent-aware)
- Attribute conversions to the slug even when UTMs drop mid-funnel
- Set up a dashboard per partner: clicks, signups, paid conversions, MRR contribution
- Provide 3 UTM hygiene rules so partners stop overwriting each other.
#M43#affiliate#utm
MCP-readyFounder

Payout optimization & tier management

@gurulu Optimize payout + tier for partner {{partner_id}}:

Partner: {{partner_id}}
Cumulative MRR contribution: {{cumulative_mrr}}
Tier override %: {{tier_override_pct}}

- Read current tier from the M43 ledger + the default schedule (20% / 25% / 30%)
- If {{cumulative_mrr}} crosses the next threshold, promote the tier on next month's payout
- Apply {{tier_override_pct}} if set (e.g. strategic partner with custom deal)
- Forecast next month's payout under current vs new tier
- Note any clawback risk (refunds, churned customers within the protection window).
#M43#affiliate#payout
AI layer · P2Developer

Multi-page pattern detection workflow

@gurulu Detect a repeating selector across many pages with the M13 F2.3 crawler:

Base selector: {{base_selector}}
URL pattern: {{url_pattern}}
Max pages: {{max_pages}}

- Crawl up to {{max_pages}} URLs matching {{url_pattern}} (respect robots.txt + rate limits)
- For each page, locate elements matching {{base_selector}} + capture their stable attributes
- Cluster selector variants and pick the most resilient one (data-testid > role > class chain)
- Propose a registry rule that fires on the unified selector across all matching URLs
- Show a coverage report: hit % per page + 5 outliers to review before saving the rule.
#M13#F2#crawler
Ready-made prompts — Gurulu