mcpField
I
instantsearch

instantsearch

github.com/algolia开发12126 次安装2 天前更新
代码仓库

关于 instantsearch

用于在 React、Vue 或 JavaScript 项目中使用 Algolia InstantSearch 构建搜索体验的 Skill,涵盖项目检查、库适配、来源核验、样式与审查。

主要功能

  1. 01按项目选择适用的库
  2. 02检查现有配置和页面上下文
  3. 03依据类型与在线文档核验 API
  4. 04提供自动补全和结果页模式指南
  5. 05应用样式指南并检查反模式

适用场景

  1. 01为现有应用添加自动补全
  2. 02构建 React 搜索结果页
  3. 03结合索引记录和项目设计规划搜索界面

安装

复制下面的命令,在终端中运行。

$npx skills add https://github.com/algolia/skills --skill instantsearch

安装后在 Claude Code 中输入/instantsearch确认已加载。

包含的文件

除 SKILL.md 外,安装时一起下载的参考资料和脚本。

evals/
evals.json
references/js/
anti-patterns.md
glossary.md
source-of-truth.md
styling.md
technology-rules.md
references/js/autocomplete/
anti-patterns.md
features.md
styling.md
references/react/
anti-patterns.md
custom-widgets.md
glossary.md
middleware.md
source-of-truth.md
ssr.md
styling.md
technology-rules.md
references/react/autocomplete/
anti-patterns.md
features.md
styling.md
references/react/search-results-page/
anti-patterns.md
features.md
styling.md
references/vue/
anti-patterns.md
glossary.md
source-of-truth.md
styling.md
references/vue/autocomplete/
anti-patterns.md
features.md
styling.md

详细介绍

InstantSearch

使用 InstantSearch 构建可用于生产环境的高质量搜索体验。请按顺序遵循以下工作流。不要跳过任何步骤。

支持的库

InstantSearch 提供三个库。根据项目的依赖项或框架判断适用的库,或询问用户。

库包适用场景
React InstantSearchreact-instantsearchReact、Next.js、Remix
Vue InstantSearchvue-instantsearchVue、Nuxt
InstantSearch.jsinstantsearch.jsVanilla JS,或没有专用库的任何框架

确定库后,针对所有技术规则、反模式、样式、术语表和特定模式的指导,请使用对应的参考目录(例如 references/react/)。

注意: 各库的覆盖范围:

  • React InstantSearch:全面覆盖(自动补全、搜索结果页面、自定义组件、中间件、SSR)。
  • Vue InstantSearch 和 InstantSearch.js:仅覆盖库级规则和自动补全。对于其他模式,请遵循事实来源检查,并在搭建复杂流程前询问用户。

工作流

1. 了解情况

编写任何代码之前,先收集背景信息。首先检查代码库中是否已配置 InstantSearch(搜索客户端、提供程序、现有组件)。如果已配置,请阅读现有配置,而不要再次询问。

如果是从头开始,请逐步进行,每一步都等待用户回答后再继续。

  • 凭据:询问用户的 Algolia 应用 ID、仅搜索 API 密钥和索引名称。

  • 查询建议:询问用户是否有查询建议索引。

  • 架构:获取凭据后,从主索引中提取几条记录,以了解可用属性及其结构。请与用户确认,而不要要求用户列出所有内容。在提出渲染选项之前,需要了解架构。无需从查询建议索引提取数据:其结构是标准的,由组件处理。

    curl -s -X POST \
      "https://${APP_ID}.algolia.net/1/indexes/${INDEX_NAME}/query" \
      -H "x-algolia-api-key: ${API_KEY}" \
      -H "x-algolia-application-id: ${APP_ID}" \
      -H "content-type: application/json" \
      -d '{"params": "hitsPerPage=5"}'
    
  • 项目检查:阅读项目现有的样式方案、断点、布局、响应式模式、组件库和框架详情。确定要使用哪个 InstantSearch 库(见上表)。

  • 路由:查找详情页的路由模式(例如 /products/[id]、/articles/[slug]),并查找现有的列表页或搜索结果页。如果找到,请确认该页面确实会读取查询参数并呈现动态结果(而不只是静态列表)。如果未找到,或页面是静态的,请询问用户:“提交查询后,搜索应跳转到哪个页面?还是说没有结果页?”

  • 放置位置:查找搜索体验应在界面中的位置。请参考该模式的功能参考文档获取指导,或询问用户。

  • 渲染方式:向用户提供具体且编号的结果呈现选项。这些选项取决于架构(可用属性)和项目设计。请参考该模式的功能参考文档,了解可提供的选项。

在获得凭据、了解架构和渲染偏好,并熟悉项目设计之前,不要继续。

2. 核对事实来源

此技能仅针对最有价值的模式提供指导。每当你需要使用此技能未明确记录的小组件、钩子、连接器、属性、中间件、未来标志或 API 时,必须先查阅事实来源,再编写代码。训练数据已经过时、信息有损,而且经常会弄错属性的结构。

请按照该库的事实来源参考文档,使用准确的命令和 URL 模式:

库参考文档
Reactsource-of-truth.md
Vuesource-of-truth.md
JSsource-of-truth.md

参考文档始终按以下顺序涵盖这些内容:

  1. 读取 node_modules 中已安装的类型,了解属性结构、renderState 和连接器契约。
  2. 通过规范 URL 模式获取 Algolia 的最新文档。
  3. 在已安装的 CSS / 源代码中搜索你打算设置样式的类名。
  4. **然后才编写代码。**如果某一步失败(离线、404、缺少类型),请先询问用户,不要猜测。

即使存在模式参考,只要你需要使用其中未明确涵盖的属性或行为,也要执行上述步骤。

3. 构建

根据库和用户的请求,选择匹配的模式参考。如果用户所需内容没有对应的模式参考,请回退到事实来源核对(第 2 步),并在搭建推测性的小组件树之前询问用户。

各库可用的模式:

模式ReactVueJS
自动补全功能、样式、反模式功能、样式、反模式功能、样式、反模式
搜索结果页(包括分面搜索、排序、分页)功能、样式、反模式——
另请阅读并应用库级参考资料(无论使用哪种模式,均适用):
参考资料ReactVueJS
技术规则technology-rules.mdtechnology-rules.mdtechnology-rules.md
反模式anti-patterns.mdanti-patterns.mdanti-patterns.md
样式styling.mdstyling.mdstyling.md
术语表glossary.mdglossary.mdglossary.md
信息来源source-of-truth.mdsource-of-truth.mdsource-of-truth.md
自定义组件custom-widgets.md——
中间件middleware.md——
SSRssr.md——
模式ReactVueJS
------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
自动补全features, styling, anti-patterns——
搜索结果页(包括分面搜索、排序、分页)features, styling, anti-patterns——

另请阅读并应用库级参考资料(无论使用哪种模式,均适用):

参考资料ReactVueJS
技术规则technology-rules.md——
反模式anti-patterns.md——
样式styling.md——
术语表glossary.md——
事实来源source-of-truth.md——
自定义小部件custom-widgets.md——
中间件middleware.md——
SSRssr.md——

请先查阅类型和实时文档(步骤 2)。只有两者都无法解决时,才询问用户。切勿退回使用旧版库或猜测 API。

4. 样式

逐步遵循库的样式指南,然后应用特定模式的样式指南。与网站现有的 CSS 方法、配色方案、排版、间距和组件模式保持一致。

5. 审查

根据库的反模式、特定模式的反模式和功能检查清单审查你的工作。修复所有违规之处。

评论

支持 Markdown