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

# Skills and knowledge

> The procedures the assistant loads and the reference it searches

Two things sit behind the assistant that you never have to ask for. It reaches
for them itself, and knowing they exist explains why an answer sometimes arrives
in a particular shape.

## Skills

A skill is a written procedure for one kind of work. Only a one line index of
every skill sits in the prompt at all times. When a request matches one, the
assistant loads the full body and follows it. That is why the prompt stays small
and the behaviour still gets specific.

| Skill                | Used for                                                                |
| -------------------- | ----------------------------------------------------------------------- |
| PDF creation         | A typeset, downloadable document: report, paper, notes, invoice, letter |
| Research             | Current or external facts that cannot be answered from memory           |
| Deep analysis        | A multi source investigation where one search is not enough             |
| Code artifact        | Code or a standalone file you will keep, run or preview                 |
| Code style           | House conventions when writing, editing or reviewing code               |
| GitHub investigation | How a repository works and where things live in it                      |
| Indexed docs         | Answering from the sites you have indexed                               |

Each also carries a "not for" line, which is what stops it firing on work it
does not suit. Asking for a quick explanation of code does not pull in the PDF
skill.

You do not turn these on. Describing what you want is enough.

## Installing a skill

You can point the assistant at a public GitHub repository holding skills and ask
it to install one.

```
install the td skill from mattpocock/skills
```

It fetches that skill's `SKILL.md` and any markdown reference files and loads
them into the conversation. The repository has to be given as `owner/repo`, and
a branch or tag can be added if you need one other than the default.

<Warning>
  Only markdown is fetched. Scripts and other files in the skill are skipped and
  never run. A skill that depends on running its own scripts will load its
  instructions and not much else.
</Warning>

An installed skill applies to the conversation it was installed in.

## Knowledge

Knowledge is reference material rather than procedure. There are currently 475
entries, and the assistant searches them by keyword when a question touches one.

The difference is worth holding onto. A skill tells it **how to do** something.
A knowledge entry tells it **what is true** about something. They are separate
mechanisms and neither replaces the other.

Knowledge is ours and it is the same for everyone. The things that are yours are
[memories](/chat/memories), [indexed sites](/chat/indexes) and
[custom agents](/chat/agents).
