# matt-j-penny/capcut-kit architecture

> Architecture diagram of the GitHub repository matt-j-penny/capcut-kit, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-12). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/matt-j-penny/capcut-kit
- Repository: https://github.com/matt-j-penny/capcut-kit

## Overview

CapCut Bridge Kit is a command-line toolkit for editing CapCut projects through two distinct lanes: direct draft-file edits and live accessibility-driven UI control. Users invoke commands to build or modify a draft, inspect or control an open timeline, and export or capture results. The README documents the lane behavior and key operational constraints; the sampled script is incomplete, so internal dispatch and some integrations are shown only where documented.

Main entry points: [`capcut-bridge.py`](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py) (Command CLI), [`scroll_panel.py`](https://github.com/matt-j-penny/capcut-kit/blob/main/scroll_panel.py) (Scroll Event)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_drafts["Draft Editing"]
  node_edl["EDL Replay<br/>[capcut-bridge.py]"]
  node_draftops["Draft Operations<br/>[capcut-bridge.py]"]
  node_draftfiles[("Draft Files<br/>[capcut-bridge.py]")]
end

subgraph group_live["Live Editor"]
  node_livecontrols["Live Controls<br/>[capcut-bridge.py]"]
  node_timeline["Timeline Snapshot<br/>[capcut-bridge.py]"]
  node_export["Export Driver<br/>[capcut-bridge.py]"]
end

subgraph group_ops["App Operations"]
  node_appops["Launch and Quit<br/>[capcut-bridge.py]"]
  node_doctor["Doctor Checks<br/>[capcut-bridge.py]"]
  node_media["Media Tools"]
end

subgraph group_utilities["Utilities"]
  node_screenshot["Window Capture<br/>[capcut-bridge.py]"]
  node_scroll["Scroll Event<br/>[scroll_panel.py]"]
end

node_user(("User"))
node_cli["Command CLI<br/>[capcut-bridge.py]"]
node_capcut["CapCut Desktop"]
node_filesystem[("Local Filesystem")]

node_user -->|"runs commands"| node_cli
node_cli -->|"replays jobs"| node_edl
node_cli -->|"edits drafts"| node_draftops
node_edl -->|"writes draft"| node_draftfiles
node_draftops -->|"updates draft"| node_draftfiles
node_cli -->|"drives editor"| node_livecontrols
node_livecontrols -->|"clicks and controls"| node_capcut
node_cli -->|"reports state"| node_timeline
node_cli -->|"runs export"| node_export
node_export -->|"drives dialog"| node_capcut
node_export -->|"verifies output"| node_filesystem
node_cli -->|"launches or quits"| node_appops
node_appops -->|"controls lifecycle"| node_capcut
node_cli -->|"runs checks"| node_doctor
node_doctor -->|"tests draft round-trip"| node_capcut
node_draftops -->|"creates cover frame"| node_media
node_media -->|"reads and writes media"| node_filesystem
node_cli -->|"captures window"| node_screenshot
node_screenshot -->|"captures window"| node_capcut
node_user -->|"invokes utility"| node_scroll

click node_cli "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_edl "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_draftops "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_draftfiles "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_livecontrols "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_timeline "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_export "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_appops "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_doctor "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_screenshot "https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py"
click node_scroll "https://github.com/matt-j-penny/capcut-kit/blob/main/scroll_panel.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_edl,node_draftops,node_draftfiles,node_user toneBlue
class node_livecontrols,node_timeline,node_export,node_filesystem toneAmber
class node_appops,node_doctor,node_media toneMint
class node_screenshot,node_scroll toneRose
class node_cli toneTeal
class node_capcut toneIndigo
```

## Components

### Draft Editing

- [EDL Replay](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Draft Operations](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Draft Files](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`

### Live Editor

- [Live Controls](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Timeline Snapshot](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Export Driver](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`

### App Operations

- [Launch and Quit](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Doctor Checks](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- **Media Tools**

### Utilities

- [Window Capture](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- [Scroll Event](https://github.com/matt-j-penny/capcut-kit/blob/main/scroll_panel.py): `scroll_panel.py`

### Other components

- **User**
- [Command CLI](https://github.com/matt-j-penny/capcut-kit/blob/main/capcut-bridge.py): `capcut-bridge.py`
- **CapCut Desktop**
- **Local Filesystem**

## Connections

- User → Command CLI: runs commands (evidence: `README.md`)
- Command CLI → EDL Replay: replays jobs (evidence: `README.md`)
- Command CLI → Draft Operations: edits drafts (evidence: `README.md`)
- EDL Replay → Draft Files: writes draft (evidence: `README.md`)
- Draft Operations → Draft Files: updates draft (evidence: `capcut-bridge.py`)
- Command CLI → Live Controls: drives editor (evidence: `README.md`)
- Live Controls → CapCut Desktop: clicks and controls (evidence: `README.md`)
- Command CLI → Timeline Snapshot: reports state (evidence: `README.md`)
- Command CLI → Export Driver: runs export (evidence: `README.md`)
- Export Driver → CapCut Desktop: drives dialog (evidence: `README.md`)
- Export Driver → Local Filesystem: verifies output (evidence: `README.md`)
- Command CLI → Launch and Quit: launches or quits (evidence: `README.md`)
- Launch and Quit → CapCut Desktop: controls lifecycle (evidence: `README.md`)
- Command CLI → Doctor Checks: runs checks (evidence: `README.md`)
- Doctor Checks → CapCut Desktop: tests draft round-trip (evidence: `README.md`)
- Draft Operations → Media Tools: creates cover frame (evidence: `capcut-bridge.py`)
- Media Tools → Local Filesystem: reads and writes media
- Command CLI → Window Capture: captures window (evidence: `capcut-bridge.py`)
- Window Capture → CapCut Desktop: captures window (evidence: `capcut-bridge.py`)
- User → Scroll Event: invokes utility (evidence: `scroll_panel.py`)
