Skip to main content

Repository Structure

cmd/akritas contains only the executable entry point. internal/cli owns commands and composition; internal/web owns HTTP and the embedded UI. Domain packages are corpus, rag, mcp, change, and audit. internal/clients/openai isolates the upstream protocol.

Domain packages do not depend on CLI or Web adapters. Outer adapters assemble shared services through explicit exported types and functions. New behavior belongs in the package that owns the concept; application logic does not belong in package main or the repository root.