---
title: "Deploy nolock + llama.cpp: ai coding harness + local slms (micro-agents)"
description: "ai coding harness + local slms (micro-agents) - unlimited free tokens"
category: "AI/ML"
url: https://railway.com/deploy/nolock-llamacpp-ai-coding-harness-local-
---

# Deploy nolock + llama.cpp: ai coding harness + local slms (micro-agents)

ai coding harness + local slms (micro-agents) - unlimited free tokens

**[Deploy nolock + llama.cpp: ai coding harness + local slms (micro-agents) on Railway](https://railway.com/template/nolock-llamacpp-ai-coding-harness-local-)**

Machine-readable deploy manifest (JSON, validated by TemplateCI): https://railway.com/deploy/nolock-llamacpp-ai-coding-harness-local-/manifest.json

- **Creator:** impacte.tech
- **Category:** AI/ML

## Template content

### nolock

- **Source:** https://github.com/impacte-tech/nolock
- **Public domain:** Yes

### llamacpp

- **Image:** ghcr.io/ggml-org/llama.cpp:server
- **Start command:** `sh -c 'echo MODEL_HF=[$MODEL_HF]; exec /app/llama-server -hf "$MODEL_HF" --host 0.0.0.0 --port 8080 --threads 4 --ctx-size 4096'`

## Documentation

# Deploy and Host nolock + llama.cpp: ai coding harness + local slms (micro-agents) on Railway

nolock is an AI-native coding harness — a full IDE with chat, agents, micro-agents, tools, terminal, notebooks, and git session diffs. Paired with llama.cpp, it runs local small language models (SLMs) for private, free-token micro-agent execution — all from your browser, no API keys, no per-token bills.

## About Hosting nolock + llama.cpp: ai coding harness + local slms (micro-agents)

This stack deploys two isolated Railway services. **nolock** serves the web frontend + Rust backend (the exact same codebase as the Tauri v2 desktop app) — chat, agents, micro-agents, file tools, search, linter, sessions, and git diffs. **llama.cpp** runs the official server image and pulls a GGUF model from HuggingFace into a persistent volume on first boot. The services talk over Railway's **private network** — llama.cpp is never exposed publicly. The model is a configuration (`MODEL_HF`), swapped by changing a variable and redeploying; previously downloaded models persist on the volume, so switching back is instant. Tool calling works end-to-end: the SLM calls tools (file ops, search, git) and uses the results in its answer.

## Common Use Cases

- **Private AI coding assistant** — an agentic IDE with zero per-token costs and prompts that never leave your Railway instance
- **Local micro-agents** — code review, research, and writing agents powered by small local models, spawned from chat
- **Free-token API backend** — llama.cpp exposes an OpenAI-compatible `/v1/chat/completions` endpoint you own
- **Self-hosted AI workspace** — persistent sessions, git diffs, terminal, and notebooks, all in the browser

## Dependencies for nolock + llama.cpp: ai coding harness + local slms (micro-agents) Hosting

- **nolock web app** — React frontend + Rust backend (`nolock-server`), the same codebase as the Tauri desktop app
- **llama.cpp server** — official `ghcr.io/ggml-org/llama.cpp:server` image, GGUF models persisted at `/models`
- **Railway private networking** — nolock reaches llama.cpp via `http://llamacpp.railway.internal:8080` (never public)
- **Persistent volumes** — one for the GGUF model (`/models`), one for nolock data (`/data/nolock`)
- **HuggingFace GGUF model** — any GGUF repo, e.g. `impacte/ullr:Q4_K_M`

### Implementation Details

**llama.cpp service** (raw image, no public domain):

```bash
# Start command
/app/llama-server -hf ${MODEL_HF} --host 0.0.0.0 --port 8080 --threads 4 --ctx-size 4096

# Variables
MODEL_HF=impacte/ullr:Q4_K_M     # /: — the model is a configuration
LLAMA_CACHE=/models              # persistent volume — model downloads once, survives redeploys

## Why Deploy
nolock + llama.cpp: ai coding harness + local slms (micro-agents) on Railway?

Railway is a singular platform to deploy your infrastructure stack. Railway will host your infrastructure so you don't have to deal with configuration, while allowing you to vertically and horizontally scale it.

By deploying nolock + llama.cpp: ai coding harness + local slms (micro-agents) on Railway, you are one step closer to supporting a complete full-stack application with minimal burden. Host your servers, databases, AI agents, and more on Railway.



## Similar templates

- [Chat Chat](https://railway.com/deploy/-WWW5r) — Chat Chat, your own unified chat and search to AI platform.
- [stella](https://railway.com/deploy/stella) — Self-host stella with web, API, Postgres, Redis, and object storage.
- [Hermes Agent | OpenClaw Alternative with Dashboard](https://railway.com/deploy/hermes-agent-or-openclaw-alternative-wit) — Self-Hosted Hermes AI Agent for Telegram, Discord & Slack

Open this page in a browser: https://railway.com/deploy/nolock-llamacpp-ai-coding-harness-local-
