idx-md
Scannednpx machina-cli add skill Keith-CY/idx.md/data --openclawidx.md
Purpose
- Markdown registry for AI agent libraries and resources.
- Agents can browse to learn everything they could use, then fetch the exact markdown.
Index locations
- All topics (full listing, alphabetical): https://idx.md/data/index.md (canonical) or https://idx.md/index.md (alias)
- Capability navigation (browse by what the agent can do): https://idx.md/category/index.md
- Scenario navigation (browse by workflow / use-case): https://idx.md/scenario/index.md
- Industry navigation (browse by domain / vertical): https://idx.md/industry/index.md
How to choose a navigation mode
- If you know what you want: start from
/data/index.mdand search by keywords in titles/tags. - If you want tools by capability: start from
/category/index.md. - If you have a specific workflow/use-case: start from
/scenario/index.md. - If you're operating in a specific domain: start from
/industry/index.md.
Index entry format
- Each entry is a HEAD frontmatter block followed by a topic line.
- Topic line format:
|/data/{topic}| - The index may start with a short HTML comment preamble; entries begin at the first
---frontmatter block.
...frontmatter...
|/data/openclaw|
How to fetch
- Read
https://idx.md/data/index.md(orhttps://idx.md/index.md). - Choose
{topic}from the|/data/{topic}|line. - HEAD metadata:
https://idx.md/{topic}(or/data/{topic}/HEAD.md) - Vector shard (for embedding recall):
https://idx.md/{topic}/vectors.json - BODY content:
https://idx.md/{topic}/BODY.md - After download, compute SHA-256 on the raw BODY bytes and compare to
content_sha256in HEAD frontmatter. - Use
retrieved_atto decide whether a cached BODY needs refresh.
Vector-based retrieval (recommended)
- Use
/{topic}/vectors.jsonas the retrieval layer, then fetch/{topic}/BODY.mdonly for top candidates. - Each
vectors.jsoncurrently contains oneheadrecord derived from HEAD metadata. - Build/query embeddings on
records[].text. - Use
records[].metadata.content_sha256as your embedding cache key; only re-embed when it changes. - Suggested flow:
- Collect topic candidates from
/data/index.mdor category/scenario/industry indexes. - Fetch each candidate's
/{topic}/vectors.json. - Rank by vector similarity (optionally hybrid with lexical/tag score).
- Fetch
/{topic}/BODY.mdfor top-k and generate final answer from BODY.
URL map
/,/skill.md,/SKILL.md-> this document/index.md,/data/index.md-> index listing/category/index.md-> category index listing/category/{category}/index.md-> category topic listing/scenario/index.md-> scenario index listing/scenario/{scenario}/index.md-> scenario topic listing/industry/index.md-> industry index listing/industry/{industry}/index.md-> industry topic listing/{topic}->/data/{topic}/HEAD.md/{topic}/HEAD.md-> HEAD metadata/{topic}/vectors.json-> vector shard for embedding recall/{topic}/BODY.md-> BODY content
Constraints
.mdonly;.mdxrejected by filename.
Integrity / Hash
content_sha256lives in the HEAD frontmatter.content_sha256is the SHA-256 of the exact BODY bytes (no normalization).- Format: lowercase hex string.
- Verify by hashing the downloaded BODY.md bytes and comparing to
content_sha256. - If the hash differs, re-download BODY.md.
Example flow
- Read
/index.md-> pickopenclaw-> fetch/openclaw/HEAD.md-> fetch/openclaw/BODY.md.
Contribute
If you find a high-quality markdown resource that agents should know about, please open a PR to add it. Repo: https://github.com/Keith-CY/idx.md
What to add
- Add new sources to
sources/general.yml. - Use a direct markdown URL (
.md) and preferraw.githubusercontent.comfor GitHub content. .mdxfiles are rejected.- Choose a
typeandslugthat match^[a-z0-9][a-z0-9-]*$. - Avoid editing auto-generated registries (
sources/openclaw.yml,sources/openai.yml, etc.) ordata/outputs directly.
Minimal entry example
- type: skills
slug: acme-awesome-skill
source_url: https://raw.githubusercontent.com/acme/awesome-skill/main/SKILL.md
title: Awesome Skill (optional)
summary: One-line summary (optional)
tags:
- skills
license: MIT (optional)
upstream_ref: https://github.com/acme/awesome-skill/blob/main/SKILL.md (optional)
How to submit
- Fork the repo: https://github.com/Keith-CY/idx.md
- Add your entry to
sources/general.yml. - Open a PR with a short note on why the source is valuable for agents.
- If you can run the build, include generated
data/updates; otherwise the maintainer will handle it.
Thanks for helping keep idx.md useful and current.
Overview
idx-md provides a registry and retrieval workflow for AI agent libraries. It lets an agent browse the idx.md index to locate topics and fetch the exact HEAD metadata and BODY markdown, ensuring precise, up-to-date documentation. Vector-based recall is supported via topic-specific vectors for fast ranking before fetching BODY.
How This Skill Works
Start by reading the index at /data/index.md or /index.md, then pick a topic from the |/data/{topic}| line. Retrieve HEAD metadata from /{topic} (or /data/{topic}/HEAD.md) and fetch the BODY content from /{topic}/BODY.md. Validate integrity by hashing the raw BODY bytes and comparing to content_sha256 in HEAD; use retrieved_at to manage caching. For faster discovery, pull /{topic}/vectors.json to rank candidates before downloading BODY.md.
When to Use It
- You need to locate a specific AI library topic from the idx.md registry.
- You want to browse by capability, workflow, or industry and then fetch authoritative docs.
- You need to verify the integrity of fetched BODY content against HEAD metadata.
- You want to rank possible topics with vector similarity before downloading full BODY content.
- You are contributing new topics and need to follow the index and HEAD/BODY fetch flow.
Quick Start
- Step 1: Read /data/index.md (or /index.md) to find a topic.
- Step 2: Fetch HEAD via /{topic}/HEAD.md (or /data/{topic}/HEAD.md) and note content_sha256.
- Step 3: Download /{topic}/BODY.md and verify its SHA-256 hash matches HEAD; optionally use /{topic}/vectors.json for quick ranking.
Best Practices
- Always start from /data/index.md (or /index.md) to discover topics before deep-diving.
- Fetch HEAD first to obtain metadata and content_sha256 for integrity checks.
- Use /{topic}/vectors.json to rank candidates before pulling BODY.md.
- Verify BODY.md by hashing raw bytes and comparing to content_sha256 in HEAD.
- Cache BODY.md with retrieved_at and refresh when the hash or source updates.
Example Use Cases
- Example 1: Read /index.md, pick 'openclaw', then fetch /openclaw/HEAD.md and /openclaw/BODY.md.
- Example 2: Browse by capability from /category/index.md to locate topics, then fetch their HEAD/BODY as needed.
- Example 3: Retrieve /{topic}/vectors.json to rank candidates, then download BODY.md for the top result.
- Example 4: After downloading BODY.md, recompute SHA-256 and confirm it matches content_sha256 in HEAD.
- Example 5: Add a new resource by proposing a change to sources/general.yml and following the /data/index.md workflow.