# yokesh-ragav/agentforge-ai-engineering-team architecture

> Architecture diagram of the GitHub repository yokesh-ragav/agentforge-ai-engineering-team, generated by GitDiagram from its file tree, README and a sample of source files (last updated 2026-11-11). It is an AI-made overview: check details against the source.

- Interactive diagram: https://gitdiagram.com/yokesh-ragav/agentforge-ai-engineering-team
- Repository: https://github.com/yokesh-ragav/agentforge-ai-engineering-team

## Overview

This repository is an AI engineering team that turns a user’s software requirement into a web application, runs browser tests, and can route failures through repair before reporting deployment readiness. The main control flow is implemented by the LangGraph team runner; the planner, coder, tester, and repair scripts are invoked as subprocesses. The generated_app directory also contains a standalone finance app, including a backup implementation. The Streamlit interface is present in the tree, but its behavior was not sampled, so its connections are not asserted.

Main entry points: [`team.py`](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/team.py) (Team Runner), [`coder.py`](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/coder.py) (Coding Agent), [`tester.py`](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/tester.py) (Browser Tester), [`generated_app`](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/tree/main/generated_app) (Generated Web Files)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_orchestration["Team Orchestration"]
  node_team["Team Runner<br/>[team.py]"]
  node_streamlit["Streamlit Interface<br/>[streamlit_app.py]"]
  node_deploy["Readiness Decision<br/>[team.py]"]
end

subgraph group_agents["Engineering Agents"]
  node_planner["Planner Agent<br/>[planner.py]"]
  node_coder["Coding Agent<br/>[coder.py]"]
end

subgraph group_quality["Testing and Repair"]
  node_tester["Browser Tester<br/>[tester.py]"]
  node_repair["Repair Agent<br/>[repair.py]"]
end

subgraph group_generated["Generated Application"]
  node_finance["Finance App<br/>[script.js]"]
  node_finance_backup["Earlier Finance App<br/>[script_backup.js]"]
  node_app_files["Generated Web Files"]
end

node_user(("Requirement Author"))

node_user -->|"enters requirement"| node_team
node_team -->|"runs"| node_planner
node_team -->|"runs"| node_coder
node_team -->|"runs"| node_tester
node_team -->|"runs"| node_repair
node_team -->|"routes result"| node_deploy
node_planner -->|"provides plan"| node_coder
node_coder -->|"writes files"| node_app_files
node_tester -.->|"tests generated app"| node_app_files
node_repair -->|"reads and rewrites"| node_app_files
node_team -->|"retries after repair"| node_tester

click node_team "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/team.py"
click node_streamlit "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/streamlit_app.py"
click node_planner "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/planner.py"
click node_coder "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/coder.py"
click node_tester "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/tester.py"
click node_repair "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/repair.py"
click node_deploy "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/team.py"
click node_finance "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/generated_app/script.js"
click node_finance_backup "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/generated_app/script_backup.js"
click node_app_files "https://github.com/yokesh-ragav/agentforge-ai-engineering-team/tree/main/generated_app"

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_team,node_streamlit,node_deploy toneBlue
class node_planner,node_coder toneAmber
class node_tester,node_repair toneMint
class node_finance,node_finance_backup,node_app_files toneRose
class node_user toneIndigo
```

## Components

### Team Orchestration

- [Team Runner](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/team.py): `team.py`
- [Streamlit Interface](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/streamlit_app.py): `streamlit_app.py`
- [Readiness Decision](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/team.py): `team.py`

### Engineering Agents

- [Planner Agent](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/planner.py): `planner.py`
- [Coding Agent](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/coder.py): `coder.py`

### Testing and Repair

- [Browser Tester](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/tester.py): `tester.py`
- [Repair Agent](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/repair.py): `repair.py`

### Generated Application

- [Finance App](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/generated_app/script.js): `generated_app/script.js`
- [Earlier Finance App](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/blob/main/generated_app/script_backup.js): `generated_app/script_backup.js`
- [Generated Web Files](https://github.com/yokesh-ragav/agentforge-ai-engineering-team/tree/main/generated_app): `generated_app`

### Other components

- **Requirement Author**

## Connections

- Requirement Author → Team Runner: enters requirement (evidence: `team.py`)
- Team Runner → Planner Agent: runs (evidence: `team.py`)
- Team Runner → Coding Agent: runs (evidence: `team.py`)
- Team Runner → Browser Tester: runs (evidence: `team.py`)
- Team Runner → Repair Agent: runs (evidence: `team.py`)
- Team Runner → Readiness Decision: routes result (evidence: `team.py`)
- Planner Agent → Coding Agent: provides plan
- Coding Agent → Generated Web Files: writes files (evidence: `coder.py`)
- Browser Tester → Generated Web Files: tests generated app
- Repair Agent → Generated Web Files: reads and rewrites (evidence: `repair.py`)
- Team Runner → Browser Tester: retries after repair (evidence: `team.py`)
