<p>Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine Submission 🕯️</p>
<p>This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine</p>
<p>What I Built</p>
<p>Séance — an offline séance chatbot that channels the spirits of dead programming languages (COBOL, FORTRAN, ALGOL, LISP, Smalltalk, Ada, Prolog) through Gemma, a local open-weight model. It works with the lights and the internet off, and every séance stays on your machine — nothing is uploaded to a server you don't control.</p>
<p>Repo: mahilsaily306-max/seance</p>
<p>Demo</p>
<p>Deployed frontend: (link goes here — render / digitalocean / .tech domain)</p>
<p>Demo video: (link goes here)</p>
<p>Core flows, one click each:</p>
<p>Conjure a spirit → pick COBOL, FORTRAN, LISP, or any of the seven dead languages and ask it questions<br>
One-shot conjure → node src/seance.js --spirit COBOL --ask "What is a paragraph?"<br>
Interactive séance → chat mode with past-séance history replay<br>
History → replay previous turns for a summoned spirit<br>
Voice → ElevenLabs TTS reads the spirit's whisper aloud (optional)</p>
<p>Code</p>
<p>mahilsaily306-max/seance</p>
<p>Key files:</p>
<p>src/seance.js — CLI séance: conjure spirits, chat, log turns, replay history<br>
src/spirits.js — the seven dead-language spirits, each with era, epitaph, style, last words<br>
src/model.js — Gemma local client (Ollama / Hugging Face / offline echo fallback)<br>
src/memory.js — MongoDB Atlas vector memory with Tiger Data / pgvector fallback<br>
src/tracing.js — Sentry agent tracing (latency, source, errors)<br>
src/search.js — SerpApi live web search for historical language facts (optional)<br>
src/voice.js — ElevenLabs TTS for spirit whispers (optional)<br>
src/session.js — Durable Temporal-style sessions logged to JSONL<br>
scripts/setup.js — one-time dependency setup<br>
docker-compose.yml — local MongoDB stack for offline memory</p>
<p>How I Built It</p>
<p>Open-source AI at every layer:</p>
<p>Runtime: Gemma (open-weight) via Ollama; falls back to a deterministic offline echo so the séance runs with zero ML installs and zero internet.<br>
Memory: JSONL local log (Temporal-style durability) so séances survive restarts; optionally MongoDB Atlas vector memory or Tiger Data/pgvector hybrid search over past turns.<br>
Tracing: Sentry captures agent setup, latency, tokens, cost, and errors — set SENTRY_DSN and every turn is traced.<br>
Search: SerpApi grounds answers in fresh web results when you want historical language context.<br>
Voice: ElevenLabs TTS gives the spirits a voice; the séance works silently without it.<br>
CI: npm test exercises every module; works with no dependencies installed.</p>
<p>Why Does Open Innovation Matter?</p>
<p>Running open-weight models locally means:</p>
<p>No internet needed. Gemma runs on a laptop offline after download. A closed API agent would stop working without connectivity.<br>
Data stays on your machine. Your séance logs, questions, and answers are never uploaded to a server you don't control.<br>
Set up once, never pay again. Open-weight models cost $0 to run locally — no per-token charges, no subscriptions.<br>
Swap models freely. Swap Gemma for Mistral, Llama, or any open weight. Closed APIs lock you into one vendor.<br>
The open-based approach worked better here because this is a personal, offline-first tool — privacy, offline use, and zero recurring cost matter more than a hosted SaaS.</p>
<p>My Agent Session</p>
<p>Saved with DevRelay and embedded below (Entire prize category: share the agent sessions behind your project).</p>
<p>(agent_session embed link goes here)</p>
<p>The Spooky Payoff</p>
<p>Before Séance, dead programming languages were just forgotten syntax in dusty manuals — COBOL, FORTRAN, LISP, Smalltalk, Ada, Prolog, buried by the industry.</p>
<p>After: you hold a séance with their spirits, ask them questions, hear their era-appropriate answers — all offline, all open, all on your own hardware. The ghosts are back, and they answer for $0.</p>
<p>Prize Categories</p>
<p>Entering every applicable partner category:</p>
<p>Featured : Gemma, Render, DigitalOcean, Tinker</p>
<p>Partner : Mastra, Sentry, Temporal, MongoDB Atlas, SerpApi, Browserbase, ElevenLabs, Auth0, Backboard, Entire, GitHub Copilot, .tech Domains, Tiger Data, TabPFN</p>
Original source
Read the original article on dev.to