Inspiration and what it does
The AI Exorcist Debugger was born from a simple, haunting realization: debugging code often feels like battling invisible demons. For the Kiro-ween hackathon, I wanted to manifest this metaphor literally. This project fits squarely into the Frankenstein category because it is a digital chimera, stitching together the cold, rigid logic of Python static analysis with the creative, unpredictable nature of Generative AI, all grafted onto a visceral, gamified React interface. It brings together the incompatible worlds of serious software engineering and atmospheric horror to build something unexpectedly powerful—a tool that makes fixing bugs feel like performing a purification ritual
How we built it
The heart of this creation is Kiro, which acted as the lightning rod that brought our AI "Frankenstein" to life. Instead of simply calling an API, we used Kiro's architecture to define a distinct agentic existence: Steering the Soul: I used steering.md to implant a specific "Exorcist Persona" into the model, forcing it to translate technical jargon into spooky metaphors (e.g., "haunted variables" or "protection circles") without losing technical accuracy. Defining the Anatomy: Through spec.yaml and analyzer-spec.yaml, taught Kiro exactly how to perceive code ($Input \in {code}$) and how to structure its diagnosis ($Output \in {issues}$), effectively binding the chaotic creativity of an LLM to a strict JSON schema necessary for our frontend to function.
The Interface (React + Vite): A "haunted" UI featuring blood-drip physics, fog animations (CSS), and a flickering "tombstone" container. We used Framer Motion to animate the "Ritual" buttons that reveal code fixes.
The Brain (FastAPI + OpenAI): A Python backend that acts as the ritual chamber. It runs a dual-layer analysis:
- Static Analysis: Regex-based rules to catch immediate "smells" like huge functions or missing try/catch blocks (downgraded to warnings for frontend files).
- AI Exorcism: The Kiro-steered LLM ($GPT-4o$) that analyzes logic and provides the "purified" code.
Challenges we ran into
I faced a critical RuntimeError: Form data requires "python-multipart" during Render deployment, teaching the importance of explicit dependency management in Python environments
What we learned
I learned that Prompt Engineering is akin to casting a spell—one wrong word, and the result is chaos. I solved this by implementing a backend fallback loop that force-tags the AI's output, ensuring the frontend badges ("AI Oracle") always display correctly.
What's next for Exorcist Debugger
For this duration of time, i was able to implement this code debugger through uploading a file or pasting its contents. After my thorough testing and seeing how it performs, i would like to explore the next step on making it an exorcist debugger through a prompt too!
Log in or sign up for Devpost to join the conversation.