The starta command. It makes a work app, adds and removes modules, updates the app from the kit and sets its look.
The CLI (command-line tool) starta starts a work app, adds and removes its modules, updates it from the kit (Starta’s starting code), and sets its look. The code is copied into the app and is yours from then on. You see modules only; the building block a module is made from comes and goes with it.
There is nothing to install: it runs straight from GitHub as npx github:productvibe/starta <command>, which needs Node.js 20.12 or later and git. On this page, starta is short for npx github:productvibe/starta.
Claude runs these for you. You ask in plain words, such as “Take Goals out of the sidebar”, and Claude runs the command, says what it did, and checks the app still works.
npx github:productvibe/starta init <folder> [--preset <code>] [--modules <id,id>]
starta list
starta add <module>... | --all
starta remove <module>
starta update [--to <tag>]
starta apply --preset <code>Every command but init runs inside an app: it finds the app by its starta.json. No prompts, no dependencies.
init#
Makes a new app in a folder.
npx github:productvibe/starta init my-work --preset fQnA- It gives the kit’s five modules: Tasks, People, Goals, Wiki and About, each with its example data.
--presetsets the look; without it the app getsfQnA, the default. See Themes.--modulespicks the modules instead, such as--modules tasks,wiki. About is always in: every app has it.
Create writes this command for you, inside the prompt it gives you to paste into Claude: see Quickstart.
list#
Prints the kit’s modules, with a mark by the ones the app has.
starta listadd#
Adds one or more modules from the kit.
starta add goals
starta add --allIt copies each module, the block it is built on, and its example data, and records it in starta.json. --all adds every module the app does not have yet. A module the app already has is skipped.
remove#
Removes a module.
starta remove goalsIt takes the module out of the sidebar. Its data file stays, so nothing you wrote is lost.
update#
Brings the kit’s improvements into the app.
starta update --dry-run
starta updateIt replaces a file only the kit changed, keeps one only you changed, and when both changed, writes the kit’s version beside yours as <file>.kit. Your data and your wiki are never overwritten. See Kit updates.
apply#
Sets the look from a preset code.
starta apply --preset fQnAIt writes app/src/theme.css and app/src/theme.json whole from the code. A theme.css you changed is kept, with the new one beside it as theme.css.kit. A web font the preset picks is installed with the app.
Options#
| Option | Does |
|---|---|
--kit <folder or git url> |
Where the kit comes from. Default: $STARTA_KIT, else the public repository github:productvibe/starta |
--to <tag> |
Use the kit at this version |
--dry-run |
Say what would change, and change nothing |
--json |
Print the result as JSON |
--no-install |
Skip installing packages |
starta.json#
Every app made by init has a starta.json at its top. It records the kit, its version, the preset, the modules and blocks, and a fingerprint of every file copied from the kit. That is how update and remove tell the kit’s files from your edits.