[{"data":1,"prerenderedAt":-1},["ShallowReactive",2],{"skill-algolia-algolia-events-insights":3,"mdc-tt9tt-key":39,"related-org-algolia-algolia-events-insights":977,"related-repo-algolia-algolia-events-insights":1146},{"slug":4,"name":4,"fn":5,"description":6,"org":7,"tags":11,"stars":23,"repoUrl":24,"updatedAt":25,"license":26,"forks":27,"topics":28,"repo":34,"sourceUrl":37,"mdContent":38},"algolia-events-insights","instrument Algolia events for analytics","Algolia event instrumentation guidance for Insights, analytics, personalization, Dynamic Re-Ranking, Recommend, and merchandising feedback loops. Use for search, autocomplete, browse, ecommerce, personalization, recommendations, or analytics instrumentation. Makes event decisions explicit before an Algolia UI is considered ready. Use when implementing or auditing clickedObjectIDsAfterSearch, convertedObjectIDsAfterSearch, viewedObjectIDs, addedToCartObjectIDsAfterSearch, purchasedObjectIDsAfterSearch, userToken, queryID, eventName, eventSubtype, or frontend\u002Fbackend event pipelines. Do NOT use for live analytics retrieval, top-query inspection, or account-aware diagnostics; use algolia-mcp. Do NOT use for framework-specific InstantSearch or Autocomplete APIs; use the official instantsearch skill alongside this planning and validation skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},"algolia","Algolia","https:\u002F\u002Fpexgzepcugksgbtrxkhf.supabase.co\u002Fstorage\u002Fv1\u002Fobject\u002Fpublic\u002Forg-logos\u002Falgolia.png",[12,14,17,20],{"name":9,"slug":8,"type":13},"tag",{"name":15,"slug":16,"type":13},"Search","search",{"name":18,"slug":19,"type":13},"Analytics","analytics",{"name":21,"slug":22,"type":13},"Personalization","personalization",8,"https:\u002F\u002Fgithub.com\u002Falgolia\u002Fskills","2026-08-01T06:06:02.009712","MIT",2,[29,30,8,31,32,16,33],"agent","ai-assistant","mcp","recommendations","skills",{"repoUrl":24,"stars":23,"forks":27,"topics":35,"description":36},[29,30,8,31,32,16,33],"Algolia skills for AI Agents","https:\u002F\u002Fgithub.com\u002Falgolia\u002Fskills\u002Ftree\u002FHEAD\u002Fskills\u002Falgolia-events-insights","---\nname: algolia-events-insights\ndescription: >\n  Algolia event instrumentation guidance for Insights, analytics, personalization, Dynamic Re-Ranking, Recommend, and merchandising feedback loops. Use for search, autocomplete, browse, ecommerce, personalization, recommendations, or analytics instrumentation. Makes event decisions explicit before an Algolia UI is considered ready. Use when implementing or auditing clickedObjectIDsAfterSearch, convertedObjectIDsAfterSearch, viewedObjectIDs, addedToCartObjectIDsAfterSearch, purchasedObjectIDsAfterSearch, userToken, queryID, eventName, eventSubtype, or frontend\u002Fbackend event pipelines. Do NOT use for live analytics retrieval, top-query inspection, or account-aware diagnostics; use algolia-mcp. Do NOT use for framework-specific InstantSearch or Autocomplete APIs; use the official instantsearch skill alongside this planning and validation skill.\nlicense: MIT\nmetadata:\n  author: algolia\n  version: \"0.5\"\n---\n\n# Algolia Events Insights\n\nUse this skill whenever user behavior needs to power analytics, personalization, Recommend, dynamic re-ranking, or measurable search quality.\n\n## Customer-Facing Standard\n\n- Start with one validated result-click event and one validated primary conversion before expanding.\n- State which owner controls each event: frontend, backend, analytics\u002Ftag manager, or data pipeline.\n- Use public `academy.algolia.com` for learning alignment and public `algolia.com\u002Fdoc` for current implementation guidance when source-backed context is needed.\n- When an Academy metadata reference pack is available, use only its `title`, `url`, `course`, `module`, `learning_objectives`, and `updated_at` fields for structure. If it is stale or no match exists, fall back to live Academy\u002Fdocs lookup. Do not treat cached metadata as course content or implementation authority.\n- Do not require custom Academy\u002Fdocs access; use customer-provided sources only as optional context.\n- When live Algolia data, analytics, index inspection, settings changes, or account actions are needed, use Algolia MCP, the Algolia CLI, or official Algolia skills for the live operation, then apply this skill to interpret results and validate the customer-ready implementation path.\n- Produce an event taxonomy, payload checklist, duplicate-event rule, and validation plan.\n- Distinguish between events that are merely ingestible and events that are usable by analytics, Dynamic Re-Ranking, NeuralSearch, Recommend, personalization, or revenue reporting.\n- Choose the implementation path deliberately: InstantSearch\u002Fsearch-insights first when possible, GTM for constrained marketing-managed frontends, Segment\u002FCDP for centralized pipelines, and backend ownership for final server-side conversions.\n\n## Official Companion Skills\n\n- Use official `algolia-mcp` for live analytics signals such as top searches, no-result rates, click positions, no-click searches, and outcome metrics.\n- Use official `instantsearch` when event wiring belongs in InstantSearch or Autocomplete implementation code.\n- Use this skill after the official tool call to produce the event taxonomy, ownership model, payload checks, and feature-readiness notes.\n\n## Search UI Event Decision Point\n\nIf the task includes a search results page, autocomplete, browse page, recommendations, personalization, Dynamic Re-Ranking, or ecommerce search:\n\n- Produce an event taxonomy before or during implementation when practical.\n- Plan events for every result interaction that the UI supports.\n- If event instrumentation is not implemented now, document the user-approved deferral, owner, risk, and validation follow-up in the completion summary.\n\nRequired output:\n\n- `userToken` strategy.\n- Event names.\n- Event types.\n- Source UI surface.\n- Required Algolia fields: `index`, `objectID`, `queryID`, and `position` where the event type requires them.\n- Implementation location.\n- Validation method.\n\nFor demos and prototypes, still produce a lightweight event table with planned events, deferred production concerns, and validation steps.\n\n## Source-Of-Truth Rules\n\n- Verify the current event method and required fields in public docs or the official implementation skill before writing code.\n- Do not use an `AfterSearch` method unless the interaction is explicitly attributable to an Algolia search or browse response and has a valid `queryID`.\n- If a conversion cannot include `queryID`, decide whether Algolia can infer attribution from a prior click. If not, use the non-AfterSearch method and state the analytics or feature limitation.\n- A 200 response, network success, or Debugger visibility proves ingestion only. Do not call the event setup ready until the payload is complete, consistent, attributed, and eligible for the intended downstream feature.\n- Treat generic views and filter interactions as weak signals unless the selected feature or personalization strategy explicitly needs them. Do not let weak P2 events distract from search-attributed clicks and conversions.\n\n## Workflow\n\n1. Read `references\u002Fevents-guide.md` before adding or changing event code.\n2. Read `references\u002Fexample-output.md` when producing an event taxonomy or customer-facing event setup plan.\n3. Read `references\u002Fsearch-event-taxonomy.md` when producing a search, browse, autocomplete, recommendations, or ecommerce event taxonomy.\n4. Separate the business path from the technical path. Business users define what to track, why it matters, KPIs, surfaces, and success criteria. Technical users implement schema, queryID propagation, identity consistency, validation, and monitoring.\n5. Start with the simple event plan: search result click, result view when needed, primary conversion, and add-to-cart or purchase when relevant.\n6. Prioritize with P0\u002FP1\u002FP2. P0 is search-attributed clicks plus the primary conversion. P1 adds important outcomes such as add-to-cart, purchase, lead, save, support resolution, or recommendation interactions. P2 adds optional or context-specific signals such as generic views or filter interactions.\n7. Identify which downstream features need events: analytics only, A\u002FB testing, personalization, Recommend, dynamic re-ranking, merchandising, NeuralSearch evaluation, or Agent Studio feedback.\n8. Confirm the user identity strategy before implementation. Anonymous and authenticated user tokens must be consistent enough to join behavior.\n9. Preserve search attribution. Events after search must include `queryID`, `objectIDs`, `positions` when required, `index`, and the same user token used for the search.\n10. Select the implementation path and document connector risks: InstantSearch\u002Fsearch-insights, custom frontend, GTM, Segment\u002FCDP, backend, or hybrid.\n11. Validate in a non-production environment before launch using arrival, usability, and attribution checks.\n12. Add a regression check after releases that touch UI structure, routing, identity, checkout, backend workflows, or analytics connectors.\n\n## Simple Implementation Recipe\n\nUse this order unless the app has unusual constraints:\n\n1. Turn on queryID retrieval for searches that produce clickable results.\n2. Set one durable anonymous `userToken`, then decide how it maps after login.\n3. Send click events from result cards using the hit's `objectID`, `index`, `queryID`, and displayed position.\n4. Send the primary conversion event from the place the conversion actually happens.\n5. Add cart, purchase, lead, save, or support-deflection events only when they map to a real business outcome.\n6. Test the network payload, Events Health, Debugger, user timeline where available, and destination or feature eligibility before calling the setup complete.\n\nPrefer a minimum viable event setup over a large taxonomy. For most customers, the first useful milestone is one validated result-click event and one validated primary conversion event with the same `userToken`, correct `objectID`, correct `index`, and `queryID` when search attribution applies.\n\n## Questions To Ask\n\n- Which conversions matter: view, click, add to cart, purchase, lead, signup, content save, support deflection?\n- Which Algolia-powered surfaces need events: search page, category\u002Fbrowse page, autocomplete, product detail page reached from search, recommendations, content search, support search, or agent experiences?\n- Which events are P0, P1, and P2 for this business goal?\n- Are events sent from the browser, backend, or both?\n- Which implementation path fits this stack: InstantSearch\u002Fsearch-insights, custom frontend, GTM, Segment\u002FCDP, backend, or hybrid?\n- How is `userToken` assigned before and after login?\n- Can the UI access the `queryID` and hit position from the search response?\n- Are purchases or other conversions available only server-side?\n- Which indices and objectIDs should events reference when the same item appears in multiple indices or replicas?\n- What should prevent duplicate events when frontend tags, backend conversions, GTM, or Segment all observe the same action?\n- What validation surface will prove the event is not only received, but usable by the intended feature?\n\n## Implementation Standards\n\n- Use search-attributed event methods for actions caused by search results.\n- Do not invent a new `userToken` per event or page load.\n- Use stable, descriptive `eventName` values that business teams can read in reports.\n- Include price, quantity, currency, and object data where the selected event type supports it and the business needs revenue analysis.\n- Avoid double counting by deciding whether frontend, backend, or a deduped pipeline owns each event.\n- Treat a 200 response or visible Debugger event as ingestion proof, not usefulness proof. A valid event can still be unusable for downstream features if it has stale queryID, mismatched objectID, inconsistent userToken, missing position, weak signal type, or duplicate ownership.\n- Preserve the exact record identity from the search result. If the user clicked or converted on a variant, do not send a parent product ID unless the original search result used that same parent objectID.\n- Explain deduplication risk in customer language: repeated events from the same user on the same record may not all count toward downstream models, and a hardcoded shared userToken can make many users look like one user.\n- Positions are one-based. If positions are computed manually from an array index, add 1 and validate against the rendered result order.\n- Validate the full journey, not isolated events: search or browse request, click, add-to-cart or primary conversion, purchase or final outcome.\n- For Segment\u002FCDP or GTM paths, validate both the source payload and the transformed Algolia payload because mappings may rename, flatten, drop, duplicate, or mis-shape fields.\n\n## Anti-Patterns\n\n- Building a large taxonomy before one click and one primary conversion are validated.\n- Over-investing in P2 events such as broad view or filter interactions before P0 search-attributed clicks and conversions are healthy.\n- Sending events from a tag manager that cannot access the actual `objectID`, `queryID`, position, index, or stable userToken.\n- Mixing frontend and backend purchase events without a deduplication rule.\n- Reusing stale queryIDs long after the search context is gone.\n- Treating events as optional for analytics quality, personalization, Recommend, dynamic re-ranking, Agent Studio feedback, or rollout measurement.\n- Calling filter clicks or broad view events AI-ready signals while P0 result clicks or conversions are missing.\n- Validating only one system in a connector path, such as Segment Debugger but not Algolia Debugger, or browser Network but not Events Health.\n- Sending SKUs, parent IDs, or external IDs when Algolia expects the exact `objectID` returned in the hit.\n\n## Completion Checkpoints\n\nBefore calling an implementation ready, or when handing off a prototype with follow-ups, state whether these checkpoints are satisfied, deferred, or unknown:\n\n- `userToken` strategy status.\n- Hit click attribution status for `queryID`, `objectID`, `index`, and displayed position.\n- Autocomplete direct-result click versus query suggestion selection status.\n- Conversion event status: planned, implemented, validated, deferred, or unknown.\n- Event ownership and duplicate-event rule status.\n- Validation step status.\n- Implementation path selected and connector-specific risks documented.\n- Usability status: arrived, payload complete, attribution intact, feature destination or eligibility checked.\n- Regression plan for future UI, route, identity, checkout, or connector changes.\n\n## Academy And Customer Education Alignment\n\nWhen source-backed guidance is needed, search public Academy sources for Insights, analytics, and AI-readiness learning objectives and public Algolia docs for queryID, userToken, event methods, personalization, Recommend, and dynamic re-ranking details. Use source guidance to build a customer-appropriate event taxonomy, maturity plan, and validation path.\n\n## Maturity Behavior\n\n- Beginner implementation: implement one result-click event and one primary conversion event with a durable `userToken`.\n- Production readiness: validate payloads, ownership, duplicate prevention, backend conversions, and downstream visibility.\n- Optimization: connect events to analytics, A\u002FB testing, personalization, Recommend, merchandising, and dynamic re-ranking decisions.\n- AI readiness: prove the event setup can support NeuralSearch evaluation, Agent Studio feedback, AI assistant quality measurement, and conversion attribution.\n\n## Output Contract\n\nReturn a prioritized Event Plan, Connector Recommendation, Developer Handoff Sheet, code changes or owner handoff steps, and a validation plan. For audits, report missing attribution, identity inconsistencies, duplicate-event risks, weak-signal overinvestment, connector mapping risks, and downstream feature blockers first. Make the first recommendation small enough that a team can implement it in one sprint.\n",{"data":40,"body":43},{"name":4,"description":6,"license":26,"metadata":41},{"author":8,"version":42},"0.5",{"type":44,"children":45},"root",[46,54,60,67,179,185,218,224,229,247,252,325,330,336,386,392,506,512,517,576,607,613,685,691,764,770,838,844,849,920,926,931,937,966,972],{"type":47,"tag":48,"props":49,"children":50},"element","h1",{"id":4},[51],{"type":52,"value":53},"text","Algolia Events Insights",{"type":47,"tag":55,"props":56,"children":57},"p",{},[58],{"type":52,"value":59},"Use this skill whenever user behavior needs to power analytics, personalization, Recommend, dynamic re-ranking, or measurable search quality.",{"type":47,"tag":61,"props":62,"children":64},"h2",{"id":63},"customer-facing-standard",[65],{"type":52,"value":66},"Customer-Facing Standard",{"type":47,"tag":68,"props":69,"children":70},"ul",{},[71,77,82,104,154,159,164,169,174],{"type":47,"tag":72,"props":73,"children":74},"li",{},[75],{"type":52,"value":76},"Start with one validated result-click event and one validated primary conversion before expanding.",{"type":47,"tag":72,"props":78,"children":79},{},[80],{"type":52,"value":81},"State which owner controls each event: frontend, backend, analytics\u002Ftag manager, or data pipeline.",{"type":47,"tag":72,"props":83,"children":84},{},[85,87,94,96,102],{"type":52,"value":86},"Use public ",{"type":47,"tag":88,"props":89,"children":91},"code",{"className":90},[],[92],{"type":52,"value":93},"academy.algolia.com",{"type":52,"value":95}," for learning alignment and public ",{"type":47,"tag":88,"props":97,"children":99},{"className":98},[],[100],{"type":52,"value":101},"algolia.com\u002Fdoc",{"type":52,"value":103}," for current implementation guidance when source-backed context is needed.",{"type":47,"tag":72,"props":105,"children":106},{},[107,109,115,117,123,124,130,131,137,138,144,146,152],{"type":52,"value":108},"When an Academy metadata reference pack is available, use only its ",{"type":47,"tag":88,"props":110,"children":112},{"className":111},[],[113],{"type":52,"value":114},"title",{"type":52,"value":116},", ",{"type":47,"tag":88,"props":118,"children":120},{"className":119},[],[121],{"type":52,"value":122},"url",{"type":52,"value":116},{"type":47,"tag":88,"props":125,"children":127},{"className":126},[],[128],{"type":52,"value":129},"course",{"type":52,"value":116},{"type":47,"tag":88,"props":132,"children":134},{"className":133},[],[135],{"type":52,"value":136},"module",{"type":52,"value":116},{"type":47,"tag":88,"props":139,"children":141},{"className":140},[],[142],{"type":52,"value":143},"learning_objectives",{"type":52,"value":145},", and ",{"type":47,"tag":88,"props":147,"children":149},{"className":148},[],[150],{"type":52,"value":151},"updated_at",{"type":52,"value":153}," fields for structure. If it is stale or no match exists, fall back to live Academy\u002Fdocs lookup. Do not treat cached metadata as course content or implementation authority.",{"type":47,"tag":72,"props":155,"children":156},{},[157],{"type":52,"value":158},"Do not require custom Academy\u002Fdocs access; use customer-provided sources only as optional context.",{"type":47,"tag":72,"props":160,"children":161},{},[162],{"type":52,"value":163},"When live Algolia data, analytics, index inspection, settings changes, or account actions are needed, use Algolia MCP, the Algolia CLI, or official Algolia skills for the live operation, then apply this skill to interpret results and validate the customer-ready implementation path.",{"type":47,"tag":72,"props":165,"children":166},{},[167],{"type":52,"value":168},"Produce an event taxonomy, payload checklist, duplicate-event rule, and validation plan.",{"type":47,"tag":72,"props":170,"children":171},{},[172],{"type":52,"value":173},"Distinguish between events that are merely ingestible and events that are usable by analytics, Dynamic Re-Ranking, NeuralSearch, Recommend, personalization, or revenue reporting.",{"type":47,"tag":72,"props":175,"children":176},{},[177],{"type":52,"value":178},"Choose the implementation path deliberately: InstantSearch\u002Fsearch-insights first when possible, GTM for constrained marketing-managed frontends, Segment\u002FCDP for centralized pipelines, and backend ownership for final server-side conversions.",{"type":47,"tag":61,"props":180,"children":182},{"id":181},"official-companion-skills",[183],{"type":52,"value":184},"Official Companion Skills",{"type":47,"tag":68,"props":186,"children":187},{},[188,201,213],{"type":47,"tag":72,"props":189,"children":190},{},[191,193,199],{"type":52,"value":192},"Use official ",{"type":47,"tag":88,"props":194,"children":196},{"className":195},[],[197],{"type":52,"value":198},"algolia-mcp",{"type":52,"value":200}," for live analytics signals such as top searches, no-result rates, click positions, no-click searches, and outcome metrics.",{"type":47,"tag":72,"props":202,"children":203},{},[204,205,211],{"type":52,"value":192},{"type":47,"tag":88,"props":206,"children":208},{"className":207},[],[209],{"type":52,"value":210},"instantsearch",{"type":52,"value":212}," when event wiring belongs in InstantSearch or Autocomplete implementation code.",{"type":47,"tag":72,"props":214,"children":215},{},[216],{"type":52,"value":217},"Use this skill after the official tool call to produce the event taxonomy, ownership model, payload checks, and feature-readiness notes.",{"type":47,"tag":61,"props":219,"children":221},{"id":220},"search-ui-event-decision-point",[222],{"type":52,"value":223},"Search UI Event Decision Point",{"type":47,"tag":55,"props":225,"children":226},{},[227],{"type":52,"value":228},"If the task includes a search results page, autocomplete, browse page, recommendations, personalization, Dynamic Re-Ranking, or ecommerce search:",{"type":47,"tag":68,"props":230,"children":231},{},[232,237,242],{"type":47,"tag":72,"props":233,"children":234},{},[235],{"type":52,"value":236},"Produce an event taxonomy before or during implementation when practical.",{"type":47,"tag":72,"props":238,"children":239},{},[240],{"type":52,"value":241},"Plan events for every result interaction that the UI supports.",{"type":47,"tag":72,"props":243,"children":244},{},[245],{"type":52,"value":246},"If event instrumentation is not implemented now, document the user-approved deferral, owner, risk, and validation follow-up in the completion summary.",{"type":47,"tag":55,"props":248,"children":249},{},[250],{"type":52,"value":251},"Required output:",{"type":47,"tag":68,"props":253,"children":254},{},[255,266,271,276,281,315,320],{"type":47,"tag":72,"props":256,"children":257},{},[258,264],{"type":47,"tag":88,"props":259,"children":261},{"className":260},[],[262],{"type":52,"value":263},"userToken",{"type":52,"value":265}," strategy.",{"type":47,"tag":72,"props":267,"children":268},{},[269],{"type":52,"value":270},"Event names.",{"type":47,"tag":72,"props":272,"children":273},{},[274],{"type":52,"value":275},"Event types.",{"type":47,"tag":72,"props":277,"children":278},{},[279],{"type":52,"value":280},"Source UI surface.",{"type":47,"tag":72,"props":282,"children":283},{},[284,286,292,293,299,300,306,307,313],{"type":52,"value":285},"Required Algolia fields: ",{"type":47,"tag":88,"props":287,"children":289},{"className":288},[],[290],{"type":52,"value":291},"index",{"type":52,"value":116},{"type":47,"tag":88,"props":294,"children":296},{"className":295},[],[297],{"type":52,"value":298},"objectID",{"type":52,"value":116},{"type":47,"tag":88,"props":301,"children":303},{"className":302},[],[304],{"type":52,"value":305},"queryID",{"type":52,"value":145},{"type":47,"tag":88,"props":308,"children":310},{"className":309},[],[311],{"type":52,"value":312},"position",{"type":52,"value":314}," where the event type requires them.",{"type":47,"tag":72,"props":316,"children":317},{},[318],{"type":52,"value":319},"Implementation location.",{"type":47,"tag":72,"props":321,"children":322},{},[323],{"type":52,"value":324},"Validation method.",{"type":47,"tag":55,"props":326,"children":327},{},[328],{"type":52,"value":329},"For demos and prototypes, still produce a lightweight event table with planned events, deferred production concerns, and validation steps.",{"type":47,"tag":61,"props":331,"children":333},{"id":332},"source-of-truth-rules",[334],{"type":52,"value":335},"Source-Of-Truth Rules",{"type":47,"tag":68,"props":337,"children":338},{},[339,344,364,376,381],{"type":47,"tag":72,"props":340,"children":341},{},[342],{"type":52,"value":343},"Verify the current event method and required fields in public docs or the official implementation skill before writing code.",{"type":47,"tag":72,"props":345,"children":346},{},[347,349,355,357,362],{"type":52,"value":348},"Do not use an ",{"type":47,"tag":88,"props":350,"children":352},{"className":351},[],[353],{"type":52,"value":354},"AfterSearch",{"type":52,"value":356}," method unless the interaction is explicitly attributable to an Algolia search or browse response and has a valid ",{"type":47,"tag":88,"props":358,"children":360},{"className":359},[],[361],{"type":52,"value":305},{"type":52,"value":363},".",{"type":47,"tag":72,"props":365,"children":366},{},[367,369,374],{"type":52,"value":368},"If a conversion cannot include ",{"type":47,"tag":88,"props":370,"children":372},{"className":371},[],[373],{"type":52,"value":305},{"type":52,"value":375},", decide whether Algolia can infer attribution from a prior click. If not, use the non-AfterSearch method and state the analytics or feature limitation.",{"type":47,"tag":72,"props":377,"children":378},{},[379],{"type":52,"value":380},"A 200 response, network success, or Debugger visibility proves ingestion only. Do not call the event setup ready until the payload is complete, consistent, attributed, and eligible for the intended downstream feature.",{"type":47,"tag":72,"props":382,"children":383},{},[384],{"type":52,"value":385},"Treat generic views and filter interactions as weak signals unless the selected feature or personalization strategy explicitly needs them. Do not let weak P2 events distract from search-attributed clicks and conversions.",{"type":47,"tag":61,"props":387,"children":389},{"id":388},"workflow",[390],{"type":52,"value":391},"Workflow",{"type":47,"tag":393,"props":394,"children":395},"ol",{},[396,409,421,433,438,443,448,453,458,491,496,501],{"type":47,"tag":72,"props":397,"children":398},{},[399,401,407],{"type":52,"value":400},"Read ",{"type":47,"tag":88,"props":402,"children":404},{"className":403},[],[405],{"type":52,"value":406},"references\u002Fevents-guide.md",{"type":52,"value":408}," before adding or changing event code.",{"type":47,"tag":72,"props":410,"children":411},{},[412,413,419],{"type":52,"value":400},{"type":47,"tag":88,"props":414,"children":416},{"className":415},[],[417],{"type":52,"value":418},"references\u002Fexample-output.md",{"type":52,"value":420}," when producing an event taxonomy or customer-facing event setup plan.",{"type":47,"tag":72,"props":422,"children":423},{},[424,425,431],{"type":52,"value":400},{"type":47,"tag":88,"props":426,"children":428},{"className":427},[],[429],{"type":52,"value":430},"references\u002Fsearch-event-taxonomy.md",{"type":52,"value":432}," when producing a search, browse, autocomplete, recommendations, or ecommerce event taxonomy.",{"type":47,"tag":72,"props":434,"children":435},{},[436],{"type":52,"value":437},"Separate the business path from the technical path. Business users define what to track, why it matters, KPIs, surfaces, and success criteria. Technical users implement schema, queryID propagation, identity consistency, validation, and monitoring.",{"type":47,"tag":72,"props":439,"children":440},{},[441],{"type":52,"value":442},"Start with the simple event plan: search result click, result view when needed, primary conversion, and add-to-cart or purchase when relevant.",{"type":47,"tag":72,"props":444,"children":445},{},[446],{"type":52,"value":447},"Prioritize with P0\u002FP1\u002FP2. P0 is search-attributed clicks plus the primary conversion. P1 adds important outcomes such as add-to-cart, purchase, lead, save, support resolution, or recommendation interactions. P2 adds optional or context-specific signals such as generic views or filter interactions.",{"type":47,"tag":72,"props":449,"children":450},{},[451],{"type":52,"value":452},"Identify which downstream features need events: analytics only, A\u002FB testing, personalization, Recommend, dynamic re-ranking, merchandising, NeuralSearch evaluation, or Agent Studio feedback.",{"type":47,"tag":72,"props":454,"children":455},{},[456],{"type":52,"value":457},"Confirm the user identity strategy before implementation. Anonymous and authenticated user tokens must be consistent enough to join behavior.",{"type":47,"tag":72,"props":459,"children":460},{},[461,463,468,469,475,476,482,484,489],{"type":52,"value":462},"Preserve search attribution. Events after search must include ",{"type":47,"tag":88,"props":464,"children":466},{"className":465},[],[467],{"type":52,"value":305},{"type":52,"value":116},{"type":47,"tag":88,"props":470,"children":472},{"className":471},[],[473],{"type":52,"value":474},"objectIDs",{"type":52,"value":116},{"type":47,"tag":88,"props":477,"children":479},{"className":478},[],[480],{"type":52,"value":481},"positions",{"type":52,"value":483}," when required, ",{"type":47,"tag":88,"props":485,"children":487},{"className":486},[],[488],{"type":52,"value":291},{"type":52,"value":490},", and the same user token used for the search.",{"type":47,"tag":72,"props":492,"children":493},{},[494],{"type":52,"value":495},"Select the implementation path and document connector risks: InstantSearch\u002Fsearch-insights, custom frontend, GTM, Segment\u002FCDP, backend, or hybrid.",{"type":47,"tag":72,"props":497,"children":498},{},[499],{"type":52,"value":500},"Validate in a non-production environment before launch using arrival, usability, and attribution checks.",{"type":47,"tag":72,"props":502,"children":503},{},[504],{"type":52,"value":505},"Add a regression check after releases that touch UI structure, routing, identity, checkout, backend workflows, or analytics connectors.",{"type":47,"tag":61,"props":507,"children":509},{"id":508},"simple-implementation-recipe",[510],{"type":52,"value":511},"Simple Implementation Recipe",{"type":47,"tag":55,"props":513,"children":514},{},[515],{"type":52,"value":516},"Use this order unless the app has unusual constraints:",{"type":47,"tag":393,"props":518,"children":519},{},[520,525,537,561,566,571],{"type":47,"tag":72,"props":521,"children":522},{},[523],{"type":52,"value":524},"Turn on queryID retrieval for searches that produce clickable results.",{"type":47,"tag":72,"props":526,"children":527},{},[528,530,535],{"type":52,"value":529},"Set one durable anonymous ",{"type":47,"tag":88,"props":531,"children":533},{"className":532},[],[534],{"type":52,"value":263},{"type":52,"value":536},", then decide how it maps after login.",{"type":47,"tag":72,"props":538,"children":539},{},[540,542,547,548,553,554,559],{"type":52,"value":541},"Send click events from result cards using the hit's ",{"type":47,"tag":88,"props":543,"children":545},{"className":544},[],[546],{"type":52,"value":298},{"type":52,"value":116},{"type":47,"tag":88,"props":549,"children":551},{"className":550},[],[552],{"type":52,"value":291},{"type":52,"value":116},{"type":47,"tag":88,"props":555,"children":557},{"className":556},[],[558],{"type":52,"value":305},{"type":52,"value":560},", and displayed position.",{"type":47,"tag":72,"props":562,"children":563},{},[564],{"type":52,"value":565},"Send the primary conversion event from the place the conversion actually happens.",{"type":47,"tag":72,"props":567,"children":568},{},[569],{"type":52,"value":570},"Add cart, purchase, lead, save, or support-deflection events only when they map to a real business outcome.",{"type":47,"tag":72,"props":572,"children":573},{},[574],{"type":52,"value":575},"Test the network payload, Events Health, Debugger, user timeline where available, and destination or feature eligibility before calling the setup complete.",{"type":47,"tag":55,"props":577,"children":578},{},[579,581,586,588,593,594,599,600,605],{"type":52,"value":580},"Prefer a minimum viable event setup over a large taxonomy. For most customers, the first useful milestone is one validated result-click event and one validated primary conversion event with the same ",{"type":47,"tag":88,"props":582,"children":584},{"className":583},[],[585],{"type":52,"value":263},{"type":52,"value":587},", correct ",{"type":47,"tag":88,"props":589,"children":591},{"className":590},[],[592],{"type":52,"value":298},{"type":52,"value":587},{"type":47,"tag":88,"props":595,"children":597},{"className":596},[],[598],{"type":52,"value":291},{"type":52,"value":145},{"type":47,"tag":88,"props":601,"children":603},{"className":602},[],[604],{"type":52,"value":305},{"type":52,"value":606}," when search attribution applies.",{"type":47,"tag":61,"props":608,"children":610},{"id":609},"questions-to-ask",[611],{"type":52,"value":612},"Questions To Ask",{"type":47,"tag":68,"props":614,"children":615},{},[616,621,626,631,636,641,653,665,670,675,680],{"type":47,"tag":72,"props":617,"children":618},{},[619],{"type":52,"value":620},"Which conversions matter: view, click, add to cart, purchase, lead, signup, content save, support deflection?",{"type":47,"tag":72,"props":622,"children":623},{},[624],{"type":52,"value":625},"Which Algolia-powered surfaces need events: search page, category\u002Fbrowse page, autocomplete, product detail page reached from search, recommendations, content search, support search, or agent experiences?",{"type":47,"tag":72,"props":627,"children":628},{},[629],{"type":52,"value":630},"Which events are P0, P1, and P2 for this business goal?",{"type":47,"tag":72,"props":632,"children":633},{},[634],{"type":52,"value":635},"Are events sent from the browser, backend, or both?",{"type":47,"tag":72,"props":637,"children":638},{},[639],{"type":52,"value":640},"Which implementation path fits this stack: InstantSearch\u002Fsearch-insights, custom frontend, GTM, Segment\u002FCDP, backend, or hybrid?",{"type":47,"tag":72,"props":642,"children":643},{},[644,646,651],{"type":52,"value":645},"How is ",{"type":47,"tag":88,"props":647,"children":649},{"className":648},[],[650],{"type":52,"value":263},{"type":52,"value":652}," assigned before and after login?",{"type":47,"tag":72,"props":654,"children":655},{},[656,658,663],{"type":52,"value":657},"Can the UI access the ",{"type":47,"tag":88,"props":659,"children":661},{"className":660},[],[662],{"type":52,"value":305},{"type":52,"value":664}," and hit position from the search response?",{"type":47,"tag":72,"props":666,"children":667},{},[668],{"type":52,"value":669},"Are purchases or other conversions available only server-side?",{"type":47,"tag":72,"props":671,"children":672},{},[673],{"type":52,"value":674},"Which indices and objectIDs should events reference when the same item appears in multiple indices or replicas?",{"type":47,"tag":72,"props":676,"children":677},{},[678],{"type":52,"value":679},"What should prevent duplicate events when frontend tags, backend conversions, GTM, or Segment all observe the same action?",{"type":47,"tag":72,"props":681,"children":682},{},[683],{"type":52,"value":684},"What validation surface will prove the event is not only received, but usable by the intended feature?",{"type":47,"tag":61,"props":686,"children":688},{"id":687},"implementation-standards",[689],{"type":52,"value":690},"Implementation Standards",{"type":47,"tag":68,"props":692,"children":693},{},[694,699,711,724,729,734,739,744,749,754,759],{"type":47,"tag":72,"props":695,"children":696},{},[697],{"type":52,"value":698},"Use search-attributed event methods for actions caused by search results.",{"type":47,"tag":72,"props":700,"children":701},{},[702,704,709],{"type":52,"value":703},"Do not invent a new ",{"type":47,"tag":88,"props":705,"children":707},{"className":706},[],[708],{"type":52,"value":263},{"type":52,"value":710}," per event or page load.",{"type":47,"tag":72,"props":712,"children":713},{},[714,716,722],{"type":52,"value":715},"Use stable, descriptive ",{"type":47,"tag":88,"props":717,"children":719},{"className":718},[],[720],{"type":52,"value":721},"eventName",{"type":52,"value":723}," values that business teams can read in reports.",{"type":47,"tag":72,"props":725,"children":726},{},[727],{"type":52,"value":728},"Include price, quantity, currency, and object data where the selected event type supports it and the business needs revenue analysis.",{"type":47,"tag":72,"props":730,"children":731},{},[732],{"type":52,"value":733},"Avoid double counting by deciding whether frontend, backend, or a deduped pipeline owns each event.",{"type":47,"tag":72,"props":735,"children":736},{},[737],{"type":52,"value":738},"Treat a 200 response or visible Debugger event as ingestion proof, not usefulness proof. A valid event can still be unusable for downstream features if it has stale queryID, mismatched objectID, inconsistent userToken, missing position, weak signal type, or duplicate ownership.",{"type":47,"tag":72,"props":740,"children":741},{},[742],{"type":52,"value":743},"Preserve the exact record identity from the search result. If the user clicked or converted on a variant, do not send a parent product ID unless the original search result used that same parent objectID.",{"type":47,"tag":72,"props":745,"children":746},{},[747],{"type":52,"value":748},"Explain deduplication risk in customer language: repeated events from the same user on the same record may not all count toward downstream models, and a hardcoded shared userToken can make many users look like one user.",{"type":47,"tag":72,"props":750,"children":751},{},[752],{"type":52,"value":753},"Positions are one-based. If positions are computed manually from an array index, add 1 and validate against the rendered result order.",{"type":47,"tag":72,"props":755,"children":756},{},[757],{"type":52,"value":758},"Validate the full journey, not isolated events: search or browse request, click, add-to-cart or primary conversion, purchase or final outcome.",{"type":47,"tag":72,"props":760,"children":761},{},[762],{"type":52,"value":763},"For Segment\u002FCDP or GTM paths, validate both the source payload and the transformed Algolia payload because mappings may rename, flatten, drop, duplicate, or mis-shape fields.",{"type":47,"tag":61,"props":765,"children":767},{"id":766},"anti-patterns",[768],{"type":52,"value":769},"Anti-Patterns",{"type":47,"tag":68,"props":771,"children":772},{},[773,778,783,801,806,811,816,821,826],{"type":47,"tag":72,"props":774,"children":775},{},[776],{"type":52,"value":777},"Building a large taxonomy before one click and one primary conversion are validated.",{"type":47,"tag":72,"props":779,"children":780},{},[781],{"type":52,"value":782},"Over-investing in P2 events such as broad view or filter interactions before P0 search-attributed clicks and conversions are healthy.",{"type":47,"tag":72,"props":784,"children":785},{},[786,788,793,794,799],{"type":52,"value":787},"Sending events from a tag manager that cannot access the actual ",{"type":47,"tag":88,"props":789,"children":791},{"className":790},[],[792],{"type":52,"value":298},{"type":52,"value":116},{"type":47,"tag":88,"props":795,"children":797},{"className":796},[],[798],{"type":52,"value":305},{"type":52,"value":800},", position, index, or stable userToken.",{"type":47,"tag":72,"props":802,"children":803},{},[804],{"type":52,"value":805},"Mixing frontend and backend purchase events without a deduplication rule.",{"type":47,"tag":72,"props":807,"children":808},{},[809],{"type":52,"value":810},"Reusing stale queryIDs long after the search context is gone.",{"type":47,"tag":72,"props":812,"children":813},{},[814],{"type":52,"value":815},"Treating events as optional for analytics quality, personalization, Recommend, dynamic re-ranking, Agent Studio feedback, or rollout measurement.",{"type":47,"tag":72,"props":817,"children":818},{},[819],{"type":52,"value":820},"Calling filter clicks or broad view events AI-ready signals while P0 result clicks or conversions are missing.",{"type":47,"tag":72,"props":822,"children":823},{},[824],{"type":52,"value":825},"Validating only one system in a connector path, such as Segment Debugger but not Algolia Debugger, or browser Network but not Events Health.",{"type":47,"tag":72,"props":827,"children":828},{},[829,831,836],{"type":52,"value":830},"Sending SKUs, parent IDs, or external IDs when Algolia expects the exact ",{"type":47,"tag":88,"props":832,"children":834},{"className":833},[],[835],{"type":52,"value":298},{"type":52,"value":837}," returned in the hit.",{"type":47,"tag":61,"props":839,"children":841},{"id":840},"completion-checkpoints",[842],{"type":52,"value":843},"Completion Checkpoints",{"type":47,"tag":55,"props":845,"children":846},{},[847],{"type":52,"value":848},"Before calling an implementation ready, or when handing off a prototype with follow-ups, state whether these checkpoints are satisfied, deferred, or unknown:",{"type":47,"tag":68,"props":850,"children":851},{},[852,862,885,890,895,900,905,910,915],{"type":47,"tag":72,"props":853,"children":854},{},[855,860],{"type":47,"tag":88,"props":856,"children":858},{"className":857},[],[859],{"type":52,"value":263},{"type":52,"value":861}," strategy status.",{"type":47,"tag":72,"props":863,"children":864},{},[865,867,872,873,878,879,884],{"type":52,"value":866},"Hit click attribution status for ",{"type":47,"tag":88,"props":868,"children":870},{"className":869},[],[871],{"type":52,"value":305},{"type":52,"value":116},{"type":47,"tag":88,"props":874,"children":876},{"className":875},[],[877],{"type":52,"value":298},{"type":52,"value":116},{"type":47,"tag":88,"props":880,"children":882},{"className":881},[],[883],{"type":52,"value":291},{"type":52,"value":560},{"type":47,"tag":72,"props":886,"children":887},{},[888],{"type":52,"value":889},"Autocomplete direct-result click versus query suggestion selection status.",{"type":47,"tag":72,"props":891,"children":892},{},[893],{"type":52,"value":894},"Conversion event status: planned, implemented, validated, deferred, or unknown.",{"type":47,"tag":72,"props":896,"children":897},{},[898],{"type":52,"value":899},"Event ownership and duplicate-event rule status.",{"type":47,"tag":72,"props":901,"children":902},{},[903],{"type":52,"value":904},"Validation step status.",{"type":47,"tag":72,"props":906,"children":907},{},[908],{"type":52,"value":909},"Implementation path selected and connector-specific risks documented.",{"type":47,"tag":72,"props":911,"children":912},{},[913],{"type":52,"value":914},"Usability status: arrived, payload complete, attribution intact, feature destination or eligibility checked.",{"type":47,"tag":72,"props":916,"children":917},{},[918],{"type":52,"value":919},"Regression plan for future UI, route, identity, checkout, or connector changes.",{"type":47,"tag":61,"props":921,"children":923},{"id":922},"academy-and-customer-education-alignment",[924],{"type":52,"value":925},"Academy And Customer Education Alignment",{"type":47,"tag":55,"props":927,"children":928},{},[929],{"type":52,"value":930},"When source-backed guidance is needed, search public Academy sources for Insights, analytics, and AI-readiness learning objectives and public Algolia docs for queryID, userToken, event methods, personalization, Recommend, and dynamic re-ranking details. Use source guidance to build a customer-appropriate event taxonomy, maturity plan, and validation path.",{"type":47,"tag":61,"props":932,"children":934},{"id":933},"maturity-behavior",[935],{"type":52,"value":936},"Maturity Behavior",{"type":47,"tag":68,"props":938,"children":939},{},[940,951,956,961],{"type":47,"tag":72,"props":941,"children":942},{},[943,945,950],{"type":52,"value":944},"Beginner implementation: implement one result-click event and one primary conversion event with a durable ",{"type":47,"tag":88,"props":946,"children":948},{"className":947},[],[949],{"type":52,"value":263},{"type":52,"value":363},{"type":47,"tag":72,"props":952,"children":953},{},[954],{"type":52,"value":955},"Production readiness: validate payloads, ownership, duplicate prevention, backend conversions, and downstream visibility.",{"type":47,"tag":72,"props":957,"children":958},{},[959],{"type":52,"value":960},"Optimization: connect events to analytics, A\u002FB testing, personalization, Recommend, merchandising, and dynamic re-ranking decisions.",{"type":47,"tag":72,"props":962,"children":963},{},[964],{"type":52,"value":965},"AI readiness: prove the event setup can support NeuralSearch evaluation, Agent Studio feedback, AI assistant quality measurement, and conversion attribution.",{"type":47,"tag":61,"props":967,"children":969},{"id":968},"output-contract",[970],{"type":52,"value":971},"Output Contract",{"type":47,"tag":55,"props":973,"children":974},{},[975],{"type":52,"value":976},"Return a prioritized Event Plan, Connector Recommendation, Developer Handoff Sheet, code changes or owner handoff steps, and a validation plan. For audits, report missing attribution, identity inconsistencies, duplicate-event risks, weak-signal overinvestment, connector mapping risks, and downstream feature blockers first. Make the first recommendation small enough that a team can implement it in one sprint.",{"items":978,"total":1145},[979,995,1012,1025,1040,1054,1067,1079,1093,1100,1111,1133],{"slug":980,"name":980,"fn":981,"description":982,"org":983,"tags":984,"stars":992,"repoUrl":993,"updatedAt":994},"algolia-docsearch-mcp","search developer documentation with Algolia","Use this skill when the user asks about public developer documentation, SDKs, APIs, libraries, frameworks, setup, configuration, or code examples. Fetch current docs from Algolia DocSearch MCP and cite source URLs.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[985,986,989,991],{"name":9,"slug":8,"type":13},{"name":987,"slug":988,"type":13},"Documentation","documentation",{"name":990,"slug":31,"type":13},"MCP",{"name":15,"slug":16,"type":13},4365,"https:\u002F\u002Fgithub.com\u002Falgolia\u002Fdocsearch","2026-08-01T06:06:11.572314",{"slug":996,"name":996,"fn":997,"description":998,"org":999,"tags":1000,"stars":23,"repoUrl":24,"updatedAt":1011},"algobot-cli","build conversational AI with Algolia","Use for anything AI\u002Fagent\u002Fconversational built on Algolia: algobot CLI, Agent Studio, RAG systems, conversational product discovery, genAI content generation from search results (carousels, descriptions, headers), chatbots or recommendation agents using Algolia as retrieval, config-as-code workflows, multi-environment deploy (dev\u002Fstaging\u002Fprod), memory and personalization, MCP tool integrations, conversation history \u002F GDPR retention, or adding a chat widget alongside InstantSearch. Trigger on: \"algobot\", \"Agent Studio\", \"RAG with Algolia\", \"conversational experience\", \"AI agent\" + Algolia, \"genAI carousel\", \"chat widget\", or building AI features on top of Algolia search. Do NOT use for raw index ops (records, synonyms, settings) — use algolia-cli. Do NOT use for pure frontend search UI (InstantSearch, autocomplete) with no AI\u002Fagent layer.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1001,1004,1007,1010],{"name":1002,"slug":1003,"type":13},"Agents","agents",{"name":1005,"slug":1006,"type":13},"Automation","automation",{"name":1008,"slug":1009,"type":13},"LLM","llm",{"name":15,"slug":16,"type":13},"2026-07-12T08:27:37.649724",{"slug":1013,"name":1013,"fn":1014,"description":1015,"org":1016,"tags":1017,"stars":23,"repoUrl":24,"updatedAt":1024},"algolia-agent-studio","build conversational agents with Algolia Agent Studio","Product-specific Algolia Agent Studio implementation, validation, and optimization guidance. Use when planning, building, integrating, or auditing Agent Studio agents, AI-powered conversational experiences, LLM provider setup, Algolia Search tools, client-side tools, MCP tools, memory, prompting, conversations, turn context, caching, analytics, feedback, authentication, approved domains, guardrails, or tool security. Do NOT use for live Agent Studio configuration, dry runs, publish\u002Fdeploy actions, or config-as-code operations; use the official algobot-cli skill instead. Do NOT use for generic non-Algolia RAG or chatbot architecture unless Agent Studio is the target product.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1018,1019,1022,1023],{"name":1002,"slug":1003,"type":13},{"name":1020,"slug":1021,"type":13},"AI","ai",{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},"2026-08-01T06:06:28.033767",{"slug":1026,"name":1026,"fn":1027,"description":1028,"org":1029,"tags":1030,"stars":23,"repoUrl":24,"updatedAt":1039},"algolia-autocomplete","build Algolia autocomplete and query suggestions","Build and review Algolia Autocomplete and query suggestion experiences. Use when planning or implementing typeahead, query suggestions, recent searches, popular searches, federated autocomplete panels, product\u002Fcontent suggestions, detached mobile mode, plugins, keyboard navigation, insights events, or Autocomplete integration with InstantSearch. For net-new search or ecommerce builds, start with algolia-discovery-planning, which loads algolia-search-implementation so source strategy, data contract, and event taxonomy decisions are visible before autocomplete is marked ready. Do NOT use for full search results pages, browse pages, filters, pagination, or current refinements; use algolia-instantsearch-ui instead. Do NOT use for choosing between Algolia UI libraries; use algolia-ui-libraries. Do NOT use as the source of truth for current Autocomplete package APIs; use the official instantsearch skill and current docs alongside this customer-readiness skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1031,1032,1035,1036],{"name":9,"slug":8,"type":13},{"name":1033,"slug":1034,"type":13},"Frontend","frontend",{"name":15,"slug":16,"type":13},{"name":1037,"slug":1038,"type":13},"UI Components","ui-components","2026-08-01T06:06:29.968123",{"slug":1041,"name":1041,"fn":1042,"description":1043,"org":1044,"tags":1045,"stars":23,"repoUrl":24,"updatedAt":1053},"algolia-cli","manage Algolia indices and accounts","Use this skill whenever a user wants to execute operations against Algolia indices or accounts — deleting records, copying\u002Fmigrating indices, backing up data, importing\u002Fexporting records, managing API keys, editing synonyms, configuring rules, changing settings like facets, clearing indices, or automating Algolia in CI\u002FCD pipelines. The key signal is that the user wants to *act on* their Algolia data or configuration (server-side \u002F backend \u002F admin operations), regardless of whether they mention \"CLI\" or \"command line.\" If someone names a specific Algolia index and wants to change, move, query, or manage it, use this skill. Do NOT use for frontend search UI work (InstantSearch, React components, autocomplete widgets), Algolia dashboard GUI questions, or evaluating Algolia vs. other providers.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1046,1049,1052],{"name":1047,"slug":1048,"type":13},"CLI","cli",{"name":1050,"slug":1051,"type":13},"Data Engineering","data-engineering",{"name":15,"slug":16,"type":13},"2026-07-12T08:27:35.085246",{"slug":1055,"name":1055,"fn":1056,"description":1057,"org":1058,"tags":1059,"stars":23,"repoUrl":24,"updatedAt":1066},"algolia-crawler","crawl websites into Algolia indices","Use this skill whenever a user wants to crawl one or more web pages or a whole site and turn them into an Algolia index using the Algolia CLI — especially for RAG, AI search, semantic search, or Agent Studio retrieval. Triggers: \"index my website\u002Fdocs with Algolia\", \"set up the Algolia Crawler\", \"crawl this page for RAG\", \"scrape my site into Algolia\", \"build a knowledge base for my AI agent from these URLs\", writing or debugging a crawler recordExtractor, or handling JavaScript-rendered pages that won't index. It guides ingestion end-to-end with `algolia crawler` commands: inspect the page, write a RAG-optimized recordExtractor, validate with `algolia crawler test` BEFORE indexing, apply index settings explicitly, then reindex. Do NOT use for building the chatbot\u002Fagent layer itself (use algobot-cli), raw record\u002Fsynonym\u002Fsettings ops on an existing index (use algolia-cli), frontend search UI (use instantsearch), or read-only search\u002Fanalytics (use algolia-mcp).",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1060,1061,1062,1063],{"name":1005,"slug":1006,"type":13},{"name":1050,"slug":1051,"type":13},{"name":15,"slug":16,"type":13},{"name":1064,"slug":1065,"type":13},"Web Scraping","web-scraping","2026-07-12T08:27:40.981109",{"slug":1068,"name":1068,"fn":1069,"description":1070,"org":1071,"tags":1072,"stars":23,"repoUrl":24,"updatedAt":1078},"algolia-data-modeling","design Algolia data models and indices","Algolia data modeling and indexing guidance. Use before or alongside indexing records or building Algolia search UI for net-new search, browse, autocomplete, ecommerce, personalization, Dynamic Re-Ranking, recommendations, or analytics-aware implementations. Makes record shape, objectID, display fields, facets, ranking fields, and event attribution explicit decisions. Use for records, variants, SKUs, indices, replicas, searchable and faceting attributes, denormalization, merchandising fields, timestamps, inventory, event attribution, indexing pipelines, partial updates, secured data, multi-language or multi-region strategies, and migrations. Do NOT use for live imports, exports, record mutations, settings changes, or account actions; use algolia-cli or algolia-mcp. Do NOT use for frontend UI implementation; use algolia-instantsearch-ui, algolia-autocomplete, algolia-ui-libraries, or the official instantsearch skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1073,1074,1077],{"name":9,"slug":8,"type":13},{"name":1075,"slug":1076,"type":13},"Data Modeling","data-modeling",{"name":15,"slug":16,"type":13},"2026-08-01T06:06:01.500756",{"slug":1080,"name":1080,"fn":1081,"description":1082,"org":1083,"tags":1084,"stars":23,"repoUrl":24,"updatedAt":1092},"algolia-discovery-planning","plan and audit Algolia search implementations","START HERE for any non-trivial Algolia work — building, adding, migrating, redesigning, auditing, or configuring search, browse, autocomplete, indexing, relevance, recommendations, personalization, merchandising, events, or analytics. Invoke this FIRST even when the task already seems scoped or the user names one specific feature (e.g. \"add InstantSearch\", \"build a storefront search\"): its job is to map the request to the full Algolia implementation lifecycle and load every companion skill each in-scope phase needs (algolia-search-implementation, algolia-data-modeling, algolia-index-configuration, algolia-ui-libraries, algolia-instantsearch-ui, algolia-autocomplete, algolia-events-insights, algolia-neuralsearch, algolia-agent-studio, algolia-release-qa) rather than jumping straight into a single skill. This skill plans and orchestrates; the focused companion skills and the official Algolia skills execute. Do NOT use for live account inspection or write actions; use algolia-mcp or algolia-cli for those.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1085,1086,1087,1090,1091],{"name":9,"slug":8,"type":13},{"name":18,"slug":19,"type":13},{"name":1088,"slug":1089,"type":13},"Configuration","configuration",{"name":21,"slug":22,"type":13},{"name":15,"slug":16,"type":13},"2026-08-01T06:06:03.021452",{"slug":4,"name":4,"fn":5,"description":6,"org":1094,"tags":1095,"stars":23,"repoUrl":24,"updatedAt":25},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1096,1097,1098,1099],{"name":9,"slug":8,"type":13},{"name":18,"slug":19,"type":13},{"name":21,"slug":22,"type":13},{"name":15,"slug":16,"type":13},{"slug":1101,"name":1101,"fn":1102,"description":1103,"org":1104,"tags":1105,"stars":23,"repoUrl":24,"updatedAt":1110},"algolia-index-configuration","configure Algolia index settings and relevance","Algolia index settings and relevance configuration guidance. Use when configuring searchableAttributes, attributesForFaceting, customRanking, ranking, replicas, virtual replicas, rules, synonyms, typo tolerance, distinct, filters, optional filters, merchandising, browse\u002Fcategory relevance, or A\u002FB-testable relevance changes. Do NOT use for live settings writes, backups, copies, or operational account tasks; use algolia-cli or algolia-mcp instead. Do NOT use for record-shape or variant strategy; use algolia-data-modeling instead.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1106,1107,1108,1109],{"name":9,"slug":8,"type":13},{"name":1088,"slug":1089,"type":13},{"name":1075,"slug":1076,"type":13},{"name":15,"slug":16,"type":13},"2026-08-01T06:06:34.19163",{"slug":1112,"name":1112,"fn":1113,"description":1114,"org":1115,"tags":1116,"stars":23,"repoUrl":24,"updatedAt":1132},"algolia-instantsearch-ui","build Algolia InstantSearch frontend experiences","Build and review Algolia InstantSearch experiences in JavaScript, React, Vue, Angular (via InstantSearch.js; Angular InstantSearch is deprecated), or compatible frontend stacks. Use when planning or reviewing search results pages, browse\u002Fcategory pages, routing, widgets, filters, facets, sort-by, pagination, infinite hits, current refinements, insights middleware, SSR, or UI-state synchronization. For net-new search UI builds, start with algolia-discovery-planning, which loads algolia-search-implementation so data contract and event taxonomy decisions are visible before UI is marked ready. Do NOT use for autocomplete\u002Ftypeahead experiences before the user commits to a results page; use algolia-autocomplete instead. Do NOT use for choosing between Algolia UI libraries; use algolia-ui-libraries. Do NOT use as the source of truth for current framework APIs or code-level implementation details; use the official instantsearch skill and current docs alongside this customer-readiness skill.\n",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1117,1118,1121,1122,1125,1128,1129],{"name":9,"slug":8,"type":13},{"name":1119,"slug":1120,"type":13},"Angular","angular",{"name":1033,"slug":1034,"type":13},{"name":1123,"slug":1124,"type":13},"JavaScript","javascript",{"name":1126,"slug":1127,"type":13},"React","react",{"name":15,"slug":16,"type":13},{"name":1130,"slug":1131,"type":13},"Vue","vue","2026-08-01T06:06:33.66513",{"slug":198,"name":198,"fn":1134,"description":1135,"org":1136,"tags":1137,"stars":23,"repoUrl":24,"updatedAt":1144},"search Algolia indices and retrieve analytics","Search Algolia indices via the Algolia MCP server, retrieve analytics (top searches, no-result rates, click positions, user counts), and get product recommendations (bought-together, related, trending). Triggers on search, indexing, analytics, Algolia, recommendations, MCP.",{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1138,1139,1142,1143],{"name":18,"slug":19,"type":13},{"name":1140,"slug":1141,"type":13},"API Development","api-development",{"name":990,"slug":31,"type":13},{"name":15,"slug":16,"type":13},"2026-07-12T08:27:36.376387",19,{"items":1147,"total":1196},[1148,1155,1162,1169,1175,1182,1188],{"slug":996,"name":996,"fn":997,"description":998,"org":1149,"tags":1150,"stars":23,"repoUrl":24,"updatedAt":1011},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1151,1152,1153,1154],{"name":1002,"slug":1003,"type":13},{"name":1005,"slug":1006,"type":13},{"name":1008,"slug":1009,"type":13},{"name":15,"slug":16,"type":13},{"slug":1013,"name":1013,"fn":1014,"description":1015,"org":1156,"tags":1157,"stars":23,"repoUrl":24,"updatedAt":1024},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1158,1159,1160,1161],{"name":1002,"slug":1003,"type":13},{"name":1020,"slug":1021,"type":13},{"name":9,"slug":8,"type":13},{"name":15,"slug":16,"type":13},{"slug":1026,"name":1026,"fn":1027,"description":1028,"org":1163,"tags":1164,"stars":23,"repoUrl":24,"updatedAt":1039},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1165,1166,1167,1168],{"name":9,"slug":8,"type":13},{"name":1033,"slug":1034,"type":13},{"name":15,"slug":16,"type":13},{"name":1037,"slug":1038,"type":13},{"slug":1041,"name":1041,"fn":1042,"description":1043,"org":1170,"tags":1171,"stars":23,"repoUrl":24,"updatedAt":1053},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1172,1173,1174],{"name":1047,"slug":1048,"type":13},{"name":1050,"slug":1051,"type":13},{"name":15,"slug":16,"type":13},{"slug":1055,"name":1055,"fn":1056,"description":1057,"org":1176,"tags":1177,"stars":23,"repoUrl":24,"updatedAt":1066},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1178,1179,1180,1181],{"name":1005,"slug":1006,"type":13},{"name":1050,"slug":1051,"type":13},{"name":15,"slug":16,"type":13},{"name":1064,"slug":1065,"type":13},{"slug":1068,"name":1068,"fn":1069,"description":1070,"org":1183,"tags":1184,"stars":23,"repoUrl":24,"updatedAt":1078},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1185,1186,1187],{"name":9,"slug":8,"type":13},{"name":1075,"slug":1076,"type":13},{"name":15,"slug":16,"type":13},{"slug":1080,"name":1080,"fn":1081,"description":1082,"org":1189,"tags":1190,"stars":23,"repoUrl":24,"updatedAt":1092},{"slug":8,"name":9,"logoUrl":10,"githubOrg":8},[1191,1192,1193,1194,1195],{"name":9,"slug":8,"type":13},{"name":18,"slug":19,"type":13},{"name":1088,"slug":1089,"type":13},{"name":21,"slug":22,"type":13},{"name":15,"slug":16,"type":13},18]