# Workspaces, bots and schedules

Three ways to stop repeating yourself: context a group of chats shares, a bot that answers the way you want, and a question that asks itself.

## Workspaces

A workspace is standing context that a run of chats shares: instructions every chat in it should follow, reference files it should have read, and the [repositories](https://nymbot.ai/docs/git/) it can see. Put a chat in a workspace and it starts every thread with that context already in place; open a new chat from it and the new one inherits the workspace too.

A workspace's repositories are added to whatever the chat already had rather than replacing them, and they are marked as the workspace's in the context bar — dropping one there would be a lie, because the workspace would put it straight back.

## Knowledge files

Text and code files attached to a workspace are searched on your device against whatever you just asked, and the passages that bear on it travel inside that message. They are not uploaded anywhere: they sit on the device, the search runs there, and only the passages that matched are encrypted into the message like everything else you send.

This happens on every message, not just the first, so a workspace does not stop applying partway down a long conversation. Every file is named in the message even when nothing from it was sent, so the model knows what else it could be told about — ask for a file by name and the next message carries more of it.

Retrieval is what makes a large workspace usable at all: a model can only hold so much at once, and filling that space with the whole shelf leaves no room for the conversation. Nothing is summarised and nothing is sent to a server to be indexed — it is a plain keyword search over your own files, running on your own device.

## Bots

A bot is a way of answering: a name, standing instructions, a model to answer with, and a few openers. Apply one to a chat and its instructions go ahead of everything else, the model it names is pinned, and the empty chat offers its openers instead of the general ones.

Bots are yours to make. A support triager, a release-notes writer, a tutor that never gives the answer away — each one is a handful of lines you write once and reuse.

## Sharing and publishing one

Share a bot as a link or a QR code and whoever opens it gets the bot, not your account. The payload carries only how the bot answers: the name, the instructions, the model and the openers. It never carries your repositories, your access tokens, your knowledge files or anything either of you has said. The bot rides in the link's fragment, which browsers do not send to a server, so handing one over is not a request to anybody.

You can also publish a bot under your own npub, as a replaceable Nostr event, and share the address. Publishing it again replaces it rather than leaving a second copy behind. Publishing is a claim of authorship, so it is always signed by your account and never by an [anonymous throwaway key](https://nymbot.ai/docs/anonymous/).

> **Careful**
>
> Instructions from a stranger are still instructions. Adding a shared bot shows you its instructions in full first — read them before you use it.

## Scheduled prompts

A scheduled prompt is a question Nymbot asks for you: once, hourly, daily or weekly, into a new chat or into one you name. A morning digest, a weekly look over a repository, a standing check on something you would otherwise forget.

There is no server doing this. A run happens in the app while it is open, and a run that came due while the app was shut fires once when you come back rather than catching up on every slot it went past. Each run costs a reply, the same as asking by hand.
