# anthropics/cwc-workshops architecture

> Architecture diagram of the GitHub repository anthropics/cwc-workshops, 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/anthropics/cwc-workshops
- Repository: https://github.com/anthropics/cwc-workshops

## Overview

This repository is a collection of Code with Claude workshop projects, not one runtime application. The README describes each workshop’s learning workflow; the graph groups the workshops by product focus and shows their documented major stages. Source excerpts confirm selected implementation details, including Deal Desk session creation, Research Desk analysis and scorecards, and Agent Battle event APIs. Some README-listed workshops are absent from the supplied tree, so their implementation paths and wiring are not represented.

Main entry points: [`agent-battle/bot/bot.js`](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/bot/bot.js) (Game bot), [`agent-battle/event/server.mjs`](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/server.mjs) (Event server), [`agent-decomposition/agents`](https://github.com/anthropics/cwc-workshops/tree/main/agent-decomposition/agents) (Agent decomposition), [`ship-your-first-managed-agent/app.py`](https://github.com/anthropics/cwc-workshops/blob/main/ship-your-first-managed-agent/app.py) (Managed-agent incident dashboard)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_agent_systems["Agent Systems"]
  node_decompose["Agent decomposition"]
  node_decompose_evals["Decomposition evals"]
  node_managed_agent["Managed-agent incident dashboard<br/>[app.py]"]
  node_incident_agent["Incident agent<br/>[agent.py]"]
end

subgraph group_evaluation["Evaluation"]
  node_eval_agent["PPTX agent evaluation<br/>[eval-runner.ts]"]
  node_pptx_graders["PPTX graders"]
  node_verify_app["Verified React app<br/>[App.tsx]"]
  node_verify_runner["Verification runner<br/>[runner.ts]"]
end

subgraph group_applications["Agent Applications"]
  node_deal_ui["Deal Desk interface<br/>[PipelineRail.tsx]"]
  node_deal_sessions["Deal Desk sessions<br/>[route.ts]"]
  node_managed_agents["Managed agent team<br/>[anthropic.ts]"]
  node_research_console["Research Desk console<br/>[page.tsx]"]
  node_research_api["Research Desk API<br/>[route.ts]"]
  node_analysis["Ticker analysis<br/>[analysis.ts]"]
  node_scorecards["Outcome scorecards<br/>[scorecard.ts]"]
  node_deployment["Weekly memo deployment<br/>[route.ts]"]
end

subgraph group_competition["Agent Battle"]
  node_battle_bot["Game bot<br/>[bot.js]"]
  node_battle_harness["Decision probes"]
  node_event_server["Event server<br/>[server.mjs]"]
  node_leaderboard[("Leaderboard state<br/>[board.mjs]")]
  node_relay["Bot relay<br/>[relay.mjs]"]
end

node_learner(("Workshop participant"))

node_learner -->|"decomposes agent"| node_decompose
node_decompose -->|"evaluated by"| node_decompose_evals
node_learner -->|"implements agent"| node_managed_agent
node_managed_agent -->|"chats with"| node_incident_agent
node_learner -->|"configures bot"| node_battle_bot
node_battle_harness -->|"probes decisions"| node_battle_bot
node_battle_bot -->|"uses tools"| node_relay
node_event_server -->|"attaches relay"| node_relay
node_event_server -->|"records results"| node_leaderboard
node_learner -->|"iterates agent"| node_eval_agent
node_eval_agent -->|"grades output"| node_pptx_graders
node_learner -->|"builds interface"| node_verify_app
node_verify_runner -->|"verifies runtime"| node_verify_app
node_learner -->|"uses Deal Desk"| node_deal_ui
node_deal_ui -->|"creates sessions"| node_deal_sessions
node_deal_sessions -->|"starts session"| node_managed_agents
node_learner -->|"uses console"| node_research_console
node_research_console -->|"requests analysis"| node_research_api
node_research_api -->|"dispatches analysis"| node_analysis
node_analysis -->|"produces grades"| node_scorecards
node_learner -->|"schedules memo"| node_deployment

click node_decompose "https://github.com/anthropics/cwc-workshops/tree/main/agent-decomposition/agents"
click node_decompose_evals "https://github.com/anthropics/cwc-workshops/tree/main/agent-decomposition/evals"
click node_managed_agent "https://github.com/anthropics/cwc-workshops/blob/main/ship-your-first-managed-agent/app.py"
click node_incident_agent "https://github.com/anthropics/cwc-workshops/blob/main/ship-your-first-managed-agent/agent.py"
click node_battle_bot "https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/bot/bot.js"
click node_battle_harness "https://github.com/anthropics/cwc-workshops/tree/main/agent-battle/harness"
click node_event_server "https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/server.mjs"
click node_leaderboard "https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/lib/board.mjs"
click node_relay "https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/lib/relay.mjs"
click node_eval_agent "https://github.com/anthropics/cwc-workshops/blob/main/eval-driven-agent-development/src/eval-runner.ts"
click node_pptx_graders "https://github.com/anthropics/cwc-workshops/tree/main/eval-driven-agent-development/src/graders"
click node_verify_app "https://github.com/anthropics/cwc-workshops/blob/main/how-we-claude-code/phase-3-verify/src/App.tsx"
click node_verify_runner "https://github.com/anthropics/cwc-workshops/blob/main/how-we-claude-code/phase-3-verify/src/verify/core/runner.ts"
click node_deal_ui "https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/components/PipelineRail.tsx"
click node_deal_sessions "https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/app/api/sessions/route.ts"
click node_managed_agents "https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/lib/anthropic.ts"
click node_research_console "https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/page.tsx"
click node_research_api "https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/api/desk/analyze/route.ts"
click node_analysis "https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/lib/analysis.ts"
click node_scorecards "https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/lib/scorecard.ts"
click node_deployment "https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/api/deployments/route.ts"

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_decompose,node_decompose_evals,node_managed_agent,node_incident_agent toneBlue
class node_eval_agent,node_pptx_graders,node_verify_app,node_verify_runner toneAmber
class node_deal_ui,node_deal_sessions,node_managed_agents,node_research_console,node_research_api,node_analysis,node_scorecards,node_deployment toneMint
class node_battle_bot,node_battle_harness,node_event_server,node_leaderboard,node_relay toneRose
class node_learner toneIndigo
```

## Components

### Agent Systems

- [Agent decomposition](https://github.com/anthropics/cwc-workshops/tree/main/agent-decomposition/agents): `agent-decomposition/agents`
- [Decomposition evals](https://github.com/anthropics/cwc-workshops/tree/main/agent-decomposition/evals): `agent-decomposition/evals`
- [Managed-agent incident dashboard](https://github.com/anthropics/cwc-workshops/blob/main/ship-your-first-managed-agent/app.py): `ship-your-first-managed-agent/app.py`
- [Incident agent](https://github.com/anthropics/cwc-workshops/blob/main/ship-your-first-managed-agent/agent.py): `ship-your-first-managed-agent/agent.py`

### Evaluation

- [PPTX agent evaluation](https://github.com/anthropics/cwc-workshops/blob/main/eval-driven-agent-development/src/eval-runner.ts): `eval-driven-agent-development/src/eval-runner.ts`
- [PPTX graders](https://github.com/anthropics/cwc-workshops/tree/main/eval-driven-agent-development/src/graders): `eval-driven-agent-development/src/graders`
- [Verified React app](https://github.com/anthropics/cwc-workshops/blob/main/how-we-claude-code/phase-3-verify/src/App.tsx): `how-we-claude-code/phase-3-verify/src/App.tsx`
- [Verification runner](https://github.com/anthropics/cwc-workshops/blob/main/how-we-claude-code/phase-3-verify/src/verify/core/runner.ts): `how-we-claude-code/phase-3-verify/src/verify/core/runner.ts`

### Agent Applications

- [Deal Desk interface](https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/components/PipelineRail.tsx): `production-ready-agent/solution/components/PipelineRail.tsx`
- [Deal Desk sessions](https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/app/api/sessions/route.ts): `production-ready-agent/solution/app/api/sessions/route.ts`
- [Managed agent team](https://github.com/anthropics/cwc-workshops/blob/main/production-ready-agent/solution/lib/anthropic.ts): `production-ready-agent/solution/lib/anthropic.ts`
- [Research Desk console](https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/page.tsx): `research-desk/src/app/page.tsx`
- [Research Desk API](https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/api/desk/analyze/route.ts): `research-desk/src/app/api/desk/analyze/route.ts`
- [Ticker analysis](https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/lib/analysis.ts): `research-desk/src/lib/analysis.ts`
- [Outcome scorecards](https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/lib/scorecard.ts): `research-desk/src/lib/scorecard.ts`
- [Weekly memo deployment](https://github.com/anthropics/cwc-workshops/blob/main/research-desk/src/app/api/deployments/route.ts): `research-desk/src/app/api/deployments/route.ts`

### Agent Battle

- [Game bot](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/bot/bot.js): `agent-battle/bot/bot.js`
- [Decision probes](https://github.com/anthropics/cwc-workshops/tree/main/agent-battle/harness): `agent-battle/harness`
- [Event server](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/server.mjs): `agent-battle/event/server.mjs`
- [Leaderboard state](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/lib/board.mjs): `agent-battle/event/lib/board.mjs`
- [Bot relay](https://github.com/anthropics/cwc-workshops/blob/main/agent-battle/event/lib/relay.mjs): `agent-battle/event/lib/relay.mjs`

### Other components

- **Workshop participant**

## Connections

- Workshop participant → Agent decomposition: decomposes agent
- Agent decomposition → Decomposition evals: evaluated by
- Workshop participant → Managed-agent incident dashboard: implements agent
- Managed-agent incident dashboard → Incident agent: chats with
- Workshop participant → Game bot: configures bot
- Decision probes → Game bot: probes decisions
- Game bot → Bot relay: uses tools
- Event server → Bot relay: attaches relay
- Event server → Leaderboard state: records results
- Workshop participant → PPTX agent evaluation: iterates agent
- PPTX agent evaluation → PPTX graders: grades output
- Workshop participant → Verified React app: builds interface
- Verification runner → Verified React app: verifies runtime
- Workshop participant → Deal Desk interface: uses Deal Desk
- Deal Desk interface → Deal Desk sessions: creates sessions
- Deal Desk sessions → Managed agent team: starts session
- Workshop participant → Research Desk console: uses console
- Research Desk console → Research Desk API: requests analysis
- Research Desk API → Ticker analysis: dispatches analysis
- Ticker analysis → Outcome scorecards: produces grades
- Workshop participant → Weekly memo deployment: schedules memo
