web-search

web-search is a skill for Claude Code, Codex from eSlider/2dph. It costs 48 tokens per session (538 once invoked), scanned A, original, MIT.

A web-search tool that queries public search engines through SearXNG, a service that combines results from multiple search sources. It also separates public-web research from searches of an internal knowledge base.

In plain words
What is it for?
Use it to search technical documentation and standards, restrict searches by site or language, request recent results, and retrieve URLs for further checking.
Why use it?
It helps find current vendor documentation, library behavior, and public standards without mixing outside facts with information from internal repositories.

Skill for Claude CodeCodex

Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

agentmods
npx agentmods add skills/eslider/2dph/web-search
Any agent
npx skills add eSlider/2dph --skill web-search
Clone the repo
git clone --depth 1 https://github.com/eSlider/2dph

Made for: Claude Code, Codex.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for web-search

README.md
[![agentmods](https://agentmods.dev/badge/skills/eslider/2dph/web-search.svg)](https://agentmods.dev/skills/eslider/2dph/web-search)
Your own site
<a href="https://agentmods.dev/skills/eslider/2dph/web-search"><img src="https://agentmods.dev/badge/skills/eslider/2dph/web-search.svg" alt="Measured on agentmods" height="20"></a>
Per session 48 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 538 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5 $0.00048 $0.00538
Opus 5 $0.00024 $0.00269
Sonnet 5 $0.00010 $0.00108
Haiku 4.5 $0.00005 $0.00054

Measured 3d ago against content hash 53dacd868b36, method: parsed. Prices are Anthropic first-party input rates as of 2026-08-30, from the pricing page.

Security

Grade A, and why

web-search scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured 3d ago.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

skills/web-search/SKILL.md · 58 lines

What it actually says

bin/web/search.go "LadybugDB vector index"
bin/web/search.go "model2vec multilingual" --category it
bin/web/search.go "hypervisor" --site example.com --json | yq -r '.results[].url'
bin/web/search.go "postgres partial index" --lang en --fresh year

URL and optional Basic Auth live in $BRAIN_SEARCH_ENV (default $HOME/.config/brain/search.env): BRAIN_SEARCH_URL is required; BRAIN_SEARCH_USER / BRAIN_SEARCH_PASS only if the instance uses Basic Auth. A host that already runs SearXNG should set BRAIN_SEARCH_URL and not start the Compose profile.

Web or knowledge base

bin/brain/search.go holds our own facts: the ops stack, portfolio, ssh hosts, the lexicon. Go there first. Reach for bin/web/search.go when the answer is outside our repos: upstream library behaviour, vendor documentation, public standards.

Keep the two apart. A finding is stronger when the reader can see that one source was ours and one was not.

PII: this query leaves the host

The search goes to external engines. Never put a client or staff identifier in it. The tool refuses long digit runs, Personalnummer, KV-Nr, dates of birth and street-with-number, and exits 2. Rephrase rather than reaching for --force.

Read the status, not just the results

The instance answers HTTP 200 with an empty list when it throttles, so an empty answer is ambiguous by construction. The tool resolves that for you:

status exit meaning
ok 0 engines answered
throttled 3 nobody answered; say nothing about what exists

Never turn a throttled result into "there is no information about X".

Etiquette

Calls are serialised host-wide and kept ten seconds apart, and answers are cached for seven days. Do not loop over queries, and do not use --refresh unless the cached answer is genuinely stale: a burst suspends the engines for several minutes for everyone.

Files

What ships with it

1 file beside SKILL.md in the same directory: the scripts, references and assets a skill reads on demand. Not counted in the per-session cost; read them before you install if any of them is executable.

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. 3d ago First seen · 58 lines · 48 tokens per session scan A 53dacd868b36

Subscribe to this mod's changes

web-search is a skill published in the GitHub repository eSlider/2dph (2 stars, last pushed 4d ago), licensed MIT. It adds 48 tokens to every session and 538 once invoked, about $0.0002 per session on Opus 5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-31.

Related

Other skills, from other repositories

engrama-onboard

Build a personalized Engrama memory graph for any user through a conversational interview. Use this skill whenever someone says "set up Engrama", "create my graph", "onboard", "build my profile", "configure Engrama for me", or asks how to start using Engrama. Also use when the user mentions they have a different role…

scops/engrama · 104 tokens

life-memory-mcp-connect

Set up an external AI agent to connect to the Life Memory System through MCP, including verified installation, retrieval, RawEvent writes, sync, diagnostics, and Working-Agent governance. Use when an agent needs to install or verify the Life Memory MCP bridge, onboard Codex/Claude/Cursor/Windsurf style clients, or…

234194027-cpu/aion-memory-nexus · 75 tokens

life-memory-media-ingestion

Teach an external agent how to send links, files, images, tables, audio, and video into the Life Memory System as reviewable media note artifacts through MCP.

234194027-cpu/aion-memory-nexus · 39 tokens

fortemi-roadmap-skill

Advance the Fortemi delivery roadmap by one concrete increment and document the progress. Reads .aiwg/planning/roadmap.md, picks the next actionable item respecting phase gating, does or dispatches the work, then records progress back into the roadmap. Built for fresh sessions and simple loops.

Fortemi/fortemi · 65 tokens

fortemi-monthly-report

Author a Fortémi monthly report as a docsite blog post — gather what shipped that month from git history, CHANGELOG, and release announcements, then write it up FOR USERS in plain language and publish it to the Pagenary blog collection.

Fortemi/fortemi · 56 tokens

accurate-code

Use when implementing or modifying code with Kontext Brain so each behavior-bearing logic unit is grounded in current provenance-backed decisions, domain terms, invariants, and Evidence.

hj1105/kontext-brain-ts · 36 tokens