# Scopecreep

- **Event:** [The IDE Reimagined: JetBrains Codex Hackathon](https://cerebralvalley.ai/e/jetbrains-x-openai-hack)
- **When:** Apr 18 at 9:00 AM – Apr 19 at 5:00 PM (PDT)
- **Where:** Shack15, San Francisco, CA
- **Placement:** 2nd Place
- **Team:** [Bhavik Sheoran](https://cerebralvalley.ai/u/Bhavik), [Kenneth Ross](https://cerebralvalley.ai/u/Kenneth_Ross), [Roman Javadyan](https://cerebralvalley.ai/u/romanj_lm317), [Joon Im](https://cerebralvalley.ai/u/joon_the_goon)
- **GitHub:** https://github.com/BhavikFTW/Scopecreep
- **Demo video:** https://www.youtube.com/shorts/x56vTEeutgk
- **Gallery:** https://cerebralvalley.ai/e/jetbrains-x-openai-hack/hackathon/gallery
- **Page:** https://cerebralvalley.ai/e/jetbrains-x-openai-hack/hackathon/gallery/34

Scopecreep turns your JetBrains IDE into an agentic hardware testbench. Describe a test in plain English; an AI agent writes Python directly into your open project, runs it against real lab instruments on your bench, and drops a timestamped results file back into the project tree.

The problem. Hardware bring-up today is a context-switch nightmare. Engineers write driver code in an IDE, flip to vendor software (WaveForms, bench PSU apps) to poke the instrument by hand, copy numbers into a spreadsheet or lab notebook, then write up results somewhere else entirely. Test code drifts out of sync with the hardware it's supposedly validating. Tribal knowledge about instrument quirks — safety limits, wiring gotchas, API shapes — lives in one senior engineer's head and dies when they leave the team. Every new hire re-learns the same bench the hard way.

How Scopecreep solves it. The plugin bundles a managed Python sidecar that speaks REST to actual hardware —Digilent Analog Discovery (scope, AWG, PSU, DIO) and FNIRSI DPS-150 bench supply. A chat agent, grounded in a Supabase-backed memory layer of instrument profiles, generates project-structured test code: experiments/*.py scripts that drive the hardware, results/*.md files with pass/fail verdicts and raw measurements, plus the exact terminal command to run it all. When the agent encounters an instrument it's never seen, it researches the device live, publishes a profile, and every future user across every project benefits on turn one — a shared memory flywheel instead of siloed tribal knowledge.

Safety is enforced in-prompt and at the driver: the agent narrates a plan and waits for explicit user approval before energizing anything; every PSU/AWG call is wrapped in try/finally rails that disable outputs on any error path; voltage and current clamps are non-negotiable.

The result: test code, instrument drivers, and the conversation that produced them all live in one version-controlled project. No tool-switching. No lost context. No DUT cooked because someone forgot to disable a rail.

Built as an IntelliJ Platform plugin (Kotlin) + Python sidecar (FastAPI, pyftdi, pydwf, custom DPS-150 CDC driver) + Supabase + OpenAI function-calling agent. Ships as a single installable plugin zip.

---

Markdown version of https://cerebralvalley.ai/e/jetbrains-x-openai-hack/hackathon/gallery/34. Site index for agents: https://cerebralvalley.ai/llms.txt · full text: https://cerebralvalley.ai/llms-full.txt
