Setup Guide

Run omp with a free coding model

Connect omp to OpenRouter and start with Poolside: Laguna S 2.1 (free). Your first agentic coding run costs $0 in model tokens. The free-model catalog refreshes every 24 hours, and every setup on this page keeps the explicit :free suffix.

terminal

$ omp

model: openrouter/poolside/laguna-s-2.1:free · $0 model tokens

Free catalog · 24-hour refresh

Pick the model omp will use

Start with Laguna S 2.1 for agentic coding. Choose another model and the terminal example, YAML, manual commands, and Claude Code prompt update together.

Every option below currently has explicit :free pricing, text output, tools, and tool choice. OpenRouter can change availability and rate limits. Review the provider’s data policy before sending private code.

  1. MiniMax: MiniMax M3 (free)

    1.0M tokens

    Long-context coding, tool use, and repositories that include images or video.

    1,048,576-token context, tool calling, and text, image, and video input on the OpenRouter model card. Source

  2. NVIDIA: Nemotron 3 Ultra (free)

    1M tokens

    Long-context reasoning, orchestration, and coding-agent experiments.

    OpenRouter lists a 1,000,000-token context window, reasoning controls, and tool calling. Source

  3. NVIDIA: Nemotron 3.5 Lightning (free)

    1M tokens

    High-throughput agent experiments and smaller coding tasks.

    OpenRouter lists a 1,000,000-token context window, reasoning controls, and tool calling. Source

  4. Dots Studio: Dots3-Note Preview (free)

    512k tokens

    Open the model card before choosing it for a repository.

    No GraniteAI coding recommendation has been recorded for this model yet. Source

  5. Google: Gemma 4 26B A4B (free)

    262k tokens

    Lighter multimodal instruction following with tool use.

    OpenRouter lists tools, reasoning controls, and a 262,144-token context window. Source

  6. Google: Gemma 4 31B (free)

    262k tokens

    General multimodal instruction following with tool use.

    OpenRouter lists tools, reasoning controls, and a 262,144-token context window. Source

  7. Ling 3.0 Flash Fin (free)

    262k tokens

    Open the model card before choosing it for a repository.

    No GraniteAI coding recommendation has been recorded for this model yet. Source

  8. NVIDIA: Nemotron 3 Super (free)

    262k tokens

    Multi-agent experiments and structured repository work.

    OpenRouter lists tool calling, structured output, and a 262,144-token context window. Source

  9. Poolside: Laguna S 2.1 (free)

    Recommended

    Poolside says free inputs and outputs may be used to improve its models.

    262k tokens

    Agentic coding, terminal work, and multi-step repository changes.

    70.2% Terminal-Bench 2.1 and 40.4% DeepSWE, published on the OpenRouter model card. Source

  10. Poolside: Laguna XS 2.1 (free)

    262k tokens

    Smaller agentic coding tasks where latency matters more than maximum capability.

    Coding-focused Poolside model with tool calling and a 262,144-token context window. Source

  11. Cohere: North Mini Code (free)

    256k tokens

    Fast routine coding tasks and small tool-driven changes.

    Coding-focused model with tool calling and a 256,000-token context window. Source

  12. NVIDIA: Nemotron 3 Nano Omni (free)

    256k tokens

    Open the model card before choosing it for a repository.

    No GraniteAI coding recommendation has been recorded for this model yet. Source

  13. Z.ai: GLM 5.2 (free)

    256k tokens

    Project-scale coding, structured output, and long-running tool use.

    256,000-token current API context with tools, tool choice, and structured outputs. Source

  14. MiniMax: MiniMax M2.7 (free)

    197k tokens

    Earlier MiniMax agent workflows and tool-use experiments.

    OpenRouter lists tools, reasoning controls, and a 196,608-token context window. Source

  15. LiquidAI: LFM2.5-2.6B (free)

    66k tokens

    Open the model card before choosing it for a repository.

    No GraniteAI coding recommendation has been recorded for this model yet. Source

Catalog read Aug 27, 2026, 06:15 PM UTC. Availability and technical fields come from the public OpenRouter catalog. Fit notes and evidence links were reviewed by GraniteAI on Aug 27, 2026. They are not equivalence rankings.

The setup at a glance

6

Steps

~10

Minutes

$0

Model tokens

24h

Catalog refresh

For Claude Code users

Give Claude Code the setup job

Paste the prompt on the right into Claude Code. It verifies that Poolside: Laguna S 2.1 (free) is still free, installs omp, opens OpenRouter, merges the model configuration, and runs one explicit :free test.

The guardrails are part of the prompt. No paid fallback. No API key in chat. No silent model substitution. The manual path below exposes every command.

paste this into Claude Code
Set up the omp coding agent on this machine with the OpenRouter free model Poolside: Laguna S 2.1 (free) (poolside/laguna-s-2.1:free).

Safety rules:
- Never choose or test a paid model.
- Keep the :free suffix on every model id and command.
- Never print my full API key after I confirm it.
- Do not ask me to paste the key into chat or save it in a project file.
- Stop before any action that could create a charge.

1. Verify the model is still free.
   Read https://openrouter.ai/api/v1/models?max_price=0 without authentication.
   Confirm poolside/laguna-s-2.1:free is present, prompt and completion prices are both numeric zero, text output is supported, and tools plus tool_choice are supported.
   If any check fails, stop. Show me the current coding-capable :free alternatives. Do not silently substitute another model.

2. Install omp.
   macOS/Linux: curl -fsSL https://omp.sh/install | sh
   Windows PowerShell: irm https://omp.sh/install.ps1 | iex
   Verify with "omp --version". If the shell cannot find omp, tell me to open a new terminal and retry.

3. Create my OpenRouter API key.
   Open https://openrouter.ai/settings/keys in the browser.
   If I am not signed in, stop and let me sign in.
   Have me create a key named "omp-free". Do not copy the key into chat.
   Give me the matching local command with <key> left as a placeholder:
   macOS/Linux: export OPENROUTER_API_KEY=<key>
   Windows: [System.Environment]::SetEnvironmentVariable('OPENROUTER_API_KEY','<key>','User')
   Let me run that command locally. Then continue.

4. Register the selected free model.
   Create ~/.omp/agent/models.yml (Windows: %USERPROFILE%\.omp\agent\models.yml).
   If the file exists, merge this entry under providers instead of overwriting unrelated settings:

   providers:
     openrouter:
       models:
         - id: poolside/laguna-s-2.1:free
           name: "Poolside: Laguna S 2.1 (free)"
           reasoning: true
           input: [text]
           contextWindow: 262144
           maxTokens: 32768
           cost:
             input: 0
             output: 0
             cacheRead: 0
             cacheWrite: 0
           compat:
             thinkingFormat: openrouter

5. Verify without a paid fallback.
   Run "omp models openrouter" and confirm poolside/laguna-s-2.1:free is listed.
   Then run: omp -p --model openrouter/poolside/laguna-s-2.1:free "Reply with only OK"
   Expect exactly OK. If OpenRouter reports a free-tier rate limit or unavailable provider, stop and explain it. Do not remove :free or retry against a paid model.

6. Hand off.
   Tell me to run "omp" inside a project, type /model, and assign Poolside: Laguna S 2.1 (free) to the Default role.
   Remind me that free endpoints have lower limits and can change availability. Tell me to review the provider data policy before using private code.

The working setup

Three pieces. One free coding run.

omp gives the model a repository, tools, and a terminal workflow. OpenRouter gives omp one API key across many providers. The selected :free model does the reasoning and coding without a per-token charge.

This page starts with Poolside: Laguna S 2.1 (free). Agentic coding, terminal work, and multi-step repository changes. 70.2% Terminal-Bench 2.1 and 40.4% DeepSWE, published on the OpenRouter model card.

Free endpoints are made for experiments and personal learning. They carry lower rate limits, can disappear, and may use different data policies. Check those limits before a private repository. Then switch models from the live list without rewriting the setup by hand.

omp

The coding harness. It reads the repository, edits files, runs commands, and keeps the work inside a terminal session you control.

OpenRouter

The provider layer. One account and one key expose the current free catalog. Explicit :free ids prevent a quiet move onto paid inference.

Poolside: Laguna S 2.1 (free)

Agentic coding, terminal work, and multi-step repository changes. 262k-token context. $0 prompt and completion pricing when this catalog was read.

Step by step

The manual guide

Pick your system. Each step is short on purpose. Commands in the dark boxes have a copy button.

  1. Install omp

    Open Terminal.

    curl -fsSL https://omp.sh/install | sh

    Run omp --version. A version number confirms the install.

    If Terminal cannot find omp, open a new terminal window. Run omp --version again.

  2. Get an OpenRouter API key

    Open openrouter.ai in your browser. Make an account if you do not have one.

    Go to Settings, then Keys. Select Create Key. Name it omp-free.

    Copy the key into the local command in the next step. Do not paste it into chat or a project file.

  3. Give omp the key

    In Terminal, run this command. Use your key from step 2:

    export OPENROUTER_API_KEY=sk-or-v1-...

    This export lasts for this terminal session only.

    To keep the key, add the same export line to your ~/.zshrc file. Then run source ~/.zshrc.

  4. Register the model

    Create the file ~/.omp/agent/models.yml. Paste this text. Save the file:

    providers:
      openrouter:
        models:
          - id: poolside/laguna-s-2.1:free
            name: "Poolside: Laguna S 2.1 (free)"
            reasoning: true
            input: [text]
            contextWindow: 262144
            maxTokens: 32768
            cost:
              input: 0
              output: 0
              cacheRead: 0
              cacheWrite: 0
            compat:
              thinkingFormat: openrouter
  5. Check that it works

    Run omp models openrouter. Poolside: Laguna S 2.1 (free) appears in the list.

    Then run this test. The reply must be exactly OK:

    omp -p --model openrouter/poolside/laguna-s-2.1:free "Reply with only OK"
  6. Make it your default

    Run omp inside one of your projects.

    Type /model and press Enter.

    Find Poolside: Laguna S 2.1 (free) under openrouter. Assign it to Default.

    New sessions now start with Poolside: Laguna S 2.1 (free).

When something fights back

Four problems, four fixes

The shell cannot find omp

The installer adds omp to your PATH, but an open terminal keeps the old PATH. Close the terminal, open a new one, and try again.

models.yml validation failed

Almost always indentation. YAML needs two spaces per level, never tabs. Keep the id line exactly poolside/laguna-s-2.1:free.

Poolside: Laguna S 2.1 (free) does not appear in /model

Check two things. The file must sit at ~/.omp/agent/models.yml, and OPENROUTER_API_KEY must be set in the terminal you launched omp from. Run omp models openrouter to see what loaded.

The free model is rate-limited or unavailable

OpenRouter can limit or remove a free endpoint. Return to the model list on this page and choose another explicit :free model. Never remove the suffix to force a paid retry.

Keep experimenting

One key. A catalog you can change.

Start with Poolside: Laguna S 2.1 (free). Return when the free catalog changes, choose a different model, and copy a fresh setup. The explicit :free id keeps the boundary visible.