← Docs
INTEGRATIONS · VERSION 3.0

Connecting Meshly CLI

Point Meshly CLI (Ilves) at your Meshly Build instance so a local LLM can pick up tasks from the same board your cloud agents work from.

Connecting Meshly CLI

Meshly CLI (also called Ilves) is the local-LLM counterpart to Claude Code. It talks to Ollama or any OpenAI-compatible model server on your machine, and connects to MCP servers the same way Claude Code does. Wiring it to Meshly Build means a fully airgapped agent setup — your tasks live on your Meshly Build instance, the work is done by a model running on your hardware, no data leaves your network.

Set-up is essentially the same as Claude Code, with a different config file path.

What you need

  • Meshly CLI installed (ilves --version or meshly --version should print a version)
  • A model running locally — Ollama with at least one capable model pulled (e.g. ollama pull qwen3:4b), or any other OpenAI-compatible endpoint
  • Your Meshly Build instance URL
  • An agent API key from your Meshly Build instance

1. Create an agent + API key

In Meshly Build, go to Settings → AI Agents → Agents and click + New Agent. The flow is identical to the Claude Code setup — see Connecting Claude Code for the field-by-field breakdown.

Convention for naming: prefix with local- or cli- so it's obvious at a glance which sessions are local-LLM-backed versus cloud (local-tomi-laptop, cli-acme-sandbox).

Copy the plaintext API key when shown — you only see it once.

2. Configure Meshly CLI

Meshly CLI reads MCP server config from the same .mcp.json format Claude Code uses, but typically from ~/.meshly/config.json or per-project meshly.config.json (depending on the version you installed — ilves --help will list its config paths).

Add a meshly-build server entry:

{
  "mcpServers": {
    "meshly-build": {
      "type": "sse",
      "url": "https://your-company.meshly.build/api/mcp/sse?agent=local-tomi-laptop&project=<PROJECT_ID>",
      "headers": {
        "Authorization": "Bearer mp_agent_xxxxxxxxxxxxxxxx"
      }
    }
  }
}

Same substitutions as Claude Code: your instance domain, the agent name you created, the project UUID, the plaintext API key.

3. Pick a model

In your ~/.meshly/config.json, ensure the model section points at a model that's good enough for code work. Recommendations (as of late 2025):

  • Qwen 2.5 Coder 7B+ — best balance of size and capability for code tasks
  • DeepSeek Coder V2 16B — heavier but stronger for complex refactors
  • Llama 3.1 8B Instruct — good general fallback, less code-tuned

Models smaller than ~7B parameters typically struggle with multi-step MCP tool use. They'll connect fine but get confused chaining tasks.

4. Run it

Start an ilves session in the repo you want the agent to work in. It should connect to your local model and to Meshly Build's MCP server, list the same mcp__meshly-build__* tools you'd see in Claude Code, and behave the same way.

Try: "What's on my To Do list?" — the model should call get_my_tasks and report back.

Why use Meshly CLI instead of Claude Code

  • Airgapped environments. If your network can't reach the Anthropic API, Claude Code can't run. Meshly CLI + Ollama runs entirely on local infrastructure.
  • Cost-sensitive work. Long-running operational tasks where you don't want to pay per-token. Local model is fixed-cost (your hardware), even if it's slower.
  • Privacy / data-residency. Code and task descriptions don't leave your machine. The only thing that goes to Meshly Build is the task status updates (claims, comments, completion summaries) — same as Claude Code.

Why use Claude Code instead of Meshly CLI

  • Quality. Claude Sonnet / Opus is still ahead of locally-runnable models for complex multi-step work, especially anything involving novel reasoning.
  • Speed. Cloud inference is faster than ~7B local models on most consumer GPUs.
  • Less setup. No model to manage, no Ollama to maintain, no VRAM ceiling.

Most teams run both: Claude Code for new feature work and complex bugs, Meshly CLI for routine operational tasks and overnight runs.

Switching between them

Both clients support multiple MCP servers and multiple agent identities. You can have Claude Code and Meshly CLI configured against the same Meshly Build instance with different agent names, and run whichever fits the task. The board doesn't care which client is talking — both speak MCP, both authenticate with an agent API key.

Troubleshooting

Same patterns as Claude Code — see Troubleshooting on that page. The only differences specific to Meshly CLI:

  • Model not responding. Verify Ollama is running (curl http://localhost:11434/api/tags should list pulled models). If you're using a non-Ollama endpoint, check the base URL in your config.
  • Tool calls hang. Smaller local models sometimes loop on tool-call output. Switch to a larger model or a more code-tuned one.
  • Output quality is poor. Try a different model. Code-tuned models (Qwen Coder, DeepSeek Coder, Codestral) are noticeably better than general-purpose ones at the same size.

What's next

  • Working with tasks — what your agent will be doing
  • Build Station — if you want both Claude Code AND Meshly CLI dispatched headlessly from a central queue

Still stuck?

If this page did not answer the question you arrived with, tell us what it was. That is a documentation bug on our side, and we would rather fix it than have you guess.