app-deploy

Uploads Nova-generated Learn and Deliver apps to CommCare HQ as drafts.

1|2|Updated Apr 1, 2026
One-click install
npx skills add https://github.com/dimagi-internal/ace --skill app-deploy-dimagi-internal
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: app-deploy
Source: https://github.com/dimagi-internal/ace/tree/main/skills/app-deploy
Command: npx skills add https://github.com/dimagi-internal/ace --skill app-deploy-dimagi-internal

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

Manually uploading Nova-generated Learn and Deliver apps to CommCare HQ is time-consuming and error-prone, with risks of targeting the wrong project space or missing unescaped XML metacharacters that cause build failures. This skill automates the entire deployment workflow, ensuring apps are uploaded correctly as drafts, all required metadata is captured, and downstream phases have the information they need to proceed.

Core Features & Use Cases

  • Pre-flight Project Space Validation: Confirms the target CommCare HQ project space is correctly configured before upload, preventing accidental uploads to the wrong environment.
  • XML Form Linting: Scans all app forms for unescaped XML metacharacters in labels, hints, and options that would cause build failures, fixing issues automatically before upload.
  • Automated Draft Upload: Uses the Nova plugin to upload both Learn and Deliver apps as draft builds to the configured CommCare HQ project, with clear error handling for domain authorization and upload failures.
  • Structured Artifact Generation: Writes a deployment summary with app IDs and URLs, and atomically updates the run state with consolidated app metadata for use by downstream phases like app release and payment unit configuration.
  • Use Case: For a Connect opportunity, after Nova generates the Learn and Deliver apps, run this skill to automatically deploy them to CommCare HQ, capture all required IDs and URLs, and make the metadata available for the rest of the ACE lifecycle without manual intervention.

Quick Start

Use the app-deploy skill to upload your Nova-built Learn and Deliver apps to the configured CommCare HQ project space and generate the deployment summary with all required app IDs and URLs.

Frequently Asked Questions about app-deploy

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I upload Nova apps to CommCare HQ as draft builds?

Automating Nova app deployment to CommCare HQ involves pre-flight project space validation, XML form linting to prevent build failures, and using the Nova plugin to upload Learn and Deliver apps as drafts while capturing all required app IDs and URLs for downstream lifecycle phases.

Why do my CommCare app builds fail after uploading from Nova?

CommCare build failures frequently stem from unescaped XML metacharacters in form labels, hints, and options. An automated XML linting step scans all app forms and fixes these issues before upload, preventing build failures when deploying Nova-generated applications.

Do I need to manually configure run state updates after deploying apps to CommCare HQ?

Manual run state updates are unnecessary after deploying apps to CommCare HQ. The deployment process atomically updates the run state artifact with consolidated app metadata, ensuring downstream phases like app release and payment unit configuration have immediate access to required IDs and URLs.

Can I validate my CommCare HQ project space before uploading Nova apps?

You can validate your CommCare HQ project space before uploading Nova apps through pre-flight validation. This confirms the target project space is correctly configured, preventing accidental uploads to the wrong environment and handling domain authorization errors before deployment begins.

What is the best way to automate Learn and Deliver app deployment for Connect opportunities?

Automating Learn and Deliver app deployment for Connect opportunities requires a workflow that handles post-build app deployment, ID capture, and run state updates atomically. This generates a deployment summary with app IDs and URLs, ensuring downstream release and payment unit configuration phases have required metadata.

How are domain authorization errors handled when uploading to CommCare HQ?

Domain authorization errors during CommCare HQ uploads are handled with clear error reporting. The deployment workflow catches authorization failures when the Nova plugin attempts to upload draft builds, surfacing errors instead of allowing silent failures to the configured project space.