Adds two new tools registered through the existing ALL_TOOLS registry:
- web_search hits SearXNG's JSON API (Fathom, internal Tailscale URL,
no auth) and returns top results
- web_fetch retrieves a URL's text content, gated by isPublicUrl
(url_guard.ts) which blocks loopback / RFC1918 / Tailscale CGNAT /
link-local / .local / .internal / non-http schemes
Both tools are opt-in via the existing session.web_search_enabled flag
(plumbed in v1.9, activated here). Default off. UI labels updated to
"Enable web search and fetch" / "Web search and fetch" since fetch joins
the same store. Counts against the v1.8.2 per-turn budget; covered by
the v1.11.6 doom-loop guard.
Native Node 20 fetch — no new prod dep. HTML stripping via regex (script
and style content elided wholesale). 5MB body cap, 15s fetch timeout,
8000-char default output, 32000-char cap.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
13 lines
486 B
Plaintext
13 lines
486 B
Plaintext
NODE_ENV=production
|
|
PORT=3000
|
|
DATABASE_URL=postgres://boocode:CHANGE_ME@boocode_db:5432/boocode
|
|
LLAMA_SWAP_URL=http://100.101.41.16:8401
|
|
PROJECT_ROOT_WHITELIST=/opt
|
|
BOOTSTRAP_ROOT=/opt/projects
|
|
DEFAULT_MODEL=qwen3.6-35b-a3b-mxfp4
|
|
POSTGRES_PASSWORD=CHANGE_ME
|
|
# v1.11.8: SearXNG JSON endpoint for the web_search / web_fetch tools.
|
|
# Internal Tailscale address that bypasses Authelia. Override if you
|
|
# point BooCode at a different SearXNG instance.
|
|
SEARXNG_URL=http://100.114.205.53:8888
|