# Core Concepts

> The eight objects Triplo AI is built from, how a prompt is actually assembled, and where everything lives on disk.

Source: https://triplo.ai/docs/concepts  
Last updated: 2026-10-18

> **Tip:** Triplo AI has a reputation for a steep learning curve. Almost all of it comes from one gap: the app never tells you what its pieces are or how they fit. This page is that missing explanation. It is worth ten minutes.

## The eight objects

Everything in Triplo AI is one of eight things. Learn these names and the whole app becomes navigable.

- **Connection**: A place answers come from — an API endpoint plus an optional key. OpenAI, OpenRouter, a company gateway, Ollama on your own laptop, or an **agent** with tools of its own.

  [Models & Connections →](https://triplo.ai/docs/models#connections) · [Agents →](https://triplo.ai/docs/agents)
- **Model**: The specific model that answers, chosen from a Connection. You pick one at a time in the top bar.
- **SmartPrompt**: A saved prompt template with a short command. Typing `/sum` expands into a paragraph of careful instructions you never have to write again. Triplo ships hundreds; you can write your own.

  [Prompting →](https://triplo.ai/docs/prompting#smartprompts)
- **Instruction**: Standing context about **you**, applied to every prompt while it is selected. Two halves: *What* (who you are, what you do) and *How* (tone, format, depth). One is active at a time.

  [Instructions →](https://triplo.ai/docs/instructions)
- **Mind**: One knowledge repository inside Training, built from your files, web pages and notes. Triplo indexes it on your machine and injects only the relevant passages into a prompt. You can keep as many as you like and switch between them.

  [Training →](https://triplo.ai/docs/training)
- **Automation**: A webhook or API call that runs *after* a response. The model works out the parameter values from what you wrote; Triplo fires the request.

  [Automations →](https://triplo.ai/docs/automations)
- **Magnet**: A pin attached to a SmartPrompt that forces a particular Model, Instruction, Mind and/or Automation whenever that prompt is used — then restores your previous choices afterwards.

  [Magnets →](https://triplo.ai/docs/magnets)
- **Hotkey**: A keyboard shortcut. Some control the app; some run a SmartPrompt instantly, in the background, without showing the window.

  [Hotkeys →](https://triplo.ai/docs/hotkeys)

### How they relate

In one sentence: **a Hotkey fires a SmartPrompt, whose Magnets select a Model, an Instruction and a Mind; the answer comes back, and an Automation may run on it.**

Every one of those is optional except the Model. You can use Triplo for months with nothing but a model and the prompt bar.

## What actually gets sent

When you press `Enter`, Triplo does not send what you typed. It assembles a stack of messages in a fixed order, then sends that. Knowing the order explains most surprising results.

*Diagram: The order in which Triplo AI assembles a prompt*

- **1 · Language directive**: “You must respond in Portuguese.” — only when a language other than Default is selected
- **2 · Instruction**: Your “What” text, then “Response style: ” plus your “How” text
- **3 · Automation directive**: Lists the parameters to extract and demands a bare JSON object back
- **4 · Mind context**: Passages retrieved from your knowledge base, sized to fit the model's context window Searched locally — the search itself never leaves your machine
- **5 · Conversation so far**: Earlier turns — only when Chat mode is on. Off, this is empty every time.
- **6 · Your message**: SmartPrompt templates expanded, //selected// and //clipboard// substituted, attachments inlined, scraped URLs replaced with their text

Steps 1–5 are system messages. Only step 6 contains what you typed.

### Why this matters in practice

- **An Instruction outranks a SmartPrompt in position, not in force.** Both are just text the model reads. If they contradict each other, the model picks; Triplo does not arbitrate.
- **Mind context is sized, not dumped.** Triplo works out how much room is left in the model's context window after your history and prompt, then retrieves to fit. Choosing a model with a bigger window gets you more grounding, automatically.
- **Chat mode changes the cost of every prompt.** With it on, the whole conversation is re-sent each turn.
- **Attachments and scrapes are text by the time they are sent.** An image becomes a description, audio becomes a transcript, a URL becomes an excerpt. The model never sees the original file.

> **Note:** There is one deliberate exception. A prompt beginning with `//` skips **all** of steps 1 to 5 and sends only your raw text. See [Raw pass-through](https://triplo.ai/docs/prompting#raw-passthrough).

## Two ways to run a prompt

Triplo has two execution paths. They behave differently, and confusing them causes a lot of "why did nothing happen?".

|   | Foreground | Background |
|---|---|---|
| **Triggered by** | Typing in the prompt bar and pressing `Enter` | A hotkey assigned to a SmartPrompt |
| **Window** | Visible; the answer streams in | Never appears |
| **Where the answer goes** | The chat area | Pasted at your cursor in the app you were in |
| **Selected text** | Only if you add `//selected//` | Captured automatically, always |
| **Saved to history** | Yes | No |
| **Instruction & Mind applied** | Yes | Yes |
| **Conversation memory** | Yes, when Chat mode is on | No — always a single turn |

Background execution is the faster of the two by a wide margin, and it is the one most new users never discover. [How background execution works →](https://triplo.ai/docs/hotkeys#background)

## Where everything lives

Triplo AI keeps your content as **plain files in your Documents folder**, not in a database. You can open them, edit them, back them up and put them under version control.

```
~/Documents/Triplo AI/
├── SmartPrompts/     # one .md per custom SmartPrompt
├── Instructions/     # one .md per instruction
├── Automations/      # one .md per automation
├── History/          # one .md per saved conversation
├── Minds/            # one folder per Mind (see below)
│   └── <mind-id>/
│       ├── INGEST/   # drop files here to add them
│       ├── vault/    # processed notes, indexed and searchable
│       ├── files/    # the original files you imported
│       ├── failed/   # anything that could not be processed
│       └── index.md  # generated catalogue of the vault
└── Shared/           # read-only items other devices shared here
    ├── SmartPrompts/
    ├── Instructions/
    ├── Automations/
    └── Minds/
```

Two things live outside that folder, because they are machine-local rather than content:

- **Settings**: `config.json` in the app's user-data directory — your licence key, preferences, window position, selected model.
- **Search index**: A `Vectors/` directory in the same place, holding one vector index per Mind. Rebuildable at any time, so it is not worth backing up.

| Platform | User-data directory |
|---|---|
| macOS | `~/Library/Application Support/Triplo AI/` |
| Windows | `%APPDATA%\Triplo AI\` |
| Linux | `~/.config/Triplo AI/` |

> **Tip:** Triplo watches these folders. Edit a SmartPrompt in your text editor, save, and the app picks it up within about half a second — no restart, no import. See [Files as configuration](https://triplo.ai/docs/advanced#files-as-config).

## What leaves your machine

A short version here; the full account is in [Privacy & Security](https://triplo.ai/docs/privacy).

| Action | Leaves your machine? |
|---|---|
| Sending a prompt | Yes — to the model provider you chose. With a local model, nowhere. |
| Searching a Mind | **No.** Indexing and search are entirely local. |
| Grounding a prompt in a Mind | Yes — the retrieved passages travel with the prompt to your model. |
| Enriching a newly added document | Yes — a summarising call to Triplo's endpoint, once per document. |
| Attaching an image or audio file | Yes — to Triplo's vision or transcription endpoint. |
| Storing prompts, instructions, history | No — local files only. |
| Sharing between your own devices | Yes, if enabled — see [Sharing across devices](https://triplo.ai/docs/sync#shares). |
| Validating your licence | Yes — key, device ID, CPU model and username. |

## Glossary

Every term this documentation uses, defined once. These definitions do not vary from page to page.

- **Agent**: Something on the other end of a prompt that has *tools* — it can run commands, read and write files, browse the web and remember between sessions. Unlike a model, it acts rather than only answering. Triplo ships one, [Pi](https://triplo.ai/docs/agents#pi), and can also reach one you run yourself, such as [Hermes](https://triplo.ai/docs/agents#hermes). See [Agents](https://triplo.ai/docs/agents).
- **Agent connection**: A Connection pointing at an agent you run yourself rather than at a model. [Pi](https://triplo.ai/docs/agents#pi) is not one of these: it is built in, always in the droplist, and borrows a provider key from your other Connections.
- **Allowance model**: A model provided by Triplo with your licence. No API key, no separate billing.
- **Automation**: A webhook or API call fired after a response, with parameters the model extracted.
- **Awareness**: Triplo's ability to read text you have selected in another application.
- **Background execution**: Running a SmartPrompt by hotkey without the window appearing, pasting the result at your cursor.
- **BYOK**: Bring Your Own Key — using your own provider account through a Connection.
- **Chat mode**: When on, each prompt includes the conversation so far. When off, every prompt is independent.
- **Connection**: A saved endpoint plus optional API key, from which models are listed.
- **Enrichment**: The background pass that reads a newly added document and writes structured metadata — title, summary, tags, entities — to the top of it.
- **Grounding**: Injecting passages retrieved from a Mind into a prompt so the answer is based on your material.
- **INGEST**: The drop folder inside a Mind. Anything placed here is picked up and processed automatically.
- **Instruction**: Standing context — *What* you are and *How* you want answers — applied to every prompt while selected.
- **Magnet**: A setting pinned to a SmartPrompt that overrides your current selection while that prompt runs.
- **MCP**: Model Context Protocol. The standard by which Triplo exposes your Minds to other AI tools.
- **Mind**: A private knowledge base. Labelled Training in the app.
- **SmartPrompt**: A saved prompt template with a short command, triggered with `/`.
- **Scraping**: Fetching the text behind a link in your prompt, or a YouTube video's transcript, and including it. See [Scraping](https://triplo.ai/docs/scraping).
- **Shares**: Read-only copies of prompts, instructions, automations and Mind definitions sent from your other devices.
- **Vault**: The folder inside a Mind holding processed, searchable notes.
