docs(changelog): v1.41.0 Agent Toolbox + Rich Cards + Voice Mode

This commit is contained in:
jae 2026-04-20 11:11:03 +00:00
parent 5ed5349052
commit 79b0173610

View file

@ -1,6 +1,26 @@
{
"site": "jaeswift.xyz",
"entries": [
{
"version": "1.41.0",
"date": "20/04/2026",
"category": "FEATURE",
"title": "Agent Toolbox Expansion (37 tools) \u00b7 Rich Tool Cards \u00b7 Voice Mode \u00b7 Broadcast Banner",
"changes": [
"Expanded JAE-AI agent from 10 \u2192 37 tools across 4 tiers. New anonymous: search_unredacted, search_crimescene, search_radar, search_docs (unified), get_gov_domains_stats, get_server_status, random_fortune, ascii_banner (FIGlet via pyfiglet + fallback), get_leaderboards, get_network_graph_data, get_guestbook",
"New operator-tier tools (wallet required): save_memory / list_memories / delete_memory (per-wallet personal memory cap 100 each in api/data/agent_memories/<wallet>.json), get_my_wallet_summary, get_my_transactions, post_guestbook_entry (280-char sanitised, 3/hour limit)",
"New elite-tier tools ($JAE holder / \u22651 SOL): deep_research (chained search_site+contraband+unredacted+radar), generate_report (~1500-word markdown via Venice Kimi), track_token, set_alert / list_alerts, ask_agent_chain (3-step sub-agent stub)",
"New admin-tier tools: deploy_sitrep_now (triggers sitrep_generator.py subprocess), broadcast_banner (stores in api/data/broadcast.json), purge_cache (radar/contraband/telemetry), view_private_stats",
"New public endpoint GET /api/broadcast/current \u2014 frontend polls every 60s for active banner, serves 204 when none active, auto-expires via expires_at timestamp",
"Rich per-tool card renderers in js/chat.js \u2014 24 tool-specific visual cards (\ud83d\udcb0 price card with pos/neg delta, \ud83d\udd0e search result lists, \ud83d\udc41 wallet X-ray with metric tiles, \ud83c\udf10 domain availability badge, \ud83d\udcdc changelog bullets with version pills, \ud83d\udda5\ufe0f server status, \ud83e\udde0 memory lists, etc.) replacing raw JSON dumps",
"Voice Mode (Web Speech API) \u2014 new js/voice-mode.js (203 lines): mic button + \u2699 settings gear injected beside chat send button on index.html; continuous recognition with interim results, 1.5s silence \u2192 auto-submit; SpeechSynthesis auto-speaks agent replies (opt-in via settings modal), en-GB default voice with picker, rate slider 0.8-1.3, test button, pulsing red listening indicator, \ud83d\udd0a speaking indicator in chat header",
"Sitewide broadcast banner \u2014 new js/broadcast.js (53 lines): fixed-top red banner on all 12 sitewide-effects pages (index, hq/*, depot/*, armoury/lab, recon, transmissions/radar), dismissable with localStorage fingerprint, slide-down animation, auto-hides on 204",
"CSS additions: +174 lines in css/agent-chat.css (tool-card styles, price cards, metric tiles, badges, mic button pulse animation, voice settings modal with accent glow, mobile breakpoint shrinking), +44 lines in css/sitewide-effects.css (broadcast banner gradient, slide-down keyframe, body padding when active)",
"Markdown rendering confirmed in chat (bold/italic/code/links/headings/lists all render via md() helper); typewriter effect now dispatches jae-agent-reply CustomEvent on completion \u2014 wired for voice auto-speak",
"Mobile viewport audit confirmed all 36 HTML pages already have <meta name=\"viewport\"> and homepage style.css has 768px + 480px breakpoints \u2014 no changes required",
"New files: api/agent_tools_extended.py (~900 lines), js/voice-mode.js, js/broadcast.js. Modified: api/agent_tools.py (+import), api/app.py (+broadcast endpoint), js/chat.js (+170 lines for TOOL_RENDERERS), css/agent-chat.css (+174), css/sitewide-effects.css (+44), 12 HTML files (+broadcast.js script tag), index.html (+voice-mode.js)"
]
},
{
"version": "1.40.0",
"date": "20/04/2026",