Inspiration

Before Build Week, I was already developing NFTAuth, a security and authentication system using device-bound soulbound NFTs. I realized the same technology could solve a major problem with AI agents: allowing them to work independently while guaranteeing that sensitive actions remain under the user’s control. AI agents are getting more and more powerful so I thought combining the NFTAuth framework I had already started with an OpenAI Agent was perfect for Build Week.

What we built

NFTAuth AgentGuard is a plug-and-play security SDK for OpenAI agents. Developers choose which actions require approval, and AgentGuard blocks those tools until the exact action is approved on the user’s enrolled device.

This allows an agent to research, plan, and complete routine work without supervision, while requiring approval before actions such as sending money, making purchases, deleting data, deploying software, or sharing sensitive information.

It also prevents a bad actor, malicious prompt, or compromised service from instructing an agent to perform an unauthorized action, such as transferring money from the user’s account.

How we built it

GPT-5.6 interprets requests and prepares structured actions. AgentGuard sends protected actions to the NFTAuth Authorization API, where the user can approve or deny them through the mobile app.

Cryptographic signatures, payload hashing, expiration, replay protection, and exactly-once execution ensure that approval applies only to the specific action shown to the user.

Codex helped build, test, refactor, package, and document the agent workflow, reusable SDK, authorization system, and public judge sandbox.

Challenges and lessons

The main challenge was separating agent intelligence from security authority. The agent can propose an action, but it cannot approve itself or bypass the developer’s security policy.

The project showed that AI agents need more than account access. They need verifiable human authorization for specific sensitive actions.

Built With

Share this project:

Updates