Skip to main content
On this page

Kater CLI Present and share app

kater app apply

Moves a draft app from a brainstorm topic into your apps.

The draft in brainstorm/<topic>/apps/<name>/ goes to users/<you>/apps/<name>/ in one commit, with an id and you as its owner. Kater then deletes the draft.

Examples

Terminal window
# Go to your own folder in the connection
cd connections/snowflake_prod_connection/users/you@example.com
# Check the move of the platform_spend_review draft, and write nothing
kater app apply brainstorm/platform_spend/apps/platform_spend_review --dry-run
# Move the draft into your apps
kater app apply brainstorm/platform_spend/apps/platform_spend_review
# Move it under another name
kater app apply brainstorm/platform_spend/apps/platform_spend_review --name platform_spend_summary

Arguments

ArgumentDescription
<draft>The draft app to move, by its folder in your brainstorm, such as brainstorm/platform_spend/apps/platform_spend_review.

Options

OptionDescription
--name <name>Its folder’s name in your apps, in lower snake case, such as platform_spend_summary. By default, it keeps the draft’s own name. Kater refuses a name that your apps already have.
--dry-runChecks the move and says what it would write, and writes nothing. It gives the apply line to run next.
--revision <revision>The revision of a dry run, as its apply line gives it. Kater moves the draft only while it is still that proposal, and refuses with proposal_changed when it is not.

It also takes the global options --json, --kater-root, --scope and --help.

The checks

The draft moves only after it passes every check an app passes. Kater names each problem with its page and line, and writes nothing until all pass.

  • No tag reads sample rows, a scratch statement or anything else in a brainstorm folder.
  • A tag that reads a workspace copy moves only after the copy is applied with kater workspace apply. It then reads the original.
  • Every query its tags read resolves and compiles, and every tag fits its query.
  • Its files keep app-kit’s boundaries.

Ask first

An agent moves a draft only after you say yes. In a chat, the agent runs the dry run with the Kater MCP’s kater tool, and the move with kater_apply. With --json, the answer is the app.apply_draft answer.

After the move

To see the app, run kater brainstorm show on its new folder, users/<you>/apps/<name>/.

See also