Build reliable agents with Lobu skills
A skill isn't a prompt template, it's a full sandboxed computer. All capabilities bundled into one installable unit.
How it works
Scaffold a project, iterate with your coding agent, test it, and ship it.
Initialize the project
Start with the CLI and make the key choices once: runtime, network policy, provider, messaging channel, and memory. Embedded is the default local path, but the same project can move to Docker or Kubernetes later.
Add capabilities to your agent
Open Claude Code, Codex, OpenCode, or any coding agent, point it at the generated Lobu project, and paste a Lobu-specific prompt. That gives the agent the right files and workflow to iterate on.
Start with the Lobu skills docs and paste the prompt on the right into your agent.
I am building a Lobu agent in this repository.
Please:
1. Read AGENTS.md, lobu.toml, and agents/landing-demo-agent/{IDENTITY,SOUL,USER}.md first.
2. Help me shape the agent behavior by editing those files directly.
3. Use Lobu skills when they make sense: https://lobu.ai/getting-started/skills/
4. Suggest any provider, skill, or connection changes needed in lobu.toml.
5. Keep the project runnable with `npx @lobu/cli@latest run -d`.
Explain what you change and why.Test and evaluate
Chat with your agent from the terminal, route test messages through supported chat platforms, and run automated evals to measure quality across models.
See the Testing guide and Evaluations guide.
Ship it the way you want
When the agent is ready, keep the same Lobu project, choose the runtime model that fits your product, and deliver it over the channel your users already use.
Embed in your app
Mount Lobu inside Next.js, Express, Hono, Fastify, or any Node.js framework. Works anywhere that speaks Web Standard Request/Response.
// app/api/lobu/[...path]/route.ts
import { Lobu } from "@lobu/gateway";
const lobu = new Lobu({
redis: process.env.REDIS_URL!,
agents: [{ id: "support" }],
});
const ready = lobu.initialize();
async function handler(req: Request) {
await ready;
return lobu.getApp().fetch(req);
}
export const GET = handler;
export const POST = handler;Run it on your infra
Use the same project and run the stack on Docker or Kubernetes when Lobu should ship as its own app or service.
$ cd landing-demo-agent $ npx @lobu/cli@latest run -d # iterate locally $ docker compose up -d # or deploy the same stack on Kubernetes
What starter skills can bundle
Install the Lobu starter skill with npx @lobu/cli@latest skills add lobu and install Owletto separately with npx owletto@latest skills add owletto. Local SKILL.md files are still discovered automatically. The cards below show the kinds of MCP servers and providers those skills can bundle.
MCP Servers
LLM Providers
An agent is a reproducible environment with capabilities
System Packages
Declare Nix packages your skill needs (ffmpeg, poppler, gh, ripgrep). Installed once, persisted across sessions.
Network Policy
Agents start with zero internet access. Skills declare exactly which domains are allowed — nothing else gets through.
Tool Permissions
Allowlist and denylist which tools the agent can use. Bash commands, file operations, MCP tools — all scoped per skill.
MCP Servers
Connect to external APIs via MCP. Auth is handled by the gateway — workers never see real credentials.
Integrations
OAuth and API-key authenticated services. Users connect their own accounts via the settings page.
Instructions
System prompt, behavioral rules, and domain knowledge. The markdown body of SKILL.md becomes the agent's persona.