✓ Verified 💻 Development ✓ Enhanced Data

Kagi Enrich

Search Kagi's unique non-commercial web (Teclis) and non-mainstream news (TinyGem) indexes for indep

Rating
4.2 (400 reviews)
Downloads
3,289 downloads
Version
1.0.0

Overview

Search Kagi's unique non-commercial web (Teclis) and non-mainstream news (TinyGem) indexes for independent, ad-free.

Complete Documentation

View Source →

Kagi Enrichment

Search Kagi's proprietary enrichment indexes using the Kagi Enrichment API. These are Kagi's "secret sauce" — curated indexes of non-commercial and independent content that complement mainstream search results.

Two indexes are available:

IndexBackendBest for
webTeclisIndependent websites, personal blogs, open-source projects, non-commercial content
newsTinyGemNon-mainstream news sources, interesting discussions, off-the-beaten-path journalism
This skill uses a Go binary for fast startup and zero runtime dependencies. The binary can be downloaded pre-built or compiled from source.

Setup

Requires a Kagi account with API access enabled. Uses the same KAGI_API_KEY as all other kagi-* skills.

  • Create an account at https://kagi.com/signup
  • Navigate to Settings → Advanced → API portal: https://kagi.com/settings/api
  • Generate an API Token
  • Add funds at: https://kagi.com/settings/billing_api
  • Add to your shell profile (~/.profile or ~/.zprofile):
bash
export KAGI_API_KEY="your-api-key-here"

Pricing

$2 per 1,000 searches ($0.002 per query). Billed only when non-zero results are returned.

Usage

bash
# Search the independent web (Teclis index) — default
{baseDir}/kagi-enrich.sh web "rust async programming"
{baseDir}/kagi-enrich.sh "rust async programming"        # web is the default

# Search non-mainstream news (TinyGem index)
{baseDir}/kagi-enrich.sh news "open source AI"

# Limit number of results
{baseDir}/kagi-enrich.sh web "sqlite internals" -n 5

# JSON output
{baseDir}/kagi-enrich.sh web "zig programming language" --json
{baseDir}/kagi-enrich.sh news "climate change solutions" --json

# Custom timeout
{baseDir}/kagi-enrich.sh web "query" --timeout 30

Options

FlagDescription
-n Max results to display (default: all returned)
--jsonEmit JSON output
--timeout HTTP timeout in seconds (default: 15)

Output

Default (text)

text
--- Result 1 ---
Title: SQLite Internals: How The World's Most Used Database Works
URL:   https://www.compileralchemy.com/books/sqlite-internals/
Date:  2023-04-01T00:00:00Z
       A deep-dive into how SQLite's B-tree storage engine, WAL journal...

--- Result 2 ---
...

[API Balance: $9.9980 | results: 15]

JSON (--json)

json
{
  "query": "sqlite internals",
  "index": "web",
  "meta": {
    "id": "abc123",
    "node": "us-east4",
    "ms": 386,
    "api_balance": 9.998
  },
  "results": [
    {
      "rank": 1,
      "title": "SQLite Internals: How The World's Most Used Database Works",
      "url": "https://www.compileralchemy.com/books/sqlite-internals/",
      "snippet": "A deep-dive into SQLite's B-tree...",
      "published": "2023-04-01T00:00:00Z"
    }
  ]
}

When to Use

  • Use web when you want independent, non-commercial perspectives on a topic — personal blogs, indie projects, academic pages, niche communities — results that mainstream search drowns out with SEO-optimized commercial sites
  • Use news when you want news and discussions from sources outside the mainstream media cycle — niche outlets, Hacker News threads, Reddit discussions, independent journalists
  • Combine with kagi-search for the most complete picture: kagi-search for high-quality general results, kagi-enrich web for independent voices, kagi-enrich news for alternative news angles
  • Use kagi-fastgpt instead when you need a synthesized answer rather than a list of sources

Note on result counts

The enrichment indexes are intentionally niche — they may return fewer results than general search. No results for a query means no relevant content was found in that index (and you won't be billed).

Installation

Option A — Download pre-built binary (no Go required)

bash
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
ARCH=$(uname -m)
case "$ARCH" in
  x86_64)        ARCH="amd64" ;;
  aarch64|arm64) ARCH="arm64" ;;
esac

TAG=$(curl -fsSL "https://api.github.com/repos/joelazar/kagi-skills/releases/latest" | grep '"tag_name"' | cut -d'"' -f4)
BINARY="kagi-enrich_${TAG}_${OS}_${ARCH}"

mkdir -p {baseDir}/.bin
curl -fsSL "https://github.com/joelazar/kagi-skills/releases/download/${TAG}/${BINARY}" \
  -o {baseDir}/.bin/kagi-enrich
chmod +x {baseDir}/.bin/kagi-enrich

# Verify checksum (recommended)
curl -fsSL "https://github.com/joelazar/kagi-skills/releases/download/${TAG}/checksums.txt" | \
  grep "${BINARY}" | sha256sum --check

Pre-built binaries are available for Linux and macOS (amd64 + arm64) and Windows (amd64).

Option B — Build from source (requires Go 1.26+)

bash
cd {baseDir} && go build -o .bin/kagi-enrich .

Alternatively, just run {baseDir}/kagi-enrich.sh directly — the wrapper auto-builds on first run if Go is available.

The binary has no external dependencies — only the Go standard library.

Installation

Terminal bash

openclaw install kagi-enrich
    
Copied!

💻Code Examples

{baseDir}/kagi-enrich.sh web "query" --timeout 30

basedirkagi-enrichsh-web-query---timeout-30.txt
### Options

| Flag | Description |
|------|-------------|
| `-n <num>` | Max results to display (default: all returned) |
| `--json` | Emit JSON output |
| `--timeout <sec>` | HTTP timeout in seconds (default: 15) |

## Output

### Default (text)

}

.txt
## When to Use

- **Use `web`** when you want independent, non-commercial perspectives on a topic — personal blogs, indie projects, academic pages, niche communities — results that mainstream search drowns out with SEO-optimized commercial sites
- **Use `news`** when you want news and discussions from sources outside the mainstream media cycle — niche outlets, Hacker News threads, Reddit discussions, independent journalists
- **Combine with `kagi-search`** for the most complete picture: `kagi-search` for high-quality general results, `kagi-enrich web` for independent voices, `kagi-enrich news` for alternative news angles
- **Use `kagi-fastgpt`** instead when you need a synthesized answer rather than a list of sources

### Note on result counts

The enrichment indexes are intentionally niche — they may return fewer results than general search. No results for a query means no relevant content was found in that index (and you won't be billed).

## Installation

### Option A — Download pre-built binary (no Go required)

grep "${BINARY}" | sha256sum --check

-grep-binary--sha256sum---check.txt
Pre-built binaries are available for Linux and macOS (amd64 + arm64) and Windows (amd64).

### Option B — Build from source (requires Go 1.26+)
example.sh
# Search the independent web (Teclis index) — default
{baseDir}/kagi-enrich.sh web "rust async programming"
{baseDir}/kagi-enrich.sh "rust async programming"        # web is the default

# Search non-mainstream news (TinyGem index)
{baseDir}/kagi-enrich.sh news "open source AI"

# Limit number of results
{baseDir}/kagi-enrich.sh web "sqlite internals" -n 5

# JSON output
{baseDir}/kagi-enrich.sh web "zig programming language" --json
{baseDir}/kagi-enrich.sh news "climate change solutions" --json

# Custom timeout
{baseDir}/kagi-enrich.sh web "query" --timeout 30
example.txt
--- Result 1 ---
Title: SQLite Internals: How The World's Most Used Database Works
URL:   https://www.compileralchemy.com/books/sqlite-internals/
Date:  2023-04-01T00:00:00Z
       A deep-dive into how SQLite's B-tree storage engine, WAL journal...

--- Result 2 ---
...

[API Balance: $9.9980 | results: 15]
example.json
{
  "query": "sqlite internals",
  "index": "web",
  "meta": {
    "id": "abc123",
    "node": "us-east4",
    "ms": 386,
    "api_balance": 9.998
  },
  "results": [
    {
      "rank": 1,
      "title": "SQLite Internals: How The World's Most Used Database Works",
      "url": "https://www.compileralchemy.com/books/sqlite-internals/",
      "snippet": "A deep-dive into SQLite's B-tree...",
      "published": "2023-04-01T00:00:00Z"
    }
  ]
}
example.sh
OS=$(uname -s | tr '[:upper:]' '[:lower:]')
ARCH=$(uname -m)
case "$ARCH" in
  x86_64)        ARCH="amd64" ;;
  aarch64|arm64) ARCH="arm64" ;;
esac

TAG=$(curl -fsSL "https://api.github.com/repos/joelazar/kagi-skills/releases/latest" | grep '"tag_name"' | cut -d'"' -f4)
BINARY="kagi-enrich_${TAG}_${OS}_${ARCH}"

mkdir -p {baseDir}/.bin
curl -fsSL "https://github.com/joelazar/kagi-skills/releases/download/${TAG}/${BINARY}" \
  -o {baseDir}/.bin/kagi-enrich
chmod +x {baseDir}/.bin/kagi-enrich

# Verify checksum (recommended)
curl -fsSL "https://github.com/joelazar/kagi-skills/releases/download/${TAG}/checksums.txt" | \
  grep "${BINARY}" | sha256sum --check

Tags

#web_and-frontend-development #cli #web

Quick Info

Category Development
Model Claude 3.5
Complexity One-Click
Author joelazar
Last Updated 3/10/2026
🚀
Optimized for
Claude 3.5
🧠

Ready to Install?

Get started with this skill in seconds

openclaw install kagi-enrich