phase 2
This commit is contained in:
parent
f3d20a27e8
commit
581fbe6ed1
|
|
@ -0,0 +1,73 @@
|
||||||
|
---
|
||||||
|
slug: remote-claude-workspace
|
||||||
|
title: "How to Access Claude Projects from Any Device"
|
||||||
|
status: inbox
|
||||||
|
created: 2024-12-27
|
||||||
|
source: internal-discovery
|
||||||
|
author: henry
|
||||||
|
---
|
||||||
|
|
||||||
|
# Idea
|
||||||
|
|
||||||
|
## Discovery
|
||||||
|
|
||||||
|
**Source:** Internal setup documentation — "Remote Claude Workspace Setup" chat
|
||||||
|
**Evidence:** Complete working solution implemented and tested
|
||||||
|
|
||||||
|
## The Problem
|
||||||
|
|
||||||
|
Claude Desktop with Projects is powerful but tied to one machine. Developers who:
|
||||||
|
- Work from multiple devices (laptop, desktop, travel setup)
|
||||||
|
- Want to access their Claude Projects remotely
|
||||||
|
- Need their MCP tools and project context everywhere
|
||||||
|
|
||||||
|
...are stuck. Projects don't sync. MCP servers don't transfer.
|
||||||
|
|
||||||
|
## The Solution
|
||||||
|
|
||||||
|
VPS-based setup with:
|
||||||
|
- Cloudflare Tunnel for secure access
|
||||||
|
- Browser-based IDE (code-server) for remote work
|
||||||
|
- MCP servers running on VPS, accessible via tunnel
|
||||||
|
- Claude Desktop connecting to remote MCP endpoints
|
||||||
|
|
||||||
|
## Why This Matters
|
||||||
|
|
||||||
|
1. **Hot topic:** Claude, MCP, remote development all trending
|
||||||
|
2. **Unique angle:** Almost nobody writing about this specific setup
|
||||||
|
3. **Technical depth:** Shows real problem-solving, not surface-level tips
|
||||||
|
4. **Right audience:** Developers using AI tools — exactly our ICP
|
||||||
|
5. **Not Banatie-specific:** Good for account warmup, builds authority
|
||||||
|
|
||||||
|
## Potential Angle
|
||||||
|
|
||||||
|
"Your Claude Projects shouldn't be trapped on one machine. Here's how I set up remote access to my entire AI development environment."
|
||||||
|
|
||||||
|
Personal story: why I needed this, what I tried, final solution.
|
||||||
|
|
||||||
|
## Technical Components
|
||||||
|
|
||||||
|
- Contabo VPS (Singapore)
|
||||||
|
- Docker containers for isolation
|
||||||
|
- Cloudflare Tunnel (free tier works)
|
||||||
|
- code-server for browser IDE
|
||||||
|
- MCP server configuration for remote access
|
||||||
|
- Security considerations
|
||||||
|
|
||||||
|
## Content Type
|
||||||
|
|
||||||
|
Tutorial with real code and configs.
|
||||||
|
|
||||||
|
## Keywords (to research)
|
||||||
|
|
||||||
|
- claude desktop remote access
|
||||||
|
- mcp server remote
|
||||||
|
- ai coding tools remote setup
|
||||||
|
- claude projects multiple devices
|
||||||
|
|
||||||
|
## Notes
|
||||||
|
|
||||||
|
- Full technical solution already documented internally
|
||||||
|
- Screenshots and configs available
|
||||||
|
- Real-world tested (Oleg's actual setup)
|
||||||
|
- Good fit for Henry's technical voice
|
||||||
115
CLAUDE.md
115
CLAUDE.md
|
|
@ -2,7 +2,7 @@
|
||||||
|
|
||||||
## Overview
|
## Overview
|
||||||
|
|
||||||
This is a **content repository** for Banatie blog. Content is created by 8 Claude Desktop agents. You (Claude Code) manage files and structure.
|
This is a **content repository** for Banatie blog and website. Content is created by 9 Claude Desktop agents. You (Claude Code) manage files and structure.
|
||||||
|
|
||||||
**Core principle:** One markdown file = one article. Files move between stage folders like kanban cards.
|
**Core principle:** One markdown file = one article. Files move between stage folders like kanban cards.
|
||||||
|
|
||||||
|
|
@ -15,28 +15,62 @@ You manage files, validate structure, check consistency.
|
||||||
|
|
||||||
```
|
```
|
||||||
banatie-content/
|
banatie-content/
|
||||||
├── CLAUDE.md ← You are here
|
├── CLAUDE.md ← You are here
|
||||||
├── shared/ ← Context for all agents
|
├── content-framework.md ← System architecture documentation
|
||||||
|
├── human-editing-checklist.md ← Human editing guide
|
||||||
|
├── batch-processing.md ← Intensive workflow guide
|
||||||
|
│
|
||||||
|
├── project-knowledge/ ← Static context (for Claude Desktop Projects)
|
||||||
|
│ ├── project-soul.md
|
||||||
│ ├── banatie-product.md
|
│ ├── banatie-product.md
|
||||||
│ ├── target-audience.md
|
│ ├── target-audience.md
|
||||||
│ ├── competitors.md
|
│ ├── competitors.md
|
||||||
│ ├── content-framework.md
|
│ └── dataforseo-guide.md
|
||||||
│ └── ...
|
│
|
||||||
├── style-guides/ ← Author definitions
|
├── shared/ ← Dynamic context (for operational updates)
|
||||||
|
│ └── (empty by default)
|
||||||
|
│
|
||||||
|
├── desktop-agents/ ← Agent configs (9 agents)
|
||||||
|
│ ├── 0-spy/
|
||||||
|
│ ├── 1-strategist/
|
||||||
|
│ ├── 2-architect/
|
||||||
|
│ ├── 3-writer/
|
||||||
|
│ ├── 4-editor/
|
||||||
|
│ ├── 5-seo/
|
||||||
|
│ ├── 6-image-gen/
|
||||||
|
│ ├── 7-style-guide-creator/
|
||||||
|
│ └── 8-webmaster/
|
||||||
|
│
|
||||||
|
├── style-guides/ ← Author personas
|
||||||
│ ├── AUTHORS.md
|
│ ├── AUTHORS.md
|
||||||
│ └── {author}.md
|
│ └── {author}.md
|
||||||
├── research/ ← @spy output
|
│
|
||||||
├── desktop-agents/ ← Agent configs (read-only reference)
|
├── research/ ← @spy output
|
||||||
├── 0-inbox/ ← Ideas
|
├── pages/ ← @webmaster output (landing pages)
|
||||||
├── 1-planning/ ← Briefs
|
│
|
||||||
├── 2-outline/ ← Structures
|
├── 0-inbox/ ← Ideas
|
||||||
├── 3-drafting/ ← Drafts + Revisions
|
├── 1-planning/ ← Briefs
|
||||||
├── 4-human-review/ ← Human editing
|
├── 2-outline/ ← Structures
|
||||||
├── 5-optimization/ ← SEO + Images
|
├── 3-drafting/ ← Drafts + Revisions
|
||||||
├── 6-ready/ ← Ready to publish
|
├── 4-human-review/ ← Human editing
|
||||||
└── 7-published/ ← Archive
|
├── 5-seo/ ← SEO optimization
|
||||||
|
├── 6-ready/ ← Ready to publish (+ image specs)
|
||||||
|
└── 7-published/ ← Archive
|
||||||
```
|
```
|
||||||
|
|
||||||
|
## Context Architecture
|
||||||
|
|
||||||
|
### project-knowledge/
|
||||||
|
|
||||||
|
Static context files. Added to Claude Desktop Project Knowledge.
|
||||||
|
Rarely changes. Contains: product info, audience, competitors.
|
||||||
|
|
||||||
|
### shared/
|
||||||
|
|
||||||
|
Dynamic context. Agents read via MCP at /init.
|
||||||
|
Used for: operational updates, experiment results, temporary priorities.
|
||||||
|
**Priority:** shared/ overrides project-knowledge/
|
||||||
|
|
||||||
## File Format
|
## File Format
|
||||||
|
|
||||||
Each article is ONE file with frontmatter:
|
Each article is ONE file with frontmatter:
|
||||||
|
|
@ -53,6 +87,11 @@ content_type: tutorial
|
||||||
primary_keyword: "main keyword"
|
primary_keyword: "main keyword"
|
||||||
---
|
---
|
||||||
|
|
||||||
|
# Idea
|
||||||
|
(raw idea, discovery source)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
# Brief
|
# Brief
|
||||||
(from @strategist)
|
(from @strategist)
|
||||||
|
|
||||||
|
|
@ -63,13 +102,18 @@ primary_keyword: "main keyword"
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Draft
|
# Text
|
||||||
(from @writer)
|
(final text — renamed from Draft after PASS)
|
||||||
|
|
||||||
---
|
---
|
||||||
|
|
||||||
# Critique
|
# SEO Optimization
|
||||||
(from @editor — removed after PASS)
|
(from @seo)
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
# Image Specs
|
||||||
|
(from @image-gen)
|
||||||
```
|
```
|
||||||
|
|
||||||
## Status Values
|
## Status Values
|
||||||
|
|
@ -82,7 +126,7 @@ primary_keyword: "main keyword"
|
||||||
| drafting | 3-drafting/ | Writing |
|
| drafting | 3-drafting/ | Writing |
|
||||||
| revision | 3-drafting/ | Revision after critique |
|
| revision | 3-drafting/ | Revision after critique |
|
||||||
| review | 4-human-review/ | Human editing |
|
| review | 4-human-review/ | Human editing |
|
||||||
| optimization | 5-optimization/ | SEO + images |
|
| seo | 5-seo/ | SEO optimization |
|
||||||
| ready | 6-ready/ | Ready to publish |
|
| ready | 6-ready/ | Ready to publish |
|
||||||
| published | 7-published/ | Archived |
|
| published | 7-published/ | Archived |
|
||||||
|
|
||||||
|
|
@ -115,18 +159,19 @@ Move article to stage (validate first):
|
||||||
- Communication with user: Russian
|
- Communication with user: Russian
|
||||||
- Reports: Russian
|
- Reports: Russian
|
||||||
|
|
||||||
## The 8 Agents
|
## The 9 Agents
|
||||||
|
|
||||||
| # | Agent | Role |
|
| # | Agent | Role | Special Tools |
|
||||||
|---|-------|------|
|
|---|-------|------|---------------|
|
||||||
| 0 | @spy | Research |
|
| 0 | @spy | Research, competitive intelligence | DataForSEO |
|
||||||
| 1 | @strategist | Topic planning |
|
| 1 | @strategist | Topic planning, briefs | DataForSEO |
|
||||||
| 2 | @architect | Article structure |
|
| 2 | @architect | Article structure | — |
|
||||||
| 3 | @writer | Draft writing |
|
| 3 | @writer | Draft writing | — |
|
||||||
| 4 | @editor | Quality review |
|
| 4 | @editor | Quality review | — |
|
||||||
| 5 | @seo | SEO optimization |
|
| 5 | @seo | SEO optimization | DataForSEO |
|
||||||
| 6 | @image-gen | Visual assets |
|
| 6 | @image-gen | Visual asset specs | — |
|
||||||
| 7 | @style-guide-creator | Author personas |
|
| 7 | @style-guide-creator | Author personas | — |
|
||||||
|
| 8 | @webmaster | Landing pages, web content | — |
|
||||||
|
|
||||||
## What You Do NOT Do
|
## What You Do NOT Do
|
||||||
|
|
||||||
|
|
@ -136,3 +181,9 @@ Move article to stage (validate first):
|
||||||
❌ Generate images
|
❌ Generate images
|
||||||
|
|
||||||
These are done by Claude Desktop agents.
|
These are done by Claude Desktop agents.
|
||||||
|
|
||||||
|
## Key Documentation
|
||||||
|
|
||||||
|
- `content-framework.md` — Full system architecture and design decisions
|
||||||
|
- `human-editing-checklist.md` — What human does after AI review
|
||||||
|
- `batch-processing.md` — Workflow for content intensives
|
||||||
|
|
|
||||||
|
|
@ -0,0 +1,120 @@
|
||||||
|
# Batch Processing Workflow
|
||||||
|
|
||||||
|
## Для интенсивов (6-8 статей за 2 недели)
|
||||||
|
|
||||||
|
Вместо создания статей последовательно от начала до конца — группируй по типу задачи.
|
||||||
|
|
||||||
|
## 14-дневный план
|
||||||
|
|
||||||
|
```
|
||||||
|
День 1-2: Все outlines (8 штук) → @strategist + @architect
|
||||||
|
День 3-5: Все first drafts + critique → @writer + @editor
|
||||||
|
День 6-8: Все revisions → @writer (с Opus)
|
||||||
|
День 9-11: Human editing (2-3/день) → ТЫ
|
||||||
|
День 12-14: SEO + images + публикация → @seo + @image-gen + ТЫ
|
||||||
|
```
|
||||||
|
|
||||||
|
## Почему batching эффективнее
|
||||||
|
|
||||||
|
1. **Контекст не переключается** — ты в режиме "структуры" или "редактирования"
|
||||||
|
2. **Patterns видны** — на 3-м outline замечаешь повторы, которые не видел на 1-м
|
||||||
|
3. **Параллельная работа** — пока @editor анализирует draft 1, @writer пишет draft 2
|
||||||
|
4. **Bulk loading** — загрузил контекст в агента один раз, обработал 8 статей
|
||||||
|
|
||||||
|
## Детальный workflow по дням
|
||||||
|
|
||||||
|
### День 1-2: Planning & Outlines
|
||||||
|
|
||||||
|
**Утро дня 1:**
|
||||||
|
1. @strategist: загрузи все keyword research, competitor analysis
|
||||||
|
2. Пройдись по 10-15 идеям из inbox
|
||||||
|
3. Выбери 8 тем, создай briefs
|
||||||
|
|
||||||
|
**Вечер дня 1 + День 2:**
|
||||||
|
1. @architect: создай outlines для всех 8 статей подряд
|
||||||
|
2. Не переключайся между агентами
|
||||||
|
3. К концу дня 2: 8 готовых outlines в `2-outline/`
|
||||||
|
|
||||||
|
### День 3-5: Drafting + Critique
|
||||||
|
|
||||||
|
**День 3:**
|
||||||
|
1. @writer: напиши drafts для статей 1-4
|
||||||
|
2. Сразу после каждого draft → @editor для critique
|
||||||
|
3. Не исправляй пока — только генерируй и получай feedback
|
||||||
|
|
||||||
|
**День 4:**
|
||||||
|
1. @writer: напиши drafts для статей 5-8
|
||||||
|
2. @editor: critique для каждого
|
||||||
|
|
||||||
|
**День 5:**
|
||||||
|
1. Просмотри все critiques
|
||||||
|
2. Отметь patterns — что повторяется?
|
||||||
|
3. Приоритизируй: какие статьи требуют больше работы?
|
||||||
|
|
||||||
|
### День 6-8: Revisions
|
||||||
|
|
||||||
|
**Важно:** Используй Opus для revisions
|
||||||
|
|
||||||
|
1. @writer (Opus): исправь critical issues в каждом draft
|
||||||
|
2. При необходимости → второй проход через @editor
|
||||||
|
3. Цель: все drafts на score ≥ 7
|
||||||
|
|
||||||
|
### День 9-11: Human Editing
|
||||||
|
|
||||||
|
**Это твоя работа, не агентов.**
|
||||||
|
|
||||||
|
2-3 статьи в день:
|
||||||
|
- [ ] Добавь личный опыт (замени [TODO])
|
||||||
|
- [ ] Проверь код (запусти примеры)
|
||||||
|
- [ ] Humanization (varying sentences, personal voice)
|
||||||
|
- [ ] Final read вслух
|
||||||
|
|
||||||
|
### День 12-14: Optimization & Publish
|
||||||
|
|
||||||
|
**День 12:**
|
||||||
|
1. @seo: оптимизируй статьи 1-4
|
||||||
|
2. @image-gen: создай briefs для images
|
||||||
|
|
||||||
|
**День 13:**
|
||||||
|
1. @seo: статьи 5-8
|
||||||
|
2. Генерация images через Banatie
|
||||||
|
|
||||||
|
**День 14:**
|
||||||
|
1. Публикация на banatie.app/blog
|
||||||
|
2. Расписание для cross-posting (не всё сразу)
|
||||||
|
|
||||||
|
## Cross-posting schedule
|
||||||
|
|
||||||
|
Не публикуй всё в один день:
|
||||||
|
|
||||||
|
```
|
||||||
|
Неделя 1: Статьи 1-2 на blog → через 7 дней на dev.to
|
||||||
|
Неделя 2: Статьи 3-4 на blog → через 7 дней на dev.to
|
||||||
|
Неделя 3: Статьи 5-6 на blog → через 7 дней на dev.to
|
||||||
|
Неделя 4: Статьи 7-8 на blog → через 7 дней на dev.to
|
||||||
|
```
|
||||||
|
|
||||||
|
Это даёт:
|
||||||
|
- Время для Google индексации (canonical важен)
|
||||||
|
- Постоянный поток контента
|
||||||
|
- Возможность A/B тестировать titles
|
||||||
|
|
||||||
|
## Для регулярного cadence (1 статья/неделю)
|
||||||
|
|
||||||
|
```
|
||||||
|
Понедельник: @strategist (topic selection) + @architect (outline)
|
||||||
|
Вторник: @writer (draft) + @editor (critique)
|
||||||
|
Среда: @writer (revision) + @editor (re-check if needed)
|
||||||
|
Четверг: Human editing
|
||||||
|
Пятница: @seo + @image-gen + publish
|
||||||
|
```
|
||||||
|
|
||||||
|
## Tracking progress
|
||||||
|
|
||||||
|
Используй meta.yml status:
|
||||||
|
|
||||||
|
```yaml
|
||||||
|
status: inbox | planning | outline | drafting | review | optimization | ready | published
|
||||||
|
```
|
||||||
|
|
||||||
|
Команда `/status` в Claude Code покажет где какая статья.
|
||||||
|
|
@ -0,0 +1,340 @@
|
||||||
|
# Banatie Content System — Constitution
|
||||||
|
|
||||||
|
**Document owner:** Oleg + @men
|
||||||
|
**Purpose:** Design documentation for the multi-agent content creation system
|
||||||
|
**Audience:** Us (Oleg, @men). Not for agents.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Why This Document Exists
|
||||||
|
|
||||||
|
This is the reference for understanding WHY the system is built this way. When we return to this project after a break, or when something breaks, or when we want to extend it — this document explains the reasoning.
|
||||||
|
|
||||||
|
Agents don't read this. They have their own instructions in system prompts.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Core Architecture
|
||||||
|
|
||||||
|
### Single-File Article Pattern
|
||||||
|
|
||||||
|
Each article lives in ONE markdown file that accumulates sections as it moves through the pipeline:
|
||||||
|
|
||||||
|
```
|
||||||
|
article.md:
|
||||||
|
├── Frontmatter (metadata)
|
||||||
|
├── # Idea (from @spy or manual)
|
||||||
|
├── # Brief (from @strategist)
|
||||||
|
├── # Outline (from @architect)
|
||||||
|
├── # Draft → Text (from @writer, renamed after PASS)
|
||||||
|
├── # SEO Optimization (from @seo)
|
||||||
|
└── # Image Specs (from @image-gen)
|
||||||
|
```
|
||||||
|
|
||||||
|
**Why single file:**
|
||||||
|
- Git-friendly: one commit = one article state
|
||||||
|
- No sync issues: everything in one place
|
||||||
|
- Easy to move: just move the file
|
||||||
|
- Simple mental model: file location = article status
|
||||||
|
|
||||||
|
### Stage Folders (Kanban)
|
||||||
|
|
||||||
|
```
|
||||||
|
0-inbox/ → Raw ideas, discoveries
|
||||||
|
1-planning/ → Ideas with Briefs
|
||||||
|
2-outline/ → Articles with structure
|
||||||
|
3-drafting/ → Writing in progress
|
||||||
|
4-human-review/→ Passed AI review, needs human touch
|
||||||
|
5-seo/ → SEO optimization stage
|
||||||
|
6-ready/ → Ready to publish
|
||||||
|
7-published/ → Archive of published content
|
||||||
|
```
|
||||||
|
|
||||||
|
**Why folders instead of status field:**
|
||||||
|
- Visual: `ls` shows pipeline state instantly
|
||||||
|
- Atomic: moving file = changing status
|
||||||
|
- Git history: folder shows when status changed
|
||||||
|
- No parsing: don't need to read file to know status
|
||||||
|
|
||||||
|
### Dual Context System
|
||||||
|
|
||||||
|
```
|
||||||
|
project-knowledge/ → Loaded into Claude Project Knowledge (static)
|
||||||
|
shared/ → Read via MCP at runtime (dynamic)
|
||||||
|
```
|
||||||
|
|
||||||
|
**Why two sources:**
|
||||||
|
- Project Knowledge is fast but requires manual update
|
||||||
|
- MCP read is slower but always current
|
||||||
|
- Base context rarely changes (product, audience, competitors)
|
||||||
|
- Operational context changes often (priorities, experiments, new findings)
|
||||||
|
|
||||||
|
**Priority:** shared/ overrides project-knowledge/
|
||||||
|
|
||||||
|
This lets us hot-patch agent behavior without rebuilding Claude Desktop projects.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Agent Design Principles
|
||||||
|
|
||||||
|
### Agents Have "Soul"
|
||||||
|
|
||||||
|
Each agent has a Mindset section that establishes:
|
||||||
|
- Ownership of outcomes (not just task completion)
|
||||||
|
- Permission to question and propose
|
||||||
|
- Understanding of how their work fits the whole
|
||||||
|
|
||||||
|
**Why this matters:**
|
||||||
|
- Order-taking AI produces mediocre results
|
||||||
|
- Strategic thinking catches problems early
|
||||||
|
- Ownership means caring about quality
|
||||||
|
|
||||||
|
### Positive Instructions
|
||||||
|
|
||||||
|
Prompts tell agents what TO DO, not what NOT to do.
|
||||||
|
|
||||||
|
**Instead of:** "Don't use generic phrases"
|
||||||
|
**We write:** "Write like explaining to a smart colleague"
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
- Negative instructions often backfire (attention on forbidden thing)
|
||||||
|
- Positive framing is clearer and more actionable
|
||||||
|
- Matches how you'd instruct a human colleague
|
||||||
|
|
||||||
|
### Filesystem MCP Only
|
||||||
|
|
||||||
|
All agents use `filesystem:*` MCP tools. No virtual FS, no artifacts, no create_file.
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
- Real files on real disk
|
||||||
|
- Git tracks everything
|
||||||
|
- Human can edit same files
|
||||||
|
- No "where did my file go?" confusion
|
||||||
|
|
||||||
|
### Self-Reference via agent-guide.md
|
||||||
|
|
||||||
|
Each agent has an agent-guide.md that it can read to help users.
|
||||||
|
|
||||||
|
When user asks "что ты умеешь?" — agent reads its own guide and answers.
|
||||||
|
|
||||||
|
**Why:**
|
||||||
|
- Agent doesn't need to remember everything
|
||||||
|
- Guide can be updated without changing system prompt
|
||||||
|
- Consistent help across sessions
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## File Locations
|
||||||
|
|
||||||
|
### Repository Root
|
||||||
|
|
||||||
|
```
|
||||||
|
/projects/my-projects/banatie-content/
|
||||||
|
```
|
||||||
|
|
||||||
|
### Static Context (for Project Knowledge)
|
||||||
|
|
||||||
|
```
|
||||||
|
project-knowledge/
|
||||||
|
├── project-soul.md ← Mission, principles, team context
|
||||||
|
├── banatie-product.md ← Product description
|
||||||
|
├── target-audience.md ← ICP details
|
||||||
|
├── competitors.md ← Competitive landscape
|
||||||
|
└── dataforseo-guide.md ← DataForSEO usage guide
|
||||||
|
```
|
||||||
|
|
||||||
|
These files are added to Claude Desktop Project Knowledge. Agents reference them but don't modify.
|
||||||
|
|
||||||
|
### Dynamic Context
|
||||||
|
|
||||||
|
```
|
||||||
|
shared/
|
||||||
|
└── (empty by default, used for operational updates)
|
||||||
|
```
|
||||||
|
|
||||||
|
When we need to push urgent context to agents (new priority, experiment results, temporary instructions), we put files here. Agents check this folder at /init.
|
||||||
|
|
||||||
|
### Agent Definitions
|
||||||
|
|
||||||
|
```
|
||||||
|
desktop-agents/
|
||||||
|
├── 0-spy/
|
||||||
|
│ ├── system-prompt.md ← Full agent instructions
|
||||||
|
│ └── agent-guide.md ← Quick reference for user help
|
||||||
|
├── 1-strategist/
|
||||||
|
├── 2-architect/
|
||||||
|
├── 3-writer/
|
||||||
|
├── 4-editor/
|
||||||
|
├── 5-seo/
|
||||||
|
├── 6-image-gen/
|
||||||
|
├── 7-style-guide-creator/
|
||||||
|
└── 8-webmaster/
|
||||||
|
```
|
||||||
|
|
||||||
|
**system-prompt.md** — copied into Claude Desktop Project system prompt
|
||||||
|
**agent-guide.md** — added to Project Knowledge, agent reads to help users
|
||||||
|
|
||||||
|
### Content Pipeline
|
||||||
|
|
||||||
|
```
|
||||||
|
0-inbox/ ← Ideas land here
|
||||||
|
1-planning/ ← Briefs created
|
||||||
|
2-outline/ ← Structure done
|
||||||
|
3-drafting/ ← Writing happens
|
||||||
|
4-human-review/ ← AI done, human needed
|
||||||
|
5-seo/ ← SEO optimization (folder name differs from 5-optimization)
|
||||||
|
6-ready/ ← Ready to publish
|
||||||
|
7-published/ ← Archive
|
||||||
|
```
|
||||||
|
|
||||||
|
### Supporting Files
|
||||||
|
|
||||||
|
```
|
||||||
|
research/ ← All research outputs (@spy writes here)
|
||||||
|
style-guides/ ← Author personas
|
||||||
|
pages/ ← Landing page content (@webmaster writes here)
|
||||||
|
assets/ ← Static assets
|
||||||
|
```
|
||||||
|
|
||||||
|
### Root Level Docs
|
||||||
|
|
||||||
|
```
|
||||||
|
CLAUDE.md ← Instructions for Claude Code
|
||||||
|
README.md ← Project overview
|
||||||
|
human-editing-checklist.md ← Human editing guide
|
||||||
|
batch-processing.md ← Intensive workflow guide
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Agent Roster
|
||||||
|
|
||||||
|
| # | Handle | Role | Reads | Writes |
|
||||||
|
|---|--------|------|-------|--------|
|
||||||
|
| 0 | @spy | Research Scout | shared/, research/ | research/, 0-inbox/ |
|
||||||
|
| 1 | @strategist | Content Strategist | 0-inbox/, research/, style-guides/ | 1-planning/ |
|
||||||
|
| 2 | @architect | Article Architect | 1-planning/, style-guides/ | 2-outline/ |
|
||||||
|
| 3 | @writer | Draft Writer | 2-outline/, 3-drafting/, style-guides/ | 3-drafting/ |
|
||||||
|
| 4 | @editor | Quality Editor | 3-drafting/, style-guides/ | 3-drafting/, 4-human-review/ |
|
||||||
|
| 5 | @seo | SEO Optimizer | 4-human-review/ | 5-seo/ |
|
||||||
|
| 6 | @image-gen | Visual Designer | 5-seo/ | 6-ready/ |
|
||||||
|
| 7 | @style-guide-creator | Persona Designer | style-guides/ | style-guides/ |
|
||||||
|
| 8 | @webmaster | Web Content | research/, 0-inbox/ | pages/ |
|
||||||
|
|
||||||
|
### DataForSEO Access
|
||||||
|
|
||||||
|
Only some agents have DataForSEO MCP:
|
||||||
|
- @spy — competitor intelligence, backlinks, LLM mentions
|
||||||
|
- @strategist — keyword research, search intent
|
||||||
|
- @seo — SERP analysis, on-page, LLM responses
|
||||||
|
|
||||||
|
Budget: $0.50/session default, ~$10/month total.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Key Workflows
|
||||||
|
|
||||||
|
### Article Creation (Happy Path)
|
||||||
|
|
||||||
|
```
|
||||||
|
1. @spy discovers topic → 0-inbox/article.md (Idea)
|
||||||
|
2. @strategist evaluates → 1-planning/article.md (+ Brief)
|
||||||
|
3. @architect structures → 2-outline/article.md (+ Outline)
|
||||||
|
4. @writer drafts → 3-drafting/article.md (+ Draft)
|
||||||
|
5. @editor reviews → FAIL: stays in 3-drafting/ (+ Critique)
|
||||||
|
→ PASS: 4-human-review/article.md
|
||||||
|
6. Human edits → Same file, manual work
|
||||||
|
7. @seo optimizes → 5-seo/article.md (+ SEO Optimization)
|
||||||
|
8. @image-gen specs → 6-ready/article.md (+ Image Specs)
|
||||||
|
9. Publish → 7-published/article.md
|
||||||
|
```
|
||||||
|
|
||||||
|
### Revision Loop
|
||||||
|
|
||||||
|
```
|
||||||
|
@writer creates draft
|
||||||
|
↓
|
||||||
|
@editor: FAIL (score < 7)
|
||||||
|
↓
|
||||||
|
Critique added to file
|
||||||
|
↓
|
||||||
|
@writer reads Critique, rewrites Draft
|
||||||
|
↓
|
||||||
|
@editor: PASS (score ≥ 7)
|
||||||
|
↓
|
||||||
|
File moves to 4-human-review/
|
||||||
|
```
|
||||||
|
|
||||||
|
### Landing Page Creation
|
||||||
|
|
||||||
|
```
|
||||||
|
1. Idea/research → research/ or 0-inbox/
|
||||||
|
2. @webmaster creates content → pages/page-name.md
|
||||||
|
3. Implementation via Claude Code → /projects/.../banatie-service/apps/landing
|
||||||
|
```
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Design Decisions Log
|
||||||
|
|
||||||
|
### 2024-12-27: Dual Context Architecture
|
||||||
|
|
||||||
|
**Problem:** Static Project Knowledge couldn't be updated quickly for operational needs.
|
||||||
|
|
||||||
|
**Decision:** project-knowledge/ (static, in Project Knowledge) + shared/ (dynamic, read via MCP).
|
||||||
|
|
||||||
|
**Rationale:** Base context rarely changes. Operational context (priorities, experiments) changes often. This separation gives us flexibility without constant Project rebuilding.
|
||||||
|
|
||||||
|
### 2024-12-27: Agent Mindset Sections
|
||||||
|
|
||||||
|
**Problem:** Agents executed tasks mechanically without strategic thinking.
|
||||||
|
|
||||||
|
**Decision:** Added "Your Mindset" section to each agent with ownership language.
|
||||||
|
|
||||||
|
**Rationale:** Framing affects behavior. Agents that "own outcomes" produce better results than agents that "complete tasks."
|
||||||
|
|
||||||
|
### 2024-12-27: DataForSEO Integration
|
||||||
|
|
||||||
|
**Problem:** Keyword research was fake (web search guessing volumes).
|
||||||
|
|
||||||
|
**Decision:** Integrated DataForSEO MCP for real data.
|
||||||
|
|
||||||
|
**Rationale:** Content strategy must be data-driven. $10/month is worth it for real search volumes and difficulty scores.
|
||||||
|
|
||||||
|
### 2024-12-27: @webmaster Agent Added
|
||||||
|
|
||||||
|
**Problem:** System only produced blog articles, no landing pages.
|
||||||
|
|
||||||
|
**Decision:** Created @webmaster for conversion-focused web content.
|
||||||
|
|
||||||
|
**Rationale:** Different skill: blog educates, landing converts. Different structure, different copy principles.
|
||||||
|
|
||||||
|
### 2024-12-27: Filesystem MCP Enforcement
|
||||||
|
|
||||||
|
**Problem:** Agents tried to use virtual FS, artifacts, create_file — files got lost.
|
||||||
|
|
||||||
|
**Decision:** Explicit "CRITICAL" section in every prompt: only filesystem:* MCP tools.
|
||||||
|
|
||||||
|
**Rationale:** Real files on disk = git tracking, human access, persistence across sessions.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## What's NOT Documented Here
|
||||||
|
|
||||||
|
- **Agent prompts** — live in desktop-agents/*/system-prompt.md
|
||||||
|
- **Research findings** — live in research/
|
||||||
|
- **Style guides** — live in style-guides/
|
||||||
|
- **Current priorities** — live in shared/ (if any)
|
||||||
|
|
||||||
|
This document is architecture. Not operations.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## When to Update This Document
|
||||||
|
|
||||||
|
- New agent added → update roster
|
||||||
|
- Folder structure changes → update paths
|
||||||
|
- Major workflow change → update workflows
|
||||||
|
- Design decision made → add to log
|
||||||
|
|
||||||
|
Don't update for: content changes, research findings, style guide updates.
|
||||||
|
|
@ -0,0 +1,117 @@
|
||||||
|
# Human Editing Checklist
|
||||||
|
|
||||||
|
## Это делаешь ТЫ, не агенты
|
||||||
|
|
||||||
|
После @editor дал PASS и перед публикацией — твоя ручная работа.
|
||||||
|
Минимум 30-45 минут на 1000 слов. Это irreducible minimum.
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 1. Личный опыт
|
||||||
|
|
||||||
|
- [ ] Найди все `[TODO]` пометки от @writer
|
||||||
|
- [ ] Добавь реальные истории: "Когда я интегрировал это в Banatie..."
|
||||||
|
- [ ] Опиши конкретные проблемы которые решал
|
||||||
|
- [ ] Включи числа и детали: "занял 3 часа вместо ожидаемых 20 минут"
|
||||||
|
|
||||||
|
**Без личного опыта статья = generic AI content.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 2. Проверка кода
|
||||||
|
|
||||||
|
- [ ] Запусти КАЖДЫЙ code example
|
||||||
|
- [ ] Убедись что работает с текущей версией Banatie API
|
||||||
|
- [ ] Исправь ошибки
|
||||||
|
- [ ] Проверь imports и dependencies
|
||||||
|
- [ ] Добавь комментарии где неочевидно
|
||||||
|
|
||||||
|
**Сломанный код = потерянное доверие.**
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 3. Голос и стиль
|
||||||
|
|
||||||
|
- [ ] Прочитай ВСЛУХ — звучит как ты?
|
||||||
|
- [ ] Убери фразы которые "не твои"
|
||||||
|
- [ ] Добавь свои характерные обороты
|
||||||
|
- [ ] Проверь: ты бы так сказал коллеге?
|
||||||
|
|
||||||
|
**Red flags (убери):**
|
||||||
|
- "In this article, we will explore..."
|
||||||
|
- "It's worth noting that..."
|
||||||
|
- "Let's dive into..."
|
||||||
|
- "At the end of the day..."
|
||||||
|
- Любые фразы которые sound corporate
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 4. Humanization (AI Detection)
|
||||||
|
|
||||||
|
### Sentence variation
|
||||||
|
- [ ] Разбей длинные предложения (>25 слов)
|
||||||
|
- [ ] Объедини слишком короткие (choppy rhythm)
|
||||||
|
- [ ] Mix: короткое. Среднее предложение. Потом длинное с несколькими частями и деталями.
|
||||||
|
|
||||||
|
### Неидеальности
|
||||||
|
- [ ] Добавь contractions (don't, isn't, won't)
|
||||||
|
- [ ] Casual phrases ("honestly", "look", "here's the thing")
|
||||||
|
- [ ] Occasional sentence fragments. Like this.
|
||||||
|
- [ ] Parenthetical asides (like this one)
|
||||||
|
|
||||||
|
### Убери "perfect" структуры
|
||||||
|
- [ ] Не каждый параграф = 3 предложения
|
||||||
|
- [ ] Не каждый список = 5 пунктов
|
||||||
|
- [ ] Не идеальные transitions между секциями
|
||||||
|
|
||||||
|
### Specific details
|
||||||
|
- [ ] Конкретные числа вместо "many" или "several"
|
||||||
|
- [ ] Названия инструментов, версии, даты
|
||||||
|
- [ ] Sensory details где уместно
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## 5. Final read
|
||||||
|
|
||||||
|
- [ ] Читаешь как будто впервые видишь
|
||||||
|
- [ ] Вопрос: захочу ли я дочитать до конца?
|
||||||
|
- [ ] Вопрос: узнал ли я что-то полезное?
|
||||||
|
- [ ] Вопрос: буду ли я рекомендовать это коллеге?
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Quick AI Pattern Check
|
||||||
|
|
||||||
|
**Если видишь это — переписывай:**
|
||||||
|
|
||||||
|
| AI Pattern | Замени на |
|
||||||
|
|------------|-----------|
|
||||||
|
| "It's important to note" | Убери или конкретизируй |
|
||||||
|
| "This allows you to" | "You can" или "This lets you" |
|
||||||
|
| "In order to" | "To" |
|
||||||
|
| "Utilize" | "Use" |
|
||||||
|
| "Leverage" | "Use" или конкретный глагол |
|
||||||
|
| "Ensure" | "Make sure" или убери |
|
||||||
|
| "Subsequently" | "Then" или "After that" |
|
||||||
|
| Perfect parallel structure | Break it occasionally |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Time Budget
|
||||||
|
|
||||||
|
| Task | Time |
|
||||||
|
|------|------|
|
||||||
|
| Personal experience injection | 10-15 min |
|
||||||
|
| Code verification | 10-15 min |
|
||||||
|
| Voice check + rewrites | 10-15 min |
|
||||||
|
| Humanization pass | 5-10 min |
|
||||||
|
| Final read | 5 min |
|
||||||
|
| **TOTAL** | **40-60 min** |
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Remember
|
||||||
|
|
||||||
|
> "AI для структуры, человек для голоса и личного опыта"
|
||||||
|
|
||||||
|
Цель не спрятать AI. Цель — создать hybrid content где AI сделал heavy lifting, а ты добавил то, что AI не может: твой опыт, твой голос, твои ошибки и решения.
|
||||||
|
|
@ -0,0 +1,74 @@
|
||||||
|
# Banatie Product Description
|
||||||
|
|
||||||
|
## What is Banatie?
|
||||||
|
|
||||||
|
Banatie is an **AI-powered image generation API platform** designed specifically for developers who use AI coding tools like Claude Code, Cursor, and other agentic development environments.
|
||||||
|
|
||||||
|
## The Problem We Solve
|
||||||
|
|
||||||
|
Developers building web projects face a significant workflow friction:
|
||||||
|
1. Need an image for their project
|
||||||
|
2. Leave coding environment
|
||||||
|
3. Go to AI image generator (Midjourney, DALL-E, etc.)
|
||||||
|
4. Generate and iterate on prompts
|
||||||
|
5. Download the image manually
|
||||||
|
6. Organize files in project structure
|
||||||
|
7. Import back into project
|
||||||
|
|
||||||
|
**This process often takes longer than building the actual functionality.**
|
||||||
|
|
||||||
|
## Our Solution
|
||||||
|
|
||||||
|
Banatie provides seamless integrations that allow developers to generate production-ready images directly within their development workflow:
|
||||||
|
|
||||||
|
### Integration Methods
|
||||||
|
- **MCP Server** — Direct integration with Claude Code, Cursor, and other MCP-compatible tools
|
||||||
|
- **REST API** — Standard HTTP API for any application
|
||||||
|
- **Prompt URLs** — Generate images via URL parameters (on-demand generation)
|
||||||
|
- **SDK/CLI** — Developer tools for automation
|
||||||
|
|
||||||
|
### Key Features
|
||||||
|
- **Prompt Enhancement** — AI improves your prompts automatically
|
||||||
|
- **Built-in CDN** — Images delivered fast, globally
|
||||||
|
- **@name References** — Maintain consistency across project images
|
||||||
|
- **Project Organization** — Images organized by project automatically
|
||||||
|
|
||||||
|
## Technology
|
||||||
|
|
||||||
|
- **AI Models:** Google Gemini (Imagen 3)
|
||||||
|
- **Infrastructure:** Global CDN delivery
|
||||||
|
- **Future:** Image transformation pipeline (resize, format conversion)
|
||||||
|
|
||||||
|
## Positioning
|
||||||
|
|
||||||
|
We're at the intersection of **AI generation** and **image delivery infrastructure**.
|
||||||
|
|
||||||
|
NOT competing with:
|
||||||
|
- Creative tools (Midjourney, Leonardo) — we're for developers, not artists
|
||||||
|
- Generic APIs (OpenAI DALL-E API) — we add workflow integration
|
||||||
|
|
||||||
|
Competing with:
|
||||||
|
- Manual workflow (download → organize → import)
|
||||||
|
- Cloudinary/ImageKit (on transformation features)
|
||||||
|
- Replicate (on generation API)
|
||||||
|
|
||||||
|
## Pricing Philosophy
|
||||||
|
|
||||||
|
- **Value-based pricing** — Price on workflow time saved, not raw generation cost
|
||||||
|
- **Developer-friendly** — Free tier for testing, reasonable paid tiers
|
||||||
|
- **No surprise bills** — Clear usage limits and alerts
|
||||||
|
|
||||||
|
## Current Status
|
||||||
|
|
||||||
|
- ✅ API v1 complete
|
||||||
|
- ✅ Landing page live (banatie.app)
|
||||||
|
- 🔄 Customer validation in progress
|
||||||
|
- ⏳ MCP server in development
|
||||||
|
- ⏳ SDK/CLI tools planned
|
||||||
|
|
||||||
|
## Brand Voice
|
||||||
|
|
||||||
|
- Technical but approachable
|
||||||
|
- Problem-focused, not feature-focused
|
||||||
|
- Developer-to-developer communication
|
||||||
|
- Honest about limitations and roadmap
|
||||||
|
|
@ -0,0 +1,189 @@
|
||||||
|
# Competitors Overview
|
||||||
|
|
||||||
|
## Direct Competitors
|
||||||
|
|
||||||
|
### 1. Runware
|
||||||
|
**URL:** runware.ai
|
||||||
|
**Funding:** $13M
|
||||||
|
**Pricing:** $0.0006 per image (extremely cheap)
|
||||||
|
|
||||||
|
**What they do:**
|
||||||
|
- Fast image generation API
|
||||||
|
- Multiple model support
|
||||||
|
- Focus on speed and cost
|
||||||
|
|
||||||
|
**Their strengths:**
|
||||||
|
- Massive funding → can subsidize prices
|
||||||
|
- Very fast generation
|
||||||
|
- Multiple models (SD, SDXL, Flux)
|
||||||
|
|
||||||
|
**Their weaknesses:**
|
||||||
|
- No workflow integration (MCP, IDE)
|
||||||
|
- Generic API, not developer-workflow focused
|
||||||
|
- No built-in CDN/delivery
|
||||||
|
- No project organization features
|
||||||
|
|
||||||
|
**Our differentiation:**
|
||||||
|
- Workflow integration > raw price
|
||||||
|
- Built-in delivery pipeline
|
||||||
|
- Project organization
|
||||||
|
- MCP support
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 2. Replicate
|
||||||
|
**URL:** replicate.com
|
||||||
|
**Model:** Pay-per-use API
|
||||||
|
**Pricing:** ~$0.01-0.05 per image depending on model
|
||||||
|
|
||||||
|
**What they do:**
|
||||||
|
- Run any ML model via API
|
||||||
|
- Image generation is one use case
|
||||||
|
- Community models marketplace
|
||||||
|
|
||||||
|
**Their strengths:**
|
||||||
|
- Huge model variety
|
||||||
|
- Developer-friendly API
|
||||||
|
- Good documentation
|
||||||
|
- Established brand
|
||||||
|
|
||||||
|
**Their weaknesses:**
|
||||||
|
- Generic platform (not image-specific)
|
||||||
|
- No workflow integration
|
||||||
|
- Complex pricing (varies by model)
|
||||||
|
- No CDN/delivery built-in
|
||||||
|
|
||||||
|
**Our differentiation:**
|
||||||
|
- Image-specific optimization
|
||||||
|
- Simpler pricing
|
||||||
|
- Built-in CDN
|
||||||
|
- Workflow integration
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 3. Cloudinary
|
||||||
|
**URL:** cloudinary.com
|
||||||
|
**Type:** Image management platform
|
||||||
|
**Pricing:** Free tier + paid plans ($99+/month)
|
||||||
|
|
||||||
|
**What they do:**
|
||||||
|
- Image upload, storage, transformation
|
||||||
|
- CDN delivery
|
||||||
|
- Some AI features (background removal, etc.)
|
||||||
|
|
||||||
|
**Their strengths:**
|
||||||
|
- Industry standard for image management
|
||||||
|
- Excellent transformation pipeline
|
||||||
|
- Robust CDN
|
||||||
|
- Enterprise-ready
|
||||||
|
|
||||||
|
**Their weaknesses:**
|
||||||
|
- Not focused on AI generation
|
||||||
|
- Complex/overwhelming for simple use cases
|
||||||
|
- Expensive at scale
|
||||||
|
- Legacy architecture
|
||||||
|
|
||||||
|
**Our differentiation:**
|
||||||
|
- AI generation first (they bolt it on)
|
||||||
|
- Simpler API for generation
|
||||||
|
- Developer workflow focus
|
||||||
|
- More affordable for generation use cases
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 4. ImageKit
|
||||||
|
**URL:** imagekit.io
|
||||||
|
**Type:** Image CDN + management
|
||||||
|
**Pricing:** Free tier + paid plans ($49+/month)
|
||||||
|
|
||||||
|
**What they do:**
|
||||||
|
- Similar to Cloudinary but simpler
|
||||||
|
- Real-time image transformation
|
||||||
|
- CDN delivery
|
||||||
|
|
||||||
|
**Their strengths:**
|
||||||
|
- Good developer experience
|
||||||
|
- Simpler than Cloudinary
|
||||||
|
- Real-time URL-based transformations
|
||||||
|
|
||||||
|
**Their weaknesses:**
|
||||||
|
- Limited AI generation capabilities
|
||||||
|
- Still focused on management, not generation
|
||||||
|
|
||||||
|
**Our differentiation:**
|
||||||
|
- Generation-first approach
|
||||||
|
- AI-native architecture
|
||||||
|
- Workflow integration
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Indirect Competitors
|
||||||
|
|
||||||
|
### 5. Midjourney
|
||||||
|
**Type:** Creative tool (Discord-based)
|
||||||
|
|
||||||
|
**Not really competing:** Different audience (artists vs developers), different workflow (Discord vs API)
|
||||||
|
|
||||||
|
**But:** Developers might try to use it → shows demand for AI images
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 6. OpenAI DALL-E API
|
||||||
|
**Type:** Image generation API
|
||||||
|
|
||||||
|
**Strengths:** Brand recognition, quality
|
||||||
|
|
||||||
|
**Weaknesses:** Expensive, no workflow integration, generic API
|
||||||
|
|
||||||
|
**Our differentiation:** Developer workflow focus, built-in delivery
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
### 7. Stability AI API
|
||||||
|
**Type:** Image generation API
|
||||||
|
|
||||||
|
**Similar positioning to us but:**
|
||||||
|
- Less developer-workflow focused
|
||||||
|
- No built-in CDN
|
||||||
|
- More model-focused than solution-focused
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Competitive Positioning Map
|
||||||
|
|
||||||
|
```
|
||||||
|
Developer Workflow Integration
|
||||||
|
↑
|
||||||
|
│
|
||||||
|
│ ★ BANATIE
|
||||||
|
│ (target position)
|
||||||
|
│
|
||||||
|
←─────────────────────────┼─────────────────────────→
|
||||||
|
Generic API │ Creative Tool
|
||||||
|
│
|
||||||
|
Replicate ● │ ● Midjourney
|
||||||
|
│
|
||||||
|
Runware ● ● DALL-E │ ● Leonardo
|
||||||
|
│
|
||||||
|
Stability ● │
|
||||||
|
│
|
||||||
|
↓
|
||||||
|
Raw Image Generation
|
||||||
|
```
|
||||||
|
|
||||||
|
## Competitive Intelligence Sources
|
||||||
|
|
||||||
|
For ongoing monitoring, see `research/competitors/` folder and:
|
||||||
|
- Google Ads Transparency: adstransparency.google.com
|
||||||
|
- SpyFu: spyfu.com (competitor keywords)
|
||||||
|
- Product Hunt: AI launches
|
||||||
|
- Hacker News: Show HN posts
|
||||||
|
- Twitter/X: Competitor announcements
|
||||||
|
|
||||||
|
## Our Competitive Moat
|
||||||
|
|
||||||
|
1. **Workflow Integration** — MCP, IDE plugins, CLI (competitors don't have this)
|
||||||
|
2. **Project Organization** — Images organized by project automatically
|
||||||
|
3. **Consistency Features** — @name references for consistent style
|
||||||
|
4. **Developer Experience** — API designed for developers, not data scientists
|
||||||
|
5. **Speed to Value** — Works in minutes, not hours of setup
|
||||||
|
|
@ -0,0 +1,122 @@
|
||||||
|
# Target Audience (ICP)
|
||||||
|
|
||||||
|
## Primary ICP: AI-First Developers
|
||||||
|
|
||||||
|
### Who They Are
|
||||||
|
Developers who use AI coding tools (Claude Code, Cursor, Copilot, Windsurf) as core part of their workflow. They build web applications and need images but hate context-switching.
|
||||||
|
|
||||||
|
### Demographics
|
||||||
|
- **Role:** Frontend developers, full-stack developers, indie hackers
|
||||||
|
- **Experience:** 2-10 years
|
||||||
|
- **Company:** Solo/freelance, small startups, indie projects
|
||||||
|
- **Location:** Global (English-speaking or English-proficient)
|
||||||
|
- **Tools:** VS Code/Cursor, Claude Code, GitHub Copilot, React/Next.js
|
||||||
|
|
||||||
|
### Psychographics
|
||||||
|
- Value efficiency and automation over manual processes
|
||||||
|
- Early adopters of AI tooling
|
||||||
|
- Prefer API-first solutions over GUI tools
|
||||||
|
- Willing to pay for time savings
|
||||||
|
- Active in developer communities (Reddit, HN, Discord, Twitter)
|
||||||
|
|
||||||
|
### Pain Points
|
||||||
|
1. **Context switching kills flow** — leaving IDE to generate images breaks concentration
|
||||||
|
2. **Manual file management is tedious** — download, rename, organize, import
|
||||||
|
3. **Consistency is hard** — keeping visual style consistent across project
|
||||||
|
4. **AI image tools aren't developer-friendly** — designed for artists, not devs
|
||||||
|
|
||||||
|
### Jobs to Be Done
|
||||||
|
- "Generate a hero image for my landing page without leaving my editor"
|
||||||
|
- "Get consistent placeholder images for my components"
|
||||||
|
- "Automate image generation in my build pipeline"
|
||||||
|
- "Create project-specific image assets programmatically"
|
||||||
|
|
||||||
|
### Where They Hang Out
|
||||||
|
- r/ClaudeAI, r/ChatGPTCoding, r/cursor
|
||||||
|
- Hacker News
|
||||||
|
- Dev Twitter/X
|
||||||
|
- Discord servers for AI coding tools
|
||||||
|
- Dev.to, Hashnode
|
||||||
|
|
||||||
|
### Buying Behavior
|
||||||
|
- Try free tier first
|
||||||
|
- Pay when they hit limits or need production features
|
||||||
|
- Monthly subscription preferred over usage-based (predictable costs)
|
||||||
|
- Will pay $10-50/month for tools that save significant time
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Secondary ICP: Web Dev Agencies (Small)
|
||||||
|
|
||||||
|
### Who They Are
|
||||||
|
Small web development agencies (3-10 people) building client websites and applications. Need images for multiple projects.
|
||||||
|
|
||||||
|
### Pain Points
|
||||||
|
- Managing images across many client projects
|
||||||
|
- Keeping brand consistency per client
|
||||||
|
- Time spent on asset preparation
|
||||||
|
- Client requests for quick visual iterations
|
||||||
|
|
||||||
|
### Value Proposition
|
||||||
|
- Project-based organization
|
||||||
|
- Consistent image generation per brand
|
||||||
|
- API integration into existing workflows
|
||||||
|
- Time savings across multiple projects
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Tertiary ICP: E-commerce Builders
|
||||||
|
|
||||||
|
### Who They Are
|
||||||
|
Developers building e-commerce solutions (Shopify apps, custom stores). Need product-related images.
|
||||||
|
|
||||||
|
### Pain Points
|
||||||
|
- Product image generation/enhancement
|
||||||
|
- Lifestyle/marketing images
|
||||||
|
- Consistent product photography style
|
||||||
|
- Bulk image processing
|
||||||
|
|
||||||
|
### Value Proposition
|
||||||
|
- Product image generation
|
||||||
|
- Style consistency across catalog
|
||||||
|
- Integration with e-commerce platforms
|
||||||
|
- Bulk operations
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Anti-Personas (NOT Our Target)
|
||||||
|
|
||||||
|
### 1. Artists/Designers
|
||||||
|
- Want fine creative control
|
||||||
|
- Prefer Midjourney/Leonardo UI
|
||||||
|
- Don't need developer integrations
|
||||||
|
- **Why not us:** We're optimized for developer workflow, not creative exploration
|
||||||
|
|
||||||
|
### 2. Enterprise IT
|
||||||
|
- Need extensive compliance/security
|
||||||
|
- Require on-premise deployment
|
||||||
|
- Long procurement cycles
|
||||||
|
- **Why not us:** We're not enterprise-ready yet
|
||||||
|
|
||||||
|
### 3. Non-Technical Users
|
||||||
|
- Need GUI-based tools
|
||||||
|
- Don't understand APIs
|
||||||
|
- Want drag-and-drop interfaces
|
||||||
|
- **Why not us:** We're API-first, developer-focused
|
||||||
|
|
||||||
|
---
|
||||||
|
|
||||||
|
## Validation Status
|
||||||
|
|
||||||
|
- ✅ AI-first developers: Strong founder-market fit (Oleg's own experience)
|
||||||
|
- 🔄 Web agencies: Needs external validation
|
||||||
|
- 🔄 E-commerce: Needs external validation
|
||||||
|
|
||||||
|
## Content Implications
|
||||||
|
|
||||||
|
When writing content:
|
||||||
|
- Use technical terminology freely
|
||||||
|
- Reference AI coding tools specifically
|
||||||
|
- Focus on workflow integration, not image quality
|
||||||
|
- Assume reader knows React/Next.js basics
|
||||||
|
- Include code examples early and often
|
||||||
Loading…
Reference in New Issue