> ## Documentation Index
> Fetch the complete documentation index at: https://www.minitap.ai/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# Knowledge

> What Mini knows about your app before it starts, where it learned it, and how to write it down in your own words.

Mini knows your app the way a tester who joined last month would: what the product is for, how to get around it and the words your team uses. **Test suite → Knowledge** shows where that knowledge comes from and lets you edit what Mini reads before every run.

> [!NOTE]
>
> Some workspaces see **Memory** in the sidebar instead of **Knowledge**. It holds the same idea in a shorter form: **Mini's memory**, one text Mini reads before every run, and a **Glossary** of your app's own terms. What this page says about writing knowledge applies there too, in that one text.

![Knowledge page: What Mini knows, with Learns and remembers and Looks things up, the sources Mini learns from (GitHub, Notion, your team), what it reads live (code, Jira, your app), and the Written down tabs](https://mintcdn.com/minitap-30239763/QCLbAMcddko_3eZy/minitest/images/app/knowledge.png?fit=max\&auto=format\&n=QCLbAMcddko_3eZy\&q=85\&s=8cfe4de0baebe2aba5b9fe0dbee66e62)

Test suite → Knowledge.

## What Mini knows before it starts

Before every run, Mini reads two things:

* **What's written down for the app**: the Product brief, the App guide and the Glossary below. Every chat, scenario and run starts from them.
* **What it learned about the scenario** from past runs and from your triage, like a **Not a bug** note that applies to this scenario only. See [How Mini learns](https://www.minitap.ai/docs/minitest/get-started/how-mini-learns.md).

Both are context. Mini still judges every acceptance criterion from what it sees on the device in this run, so a run always tests the build in front of it. What happens next, once the device is ready, is on [How Mini tests](https://www.minitap.ai/docs/minitest/get-started/how-mini-tests.md).

## What the page shows

| Section | What's in it |
| - | - |
| **Recently learned** | What Mini changed in its knowledge on its own. Open one to see the change. |
| **Mini learns from** | Sources Mini reads and keeps: merged pull requests on **GitHub**, the **Notion** pages and databases you shared, and **Your team with Mini**, what you tell Mini in chats and on runs. Open a source to see the documents Mini read from it. |
| **Mini looks things up** | Sources Mini opens live when a question needs it, and keeps nothing from: your **Code**, the **Jira** tickets you mention or link, and **Your app**, the latest build on a device or your site in a browser. |
| **Written down** | What Mini reads before every run, in tabs. |

A source that isn't linked shows **Connect**, and one whose access ran out shows **Access expired** with **Reconnect**. Your team's chats and feedback are **Always on**. Connect GitHub, Notion and Jira from **Settings → Integrations**, see [Integrations](https://www.minitap.ai/docs/minitest/integrations.md).

## Written down

Each tab has one job. Write a fact in the tab it belongs to, and only there.

| Tab | Its job |
| - | - |
| **Product brief** | What your product is, who it's for and the main thing it helps them do. The big picture, not how to test it. Up to 2,000 characters. |
| **App guide** | How to get around the app: where things are, behaviors that aren't obvious, and screens behind a sign-in, a paywall or a feature flag. Up to 30,000 characters. |
| **Glossary** | Words specific to your app that Mini wouldn't guess, like feature, plan or screen names. Each term has a **Meaning** and **Other words for it**. Mini uses these terms in the scenarios, criteria and reports it writes. |
| **How we test** | How your team wants tests written: how scenarios are split and named, the language of criteria, the default account, what a test must never do. Mini follows it when it writes or changes a scenario; runs don't read it. Some workspaces don't have this tab yet. |

Not sure where a fact goes? Most land in one of these places:

| The fact | Where it goes |
| - | - |
| "A language-learning app for adults" | **Product brief** |
| "The Profile tab is behind the avatar; long-press a lesson to restart it" | **App guide** |
| "A Pod is a group of up to five learners" | **Glossary** |
| "Call `POST /test/reset-user` to start from an empty account" | A [skill](https://www.minitap.ai/docs/minitest/setup/skills.md) |
| "A 2-second spinner on checkout is expected on staging" | **Not a bug** on that result, see [How Mini learns](https://www.minitap.ai/docs/minitest/get-started/how-mini-learns.md) |
| "The order number appears after paying" | The scenario's [acceptance criteria](https://www.minitap.ai/docs/minitest/suite/anatomy.md#acceptance-criteria) |

Leave step-by-step procedures and pass or fail rules out of the App guide. Procedures belong in skills, and what one scenario checks belongs in its criteria.

## Who writes it, and how to undo a change

You can edit any tab and click **Save**. Mini writes here too: while it explores your app, reads a Notion page, chats with you, or learns from a **Not a bug** note. Each change shows its author (**you**, **Your team** or **Mini**, with where it came from, like **Mini · chat**) and its source, such as a pull request, a Notion page, a chat or **Not a bug feedback**.

* **History**, on each tab, lists every change with its author. **Restore this version** puts an earlier one back, and Mini reads it from the next run.
* **Mini remembers this** appears in a chat when Mini keeps something you told it. **Undo** takes it back right there, and **Open in History** shows the change.

## From the CLI

On a workspace with the **Written down** tabs, each one has its own command:

```bash theme={"theme":{"light":"github-light","dark":"vesper"}}
minitest --json --app <app_id> brief get
minitest --json --app <app_id> app-guide update --content-file ./app-guide.md
minitest --json --app <app_id> glossary add --term "Pod" --meaning "A group of up to five learners" --alias squad
minitest --json --app <app_id> knowledge history --element glossary
minitest --json --app <app_id> knowledge revert <version_id>
```

`brief update` and `app-guide update` replace the whole text: read it first and edit the result. `knowledge revert` restores a version listed by `knowledge history` and records the restore as a change of its own.

On a workspace that shows **Memory**, the whole text is one document, and `app-knowledge` takes `--app` after the subcommand:

```bash theme={"theme":{"light":"github-light","dark":"vesper"}}
minitest --json app-knowledge get --app <app_id>
minitest --json app-knowledge update --app <app_id> --content-file ./app-knowledge.md
```

## Next steps

> [card] [How Mini learns](https://www.minitap.ai/docs/minitest/get-started/how-mini-learns.md)
>
> What happens when you mark a result as not a bug.

> [card] [Skills](https://www.minitap.ai/docs/minitest/setup/skills.md)
>
> Procedures Mini loads to put your app in the state a scenario needs.

> [card] [How Mini tests](https://www.minitap.ai/docs/minitest/get-started/how-mini-tests.md)
>
> What Mini does on the device once a run starts.

> [card] [Integrations](https://www.minitap.ai/docs/minitest/integrations.md)
>
> Connect GitHub, Notion and Jira so Mini reads them.


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.