Skip to content

ForgeBook v1.0.1

Choose a tag to compare

@NickDoxa NickDoxa released this 17 Apr 15:59
· 8 commits to master since this release

ForgeBook v1.0.1

First hotfix release after v1.0.0. Targets the two biggest pain points from real-world install feedback: documentation discovery (most mods leave displayURL empty) and interactive-chat latency (single-digit seconds, not minutes).

What got fixed

Docs discovery

  • /forgebook item now falls back to scanning the mod description and credits for a URL when displayURL is empty in mods.toml — since most mod authors put their wiki links in the description free-text field. Social links (Discord/Twitter/Patreon/etc.) are filtered out. Preference order: github / *.fandom.com / wiki / docs hosts.
  • When all three URL tiers come up empty and enable_web_search = true, the pipeline now does a single web search to find a candidate URL before giving up. Skips obvious-junk domains.

Speed — target was 10–30s per query

  • Claude request timeout: 60s → 30s
  • Retry count: 3 → 1 (worst-case latency on a failing call went from ~240s to ~65s)
  • max_tokens for /forgebook item: capped at 400 (Haiku finishes a ~400-token response in about 8s vs 20s+ for 1024)
  • Scraped-doc truncation for RAG path: 8000 → 3000 chars (smaller prompt, faster TTFT)
  • Docs-cache per URL: second-through-Nth query against the same mod skips fetch+parse entirely
  • Agent loop iteration cap: 6 → 3 (bounds interactive chat latency)
  • Default rate_limit_per_minute: 5 → 30 (5/min choked chat UI after five messages)

Chat UI bugs from v1.0.0

  • Chat panel left-pinned, no parent re-render — fixes player model and item tooltips bleeding through the chat overlay
  • Markdown → Minecraft §-codes on client side — **bold**, *italic*, # headings, - bullets, `code`, [link](url) all render inline instead of as raw syntax

Infrastructure

  • DuckDuckGo search backend: routed through plain HttpClient instead of SafeHttpFetcher (fixes HTTPS hostname wrong TLS handshake failures — SafeHttpFetchers SNI workaround was designed for HttpsURLConnection and does not work with java.net.http.HttpClient). Brave backend untouched (already worked).
  • Server config moved from ModConfig.Type.SERVER to COMMON (so the file lives at config/forgebook-server.toml, persists across restarts, and is not synced over the network to clients at login)
  • Stripped jsoup META-INF/** noise from the main jar (fixes resource-pack breakage when ForgeBook is installed in a modpack)

Install / upgrade

Drop forgebook-1.0.1.jar into mods/ on both client and server, replacing forgebook-1.0.0.jar.

If you had rate-limit issues on v1.0.0: either /op <yourname> (OPs bypass entirely) or edit config/forgebook-server.toml and bump rate_limit_per_minute = 30 (existing installs keep the value from their v1.0.0 config; only new installs get the new default).

See docs/BUILD-AND-INSTALL.md for full setup.

Requirements (unchanged)

  • Minecraft 1.20.1
  • Forge 1.20.1-47.4.18 or newer 47.x
  • Java 17
  • Anthropic API key (server-side; console.anthropic.com)

License

MIT. See LICENSE and THIRD_PARTY_NOTICES.md.

— Nick Doxa