struere-developer
Installation
SKILL.md
Struere Developer
Struere is an AI-native full-stack agent platform. Define agents, data types, roles, triggers, routers, and tools as TypeScript — then sync to dev and deploy to prod.
Rules
- Ensure
struere devis running. Before making any changes, verifystruere devis running in the background. If it's not running or not available, usebunx struere syncafter each change. Never ask the user whether to sync — just keep changes synced. - Fetch docs before writing code. NEVER write or modify Struere code without first fetching the relevant URL from the documentation table below. Every time. No exceptions. Do not work from memory.
- Use
struere chatto test. After creating or modifying an agent, test it withstruere chat <slug>to simulate conversations before writing evals. Run multiple test conversations to discover edge cases. - Ask before assuming. Before creating an agent, ask what it should do, who it serves, and what tools it needs. Do not guess requirements.
- One export per file. Each file in agents/, entity-types/, roles/, triggers/, routers/ exports a single default. Only tools/index.ts exports all custom tools.
- Slugs are identities. Renaming a slug creates a new resource — it does not rename the existing one.
- Environments are isolated.
struere devsyncs to development + eval (eval excludes triggers and routers).struere deploysyncs to production. - Roles work for both users and agents. A role's policies/scope rules/field masks apply to whoever is assigned to it. Users get roles via the dashboard; agents declare them in code via
defineAgent({ roles: [...] }). Don't conflateagentAccess(dashboard ACL) withagent.roles(permission inheritance). Roles useslugfor identity (lowercase, alphanumeric + hyphens);nameis a display label. Always declareslugon new roles — it'll be required in a future major version. - Keep tools under 5 per agent. Split into specialist agents with
agent.chatif you need more. - Use bun, never npm. Always
bun install,bun run,bunx. - Use
struere keysfor credentials. Get API keys viastruere keys createfrom the CLI — don't direct users to the dashboard for routine key management. - Keep CLI updated. Run
bun update struereto ensure you're on the latest SDK/CLI version before starting work.