# trycompai/comp architecture

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

## Overview

Comp AI is an open-source compliance platform for achieving and maintaining framework readiness. The principal workflow is to connect cloud accounts and gather security findings, organize remediation and evidence against controls, then review progress toward audit readiness. The API also supports policy and framework management, billing, administration, and ISMS management reviews; the MCP server exposes selected API operations to tool clients. The README describes broad evidence collection and policy automation, but sampled source is limited, so links between those product stages are not inferred.

Main entry points: [`apps/api/src/app.module.ts`](https://github.com/trycompai/comp/blob/main/apps/api/src/app.module.ts) (API service), [`apps/api/src/cloud-security/cloud-security.service.ts`](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security.service.ts) (Cloud findings), [`apps/api/src/cloud-security/cloud-security-query.service.ts`](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security-query.service.ts) (Findings query), [`apps/api/src/billing/billing.service.ts`](https://github.com/trycompai/comp/blob/main/apps/api/src/billing/billing.service.ts) (Billing)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_product["Compliance workspace"]
  node_tasks["Task management"]
  node_evidence["Evidence forms"]
  node_attachments["Evidence attachments"]
  node_frameworks["Framework editor"]
  node_controls["Controls"]
  node_policies["Policy management"]
  node_isms["ISMS reviews"]
end

subgraph group_security["Cloud security"]
  node_cloud["Cloud findings"]
  node_cloudquery["Findings query"]
  node_cloudproviders["Cloud provider adapters"]
  node_exceptions["Finding exceptions"]
  node_remediation["Remediation"]
end

subgraph group_platform["API platform"]
  node_api["API service<br/>[app.module.ts]"]
  node_auth["Authentication<br/>[auth.module.ts]"]
  node_db[("Application data<br/>[index.ts]")]
  node_billing["Billing<br/>[billing.service.ts]"]
  node_admin["Organization admin"]
end

subgraph group_clients["API clients"]
  node_app["Web workspace<br/>[useTasks.ts]"]
  node_mcp["MCP tools"]
end

node_member(("Compliance user"))
node_apiuser(("API consumer"))
node_cloudaccounts{{"Cloud accounts"}}
node_stripe{{"Stripe"}}

node_member -->|"uses"| node_app
node_app -->|"calls API"| node_api
node_apiuser -->|"requests"| node_api
node_api -->|"authenticates"| node_auth
node_api -->|"dispatches"| node_tasks
node_api -->|"dispatches"| node_evidence
node_api -->|"dispatches"| node_attachments
node_api -->|"dispatches"| node_frameworks
node_api -->|"dispatches"| node_controls
node_api -->|"dispatches"| node_policies
node_api -->|"dispatches"| node_isms
node_api -->|"dispatches"| node_cloud
node_api -->|"dispatches"| node_billing
node_api -->|"dispatches"| node_admin
node_api -->|"uses"| node_db
node_cloud -->|"queries"| node_cloudquery
node_cloudquery -->|"loads manifests"| node_cloudproviders
node_cloudquery -->|"loads exceptions"| node_exceptions
node_cloud -->|"scans"| node_cloudaccounts
node_cloud -->|"requests remediation"| node_remediation
node_billing -.->|"integrates"| node_stripe
node_apiuser -->|"uses tools"| node_mcp
node_mcp -->|"calls operations"| node_api

click node_app "https://github.com/trycompai/comp/blob/main/apps/app/src/app/(app)/%5BorgId%5D/tasks/hooks/useTasks.ts"
click node_api "https://github.com/trycompai/comp/blob/main/apps/api/src/app.module.ts"
click node_auth "https://github.com/trycompai/comp/blob/main/apps/api/src/auth/auth.module.ts"
click node_db "https://github.com/trycompai/comp/blob/main/apps/api/prisma/index.ts"
click node_tasks "https://github.com/trycompai/comp/tree/main/apps/api/src"
click node_evidence "https://github.com/trycompai/comp/tree/main/apps/api/src/evidence-forms"
click node_attachments "https://github.com/trycompai/comp/tree/main/apps/api/src/attachments"
click node_frameworks "https://github.com/trycompai/comp/tree/main/apps/api/src/framework-editor"
click node_controls "https://github.com/trycompai/comp/tree/main/apps/api/src/controls"
click node_policies "https://github.com/trycompai/comp/tree/main/apps/api/src/framework-editor/policy-template"
click node_isms "https://github.com/trycompai/comp/blob/main/apps/api/src/isms/isms-management-review.service.ts"
click node_cloud "https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security.service.ts"
click node_cloudquery "https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security-query.service.ts"
click node_cloudproviders "https://github.com/trycompai/comp/tree/main/apps/api/src/cloud-security/providers"
click node_exceptions "https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/finding-exceptions.ts"
click node_remediation "https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/remediation.service.ts"
click node_billing "https://github.com/trycompai/comp/blob/main/apps/api/src/billing/billing.service.ts"
click node_admin "https://github.com/trycompai/comp/blob/main/apps/api/src/admin-organizations/admin-organizations.service.ts"
click node_mcp "https://github.com/trycompai/comp/blob/main/apps/mcp-server/src/mcp-server/tools/evidenceFormsEvidenceFormsControllerReviewSubmissionV1.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_tasks,node_evidence,node_attachments,node_frameworks,node_controls,node_policies,node_isms,node_member toneBlue
class node_cloud,node_cloudquery,node_cloudproviders,node_exceptions,node_remediation toneAmber
class node_api,node_auth,node_db,node_billing,node_admin,node_apiuser toneMint
class node_app,node_mcp toneRose
class node_cloudaccounts,node_stripe toneIndigo
```

## Components

### Compliance workspace

- [Task management](https://github.com/trycompai/comp/tree/main/apps/api/src): `apps/api/src`
- [Evidence forms](https://github.com/trycompai/comp/tree/main/apps/api/src/evidence-forms): `apps/api/src/evidence-forms`
- [Evidence attachments](https://github.com/trycompai/comp/tree/main/apps/api/src/attachments): `apps/api/src/attachments`
- [Framework editor](https://github.com/trycompai/comp/tree/main/apps/api/src/framework-editor): `apps/api/src/framework-editor`
- [Controls](https://github.com/trycompai/comp/tree/main/apps/api/src/controls): `apps/api/src/controls`
- [Policy management](https://github.com/trycompai/comp/tree/main/apps/api/src/framework-editor/policy-template): `apps/api/src/framework-editor/policy-template`
- [ISMS reviews](https://github.com/trycompai/comp/blob/main/apps/api/src/isms/isms-management-review.service.ts): `apps/api/src/isms/isms-management-review.service.ts`

### Cloud security

- [Cloud findings](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security.service.ts): `apps/api/src/cloud-security/cloud-security.service.ts`
- [Findings query](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/cloud-security-query.service.ts): `apps/api/src/cloud-security/cloud-security-query.service.ts`
- [Cloud provider adapters](https://github.com/trycompai/comp/tree/main/apps/api/src/cloud-security/providers): `apps/api/src/cloud-security/providers`
- [Finding exceptions](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/finding-exceptions.ts): `apps/api/src/cloud-security/finding-exceptions.ts`
- [Remediation](https://github.com/trycompai/comp/blob/main/apps/api/src/cloud-security/remediation.service.ts): `apps/api/src/cloud-security/remediation.service.ts`

### API platform

- [API service](https://github.com/trycompai/comp/blob/main/apps/api/src/app.module.ts): `apps/api/src/app.module.ts`
- [Authentication](https://github.com/trycompai/comp/blob/main/apps/api/src/auth/auth.module.ts): `apps/api/src/auth/auth.module.ts`
- [Application data](https://github.com/trycompai/comp/blob/main/apps/api/prisma/index.ts): `apps/api/prisma/index.ts`
- [Billing](https://github.com/trycompai/comp/blob/main/apps/api/src/billing/billing.service.ts): `apps/api/src/billing/billing.service.ts`
- [Organization admin](https://github.com/trycompai/comp/blob/main/apps/api/src/admin-organizations/admin-organizations.service.ts): `apps/api/src/admin-organizations/admin-organizations.service.ts`

### API clients

- [Web workspace](https://github.com/trycompai/comp/blob/main/apps/app/src/app/(app)/%5BorgId%5D/tasks/hooks/useTasks.ts): `apps/app/src/app/(app)/[orgId]/tasks/hooks/useTasks.ts`
- [MCP tools](https://github.com/trycompai/comp/blob/main/apps/mcp-server/src/mcp-server/tools/evidenceFormsEvidenceFormsControllerReviewSubmissionV1.ts): `apps/mcp-server/src/mcp-server/tools/evidenceFormsEvidenceFormsControllerReviewSubmissionV1.ts`

### Other components

- **Compliance user**
- **API consumer**
- **Cloud accounts**
- **Stripe**

## Connections

- Compliance user → Web workspace: uses
- Web workspace → API service: calls API
- API consumer → API service: requests
- API service → Authentication: authenticates
- API service → Task management: dispatches
- API service → Evidence forms: dispatches
- API service → Evidence attachments: dispatches
- API service → Framework editor: dispatches
- API service → Controls: dispatches
- API service → Policy management: dispatches
- API service → ISMS reviews: dispatches
- API service → Cloud findings: dispatches
- API service → Billing: dispatches
- API service → Organization admin: dispatches
- API service → Application data: uses
- Cloud findings → Findings query: queries
- Findings query → Cloud provider adapters: loads manifests
- Findings query → Finding exceptions: loads exceptions
- Cloud findings → Cloud accounts: scans
- Cloud findings → Remediation: requests remediation
- Billing → Stripe: integrates
- API consumer → MCP tools: uses tools
- MCP tools → API service: calls operations
