Token导航 LogoToken导航TokenDH.com
研究检索external-servicegithub未标认证来源可访问许可证需确认审计通过

indx-search索引搜索

Agent Skill

indx-search 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

318

周安装

13

GitHub Stars

公开资料未说明

下载量

102
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:indx-search(索引搜索)
来源仓库:https://github.com/indxsearch/skill-indx-search
仓库路径:skills/indx-search
安装命令:
npx skills add https://github.com/indxsearch/skill-indx-search --skill indx-search
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/indxsearch/skill-indx-search --skill indx-search

简介

indx-search 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词快速定位候选结果时使用。

  • 适用于索引搜索和信息检索场景,支持基于任务需求的信息筛选与组织。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需确认权限范围和维护状态。
  • 使用前建议核实是否会触发联网、命令执行或文件读写操作,确保符合安全边界。
  • 适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。

SKILL.md

Indx Search — Agent Skill

Indx is a high-performance search engine for structured and unstructured text. It uses pattern recognition instead of tokenizers, stemmers, or analyzers — handling typos, formatting variations, and messy input without configuration.

When to Use Indx

  • Up to millions of documents where you need fast, typo-tolerant search
  • When you don't want to configure tokenizers, stemmers, analyzers, or language settings
  • When you want embedded search with no external dependencies (NuGet) or a lightweight self-hosted API
  • Unmatched on speed — in-memory indexes and a fast vector model mean Indx outperforms Elastic/Solr/Algolia in most scenarios

When Indx is not the right fit:

  • Tens of millions+ of documents (log aggregation, large-scale analytics)
  • Pure exact-match queries (database-style lookups)
  • Schemas that change frequently — Indx requires a full reload and reindex when the schema changes

Choosing Your Integration Path

C# /.NET project → Use the IndxSearchLib NuGet package directly. Embed search into your application with no external dependencies. See references/csharp.md for full API reference.

Any other tech stack (Node.js, Python, Java, etc.) → Deploy the IndxCloudApi HTTP API server and interact via REST. Recommended deployment target: Azure App Service (works with zero config). See references/cloudapi-setup.md for setup and deployment, and references/http-api.md for endpoints, schemas, and data loading.

Core Concepts

Two-Step Search Model

Every search executes in two phases:

  1. Pattern Matching — Scans all documents for textual and structural patterns. Produces candidate results with strong recall and built-in typo tolerance. No query preprocessing needed.
  2. Coverage (enabled by default) — A collection of algorithms that detect exact and near-exact token matches (whole words, fuzzy words, joined/split words, prefixes/suffixes) in the top-K candidates (default: 500). Confirmed matches are scored 0–255 and promoted above pure pattern matches. A truncation index marks where coverage-confirmed results end.

Field Configuration

Fields must be explicitly marked with their roles before indexing:

RolePurposeNotes
SearchableIncluded in matching and scoringAt least one required. Supports weight for relative importance
FilterableAvailable for filter operationsUsed with value filters and range filters
FacetableUsed for aggregationsReturns value counts (histograms)
SortableEnables result orderingWorks on numbers and strings. See sorting behavior below
WordIndexingIndexes entire wordsUseful on fields with many repeating words. See below

WordIndexing — indexes entire words in a field. Useful for large datasets where many documents share the same words (e.g. a category field across thousands of products). Complements Searchable and must be combined with it on the same field. Only affects single-word queries.

Weight priority — Searchable fields support a weight to control importance:

  • C# API: Weight.High, Weight.Med, Weight.Low (enum)
  • HTTP API: 0 (High), 1 (Medium), 2 (Low) (integer)

Note: Weights affect pattern recognition directly. A short text pattern in a longer string will not necessarily rank higher than the same pattern in a shorter string, even if the longer field has higher weight.

Filters Must Be Server-Side

Never filter results client-side after a search. The search only returns a limited number of results (maxNumberOfRecordsToReturn), so client-side filtering on that subset will miss documents. Always use CreateValueFilter / CreateRangeFilter / CombineFilters and pass the filter in the query (query.Filter in C#, CloudQuery.filter in HTTP) so the server applies the filter during search.

Search Behavior Guidance

  • Keep coverage enabled (the default). This is the recommended setting for nearly all use cases — both human-facing and programmatic. Only disable coverage in edge cases where you search a single field and only care about top-K fuzzy matches (e.g. name lookup). With coverage disabled, truncation is unreliable and results degrade when searching across multiple fields (title + description + category, etc.).
  • Agent/tool usage: Enable coverage and set IncludePatternMatches = false (coverageSetup.includePatternMatches in HTTP). This returns only exact and near-exact matches (within ~1 typo), filtering out loose pattern hits.
  • Empty search: Supported with empty/null query text. Requires facets enabled and at least one facetable field. Returns all documents, ignores CoverageDepth.
  • No debounce needed on search: Indx is fast enough that debouncing search requests is unnecessary. Fire on every keystroke.

Sorting Behavior

  • With search text: Sorting is 2nd-order — search relevancy (score) is always the primary sort. Sorting only applies to results included in the coverage step.
  • Empty search (no text): Sorting becomes the primary ordering function.
  • Works on both numbers and strings (A–Z, 1–9). Default: descending. Set SortAscending = true to invert.
  • To reset: set query.SortBy = null.

Facets Tip

When implementing search-as-you-type with a large dataset, consider only fetching facets (EnableFacets = true) after a small delay, not on every keystroke.

Coverage Tuning

  • EnableCoverage (default: true) — Toggle the coverage refinement step.
  • CoverageDepth (default: 500) — Number of top-K pattern-match candidates to evaluate. Higher = better recall, more latency. Auto-increases if MaxNumberOfRecordsToReturn > CoverageDepth. Set to engine.Status.DocumentCount for full-dataset coverage.
  • CoverageSetup — Fine-grained control (see advanced sections below).

Data Format

Indx accepts JSON arrays of objects. Nested fields are supported (schemaless):

[
  { "id": 1, "title": "Product A", "specs": { "weight": 1.2, "color": "red" } },
  { "id": 2, "title": "Product B", "specs": { "weight": 0.8, "color": "blue" } }
]

Nested fields use dot notation: specs.weight, specs.color.


Search UX Patterns

These patterns come from indx-intrface, a React component library for Indx Search. Even if you're not using the library, these are good principles to follow when building search UI on top of Indx.

Preserving empty facets

When a user applies filters, some facet values may drop to 0 hits and disappear from the facets response. Don't remove them from the UI — keep showing them (greyed out, with count 0) so the user can still see and deselect them. Removing filter options mid-interaction is disorienting.

Empty search as browse mode

Support an empty search state (allowEmptySearch) that returns all documents with facets and sorting. This lets users browse and filter before typing anything — useful for catalogue-style interfaces. Requires enableFacets: true and at least one facetable field.

Facet debouncing

When doing search-as-you-type, search results need no debounce (Indx is fast enough to fire on every keystroke). But facet counts jumping on every character is noisy — debounce facet requests (e.g. 500ms) while keeping result updates immediate.

Range filters from facet data

Use facet histograms to derive min/max bounds for range filter UI (sliders, inputs). This way the range controls automatically reflect the actual data spread rather than hardcoded limits.

Active filter summary

Show all active filters (value filters and range filters) as removable chips above the results. Include a "reset all" action. This gives the user a clear picture of what's narrowing their results.

Two-step result display (C# only)

The C# NuGet API returns document keys and scores (not full documents). Fetch full JSON separately via GetJsonDataOfKey. Only fetch the fields you need for display — keep the result list lightweight and load full details on demand. The HTTP API returns full document JSON directly in the search response, so this step is not needed there.

React component library

For React 19+ projects, @indxsearch/intrface implements all of the above patterns as drop-in components: SearchProvider, SearchInput, SearchResults, ValueFilterPanel, RangeFilterPanel, ActiveFiltersPanel, SortByPanel, and more. See the indx-intrface README for full component API.


Key Design Properties

  • No language configuration — works across languages without tokenizers, stemmers, or stop words
  • Built-in typo tolerance — pattern matching handles misspellings automatically
  • In-memory indexing — all search indexes live in memory for speed; persistence is metadata-only
  • Linear coverage scaling — coverage cost scales linearly with coverageDepth
  • Schemaless JSON — nested objects supported, fields discovered automatically via Init/Analyze
  • Two-step retrieval (C# only) — the C# NuGet API returns keys + scores; fetch full documents separately with GetJsonDataOfKey. The HTTP API returns full document JSON directly in the search response

Resources

- IndxSearchLib NuGet — core search engine (.NET 9) - IndxCloudLoader — C# data loading reference

  • HTTP API

- IndxCloudApi — self-host server template (ASP.NET Core) - OpenAPI spec — machine-readable API definition

  • Node.js / TypeScript

- @indxsearch/indx-types — TypeScript type definitions - IndxNodeLoader — Node.js data loading reference

  • Frontend

- indx-intrface — React search UI components (@indxsearch/intrface)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

36.34%
按下载量换算37

Claude

30.42%
按下载量换算31

Cursor

16.44%
按下载量换算17

Gemini CLI

9.7%
按下载量换算10

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

external-service

该 Skill 可能调用第三方服务、云服务或外部模型 API,使用前需要确认账号、额度、数据发送范围和服务条款。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills