For agents

Install Lunnoa Cursor and Claude skills, then discover and deploy with @lunnoa/client.

Coding agents (Cursor, Claude Code) should start from the packaged skills, not the whole docs tree. Human guides below remain the canonical detail.

Install the skills

@lunnoa/client publishes two skills under skills/:

SkillJob
lunnoa-solution-designInterview the human, map intent to Lunnoa primitives, write a build brief
lunnoa-clientImplement: auth, CLI discovery, codegen, define* / runs / CLI deploy, React hooks

After npm install @lunnoa/client, copy or enable them from:

skills-paths.txt
node_modules/@lunnoa/client/skills/lunnoa-solution-design/node_modules/@lunnoa/client/skills/lunnoa-client/

into your app’s .cursor/skills/ (Cursor) or Claude Code skills path. In the SDK repo, the same files live under skills/ (source of truth) and are mirrored into .cursor/skills/ for local work.

Prefer solution-design first when requirements are unclear, then lunnoa-client.

Partner paste block

Drop this into a new chat so the agent has credentials and the right skill order:

partner-prompt.txt
Use @lunnoa/client skills: lunnoa-solution-design then lunnoa-client.LUNNOA_URL=… LUNNOA_API_KEY=lna_… (server only). Project ID=…Start by interviewing me, then: npx @lunnoa/client tools list --json --for-agentand tools get <actionId> --json. Do not invent catalogue action ids.

Never put an lna_ key in browser code or client-bundled env vars. See Authentication.

Agent playbook (short)

  1. Clarify with lunnoa-solution-design (trigger, actor, data, HITL, auth pattern).
  2. Auth: Pattern A (createServerClient + server lna_) or Pattern B (createBrowserClient + JWT).
  3. Discover: npx @lunnoa/client tools list --json --for-agent, then tools get <actionId> --json. Also apps, connections, agents, workflows, entity-types, projects, features. SDK equivalent: workflowApps.list(). Do not invent catalogue action ids. See Discovery and CLI.
  4. Codegen for typed UIs: npx @lunnoa/client codegen …. See Codegen.
  5. Run vs deploy: Ad-hoc: actions.run, runs.start, workflows.execute. Durable: npx @lunnoa/client workflows|agents|entity-types deploy. Entity types are workspace-scoped (no --project-id). See Run actions, Start runs, CLI.
  6. Entity attributes: Unknown keys are rejected unless the type allows them; use extensions for flexible bags. See Entities.
  7. Boundary: Client defineAction is not toolkit createAction. Use @lunnoa/toolkit only for in-platform integration apps.

Related guides

GuideWhen
AuthenticationPattern A vs B, CORS, keys
AgentsEnd-to-end define, deploy, and chat
Define locallydefineWorkflow / defineAgent / defineEntityType / defineAction
EntitiesStrict attributes, extensions, type deploy
React hooksHeadless progress, chat, inbox, entities
Agent chatSSE UIMessage streaming
CLItools list / tools get, then deploy
TypeScript client SDKFull human index