forge-kb / index.html
VibeCodingStudio's picture
init: forge-kb dashboard Space
d090cd0 verified
Raw
History Blame Contribute Delete
10.8 kB
<!DOCTYPE html>
<html lang="en" data-theme="dark">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>forge-kb | Phantom Empire KB</title>
<style>
:root{--bg:#0d0d0d;--surface:#141414;--border:#2a2a2a;--text:#e0e0e0;
--muted:#888;--accent:#4f98a3;--font:system-ui,monospace}
*{box-sizing:border-box;margin:0;padding:0}
body{background:var(--bg);color:var(--text);font-family:var(--font);font-size:14px;padding:2rem}
h1{color:var(--accent);font-size:1.5rem;margin-bottom:.25rem}
.sub{color:var(--muted);font-size:.8rem;margin-bottom:2rem}
.grid{display:grid;grid-template-columns:repeat(auto-fill,minmax(260px,1fr));gap:1rem}
.card{background:var(--surface);border:1px solid var(--border);border-radius:6px;padding:1.25rem}
.card h3{color:var(--accent);font-size:.9rem;margin-bottom:.5rem}
.card p{color:var(--muted);font-size:.8rem;line-height:1.6}
.badge{display:inline-block;background:#1a2e2e;color:var(--accent);
font-size:.7rem;padding:.15rem .5rem;border-radius:3px;margin:.15rem}
a{color:var(--accent);text-decoration:none}
a:hover{text-decoration:underline}
.checklist{background:var(--surface);border:1px solid var(--border);border-radius:6px;
padding:1.5rem;margin-top:2rem}
.checklist h2{color:var(--accent);margin-bottom:1rem;font-size:1rem}
.item{display:flex;align-items:flex-start;gap:.75rem;margin-bottom:.6rem;font-size:.85rem}
.item input{margin-top:2px;accent-color:var(--accent)}
.section-label{color:var(--muted);font-size:.7rem;text-transform:uppercase;
letter-spacing:.08em;margin:1.2rem 0 .5rem}
code{background:#1a1a1a;padding:.1rem .35rem;border-radius:3px;font-size:.8rem}
</style>
</head>
<body>
<h1>&#x26A1; forge-kb</h1>
<p class="sub">Phantom Empire Knowledge Base &middot; VibeCodingStudio &middot; Jetson Orin Nano 8GB &middot; Phoenix AZ</p>
<div class="grid">
<div class="card">
<h3>&#x1F4DA; Context7 Libraries</h3>
<p>16,165 LiteLLM snippets &middot; 510 PydanticAI snippets<br>resolve-library-id + query-docs pipeline active</p>
<br>
<span class="badge">LiteLLM</span><span class="badge">PydanticAI</span>
<span class="badge">FastAPI</span><span class="badge">FastMCP</span>
<span class="badge">NATS</span><span class="badge">gRPC</span>
<span class="badge">Redis</span><span class="badge">Nginx</span>
</div>
<div class="card">
<h3>&#x1F916; HuggingFace Repos</h3>
<p>
<a href="https://huggingface.co/datasets/VibeCodingStudio/forge-kb" target="_blank">datasets/VibeCodingStudio/forge-kb</a><br>
<a href="https://huggingface.co/spaces/VibeCodingStudio/forge-kb" target="_blank">spaces/VibeCodingStudio/forge-kb</a>
</p>
<br>
<span class="badge">Private Dataset</span><span class="badge">Static Space</span>
</div>
<div class="card">
<h3>&#x1F501; Cron Schedule</h3>
<p>2 AM daily: provider limit scrape + model ranking recompute + NATS event<br>Every 30 min: Redis heartbeat for all services</p>
<span class="badge">cron</span><span class="badge">Redis TTL</span><span class="badge">NATS</span>
</div>
<div class="card">
<h3>&#x1F9E9; Fallback Lanes</h3>
<p>L1: Fast classifier &rarr; L2: General &rarr; L3: Reasoning &rarr; L4: Local GGUF &rarr; L5: Degrade gracefully</p>
<span class="badge">LiteLLM Router</span><span class="badge">Qwen2.5-3B Q4_K_M</span>
</div>
<div class="card">
<h3>&#x1F6E0; MCP Tools Active</h3>
<p>Context7: 2 tools<br>HuggingFace: 14 tools<br>Authenticated as VibeCodingStudio</p>
<span class="badge">Context7</span><span class="badge">HuggingFace MCP</span>
</div>
<div class="card">
<h3>&#x1F512; Stack</h3>
<p>Pi-Agent-Core RPC &middot; LiteLLM Gateway &middot; A2A &middot; FastMCP &middot; NATS JetStream &middot; gRPC &middot; LSP &middot; Nginx &middot; Cobra CLI &middot; PydanticAI</p>
</div>
</div>
<div class="checklist">
<h2>&#x2705; forge-kb Build Checklist</h2>
<p class="section-label">Repository</p>
<div class="item"><input type="checkbox" checked><span>HF dataset repo created: <a href="https://huggingface.co/datasets/VibeCodingStudio/forge-kb" target="_blank">VibeCodingStudio/forge-kb</a></span></div>
<div class="item"><input type="checkbox" checked><span>HF Space created: <a href="https://huggingface.co/spaces/VibeCodingStudio/forge-kb" target="_blank">VibeCodingStudio/forge-kb</a> (this dashboard)</span></div>
<div class="item"><input type="checkbox" checked><span>Scaffold generated: 305 directories across industry/domain/service-type taxonomy</span></div>
<div class="item"><input type="checkbox"><span>GitHub repo created and pushed: <code>VibeCodingStudio/forge-kb</code> (private)</span></div>
<div class="item"><input type="checkbox"><span>Clone to Jetson at <code>/ssd/forge-kb</code></span></div>
<p class="section-label">Context7 Ingestion</p>
<div class="item"><input type="checkbox" checked><span>stack-manifest.yaml written (8 libraries with Context7 IDs)</span></div>
<div class="item"><input type="checkbox" checked><span>ingest.py written: resolve &#x2192; query-docs &#x2192; write KB entry &#x2192; metadata</span></div>
<div class="item"><input type="checkbox"><span>Resolve Context7 IDs for: FastAPI, FastMCP, NATS, Redis, Nginx, gRPC</span></div>
<div class="item"><input type="checkbox"><span><code>python ingestion/ingest.py --library LiteLLM</code></span></div>
<div class="item"><input type="checkbox"><span><code>python ingestion/ingest.py --all</code> (full stack)</span></div>
<div class="item"><input type="checkbox"><span>Verify docs-raw/ and docs-normalized/ populated for each service-type</span></div>
<p class="section-label">Model Registry</p>
<div class="item"><input type="checkbox" checked><span>model-metadata.schema.json pushed to HF dataset registry/</span></div>
<div class="item"><input type="checkbox" checked><span>model-registry-seed.json written (Groq llama-3.1-8b, Gemini 2.0 Flash, Qwen2.5-3B local)</span></div>
<div class="item"><input type="checkbox"><span>Add providers: Cerebras, Mistral, OpenRouter, Together, Cohere</span></div>
<div class="item"><input type="checkbox"><span>Use <code>hub_repo_details</code> MCP tool to confirm Jetson model fit (context window, params)</span></div>
<div class="item"><input type="checkbox"><span>Validate all entries against schema: <code>python -m jsonschema</code></span></div>
<p class="section-label">Scripts (Jetson /ssd)</p>
<div class="item"><input type="checkbox" checked><span>scrape_provider_limits.py written (2 AM daily cron)</span></div>
<div class="item"><input type="checkbox" checked><span>heartbeat.py written (every 30 min)</span></div>
<div class="item"><input type="checkbox"><span>Install cron on Jetson: <code>crontab -e</code> &rarr; 0 2 * * * and */30 * * * *</span></div>
<div class="item"><input type="checkbox"><span>Add real HTML parser to scraper (selectolax or bs4)</span></div>
<div class="item"><input type="checkbox"><span>Test: <code>redis-cli keys "forge:heartbeat:*"</code></span></div>
<div class="item"><input type="checkbox"><span>Test: <code>nats sub models.registry.updated</code></span></div>
<p class="section-label">HuggingFace Jobs</p>
<div class="item"><input type="checkbox"><span>Create HF Job: nightly model benchmarking (off-device, keep Jetson headroom)</span></div>
<div class="item"><input type="checkbox"><span>Create HF Job: full ingestion run on stack-manifest updates</span></div>
<div class="item"><input type="checkbox"><span>Schedule HF Job: daily registry sync + diff report pushed back to dataset</span></div>
<div class="item"><input type="checkbox"><span>Use <code>hf_jobs</code> MCP tool to submit and monitor jobs</span></div>
<p class="section-label">HuggingFace Files + Datasets</p>
<div class="item"><input type="checkbox" checked><span>README.md pushed via write_file MCP tool</span></div>
<div class="item"><input type="checkbox" checked><span>model-metadata.schema.json pushed via write_file MCP tool</span></div>
<div class="item"><input type="checkbox"><span>Upload model-registry-seed.json via write_file</span></div>
<div class="item"><input type="checkbox"><span>Create daily scrape Parquet dataset for provider-limits time series</span></div>
<div class="item"><input type="checkbox"><span>Create KB entries Parquet dataset for embedding + reranking pipeline</span></div>
<div class="item"><input type="checkbox"><span>Use <code>hub_repo_search</code> MCP: find GGUF models for Jetson fallback lane</span></div>
<p class="section-label">Dynamic Spaces (FastMCP Tools)</p>
<div class="item"><input type="checkbox"><span>Wire <code>mcp-tools/DeepSeek-OCR-experimental</code> into FastMCP dev_tools_server</span></div>
<div class="item"><input type="checkbox"><span>Wire <code>ResembleAI/Chatterbox</code> TTS into FastMCP voice tool</span></div>
<div class="item"><input type="checkbox"><span>Wire <code>mcp-tools/FLUX.1-Kontext-Dev</code> into Cakeboys creative pipeline</span></div>
<div class="item"><input type="checkbox"><span>Wire <code>prithivMLmods/SAM3-Image-Segmentation</code> into CakeVoid vision pipeline</span></div>
<p class="section-label">Agent Stack</p>
<div class="item"><input type="checkbox" checked><span>PydanticAI KB entry written: pydanticai-agent-mcp-sampling.md</span></div>
<div class="item"><input type="checkbox"><span>LiteLLM config.yaml: local-primary alias + L1&rarr;L5 fallback chain</span></div>
<div class="item"><input type="checkbox"><span>FastMCP dev_tools_server.py scaffolded with tool schemas</span></div>
<div class="item"><input type="checkbox"><span>Pi-Agent-Core RPC wired to FastAPI ingress</span></div>
<div class="item"><input type="checkbox"><span>NATS subjects defined: tasks.* agents.* models.registry.* forge.heartbeat.*</span></div>
<div class="item"><input type="checkbox"><span>Cobra CLI: status, run, schedule, models sync, agents scaffold, trace, replay</span></div>
<div class="item"><input type="checkbox"><span>Nginx reverse proxy config (FastAPI + LiteLLM, internal only)</span></div>
<div class="item"><input type="checkbox"><span>Logfire wired to supervisor agent + all MCP calls</span></div>
<div class="item"><input type="checkbox"><span>ALL persistent state (logs, models, Docker, cache) on /ssd not microSD</span></div>
<div class="item"><input type="checkbox"><span>E2E smoke test: Cobra CLI run &rarr; Pi-Agent-Core &rarr; FastAPI &rarr; LiteLLM &rarr; agent &rarr; NATS result</span></div>
</div>
<p style="color:var(--muted);font-size:.75rem;margin-top:2rem;text-align:center">
forge-kb &middot; Phantom Digital LLC &middot; PhantomClaw &middot; Phoenix AZ &middot; 2026
</p>
</body>
</html>