DEV Community

Juha Pellotsalo
Juha Pellotsalo

Posted on

Building a Smart Storage Facility Prototype with BMAD

I wanted to build something that takes the usual chat-with-data bot further. I created a fictional storage facility equipped with several environmental sensors: motion detectors, temperature monitors, and air quality sensors. These are laid out on a blueprint view split into several zones: loading bay and different types of storage rooms. This approximates where sensors would be in a real-life layout.

Beyond the typical chat panel

The UI integrates with an assistant panel that resembles the typical assistant chat view. But the UI explores options to click sensors and other elements of the system that auto-generate messages and send them to the assistant. Instead of typing everything (which the user can always do), they have easier UI elements to drive the conversation.

The system automatically scans the data and detects anomalies such as a rising cold room temperature. It flags warning scenarios in the UI and pre-formats them with button-clickable elements to query more info from the assistant. The system can generate formal incident reports, run compliance audit checks, and similar actions.

Dynamic visualization generator

There's also a dynamic visualization generator that works the same way as Claude artifacts. It first generates a handful of visualization ideas based on the system status and then proceeds to generate a React component rendering the visualization, which gets dynamically executed in a designated UI component.

Why I build these prototypes

I've found building these quick prototypes extremely useful because it improves my ability to rapidly prototype using Claude Code. I also try to experiment with something new each time to learn more and to boost efficiency.

With this project I experimented with the BMAD method. It's a system that tries to emulate established methodologies like scrum in an agentic way. At its core, BMAD is a collection of 68 workflows and processes modeled as prompts, executed by 26 specialized agent personas. The whole system follows a four-phase cycle: Analysis, Planning, Solutioning, and Implementation.

How BMAD works

The full default flow starts with analysis and brainstorming to collect product requirements. It splits these into epics and further down to stories that are then implemented one at a time. There are separate flows to design UX, run tests, and so on. Each of these is executed with a specific agent role activated.

The core idea is that these predefined agent personas, when activated, always do the tasks the same way across the entire project. This is important because when you're just freely prompting, the conversation with Claude tends to steer a certain way, and these subtle shifts affect how and what Claude writes, leading to inconsistent artifacts. BMAD calls this "solutioning," the third phase of their cycle, focused on keeping the process consistent.

My experience with BMAD

I've never felt comfortable following any process strictly down to the last detail. They tend to be too rigid, work sometimes in some areas but restrict in others. BMAD is no exception because it doesn't quite fit my personal style. Brainstorming and ideation was extremely useful, but the implementation flow with repeated steps of creating a story and developing it felt a little tedious.

That said, I can absolutely see great value in following this process: it produces written artifacts that persist where you are in the development process. This is a pattern commonly used in deep research agents where parts of the process are constantly stored on the file system. This helps immensely with Claude Code's main challenge: context window management. Running extensive one-shot tasks consumes the context window very quickly, leading to compacting which never really works well. It's far more optimal to clear the context frequently and then quickly continue where you left off. BMAD's doc artifacts help with exactly that.

Adversarial code review

Another useful feature is BMAD's adversarial code review. First-shot Claude code rarely produces the most optimal result and doesn't always account for architectural structure. The adversarial review process systematically looks for problems in the code, running multiple passes to identify vulnerabilities and propose improvements. It includes explicit guidance on handling false positives. This fits well with my style of iterating between quick one-shot implementation and structural revisions.

Final thoughts

BMAD isn't perfect, but I think it's a step in the right direction. It's the first serious attempt I've come across to use AI to drive its own development process. This kind of engineering structure is necessary. Otherwise you need to constantly run the same prompts to clean up the code and architecture and instruct the harness to pick up where you left off before the context window filled up.

Claude Code has made it extremely easy to take high-quality open source projects, reverse engineer them, and tailor them to your own needs. That's exactly what I started doing: take what works in BMAD, then create my own version that uses the same patterns but tailored in a way that fits my development process.

The full project code is available in this repo.

Top comments (0)