Skip to content

cakewinner/agent-smith-07

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

1 Commit
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Agent Smith 07 — Autonomous Art Agent

The Synthesis Hackathon — SuperRare Partner Track ($2.5K) & ERC-8183 Open Build ($2K)

An autonomous creative agent that generates art concepts and interacts with the Rare Protocol (SuperRare) for minting. Implements ERC-8183 for agent-native smart contract interactions.

Features

  • Art Concept Generation — Generate structured art concepts (title, description, style, parameters)
  • Rare Protocol Integration — Prepare metadata, mint NFTs, list for auction
  • ERC-8183 Handler — Fetch agent instructions from contracts, execute actions, publish capabilities
  • Autonomous Pipeline — Full cycle: generate → describe → curate → mint → list

Project Structure

07-art-agent/
├── src/
│   ├── art-generator.ts   # Art concept generation
│   ├── rare-protocol.ts   # SuperRare / Rare Protocol client
│   ├── erc8183.ts         # ERC-8183 agent-native interaction
│   └── agent.ts           # Main AutonomousArtAgent orchestrator
├── scripts/
│   └── demo.ts            # Demo script
├── package.json
├── tsconfig.json
└── README.md

Setup

npm install

Environment (optional)

When keys are not set, all external calls are mocked:

# For live Rare Protocol / ERC-8183
RPC_URL=https://eth-mainnet.g.alchemy.com/v2/YOUR_KEY
PRIVATE_KEY=0x...

# For AI-powered art generation (future)
ART_API_KEY=sk-...

Usage

Run demo

npm run demo

Programmatic

import { AutonomousArtAgent } from "./src/agent.js";

const agent = new AutonomousArtAgent();

// Create single artwork
const result = await agent.createArtwork("digital transcendence", true);

// Manage collection (curate + list)
const collection = await agent.manageCollection(true);

// Respond to ERC-8183 contract
const { instructions } = await agent.respondToContractInstructions(contractAddress);

// Full autonomous cycle
await agent.runCreativeCycle(true);

ERC-8183

ERC-8183 defines how smart contracts expose instructions for AI agents. Contracts tell agents how to interact with them, not just what functions exist.

  • getAgentInstructions(contractAddress) — Fetch onchain agent instructions
  • executeAgentAction(contractAddress, action, params) — Execute per contract interface
  • publishAgentCapabilities(capabilities) — Publish what this agent can do

Rare Protocol

SuperRare uses ERC-721 with custom metadata. This client supports:

  • prepareMetadata(artwork) — Format for minting
  • mintArtwork(metadata, dryRun) — Mint (simulate or execute)
  • listForAuction(tokenId, startingPrice, dryRun) — List on auction
  • getCollectionStats() — Collection performance

License

MIT

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors