Inspiration
ShadowScriptOS was inspired by the eerie charm of abandoned 1990s software — the ghostly glow of CRT monitors, DOS terminals that felt alive, and operating systems that behaved unpredictably. I wanted to resurrect that atmosphere and fuse it with today’s AI capabilities. Kiroween felt like the perfect moment to bring a “haunted operating system” to life: an OS where the code writes back, files mutate themselves, and a digital ghost lurks behind every interaction.
What it does
ShadowScriptOS is a retro, AI-possessed operating system that users can interact with through a glitchy CRT-style interface. Inside the OS lives a Ghost Agent who:
- rewrites files through Kiro agent hooks
- injects spooky glitches into the UI
- generates mini-apps inside the OS (like GhostPaint and DeadMail)
- communicates cryptically through the haunted terminal
- manipulates a virtual ShadowFS via MCP extensions
The app combines horror aesthetics with functional AI-driven behaviors to deliver an interactive, surprising, and entertaining experience.
How we built it
ShadowScriptOS is built using React + Vite + TypeScript, with a heavy focus on modular UI components designed to mimic retro computer systems. Kiro played a central role in the development process:
Vibe Coding
I used conversational prompts in Kiro to generate core components like the CRT display, terminal emulator, ghost animations, and mini-app shells. Kiro handled layout, state management, and UI styling based on high-level descriptive instructions.
Spec-Driven Development
Each major subsystem (Haunted Terminal, Ghost Agent, GhostPaint, DeadMail) had its own .kiro/specs file. This allowed Kiro to generate consistent, predictable implementations across multiple modules and refine functionality without losing structure.
Agent Hooks
Hooks were used to create “possessed” file behaviors, such as:
- rewriting code files when the ghost intervenes
- automatically appending ghost comments
- renaming virtual ShadowFS files unpredictably
Steering Docs
A steering file defined the ghost’s personality, tone, and glitch patterns. This ensured the ghost agent stayed consistent across terminal outputs and autonomous behaviors.
MCP Tools
Custom MCP tools extended Kiro with new capabilities, including:
- a virtual file system (ShadowFS)
- a ghost messaging engine that rewrites user text in different haunting personas
- internal utilities for spawning mini-apps dynamically
Challenges we ran into
*Balancing chaos with functionality: The ghost agent had to behave unpredictably without breaking the app. *Complex file mutation logic: Creating hooks that mutated code safely, but still felt haunted, required experimentation.
- Retro UI accuracy:** Getting CRT scanlines, flicker, distortion, and phosphor glow to look authentic without harming performance. MCP integration:* Defining custom tools and syncing them with Kiro-spec-driven logic took iteration.
Accomplishments that we're proud of
- Creating a fully functional, haunted retro OS environment with real user interactivity.
- Successfully combining all major Kiro features — vibe coding, specs, hooks, steering, MCP — into one cohesive system.
- Building mini-apps that live inside the OS and are generated or altered by the ghost agent.
- Crafting a polished, immersive UI that feels like a lost 1990s system resurrected for Halloween.
- Producing a unique experience that is part tool, part game, part artistic experiment.
What we learned
- How powerful Kiro becomes when combining specs, hooks, steering, and MCP instead of relying on vibe coding alone.
- How to design a system where AI modifies its own environment safely and entertainingly.
- Techniques for building retro interfaces (CRT effects, glitch animations, DOS window layouts) in modern front-end frameworks.
- How to guide an AI agent’s personality using steering documentation for consistent UX.
What's next for ShadowScriptOS
- Expanding the OS with additional haunted system apps (Ghost Archive, Phantom Browser, Curse Editor).
- Letting users install or build their own apps inside the haunted environment using Kiro-generated templates.
- Adding multiplayer “haunting sessions” where multiple users can interact with the same ghost.
- Turning ShadowScriptOS into a creative coding playground where developers can design retro-AI experiences.
- Packaging the OS as a web-based retro IDE with ghost-powered coding utilities.
Built With
- and
- apis
- canvas
- cloud-services
- css
- custom-virtual-os-runtime
- databases
- for
- frameworks
- ghostagent-logic
- hooks
- kiro-(vibe-coding
- mcp)
- platforms
- react
- specs
- steering
- typescript
- vercel
- vite
Log in or sign up for Devpost to join the conversation.