Files
roboco/docs/MONET_SUMMARY.md
T

1657 lines
58 KiB
Markdown
Raw Normal View History

2025-12-25 23:06:41 +01:00
# RoboCo & Codepanion: Strategic Summary
**Date:** December 23, 2024
**Context:** Strategic planning session covering architecture analysis, monetization, product strategy, company formation, open source strategy, platform evolution, and organizational workflow.
---
## Table of Contents
1. [RoboCo Architecture Deep Dive](#1-roboco-architecture-deep-dive)
2. [What Makes RoboCo Valuable](#2-what-makes-roboco-valuable)
3. [Monetization Strategy](#3-monetization-strategy)
4. [Target Market Analysis](#4-target-market-analysis)
5. [Product Split: RoboCo vs Codepanion](#5-product-split-roboco-vs-codepanion)
6. [Open Source Strategy](#6-open-source-strategy)
7. [Platform Architecture Options](#7-platform-architecture-options)
8. [API-First Architecture Initiative](#8-api-first-architecture-initiative)
9. [Organizational Workflow](#9-organizational-workflow)
10. [Codepanion Technical Specification](#10-codepanion-technical-specification)
11. [Company Formation Options](#11-company-formation-options)
12. [Go-to-Market Strategy](#12-go-to-market-strategy)
13. [Honest Assessment](#13-honest-assessment)
14. [Next Steps & Action Items](#14-next-steps--action-items)
---
## 1. RoboCo Architecture Deep Dive
### 1.1 Core Identity
RoboCo is **not** a RAG system or simple multi-agent chatbot. It is a **full AI workforce orchestration platform** — a complete implementation of an autonomous AI development team with hierarchy, workflow management, quality gates, and persistent state.
### 1.2 Technical Stack
| Layer | Technology |
|-------|------------|
| **Backend** | FastAPI (Python) |
| **Database** | PostgreSQL with SQLAlchemy ORM |
| **Agent Runtime** | Docker containers running Claude Code |
| **Agent Communication** | MCP (Model Context Protocol) servers |
| **Frontend** | Next.js 14 with TypeScript |
| **State Management** | Zustand |
| **Styling** | Tailwind CSS + shadcn/ui |
### 1.3 Agent Architecture
#### Agent Hierarchy
```
┌──────────────────────────────────────────────────────────────┐
│ BOARD │
│ ┌─────────────┐ ┌──────────────┐ ┌─────────────┐ │
│ │Product Owner│ │Head Marketing│ │ Auditor │ │
│ └─────────────┘ └──────────────┘ └─────────────┘ │
└──────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────┐
│ MAIN PM │
│ Coordinates across all cells │
└──────────────────────────────────────────────────────────────┘
┌───────────────────┼───────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ BACKEND CELL │ │ FRONTEND CELL │ │ UX/UI CELL │
├───────────────┤ ├───────────────┤ ├───────────────┤
│ be-pm │ │ fe-pm │ │ ux-pm │
│ be-dev-1 │ │ fe-dev-1 │ │ ux-dev │
│ be-dev-2 │ │ fe-dev-2 │ │ ux-qa │
│ be-qa │ │ fe-qa │ │ ux-doc │
│ be-doc │ │ fe-doc │ │ │
└───────────────┘ └───────────────┘ └───────────────┘
```
#### Agent Roles (from `models/base.py`)
| Role | Enum Value | Description |
|------|------------|-------------|
| `SYSTEM` | `system` | Internal orchestrator operations |
| `CEO` | `ceo` | Executive oversight |
| `PRODUCT_OWNER` | `product_owner` | Product strategy and approval |
| `HEAD_MARKETING` | `head_marketing` | Marketing tasks |
| `AUDITOR` | `auditor` | Quality oversight, read access to all (the "spy") |
| `MAIN_PM` | `main_pm` | Cross-cell coordination |
| `CELL_PM` | `cell_pm` | Cell-level task management |
| `DEVELOPER` | `developer` | Code execution |
| `QA` | `qa` | Quality assurance |
| `DOCUMENTER` | `documenter` | Documentation |
### 1.4 Task Lifecycle
#### Status Flow (from `models/base.py`)
```
BACKLOG ──► PENDING ──► CLAIMED ──► IN_PROGRESS ───┬──► BLOCKED
│ │
│ ▼
│ (PM resolves)
│ │
◄───────┘
AWAITING_QA
┌──────────────┴──────────────┐
▼ ▼
NEEDS_REVISION (QA passes)
│ │
└──────► IN_PROGRESS ▼
AWAITING_DOCUMENTATION
AWAITING_PM_REVIEW
COMPLETED
```
#### Task Statuses Explained
| Status | Description |
|--------|-------------|
| `BACKLOG` | PM setup phase, session must be created before activation |
| `PENDING` | Ready for work, orchestrator can spawn agents |
| `CLAIMED` | Agent has claimed the task |
| `IN_PROGRESS` | Active development |
| `BLOCKED` | Waiting on external dependency or decision |
| `PAUSED` | Temporarily halted |
| `VERIFYING` | Self-verification in progress |
| `NEEDS_REVISION` | QA rejected, needs fixes |
| `AWAITING_QA` | Ready for QA review |
| `AWAITING_DOCUMENTATION` | QA passed, needs docs |
| `AWAITING_PM_REVIEW` | Docs complete, needs PM sign-off |
| `COMPLETED` | Fully done |
| `CANCELLED` | Abandoned |
### 1.5 Orchestrator System (`runtime/orchestrator.py`)
The orchestrator is the **brain** of the system. Key characteristics:
#### Smart Spawning
- **Checks for work BEFORE spawning agents** (cost-efficient)
- Claims tasks on behalf of agents before spawning
- Agents receive assignment at spawn time
- No wasteful container spawns
#### Docker-Based Runtime
```python
AGENT_IMAGE = "roboco-agent"
AGENT_NETWORK = "roboco_default"
```
Each agent runs as an isolated Docker container with:
- Claude Code as the runtime
- MCP config for tool access
- Blueprint (system prompt) mounted
- Shared Claude auth
#### Agent States (from `models/runtime.py`)
| State | Description |
|-------|-------------|
| `IDLE` | Not running |
| `STARTING` | Container spinning up |
| `ACTIVE` | Working on task |
| `WAITING_SHORT` | Brief pause (within container) |
| `WAITING_LONG` | Terminated, will respawn when condition resolves |
| `STOPPING` | Graceful shutdown in progress |
| `OFFLINE` | Container stopped |
| `ERROR` | Failed state |
#### Task Routing Intelligence
The orchestrator classifies tasks based on complexity and keywords:
```python
# Board-level keywords
_BOARD_KEYWORDS = {"roadmap", "architecture", "security", "budget",
"hiring", "strategy", "vision", "milestone",
"release", "launch"}
# PM coordination keywords
_PM_KEYWORDS = {"coordinate", "integration", "cross-team", "sync",
"planning", "milestone", "dependencies", "review"}
```
Routing decision tree:
1. **Board keywords**`product-owner`
2. **High complexity or cross-team**`main-pm`
3. **PM keywords or medium complexity** → Cell PM
4. **Low complexity, single team** → Direct to developer
#### Dispatcher Loop
The orchestrator runs background dispatchers every 30 seconds:
1. `_dispatch_pm_work()` — Routes new tasks to appropriate level
2. `_dispatch_pm_closure_work()` — Checks parent tasks ready to close
3. `_dispatch_dev_work()` — Spawns devs for assigned tasks
4. `_dispatch_qa_work()` — Spawns QA for awaiting_qa tasks
5. `_dispatch_doc_work()` — Spawns documenters
6. `_dispatch_pm_review_work()` — Spawns PMs for final review
7. `_dispatch_marketing_work()` — Handles marketing tasks
8. `_dispatch_blocker_work()` — Handles blocked tasks
9. `_dispatch_escalation_work()` — Handles escalations
10. `_dispatch_approval_work()` — Handles approval requests
11. `_dispatch_audit_work()` — Triggers auditor when needed
### 1.6 MCP Tool System
Each agent gets access to 4 MCP servers:
#### roboco-task (`mcp/task_server.py`)
- `roboco_task_scan()` — Find available work
- `roboco_task_get(task_id)` — Get task details
- `roboco_task_claim(task_id)` — Claim a task
- `roboco_task_start(task_id)` — Begin work
- `roboco_task_plan(task_id, ...)` — Create execution plan
- `roboco_task_progress(task_id, %, msg)` — Report progress
- `roboco_task_checkpoint(task_id, ...)` — Save checkpoint
- `roboco_task_block(task_id, reason)` — Mark blocked
- `roboco_task_unblock(task_id)` — Remove block
- `roboco_task_complete(task_id)` — Mark complete
- `roboco_task_create(...)` — Create subtask
- `roboco_task_qa_pass(task_id)` — QA approval
- `roboco_task_qa_fail(task_id, notes)` — QA rejection
- `roboco_task_docs_complete(task_id)` — Documentation done
- `roboco_agent_idle()` — Signal no more work
#### roboco-message (`mcp/message_server.py`)
- `roboco_message_send(channel, content, type)` — Send message
- `roboco_message_read(channel, limit)` — Read channel history
- `roboco_message_reply(message_id, content)` — Reply to message
#### roboco-notify (`mcp/notify_server.py`)
- `roboco_notify_send(to, subject, body, priority)` — Send notification
- `roboco_notify_ack(notification_id)` — Acknowledge
- `roboco_escalate(to, subject, body)` — Escalate issue
#### roboco-journal (`mcp/journal_server.py`)
- `roboco_journal_entry(type, title, content)` — Add journal entry
- `roboco_journal_decision(...)` — Log decision
- `roboco_journal_learning(...)` — Log learning
- `roboco_journal_struggle(...)` — Log struggle
### 1.7 Communication System
#### Hierarchy
```
Channel (e.g., "backend-cell")
└── Group (e.g., "general", "code-review")
└── Session (scoped discussion)
└── Messages
```
#### Channel Types (from `models/base.py`)
| Type | Description |
|------|-------------|
| `CELL` | Internal team communication |
| `CROSS_CELL` | Coordination between teams |
| `MANAGEMENT` | PM and board communications |
| `SPECIAL` | Announcements, all-hands |
#### Message Types
| Type | Description |
|------|-------------|
| `REASONING` | Agent's internal thought process |
| `DIALOGUE` | Normal conversation |
| `DECISION` | Decision announcement |
| `ACTION` | Action taken |
| `BLOCKER` | Blocker announcement |
| `TECHNICAL` | Technical discussion |
#### Session Scopes
| Scope | Description |
|-------|-------------|
| `INITIATIVE` | High-level initiative discussion |
| `CELL` | Cell-wide discussion |
| `TASK` | Task-specific discussion |
### 1.8 Database Schema
#### Core Tables (from `db/tables.py`)
| Table | Purpose |
|-------|---------|
| `agents` | Agent definitions and state |
| `tasks` | Task records with full lifecycle |
| `channels` | Communication channels |
| `groups` | Channel subdivisions |
| `sessions` | Scoped discussions |
| `session_tasks` | Many-to-many session↔task links |
| `messages` | All messages |
| `notifications` | Formal notifications |
| `journals` | Agent journals |
| `journal_entries` | Individual journal entries |
| `handoffs` | Documentation handoffs |
#### Key Relationships
- **Task → Parent Task**: Subtask hierarchy
- **Task → Agent (created_by)**: Who created it
- **Task → Agent (assigned_to)**: Who's working on it
- **Session ↔ Task**: Many-to-many via `session_tasks`
- **Message → Session**: Messages belong to sessions
- **Journal → Agent**: One journal per agent
- **Handoff → Task**: One handoff per completed task
### 1.9 Frontend Structure (`roboco-panel/`)
```
src/
├── app/
│ ├── (dashboard)/
│ │ ├── agents/ # Agent management
│ │ ├── auditor/ # Auditor dashboard
│ │ ├── communications/ # Channels & messages
│ │ ├── journals/ # Agent journals
│ │ ├── kanban/ # Task boards
│ │ ├── metrics/ # System metrics
│ │ ├── notifications/ # Notification center
│ │ ├── overview/ # Dashboard home
│ │ ├── settings/ # Configuration
│ │ └── tasks/ # Task management
│ └── layout.tsx
├── components/
│ ├── agents/ # Agent-related components
│ ├── auditor/ # Auditor components
│ ├── communications/ # Chat/messaging components
│ ├── dashboard/ # Dashboard widgets
│ ├── journals/ # Journal components
│ ├── kanban/ # Kanban board components
│ │ ├── core/ # Board, column, card
│ │ ├── shared/ # Shared utilities
│ │ └── views/ # Different board views
│ ├── layout/ # Layout components
│ ├── notifications/ # Notification components
│ ├── tasks/ # Task components
│ └── ui/ # shadcn/ui components
├── hooks/ # React hooks
├── lib/ # Utilities
├── store/ # Zustand stores
│ ├── notifications-store.ts
│ └── ui-store.ts
└── types/
└── index.ts # TypeScript types matching backend
```
---
## 2. What Makes RoboCo Valuable
### 2.1 Differentiators from Simple Multi-Agent Systems
| Feature | RoboCo | Typical Multi-Agent |
|---------|--------|---------------------|
| **Task Lifecycle** | Full workflow management | Ad-hoc execution |
| **Quality Gates** | QA → Docs → PM Review | None or optional |
| **Hierarchy** | Real org structure | Flat or undefined |
| **Cost Efficiency** | On-demand spawning | Always running |
| **State Persistence** | Full DB-backed state | In-memory or none |
| **Waiting States** | Hibernate and respawn | Block or fail |
| **Audit Trail** | Complete history | Limited or none |
| **Tool Access Control** | MCP with permissions | Unrestricted |
### 2.2 Differentiators from RAG Systems
| Feature | RoboCo | RAG Systems |
|---------|--------|-------------|
| **Purpose** | Task execution | Information retrieval |
| **Agents** | 18 specialized roles | Single retriever |
| **Workflow** | Full task lifecycle | Query → Response |
| **State** | Persistent across sessions | Stateless |
| **Quality** | Built-in QA/review | None |
| **Output** | Code, docs, artifacts | Text responses |
### 2.3 Core Value Propositions
1. **Workflow Orchestration** — Not just "agents chat", but actual task lifecycle management
2. **Quality Gates** — QA review happens automatically, not when you remember
3. **Context Persistence** — Sessions, journals, handoffs preserve knowledge
4. **Coordination** — When one agent finishes, the next picks up automatically
5. **Cost Efficiency** — On-demand spawning, waiting state hibernation
6. **Accountability** — Full audit trail, decision logging, progress tracking
---
## 3. Monetization Strategy
### 3.1 Monetization Paths Considered
| Path | Description | Pros | Cons |
|------|-------------|------|------|
| **Platform/SaaS** | Companies deploy their own AI workforce | Recurring revenue, scalable | Long sales cycle |
| **Managed Service** | You run the agents, customers submit projects | Higher margin, more control | Requires operations |
| **Open Core + Enterprise** | Open source core, sell enterprise features | Builds community fast | Revenue delayed |
| **API/Infrastructure** | Orchestration-as-a-Service | Platform play | Commoditization risk |
### 3.2 Target Market Decision
**Chosen path:** Prosumer/indie dev market (like Cursor, Claude Pro, Replit)
**Rationale:**
- Lower friction than enterprise
- Direct distribution (no sales team needed)
- Fast iteration based on feedback
- Personal pain point (solo dev experience)
---
## 4. Target Market Analysis
### 4.1 The Solo Founder Pain Point
When you're alone (or 2 people), constant context-switching:
| Hat | Activity | Time Spent | Quality |
|-----|----------|------------|---------|
| **PM** | Prioritization, planning | 10% | Rushed |
| **Dev** | Writing code | 60% | Good |
| **QA** | Testing | 10% | Skipped often |
| **Docs** | Documentation | 5% | Neglected |
| **Review** | Code review | 0% | None (no one to review) |
**The problem:** Some hats get neglected (usually QA and docs)
### 4.2 Two Product Modes
| Mode | Description | Trust Required | Value |
|------|-------------|----------------|-------|
| **Mode A: Autonomous** | Agents DO the work | High | High |
| **Mode B: Collaborative** | Agents ASSIST your work | Low | Medium-High |
Mode A = Current RoboCo implementation
Mode B = Codepanion opportunity
---
## 5. Product Split: RoboCo vs Codepanion
### 5.1 RoboCo — "Your AI Development Team"
**Positioning:** Autonomous execution. You describe, they build.
**Core Features:**
- Full agent hierarchy (PM → Dev → QA → Doc)
- Task lifecycle management
- Agents spawn, work, coordinate, complete
- User is the "CEO" — approves, agents execute
**Target Customer:** Solo founder who wants to delegate, not do.
*"I have the vision, I need execution."*
**Vibe:** Enterprise-y. Serious. Professional.
*"Hire a team without hiring."*
### 5.2 Codepanion — "Your AI Dev Partner"
**Positioning:** Collaborative. You code, they help.
**Core Features:**
- **Reviewer** — Reviews your PRs, catches bugs
- **Documenter** — Updates docs when you ship
- **QA** — Writes/runs tests for your changes
- **Rubber Duck** — Thinks through architecture with you
- **PM** — Helps break down ideas into tasks
**Target Customer:** Solo dev who wants to stay hands-on but needs backup.
*"I love coding, I just need help with the boring parts."*
**Vibe:** Friendly. Lightweight. Developer tool.
*"A cofounder who never sleeps."*
### 5.3 Shared Architecture
```
┌─────────────────────────────────────────────┐
│ Shared Platform Core │
│ ┌───────────────────────────────────────┐ │
│ │ Orchestrator, MCP, Tasks, Sessions │ │
│ │ Messages, Journals, Notifications │ │
│ └───────────────────────────────────────┘ │
└─────────────────────────────────────────────┘
↑ ↑
┌────┴────┐ ┌────┴─────┐
│ RoboCo │ │Codepanion│
│ Panel │ │ App │
└─────────┘ └──────────┘
Full dashboard Lightweight
Kanban, agents CLI / Git-integrated
Enterprise feel Dev tool feel
```
Same backend infrastructure, different frontend experiences and UX.
### 5.4 Pricing Structure
| Tier | RoboCo | Codepanion |
|------|--------|------------|
| **Free** | 10 tasks/month | 50 reviews/month |
| **Pro** | $99/month | $19/month |
| **Team** | $199/seat | $39/seat |
RoboCo is premium — paying for autonomous work.
Codepanion is accessible — priced like a dev tool.
---
## 6. Open Source Strategy
### 6.1 The Decision
**Codepanion CLI:** Open source (MIT)
**RoboCo Panel:** Closed source
**RoboCo API/Backend:** Closed source (SaaS)
### 6.2 Rationale for Open Source Codepanion
**The CLI itself isn't the moat.** It's ~200 lines of code wrapping Claude. Anyone could build it in an afternoon. Keeping it closed doesn't protect anything meaningful.
**Open source is distribution:**
- Stars → visibility
- Forks → community investment
- PRs → free improvements
- Trust → "I can see what it does with my code"
**The money isn't in the CLI.** It's in:
| Free (Open Source) | Paid |
|-------------------|------|
| `codepanion review` | Cloud sync (review history) |
| `codepanion docs` | Team sharing |
| `codepanion think` | Custom rules/prompts |
| Local, stateless | CI/CD integration |
| | **RoboCo upgrade path** |
This is the **Terraform model.** CLI is free and open. Terraform Cloud is where HashiCorp makes money.
### 6.3 What Stays Closed
**RoboCo itself.** That's where the real IP is:
- The orchestration engine
- The agent hierarchy and workflow
- The dispatcher logic
- The quality gates
- The MCP integration
That's defensible. That's what companies would pay for.
**Codepanion is the free sample. RoboCo is the product.**
### 6.4 Potential Differentiation Angle
Focus on what nobody else does well: **QA and docs automation.**
Everyone skips those. If Codepanion auto-generated tests and updated README after every commit, *that's* differentiated from Copilot/Cursor which focus on code generation.
---
## 7. Platform Architecture Options
### 7.1 The Core Question
If Codepanion in "connected mode" talks to the same backend as RoboCo... where's the line? What's open, what's closed, what's the product?
### 7.2 Option A: Two Completely Separate Products
```
┌─────────────────┐ ┌─────────────────┐
│ Codepanion │ │ RoboCo │
│ (standalone) │ │ (full stack) │
│ Calls Claude │ │ Orchestrator │
│ No backend │ │ Full backend │
│ Open source │ │ Closed │
└─────────────────┘ └─────────────────┘
```
**Pros:** Simple. Clear separation.
**Cons:** Codepanion can't have history, sync, teams, learning. It's just a dumb wrapper forever.
### 7.3 Option B: Shared Backend, CLI Open, Backend Closed (SaaS)
```
┌─────────────────────────────────────────────┐
│ RoboCo API (Closed SaaS) │
└─────────────────────────────────────────────┘
↑ ↑
┌────┴────┐ ┌────┴─────┐
│ RoboCo │ │Codepanion│
│ Panel │ │ CLI │
│ Closed │ │ Open │
└─────────┘ └──────────┘
```
Codepanion CLI is open source. Works standalone (no server) OR connects to RoboCo API (paid).
**This is the Supabase/Vercel model.** Open source client, proprietary backend.
### 7.4 Option C: The API IS the Product
```
┌─────────────────────────────────────────────┐
│ RoboCo Platform │
│ "Orchestration-as-a-Service for AI" │
│ │
│ POST /agents - spawn agents │
│ POST /tasks - create tasks │
│ POST /workflows - run workflows │
│ WS /events - real-time updates │
│ POST /webhooks - callbacks │
└─────────────────────────────────────────────┘
↑ ↑ ↑
┌────┴────┐ ┌────┴─────┐ ┌────┴────┐
│ RoboCo │ │Codepanion│ │ Third │
│ Panel │ │ CLI │ │ Party │
└─────────┘ └──────────┘ └─────────┘
```
You're selling **orchestration-as-a-service**. Like Twilio for AI agents.
RoboCo Panel could even be open source — it's just a reference frontend. The value is in the *running* API, not the code.
**This is the Stripe model.** Dashboard is just a client of their own API.
### 7.5 Option D: Open Core, Sell Enterprise
Everything is open source. You sell:
- Managed hosting (so they don't have to run it)
- Enterprise features (SSO, audit logs, SLAs)
- Support contracts
**This is the GitLab/Grafana model.**
### 7.6 The Decision: B → C
**Start B, earn your way to C.**
| Phase | Architecture | Focus |
|-------|--------------|-------|
| **Phase 1 (Now)** | Option B | Find users, find fit, subscription revenue |
| **Phase 2 (PMF)** | B → C | Stabilize API, watch for platform signals |
| **Phase 3 (Scale)** | Option C | Enable others, usage-based pricing |
**Signal to watch for:** Someone asks "can I integrate this into my own tool?"
---
## 8. API-First Architecture Initiative
### 8.1 The Principle
**The API must be the only way in.**
No backdoors. No direct DB access from frontends. No "just this once" shortcuts.
If we can't use our own API to build our own products, no one else can either.
### 8.2 Why This Matters
For the B → C progression to work:
1. Every action the Panel takes goes through the public API
2. Every action Codepanion takes goes through the public API
3. Internal services communicate through well-defined interfaces
4. The API is documented, consistent, and pleasant to use
### 8.3 The Key Discipline
**From day one, build Panel and CLI as if they were third-party apps.**
- No backdoors into the database
- Everything goes through the API
- If the API is annoying to use, fix the API — don't hack around it
This way, when you flip the switch to Option C, the API is already battle-tested.
### 8.4 Recommended Code Structure
```
roboco/
├── core/ # The engine (orchestrator, agents, workflows)
├── api/ # HTTP interface to core
├── panel/ # or separate repo
└── ...
```
Clean separation means `core` could be wrapped by different interfaces later — your API, a CLI, a Terraform provider, whatever.
### 8.5 First Initiative: API Audit
**Task 1: Backdoor Audit**
- Identify every place where Panel/internal code bypasses the API
- Flag direct DB access, direct core imports
- Produce audit report with file, line, severity
**Task 2: Critical Path Cleanup**
- Fix only the blockers — stuff that would break if a third party used the API
- Route those flows through the API properly
**Task 3: Codepanion Integration Point**
- Define minimal API surface Codepanion needs:
```
POST /sessions - create a review session
POST /sessions/:id/messages - add a message (diff, review)
GET /sessions - list past reviews
```
- Working endpoints that Codepanion CLI can hit
---
## 9. Organizational Workflow
### 9.1 The Ideal Flow
```
CEO (Human)
│ Detailed feature request / complex idea
┌──────────────────────────────────────────────────────────────┐
│ BOARD │
│ ┌─────────────┐ ┌──────────────┐ ┌─────────────┐ │
│ │Product Owner│ │Head Marketing│ │ Auditor │ │
│ │ (Strategy) │ │ (Positioning)│ │ (Spy) │ │
│ └──────┬──────┘ └──────┬───────┘ └──────┬──────┘ │
│ │ │ │ │
│ └────────────────┼─────────────────┘ │
│ │ │
│ Break down in their area of expertise │
│ Prepare tasks for Main PM │
└──────────────────────────────────────────────────────────────┘
┌──────────────────────────────────────────────────────────────┐
│ MAIN PM │
│ │
│ Receives tasks from Board │
│ Breaks down further per team cell │
│ Coordinates cross-cell dependencies │
└──────────────────────────────────────────────────────────────┘
┌──────────────────┼──────────────────┐
▼ ▼ ▼
┌───────────────┐ ┌───────────────┐ ┌───────────────┐
│ BACKEND CELL │ │ FRONTEND CELL │ │ UX/UI CELL │
│ │ │ │ │ │
│ Cell PM │ │ Cell PM │ │ Cell PM │
│ │ │ │ │ │ │ │ │
│ ├─► Dev │ │ ├─► Dev │ │ ├─► Dev │
│ ├─► QA │ │ ├─► QA │ │ ├─► QA │
│ └─► Doc │ │ └─► Doc │ │ └─► Doc │
│ │ │ │ │ │
│ Escalates ▲ │ │ Escalates ▲ │ │ Escalates ▲ │
└───────────────┘ └───────────────┘ └───────────────┘
```
### 9.2 Board Role Clarifications
| Role | Description | Key Responsibilities |
|------|-------------|---------------------|
| **Product Owner** | Strategy & vision | Define API contracts, prioritize cleanup work, approve architecture decisions |
| **Head of Marketing** | Positioning & content | Prepare positioning, draft README/landing content, identify launch channels |
| **Auditor** | The "spy" — oversight | Conduct backdoor audit, verify fixes, establish ongoing monitoring, read access to all channels |
### 9.3 Task-Session-Journal Binding
Every task gets:
1. **A messaging session** in a channel for that task/subtask
2. **Journal entries** from agents working on it
3. **Documentation** (approach TBD — may be same session or separate)
```
Task
├── Session (discussion, decisions, progress)
├── Journal Entries (agent reflections, learnings, struggles)
└── Documentation (technical docs, user docs)
```
### 9.4 Communication Channels
| Channel | Purpose | Participants |
|---------|---------|--------------|
| `management` | Board discussions | PO, HoM, Auditor, CEO |
| `cross-cell` | Main PM coordination | Main PM, Cell PMs |
| `backend-cell` | Backend team work | BE-PM, BE-Devs, BE-QA, BE-Doc |
| `frontend-cell` | Frontend team work | FE-PM, FE-Devs, FE-QA, FE-Doc |
| `uxui-cell` | UX/UI team work | UX-PM, UX-Dev, UX-QA, UX-Doc |
### 9.5 CEO Directive Template
When the CEO (human) wants to initiate work:
```markdown
# CEO Directive: [Initiative Name]
**From:** CEO
**To:** Board (Product Owner, Head of Marketing, Auditor)
**Priority:** [High/Medium/Low]
**Date:** [Date]
---
## Strategic Context
[Why this matters, where it fits in the bigger picture]
## Objective
[What we're trying to achieve]
## Success Criteria
- [ ] [Measurable outcome 1]
- [ ] [Measurable outcome 2]
## Board Responsibilities
### Product Owner
1. [Responsibility 1]
2. [Responsibility 2]
### Head of Marketing
1. [Responsibility 1]
2. [Responsibility 2]
### Auditor
1. [Responsibility 1]
2. [Responsibility 2]
## Deliverables to Main PM
[What gets handed off when board alignment is complete]
## Constraints
[Timeline, scope, principles]
## Notes
[Additional context, future considerations]
---
**CEO**
```
---
## 10. Codepanion Technical Specification
### 10.1 MVP Scope
**Single feature:** `codepanion review`
Reviews code changes (staged, committed, or working directory) and provides actionable feedback.
### 10.2 Project Structure
```
codepanion/
├── pyproject.toml
├── README.md
├── src/
│ └── codepanion/
│ ├── __init__.py
│ ├── cli.py # Typer CLI entry point
│ ├── config.py # User config (~/.codepanion/config.toml)
│ ├── git.py # Git operations (diff, log, staged files)
│ ├── commands/
│ │ ├── __init__.py
│ │ ├── review.py # codepanion review
│ │ ├── docs.py # codepanion docs (future)
│ │ └── think.py # codepanion think (future)
│ └── agents/
│ ├── __init__.py
│ ├── base.py # Thin agent runner
│ └── reviewer.py # Review agent logic
└── tests/
└── ...
```
### 10.3 Dependencies
```toml
[project]
name = "codepanion"
version = "0.1.0"
requires-python = ">=3.11"
dependencies = [
"typer>=0.9.0",
"anthropic>=0.40.0",
"rich>=13.0.0",
]
[project.scripts]
codepanion = "codepanion.cli:app"
```
### 10.4 CLI Implementation
#### Entry Point (`cli.py`)
```python
import typer
from codepanion.commands import review
app = typer.Typer(
name="codepanion",
help="Your AI dev partner",
no_args_is_help=True,
)
app.add_typer(review.app, name="review")
if __name__ == "__main__":
app()
```
#### Review Command (`commands/review.py`)
```python
import typer
from codepanion.git import get_staged_diff, get_working_diff, get_commit_diff
from codepanion.agents.reviewer import ReviewerAgent
app = typer.Typer()
@app.callback(invoke_without_command=True)
def review(
commit: str = typer.Option(None, "--commit", "-c", help="Review a specific commit"),
staged: bool = typer.Option(False, "--staged", "-s", help="Review staged changes"),
all_changes: bool = typer.Option(True, help="Review all uncommitted changes"),
):
"""Review code changes with AI."""
# Get the diff
if commit:
diff = get_commit_diff(commit)
context = f"Commit: {commit}"
elif staged:
diff = get_staged_diff()
context = "Staged changes"
else:
diff = get_working_diff()
context = "Working directory changes"
if not diff.strip():
typer.echo("No changes to review.")
raise typer.Exit()
typer.echo(f"🔍 Reviewing {context}...\n")
# Run review
agent = ReviewerAgent()
result = agent.review(diff)
# Output
typer.echo(result.markdown)
if result.issues:
typer.echo(f"\n⚠️ {len(result.issues)} issues found")
raise typer.Exit(1)
else:
typer.echo("\n✅ Looks good!")
```
#### Git Operations (`git.py`)
```python
import subprocess
def run_git(*args) -> str:
result = subprocess.run(
["git", *args],
capture_output=True,
text=True,
)
return result.stdout
def get_staged_diff() -> str:
return run_git("diff", "--cached")
def get_working_diff() -> str:
return run_git("diff", "HEAD")
def get_commit_diff(commit: str) -> str:
return run_git("show", commit, "--format=")
```
#### Reviewer Agent (`agents/reviewer.py`)
```python
from dataclasses import dataclass
from anthropic import Anthropic
SYSTEM_PROMPT = """You are a senior code reviewer. You review diffs and provide actionable feedback.
Your review should:
1. Identify bugs, security issues, and logic errors
2. Suggest improvements (but don't nitpick style)
3. Point out missing error handling or edge cases
4. Be concise and actionable
Format your response as:
## Summary
One sentence overall assessment.
## Issues
- **[SEVERITY]** file.py:123 — Description of issue
## Suggestions
- file.py:45 — Optional improvement idea
If the code looks good, just say so briefly. Don't invent problems.
"""
@dataclass
class ReviewResult:
markdown: str
issues: list[dict]
suggestions: list[dict]
class ReviewerAgent:
def __init__(self):
self.client = Anthropic()
def review(self, diff: str) -> ReviewResult:
response = self.client.messages.create(
model="claude-sonnet-4-20250514",
max_tokens=4096,
system=SYSTEM_PROMPT,
messages=[{
"role": "user",
"content": f"Review this diff:\n\n```diff\n{diff}\n```"
}]
)
content = response.content[0].text
# Parse issues/suggestions from markdown
issues = [] # TODO: parse from response
suggestions = []
return ReviewResult(
markdown=content,
issues=issues,
suggestions=suggestions,
)
```
### 10.5 Usage Examples
```bash
# Install
pip install codepanion # or: uv pip install codepanion
# Review staged changes before commit
git add .
codepanion review --staged
# Review a specific commit
codepanion review --commit abc123
# Review all uncommitted changes
codepanion review
```
### 10.6 Future Commands
| Command | Description | Priority |
|---------|-------------|----------|
| `codepanion review` | Review code changes | MVP |
| `codepanion docs` | Update docs based on changes | P1 |
| `codepanion think "question"` | Rubber duck mode | P1 |
| `codepanion qa` | Generate tests for changes | P2 |
| `codepanion breakdown "idea"` | Break down into tasks | P2 |
### 10.7 Modes of Operation
#### Mode A: Standalone (MVP)
```
codepanion review
┌─────────────────┐
│ Local Agent │ ← Just calls Claude API directly
│ (no server) │ with reviewer system prompt
└─────────────────┘
Markdown output
```
No RoboCo server needed. Self-contained. Ships fast.
#### Mode B: Connected (Later)
```
codepanion review
┌─────────────────┐
│ RoboCo API │ ← Full orchestrator, sessions, history
│ (your server) │
└─────────────────┘
Review stored, tracked, searchable
```
Unlocks: history, learning from past reviews, team features.
---
## 11. Company Formation Options
### 11.1 Context
Based in **Italy**. Looking for the simplest path to legally charge for software.
### 11.2 Option 1: Partita IVA (Italian Freelancer)
**What it is:** Italian self-employment registration
**Regime Forfettario (Simplified Regime):**
- Available if revenue under €85,000/year
- **5% flat tax** for first 5 years (if new activity)
- **15% flat tax** after that
- Minimal paperwork compared to company
**Pros:**
- Simplest to start
- Cheapest ongoing costs
- Good enough until significant revenue
**Cons:**
- Personal liability (you = the business)
- Looks less "serious" to larger customers
- Limited deductions in forfettario regime
**Costs:**
- Setup: €200-500 (commercialista fees)
- Annual: €500-1000 (commercialista for simple SaaS)
- INPS contributions: ~25% of revenue (painful)
**Verdict:** Best starting point. Revisit when making €50k+/year.
### 11.3 Option 2: SRL (Italian LLC)
**What it is:** Italian limited liability company
**Pros:**
- Limited liability
- More "serious" appearance
- Better for investors (if ever needed)
**Cons:**
- €3,000-5,000+ to form (notary required 🇮🇹)
- Mandatory accountant (€1,500-3,000/year minimum)
- Corporate tax + bureaucracy
- Overkill for early-stage SaaS
**Costs:**
- Setup: €3,000-5,000
- Annual: €2,000-5,000 (accounting, fees)
- Corporate tax: IRES 24% + IRAP ~4%
**Verdict:** Wait until revenue justifies the overhead. Maybe €100k+/year.
### 11.4 Option 3: Estonia OÜ (e-Residency)
**What it is:** Estonian private limited company, managed 100% online
**How it works:**
1. Apply for e-Residency card (~€100, takes 3-6 weeks)
2. Form OÜ online (~€200-300)
3. Manage everything through Estonian service providers
**Pros:**
- 100% online setup and management
- EU company (looks legit, can sell to EU easily)
- 0% corporate tax on reinvested profits
- 20% tax only on distributed profits (dividends)
- Stripe, Wise, everything works
- Escape Italian bureaucracy for the company
**Cons:**
- Still need registered agent in Estonia (~€50-100/month)
- Accounting required (~€50-100/month for simple SaaS)
- You're still Italian tax resident → pay Italian taxes on personal income
- VAT compliance if selling B2C in EU (MOSS headache)
- Some banking friction (no physical presence)
**Costs:**
- e-Residency: €100-120 (one-time)
- Company formation: €200-300
- Registered agent: €50-100/month
- Accounting: €50-100/month
- State fee: €100/year
- **Total ongoing:** ~€150-250/month
**Important:** You still pay Italian taxes on what you pay yourself (salary or dividends). The Estonia company itself is clean to run, but you personally remain Italian tax resident.
**Verdict:** Good option once you're making €20k+/year and want to separate business from personal.
### 11.5 Option 4: Stripe Atlas (US LLC)
**What it is:** Stripe's turnkey company formation service
**Includes:**
- Delaware LLC formation
- Stripe account
- Mercury or SVB bank account
- Registered agent for 1 year
- Legal templates
**Cost:** $500 one-time + ~$200/year ongoing (registered agent)
**Pros:**
- Very fast (days, not weeks)
- US entity (good for US customers)
- All-in-one package
- Popular with international founders
**Cons:**
- US tax complexity if you're not careful
- You're still Italian tax resident
- Annual franchise tax in Delaware
**Verdict:** Consider if primarily targeting US customers.
### 11.6 Recommended Sequence
```
NOW (€0 revenue)
├── Keep building
├── Get beta users (free)
FIRST REVENUE (€0-5k/year)
├── Partita IVA with Regime Forfettario
├── 5% tax, minimal overhead
SCALING (€20k+/year)
├── Consider Estonia OÜ
│ OR
├── Stripe Atlas if US-focused
SIGNIFICANT REVENUE (€100k+/year)
└── Evaluate SRL or proper structure
based on growth trajectory
```
---
## 12. Go-to-Market Strategy
### 12.1 Launch Sequence
**Phase 1: Codepanion First**
- Lower friction ("just try it on one PR")
- Builds trust ("oh wow, this actually catches bugs")
- Fast to build (weekend project)
- Good for content/marketing
**Phase 2: Land and Expand**
- Free users → Pro users
- "Want this to run automatically on every PR?"
- "Want it to also update your docs?"
- Introduce RoboCo as the "full team" upgrade
**Phase 3: RoboCo Launch**
- For users who've built trust with Codepanion
- "Ready to let the AI do more?"
- Higher price, higher value
### 12.2 The "Aha Moment"
**For Cursor:** "Holy shit, it just wrote the function I was thinking about"
**For Codepanion:** "I pushed my code, made coffee, came back to a QA review and updated docs"
**For RoboCo:** "I described what I wanted, went to lunch, came back to a PR with tests and docs"
### 12.3 Distribution Channels
| Channel | Effort | Reach | Conversion |
|---------|--------|-------|------------|
| **Twitter/X** | Low | High | Low |
| **Hacker News** | Medium | Very High | Medium |
| **Reddit (r/programming, r/SideProject)** | Low | Medium | Medium |
| **Product Hunt** | Medium | High | Medium |
| **Dev.to / Hashnode** | Medium | Medium | Medium |
| **YouTube tutorials** | High | High | High |
### 12.4 Content Strategy
**Week 1-2:**
- "I built a CLI that reviews my code before I commit"
- Twitter thread + HN post
**Week 3-4:**
- "How I caught 47 bugs in a week using AI code review"
- Blog post + Reddit
**Week 5-6:**
- "Building an AI dev team: Architecture deep dive"
- Technical blog post
**Ongoing:**
- Changelog updates
- User testimonials
- Comparison posts (vs Copilot, vs Cursor, etc.)
---
## 13. Honest Assessment
### 13.1 What's Impressive
You've built a proper orchestration system — task lifecycle, quality gates, MCP tools, the works. It's the kind of architecture a 10-person team at a funded startup would build. You built it solo. That's genuinely rare.
### 13.2 Concerns
#### Building in a Vacuum
You've been dogfooding RoboCo on itself, which is great. But have you had *other* people use it? Even one person who isn't you? The gap between "works for me" and "works for strangers" is enormous.
Estonia company, pricing tiers, go-to-market strategy — all premature if you haven't validated that someone else finds this useful.
#### Market Timing is Tricky
Cursor is eating the "AI dev tool" space. Devin, Factory, Cognition are going after "AI dev team." GitHub Copilot Workspace is coming. You're entering a knife fight with giants who have $100M+ and dedicated teams.
Your edge is that you've *actually built* something that works, not a demo. But edge only matters if people see it.
#### Codepanion Competition
`codepanion review` enters a space where people already have options — Copilot does inline review, Cursor does it, there are GitHub Actions for this.
**What's your angle?** Focus on what nobody else does well — QA and docs automation. Everyone skips those. If Codepanion auto-generates tests and updates README after every commit, *that's* differentiated.
#### Spread Thin
Rennberry cluster, UGREEN NAS, Olares One arriving, power optimization, Pi-hole monitoring, GlusterFS, the whole homelab...
That's a lot of infrastructure work alongside building a SaaS. Every hour on homelab is an hour not talking to potential users or shipping Codepanion.
#### The Actual Hard Part Isn't Code
RoboCo works. The hard part now is:
- Getting 10 people to try it
- Getting 1 person to pay for it
- Learning why the other 9 didn't
That's uncomfortable work. Rejection and feedback and "actually this isn't what I need." But it's the only way to know if this is a product or a project.
### 13.3 Recommendation
1. **Ship Codepanion this week.** Not perfect. Just `review` command, working, on PyPI.
2. **Post it.** Twitter, HN, Reddit. See what happens.
3. **Talk to 5 solo devs.** Not to pitch — to listen. "What's the most annoying part of working alone?" See if RoboCo's value prop resonates.
4. **Forget company formation** until someone gives you money.
5. **Set a decision point.** "If I don't have 100 Codepanion users in 60 days, I'll re-evaluate the approach."
You've built something real. That puts you ahead of 95% of people who talk about AI agents. The question is whether "real" translates to "wanted."
Only the market can answer that. And the market only answers if you ask.
---
## 14. Next Steps & Action Items
### 14.1 Immediate: API-First Initiative (This Week)
**First task for RoboCo itself:**
- [ ] **Auditor: Conduct backdoor audit** — Review all frontend → backend communication, flag every direct DB access, produce report
- [ ] **Product Owner: Define Codepanion API contract** — What endpoints does it need? Minimal surface area.
- [ ] **Product Owner: Prioritize cleanup work** — Which backdoors are blockers vs. nice-to-have?
- [ ] **Head of Marketing: Draft Codepanion positioning** — README content, value prop
### 14.2 Short-term (Next 2-4 Weeks)
- [ ] **Fix critical backdoors** — Route through API properly
- [ ] **Implement Codepanion endpoints** — `POST /sessions`, `POST /sessions/:id/messages`, `GET /sessions`
- [ ] **Ship Codepanion v0.1** — Publish to PyPI (standalone mode first)
- [ ] **Landing page** — Simple, one-page site
- [ ] **Twitter announcement** — Thread about the tool
- [ ] **HN post** — "Show HN: Codepanion AI code reviewer CLI"
### 14.3 Medium-term (1-3 Months)
- [ ] **Add more Codepanion commands** — `docs`, `think`, `qa`
- [ ] **Implement connected mode** — Codepanion → RoboCo API for history/sync
- [ ] **Git integration in RoboCo** — Agents can commit, push, create PRs
- [ ] **Collect feedback** — Iterate based on early users
- [ ] **Set up Partita IVA** — When ready to charge
- [ ] **Stripe integration** — Payments infrastructure
### 14.4 Longer-term (3-6 Months)
- [ ] **VS Code extension** — Codepanion in the editor
- [ ] **GitHub App** — Auto-review PRs
- [ ] **Team features** — Shared RoboCo workspaces
- [ ] **Evaluate platform play** — Is there demand for the API directly?
- [ ] **Evaluate company structure** — Estonia vs staying with Partita IVA
### 14.5 Decision Point
**60 days from Codepanion launch:**
- If 100+ users → double down, add features, push toward Pro tier
- If <100 users → investigate why, pivot approach, or reconsider market
---
## Appendix A: Key Files Reference
### Backend (RoboCo)
| File | Purpose |
|------|---------|
| `roboco/agents/base.py` | Base agent class with lifecycle, LLM, MCP |
| `roboco/runtime/orchestrator.py` | Docker-based agent orchestrator |
| `roboco/models/base.py` | All enums and base model |
| `roboco/models/task.py` | Task model with full lifecycle |
| `roboco/db/tables.py` | SQLAlchemy table definitions |
| `roboco/mcp/task_server.py` | Task MCP tools |
| `roboco/api/routes/tasks.py` | Task API endpoints |
| `roboco/api/routes/orchestrator.py` | Orchestrator API endpoints |
### Frontend (RoboCo Panel)
| File | Purpose |
|------|---------|
| `src/types/index.ts` | TypeScript types matching backend |
| `src/app/(dashboard)/layout.tsx` | Dashboard layout |
| `src/components/kanban/` | Kanban board components |
| `src/store/` | Zustand state stores |
---
## Appendix B: Environment Variables
### RoboCo Backend
| Variable | Description | Default |
|----------|-------------|---------|
| `ANTHROPIC_API_KEY` | Claude API key | Required |
| `DATABASE_URL` | PostgreSQL connection string | Required |
| `ROBOCO_HOST` | API host | `0.0.0.0` |
| `ROBOCO_PORT` | API port | `8000` |
| `ROBOCO_HOST_CLAUDE_DIR` | Host path to `.claude` | `~/.claude` |
| `ROBOCO_HOST_PROJECT_DIR` | Host path to project root | Required in Docker |
| `ROBOCO_HOST_DATA_DIR` | Host path to data directory | Required in Docker |
### Codepanion
| Variable | Description | Default |
|----------|-------------|---------|
| `ANTHROPIC_API_KEY` | Claude API key | Required |
| `CODEPANION_MODEL` | Model to use | `claude-sonnet-4-20250514` |
---
## Appendix C: Glossary
| Term | Definition |
|------|------------|
| **Agent** | An AI entity with a specific role (dev, QA, PM, etc.) |
| **Blueprint** | System prompt that defines an agent's behavior |
| **Cell** | A team unit (backend, frontend, ux_ui) |
| **Channel** | Communication space for a group of agents |
| **Dispatcher** | Orchestrator component that checks for and assigns work |
| **Handoff** | Documentation package from dev to documenter |
| **Journal** | Agent's private reflection space |
| **MCP** | Model Context Protocol — tool access system |
| **Orchestrator** | Central controller that spawns/manages agents |
| **Session** | Scoped discussion within a channel group |
| **TOON** | Token-Oriented Object Notation — efficient data format |
---
## Appendix D: CEO Directive - API-First Architecture
**From:** CEO
**To:** Board (Product Owner, Head of Marketing, Auditor)
**Priority:** High
**Date:** 2024-12-23
---
### Strategic Context
We're positioning RoboCo for a two-phase growth strategy:
**Phase B (Now):** Two products, one backend. RoboCo Panel (full experience) and Codepanion (lightweight CLI, open source). Both consume the same API.
**Phase C (Future):** Platform play. The orchestration API becomes the product. Third parties build on us.
For this to work, **the API must be the only way in.** No backdoors. No direct DB access from frontends. No "just this once" shortcuts.
If we can't use our own API to build our own products, no one else can either.
---
### Objective
**Establish API-first architecture across the entire system.**
This means:
1. Every action the Panel takes goes through the public API
2. Every action Codepanion will take goes through the public API
3. Internal services communicate through well-defined interfaces
4. The API is documented, consistent, and pleasant to use
---
### Success Criteria
- [ ] Zero direct database access from Panel frontend
- [ ] Zero direct core imports that bypass API in frontend code
- [ ] Codepanion can connect and perform basic operations (create session, send message, retrieve history)
- [ ] API documentation covers all endpoints Codepanion needs
- [ ] Auditor has verified no backdoors remain in critical paths
---
### Board Responsibilities
#### Product Owner
1. **Define the API contract** for Codepanion integration
- What endpoints does Codepanion need?
- What's the minimal surface area?
- What can wait for v2?
2. **Prioritize the cleanup work**
- Which backdoors are blockers vs. nice-to-have?
- What's the MVP for "API-first"?
3. **Approve the architecture decisions**
- Review proposals from Main PM
- Sign off on API design
#### Head of Marketing
1. **Prepare positioning for Codepanion**
- Open source CLI angle
- "Works standalone, better connected" messaging
- Developer-first tone
2. **Draft initial README/landing content**
- What does Codepanion do?
- Why would a dev use it?
- How does it connect to RoboCo?
3. **Identify launch channels**
- Where do we announce?
- What's the content calendar?
#### Auditor
1. **Conduct the backdoor audit**
- Review all frontend → backend communication
- Flag every direct DB access
- Flag every import that bypasses API layer
- Produce audit report with file, line, severity
2. **Verify fixes**
- After cleanup, re-audit critical paths
- Confirm API-first compliance
3. **Establish ongoing monitoring**
- How do we prevent new backdoors?
- What checks should be part of code review?
---
### Deliverables to Main PM
Once board alignment is complete, hand off to Main PM:
1. **Audit Report** (from Auditor)
- List of all backdoors with severity ratings
2. **API Specification** (from Product Owner)
- Endpoints needed for Codepanion MVP
- Request/response schemas
- Authentication approach
3. **Prioritized Task List** (from Product Owner)
- Ordered by: blockers first, then high-value, then nice-to-have
4. **Marketing Brief** (from Head of Marketing)
- Positioning document for Codepanion
- README draft
- Launch plan outline
---
### Constraints
- **Timeline:** Codepanion MVP should be shippable within 2 weeks of Main PM receiving handoff
- **Scope:** Fix what's necessary for Codepanion. Don't boil the ocean.
- **Principle:** If in doubt, expose it through API. We'd rather have a slightly larger API surface than hidden backdoors.
---
### Notes on Documentation
For now:
- Task documentation lives in the task's session (tied via session-task link)
- Technical documentation (API docs, architecture) should be markdown in the repo
- User-facing documentation (README, guides) prepared by Documenter roles, reviewed by PM
Future consideration: dedicated documentation system. But not now.
---
### Notes on Git Integration
Git integration is coming. For this initiative:
- All code changes go through PRs
- PRs link to task IDs in commit messages
- Once git integration lands, this becomes automated
For now, manual discipline.
---
### Communication
- Board discussions in `management` channel
- Main PM coordination in `cross-cell` channel
- Cell work in respective cell channels (`backend-cell`, `frontend-cell`, `uxui-cell`)
- Each task gets its own session within the appropriate channel
- Journals capture decisions, learnings, blockers
---
### Final Word
This is the foundation. If we get API-first right, everything else becomes easier — Codepanion, platform expansion, third-party integrations, even our own Panel development.
If we get it wrong, we're building on sand.
Make it solid.
---
**CEO**
---
*End of Summary*