---
title: Create a worker
description: Describe a worker in plain language and let Ysra draft it, then review its kind, grants, sources, credentials, approval rules and schedule before activating.
---

**Workspace → Workers → New worker.**

## 1. Describe it

Write what the worker should do, as you would to a colleague:

```text
Every weekday at 08:30 Paris time, read #incidents and Jira project OPS.
Summarise open incidents and what changed since yesterday, and prepare a
Slack update for #eng-leads. Never post without my approval.
```

Ysra drafts the worker from your description: a name, an agent with
instructions, the **grants** it thinks the job needs, and a trigger. Nothing is
activated and no credential is attached yet — you review everything first.

You can also start from a **template**, or hand off from a
[Knowledge answer](../knowledge/index.md#turning-an-answer-into-work).

## 2. Review the setup

| Setting | What to check |
|---|---|
| **Kind** | General, research, mail or uptime. See [Worker types](types.md). |
| **Instructions** | What the worker is for and how it should report. |
| **Grants** | The capabilities it may use — only what the job needs. |
| **Context sources** | Which connected Slack, Jira or Gmail sources it may **read**. |
| **Credentials** | Which account it acts through for live actions, such as sending mail. |
| **Approval rules** | For each outside action: forbidden, automatic, or approval required. |
| **Trigger** | Manual or scheduled. See [Schedules and triggers](schedules.md). |
| **Default input** | Values every run starts with; a manual run can override them. |
| **Budget and retries** | How much a run may spend and how failures are retried. |

### Grants

| Grant | Allows |
|---|---|
| Web search | Searching and reading the public web. |
| Mail read | Searching a mailbox. |
| Mail draft | Creating email drafts — never sending. |
| Mail send | Sending an exact approved draft. Requires approval. |
| Chat write | Proposing Slack messages. Requires approval. |
| HTTP read | Checking a public URL (uptime). |

**Reading and acting are separate.** Choosing a Slack or Gmail *source* lets the
worker read it. *Sending* needs a grant, a bound credential, and — for Slack
posts and outgoing mail — approval that you can't turn off.

### What the checks refuse

A worker can't be saved or activated if:

- it asks for a grant its agent doesn't allow;
- a credential or source isn't yours, or isn't ready;
- it reads Gmail without a mail-read grant;
- it could send mail or post to Slack without approval;
- its kind is missing the grant it needs;
- its schedule, rules or input are malformed.

## 3. Test, then activate

Use **Run now** to rehearse the worker and read its result. When it behaves as
you want, **Activate** it. From then on it runs on its trigger; pause, resume or
archive it at any time.

## Editing

Editing an active worker creates a **new version**. Runs already in progress
finish on the version they started with; new runs use the new one.
