Skip to content

adamnoobdev/adprinter

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

2 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

AdPrinter

AI-powered ad creative generator built on the WAT framework (Workflows, Agents, Tools).

AdPrinter separates AI reasoning from deterministic execution. Claude handles orchestration and decision-making. Python scripts handle API calls, image generation, and file operations. The result: reliable, repeatable ad generation that gets smarter with every iteration.

How it works

Workflows (Markdown SOPs) define what to do. Agents (Claude) decide how to do it. Tools (Python scripts) execute it. This separation keeps accuracy high -- when AI tries to handle every step directly, five steps at 90% accuracy each drops to 59% overall. WAT keeps AI focused on what it does best.

Prerequisites

You need two API services:

  • Kie.ai -- Image generation using Nano Banana 2
  • Cloudinary -- Image hosting and asset management (free tier works)

Quick start

# Clone the repo
git clone https://github.com/adamnoobdev/adprinter.git
cd adprinter

# Set up API keys
cp .env.example .env
# Open .env in your editor and fill in your Kie.ai and Cloudinary credentials

# Install dependencies
pip install -r requirements.txt

# Launch with Claude Code
# Claude detects you're new and walks you through brand setup automatically

Project structure

tools/              Python scripts for deterministic execution
workflows/          Markdown SOPs defining what to do and how
briefs/             Ad briefs (JSON) -- source of truth for every ad
.tmp/campaigns/     Generated images (disposable, can be regenerated)
references/         Reference ads for visual inspiration
.env                API keys (never committed)

Tools

Script Purpose
brief_manager.py Create, update, and manage ad briefs
generate_from_brief.py Generate images from brief specifications
generate_kie.py Low-level Kie.ai API client
upload_image.py Upload images to Cloudinary with MD5 caching
manage_cloudinary.py List, delete, move Cloudinary assets
gallery.py Zero-dependency local web gallery at localhost:8765
campaign_config.py Brand and category configuration

The feedback loop

Every generated ad teaches the system something. Feedback is saved to briefs, distilled into the brand brain, and applied to future generations. The more you use it, the better it gets.


Built by Adam Larson

About

AI-powered ad creative generator built on the WAT framework (Workflows, Agents, Tools)

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages