Loading...
Loading...
Use when the user asks to manage Make platform resources with makecli — create/deploy apps, promote beta to production, check build/deploy progress or app URLs, entities, relations, records, inspect resources, switch backend context, log in to Make, or run makecli CLI commands. Also triggered by requests like "部署", "发布到 production", "promote", "部署进度", "构建状态", "apply", "查看应用", "创建记录", "登录 Make", "切换环境", or "/makecli". Does not own DSL schema design (use makedsl), frontend UI (makeui), auth (make-app-auth), Service/API code (make-app-service), runtime packaging (make-app-runtime), OCR integration (make-integration), or canvas-table behavior.
npx skill4agent add qfeius/make-platform-skills makeclibrew tap qfeius/makecli
brew install makecli
makecli update # self-update + sync Make platform skillsmakeclimakecli configure verify --output=jsonmakecli login!makecli configure token!makecli doctormakecli doctor --fixproductionmakecli context use dev|testmakecli configure set context <ctx>--context--context$MAKE_CLI_CONTEXTcontext[settings] contextproduction| Word | Meaning | Values | Where |
|---|---|---|---|
| context | which Make backend the CLI talks to | | global |
| environment | an app's deployment target | | local |
app deploy--envapp promoteUser request arrives
|
+- makecli not installed / not logged in? --> Pre-flight Check above
|
+- New app project? --> app init (local scaffold) / app create (scaffold + register)
|
+- Create/update schema (entity, relation)?
| --> Declarative Workflow (preferred)
|
+- Deploy code to Beta (including recreate and deploy)? --> Deploy Code
|
+- Publish Beta to Prod / 发布到 prod 环境上? --> Promote Beta to Prod
|
+- Build/deploy progress? --> app deploy --status / --wait ; app promote --status --id <promoteId> / --wait
|
+- App overview + environment URLs? --> app info <appKey>
|
+- Data CRUD? --> record commands
|
+- Delete resource / one-off operation? --> Imperative Workflow
|
+- Query / inspect? --> list/get/schema commandsapps/dsl/makedslmakecli diff -f apps/dslmakecli apply -f apps/dslmakecli diff -f apps/dslmakecli schema --app <appKey>--max-depth 2makecli preflight # validate against the build spec (build mode auto-detected)
git add -A && git commit -m "..." # deploy pushes committed HEAD; dirty worktree is refused
makecli app deploy --context <context> --profile <profile> --wait # push committed HEAD to Beta + block until terminal stateapps/dsl/app.yamlapp create--waitURL:--timeoutmakecli app deploy --status # one-shot snapshot of the current HEAD's deploy status
makecli app deploy --status --output json # machine-readable (BuildTask fields + url on success)
makecli app deploy --status --wait # block until terminal state, no pushapp info <appKey>Ready- :codex-followup[发布到 prod 环境上]{prompt="将应用 <appKey> 在 backend context <context>、profile <profile> 下刚完成的 Beta 构建 <buildId>(commit <commitSha>)发布到同一 context 的 Prod 环境。先核对 Beta 仍是该构建,若已变化则说明差异并等待确认;发布后验证 Prod Ready、健康接口和统一登录响应。"}如需发布当前 Beta 版本到正式环境,请输入“发布到 prod 环境上”。app promotemakecli app promote --helpapp info <appKey>promotemakecli app promote --context <context> --profile <profile> --yes --waitapp promote --status --id <promoteId> --waitapp info <appKey>Ready@references/cli-reference.md# App
makecli app create <appKey> [--name <display>] [--description <desc>] [--dry-run]
makecli app delete <key> --env beta|production|ALL --yes # --env required; confirmation prompt without --yes
makecli app list [--filter "name=待办,key=todo"] [--output json]
# Entity / Relation (require --app)
makecli entity create <key> --app <app> [--name <display>] [--json props.json] [--dry-run]
makecli entity list [<key>] --app <app>
makecli relation create <key> --app <app> --json rel.json [--dry-run]
# Record (require --app + --entity; JSON = flat field map)
makecli record create --app <app> --entity <entity> --json data.json [--dry-run]
makecli record list --app <app> --entity <entity> --filter "status in ['todo'] && owner == _currentUser" [--sort-json '[{"fieldKey":"createdAt","order":"desc"}]']
makecli record aggregate --app <app> --entity <entity> --group-json '[{"fieldKey":"status"}]' --aggregates-json '[{"aggregate":"count","alias":"n"}]' # server-side GROUP BY
makecli record update <id> [id...] --app <app> --entity <entity> --json data.json
makecli record delete <id> [id...] --app <app> --entity <entity>--dry-run# Step 1: Authenticate (INTERACTIVE -- user must run via !)
! makecli login # browser OAuth; manual fallback: configure token
# Step 2: Global settings ([settings] section, shared by every profile)
makecli context use test # global default backend context (= settings set context test)
makecli settings set channel beta # release channel stable|beta for `makecli update`
makecli settings list # every global key with value + source
# Step 3: Per-profile overrides (only if non-default)
makecli configure set context test # backend default for the current profile (beats [settings] context)
makecli configure set meta-server-url <host> # host only, /api/make auto-added
makecli configure set X-Tenant-ID <tenant>
makecli configure set X-Operator-ID <operator>
makecli configure --sample # print full config reference
# Verify
makecli doctor # local config health check (exit 1 on problems; --fix for safe repairs)
makecli configure verify --output=json
makecli configure resolve --target local-preview --output=jsonconfigurecontextmeta-server-urlrepo-server-urlauth-server-urlX-Tenant-IDX-Operator-IDsettingscontextchannelrolecheck-for-updatescontext--contextconfigure resolve --target local-preview --output=jsonmake_api_origin/api/makemeta-server-urlrepo-server-url--context--envmakeclicorepack pnpm run verify:publish -- --context devmake-app-runtime22.20.00.34.0pnpm@10.20.0makecli app deploy --waitmakecli app promote --yes --wait--profile <name>~/.make/credentials~/.make/configmakecli whoami! makecli login # 1. Authenticate (user runs via !)
makecli app create shop --name "我的商城" # 2. Scaffold + register + initial commit
cd shop # 3. Write DSL (makedsl skill) under apps/dsl/
makecli diff -f apps/dsl && makecli apply -f apps/dsl
git add -A && git commit -m "feat: initial app" # 4. Develop, then commit
makecli app deploy --wait # 5. Deploy to Beta, wait for build, get URL
makecli app promote --wait # 6. Verified in Beta + user authorized? Publish it to Prod (confirm)makecli app list --filter "key=shop"
makecli app info <appKey> # app meta + beta/production deploy status & URLs
makecli entity list --app <app>
makecli entity list <key> --app <app> # detail view: fields + unique constraints
makecli schema --app <app> # aggregated app + entities + relations@references/cli-reference.mdloginconfigure tokenconfigure config!--yesapp deleteapp promoteapp promoteapp deploy--statusdeploy --status --waitpromote --status --id <promoteId> --waitmakedsl