> For the complete documentation index, see [llms.txt](https://docs.tryprotege.com/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://docs.tryprotege.com/create-a-protege.md).

# Build

## What this is

This page explains how to create a Protege, review its plan, finish setup, and publish it.

A Protege is an automation you describe in plain language. Hookshot™ turns that description into a reviewed plan with trigger access, tool access, schedules, and setup checks.

## When to use it

Use this page when you are creating a new automation or editing an existing Protege from the Builder.

## What you need first

* A clear workflow goal
* Access to the apps the Protege should read from or write to
* Permission to create or edit Proteges in your workspace

## Steps to create a Protege

Hookshot™ creates a Protege through a four-step wizard. The wizard produces a reviewed plan with setup checks and a publish step.

### 1. Start from Proteges

Open **Proteges**, then choose **New Protege**.

![Create a Protege wizard](/files/so1Cq442J0Rzfjq1CQV0)

The wizard opens with four steps: Describe, Triggers, Tools, and Review.

### 2. Describe the outcome

In the **What does this agent do?** field, describe what the Protege should produce and why. Include the three required details:

* **What starts it:** an event, chat message, or schedule
* **What it decides:** the condition, routing logic, or judgment it should apply
* **What it produces:** the message, update, task, issue, or other action it should create

Good first description:

> When a new Asana task is created, summarize it and post the summary to the support triage Slack channel.

You can also choose the model and connection type (Team or Personal) on this step.

### 3. Choose triggers

![Create a Protege triggers](/files/0VBE6QVn2E8vwyuGhq3I)

Select what starts the Protege:

* An event from a connected integration
* A schedule
* A chat mention

Pick the narrowest scope that covers your workflow — one project, repo, channel, or team.

### 4. Grant tool access

![Create a Protege tools](/files/rhKkDU6nOhCenzKa4Fqz)

Choose which tools the Protege is allowed to use after it starts.

Grant only the tools the workflow needs. If the Protege should post to Slack but not read Slack history, grant the posting tool only.

### 5. Review and publish

Review the complete configuration:

* The trigger is correct and narrow
* The tools match the intended actions
* The outcome description is specific

Publish when the configuration looks right. Resolve any setup blockers before going live.

{% hint style="warning" %}
If the wizard shows a setup blocker after review, go back to the relevant step and resolve it before publishing. A Protege with unresolved blockers cannot run automatically.
{% endhint %}

## How to verify

You are ready to publish when:

* The plan matches your intended workflow
* Required integrations are connected
* Trigger Access and Tool Access are complete
* Any schedule is enabled and scoped correctly
* You know what event or schedule will test the Protege
* You know where to check Event Feed and Audit afterward

## Common failures

* Describing the desired result but not the trigger
* Accepting a plan with broader access than intended
* Publishing before required service connections are complete
* Forgetting to add a schedule for a schedule-only Protege
* Testing in Audit before confirming the event arrived in Event Feed

## Next step

* [Builder patterns](/create-a-protege/builder-patterns.md)
* [Skills Hub](/create-a-protege/skills-hub.md)
* [Readiness and blockers](/create-a-protege/readiness-and-blockers.md)
* [Event Feed](/event-feed.md)


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://docs.tryprotege.com/create-a-protege.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
