homepage: Protoss rename + fused Model Information component

The model cards become the StarCraft trio: frank-large -> frank-dragoon,
frank-primary -> frank-archon, frank-secondary -> frank-zealot (family
names only; endpoint/API ids unchanged). The three cards fuse into one
Model Information component: per-unit Protoss accent colours and hex-
clipped unit art, 15px type, clickable StarCraft unit-voice quotations
(original .ogg files from the fandom wiki, served from /sfx/), supervision
notes (dragoon/archon safe for autonomous use, zealot tight supervision),
compaction-model recommendation for frank-zealot, and uncensored-model
legal notes rendered as hover tooltips instead of wall text. docs.html
carries the same renames plus api-id mapping.

App-card updates: Seerr, Calibre-Web, RomM, Jellyfin set to WIP: DOWN
with Open links removed (new wip "down" badge state); Copyparty notes it
serves all other media apps content including WIP apps; Gitea and Plex
noted as needing logins separate from SSO; SearXNG noted as obfuscated,
not anonymous (upstream API keys tie to Frank).

Plumbing: Caddy @data allowlist grew /sfx/*; deploy_homepage copies sfx/;
homepage_config.bats pins the new probe names, the component fields,
art/voice-file presence, and the wip-down schema.
This commit is contained in:
Frank committed 2026-10-08 02:40:45 -07:00
1 parent 74da746c51
commit 203b0be145
19 files changed
+312 -88

No files matched your search

+32 -22
View File
@@ -40,50 +40,60 @@
conversations are saved to your account, so history follows you between devices.</p>
<img src="img/openwebui-chat.png" alt="Open WebUI chat screen with a question and the AI's answer">
<p>Below the text box, the model box on the right chooses which model answers you.
Family accounts get <code>frank-secondary</code> — the fleet's fast all-rounder,
Family accounts get <code>frank-zealot</code> — the fleet's fast all-rounder
(Open&nbsp;WebUI lists models by their API id; this one is <code>frank-secondary</code>),
which also sees images: drag a photo or screenshot straight into the chat box.
Frank's account can additionally reach the bigger models.</p>
<img src="img/openwebui-model-picker.png" alt="The Open WebUI welcome screen with frank-secondary selected in the model box">
<img src="img/openwebui-model-picker.png" alt="The Open WebUI welcome screen with the family model selected in the model box">
<p>Open WebUI keeps your chat history; the raw model endpoints (used by developer
tools, see <a href="#api-access">API access</a>) do not.</p>
</section>
<section id="models">
<h1>The running models</h1>
<p>Three models serve the family. The homepage status cards show whether
each one is up right now.</p>
<p>Three models serve the family, named for the Protoss units of StarCraft.
The homepage "Model Information" panel shows whether each one is up right now —
and plays the unit's voice if you click its quoted line.</p>
<h2>frank-large — deep reasoning</h2>
<h2>frank-dragoon — deep reasoning <em>(api id: frank-large)</em></h2>
<ul>
<li><strong>Model:</strong> Qwen3.8-Flash-Next v2 Swift1.5 abliterated (halogen flash-server, ~62&nbsp;GiB) — an uncensored edition that thinks before answering.</li>
<li><strong>Model:</strong> Qwen3.8-Flash-Next v2 Swift1.5 abliterated (halogen flash-server, ~62&nbsp;GiB) on the Strix Halo iGPU — an abliterated (censorship-removed) edition that thinks before answering.</li>
<li><strong>Equivalent:</strong> Claude Sonnet 5 / OpenAI-Luna (Summer 2026 frontier intelligence).</li>
<li><strong>Capacity:</strong> 200k-token context, two conversations at a time; sees images.</li>
<li><strong>Capacity:</strong> 200k-token context, two submissions at a time; sees images.</li>
<li><strong>Inputs:</strong> text, image.</li>
<li><strong>Best for:</strong> cybersecurity and debugging. <em>Use requires Frank's permission.</em></li>
<li><strong>Best for:</strong> complex agentic tasks, programming, system administration, and "claw"-style personal agents.</li>
<li><strong>Supervision:</strong> safe for autonomous, low-supervision use.</li>
<li><strong>Warning:</strong> <span class="key-warn" title="Abliterated output can include adult themes. You are responsible for the legal consequences of how you use it.">&#9888; legal note — hover to read</span></li>
</ul>
<h2>frank-primary — the primary model</h2>
<h2>frank-archon — the big one <em>(api id: frank-primary)</em></h2>
<ul>
<li><strong>Model:</strong> Qwen3.8-Flash-Next at native FP8 precision (radiance, 173&nbsp;GiB across both R9700s) — the biggest brain on the network.</li>
<li><strong>Model:</strong> Qwen3.8-Flash-Next at native FP8 precision (radiance, 173&nbsp;GiB) on twin AMD R9700s with more than 200&nbsp;GB of system RAM — the biggest brain on the network and the fastest runtime.</li>
<li><strong>Equivalent:</strong> Claude Opus 4.8 / OpenAI-Terra (Summer 2026 frontier intelligence).</li>
<li><strong>Capacity:</strong> 200k-token context, two conversations at a time; sees images.</li>
<li><strong>Capacity:</strong> 200k-token context, two submissions at a time; sees images.</li>
<li><strong>Inputs:</strong> text, image.</li>
<li><strong>Best for:</strong> software engineering, system administration, and instruction tasks.</li>
<li><strong>Best for:</strong> software engineering, system administration, and instruction tasks. <em>Please ask Frank before use — he uses this one primarily.</em></li>
<li><strong>Supervision:</strong> safe for autonomous, low-supervision use.</li>
</ul>
<h2>frank-secondary — the fast utility model</h2>
<h2>frank-zealot — the fast utility model <em>(api id: frank-secondary)</em></h2>
<ul>
<li><strong>Model:</strong> Qwen3.5-9B-Uncensored (Q6_K, 6.9&nbsp;GiB) on the RTX&nbsp;3090 — roughly 95 tokens per second.</li>
<li><strong>Model:</strong> Qwen3.5-9B-Uncensored (Q6_K) on the RTX&nbsp;3090 — roughly 95 tokens per second.</li>
<li><strong>Equivalent:</strong> last year's frontier level (2025).</li>
<li><strong>Capacity:</strong> two simultaneous conversations, 200k tokens each; sees images.</li>
<li><strong>Capacity:</strong> 200k-token context, two submissions at a time; sees images.</li>
<li><strong>Inputs:</strong> text, image.</li>
<li><strong>Best for:</strong> agentic search, RAG, research subagents, translation, roleplay, and summarization — any small task that doesn't need much intelligence, and anything with a picture (screenshots, photos, diagrams). This is the model Open&nbsp;WebUI offers to family accounts.</li>
<li><strong>Best for:</strong> code editor autocomplete, agentic search, RAG, research subagents, translation, roleplay, and summarization — any small task that doesn't need much intelligence, and anything with a picture. This is the model Open&nbsp;WebUI offers to family accounts.</li>
<li><strong>Compaction:</strong> if your agent harness supports setting a compaction model, set this one. A compaction job severely slows the bigger models for far longer than it slows this one.</li>
<li><strong>Supervision:</strong> requires tight human supervision.</li>
<li><strong>Warning:</strong> <span class="key-warn" title="Uncensored model — output can include adult content. You are responsible for the legal consequences of how you use it.">&#9888; legal note — hover to read</span></li>
</ul>
<p class="foot-note">Which one to pick? Small utility work, RAG, search, and
screenshots: <code>frank-secondary</code>. Software engineering, sysadmin, and
instruction tasks: <code>frank-primary</code>. Cybersecurity and debugging:
<code>frank-large</code> (with Frank's permission).</p>
<p class="foot-note">Which one to pick? Small utility work, autocomplete, RAG,
search, and screenshots: <code>frank-zealot</code>. Complex agentic work,
programming, and personal agents: <code>frank-dragoon</code>. Software
engineering, sysadmin, and instruction tasks: <code>frank-archon</code> (ask
Frank first). The names in brackets are the ids the API and Open&nbsp;WebUI
use; the family names are the Protoss ones.</p>
</section>
<section id="api-access">
@@ -110,7 +120,7 @@
<h2>Step 2 — the three details every tool asks for</h2>
<ul>
<li><strong>Base URL:</strong> <code>https://ai.franksdank.cloud/api/v1</code></li>
<li><strong>Model:</strong> <code>frank-secondary</code></li>
<li><strong>Model:</strong> <code>frank-secondary</code> — this is <code>frank-zealot</code>, the family utility model (the API uses the id, not the family name)</li>
<li><strong>API key:</strong> the <code>sk-…</code> from step 1 — sent as the header <code>Authorization: Bearer sk-…</code></li>
</ul>
<p>Proof that it works, from any terminal (replace the key):</p>
@@ -159,7 +169,7 @@
<p class="foot-note">The key works only for the family AI — it is not your
Authentik password, and losing it costs nothing beyond asking Frank to rotate it.
Want a bigger model (frank-primary, frank-large)? Ask Frank to raise your access.</p>
Want a bigger model (<code>frank-archon</code>, <code>frank-dragoon</code>)? Ask Frank to raise your access.</p>
</section>
<section id="media">