# inocuouscabbage/strategy-sprint architecture

> Architecture diagram of the GitHub repository inocuouscabbage/strategy-sprint, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-09-29). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/inocuouscabbage/strategy-sprint
- Repository: https://github.com/inocuouscabbage/strategy-sprint

## Overview

Strategy Sprint is a human-in-the-loop Claude Code workflow that turns client context into a marketing strategy, then can populate deliverable templates and generate a structured GTM plan from confirmed exercise sidecars. The graph preserves the README’s exercise capabilities and documented dependency order, alongside the two runtime code paths. Source excerpts are partial; uncertain code-level relationships are omitted rather than inferred.

Main entry points: [`.claude/skills/strategy-sprint/SKILL.md`](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/strategy-sprint/SKILL.md) (Sprint Orchestrator), [`autopopulate/cli.py`](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/cli.py) (Populate CLI), [`autopopulate/orchestrator.py`](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/orchestrator.py) (Population Orchestrator), [`pipelines/gtm_generator/cli.py`](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/cli.py) (GTM CLI)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_sprint["Strategy Sprint"]
  node_sprint_orchestrator["Sprint Orchestrator<br/>[SKILL.md]"]
  node_company["Company Overview<br/>[SKILL.md]"]
  node_icp["ICP Prioritization<br/>[SKILL.md]"]
  node_advantages["Marketing Advantages<br/>[SKILL.md]"]
  node_perceptions["Perceptions<br/>[SKILL.md]"]
  node_positioning["Positioning<br/>[SKILL.md]"]
  node_revenue["Revenue Levers<br/>[SKILL.md]"]
  node_channels["Channel Strategy<br/>[SKILL.md]"]
  node_tool_inventory["Tool Inventory<br/>[SKILL.md]"]
  node_big_bets["Big Bets<br/>[SKILL.md]"]
  node_brand_voice["Brand Voice<br/>[SKILL.md]"]
end

subgraph group_artifacts["Client Artifacts"]
  node_brief["Client Brief"]
  node_strategy_doc["Marketing Strategy"]
  node_sidecars["Exercise Sidecars"]
end

subgraph group_populate["Template Population"]
  node_populate_cli["Populate CLI<br/>[cli.py]"]
  node_sidecar_loader["Sidecar Gate<br/>[sidecar.py]"]
  node_fillmap["Fill Map<br/>[fillmap.py]"]
  node_populate_orchestrator["Population Orchestrator<br/>[orchestrator.py]"]
  node_docx_engine["DOCX Engine<br/>[docx.py]"]
  node_xlsx_engine["XLSX Engine<br/>[xlsx.py]"]
  node_templates["Client Templates"]
end

subgraph group_gtm["GTM Generation"]
  node_generator_cli["GTM CLI<br/>[cli.py]"]
  node_loader["Sprint Loader<br/>[loader.py]"]
  node_generator["Plan Generator<br/>[generator.py]"]
  node_builders["Section Builders"]
  node_validators["Plan Validators<br/>[validators.py]"]
  node_plan_writer["Plan Writer<br/>[plan_writer.py]"]
  node_gtm_plan["GTM Plan<br/>[output_models.py]"]
end

node_operator(("Consultant"))

node_operator -->|"invokes"| node_sprint_orchestrator
node_brief -->|"provides context"| node_sprint_orchestrator
node_sprint_orchestrator -->|"runs first"| node_company
node_sprint_orchestrator -->|"runs"| node_icp
node_icp -->|"informs"| node_advantages
node_advantages -->|"informs"| node_positioning
node_positioning -->|"informs"| node_perceptions
node_perceptions -->|"informs"| node_revenue
node_revenue -->|"informs"| node_channels
node_tool_inventory -->|"informs"| node_channels
node_channels -->|"informs"| node_big_bets
node_big_bets -->|"precedes"| node_brand_voice
node_sprint_orchestrator -->|"coordinates sections"| node_strategy_doc
node_operator -->|"confirms work"| node_company
node_operator -->|"confirms work"| node_icp
node_operator -->|"confirms work"| node_channels
node_company -.->|"writes structured output"| node_sidecars
node_sidecars -->|"feeds"| node_generator_cli
node_operator -->|"runs"| node_populate_cli
node_populate_cli -->|"loads confirmed data"| node_sidecar_loader
node_populate_cli -->|"resolves targets"| node_fillmap
node_populate_cli -->|"starts population"| node_populate_orchestrator
node_populate_orchestrator -->|"fills documents"| node_docx_engine
node_populate_orchestrator -->|"fills spreadsheets"| node_xlsx_engine
node_populate_orchestrator -.->|"copies and fills"| node_templates
node_generator_cli -->|"loads sprint artifacts"| node_loader
node_generator_cli -->|"requests generation"| node_generator
node_generator -->|"builds sections"| node_builders
node_generator -.->|"validates plan"| node_validators
node_generator -.->|"assembles"| node_gtm_plan
node_generator_cli -->|"writes plan"| node_plan_writer
node_plan_writer -->|"serializes"| node_gtm_plan

click node_brief "https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts"
click node_sprint_orchestrator "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/strategy-sprint/SKILL.md"
click node_company "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/company-overview/SKILL.md"
click node_icp "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/icp-prioritization/SKILL.md"
click node_advantages "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/marketing-advantages/SKILL.md"
click node_perceptions "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/perceptions/SKILL.md"
click node_positioning "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/positioning/SKILL.md"
click node_revenue "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/revenue-levers/SKILL.md"
click node_channels "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/channel-strategy/SKILL.md"
click node_tool_inventory "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/tool-inventory/SKILL.md"
click node_big_bets "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/big-bets/SKILL.md"
click node_brand_voice "https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/brand-voice/SKILL.md"
click node_strategy_doc "https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts"
click node_sidecars "https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts"
click node_populate_cli "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/cli.py"
click node_sidecar_loader "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/sidecar.py"
click node_fillmap "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/fillmap.py"
click node_populate_orchestrator "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/orchestrator.py"
click node_docx_engine "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/engines/docx.py"
click node_xlsx_engine "https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/engines/xlsx.py"
click node_templates "https://github.com/inocuouscabbage/strategy-sprint/tree/main/autopopulate"
click node_generator_cli "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/cli.py"
click node_loader "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/loader.py"
click node_generator "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/generator.py"
click node_builders "https://github.com/inocuouscabbage/strategy-sprint/tree/main/pipelines/gtm_generator/section_builders"
click node_validators "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/validators.py"
click node_plan_writer "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/plan_writer.py"
click node_gtm_plan "https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/output_models.py"

classDef toneNeutral fill:#f8fafc,stroke:#334155,stroke-width:1.5px,color:#0f172a
classDef toneBlue fill:#dbeafe,stroke:#2563eb,stroke-width:1.5px,color:#172554
classDef toneAmber fill:#fef3c7,stroke:#d97706,stroke-width:1.5px,color:#78350f
classDef toneMint fill:#dcfce7,stroke:#16a34a,stroke-width:1.5px,color:#14532d
classDef toneRose fill:#ffe4e6,stroke:#e11d48,stroke-width:1.5px,color:#881337
classDef toneIndigo fill:#e0e7ff,stroke:#4f46e5,stroke-width:1.5px,color:#312e81
classDef toneTeal fill:#ccfbf1,stroke:#0f766e,stroke-width:1.5px,color:#134e4a
class node_sprint_orchestrator,node_company,node_icp,node_advantages,node_perceptions,node_positioning,node_revenue,node_channels,node_tool_inventory,node_big_bets,node_brand_voice toneBlue
class node_brief,node_strategy_doc,node_sidecars toneAmber
class node_populate_cli,node_sidecar_loader,node_fillmap,node_populate_orchestrator,node_docx_engine,node_xlsx_engine,node_templates toneMint
class node_generator_cli,node_loader,node_generator,node_builders,node_validators,node_plan_writer,node_gtm_plan toneRose
class node_operator toneIndigo
```

## Components

### Strategy Sprint

- [Sprint Orchestrator](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/strategy-sprint/SKILL.md): `.claude/skills/strategy-sprint/SKILL.md`
- [Company Overview](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/company-overview/SKILL.md): `.claude/skills/company-overview/SKILL.md`
- [ICP Prioritization](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/icp-prioritization/SKILL.md): `.claude/skills/icp-prioritization/SKILL.md`
- [Marketing Advantages](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/marketing-advantages/SKILL.md): `.claude/skills/marketing-advantages/SKILL.md`
- [Perceptions](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/perceptions/SKILL.md): `.claude/skills/perceptions/SKILL.md`
- [Positioning](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/positioning/SKILL.md): `.claude/skills/positioning/SKILL.md`
- [Revenue Levers](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/revenue-levers/SKILL.md): `.claude/skills/revenue-levers/SKILL.md`
- [Channel Strategy](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/channel-strategy/SKILL.md): `.claude/skills/channel-strategy/SKILL.md`
- [Tool Inventory](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/tool-inventory/SKILL.md): `.claude/skills/tool-inventory/SKILL.md`
- [Big Bets](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/big-bets/SKILL.md): `.claude/skills/big-bets/SKILL.md`
- [Brand Voice](https://github.com/inocuouscabbage/strategy-sprint/blob/main/.claude/skills/brand-voice/SKILL.md): `.claude/skills/brand-voice/SKILL.md`

### Client Artifacts

- [Client Brief](https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts): `artifacts`
- [Marketing Strategy](https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts): `artifacts`
- [Exercise Sidecars](https://github.com/inocuouscabbage/strategy-sprint/tree/main/artifacts): `artifacts`

### Template Population

- [Populate CLI](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/cli.py): `autopopulate/cli.py`
- [Sidecar Gate](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/sidecar.py): `autopopulate/sidecar.py`
- [Fill Map](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/fillmap.py): `autopopulate/fillmap.py`
- [Population Orchestrator](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/orchestrator.py): `autopopulate/orchestrator.py`
- [DOCX Engine](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/engines/docx.py): `autopopulate/engines/docx.py`
- [XLSX Engine](https://github.com/inocuouscabbage/strategy-sprint/blob/main/autopopulate/engines/xlsx.py): `autopopulate/engines/xlsx.py`
- [Client Templates](https://github.com/inocuouscabbage/strategy-sprint/tree/main/autopopulate): `autopopulate`

### GTM Generation

- [GTM CLI](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/cli.py): `pipelines/gtm_generator/cli.py`
- [Sprint Loader](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/loader.py): `pipelines/gtm_generator/loader.py`
- [Plan Generator](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/generator.py): `pipelines/gtm_generator/generator.py`
- [Section Builders](https://github.com/inocuouscabbage/strategy-sprint/tree/main/pipelines/gtm_generator/section_builders): `pipelines/gtm_generator/section_builders`
- [Plan Validators](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/validators.py): `pipelines/gtm_generator/validators.py`
- [Plan Writer](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/plan_writer.py): `pipelines/gtm_generator/plan_writer.py`
- [GTM Plan](https://github.com/inocuouscabbage/strategy-sprint/blob/main/pipelines/gtm_generator/output_models.py): `pipelines/gtm_generator/output_models.py`

### Other components

- **Consultant**

## Connections

- Consultant → Sprint Orchestrator: invokes (evidence: `README.md`)
- Client Brief → Sprint Orchestrator: provides context (evidence: `README.md`)
- Sprint Orchestrator → Company Overview: runs first (evidence: `README.md`)
- Sprint Orchestrator → ICP Prioritization: runs (evidence: `README.md`)
- ICP Prioritization → Marketing Advantages: informs (evidence: `README.md`)
- Marketing Advantages → Positioning: informs (evidence: `README.md`)
- Positioning → Perceptions: informs (evidence: `README.md`)
- Perceptions → Revenue Levers: informs (evidence: `README.md`)
- Revenue Levers → Channel Strategy: informs (evidence: `README.md`)
- Tool Inventory → Channel Strategy: informs (evidence: `README.md`)
- Channel Strategy → Big Bets: informs (evidence: `README.md`)
- Big Bets → Brand Voice: precedes (evidence: `README.md`)
- Sprint Orchestrator → Marketing Strategy: coordinates sections (evidence: `README.md`)
- Consultant → Company Overview: confirms work (evidence: `README.md`)
- Consultant → ICP Prioritization: confirms work (evidence: `README.md`)
- Consultant → Channel Strategy: confirms work (evidence: `README.md`)
- Company Overview → Exercise Sidecars: writes structured output
- Exercise Sidecars → GTM CLI: feeds (evidence: `README.md`)
- Consultant → Populate CLI: runs (evidence: `autopopulate/cli.py`)
- Populate CLI → Sidecar Gate: loads confirmed data (evidence: `autopopulate/cli.py`)
- Populate CLI → Fill Map: resolves targets (evidence: `autopopulate/cli.py`)
- Populate CLI → Population Orchestrator: starts population (evidence: `autopopulate/cli.py`)
- Population Orchestrator → DOCX Engine: fills documents (evidence: `autopopulate/orchestrator.py`)
- Population Orchestrator → XLSX Engine: fills spreadsheets (evidence: `autopopulate/orchestrator.py`)
- Population Orchestrator → Client Templates: copies and fills (evidence: `autopopulate/orchestrator.py`)
- GTM CLI → Sprint Loader: loads sprint artifacts (evidence: `pipelines/gtm_generator/cli.py`)
- GTM CLI → Plan Generator: requests generation (evidence: `pipelines/gtm_generator/cli.py`)
- Plan Generator → Section Builders: builds sections (evidence: `pipelines/gtm_generator/generator.py`)
- Plan Generator → Plan Validators: validates plan
- Plan Generator → GTM Plan: assembles (evidence: `pipelines/gtm_generator/generator.py`)
- GTM CLI → Plan Writer: writes plan (evidence: `pipelines/gtm_generator/cli.py`)
- Plan Writer → GTM Plan: serializes (evidence: `pipelines/gtm_generator/plan_writer.py`)
