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
|
||||
99
CLAUDE.md
99
CLAUDE.md
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
## 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.
|
||||
|
||||
|
|
@ -16,27 +16,61 @@ You manage files, validate structure, check consistency.
|
|||
```
|
||||
banatie-content/
|
||||
├── 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
|
||||
│ ├── target-audience.md
|
||||
│ ├── competitors.md
|
||||
│ ├── content-framework.md
|
||||
│ └── ...
|
||||
├── style-guides/ ← Author definitions
|
||||
│ └── dataforseo-guide.md
|
||||
│
|
||||
├── 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
|
||||
│ └── {author}.md
|
||||
│
|
||||
├── research/ ← @spy output
|
||||
├── desktop-agents/ ← Agent configs (read-only reference)
|
||||
├── pages/ ← @webmaster output (landing pages)
|
||||
│
|
||||
├── 0-inbox/ ← Ideas
|
||||
├── 1-planning/ ← Briefs
|
||||
├── 2-outline/ ← Structures
|
||||
├── 3-drafting/ ← Drafts + Revisions
|
||||
├── 4-human-review/ ← Human editing
|
||||
├── 5-optimization/ ← SEO + Images
|
||||
├── 6-ready/ ← Ready to publish
|
||||
├── 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
|
||||
|
||||
Each article is ONE file with frontmatter:
|
||||
|
|
@ -53,6 +87,11 @@ content_type: tutorial
|
|||
primary_keyword: "main keyword"
|
||||
---
|
||||
|
||||
# Idea
|
||||
(raw idea, discovery source)
|
||||
|
||||
---
|
||||
|
||||
# Brief
|
||||
(from @strategist)
|
||||
|
||||
|
|
@ -63,13 +102,18 @@ primary_keyword: "main keyword"
|
|||
|
||||
---
|
||||
|
||||
# Draft
|
||||
(from @writer)
|
||||
# Text
|
||||
(final text — renamed from Draft after PASS)
|
||||
|
||||
---
|
||||
|
||||
# Critique
|
||||
(from @editor — removed after PASS)
|
||||
# SEO Optimization
|
||||
(from @seo)
|
||||
|
||||
---
|
||||
|
||||
# Image Specs
|
||||
(from @image-gen)
|
||||
```
|
||||
|
||||
## Status Values
|
||||
|
|
@ -82,7 +126,7 @@ primary_keyword: "main keyword"
|
|||
| drafting | 3-drafting/ | Writing |
|
||||
| revision | 3-drafting/ | Revision after critique |
|
||||
| review | 4-human-review/ | Human editing |
|
||||
| optimization | 5-optimization/ | SEO + images |
|
||||
| seo | 5-seo/ | SEO optimization |
|
||||
| ready | 6-ready/ | Ready to publish |
|
||||
| published | 7-published/ | Archived |
|
||||
|
||||
|
|
@ -115,18 +159,19 @@ Move article to stage (validate first):
|
|||
- Communication with user: Russian
|
||||
- Reports: Russian
|
||||
|
||||
## The 8 Agents
|
||||
## The 9 Agents
|
||||
|
||||
| # | Agent | Role |
|
||||
|---|-------|------|
|
||||
| 0 | @spy | Research |
|
||||
| 1 | @strategist | Topic planning |
|
||||
| 2 | @architect | Article structure |
|
||||
| 3 | @writer | Draft writing |
|
||||
| 4 | @editor | Quality review |
|
||||
| 5 | @seo | SEO optimization |
|
||||
| 6 | @image-gen | Visual assets |
|
||||
| 7 | @style-guide-creator | Author personas |
|
||||
| # | Agent | Role | Special Tools |
|
||||
|---|-------|------|---------------|
|
||||
| 0 | @spy | Research, competitive intelligence | DataForSEO |
|
||||
| 1 | @strategist | Topic planning, briefs | DataForSEO |
|
||||
| 2 | @architect | Article structure | — |
|
||||
| 3 | @writer | Draft writing | — |
|
||||
| 4 | @editor | Quality review | — |
|
||||
| 5 | @seo | SEO optimization | DataForSEO |
|
||||
| 6 | @image-gen | Visual asset specs | — |
|
||||
| 7 | @style-guide-creator | Author personas | — |
|
||||
| 8 | @webmaster | Landing pages, web content | — |
|
||||
|
||||
## What You Do NOT Do
|
||||
|
||||
|
|
@ -136,3 +181,9 @@ Move article to stage (validate first):
|
|||
❌ Generate images
|
||||
|
||||
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