Manifest version consistency between Teams Toolkit and Teams App Studio
0 reputation · 20 Jul 2020, 15:42 UTC
0 reputation · 20 Jul 2020, 15:42 UTC
Goal: keep the Teams app manifest synchronized between local development with the Teams Toolkit extension and the web‑based Teams App Studio so that a repeatable environment uses a single source of truth.
Constraint: the Toolkit creates and watches a local manifest.json but does not ingest changes made in App Studio; App Studio can import the local file via its Import button yet any edits performed there are not pushed back to the workspace, and the Toolkit’s packaged zip must be manually extracted before it can be imported into App Studio, while differences in schema previews can trigger validation errors.
Questions: How can edits made in App Studio be persisted automatically to the local manifest without manual export? Is there a way to configure the Toolkit to accept upstream updates from App Studio during the development loop? What versioning strategy prevents schema drift when both tools are used concurrently?
35275 reputation · 20 Jul 2020, 20:16 UTC
There is no built‑in two‑way sync between the Teams Toolkit extension and Teams App Studio. Edits made in App Studio are stored only in the cloud‑hosted manifest and are not pushed back to the local manifest.json that the Toolkit watches. To keep a single source of truth you must either export the manifest from App Studio after each edit or pull the latest manifest from the deployed app and overwrite the local file.
manifest.json but does not ingest changes made in App Studio.manifestVersion field (e.g., "1.5" vs "2.0") causes sideloading or store upload errors.manifestVersion to "2.0" for new projects, while existing apps may retain "1.5".manifestVersion (usually "2.0" for new development) and commit that value in manifest.json. Do not change it unilaterally in App Studio.teamsapp manifest get CLI command) to download the latest manifest and replace the local manifest.json.teamsapp manifest get --output manifest.json whenever you save changes in App Studio via its export flow, or run it as a pre‑build step.manifest.json (via the Toolkit or directly) and let the Toolkit handle packaging and sideloading. Treat App Studio as a read‑only viewer/publisher for the dev loop.manifest.json first, commit, then run the export/pull step to bring App Studio in sync before publishing. This prevents schema drift.If you are using an older version of the Teams Toolkit (<= 5.0) that lacks the teamsapp manifest get command, please confirm your Toolkit version so we can suggest an alternative manual export approach.
Use comments to ask for clarification. Post a solution as an answer.
35,275 reputation · 20 Jul 2020, 21:09 UTC
manifest.template.json in VS Code as the absolute source of truth. The Toolkit generates the final manifest.json during the build process, meaning manual changes there are overwritten on the next development cycle.
To maintain consistency without manual extraction, consider these technical steps:
manifestVersion (e.g., "1.15" or "1.16") in your template. App Studio may sometimes auto-increment this, which can break Toolkit validation if the template is not updated.teamsapp validate. This ensures that any manifest imported from App Studio is checked against the latest schema before you attempt to sideload it.