# yellowscorpiondpiii/capstone-mira architecture

> Architecture diagram of the GitHub repository yellowscorpiondpiii/capstone-mira, 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/yellowscorpiondpiii/capstone-mira
- Repository: https://github.com/yellowscorpiondpiii/capstone-mira

## Overview

Mira is a multi-agent technical program management platform. A client submits a message to the application, which dispatches work through the orchestrator to planning, risk, reporting, governance, roadmap, and tool-recommendation agents; workflows can combine these stages and return results. Agents use a shared LLM interface with routed cloud or local backends. The product also advertises six collaboration adapters and webhook/event processing. Source evidence is partial, so adapter wiring and several documented subsystems are shown without inferred call chains.

Main entry points: [`mira/agents/orchestrator_agent.py`](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/orchestrator_agent.py) (Workflow orchestrator), [`mira/core/base_agent.py`](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/base_agent.py) (Agent runtime), [`mira/app.py`](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/app.py) (Mira application), [`mira/llm/router.py`](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/router.py) (LLM router)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_app["Application flow"]
  node_application["Mira application<br/>[app.py]"]
  node_settings["Configuration<br/>[settings.py]"]
end

subgraph group_agents["Workflow agents"]
  node_orchestrator["Workflow orchestrator"]
  node_plan["Project planning"]
  node_risk["Risk assessment"]
  node_status["Status reporting"]
  node_governance["Governance review"]
  node_roadmap["Roadmapping"]
  node_toolrec["Tool recommendation"]
  node_scaling["Scaling dashboard"]
  node_talent["Talent orchestration"]
  node_agentbase["Agent runtime<br/>[base_agent.py]"]
end

subgraph group_models["LLM services"]
  node_schemas["Output schemas<br/>[schemas.py]"]
  node_llmrouter["LLM router<br/>[router.py]"]
  node_llmbase["LLM interface<br/>[base.py]"]
  node_anthropic["Anthropic backend<br/>[anthropic_llm.py]"]
  node_openai["OpenAI backend<br/>[openai_llm.py]"]
  node_ollama["Ollama backend<br/>[ollama_llm.py]"]
end

subgraph group_connectors["Integrations"]
  node_integrations["Service adapters"]
  node_integrationbase["Adapter contract"]
end

subgraph group_events["Events and governance"]
  node_broker["Message broker<br/>[message_broker.py]"]
  node_webhooks["Webhook handler<br/>[webhook_handler.py]"]
  node_hitl["Human approval handling<br/>[hitl_handler.py]"]
  node_riskassessor["Governance risk assessor<br/>[risk_assessor.py]"]
  node_logging["Logging<br/>[logging.py]"]
  node_structuredlogging["Structured logging"]
  node_shutdown["Graceful shutdown"]
end

node_client(("Workflow client"))
node_externalservices(("Collaboration services"))

node_client -->|"submits work"| node_application
node_application -->|"registers and dispatches"| node_orchestrator
node_orchestrator -->|"routes plan tasks"| node_plan
node_orchestrator -->|"routes risk tasks"| node_risk
node_orchestrator -->|"routes report tasks"| node_status
node_orchestrator -->|"routes governance checks"| node_governance
node_orchestrator -->|"routes roadmap tasks"| node_roadmap
node_orchestrator -->|"routes recommendations"| node_toolrec
node_orchestrator -->|"publishes approvals"| node_broker
node_application -->|"starts broker"| node_broker
node_application -->|"starts when enabled"| node_webhooks
node_application -->|"reads configuration"| node_settings
node_application -->|"configures model routing"| node_llmrouter
node_plan -->|"uses runtime"| node_agentbase
node_risk -->|"uses runtime"| node_agentbase
node_status -->|"uses runtime"| node_agentbase
node_governance -->|"uses runtime"| node_agentbase
node_roadmap -->|"uses runtime"| node_agentbase
node_toolrec -->|"uses runtime"| node_agentbase
node_agentbase -.->|"generates responses"| node_llmrouter
node_llmrouter -->|"routes requests"| node_anthropic
node_llmrouter -.->|"routes requests"| node_openai
node_llmrouter -->|"routes local requests"| node_ollama
node_anthropic -->|"implements interface"| node_llmbase
node_openai -->|"implements interface"| node_llmbase
node_ollama -->|"implements interface"| node_llmbase
node_agentbase -.->|"accepts output schema"| node_schemas
node_integrations -->|"implements adapter contract"| node_integrationbase
node_integrations -.->|"syncs collaboration data"| node_externalservices
node_hitl -->|"assesses approval risk"| node_riskassessor
node_hitl -.->|"notifies approvals"| node_broker
node_application -.->|"configures logging"| node_logging
node_structuredlogging -->|"builds on logging"| node_logging
node_shutdown -->|"logs shutdown"| node_logging

click node_application "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/app.py"
click node_orchestrator "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/orchestrator_agent.py"
click node_plan "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/project_plan_agent.py"
click node_risk "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/risk_assessment_agent.py"
click node_status "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/status_reporter_agent.py"
click node_governance "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/governance_agent.py"
click node_roadmap "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/roadmapping_agent.py"
click node_toolrec "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/tool_recommender_agent.py"
click node_talent "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/talent_orchestrator.py"
click node_agentbase "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/base_agent.py"
click node_schemas "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/schemas.py"
click node_llmrouter "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/router.py"
click node_llmbase "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/base.py"
click node_anthropic "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/anthropic_llm.py"
click node_openai "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/openai_llm.py"
click node_ollama "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/ollama_llm.py"
click node_integrations "https://github.com/yellowscorpiondpiii/capstone-mira/tree/main/mira/integrations"
click node_integrationbase "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/integrations/base_integration.py"
click node_broker "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/message_broker.py"
click node_webhooks "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/webhook_handler.py"
click node_hitl "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/governance/hitl_handler.py"
click node_riskassessor "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/governance/risk_assessor.py"
click node_settings "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/config/settings.py"
click node_logging "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/logging.py"
click node_structuredlogging "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/structured_logging.py"
click node_shutdown "https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/shutdown_handler.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_application,node_settings,node_client toneBlue
class node_orchestrator,node_plan,node_risk,node_status,node_governance,node_roadmap,node_toolrec,node_scaling,node_talent,node_agentbase toneAmber
class node_schemas,node_llmrouter,node_llmbase,node_anthropic,node_openai,node_ollama toneMint
class node_integrations,node_integrationbase toneRose
class node_broker,node_webhooks,node_hitl,node_riskassessor,node_logging,node_structuredlogging,node_shutdown,node_externalservices toneIndigo
```

## Components

### Application flow

- [Mira application](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/app.py): `mira/app.py`
- [Configuration](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/config/settings.py): `mira/config/settings.py`

### Workflow agents

- [Workflow orchestrator](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/orchestrator_agent.py): `mira/agents/orchestrator_agent.py`
- [Project planning](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/project_plan_agent.py): `mira/agents/project_plan_agent.py`
- [Risk assessment](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/risk_assessment_agent.py): `mira/agents/risk_assessment_agent.py`
- [Status reporting](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/status_reporter_agent.py): `mira/agents/status_reporter_agent.py`
- [Governance review](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/governance_agent.py): `mira/agents/governance_agent.py`
- [Roadmapping](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/roadmapping_agent.py): `mira/agents/roadmapping_agent.py`
- [Tool recommendation](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/tool_recommender_agent.py): `mira/agents/tool_recommender_agent.py`
- **Scaling dashboard**
- [Talent orchestration](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/agents/talent_orchestrator.py): `mira/agents/talent_orchestrator.py`
- [Agent runtime](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/base_agent.py): `mira/core/base_agent.py`

### LLM services

- [Output schemas](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/schemas.py): `mira/llm/schemas.py`
- [LLM router](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/router.py): `mira/llm/router.py`
- [LLM interface](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/base.py): `mira/llm/base.py`
- [Anthropic backend](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/anthropic_llm.py): `mira/llm/anthropic_llm.py`
- [OpenAI backend](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/openai_llm.py): `mira/llm/openai_llm.py`
- [Ollama backend](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/llm/ollama_llm.py): `mira/llm/ollama_llm.py`

### Integrations

- [Service adapters](https://github.com/yellowscorpiondpiii/capstone-mira/tree/main/mira/integrations): `mira/integrations`
- [Adapter contract](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/integrations/base_integration.py): `mira/integrations/base_integration.py`

### Events and governance

- [Message broker](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/message_broker.py): `mira/core/message_broker.py`
- [Webhook handler](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/core/webhook_handler.py): `mira/core/webhook_handler.py`
- [Human approval handling](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/governance/hitl_handler.py): `governance/hitl_handler.py`
- [Governance risk assessor](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/governance/risk_assessor.py): `governance/risk_assessor.py`
- [Logging](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/logging.py): `mira/utils/logging.py`
- [Structured logging](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/structured_logging.py): `mira/utils/structured_logging.py`
- [Graceful shutdown](https://github.com/yellowscorpiondpiii/capstone-mira/blob/main/mira/utils/shutdown_handler.py): `mira/utils/shutdown_handler.py`

### Other components

- **Workflow client**
- **Collaboration services**

## Connections

- Workflow client → Mira application: submits work (evidence: `README.md`)
- Mira application → Workflow orchestrator: registers and dispatches (evidence: `mira/app.py`)
- Workflow orchestrator → Project planning: routes plan tasks (evidence: `mira/agents/orchestrator_agent.py`)
- Workflow orchestrator → Risk assessment: routes risk tasks (evidence: `mira/agents/orchestrator_agent.py`)
- Workflow orchestrator → Status reporting: routes report tasks (evidence: `mira/agents/orchestrator_agent.py`)
- Workflow orchestrator → Governance review: routes governance checks (evidence: `mira/agents/orchestrator_agent.py`)
- Workflow orchestrator → Roadmapping: routes roadmap tasks (evidence: `mira/app.py`)
- Workflow orchestrator → Tool recommendation: routes recommendations (evidence: `mira/app.py`)
- Workflow orchestrator → Message broker: publishes approvals (evidence: `mira/agents/orchestrator_agent.py`)
- Mira application → Message broker: starts broker (evidence: `mira/app.py`)
- Mira application → Webhook handler: starts when enabled (evidence: `mira/app.py`)
- Mira application → Configuration: reads configuration (evidence: `mira/app.py`)
- Mira application → LLM router: configures model routing (evidence: `mira/app.py`)
- Project planning → Agent runtime: uses runtime (evidence: `mira/agents/project_plan_agent.py`)
- Risk assessment → Agent runtime: uses runtime (evidence: `mira/agents/risk_assessment_agent.py`)
- Status reporting → Agent runtime: uses runtime (evidence: `mira/agents/status_reporter_agent.py`)
- Governance review → Agent runtime: uses runtime (evidence: `mira/agents/governance_agent.py`)
- Roadmapping → Agent runtime: uses runtime (evidence: `mira/agents/roadmapping_agent.py`)
- Tool recommendation → Agent runtime: uses runtime (evidence: `mira/agents/tool_recommender_agent.py`)
- Agent runtime → LLM router: generates responses
- LLM router → Anthropic backend: routes requests (evidence: `mira/llm/router.py`)
- LLM router → OpenAI backend: routes requests
- LLM router → Ollama backend: routes local requests (evidence: `mira/llm/router.py`)
- Anthropic backend → LLM interface: implements interface (evidence: `mira/llm/anthropic_llm.py`)
- OpenAI backend → LLM interface: implements interface (evidence: `mira/llm/openai_llm.py`)
- Ollama backend → LLM interface: implements interface (evidence: `mira/llm/ollama_llm.py`)
- Agent runtime → Output schemas: accepts output schema
- Service adapters → Adapter contract: implements adapter contract (evidence: `mira/integrations/base_integration.py`)
- Service adapters → Collaboration services: syncs collaboration data (evidence: `README.md`)
- Human approval handling → Governance risk assessor: assesses approval risk (evidence: `governance/hitl_handler.py`)
- Human approval handling → Message broker: notifies approvals
- Mira application → Logging: configures logging (evidence: `mira/app.py`)
- Structured logging → Logging: builds on logging (evidence: `mira/utils/structured_logging.py`)
- Graceful shutdown → Logging: logs shutdown (evidence: `mira/utils/shutdown_handler.py`)
