How soham1105-tech/orqen works
ORQEN is a repository-to-running-stack control plane with CLI, conversational-agent, and local web interfaces. Its main workflow resolves a local or Git source, discovers services and configuration, infers infrastructure, generates manifests, then builds, health-checks, and repairs the stack. Separate capabilities include in-container testing, interactive operations and dashboards, and ephemeral tunnels. The README documents the end-to-end workflow; source excerpts and the index support selected internal calls, but several command handlers and subsystems were not sampled.
Main entry points: init.go Init workflow · agent.go Intent agent · scanner.go Service scanner · chat.go Chat TUI
Components 29
User Interfaces
- CLI entry
main.go - Init workflow
cmd/init.go - Chat TUI
cmd/chat.go - Web control plane
internal/web/server.go
Project Discovery
- Source resolver
internal/git/git.go - Service scanner
internal/scanner/scanner.go - Node detection
internal/scanner/node/node.go - Python detection
internal/scanner/python/python.go - Go and Rust detection
internal/scanner - Env discovery
internal/envvar/envvar.go
Stack Provisioning
- Infrastructure inference
internal/infra/infra.go - Manifest generation
internal/generator/generator.go - Dockerfile generation
internal/generator/dockerfile.go - Project state
internal/state/state.go
Runtime Operations
- Compose operations
internal/docker/docker.go - Health checks
internal/httpcheck/httpcheck.go - Closed-loop repair
internal/healer/healer.go - In-container tests
internal/testrun/testrun.go - Live dashboard
internal/dashboard/dashboard.go - Preview tunnel
internal/tunnel/tunnel.go
Agent and Web
- Intent agent
internal/agent/agent.go - Intent routing
internal/agent/intent.go - Agent tools
internal/agent/tools.go - LLM client
internal/llm/client.go - Chat persistence
internal/web/store.go
Other components
- Operator
- Docker Compose
- LLM provider
- Service test suite
Connections 32
- Operator → CLI entry: runs CLI
main.go - CLI entry → Init workflow: selects command
- Operator → Chat TUI: starts conversation
- Operator → Web control plane: opens console
- Init workflow → Source resolver: resolves source
- Init workflow → Service scanner: scans services
- Service scanner → Node detection: detects Node
internal/scanner/scanner.go - Service scanner → Python detection: detects Python
internal/scanner/scanner.go - Service scanner → Go and Rust detection: detects Go Rust
internal/scanner/scanner.go - Init workflow → Env discovery: discovers variables
- Init workflow → Infrastructure inference: infers services
- Init workflow → Manifest generation: generates manifests
- Manifest generation → Dockerfile generation: generates Dockerfiles
internal/generator/generator.go - Init workflow → Project state: writes state
- Init workflow → Compose operations: builds stack
- Compose operations → Docker Compose: invokes Compose
internal/docker/docker.go - Init workflow → Health checks: verifies readiness
- Init workflow → Closed-loop repair: repairs failures
- Closed-loop repair → LLM client: requests repair
internal/healer/healer.go - Closed-loop repair → Health checks: checks HTTP
internal/healer/healer.go - Operator → In-container tests: runs tests
- In-container tests → Service test suite: executes in container
- Operator → Live dashboard: opens dashboard
- Live dashboard → Compose operations: controls containers
internal/dashboard/dashboard.go - Chat TUI → Intent agent: runs intent
cmd/chat.go - Intent agent → Intent routing: routes request
internal/agent/agent.go - Intent agent → Agent tools: dispatches tools
internal/agent/agent.go - Intent agent → LLM client: calls model
internal/agent/agent.go - LLM client → LLM provider: sends HTTP request
internal/llm/client.go - Web control plane → Chat persistence: persists chats
internal/web/server.go - Web control plane → Intent agent: sends chat turn
internal/web/server.go - Chat TUI → Preview tunnel: starts preview
cmd/chat.go