11# AI-Omniscient-Architect: Platform Development Plan
22
3- ** Version** : 1.0
4- ** Date** : November 28 , 2025
5- ** Status** : Active Development
3+ ** Version** : 1.1
4+ ** Date** : December 22 , 2025
5+ ** Status** : Active Development - Phase 2 (API & RAG Integration)
66
77---
88
@@ -23,33 +23,32 @@ Transform AI-Omniscient-Architect into a **production-grade, local-first AI code
2323### Existing Structure
2424```
2525omniscient_architect/
26- ├── agents/ # AI analysis agents (architecture, efficiency, reliability, alignment)
27- ├── core/ # Core analysis engine
28- ├── prompts/ # Prompt templates and loaders
29- ├── tools/ # Complexity, clustering, file scanner
30- ├── utils/ # Cache, ingestion, logging, IO
31- ├── analysis.py # Main AnalysisEngine
32- ├── cli.py # Rich CLI interface
33- ├── web_app.py # Streamlit web interface
34- ├── github_client.py # GitHub API integration
35- ├── models.py # Pydantic data models
36- ├── config.py # Configuration management
37- └── reporting.py # Report generation
26+ ├── packages/
27+ │ ├── core/ # Foundation models and config
28+ │ ├── agents/ # AI analysis agents
29+ │ ├── tools/ # Analysis utilities
30+ │ ├── github/ # GitHub integration
31+ │ ├── api/ # FastAPI server
32+ │ ├── llm/ # LLM provider abstractions
33+ │ └── rag/ # RAG pipeline & vector store
34+ ├── examples/ # Usage examples
35+ ├── roadmap/ # Development plans
36+ └── tests/ # Integration tests
3837```
3938
4039### Strengths
41- - Modular agent architecture with base class pattern
42- - Separation of prompts, tools, and utilities
43- - Multiple interfaces (CLI, Web, API-ready )
44- - GitHub integration for remote repos
45- - Local LLM support via Ollama
40+ - ** Modular Monorepo ** : Clean separation of concerns via ` packages/ ` directory
41+ - ** RAG Capabilities ** : Advanced RAG pipeline with hybrid search and evaluation
42+ - ** LLM Abstraction ** : Provider-agnostic LLM interface (Ollama, etc. )
43+ - ** Multiple Interfaces ** : CLI, Web, and API foundations established
44+ - ** Local-First ** : Strong support for local LLMs and vector stores
4645
4746### Gaps to Address
48- - Tight coupling between components
49- - No formal API layer
50- - Limited plugin/extension system
51- - Missing observability and telemetry
52- - No package distribution strategy
47+ - ** API Maturity ** : API exists but lacks persistence and full feature parity
48+ - ** Plugin System ** : Extension mechanism not yet implemented
49+ - ** Observability ** : Basic logging present, but metrics/tracing needed
50+ - ** Web UI Integration ** : Streamlit app needs to consume new API/packages
51+ - ** Distribution ** : CI/CD for publishing packages not yet set up
5352
5453---
5554
@@ -78,6 +77,8 @@ omniscient_architect/
7877```
7978omniscient-architect (meta-package)
8079├── omniscient-core # Core models, config, base classes
80+ ├── omniscient-llm # LLM provider abstractions
81+ ├── omniscient-rag # RAG pipeline, vector store, metrics
8182├── omniscient-agents # AI analysis agents
8283├── omniscient-tools # Analysis tools (complexity, clustering)
8384├── omniscient-github # GitHub integration
@@ -102,19 +103,40 @@ omniscient-architect (meta-package)
102103# Size: Minimal, no heavy ML dependencies
103104```
104105
105- #### 2. ` omniscient-agents ` (AI Analysis)
106+ #### 2. ` omniscient-llm ` (LLM Abstraction)
107+ ``` python
108+ # Responsibilities:
109+ # - Base LLM provider interface
110+ # - Ollama implementation
111+ # - OpenAI/Anthropic implementations (future)
112+ # - Token counting and cost estimation
113+
114+ # Dependencies: omniscient-core, httpx, pydantic
115+ ```
116+
117+ #### 3. ` omniscient-rag ` (Knowledge Engine)
118+ ``` python
119+ # Responsibilities:
120+ # - RAG Pipeline (ingestion, chunking, embedding)
121+ # - Vector Store (Postgres/pgvector)
122+ # - Hybrid Search (Semantic + Keyword)
123+ # - Evaluation Metrics (Precision, Recall, Answer Accuracy)
124+
125+ # Dependencies: omniscient-core, omniscient-llm, psycopg, pgvector, numpy
126+ ```
127+
128+ #### 4. ` omniscient-agents ` (AI Analysis)
106129``` python
107130# Responsibilities:
108131# - ArchitectureAgent, EfficiencyAgent, ReliabilityAgent, AlignmentAgent
109132# - Agent registry and discovery
110133# - Prompt templates and loaders
111- # - LLM client abstraction (Ollama, OpenAI, Anthropic)
112134
113- # Dependencies: omniscient-core, langchain-core, langchain-ollama
135+ # Dependencies: omniscient-core, omniscient-llm, omniscient-rag
114136# Extension: Plugin interface for custom agents
115137```
116138
117- #### 3 . ` omniscient-tools ` (Analysis Utilities)
139+ #### 5 . ` omniscient-tools ` (Analysis Utilities)
118140``` python
119141# Responsibilities:
120142# - ComplexityAnalyzer (Lizard integration)
@@ -125,7 +147,7 @@ omniscient-architect (meta-package)
125147# Dependencies: omniscient-core, lizard, scikit-learn, tree-sitter
126148```
127149
128- #### 4 . ` omniscient-github ` (GitHub Integration)
150+ #### 6 . ` omniscient-github ` (GitHub Integration)
129151``` python
130152# Responsibilities:
131153# - GitHubClient (REST API wrapper)
@@ -137,7 +159,7 @@ omniscient-architect (meta-package)
137159# Dependencies: omniscient-core, PyGithub, httpx
138160```
139161
140- #### 5 . ` omniscient-api ` (REST/GraphQL Server)
162+ #### 7 . ` omniscient-api ` (REST/GraphQL Server)
141163``` python
142164# Responsibilities:
143165# - FastAPI application
@@ -150,7 +172,7 @@ omniscient-architect (meta-package)
150172# Dependencies: omniscient-core, omniscient-agents, fastapi, strawberry-graphql
151173```
152174
153- #### 6 . ` omniscient-cli ` (Command Line)
175+ #### 8 . ` omniscient-cli ` (Command Line)
154176``` python
155177# Responsibilities:
156178# - Rich terminal UI
@@ -161,7 +183,7 @@ omniscient-architect (meta-package)
161183# Dependencies: omniscient-core, omniscient-agents, rich, click
162184```
163185
164- #### 7 . ` omniscient-web ` (Web Interface)
186+ #### 9 . ` omniscient-web ` (Web Interface)
165187``` python
166188# Responsibilities:
167189# - Streamlit application
@@ -173,7 +195,7 @@ omniscient-architect (meta-package)
173195# Dependencies: omniscient-core, omniscient-api, streamlit, plotly
174196```
175197
176- #### 8 . ` omniscient-plugins ` (Extension SDK)
198+ #### 10 . ` omniscient-plugins ` (Extension SDK)
177199``` python
178200# Responsibilities:
179201# - Plugin discovery and loading
@@ -272,39 +294,18 @@ type AgentResult {
272294
273295## 🔧 Implementation Phases
274296
275- ### Phase 1: Package Extraction (Weeks 1-2 )
297+ ### Phase 1: Package Extraction (Completed )
276298**Goal **: Extract core packages without breaking existing functionality
277299
278- 1. **Create monorepo structure **
279- ```
280- packages/
281- ├── core/
282- ├── agents/
283- ├── tools/
284- ├── github/
285- └── api/
286- ```
287-
288- 2. **Extract `omniscient-core`**
289- - Move models.py → packages/core/src/omniscient_core/models.py
290- - Move config.py → packages/core/src/omniscient_core/config.py
291- - Move base agent → packages/core/src/omniscient_core/base.py
292- - Create package pyproject.toml with minimal dependencies
293-
294- 3. **Extract `omniscient-agents`**
295- - Move agents/ → packages/agents/src/omniscient_agents/
296- - Move prompts/ → packages/agents/src/omniscient_agents/prompts/
297- - Depend on omniscient-core
298-
299- 4. **Extract `omniscient-tools`**
300- - Move tools/ → packages/tools/src/omniscient_tools/
301- - Move utils/cache.py → packages/tools/src/omniscient_tools/cache.py
300+ - [x ] Create monorepo structure
301+ - [x ] Extract `omniscient -core `
302+ - [x ] Extract `omniscient -llm ` (New)
303+ - [x ] Extract `omniscient -rag ` (New)
304+ - [x ] Extract `omniscient -agents `
305+ - [x ] Extract `omniscient -tools `
306+ - [x ] Update imports across codebase
302307
303- 5. **Update imports across codebase**
304- - Create compatibility layer in main package
305- - Ensure CLI and web app still work
306-
307- ### Phase 2: API Layer (Weeks 3-4)
308+ ### Phase 2: API Layer (In Progress)
308309**Goal **: Build production -ready REST /GraphQL API
309310
3103111. **FastAPI application structure **
@@ -329,17 +330,22 @@ type AgentResult {
329330 └── stream.py # Analysis streaming
330331 ```
331332
332- 2 . ** Authentication system**
333+ 2. **RAG Integration**
334+ - Expose ingestion endpoints
335+ - Expose semantic search endpoints
336+ - Integrate RAG with analysis agents
337+
338+ 3. **Authentication system**
333339 - API key generation and validation
334340 - GitHub OAuth for web UI
335341 - Role-based access control
336342
337- 3 . ** Rate limiting and quotas**
343+ 4 . **Rate limiting and quotas**
338344 - Per-user request limits
339345 - Analysis job quotas
340346 - Configurable tiers
341347
342- 4 . ** WebSocket streaming**
348+ 5 . **WebSocket streaming**
343349 - Real-time analysis progress
344350 - Agent output streaming
345351 - Error notifications
@@ -654,12 +660,23 @@ curl -X POST http://localhost:8000/api/v1/analyze \
654660
655661## 📝 Next Immediate Actions
656662
657- 1 . ** Create monorepo structure** with packages/ directory
658- 2 . ** Extract omniscient-core** as first standalone package
659- 3 . ** Set up CI/CD** for multi-package builds
660- 4 . ** Implement FastAPI skeleton** with health endpoint
661- 5 . ** Add OpenAPI documentation** generation
662- 6 . ** Create plugin SDK** prototype
663+ 1 . ** API Persistence** :
664+ - Replace in-memory ` _analyses ` dict in ` packages/api/src/omniscient_api/routes.py ` with a proper database (SQLite/PostgreSQL).
665+ - Implement Pydantic models for database schema.
666+
667+ 2 . ** RAG Integration** :
668+ - Connect ` omniscient-rag ` to the API layer.
669+ - Create endpoints for document ingestion (` /ingest ` ).
670+ - Create endpoints for semantic search (` /search ` ).
671+
672+ 3 . ** Plugin SDK** :
673+ - Define the ` Plugin ` abstract base class in ` omniscient-core ` .
674+ - Create a plugin loader mechanism.
675+ - Implement a sample plugin (e.g., a custom linter or analysis tool).
676+
677+ 4 . ** Testing** :
678+ - Add integration tests for the API endpoints.
679+ - Add more unit tests for ` omniscient-llm ` and ` omniscient-rag ` .
663680
664681---
665682
0 commit comments