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

# Resources and review

> The building blocks agents reuse, and the human approval step that gates every run.

Agents is a **Beta** feature, and it's built to keep a person in the loop. Nothing an agent produces gets published or sent anywhere until you look at it and approve it. This page covers the two parts of that promise: the **Resources** tab, where you set up the building blocks agents reuse, and the **review and approval** flow, where a person decides before a run continues.

Agents are also called workflows in a few places in the app. They're the same thing.

## The Resources tab

Open the **Resources** tab from the Agents page. The idea, in the app's own words:

> Set these up once, then attach them to agent steps. Credentials are encrypted and never shown again.

There are four kinds of resource.

**Connections** let an agent call an external service: a **Slack webhook**, an **Outgoing webhook**, an **API**, or **Google Docs**. Each one is listed with its kind and its status, and you can remove it. A connection is the only way an agent reaches outside FixAEO, and every use of one still stops for your approval first (more on that below).

**Knowledge bases** are the approved facts an agent is allowed to draw on: product facts, documentation, and internal source material. You give a knowledge base a name and a short note on what belongs in it, then add documents — each one a title plus the source text you paste in. This is how you keep an agent grounded in what's true about your product instead of whatever it guesses.

**Brand kits** keep the writing on-brand. A brand kit holds your writing voice, your approved claims (one per line), and the claims to avoid (one per line). Attach it so every draft sounds like you and stays inside what you're willing to say.

**Audiences** describe who the content is for: a name, a description of who they are, their goals, and their pain points. An agent writing for a named audience aims the work instead of writing for no one.

<Warning>
  A credential you save into a connection is encrypted and shown only once. Save it somewhere safe when you create it — FixAEO can't display it again, and you'd have to recreate the connection to replace it.
</Warning>

## Review and approval

Every agent run reaches a point where it pauses and waits for a person. You can approve it, edit what it proposes, or reject it. Until you do, nothing moves forward. There are two shapes to this, depending on what you're running.

**Custom agents stop at an approval checkpoint.** When a run hits a **Human review** step, it pauses and shows you **Approve this checkpoint**. You see the proposed output, and you can edit it inline before you decide. You can add a review note (up to 2,000 characters) to say why, then choose **Approve** or **Reject**. Approving continues the run with the values you see; rejecting stops it. Any external action listed there is approved one time only.

**Built-in recipe runs pause at Review before generation.** Instead of a raw output, a recipe shows you the plan before it writes anything. Depending on the recipe you either edit the brief the draft will be built from, or choose which recommendations to apply and edit each proposed change. Then you pick **Approve and generate** or **Reject**. The app is blunt about the limit of this step: approval doesn't verify facts or publish anything. Review the finished work too.

<Note>
  Approval is not the same as publishing. Approving a checkpoint lets the run keep going; it doesn't push anything live. AI-generated work should be read before you use it anywhere.
</Note>

## External actions always stop first

When a step would send something out of FixAEO — post a Slack message, make an API call, or create a Google Doc — the approval screen shows an amber box headed **This approval will send externally**. It lists exactly what will go out and where. You're approving that specific send, this one time. It does not pre-authorize the same action on a future run; the next run stops and asks again.

## Who can decide

Not everyone who can watch a run can approve it. The decision belongs to the agent's **owner**, an **editor** collaborator, or an **assigned reviewer**. Anyone else can follow the run and see what's proposed, but they can't approve or reject it — the app tells them the assigned reviewer, an editor, or the owner has to make the call. Roles come from how the agent is shared; see [Team and workspaces](/team-and-workspaces).

Anything waiting on a person shows up on the Agents **Overview** tab, under **Review or fix N agent runs**, marked **Approval is waiting**. That panel is the fastest way to find runs that are stuck on you.

<Note>
  Approving a recipe run needs an active paid plan and a configured provider — the app will say so if either is missing. The checkpoint approval on a custom agent is gated by your role or assignment, not by your plan. See [Plans and limits](/plans-and-limits).
</Note>

## Related

<CardGroup cols={2}>
  <Card title="Agents" icon="robot" href="/agents">
    Build an agent from plain language or on the visual canvas.
  </Card>

  <Card title="Skills" icon="wand-magic-sparkles" href="/agents/skills">
    Reusable instructions you attach to any agent's AI steps.
  </Card>

  <Card title="Templates" icon="grip" href="/agents/templates">
    Ready-made agents and recipes you can start from.
  </Card>

  <Card title="Scheduling and automation" icon="clock" href="/agents/automation">
    Run agents on a schedule, from a webhook, or in bulk.
  </Card>

  <Card title="AI Marketer" icon="comments" href="/ai-marketer">
    The conversational sibling that drafts work from your data.
  </Card>

  <Card title="Security and privacy" icon="shield" href="/security">
    How credentials are encrypted and who can see your data.
  </Card>
</CardGroup>
