add_custom_domain
Claudecreate_app
ClaudeProvisions an empty app on this workspace: a git repo, subdomain, port, and golden-path scaffold files. It contains no feature implementation and is not yet live.
delete_app
ClaudePermanently deletes an app: removes its containers, data, and source code from the server, then deletes the app record. Irreversible. Does not affect other apps or the server. Deletes only when confirm is true.
deploy
ClaudeCommits, builds (Nixpacks), and deploys the app. Returns a deploy job id; the build runs in the background and its deploy_state moves through queued and running before it ends in succeeded or failed. The app is live only once the deploy has succeeded.
get_app
ClaudeGet an app's file manifest, recent releases, and secret key names.
get_platform_conventions
ClaudeReturn the Croft golden-path rules that every app on this workspace must follow.
grant_access
ClaudeGrant an existing user access to an app.
invite_user
ClaudeInvite someone by email and grant app access. apps is 'all' or a list of app names.
list_apps
ClaudeList the apps in this workspace with their URLs, status, and last release.
list_secret_keys
ClaudeList an app's secret key names (never values).
list_users
ClaudeList the people in this workspace and which apps they can access.
logs
ClaudeRecent runtime logs for an app (relayed from its box).
read_file
ClaudeRead one file from an app's own git repo on this Croft workspace. No external API — the path is resolved inside the app's repository.
revoke_access
ClaudeRevoke a user's access to an app.
rollback
ClaudeRe-deploy the previous release of an app.
set_public_paths
ClaudeSets which of an app's paths are reachable WITHOUT login. By default an app is fully private (workspace login required everywhere). Pass the complete desired list of specific paths (e.g. ["/survey"]); each listed path and everything under it becomes public, everything else stays private. An empty list makes the app fully private again. The whole app cannot be made public — root or wildcard paths are rejected.
set_schedules
ClaudeSets the app's scheduled tasks. Each is { name, cron, path }: on the cron (standard 5-field, UTC) Croft makes an internal POST to the app's path, and the app does the work (e.g. send a daily email, sync an API). Use this for anything recurring instead of writing your own cron — it survives deploys and reboots and is shown in the panel. Also implement the endpoint (e.g. a POST route at that path). Pass the full desired list; an empty list clears all schedules.
set_secret
ClaudeSet (or replace) an env secret for an app. Value is stored encrypted and injected at deploy.
status
ClaudeReports an app's deploy and health status. live is true only when the latest deploy has fully succeeded; deploy_state gives the current stage (queued, running, succeeded, or failed). Read-only and safe to call repeatedly — each call returns the current stage, so it can be polled to follow a deploy's progress.
write_files
ClaudeWrites files into an app's git repo and commits them (as 'Claude via Croft'). files is a list of {path, content}. Committed files are staged in the repo; they are not built or published until the app is deployed.