---
title: "Pages & Tree"
id: "1849"
type: "page"
slug: "pages"
published_at: "2026-09-21T00:21:37+00:00"
modified_at: "2026-10-22T16:38:23+00:00"
url: "https://xedant.com/agents/portal/docs/pages/"
markdown_url: "https://xedant.com/agents/portal/docs/pages.md"
excerpt: "The page tree is the table of contents for the whole portal: the left side…"
---

# Pages & Tree

[https://xedant.com/agents/portal/docs/pages/.md](https://xedant.com/agents/portal/docs/pages/.md)

The page tree is the table of contents for the whole portal: the left side shows what it consists of, the right side opens the selected page. The tree is built from the content files themselves, so it always matches what actually exists in the portal: keeping a separate list of pages is not needed.

## The tree on the left

The page list occupies a strip 260 points wide — you can drag its edge to resize it, or collapse it entirely to give the page the whole screen. On narrow screens the tree hides and opens from a button in the page header. Expanded folders are remembered: coming back to the browser, you will see the tree in the same shape.

The order in the tree is set by the server: pages go in the configured order, and at equal order — alphabetically. Whether a page has nested pages does not affect its place in the list: a folder does not float to the top just because it has children. The active page reveals itself, so it stays visible in the list.

## Searching the pages

Type a word or a phrase into the search box above the tree — the portal searches not only the page’s title and address but all of its content: block headings, texts, button labels, link addresses and queries. Matches on the title or address rank higher than a match in the text alone. Results come as a flat list — a faster way to find the right page once the portal has grown. Clear the box — and the tree returns to its normal shape. Search can be opened from the keyboard too: **Ctrl+K** (or **⌘K** on a Mac).

## Page lists

Next to the search sits a button with a clock icon — **History**. It switches what is visible on the left:

- **All** — the usual tree with all the pages;
- **Recently Viewed** — the pages you opened last; this list lives in your browser and does not bother anyone else;
- **Recently Updated** — what was edited most recently;
- **Recently Created** — the newest pages.

Each list shows the matching time on the right, and drafts carry their mark. Pressing the same item again brings the tree back. An empty list shows a hint — for example, “No recently viewed documents yet”.

## Marks in the tree

- **Draft** — a page with “administrators only” access. Readers do not see it at all; the administrator sees it dimmed, with a badge.
- **Unread** — pages that changed since they were last opened. They are highlighted in bold, and their parents in the tree are bolded too, so a fresh edit never gets lost in the depths. A change is counted by the page’s content: copying the file, changing a date or permissions does not mark anything, and edits made while the portal was switched off are found at start-up. Once the page is opened, the mark clears — for every reader at once. Run through several pages one after another and none of them stays marked by mistake: every opened page is marked read, and the mark does not come back after the tree refreshes.

## The row menu

Every row of the tree — an ordinary page and the topmost row with the portal’s name alike — has a menu: hovering shows three dots, and a right-click opens the menu straight away. It holds two actions:

- **Mark As Read** — clears the bold mark. On a folder it is done together with everything inside, and on the top row with the whole tree: handy when the agent has updated many pages and you are not going to read them today.
- **Update Icon** — opens a search over the icons and gives the page the chosen one. The portal’s top row can have its own icon too; clearing the search brings the default icon back.

## The page address

Every open page has its own address in the browser’s address bar. You can copy it and send it to a colleague: following the link, they land right on that page with the tree already revealed. Handy for links in emails and messengers.

## Page states

- **Loading** — while the page travels from the server, “Loading page…” shows in its place.
- **Page not found** — when the address matches no page (or the page is unavailable to the reader), a tidy “Page not found” placeholder appears.
- **Load error** — when something went wrong, the message “This page could not be loaded” appears with a **Try again** button.

## The agent’s issue strip

If the agent left something unfinished on a page, a strip appears at the top: **The agent left {count} issues on this page**. It can be expanded to see exactly what is wrong. Readers who are not administrators do not see this strip — service messages stay inside.

## Comments on a page

Under a page’s content there can be a thread of comments — the administrator’s remarks on selected text. It appears only when there are remarks, and only an administrator inside the portal sees it. A remark is left by selecting text on the page; the same selection can also send the agent a task as a separate conversation (see the [Page Comments](/agents/portal/docs/comments)
 section).

## Page width

Each page gets one of three width options: normal (a narrow column of text, comfortable to read), wide, and full screen width. The agent sets this choice in the page’s settings — the reader never has to switch anything.

## Updates on the fly

The server watches the content files. As soon as the agent saves an edit, the open page updates itself — no reload, no buttons to press. The scroll position survives: if you were reading the middle of a long page, that is where you stay even as the content refreshes. A page whose content did not change is not redrawn needlessly.

## Path variables

Some pages are samples that serve many addresses at once (details in the [Templates & Variables](/agents/portal/docs/templates)
 section). When such a sample is opened without the needed value, a **Path variables** box appears at the top. You pick a value in it, see the **Resolved path** beside it, and the **Apply** button opens the page at the right address.

Next: what a page consists of on disk — in the [Document Format](/agents/portal/docs/documents)
 section; what fills a page — in [Blocks](/agents/portal/docs/blocks)
; where pages with different access land — in [Page Access](/agents/portal/docs/access)
.

[← Back to the documentation index](/agents/portal/docs)
