Skip to content

kumiko sync-managed

Terminal window
kumiko sync-managed # dry run, lists what would change
kumiko sync-managed --write # write the changes
kumiko sync-managed --write --adopt

Renders the managed files of an app from the installed @cosmicdrift/kumiko-dev-server and compares them with the files in the repository. Without --write the command changes nothing and lists each file it would create or update. The repository root is found from the current directory, and kumiko.json there must declare kind app.

FilesNote
deploy/Dockerfile, deploy/Dockerfile.dockerignoreContainer build
.github/workflows/ci.yml, release.yml, cache-cleanup.ymlShared workflows
.husky/pre-pushApp additions go to scripts/pre-push-extra.sh
bunfig.toml, bunfig.integration.toml, bunfig.real.toml, bunfig.dom.tomlbunfig.dom.toml only with uiRoots
kumiko/schema.tsFEATURES and ENTITY_METAS from kumiko.config.ts

A file is overwritten only when it carries the kumiko-managed marker on its first line, or on the second line after a #! or # syntax= line. A file with kumiko-managed: local <reason> on the line after the marker keeps its local change; the output lists it as skip with the reason.

FlagEffect
--writeWrite the changes instead of listing them
--adoptAlso take over existing files that have no marker yet, for the first adoption

Any other argument stops the command with a list of the known flags.

  • After a framework bump, when kumiko check reports drift in managed files
  • When an upgrade note says to run kumiko sync-managed --write, for example before generating a migration from a changed kumiko/schema.ts

0 after the dry run or the write, also when files differ. 1 when no Kumiko repository is found, when kumiko.json declares another kind than app, or on an unknown argument. Template errors are printed with ✗ but do not change the exit code; kumiko check is the gate for drift.