# octo-advisory/kaix architecture

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

- Interactive diagram: https://gitdiagram.com/octo-advisory/kaix
- Repository: https://github.com/octo-advisory/kaix

## Overview

MarsAIX is a Frappe-based industrial planning and advisory platform with a React chat frontend. Its main workflow takes a user query through intent analysis and validation, then produces feasibility or industrial-search results; separate capabilities cover market trends and mapping. The README describes Management_Class as the orchestration layer connecting AI, analytics, and Redis. Source excerpts confirm parts of the classification and vendor/approval analytics paths; several other documented subsystems are represented at directory level because their implementation was not sampled.

Main entry points: [`kaix/Management_Class/Analytics_management`](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Analytics_management) (Analytics management), [`kaix/Management_Class/Ai_management`](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Ai_management) (AI management), [`frontend/src/components/Chatscreen/Chatscreen.jsx`](https://github.com/octo-advisory/kaix/blob/cambodia/frontend/src/components/Chatscreen/Chatscreen.jsx) (Chat interface), [`frontend/src/components/ResultScreens`](https://github.com/octo-advisory/kaix/tree/cambodia/frontend/src/components/ResultScreens) (Results and maps)

## Diagram (Mermaid)

```mermaid
flowchart TD

subgraph group_experience["User experience"]
  node_chat["Chat interface<br/>[Chatscreen.jsx]"]
  node_results["Results and maps"]
  node_redux["Frontend state"]
end

subgraph group_intelligence["AI and orchestration"]
  node_classify["Query classification"]
  node_intent["Intent and extraction"]
  node_validation["Query validation"]
  node_ai_orchestration["AI management"]
  node_analytics_orchestration["Analytics management"]
end

subgraph group_domain["Planning and search"]
  node_feasibility["Feasibility analysis"]
  node_industry["Industry planning"]
  node_search["Business searches"]
  node_market["Market trends"]
  node_mapping["Location mapping"]
end

subgraph group_platform["State and records"]
  node_redis[("Chat state<br/>[Redis_chat.py]")]
  node_doctypes[("Frappe records")]
end

node_user(("Business user"))
node_frappe_db[("Frappe database")]

node_user -->|"asks"| node_chat
node_chat -->|"updates state"| node_redux
node_chat -->|"submits queries"| node_analytics_orchestration
node_analytics_orchestration -->|"classifies"| node_classify
node_ai_orchestration -->|"analyzes"| node_classify
node_ai_orchestration -->|"extracts intent"| node_intent
node_analytics_orchestration -->|"validates"| node_validation
node_analytics_orchestration -->|"runs searches"| node_search
node_ai_orchestration -->|"assesses feasibility"| node_feasibility
node_analytics_orchestration -->|"plans industry"| node_industry
node_analytics_orchestration -->|"uses location"| node_mapping
node_market -.->|"caches trends"| node_frappe_db
node_analytics_orchestration -->|"manages chat"| node_redis
node_analytics_orchestration -->|"records activity"| node_doctypes
node_doctypes -->|"persists records"| node_frappe_db
node_search -->|"queries records"| node_frappe_db
node_industry -->|"queries records"| node_frappe_db
node_analytics_orchestration -->|"returns results"| node_results
node_results -->|"shows findings"| node_user

click node_chat "https://github.com/octo-advisory/kaix/blob/cambodia/frontend/src/components/Chatscreen/Chatscreen.jsx"
click node_results "https://github.com/octo-advisory/kaix/tree/cambodia/frontend/src/components/ResultScreens"
click node_redux "https://github.com/octo-advisory/kaix/tree/cambodia/frontend/src/Redux/Store"
click node_classify "https://github.com/octo-advisory/kaix/blob/cambodia/kaix/Ai_module/Query_Classification_And_Analysis.py"
click node_intent "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Ai_module"
click node_validation "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Validations"
click node_ai_orchestration "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Ai_management"
click node_analytics_orchestration "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Analytics_management"
click node_feasibility "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Ai_module/Feasibility_Universal_Function"
click node_industry "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Analytics_module/Industry_form_scratch"
click node_search "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Analytics_module"
click node_market "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Market_Trends"
click node_mapping "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Mapping_module"
click node_redis "https://github.com/octo-advisory/kaix/blob/cambodia/kaix/Management_Class/Redis_management/Redis_chat.py"
click node_doctypes "https://github.com/octo-advisory/kaix/tree/cambodia/kaix/marsaix/doctype"

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_chat,node_results,node_redux,node_user toneBlue
class node_classify,node_intent,node_validation,node_ai_orchestration,node_analytics_orchestration,node_frappe_db toneAmber
class node_feasibility,node_industry,node_search,node_market,node_mapping toneMint
class node_redis,node_doctypes toneRose
```

## Components

### User experience

- [Chat interface](https://github.com/octo-advisory/kaix/blob/cambodia/frontend/src/components/Chatscreen/Chatscreen.jsx): `frontend/src/components/Chatscreen/Chatscreen.jsx`
- [Results and maps](https://github.com/octo-advisory/kaix/tree/cambodia/frontend/src/components/ResultScreens): `frontend/src/components/ResultScreens`
- [Frontend state](https://github.com/octo-advisory/kaix/tree/cambodia/frontend/src/Redux/Store): `frontend/src/Redux/Store`

### AI and orchestration

- [Query classification](https://github.com/octo-advisory/kaix/blob/cambodia/kaix/Ai_module/Query_Classification_And_Analysis.py): `kaix/Ai_module/Query_Classification_And_Analysis.py`
- [Intent and extraction](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Ai_module): `kaix/Ai_module`
- [Query validation](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Validations): `kaix/Validations`
- [AI management](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Ai_management): `kaix/Management_Class/Ai_management`
- [Analytics management](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Management_Class/Analytics_management): `kaix/Management_Class/Analytics_management`

### Planning and search

- [Feasibility analysis](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Ai_module/Feasibility_Universal_Function): `kaix/Ai_module/Feasibility_Universal_Function`
- [Industry planning](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Analytics_module/Industry_form_scratch): `kaix/Analytics_module/Industry_form_scratch`
- [Business searches](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Analytics_module): `kaix/Analytics_module`
- [Market trends](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Market_Trends): `kaix/Market_Trends`
- [Location mapping](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/Mapping_module): `kaix/Mapping_module`

### State and records

- [Chat state](https://github.com/octo-advisory/kaix/blob/cambodia/kaix/Management_Class/Redis_management/Redis_chat.py): `kaix/Management_Class/Redis_management/Redis_chat.py`
- [Frappe records](https://github.com/octo-advisory/kaix/tree/cambodia/kaix/marsaix/doctype): `kaix/marsaix/doctype`

### Other components

- **Business user**
- **Frappe database**

## Connections

- Business user → Chat interface: asks
- Chat interface → Frontend state: updates state
- Chat interface → Analytics management: submits queries
- Analytics management → Query classification: classifies
- AI management → Query classification: analyzes
- AI management → Intent and extraction: extracts intent
- Analytics management → Query validation: validates
- Analytics management → Business searches: runs searches
- AI management → Feasibility analysis: assesses feasibility
- Analytics management → Industry planning: plans industry
- Analytics management → Location mapping: uses location
- Market trends → Frappe database: caches trends
- Analytics management → Chat state: manages chat
- Analytics management → Frappe records: records activity
- Frappe records → Frappe database: persists records
- Business searches → Frappe database: queries records
- Industry planning → Frappe database: queries records
- Analytics management → Results and maps: returns results
- Results and maps → Business user: shows findings
