feat: chat history, inline file editor, split terminal, OCI resource actions, and layout fixes
- Add ChatGPT-style chat history for Chat Agent and Terraform Agent (sessions, rename, delete) - Add inline .tf file editor with Tab support and auto-sync to workspace code - Add split-panel terminal showing Plan/Apply/Destroy output alongside files/plan/resources - Add OCI resource actions: start/stop Compute instances and Autonomous DBs from Resources panel - Add multi-file Terraform generation via // filename: markers - Fix GenAI empty response handling (GPT-5.2 fallback message) - Fix compartment select visibility, Terraform code block light theme - Fix page layout overflow (no more scroll beyond viewport) - Add DB migration for terraform_workspaces.compartment_id column - Update README with new features, API endpoints, and version notes
This commit is contained in:
29
README.md
29
README.md
@@ -54,10 +54,20 @@ The platform combines security compliance scanning, AI-powered chat with **RAG (
|
||||
- **Plan/Apply/Destroy lifecycle**: full Terraform workflow with real-time output tracking
|
||||
- **File management**: view generated `.tf` files, copy, download individually or as bundle
|
||||
- **Confirmation modal**: type "DESTROY" to confirm resource destruction
|
||||
- **Resizable split view**: chat on top, files/plan/resources/output tabs on bottom with drag-to-resize
|
||||
- **Inline file editor**: click any generated `.tf` file to edit in-place with monospace editor, Tab support, and save — auto-syncs with workspace code
|
||||
- **Split-panel terminal**: real-time Plan/Apply/Destroy output in a dark terminal panel alongside files/plan/resources (always visible)
|
||||
- **Multi-file generation**: AI generates separate `.tf` files via `// filename:` markers (main.tf, variables.tf, outputs.tf, etc.)
|
||||
- **Chat history**: ChatGPT-style session history with rename/delete, shared between Chat Agent and Terraform Agent
|
||||
- **Resizable split view**: chat on top (50%), files/plan/resources + terminal on bottom (50%) with drag-to-resize
|
||||
- Terraform CLI installed in container (v1.7.5)
|
||||
- Dedicated system prompt optimized for OCI Terraform provider best practices
|
||||
|
||||
### ⚡ OCI Resource Actions
|
||||
- **Start/Stop Compute Instances** directly from the Resources panel with one click
|
||||
- **Start/Stop Autonomous Databases** with confirmation prompt
|
||||
- Lifecycle state badges (RUNNING/STOPPED/AVAILABLE) with color indicators
|
||||
- Actions audited in the audit log
|
||||
|
||||
### 🔍 OCI Account Explorer
|
||||
- **Tree-view navigation** with resizable side panel and drag handle
|
||||
- **40+ resource types** across 8 categories:
|
||||
@@ -346,13 +356,13 @@ Allow group <group-name> to read buckets in compartment <compartment-name>
|
||||
```
|
||||
oci-cis-agent/
|
||||
├── backend/
|
||||
│ ├── app.py # FastAPI application (~3800 lines)
|
||||
│ ├── app.py # FastAPI application (~4000 lines)
|
||||
│ ├── cis_reports.py # Oracle CIS Benchmark checker (6660 lines, report engine)
|
||||
│ ├── mcp_cis_server.py # MCP server with 12 granular CIS tools (~700 lines)
|
||||
│ ├── Dockerfile # Python 3.12 + OCI CLI + Terraform CLI
|
||||
│ └── requirements.txt # Dependencies
|
||||
├── frontend/
|
||||
│ └── index.html # SPA with Oracle Cloud theme (~1780 lines)
|
||||
│ └── index.html # SPA with Oracle Cloud theme (~1950 lines)
|
||||
├── nginx/
|
||||
│ └── default.conf # Reverse proxy config
|
||||
├── docker-compose.yml # Orchestration
|
||||
@@ -429,6 +439,13 @@ oci-cis-agent/
|
||||
| GET | `/api/oci/explore/{id}/notification_topics` | List Notification Topics |
|
||||
| GET | `/api/oci/explore/{id}/events_rules` | List Events Rules |
|
||||
|
||||
### OCI Resource Actions
|
||||
|
||||
| Method | Endpoint | Description |
|
||||
|--------|----------|-------------|
|
||||
| POST | `/api/oci/instances/{id}/action` | Start/Stop compute instance |
|
||||
| POST | `/api/oci/autonomous-databases/{id}/action` | Start/Stop Autonomous Database |
|
||||
|
||||
### Generative AI
|
||||
|
||||
| Method | Endpoint | Description |
|
||||
@@ -504,6 +521,10 @@ oci-cis-agent/
|
||||
|--------|----------|-------------|
|
||||
| POST | `/api/chat` | Send message (with RAG + MCP tool use, accepts `use_tools` flag) |
|
||||
| POST | `/api/chat/upload` | Send message with file attachments (multipart, images/PDFs/text) |
|
||||
| GET | `/api/chat/sessions` | List chat sessions (history) with agent type filter |
|
||||
| GET | `/api/chat/sessions/{sid}/messages` | Get messages for a session |
|
||||
| PUT | `/api/chat/sessions/{sid}/title` | Rename a chat session |
|
||||
| DELETE | `/api/chat/{sid}` | Delete chat session and messages |
|
||||
| POST | `/api/reports/run` | Execute CIS report |
|
||||
| GET | `/api/reports` | List reports |
|
||||
| GET | `/api/reports/{id}/html` | View HTML report |
|
||||
@@ -601,7 +622,7 @@ All models include OCID mapping for `us-ashburn-1`. For other regions, use the "
|
||||
|
||||
| Version | Date | Changes |
|
||||
|---------|------|---------|
|
||||
| **v2.1** | 2026-03 | Terraform Agent (AI-powered IaC generation with plan/apply/destroy lifecycle, workspace management, Terraform CLI in container), OCI Explorer expanded to 40+ resource types across 8 categories with tree-view navigation and resizable panels, compartment filtering for MCP CIS scans, chat sidebar with model parameters, chat audit logs, collection error tracking in MCP server, tool timeout increased to 30min with auto-retry, memory compaction tuned (6K threshold, 20 recent messages), model catalog trimmed from 69 to 15 curated models |
|
||||
| **v2.1** | 2026-03 | Terraform Agent (AI-powered IaC generation with plan/apply/destroy lifecycle, workspace management, Terraform CLI in container, inline file editor, split-panel terminal, multi-file generation via `// filename:` markers), ChatGPT-style chat history for both Chat Agent and Terraform Agent (rename/delete sessions), OCI Resource Actions (start/stop instances and Autonomous DBs from Resources panel), OCI Explorer expanded to 40+ resource types across 8 categories with tree-view navigation and resizable panels, compartment filtering for MCP CIS scans, chat sidebar with model parameters, chat audit logs, collection error tracking in MCP server, tool timeout increased to 30min with auto-retry, memory compaction tuned (6K threshold, 20 recent messages), model catalog trimmed from 69 to 15 curated models, improved GenAI response extraction with fallback for empty responses, fixed layout overflow (no page scroll) |
|
||||
| **v2.0** | 2026-03 | Async background chat processing (no more 504 timeouts), frontend polling with timestamps, 8 uvicorn workers + 16-thread chat executor for ~12 simultaneous chats, parallelized MCP data collection (5-thread base + 8-thread regional), 2-hour MCP session cache, 5-min tool timeout, full dead code cleanup across backend/frontend/MCP |
|
||||
| **v1.9** | 2026-03 | Multimodal chat (image/PDF/text file upload with OCI GenAI ImageContent/DocumentContent), region-specific MCP scanning (`regions` param on all scan tools), orphaned report auto-detection on progress poll, nginx timeout increased to 15min, improved API error handling for non-JSON responses |
|
||||
| **v1.8** | 2026-03 | CIS Engine auto-update from Oracle GitHub with automatic patch reapplication, version check UI card (admin), new `/api/cis-engine/*` endpoints, report file listing and individual download endpoints, reorganized Reports tab (execution history + status) and Downloads tab (file browser only with expandable cards per report), CIS Level description tooltip, persistent log expand during report generation |
|
||||
|
||||
Reference in New Issue
Block a user