DEV Community

Anurag T
Anurag T

Posted on

Séance Terminal

Hacktoberfest Open-Source AI Challenge: Ghost in the Machine Submission 👻🌼

This is a submission for the Hacktoberfest Open-Source AI Challenge Week 4: Ghost in the Machine

WhatIBuilt: Chatting with the Dead

Ever wonder where dead programming languages go when developers move on?

I built Séance Terminal—a retro CRT web terminal (with scanlines, glowing amber text, and synthesized voices) where you can commune with the restless ghosts of dead technologies: COBOL, Perl, Flash, VB6, IE6, Python 2, and Fortran.

Here is what you can do:

TheSeance: Streamed 1-on-1 conversations with each spirit. Their answers are strictly grounded in an authoritative historical Grimoire via hybrid vector search.

TheCouncil: Convene 2 to 3 spirits into a multi-agent debate where they react to each other, argue over modern programming dilemmas, and defend their historical eras.

Exorcise: Paste legacy spaghetti code; the spirit transpiles it into clean modern Python or TypeScript and flags what cannot be ported safely.

Review: Submit modern code to be roasted in character by veteran phantoms with acerbic wit.

ScreenshotVision: Upload retro screenshots or broken legacy layouts; vision-enabled open weights critique the artifact.

Ofrenda: A zero-storage Day of the Dead memorial (/ofrenda.html) celebrating tech pioneers in English, Spanish, Hindi, or Marathi with calaverita rhymes.

HauntedShell CLI: A terminal tool (haunt cobol -- npm test) that runs commands locally and prints creepy spiritual commentary below your command output.

Demo: Live in Action

🌐 Live Web App: https://seance-terminal.onrender.com
💻 Haunted Shell: Install globally with npm link and run haunt perl -- ls -la in your own terminal!

Code: Open Source on GitHub

🕯️ Séance Terminal

Commune with the Restless Ghosts of Dead Technologies

Node.js Version Model Database pgvector TimescaleDB Evaluation License: MIT


Séance Terminal is a haunting retro terminal application that resurrects seven legendary deceased or dying technologies—COBOL, Perl, Adobe Flash, Visual Basic 6, Internet Explorer 6, Python 2, and Fortran.

Powered by local open-weight Gemma 3 models via Ollama, grounded in an authoritative historical Grimoire via PostgreSQL hybrid search (pgvector + full-text RRF), monitored through a TimescaleDB continuous aggregate hypertable, and running in an isolated execution sandbox.

✨ Live Demo (Render) • 🏛️ The Seven Spirits • 🏗️ Architecture • 🚀 Quickstart • 📊 Evaluations


🔮 Overview & Key Capabilities

Séance Terminal fuses 1980s green-phosphor and amber CRT aesthetics with modern agentic AI architecture:

  • 💬 The Séance (Solo Streamed Commune): High-speed streaming chat with individual spirits. Answers are strictly grounded in verified facts from TigerData using Reciprocal Rank Fusion…

GitHub Repository: https://github.com/Anurag-tech22/Seance-terminal
License: MIT (100% open source)

HowIBuiltIt: Open Weights & TigerData

Séance Terminal runs completely on open-weight models with zero proprietary API keys:

OpenWeights Inference: Driven by Gemma 3 (for spirit personas and screenshot vision) and EmbeddingGemma (for 768-dim dense vectors) running locally via Ollama.

HybridRAG with TigerData: Grounding is powered by TigerData Cloud PostgreSQL. We combine dense semantic search (pgvector with HNSW cosine distance) and sparse full-text keyword search (tsvector) using Reciprocal Rank Fusion (RRF) in a single SQL query:

RRF Score

1
60
+
rank
vector
+
1
60
+
rank
text
RRF Score=
60+rank
vector
​

1
​

+
60+rank
text
​

1
​

ContinuousTelemetry with TimescaleDB: Every session event is recorded into a seance_events TimescaleDB hypertable. Real-time continuous aggregates (hauntings_hourly) calculate summoning trends and p95 latencies for the live Graveyard telemetry chart.

SecureSandbox: Spirits can execute JavaScript snippets using an isolated node:vm sandbox with a strict 500 ms execution timeout, memory cap, and disabled Node built-ins.

ZeroStoragePrivacy: Private séances (priv: true) and Ofrenda memorials skip the database entirely—your data stays on your machine.

WhyDoesOpenInnovationMatter: Permanence & Privacy

Closed AI APIs will eventually be sunsetted and deprecated—just like the dead technologies we mourn in this project!

Open-weight models matter because:

Permanence: Model weights saved on your hard drive can never be taken away by a vendor or broken by API pricing changes.

TruePrivacy: You can pull out your internet cable and Séance Terminal runs 100% offline. Proprietary code pasted for review never leaves your machine.

ZeroCost: Anyone with a standard laptop can run, inspect, and hack on this without a credit card.

MyAgentSession: Built with Antigravity & DevRelay

I pair-programmed Séance Terminal using Antigravity and DevRelay to architect the multi-agent council protocol, implement the Reciprocal Rank Fusion query, and harden the node:vm execution sandbox.

We also built an automated 5-check evaluation harness (npm run eval) testing all 7 spirits on conciseness (< 150 words), emoji prohibition, prompt-injection defense, historical date consistency, and anti-hallucination. Across 35 test cases, the system achieved a 97.1% pass rate.

TheSpiritOfIt: Keeping Stories Alive

The software world moves fast and often laughs at older tech. But COBOL still powers global banking, Fortran still predicts our weather, and Flash taught a whole generation how to create interactive art.

The moment this really hit home was testing the /ofrenda.html memorial in Hindi and Marathi: remembering pioneers like Ada Lovelace and Grace Hopper with zero data collected, keeping their memory alive without exploiting it. It turned a fun spooky hack into a genuine celebration of computing heritage.

PrizeCategories: Partner Tracks Entered

Entering the following partner tracks:

Best Use of Open-Source AI / Open Weights (Gemma 3 & EmbeddingGemma via Ollama)

Best Use of TigerData (PostgreSQL + TimescaleDB + pgvector) (HNSW vector indexing, RRF hybrid retrieval, and hypertable telemetry)

Best Deployment on Render (render.yaml deployment on Render Web Service)

Top comments (0)