> For the complete documentation index, see [llms.txt](https://docs.akinon.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.akinon.com/tutorials/app-maker/developer-tools-and-cli/upgrade-helper.md).

# Upgrade Helper

## Upgrade Helper

The Upgrade Helper shows exactly what changes between two platform versions **before** you upgrade, so you can gauge the impact and plan the work. For a chosen current version and target version it surfaces the relevant changelogs plus a file-level diff of both the **environment** and **framework** repositories, with a file tree, conflict indicators, and raw-file access.

Use it to answer "what will this upgrade touch?" without checking out tags and diffing by hand.

### Opening the Upgrade Helper

Open the platform dashboard and select **Upgrade Helper** from the sidebar (route `/upgrade-helper`).

### Selecting Versions

1. Under **What's your current version?**, pick the version your project is on today.
2. Under **To which version would you like to upgrade?**, pick the target. Only versions newer than your current one are listed — the Upgrade Helper compares forward, so this dropdown stays disabled until you choose a current version.
3. Click **Show me how to upgrade**.

Your selection is written into the page URL as `?from=<current>&to=<target>`, so a comparison is bookmarkable and can be shared with a teammate by copying the address.

### Reading the Changelog

When changelogs exist for the versions in range, a **Useful content for upgrading** call-out appears above the diffs. It previews the most relevant changelog inline; use **View details** to open the full entry, and the "Check out all relevant changelogs" footer lists every in-range version so you can open each one. Read these first — they call out breaking changes and migration steps that the raw diff alone won't explain.

### Reviewing the Diffs

Below the changelog, the diff view lists every changed file. Two controls sit at the top:

* **Repository filter** — switch between **Environment**, **Framework**, or **All**. The Environment view is scoped to the files you normally edit: everything under `src/` and `.appmaker/`, plus key root files (`.gitignore`, `akinon.json`, `jest.config.js`, `index.js`).
* **View toggle** — **Split** shows old and new side by side; **Unified** shows a single inline column.

A **file tree** on the left (headed **Lines updated**) mirrors the changed files with the total additions and deletions. Selecting a file in the tree expands its diff panel and scrolls to it; each panel carries a status tag such as **Modified**. Files whose diff contains merge markers are flagged as **conflict** so you can spot the changes that will need manual resolution.

### Reviewing File by File

Each file panel has a set of actions to help you work through the changes:

* **Copy file path** — copy the file's path to the clipboard.
* **Copy anchor link** — copy a deep link (`?from=&to=#<file>`) that opens the comparison scrolled to this exact file; useful when asking a teammate to look at one change.
* **RAW** — open the target version's full file contents in a new browser tab.
* **Copy raw contents** — copy the whole file (not just the diff) to the clipboard.
* **Mark as viewed** — once you've reviewed a file, mark it viewed and it moves out of the way into a **Done (N)** section at the bottom. Toggle it back with **mark as not viewed**.

Working top to bottom and marking files as viewed turns the diff into a review checklist, so you always know what's left to assess before you commit to the upgrade.


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.akinon.com/tutorials/app-maker/developer-tools-and-cli/upgrade-helper.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
