PermDock
CLI

init

Write a preset's permissions, policy, app definition and framework wiring into a project from a permdock.com/create code or from flags, keep every file that already exists, and print the install and shadcn commands to run.

permdock init writes the files a preset generates into the current project. It never overwrites a file that exists unless --force is set, installs nothing and calls no network: it prints the package manager and shadcn commands for you to run.

Usage

permdock init --preset p1AQIDBAc                  # a code from permdock.com/create
permdock init --archetype b2b --framework hono     # or pick with flags
permdock init --archetype agent --agent ai-sdk --agent mcp --ui shadcn
permdock init --archetype consumer --dry-run       # print the plan, write nothing
permdock init --preset p1AQIDBAc --src app --force
FlagMeaning
--preset <code>A preset code from /create; the other selection flags are ignored
--archetype <name>b2b (default), agent, marketplace, api, internal or consumer
--framework <name>next (default), hono, express or none
--feature <name>A feature to add beyond the archetype's, repeatable
--agent <name>ai-sdk or mcp, repeatable
--ui <name>shadcn or react-native, repeatable: prints the @permdock recipes to add
--src <dir>The directory the files go in; default src
--dry-runList the files it would write; write nothing
--forceOverwrite files that already exist

The output ends with the preset's code and its /create link, so the same preset can be opened, changed and applied again. --json prints { preset, written, kept, dryRun, install, shadcn, docs }.

Why

init writes only the application's own files: declarations and wiring that call into the permdock package. Every rule, check and verification stays in the package, so npm update fixes them in a project init created long ago. Keeping existing files makes running it again safe; it adds what is missing and leaves your changes alone.

Last updated on

On this page