Subchapter 23.8
references/upgrading.mdMarkdown3 KBView on GitHub
Use this when the user wants to upgrade an existing Datadog Apps project or pull in behavior available from the latest app scaffolder.
Focus on these Datadog packages first:
@datadog/vite-plugin: Datadog Vite integration used for local development, build, and upload behavior.@datadog/action-catalog: typed Action Catalog client used by backend functions.Preserve the app’s existing package manager and lockfile style.
Read release notes or package metadata before changing versions:
npm view @datadog/vite-plugin version repository.url homepage bugs.url
npm view @datadog/action-catalog version repository.url homepage bugs.urlThen check the package’s release notes, changelog, GitHub releases, or npm package page for breaking changes, new features, migration notes, and peer dependency changes. If release notes are not available, inspect the version history and package metadata before choosing a target version.
Inspect the current app:
npm outdated @datadog/vite-plugin @datadog/action-catalog
npm ls @datadog/vite-plugin @datadog/action-catalogIf the app does not use npm, run the equivalent package-manager commands.
For npm projects:
npm install @datadog/action-catalog@latest
npm install -D @datadog/vite-plugin@latestAfter upgrading, check and preserve:
vite.config.ts Datadog plugin configuration, especially auth.site.package.json scripts such as dev, build, and upload.@datadog/action-catalog/....AGENTS.md.If the user asks for a feature that may come from the latest scaffolder, create a temporary baseline app and compare it with the existing project instead of guessing.
Create a baseline outside the app repo:
tmp_dir="$(mktemp -d)"
npm create @datadog/apps@latest -- "$tmp_dir/base-app" --template vite-react -y --skip-post-scaffoldCompare relevant files:
diff -ru "$tmp_dir/base-app/package.json" package.json
diff -ru "$tmp_dir/base-app/vite.config.ts" vite.config.ts
diff -ru "$tmp_dir/base-app/AGENTS.md" AGENTS.md
diff -ru "$tmp_dir/base-app/src" srcPort only the specific scaffolder changes needed for the user’s goal. Do not replace the app wholesale or discard existing app logic.
Run the project’s normal checks after upgrading:
npm run typecheck
npm run lint
npm run buildFor backend function or upload-related changes, also test the OAuth-backed commands:
npm run dev
npm run uploadTo verify the optional key-based path, set both DD_API_KEY and DD_APP_KEY before running the same commands.