Documentation Index
Fetch the complete documentation index at: https://docs.monolex.ai/llms.txt
Use this file to discover all available pages before exploring further.
The Assumption We Rejected
Every multi-model framework starts with the same assumption: AI models are separate entities that need to be connected. LangChain connects them with chains. CrewAI connects them with roles. AutoGen connects them with protocols. The models are islands, and the framework builds bridges. OpenCLIs starts from the opposite direction. The models are not separate. They already run in the same place — a terminal. The human already has access to all of them — through subscriptions. The work already flows between them — through files, git, shell. There is nothing to connect. There is only separation to stop enforcing.Existence Before Distinction
When a human works with Claude Code and then switches to Codex, the ontological view says: two separate tools used sequentially. But what actually happened? One continuous working session in which different models contributed at different moments. The distinction between “Claude’s work” and “Codex’s work” is applied after the fact, not during the flow. OpenCLIs preserves this reality. The terminal does not care which model is typing. The file system does not care which model edited a file. Git does not care which model committed. The work exists first. The attribution comes after. This is why the save tracking system records every file change immediately, and only tags which AI session made it as a secondary field. This is why the PTY function that sends keystrokes accepts the same input from human and AI without distinction. This is why the memory layer indexes all model sessions into one database, not four. The code does not enforce separation because separation is not fundamental to the work.Motion Before Category
The conventional approach categorizes first: this is a “Claude task,” that is a “Codex task,” this requires “Gemini’s perspective.” Categories are assigned before work begins. The framework then routes tasks to the appropriate model. OpenCLIs does not categorize. The human starts working. If Claude is running, Claude works. If Claude needs a second opinion, it calls Codex — the same way a human would typecodex in a terminal. No routing layer. No task classification. No model selection algorithm. Just one continuous motion that happens to pass through different models.
The categories — which model, which session, which agent — are observed and recorded, but never prescribed. They are useful for understanding what happened, not for determining what should happen.