deploy_project
Deploy project files to a remote server using credentials loaded securely from the OS keychain or Vault, with dry-run diffs and confirmation before production changes.
Instructions
Deploy project files to a remote server using credentials securely loaded from macOS Keychain / Linux SecretService / Vault. Never requires or exposes passwords. Returns a JSON report: status, git branch/commit, warnings, added/modified/deleted files and any failed uploads or deletes.
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| yes | No | Confirm a production deployment. Leave false first: the call then stops with CONFIRMATION_REQUIRED (production) or DELETIONS_NEED_CONFIRMATION (server-only files would be deleted) and returns the diff; repeat it with yes=true once the diff has been reviewed. | |
| app_url | No | Public web URL of the target app for triggering remote PHP extraction bridge | |
| dry_run | No | Simulate deployment and calculate diff without uploading any files | |
| project | Yes | The name of the project to deploy (e.g. my-webapp) | |
| zip_deploy | No | Use fast Zip packaging and remote PHP auto-extraction bridge (ideal for large codebases and vendor folders) | |
| environment | No | Target environment (e.g. production, staging) | production |
| remote_scan | No | Compare against a fresh scan of the server instead of the local state cache | |
| force_branch | No | Deploy even when the target's allowed_branches / require_clean policy blocks it |