LLMSX Explorer — User Guide
LLMSX Explorer (llmsx explorer) is a terminal workbench for the llms-explorer concept
tree. Use it to browse concepts, read their facts and llms files, save useful lines to a
scratchpad, mark concepts for research, run research jobs, and commit the results.
This guide ships inside the llmsx package. Open it three ways:
- In the app: press
g, or press?and choose User guide. - In a terminal:
llmsx explorer --guide. - On the web: https://llms-explorer.com/explorer/guide/
Contents
- Install and launch
- The screen
- Moving around
- Reading a concept
- The llms colour scheme
- The scratchpad
- Marks, tags, links and notes
- Finding unresearched concepts
- Research jobs and the queue
- Providers and settings
- Library, skills, imports and capture
- Learning: flashcards and quizzes
- Bundles and exports
- Sync and commit
- Where your data lives
- Key reference
- Troubleshooting
1. Install and launch
You need Python 3.11 or newer.
python -m pip install 'llmsx[tui]' # or the wheel from https://llms-explorer.com/downloads/#llmsx
llmsx explorer # inside a checkout, or clones one on first run
llmsx explorer looks for a checkout that contains concept-tree/tree.json, starting at
the current directory. If it finds none, it clones the repository into
~/.llmsx/llms-explorer and opens that.
| Option | Effect |
|---|---|
--repo PATH |
Open this checkout instead of searching. |
--no-sync |
Skip the git pull --ff-only on start. |
--guide |
Print this guide and exit. |
Browsing needs no account, no token and no network after the first clone. The explorer sends no telemetry.
2. The screen
┌ filter / search ──────────┐ ┌ quick-action buttons ─────────────────────────┐
│ concept tree │ │ Overview Facts Skill Highlights llms.txt …│
│ ▼ Root domain ● │ │ │
│ ▶ Concept ● [marked] │ │ the selected tab │
│ Frontier (frontier) │ │ │
└───────────────────────────┘ └───────────────────────────────────────────────┘
status line
footer: the most-used keys
- Left: the outline. The concept tree, collapsible. Researched concepts are plain text.
Frontier concepts (named in the tree, never researched) are dim italic with
(frontier). A cyan●means the concept has a concept pack or a hub.llmsdirectory. Yellow[needs-review]or[further-research]shows a mark;#tagshows tags;queuedmeans a research-queue row exists. - Right: the detail tabs. The tabs for the selected concept. Selecting a concept never opens a new screen; the tabs update in place.
- The button row above the tabs: ⚡ /dr, + Queue, 🐇 Rabbithole, 🧭 Family, 📚 Batch, 🚀 Auto, 📋 Queue, 🔖 Highlight, 🤖 provider, ❓ Help, 📌 Save line and 📝 Scratchpad. The row scrolls sideways when the window is narrow.
- The status line reports counts and the result of the last action.
3. Moving around
| Key | Does |
|---|---|
↑ ↓ |
In the outline, move the cursor. Elsewhere, move focus to the widget directly above or below. |
→ ← |
Expand or collapse the concept under the cursor. → on an open or leaf node moves focus to the tabs; ← on a root moves focus to the filter. |
/ |
Focus the filter box. Typing filters the outline by name and alias. |
⌘F or ctrl+f |
Search: type, press Enter to jump to the first match, Enter again for the next. |
[ ] |
Previous or next detail tab. |
T |
Cycle the outline filter: all, frontier, researched, tagged. |
r |
Reload the tree and local state from disk. |
Tab / shift+Tab |
Move focus in reading order. |
q |
Quit. |
The down-arrow rule. A widget that uses the arrow keys keeps them: the outline, the
llms line views, lists, tables, text areas and dropdown menus. On every other widget (the
filter box, a button, the tab bar, a field in a dialog), ↓ moves focus to the widget
directly below and ↑ to the widget directly above. For example, ↓ in the filter box
goes to the outline, and ↓ on a button goes to the tab bar.
4. Reading a concept
Select a concept with the cursor or a click. The explorer opens its facts first:
- the Facts tab, when the concept has a concept pack;
- otherwise the llms-facts.txt tab, when the hub has an
.llmsdirectory for it; - otherwise the Facts tab, which says no facts exist yet.
Re-rendering the same concept (after a mark, a reload or an edit) keeps the tab you are on.
| Tab | Shows |
|---|---|
| Overview | Summary, parent, children, skill, mark, tags, linked concepts (clickable), highlights and your local notes. |
| Facts | The concept pack: a one-line header (slug, parent, research date, sources, skill, mark, tags), the summary, and each facet’s facts with a source link. |
| Skill | The concept’s SKILL.md or reference file, when it names a skill. |
| ref: … | One tab per reference file of that skill. |
| Highlights | Snippets you saved for this concept with h. |
| llms.txt, llms-full.txt, llms-small.txt, llms-facts.txt, llms-vocabulary.txt | The hub’s llms family for the concept, from ~/.global-ai-hub/llms-concepts/<slug>.llms/ or $LLMSX_CONCEPTS_PATH. |
A tab’s file is read only when you first open that tab. Files over 200 KB are cut for display; the file on disk stays complete. Everything shown is treated as untrusted text: nothing in a file is executed, and markup in a file is drawn literally.
Press e to open the current tab’s file in $EDITOR. Press E to edit the concept’s
summary, aliases, children, links and tags.
5. The llms colour scheme
The llms tabs show the file one numbered line per row, coloured by the llms format, with a
cursor you move with ↑ ↓ PgUp PgDn.
| Part | Example | Colour |
|---|---|---|
| Title | # Indexing |
bold magenta |
| Section | ## Facets |
bold cyan |
| Sub-section | ### Notes |
bold blue |
| Summary quote | > An index is … |
italic green |
| List marker | - 1. |
bold yellow |
| Link name / URL | [Doc](https://…) |
bold / underlined blue |
| Bare URL | https://example.com |
underlined blue |
| Inline code | `createIndex` |
orange |
| Source and generator tags | [src: notes] [gen: p/1.1.0] |
dim cyan |
| Citation tail | — path/file.md:12 (as of 2026-10-01) |
dim |
| Date | 2026-10-13 |
green |
| Search-hit prefix | L123: |
dim |
| Warning words | STALE: Misbelief: TODO never must |
bold red |
| Labels | Note: Default: Optional Why: |
bold yellow |
| Rules and comments | --- <!-- … --> |
dim |
6. The scratchpad
The scratchpad is one global notes file, ~/.llmsx/scratchpad.md, shared by every
concept. Use it to collect URLs and facts while you look things up, then turn the
collection into a list.
Save a line.
- Open the tab that holds the line.
- On an llms tab, move the cursor to the line. On any other tab, skip this step.
- Press
y, or click 📌 Save line.- On an llms tab, the cursor line is saved at once.
- On any other tab, a picker opens with that tab’s lines. Type to filter, move to a
line, press Enter to save it. The picker stays open so you can save more; press
escto close it.
Each saved line becomes one bullet with its source:
- https://www.mongodb.com/docs/manual/indexes/ — Indexing · /Users/you/.global-ai-hub/llms-concepts/indexing.llms/llms.txt:42 (as of 2026-10-13)
A leading list marker on the line is dropped. A line whose text is already in the scratchpad is not saved twice; the status line says so.
Open, edit and compile. Press p, or click 📝 Scratchpad. The editor shows the
whole file. Reorder, delete or rewrite lines, then press ctrl+s to save. Press ctrl+y
(or Copy all) to copy the whole scratchpad to the clipboard. esc closes without
saving.
The scratchpad is local only. It is never committed.
7. Marks, tags, links and notes
| Key | Does | Writes |
|---|---|---|
m |
Mark the concept needs-review. |
concept-tree/marks.json |
f |
Mark the concept further-research, pick a research mode, and add a queue row. |
marks.json, concept-tree/RESEARCH_QUEUE.md |
x |
Clear the mark (tags stay). | marks.json |
t |
Edit the concept’s tags (comma separated). Frontier concepts take tags too. | marks.json |
l |
Link the concept to another concept; links appear in the Overview. | relatedConcepts in tree.json |
n |
Edit your private notes for the concept; ctrl+s saves. |
~/.llmsx/notes/<slug>.md |
h |
Save a highlight (a quote plus an optional note). | ~/.llmsx/highlights.json |
H |
Open the highlights manager: Enter jumps to the concept, c copies, d deletes. |
highlights.json |
N |
Add a local root to the outline. | ~/.llmsx/local-tree.json |
M |
Move the concept under another node or a local root (local view only). | ~/.llmsx/local-tree.json |
Every write to the repository asks for confirmation first, or goes through a dialog.
8. Finding unresearched concepts
A concept has facts when its concept pack holds at least one fact, or when its hub
.llms directory holds llms-facts.txt. Many concepts in the tree have neither: the tree
knows their family, but nobody has researched them.
Press U (shift+u) to mark them all:
- The explorer counts every concept, researched or frontier, with no facts.
- A dialog shows the count. Choose Yes to continue.
- Each such concept gets the
further-researchmark with the noteno facts file: follow-up research. A concept that already has a mark keeps it. - Each such concept that is not already queued gets a row in
RESEARCH_QUEUE.md.
Running U again changes nothing until new concepts appear. Press T until the filter
reads frontier to see the unresearched edge of the tree, and press c to commit the
marks.
9. Research jobs and the queue
| Key or button | Does |
|---|---|
| ⚡ /dr | Start deep research (/dr) on the selected concept now. |
| + Queue | Add the concept to RESEARCH_QUEUE.md without running anything. |
| 🐇 Rabbithole | Research the concept depth-first (deep mode). |
| 🧭 Family | Map the concept’s family with concept-family-explorer. |
R |
Open the research dialog: choose a mode (dr, family, deep, crawl, full, queue) and a provider. Enter submits. |
📚 Batch / ctrl+b |
Research several concepts in one run. |
🚀 Auto / a |
Autopilot: research frontier concepts one after another; when none remain, expand the most-used concept’s family. Press again to stop. |
P |
Prefill the queue: group every frontier concept into clusters of up to 8 related concepts. |
📋 Queue / u |
Open the queue viewer. |
o |
Open the live job log. |
One job runs at a time. A job runs in the background and the explorer stays usable. The
job log streams every event; esc hides it and the job keeps running; x cancels;
y copies the log. Raw logs are kept under ~/.llmsx/jobs/.
Before a job touches the tree, the explorer snapshots tree.json. After the job it
validates the tree. If the job fails, times out or is cancelled, the snapshot is restored.
LLMSX_RESEARCH_TIMEOUT (seconds, default 3600) caps one job.
Queue viewer keys: r run the selected row, c run the next cluster, P prefill
clusters, a add a concept, x cancel the job, o job log, R refresh, esc back.
Without the provider’s command-line tool installed, only queue is offered.
10. Providers and settings
Press , or click the 🤖 provider button to open Settings.
- Provider: Anthropic Claude, Google (Gemini / AGY), OpenAI Codex, GitHub Copilot, Ollama (Local), or eGPU. Each provider runs through its own command-line tool.
- Model: an optional model override per provider.
- API keys: stored in
~/.llmsx/config.jsonwith0600permissions, masked on screen, never committed. A key in the environment (for exampleANTHROPIC_API_KEY) also works. A stored key overrides a working command-line login; clear it if you see 401 errors. - Test Provider: checks that the tool is installed and the credentials work.
- Repository:
repo_url,push_urland the GitHub token used byc. - Windows…: show or hide the outline, the detail pane, the status line, the footer, and the Facts, Skill, reference and llms tabs.
11. Library, skills, imports and capture
| Key | Opens |
|---|---|
L |
Library: the site’s directory of scored llms-full files, blog posts, skills, and your imports, each with a preview. b bundles the row’s file; d removes an import. |
S |
Skills: run any supported skill on a target: /dr, rabbithole, concept-family-explorer, full-suite, /lca, crawl-to-llms-txt, crawl-repo-to-llms, notes-to-llms-txt, memory-to-llms-txt and the deep optimizers. |
I |
Import: copy an llms file from a local path or an https URL into ~/.llmsx/imports/. |
G |
Ledger: the llms access-ledger report by file, kind, project or surface. |
W |
Braindump: free capture. ctrl+s saves the dump verbatim; ctrl+p parses it with the braindump skill. |
J |
Journal: dated entries. ctrl+n jumps to today; ctrl+s saves; ctrl+p turns the journal into an llms family. |
12. Learning: flashcards and quizzes
Fopens flashcards over the selected branch.spaceflips a card;1means you knew it,2means show it again. Cards move through five Leitner boxes, saved in~/.llmsx/flashcards.json.Qopens a multiple-choice quiz built from the facts in the selected branch.
13. Bundles and exports
A bundle is a list of files to hand to an agent.
badds or removes the current tab’s file. A bundled tab shows✓in its title.Bopens the bundle: name it and exportbundle.md(an ordered list an agent can read) andbundle.jsoninto~/.llmsx/bundles/<name>/.bundle.mdis also copied to the clipboard.
X exports the concept, its whole branch, the current file, or the bundle as markdown
into ~/.llmsx/exports/.
14. Sync and commit
srunsgit pull --ff-only. The explorer also syncs on start unless you pass--no-sync.cshows the diff and asks before it commits and pushes. A commit stages only three files:concept-tree/tree.json,concept-tree/marks.jsonandconcept-tree/RESEARCH_QUEUE.md. It never forces and never rewrites history.
The GitHub token comes from $LLMSX_GITHUB_TOKEN or Settings. It reaches git only
through a temporary GIT_ASKPASS helper, never through a URL, .git/config or a
committed file.
15. Where your data lives
$LLMSX_HOME defaults to ~/.llmsx.
| Path | Holds | Committed? |
|---|---|---|
concept-tree/tree.json |
The concept tree. | yes (by c) |
concept-tree/marks.json |
Marks and tags. | yes (by c) |
concept-tree/RESEARCH_QUEUE.md |
The research queue. | yes (by c) |
~/.llmsx/scratchpad.md |
The scratchpad. | no |
~/.llmsx/notes/<slug>.md |
Notes per concept. | no |
~/.llmsx/highlights.json |
Highlights. | no |
~/.llmsx/config.json |
Settings and keys (0600). |
no |
~/.llmsx/local-tree.json |
Local roots and moves. | no |
~/.llmsx/bundles/, exports/, imports/ |
Bundles, exports, imported llms files. | no |
~/.llmsx/braindumps/, journal/ |
Capture. | no |
~/.llmsx/flashcards.json |
Flashcard boxes. | no |
~/.llmsx/jobs/ |
Raw job logs. | no |
~/.llmsx/explorer.log |
Warnings and errors. | no |
| Variable | Effect |
|---|---|
LLMSX_HOME |
Where local data lives. |
LLMSX_CONCEPTS_PATH |
Where hub .llms directories live (default ~/.global-ai-hub/llms-concepts). |
LLMSX_GITHUB_TOKEN |
Token for push and ls-remote. |
LLMSX_RESEARCH_TIMEOUT |
Seconds one job may run (default 3600). |
EDITOR / VISUAL |
Editor for e and E. |
16. Key reference
Main screen
| Key | Action | Key | Action |
|---|---|---|---|
↑ ↓ |
move / focus above, below | → ← |
expand / collapse |
/ |
filter | ⌘F ctrl+f |
search |
[ ] |
previous / next tab | T |
cycle filter |
r |
reload | q |
quit |
y |
save line to scratchpad | p |
open scratchpad |
m |
mark needs-review | f |
mark further-research |
x |
clear mark | U |
mark every no-facts concept |
t |
tags | l |
link |
n |
notes | e |
open file in $EDITOR |
E |
edit node | h / H |
highlight / highlights manager |
R |
research dialog | a |
autopilot |
ctrl+b |
batch research | P |
prefill queue clusters |
u |
queue viewer | o |
job log |
b / B |
bundle toggle / bundle | X |
export |
L |
library | S |
skills |
I |
import | G |
ledger |
W |
braindump | J |
journal |
F |
flashcards | Q |
quiz |
N |
new local root | M |
move (local) |
s |
sync | c |
commit and push |
, |
settings | ? |
key cheat sheet |
g |
this guide |
Dialogs and screens: esc closes or goes back; ctrl+s saves in every editor.
17. Troubleshooting
| Symptom | Fix |
|---|---|
llmsx explorer needs Textual |
Install the extra: python -m pip install 'llmsx[tui]'. |
no concept tree at … |
--repo must point at a checkout that contains concept-tree/tree.json. |
The llms tabs say no .llms directory |
The hub’s concept packs are not on this machine. Set LLMSX_CONCEPTS_PATH. |
Research offers only queue |
The provider’s command-line tool is not on PATH. Install it or switch provider in Settings. |
| A research job fails with 401 | A stored API key overrides a working login. Clear the key in Settings. |
c refuses to push |
Set a GitHub token in Settings or LLMSX_GITHUB_TOKEN; use Test in Settings. |
| A new button is not visible | The button row scrolls sideways; widen the window, or use the key (y, p). |
| Something failed silently | Read ~/.llmsx/explorer.log. |