# vitotafuni/bemyagent architecture

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

- Interactive diagram: https://gitdiagram.com/vitotafuni/bemyagent
- Repository: https://github.com/vitotafuni/bemyagent

## Overview

BEMYAGENT.md is a markdown protocol that guides an AI assistant through bootstrapping a project workspace and using it for structured task work. The main workflow is bootstrap, restore context, Think → Task → Execute → Verify, then present the result for human validation. The README also documents persistent project memory, lazy loading, hierarchical task decomposition, validation criteria, pacing modes, model switching, and native-rule self-registration. The workspace files in this repository show an instance of the protocol; detailed implementation wiring is not applicable to this prompt-based product.

Main entry points: [`BEMYAGENT.md`](https://github.com/vitotafuni/bemyagent/blob/main/BEMYAGENT.md) (Bootstrap Prompt), [`.bemyagent/work/_template_think.md`](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/work/_template_think.md) (Think Phase), [`.bemyagent/work`](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work) (Task Plans), [`.bemyagent/docs/00-ai-rules.md`](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md) (AI Rules)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_bootstrap["Bootstrap"]
  node_bootstrap_file["Bootstrap Prompt<br/>[BEMYAGENT.md]"]
end

subgraph group_memory["Project Memory"]
  node_ai_rules["AI Rules<br/>[00-ai-rules.md]"]
  node_overview["Project Overview<br/>[01-overview.md]"]
  node_architecture["Architecture Notes<br/>[02-architecture.md]"]
  node_code_map["Code Map<br/>[03-code-map.md]"]
  node_tech_stack["Tech Stack<br/>[04-tech-stack.md]"]
  node_decisions["Decisions Log"]
  node_implementation_plan["Implementation Plan"]
  node_on_demand_docs["On-demand Docs<br/>[docs]"]
end

subgraph group_cycle["Task Cycle"]
  node_work_tree["Task Workspace<br/>[work]"]
  node_think["Think Phase<br/>[_template_think.md]"]
  node_task_plans["Task Plans<br/>[work]"]
  node_execute["Execute Phase<br/>[work]"]
  node_verify["Verify Phase<br/>[work]"]
end

subgraph group_controls["Workflow Controls"]
  node_pacing["Pacing Modes<br/>[00-ai-rules.md]"]
  node_model_switching["Model Switching<br/>[00-ai-rules.md]"]
  node_native_rules["Native Rule Files"]
end

node_human(("Project Human"))
node_assistant(("AI Assistant"))

node_human -->|"provides"| node_bootstrap_file
node_bootstrap_file -->|"instructs"| node_assistant
node_assistant -->|"creates workspace"| node_ai_rules
node_assistant -->|"creates workspace"| node_overview
node_assistant -->|"creates workspace"| node_architecture
node_assistant -->|"creates workspace"| node_code_map
node_assistant -->|"creates workspace"| node_tech_stack
node_assistant -->|"creates workspace"| node_decisions
node_assistant -->|"creates workspace"| node_implementation_plan
node_assistant -->|"creates workspace"| node_work_tree
node_assistant -->|"configures"| node_native_rules
node_assistant -->|"reads each task"| node_ai_rules
node_assistant -->|"restores context"| node_overview
node_assistant -->|"restores context"| node_architecture
node_assistant -->|"restores context"| node_code_map
node_assistant -->|"restores context"| node_tech_stack
node_assistant -->|"reads current task"| node_work_tree
node_assistant -.->|"loads when needed"| node_on_demand_docs
node_assistant -->|"records strategy"| node_think
node_think -->|"guides planning"| node_task_plans
node_task_plans -->|"guides execution"| node_execute
node_execute -->|"provides output"| node_verify
node_verify -->|"presents verdict"| node_human
node_pacing -->|"sets approval gates"| node_assistant
node_assistant -->|"requests approval"| node_human
node_model_switching -.->|"selects model tier"| node_assistant

click node_bootstrap_file "https://github.com/vitotafuni/bemyagent/blob/main/BEMYAGENT.md"
click node_ai_rules "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md"
click node_overview "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/01-overview.md"
click node_architecture "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/02-architecture.md"
click node_code_map "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/03-code-map.md"
click node_tech_stack "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/04-tech-stack.md"
click node_decisions "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/05-decisions-and-issues.md"
click node_implementation_plan "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/06-implementation-plan.md"
click node_on_demand_docs "https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/docs"
click node_work_tree "https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work"
click node_think "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/work/_template_think.md"
click node_task_plans "https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work"
click node_execute "https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work"
click node_verify "https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work"
click node_pacing "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md"
click node_model_switching "https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md"

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_bootstrap_file toneBlue
class node_ai_rules,node_overview,node_architecture,node_code_map,node_tech_stack,node_decisions,node_implementation_plan,node_on_demand_docs toneAmber
class node_work_tree,node_think,node_task_plans,node_execute,node_verify toneMint
class node_pacing,node_model_switching,node_native_rules toneRose
class node_human,node_assistant toneIndigo
```

## Components

### Bootstrap

- [Bootstrap Prompt](https://github.com/vitotafuni/bemyagent/blob/main/BEMYAGENT.md): `BEMYAGENT.md`

### Project Memory

- [AI Rules](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md): `.bemyagent/docs/00-ai-rules.md`
- [Project Overview](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/01-overview.md): `.bemyagent/docs/01-overview.md`
- [Architecture Notes](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/02-architecture.md): `.bemyagent/docs/02-architecture.md`
- [Code Map](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/03-code-map.md): `.bemyagent/docs/03-code-map.md`
- [Tech Stack](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/04-tech-stack.md): `.bemyagent/docs/04-tech-stack.md`
- [Decisions Log](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/05-decisions-and-issues.md): `.bemyagent/docs/05-decisions-and-issues.md`
- [Implementation Plan](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/06-implementation-plan.md): `.bemyagent/docs/06-implementation-plan.md`
- [On-demand Docs](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/docs): `.bemyagent/docs`

### Task Cycle

- [Task Workspace](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work): `.bemyagent/work`
- [Think Phase](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/work/_template_think.md): `.bemyagent/work/_template_think.md`
- [Task Plans](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work): `.bemyagent/work`
- [Execute Phase](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work): `.bemyagent/work`
- [Verify Phase](https://github.com/vitotafuni/bemyagent/tree/main/.bemyagent/work): `.bemyagent/work`

### Workflow Controls

- [Pacing Modes](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md): `.bemyagent/docs/00-ai-rules.md`
- [Model Switching](https://github.com/vitotafuni/bemyagent/blob/main/.bemyagent/docs/00-ai-rules.md): `.bemyagent/docs/00-ai-rules.md`
- **Native Rule Files**

### Other components

- **Project Human**
- **AI Assistant**

## Connections

- Project Human → Bootstrap Prompt: provides
- Bootstrap Prompt → AI Assistant: instructs
- AI Assistant → AI Rules: creates workspace
- AI Assistant → Project Overview: creates workspace
- AI Assistant → Architecture Notes: creates workspace
- AI Assistant → Code Map: creates workspace
- AI Assistant → Tech Stack: creates workspace
- AI Assistant → Decisions Log: creates workspace
- AI Assistant → Implementation Plan: creates workspace
- AI Assistant → Task Workspace: creates workspace
- AI Assistant → Native Rule Files: configures
- AI Assistant → AI Rules: reads each task
- AI Assistant → Project Overview: restores context
- AI Assistant → Architecture Notes: restores context
- AI Assistant → Code Map: restores context
- AI Assistant → Tech Stack: restores context
- AI Assistant → Task Workspace: reads current task
- AI Assistant → On-demand Docs: loads when needed
- AI Assistant → Think Phase: records strategy
- Think Phase → Task Plans: guides planning
- Task Plans → Execute Phase: guides execution
- Execute Phase → Verify Phase: provides output
- Verify Phase → Project Human: presents verdict
- Pacing Modes → AI Assistant: sets approval gates
- AI Assistant → Project Human: requests approval
- Model Switching → AI Assistant: selects model tier
