guren-new-applisted
Install: claude install-skill gurenjs/agent-skills
# New Guren App
You are helping someone start a Guren application from nothing. This skill
ends where the app's own harness begins — once the app exists, its
`CLAUDE.md` / `AGENTS.md` and rules directory are authoritative, not this
file.
## What Guren is, in one paragraph
Guren is a Laravel-inspired fullstack TypeScript framework on Bun. Hono
handles HTTP, Drizzle is the ORM, Inertia.js + React is the frontend, and
Zod validates input. Expect Laravel's shapes: `app/Http/Controllers/`,
`app/Models/`, `routes/web.ts`, `db/schema.ts`, `resources/js/pages/`.
Controllers extend `Controller` and call `this.validateBody(schema)`,
`this.inertia(pages.posts.Index, props)`, `this.redirect('/posts')`. Models
come from `defineModel(table)`. Routes are `router.get('/posts', [PostController, 'index'])`.
What makes it different for an agent: the framework ships introspection and
integrity commands you can run instead of guessing — `guren context` (project
map + API signature digest), `guren check` (route ↔ controller ↔ page
consistency, doc links, spec freshness), `guren audit` (validation and auth
on mutating routes, raw SQL, secrets), and `guren gate` (every CI stage in one
exit code: codegen, typecheck, lint, check, audit, tests). Those live in the
app's `@guren/cli` dependency, so they exist only once an app does.
## Before you run anything
Confirm there is no Guren app here: no `package.json` with a `@guren/core`
dependency in this directory or a parent. If there is one, stop and