MerchFlow-AI / agents /manager.py
Gaurav vashistha
Final clean deploy
69c20e8
import csv
import time
import os
import datetime
from agents.trend_spotter import TrendSpotter
from agents.visionary import Visionary
class MerchManager:
def __init__(self):
self.trend_spotter = TrendSpotter()
self.visionary = Visionary()
self.results_dir = "results"
if not os.path.exists(self.results_dir):
os.makedirs(self.results_dir)
def generate_batch(self, niche: str) -> str:
# Step 1: Get slogans
print(f"πŸ” Analyzing trends for niche: {niche}...")
slogans = self.trend_spotter.get_trends(niche)
results = []
# Step 2: Generate art prompts
print(f"🎨 Generating designs for {len(slogans)} slogans...")
for i, slogan in enumerate(slogans):
print(f"Generating design {i+1}/{len(slogans)}...")
prompt = self.visionary.generate_art_prompt(slogan, niche)
results.append({
"Niche": niche,
"Slogan": slogan,
"Art Prompt": prompt
})
time.sleep(10)
# Step 3 & 4: Save to CSV
timestamp = datetime.datetime.now().strftime("%Y%m%d_%H%M%S")
filename = f"merch_batch_{niche}_{timestamp}.csv"
filepath = os.path.join(self.results_dir, filename)
with open(filepath, mode='w', newline='', encoding='utf-8') as file:
writer = csv.DictWriter(file, fieldnames=["Niche", "Slogan", "Art Prompt"])
writer.writeheader()
writer.writerows(results)
print(f"βœ… Batch complete! Saved to {filepath}")
return filename