LaForceIT Argonaut
AI chat integration for laforceit.com — portfolio Q&A powered by Argonaut with daemon proxy for full RAG across Arcturus-Prime, LaForceIT, and Career vaults
LaForceIT Argonaut
Argonaut AI chat widget integrated into laforceit.com (Dan’s professional portfolio). Visitors can ask questions about projects, experience, skills, and services. The chat operates in two modes: cloud-only with an embedded portfolio prompt, or daemon proxy for full RAG search across all 13 knowledge vaults.
Architecture
Chat Widget
src/components/ArgonautChat.astro — floating button (bottom-right) that expands into a glass-morphism chat panel styled in LaForceIT’s navy/gold theme. Features:
- Starter chips: Projects, Background, Services, Arcturus-Prime
- SSE streaming for real-time response rendering
- Markdown formatting (code blocks, bold, italic, links)
- Session history in
sessionStorage(last 20 messages) - Rate limit display
- ViewTransitions-compatible (
astro:page-load)
Included in PortfolioLayout.astro so it appears on every page.
API Endpoint
functions/api/chat.js — Cloudflare Pages Function handling chat requests.
Mode 1: Daemon Proxy (Full RAG)
When ARGONAUT_DAEMON_URL is set, the function proxies requests to the Argonaut daemon running on callisto (port 7777). This gives access to hybrid BM25+vector search across all 13 knowledge vaults — 75K+ chunks including Arcturus-Prime content, Career vault, LaForceIT portfolio data, and more.
Mode 2: Cloud Fallback (Embedded Context)
When no daemon is available, calls OpenRouter directly with a comprehensive system prompt that embeds Dan’s complete portfolio data: all work experience, 18 projects, technical skills (6 categories, 30+ skills), 6 service offerings, case studies, and certifications. Uses google/gemini-2.0-flash-001 (free model) by default.
Rate Limiting
In-memory rate limiting: 20 requests per hour per IP. Resets automatically. The X-RateLimit-Remaining header is passed to the frontend for display.
Environment Variables
| Variable | Required | Purpose |
|---|---|---|
OPENROUTER_API_KEY | Yes (cloud mode) | OpenRouter API key for LLM inference |
ARGONAUT_DAEMON_URL | No | Argonaut daemon URL for full RAG (e.g., http://localhost:7777) |
ARGONAUT_DAEMON_SECRET | No | Bearer token for daemon auth |
ARGONAUT_MODEL | No | Override model (default: google/gemini-2.0-flash-001) |
RAG Integration
LaForceIT’s Argonaut draws from the same knowledge tier as Arcturus-Prime’s RAG system when using daemon proxy mode:
| Collection | Docs | Chunks | Content |
|---|---|---|---|
| Arcturus-Prime-technical | 3,113 | 57,022 | Technical vault journals |
| knowledge-sanitized | 1,163 | 12,722 | Sanitized knowledge base |
| argo-os-docs | 935 | 4,091 | Argo OS documentation |
| Arcturus-Prime-docs | 100 | 365 | Docs hub content |
| Arcturus-Prime-posts | 76 | 300 | Blog posts |
| dev-vault | 213 | 468 | Development notes |
| Arcturus-Prime-journal | 73 | 153 | Engineering journal |
| tendril | 18 | 74 | Graph visualization docs |
| career | 19 | 41 | Resumes, strategy, scoring |
| build-swarm | 23 | 32 | Distributed build docs |
| jobspy | 11 | 16 | Job scraping docs |
| Arcturus-Prime-projects | 8 | 11 | Project pages |
| laforceit | 6 | 8 | Portfolio content |
| Total | 5,758 | 75,303 | 653.8 MB |
The laforceit collection is sourced from ~/Vaults/laforceit-vault/ which contains the site architecture documentation and full portfolio content (projects, experience, skills, services, case studies).
Files
| File | Location | Purpose |
|---|---|---|
src/components/ArgonautChat.astro | laforceit.com | Chat widget component |
src/layouts/PortfolioLayout.astro | laforceit.com | Layout (imports chat widget) |
functions/api/chat.js | laforceit.com | CF Pages Function — chat API |
~/Vaults/laforceit-vault/content/Portfolio-Content.md | Vault | RAG source — full portfolio data |
~/Vaults/laforceit-vault/development/Site-Architecture.md | Vault | RAG source — site architecture |
Relationship to Arcturus-Prime
LaForceIT and Arcturus-Prime share:
@glass-ui/core— UI component library (Starfield, Nebula, GlassCard, SEO)- Argonaut RAG — same knowledge tier database when using daemon proxy
- Design language — glass-morphism effects, dark theme, space aesthetic
Arcturus-Prime’s Argonaut is more feature-rich (admin chat, voice mode, tool execution, three-tier fallback). LaForceIT’s version is intentionally lightweight — a single CF Pages Function with no native dependencies, designed to work on static hosting without SSR.
Quick Reference
# Build the site
cd ~/Development/laforceit.com
npx astro build
# Dev server (chat works via Pages Functions emulation)
npx astro dev
# Set env vars for CF Pages
# In Cloudflare dashboard → Pages → Settings → Environment variables:
# OPENROUTER_API_KEY = sk-or-v1-...
# ARGONAUT_DAEMON_URL = http://... (optional, for full RAG)