Winning a Hackathon in 0.5 Days with AI+Spec Driven Development, Zero-Knowledge Proofs, and Blockchain!

Cover Image for Winning a Hackathon in 0.5 Days with AI+Spec Driven Development, Zero-Knowledge Proofs, and Blockchain!
AICU media
AICU media

An engineer from the winning team of the recently held "Next Generation Automotive Generative AI Hackathon" has contributed an article.

YouTube Video


First Place in the "Next Generation Automotive Generative AI Hackathon"!

I participated in the "Next Generation Automotive Generative AI Hackathon" hosted by MeltingHack and was fortunate enough to win.

incar.style

Product Image

The product developed at the hackathon is called "Initial zk," which uses generative AI along with zero-knowledge proofs and blockchain!

Product Overview

Simply put, it's about "using car license plates read by image recognition to turn cars into digital wallets!"

"Is it okay to engrave license plates on the blockchain??"

For those who have this question, that's where zero-knowledge proofs come in!!

Demo Video


Hackathon Development Log

I participated in this hackathon with a team of three, including myself. All three of us were acquainted from Web3 events and had hackathon experience, so it was a challenge with a team well-versed in blockchain!

Big Trouble with No Good Ideas

The team building was good, but we couldn't come up with any good ideas, and the first day ended with us just groaning.... lol

Even on the second day, we were just thinking of ideas until about 2 PM, and nothing progressed, so we were struggling.... Some teams around us had already solidified their ideas and started implementing them, so we were quite anxious lol

Ideas Finally Emerged

The drafts of the ideas were heard by the mentors several times, but we heard that similar ideas had already been submitted by other teams, so we decided to give up....

When we were talking about the remaining ideas and car parts,

"Wouldn't it be interesting to turn cars into wallets using car license plates?"

And the idea was finally decided around 4 PM on the second day!


0.5 Days of AI+Spec Driven Development!

We rushed to design, calculating backward from the time until submission, so we only had 0.5 days to develop.

Of course, we practiced Spec Driven Development!

What is Spec Driven Development? Spec-Driven Development (SDD) is a development method that defines detailed specifications (Spec) before writing code and uses AI to automatically generate implementations and tests with it as the only source of truth (Single Source of Truth). By clearly agreeing on and sharing "what to create" between humans and AI, it prevents discrepancies between design and implementation and quickly develops high-quality software.

I realized that the way to fight hackathons has changed drastically because I can think about product ideas until the last minute.

What we humans mainly did:

  • Decide on the product concept

  • Create materials

  • Set up AGENT.md and the base parts of MCP, SKILL, and the project


Ingenuity at the Hackathon

Complete the Minimum Setup on the Human Side

Do you usually have AI implement from scratch when coding with AI? I saw in an article that AI is worst at environment construction. (Same as humans) So it's good to prepare for AI to perform at its best!

Specifically, what we did at this hackathon:

  • Set up pnpm monorepo

  • Set up formatter & linter

  • Set up the base project for the front end and back end

  • Set up AGENTS.md

  • Set up MCP

  • Set up SKILL

Then, after confirming that the build command passes at a minimum, we handed it over to AI!

Doing this greatly reduces the amount of implementation and the amount that AI has to consider, so you can devote power to implementing essential logic.


Are You Using AGENTS.md?

If README.md is a document for humans, AGENTS.md is a document for AI agents!

Especially when working on a common GitHub repository among teams, you can standardize the behavior of AI agents to some extent!

Furthermore, AGENTS.md is also read by multiple AI agents such as Claude Code, GitHub Copilot, and Kiro. So it is very convenient because it can be used when using multiple AI agents together.

In fact, the AGENTS.md prepared at this hackathon summarized the following contents:

  • Overall policy

  • About SKILL

  • About Sub Agent

  • Project Context

  • Development Guidelines

  • Minimal Workflow

  • Development Rules

  • Steering Configuration

  • Basic principles of development

  • Error handling principles

  • Code quality standards

  • Test discipline

  • Maintainability and refactoring

  • Security concepts

  • Performance awareness

  • Ensuring reliability

  • Understanding the project context

  • Awareness of trade-offs

  • Basics of Git operation

  • Code review attitude

  • Debugging best practices

  • Dependency management

  • Documentation standards

  • Continuous improvement

The actual file can be found at the following link: https://github.com/eyepyon/car/blob/main/AGENTS.md

This AGENTS.md was not created from scratch, but was created with reference to the contents of the following two blogs and GitHub:


Are You Using Serena MCP?

Along with AGENTS.md, Serena MCP is a must-have! As mentioned in Claude Code's best practices, context engineering is the most important issue when having AI code. Serena MCP is attracting attention as an approach to solving this context engineering issue!

Best Practices for Claude Code - Claude Code Docs

By combining the requirements definition, design document, and task list created by Spec Driven Development, as well as the set up project base and AGENTS.md, it becomes possible to "implement while firmly grasping the background and intent of what you want to do"!

I believe that the reason why we were able to develop a solid product in a short amount of time while combining specialized technologies such as zero-knowledge proof and blockchain is because we practiced this method!


Coding Agent and IDE Used This Time

Since the development time was only 0.5 days, I made full use of what I had!

Actually used:

  • Kiro (Responsible for creating requirements definition, design document, task list & implementation)

  • Antigravity (Responsible for implementation)

  • Codex (Responsible for implementation)

  • Claude Code (Responsible for implementation)

  • GitHub Copilot (Responsible for implementation)

Although I used five, thanks to AGENTS.md and Serena MCP, they properly understood the background information of the project and proceeded with the development!

Context engineering is very important lol


SKILL Created This Time

I tried to create Agent SKILL during the hackathon as a new thing!

I used Skill-creator to create SKILL: https://github.com/anthropics/skills/tree/main/skills/Skill-creator

This SKILL is highly recommended if you want to create a new one!

This time, using this skill-creator:

  • circom-dev: SKILL to support the development of circuits (arithmetic circuits) for zero-knowledge proof (circom-dev)

  • erc4337-privacy-wallet-dev: SKILL to support the development of contracts that deterministically calculate wallets (erc4337-privacy-wallet-dev)

I created a new one! Both require specialized knowledge, and it is very difficult to create from scratch. I actually had AI implement it using SKILL, and it implemented the product almost as expected!!

In addition to the code, it also covered the implementation of configuration files and unit test code, so I was able to perform preliminary verification before connecting to the front end!

If you want to see SKILL, please see the following link: https://github.com/eyepyon/car/tree/main/.claude/skills


Where to Use Zero-Knowledge Proof and Blockchain

There is a risk in engraving the license plate as is on the blockchain. In particular, it is very difficult to make data once taken into a public blockchain such as Ethereum as if it never existed.

I received a similar question from the hackathon judges, and the approach we adopted was to "use zero-knowledge proof to calculate deterministic wallet addresses."

In fact, there is a product that adopts a similar approach, which is "My Number Wallet," which turns My Number Cards into wallets.

A large amount of program code for stablecoins and many other products is deployed on the blockchain.

Deploying a program on the blockchain means that it is closely connected to these huge ecosystems, and it is possible to perform seamless payment processing without going through a dedicated app, or to freely call the processing of other programs!

From a developer's perspective, I believe that this is the biggest advantage of adopting blockchain as an app infrastructure.


From Now On, the Wave of Generative AI x Blockchain is Coming!

More than 10 years have passed since Bitcoin and Ethereum were born. With technological advances, blockchain is no longer an "expensive and slow" infrastructure! Base, a leading blockchain in Layer 2, has very low gas fees such as $0.001, and has high processing performance!

The number of teaching materials to learn about smart contracts is gradually increasing.

Because it is inseparable from the world of finance, speculative stories tend to stand out, but the blockchain itself is a very solid infrastructure technology. As shown in this hackathon, very interesting things can happen depending on the combination with other technologies!

And I am very happy to have been able to embody that!

I will continue to hone my skills and strive to create more interesting products!


Summary

The factors that led to winning in a limited time of 0.5 days at the hackathon can be summarized as:

  1. We were able to stick to Spec Driven Development until the very last minute to decide on an idea

  2. AGENTS.md

    Unified the behavior of AI agents across the team

  3. Optimized context engineering with Serena MCP

  4. Streamlined specialized implementation with SKILL

  5. Complete the minimum setup on the human side

In the era of AI-driven development, you can create high-quality products in a short amount of time by utilizing these best practices!


This is Haruki from AICU media.

If you think this article is "good!", please like, follow, and recommend!


Next Issue Preview

AICU Magazine Vol.22 "Introduction to Claude Code" Special will further explore practical techniques for mastering Claude Code, such as Spec Driven Development and AGENTS.md, SKILL, and MCP introduced in this article.

Stay tuned for the next issue!


Contributor Introduction Haruki (@haruki_web3)

Works as an engineer at a company in Tokyo and also manages the Web3 engineer community "UNCHAIN." Publishes learning content where you can learn how to develop Web3 apps with OSS.