| name | moa-free-models |
| description | Mixture of Agents with FREE models from OpenCode Zen โ setup, model selection, common pitfalls |
| version | 3.2.1 |
| author | Hermes Agent |
| license | MIT |
| platforms | ["linux","macos","windows"] |
| metadata | {"hermes":{"tags":["moa","mixture-of-agents","free","opencode-zen","opencode-free-models"],"homepage":"https://opencode.ai"}} |
MoA Free Models
Mixture of Agents using free-tier models from OpenCode Zen. All models cost $0.
๐ฆ Installation
node --version
echo "OPENCODE_ZEN_API_KEY=*** ~/.hermes/.env
# 3. ูุนูู OpenCode Zen provider
hermes config set model.provider opencode-zen
# 4. ูู ุนุงูุฒ ุชุฑุฌุน ูู OpenRouter ุจุนุฏูู:
# hermes config set model.provider openrouter
โ
Working Free Models
| Model | Speed | Role |
|---|
deepseek-v4-flash-free | 1.5s | Aggregator โ best synthesis quality |
nemotron-3-ultra-free | 0.8s | Reference โ fast analysis |
north-mini-code-free | 0.8s | Reference โ coding tasks |
mimo-v2.5-free | 1.4s | Reference โ conversational |
big-pickle | 2.6s | Reference โ general purpose |
โ Failed Models (Do NOT use)
qwen3.6-plus-free โ 401 Unauthorized
minimax-m3-free โ 401 Unauthorized
๐ Usage
As a Hermes Tool (registered as mixture_of_agents_free)
After enabling moa_free toolset, the agent can call it directly. The tool is auto-registered in tools/mixture_of_agents_tool_free.py.
To enable the toolset:
Tool name: mixture_of_agents_free (toolset: moa_free)
Requires: OPENCODE_ZEN_API_KEY in .env
As a Python module
from tools.mixture_of_agents_tool_free import mixture_of_agents_tool
import asyncio
result = await mixture_of_agents_tool(
user_prompt="Your complex question here"
)
As a standalone script (no Hermes needed)
python ~/moa_free.py "your question here"
๐งช Test It
hermes chat -q "ุงุณุชุฎุฏู
MoA ุนุดุงู ุชุญู ุงูู
ุณุฃูุฉ ุฏู: ู
ุง ูู ุฌุฐุฑ 144 ุงูุชุฑุจูุนูุ"
๐ง Troubleshooting
โ ๏ธ httpx crashes on Windows
ุงุณุชุฎุฏู
requests ุจุฏู httpx โ httpx ุจูุนู
ู crash ุนูู Windows ุจุงูู error [Errno 2] No such file or directory.
โ ๏ธ Empty content from models
ุจุนุถ ุงูู
ูุฏููุงุช ุจุชุฑุฏ ูู reasoning ุฃู reasoning_content ู
ุด content:
message = result["choices"][0]["message"]
content = message.get("content", "") or message.get("reasoning", "") or message.get("reasoning_content", "")
โ ๏ธ API Key not loading
source ~/.hermes/.env
echo $OPENCODE_ZEN_API_KEY
โ ๏ธ Timeout with 5 models
ูู ุงูู 5 ู
ูุฏููุงุช ุฃุจุทุฃ ู
ู ุงูู
ุชููุนุ ูููู ุงูุนุฏุฏ ุฃู ุงุณุชุฎุฏู
MIN_SUCCESSFUL_REFERENCES = 1.
๐ Files
| File | Purpose |
|---|
tools/mixture_of_agents_tool_free.py | Main MoA implementation (portable) |
~/moa_free.py | Standalone script โ copy-paste ready, no Hermes dependencies |
references/model-test-results.md | Test results detail |
references/portable-setup.md | Cross-platform setup for sharing |
references/SETUP.md | Quick start guide |
references/github-publishing.md | How to publish on GitHub for friends |
scripts/install.sh | One-click installer |
๐ง Standalone Script (~/moa_free.py)
Independent MoA script โ works without Hermes core, only needs requests.
Usage:
python ~/moa_free.py "your question here"
API Key location on this machine: C:\Users\Karim\AppData\Local\hermes\.env (variable: OPENCODE_ZEN_API_KEY)
Pitfall: The script searches multiple .env paths. If key not found, verify the key exists:
grep OPENCODE_ZEN_API_KEY ~/AppData/Local/hermes/.env
๐ค Sharing with Friends
To share this skill with others, the friend needs:
- API Key from https://opencode.ai/auth (free)
- GitHub repo or direct file transfer
Full guide: references/github-publishing.md
๐ License
MIT โ use freely, share with anyone!