
Nia Public Search
- 3 installs
- 1 repo stars
- Updated March 24, 2026
- nozomio-labs/nia-public-skill-demo
Helps with ai & agent building tasks.
About
nia public search is a Claude Code skill for ai & agent building. It helps solo builders move faster with AI-assisted development.
- nia public search
- AI & Agent Building
- AI-coding skill
Nia Public Search by the numbers
- 3 all-time installs (skills.sh)
- Ranked #13,657 of 16,546 AI & Agent Building skills by installs in the Skillselion catalog
- Data as of Aug 4, 2026 (Skillselion catalog sync)
npx skills add https://github.com/nozomio-labs/nia-public-skill-demo --skill nia-public-searchAdd your badge
Show developers this skill is listed on Skillselion. Paste this into your README.
| Installs | 3 |
|---|---|
| repo stars | ★ 1 |
| Last updated | March 24, 2026 |
| Repository | nozomio-labs/nia-public-skill-demo ↗ |
What it does
Helps with ai & agent building tasks.
Files
Nia Public Search
Search any public code repository or documentation with AI-synthesized answers. No signup. No API key. Just ask.
10k+ sources indexed — npm, PyPI, GitHub repos, framework docs, and more.
Requirements
curljq
Quick Start
# Search a specific repo
./scripts/search.sh query "how to use hooks" vercel/next.js
# Search documentation
./scripts/search.sh query "authentication" https://docs.supabase.com
# Search across all public sources
./scripts/search.sh query "how to build an AI agent"
# List available sources
./scripts/search.sh sourcesScripts
search.sh — Search & Discovery
# Search a specific source (repo slug, URL, or display name)
./scripts/search.sh query "how to stream responses" vercel/ai
./scripts/search.sh query "rate limiting" https://docs.stripe.com
./scripts/search.sh query "database migrations" supabase/supabase
# Search all public sources
./scripts/search.sh query "how to implement OAuth"
# List indexed sources (filterable by type)
./scripts/search.sh sources # all
./scripts/search.sh sources repository # repos only
./scripts/search.sh sources documentation # docs onlyRate Limits
Free public access: 20 queries/hour per IP.
For unlimited access, private repos, Slack/Drive integration, deep research, and more: 1. Sign up at trynia.ai 2. Get your API key 3. Install the full Nia skill: npx nia-wizard@latest
Nia Public Search Skill
Search any public code repository or documentation with AI — no API key needed.
Install in Claude Code
claude skill add --url https://github.com/nozomio-labs/nia-public-skill-demoWhat it does
Ask AI questions about any of 10k+ indexed sources — React, Next.js, Stripe, Supabase, LangChain, and more.
> "How do I use streaming in the Vercel AI SDK?"
> "What's the authentication flow in Supabase?"
> "How do webhooks work in Stripe?"No signup. No API key. 20 free queries/hour.
Want more?
For unlimited access, private repos, Slack/Drive integration, and deep research — sign up at trynia.ai and install the full skill: npx nia-wizard@latest
#!/usr/bin/env bash
# Shared library for Nia Public skill — no API key required
# Source this file: source "$(dirname "$0")/lib.sh"
BASE_URL="${NIA_PUBLIC_URL:-https://apigcp.trynia.ai}/public"
urlencode() {
jq -nr --arg v "$1" '$v|@uri'
}
# Generic curl wrapper: nia_curl METHOD URL [DATA]
nia_curl() {
local method="$1" url="$2" data="${3:-}"
local args=(-s -w '\n__HTTP_STATUS:%{http_code}' -X "$method" "$url")
if [ -n "$data" ]; then
args+=(-H "Content-Type: application/json" -d "$data")
fi
local response
response=$(curl "${args[@]}" 2>/dev/null) || true
local http_status="${response##*__HTTP_STATUS:}"
local body="${response%__HTTP_STATUS:*}"
http_status="${http_status//[!0-9]/}"
: "${http_status:=0}"
if [ "$http_status" = "429" ]; then
echo ""
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo " Rate limit reached (20 queries/hour free tier)"
echo ""
echo " Get unlimited access:"
echo " 1. Sign up at https://trynia.ai"
echo " 2. Get your API key"
echo " 3. Install the full Nia skill: npx nia-wizard@latest"
echo "━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━"
echo ""
exit 1
fi
if echo "$body" | jq '.' >/dev/null 2>&1; then
echo "$body"
else
jq -n --arg msg "$body" --argjson code "$http_status" '{error: $msg, http_status: $code}' 2>/dev/null \
|| printf '{"error":"request failed","http_status":%d}\n' "$http_status"
fi
}
nia_get() { nia_curl GET "$1" | jq '.'; }
nia_post() { nia_curl POST "$1" "$2" | jq '.'; }
#!/usr/bin/env bash
# Nia Public Search — query any indexed public source, no API key needed
# Usage: search.sh <command> [args...]
set -e
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"
source "$SCRIPT_DIR/lib.sh"
# ─── query — AI-powered search against a specific source or all public sources
cmd_query() {
if [ -z "$1" ]; then
echo "Usage: search.sh query <query> [source]"
echo ""
echo " source: repo slug (vercel/ai), URL (https://docs.stripe.com), or canonical_id"
echo " Env: TOP_K (default 10)"
echo ""
echo "Examples:"
echo " search.sh query 'how to use hooks' vercel/next.js"
echo " search.sh query 'authentication' https://docs.supabase.com"
echo " search.sh query 'how to build an agent' # searches all public sources"
return 1
fi
local query="$1" source="${2:-}"
DATA=$(jq -n \
--arg q "$query" --arg src "$source" \
--argjson k "${TOP_K:-10}" \
'{query: $q, top_k: $k}
+ (if $src != "" then {source: $src} else {} end)')
nia_post "$BASE_URL/search" "$DATA"
}
# ─── sources — list all searchable public sources
cmd_sources() {
local type="${1:-}" limit="${LIMIT:-20}" offset="${OFFSET:-0}"
local url="$BASE_URL/sources?limit=$limit&offset=$offset"
if [ -n "$type" ]; then url="${url}&type=$type"; fi
nia_get "$url"
}
# ─── dispatch ─────────────────────────────────────────────────────────────────
case "${1:-}" in
query) shift; cmd_query "$@" ;;
sources) shift; cmd_sources "$@" ;;
*)
echo "Usage: $(basename "$0") <command> [args...]"
echo ""
echo "Commands:"
echo " query Search any public source with AI (no API key needed)"
echo " sources List all searchable public sources"
echo ""
echo "Examples:"
echo " search.sh query 'how to use hooks' vercel/next.js"
echo " search.sh query 'webhooks' https://docs.stripe.com"
echo " search.sh sources repository"
exit 1
;;
esac