Explore the OpenCode Ecosystem
mainawesome-opencode and opencode.cafe.repository·main·Indexed 11 days ago
https://github.com/xiaomimimo/mimo-codeA terminal-native AI coding assistant designed to read/write code, manage Git, and execute commands. It features a persistent memory system, supports various LLM providers via OAuth or API keys, and includes an Agent Client Protocol (ACP) v1 implementation for integration with editors like Zed.
awesome-opencode and opencode.cafe.For enterprise deployments, the sharing feature can be configured in the following ways to meet security compliance:
MiMoCode is a terminal-native AI coding assistant with the following capabilities:
Tab.build (default)plan (read-only analysis)compose (specs-driven orchestration)/compose-next skill on the build agent./skill-name or auto-matched by relevance.compose, deep-research, fact-check, research-experiment)./dream to extract knowledge into memory and /distill to discover reusable workflows.MiMo Orchestrator Mode is an experimental coordination mode designed to manage multiple tasks from a single window and a single session using natural language. Instead of manually multiplexing between multiple terminal windows and coding sessions, the Orchestrator acts as a 'manager' that:
mode: "peer").git merge of the mimocode/* branch from each child), and reports progress.Key Distinction: The Orchestrator does not perform the heavy lifting itself (it doesn't write code or perform quality reviews). It delegates implementation tasks to specific modes: implementation goes to build, and planning/composition goes to plan or compose.
Note: This feature is disabled by default. To enable it, you must set the environment variable MIMOCODE_EXPERIMENTAL_ORCHESTRATOR.
For the Handoff dialog to function correctly with specific harness options, the required skills must be registered in sync.data.command.
Specifically, the codex and claude-code skills must be registered. If these skills are not registered, the corresponding options in the Handoff dialog will be hidden to prevent errors when attempting to invoke them.
MiMoCode implements a provider-independent mechanism for discovering Model Context Protocol (MCP) tools without overwhelming the model's context window. Instead of sending every tool definition at once, MiMoCode provides a single tool named mcp_tool_search.
mcp_tool_search. Its description contains a catalog of available tool names and descriptions. To save tokens, this catalog degrades based on context pressure:mcp_tool_search with a query. MiMoCode uses a local BM25 index to find matches based on names, descriptions, and recursive parameter metadata.activeTools subset for the next outer-loop step in the session.OpenCode Enterprise provides several features for organizational control and security:
MiMoCode distinguishes between authorization (who can use a skill) and reachability (whether the model can see/invoke it). You can control these using YAML frontmatter in your skill's SKILL.md file.
permission.skill)Use permission.skill to define if a skill is usable at all.
deny: The skill is unusable by anyone (neither the model nor the user). Even an explicit user slash command (e.g., /name) will fail.disable-model-invocation)Use disable-model-invocation to hide a skill from the AI model while keeping it available for manual user invocation.
disable-model-invocation: true: The model cannot see the skill in its catalog, tool descriptions, or search results. However, a user can still trigger it using a slash command (e.g., /name).disable-model-invocation: false (default): The model can see and invoke the skill.| Frontmatter | Model Sees It | Model May Invoke | User /name Works |
|---|---|---|---|
| (default) | yes | yes | yes |
disable-model-invocation: true | no | no | yes |
permission.skill: deny | no | no | no |
# Example: A skill only a user can trigger manually
permission:
skill: allow
disable-model-invocation: trueOrchestrator mode uses an asynchronous, non-polling model for managing background tasks:
session create command returns immediately. The Orchestrator does not poll for status; instead, the child session actively wakes the Orchestrator via an inbox notification when it finishes.session cancel <id>. If the entire Orchestrator session exits, all children will exit with it.session list to find the child and then forward it a message via the actor send action to continue.The system theme is designed to match your terminal's appearance automatically. Unlike fixed-color themes, it:
none for text and background colors to maintain the original terminal look.Use this theme if you want OpenCode to feel like a native part of your terminal or if you use highly customized terminal color schemes.
The Mix of Harness (MoH) mechanism allows MiMoCode to package external CLI tools like Codex CLI and Claude Code CLI as callable skills. This enables MiMoCode to delegate execution to a specialized harness when it encounters a "low-return cycle" (a state where further token consumption does not result in progress).
Key Concepts:
Try-Best HandOff is an automated version of Fallback mode. It monitors for "low-yield loops" (failure patterns) in real-time during a turn. When a loop is detected, the current turn is paused, evidence is recorded, and control is handed back to the user to decide how to proceed.
Low-Yield Loop Patterns detected:
done without actually running or verifying tests.