Lobu Builder
Overview
Use this skill when the repository is a Lobu project and the task is to build or change the agent itself: prompt files, lobu.config.ts, local skills, MCP configuration, connections, network settings, or evals.
If you are inside the Lobu monorepo rather than a generated Lobu project, follow that repository's own instructions first.
First Pass
- Read
AGENTS.md first. If it redirects to another file such as @TESTING.md, open that too.
- Read
lobu.config.ts. It is TypeScript: defineConfig from @lobu/cli/config is the default export.
- Enumerate agent directories under
agents/ and inspect the target agent's IDENTITY.md, SOUL.md, and USER.md.
- Check whether the repo has shared
skills/ or agent-local agents/<id>/skills/.
- Look for evals under
agents/<id>/evals/promptfooconfig.yaml (the project may also have legacy YAML files — those don't run).
Do not assume there is only one agent or one platform connection.
What To Edit
IDENTITY.md: who the agent is
SOUL.md: rules, workflows, guardrails
USER.md: user or tenant context
lobu.config.ts: providers, connections, enabled skills, MCP servers, network allowlist (authored with define* from @lobu/cli/config)
skills/.../SKILL.md: shared reusable capabilities
agents/<id>/skills/.../SKILL.md: agent-specific capabilities
agents/<id>/evals/promptfooconfig.yaml: promptfoo eval suite (runs via bunx promptfoo eval with @lobu/promptfoo-provider)
Prefer editing these files directly instead of burying semantics in ad hoc code.
Workflow
- Keep the project runnable. Start or reuse the stack with
npx @lobu/cli@latest run -d.
- Make the smallest prompt, config, skill, or eval change that solves the task.
- Run
npx @lobu/cli@latest validate after changing lobu.config.ts or skill definitions.
- Test semantics with
npx @lobu/cli@latest chat "..." or the project's testing instructions.
- Run
LOBU_TOKEN=$(npx @lobu/cli@latest token --raw) bunx promptfoo eval -c agents/<id>/evals/promptfooconfig.yaml when the expected result should be captured as a regression test.
If the repository already provides project-specific test scripts, use those.
Skills And MCP
- Prefer Lobu skills for reusable capabilities.
- For external data, prefer a small MCP surface over custom glue code.
- For MVP work, start with one MCP server and one skill.
- If per-user access matters, prefer MCP OAuth device authorization and let the gateway proxy handle authentication.
- Keep network access narrow; only add the domains the agent actually needs.
Useful Suggestions
- Add or reorder providers on
defineAgent({ providers }) in lobu.config.ts
- Enable built-in skills with
npx @lobu/cli@latest skills list, search, or add
- Add a custom MCP server via
defineAgent({ mcpServers })
- Add a shared skill under
skills/ for repeated workflows
- Add evals for risky automations and policy constraints
- Wire observability only when needed; Lobu supports Grafana/Tempo traces
References
Before requesting connector app credentials, discover connections.setupOptions with search_sdk and call it in the selected workspace. It returns verified managed OAuth, hosted cloud chat, and local setup choices. Follow the returned URL and instructions; an unavailable cloud lookup is not proof that no managed offer exists. On account-scoped MCP, select an authorized home workspace before calling connections.connectManaged against cloud; the provider org is its managed_by_org argument. Managed OAuth can support local execution. Hosted Slack chat targets a cloud agent and does not connect an independent embedded runtime.
1---2name: lobu-builder3description: Use when working inside a Lobu project generated by @lobu/cli or any repository centered on lobu.config.ts, AGENTS.md, agent prompt files, local skills, and evals. This skill helps a coding agent inspect the right files, make Lobu-native changes, keep the stack runnable, and validate semantics with chat tests and evals.4---56# Lobu Builder78## Overview910Use this skill when the repository is a Lobu project and the task is to build or change the agent itself: prompt files, `lobu.config.ts`, local skills, MCP configuration, connections, network settings, or evals.1112If you are inside the Lobu monorepo rather than a generated Lobu project, follow that repository's own instructions first.1314## First Pass15161. Read `AGENTS.md` first. If it redirects to another file such as `@TESTING.md`, open that too.172. Read `lobu.config.ts`. It is TypeScript: `defineConfig` from `@lobu/cli/config` is the default export.183. Enumerate agent directories under `agents/` and inspect the target agent's `IDENTITY.md`, `SOUL.md`, and `USER.md`.194. Check whether the repo has shared `skills/` or agent-local `agents/<id>/skills/`.205. Look for evals under `agents/<id>/evals/promptfooconfig.yaml` (the project may also have legacy YAML files — those don't run).2122Do not assume there is only one agent or one platform connection.2324## What To Edit2526- `IDENTITY.md`: who the agent is27- `SOUL.md`: rules, workflows, guardrails28- `USER.md`: user or tenant context29- `lobu.config.ts`: providers, connections, enabled skills, MCP servers, network allowlist (authored with `define*` from `@lobu/cli/config`)30- `skills/.../SKILL.md`: shared reusable capabilities31- `agents/<id>/skills/.../SKILL.md`: agent-specific capabilities32- `agents/<id>/evals/promptfooconfig.yaml`: promptfoo eval suite (runs via `bunx promptfoo eval` with `@lobu/promptfoo-provider`)3334Prefer editing these files directly instead of burying semantics in ad hoc code.3536## Workflow37381. Keep the project runnable. Start or reuse the stack with `npx @lobu/cli@latest run -d`.392. Make the smallest prompt, config, skill, or eval change that solves the task.403. Run `npx @lobu/cli@latest validate` after changing `lobu.config.ts` or skill definitions.414. Test semantics with `npx @lobu/cli@latest chat "..."` or the project's testing instructions.425. Run `LOBU_TOKEN=$(npx @lobu/cli@latest token --raw) bunx promptfoo eval -c agents/<id>/evals/promptfooconfig.yaml` when the expected result should be captured as a regression test.4344If the repository already provides project-specific test scripts, use those.4546## Skills And MCP4748- Prefer Lobu skills for reusable capabilities.49- For external data, prefer a small MCP surface over custom glue code.50- For MVP work, start with one MCP server and one skill.51- If per-user access matters, prefer MCP OAuth device authorization and let the gateway proxy handle authentication.52- Keep network access narrow; only add the domains the agent actually needs.5354## Useful Suggestions5556- Add or reorder providers on `defineAgent({ providers })` in `lobu.config.ts`57- Enable built-in skills with `npx @lobu/cli@latest skills list`, `search`, or `add`58- Add a custom MCP server via `defineAgent({ mcpServers })`59- Add a shared skill under `skills/` for repeated workflows60- Add evals for risky automations and policy constraints61- Wire observability only when needed; Lobu supports Grafana/Tempo traces6263## References6465- Getting started: https://lobu.ai/getting-started/66- Skills: https://lobu.ai/getting-started/skills/67- Skills authoring: https://lobu.ai/guides/skills-authoring/68- MCP proxy and device auth: https://lobu.ai/guides/mcp-proxy/69- Testing: https://lobu.ai/guides/testing/70- Evals: https://lobu.ai/guides/evals/71- Observability: https://lobu.ai/guides/observability/72- Repository: https://github.com/lobu-ai/lobu7374Before requesting connector app credentials, discover `connections.setupOptions` with `search_sdk` and call it in the selected workspace. It returns verified managed OAuth, hosted cloud chat, and local setup choices. Follow the returned URL and instructions; an unavailable cloud lookup is not proof that no managed offer exists. On account-scoped MCP, select an authorized home workspace before calling `connections.connectManaged` against cloud; the provider org is its `managed_by_org` argument. Managed OAuth can support local execution. Hosted Slack chat targets a cloud agent and does not connect an independent embedded runtime.