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

# Quickstart

> Build your first Roe Agent in under 5 minutes

## Build an Image Extraction Agent

Each Roe Agent uses an Engine that defines which tasks this agent will tackle.
Our built-in [Engines](/agents/engines/introduction) are optimized for their
respective functions. In this example, we will use our
[Image Extraction Engine](/agents/engines/image-extraction) to extract data from
images.

<Steps>
  <Step title="Create an Agent">
    Click on the "Add Agent" button in the
    top right corner of the Agents page.

    <Frame>
      <img src="https://mintcdn.com/roeai/qeWYCF2quzHQHhsD/images/add-agent.png?fit=max&auto=format&n=qeWYCF2quzHQHhsD&q=85&s=b3e1ec9b816ed1e57cb1ecfa53ff4288" width="1920" height="1045" data-path="images/add-agent.png" />
    </Frame>
  </Step>

  <Step title="Choose an Engine">
    Select the Image Extraction Engine.

    <Frame>
      <img src="https://mintcdn.com/roeai/qeWYCF2quzHQHhsD/images/agent-creation-choose-engine.png?fit=max&auto=format&n=qeWYCF2quzHQHhsD&q=85&s=8333e072e20314d5ec42d5db7594da6e" width="1594" height="817" data-path="images/agent-creation-choose-engine.png" />
    </Frame>
  </Step>

  <Step title="Configurations">
    Configure the **Agent Inputs** and **Engine Configurations**.

    <Frame>
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-config-page.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=7d3f8045b04bc2054bde860577783e0f" width="1284" height="1008" data-path="images/agent-config-page.png" />
    </Frame>

    * **Agent Input Definition**: Defines the inputs that your Agent must
      accept when running a job. You can define the input key and its type as well as add or remove inputs. All defined inputs must be passed in a value when running the Agent. Learn more
      about [Input Definitions](/agents/input-definition).

    <Frame caption="Agent Inputs">
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-config-inputs.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=8a777ad73ed7836d5669d110ebdf2e54" width="612" height="453" data-path="images/agent-config-inputs.png" />
    </Frame>

    * **Engine Configuration**: Configurations specific
      to your selected Engine. This sets things like which AI model or prompt instructions the Agent will use when running jobs. You can also dyanmically define the Engine configurations at runtime by using template strings of the Agent input keys. Learn more about configuring
      [Engines](/agents/engines/introduction).

    <Frame caption="Example of dynamic Engine configurations">
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-config-engine-configs.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=38acbe49468f37d603a050308c499e76" width="609" height="862" data-path="images/agent-config-engine-configs.png" />
    </Frame>
  </Step>

  <Step title="Create the Agent">
    Hit the **Create** button. Woohoo, you just built your first Agent! Now, let's run it.
  </Step>
</Steps>

## Run Your Image Extraction Agent

There are three ways to run your Agent:

* UI
* [Agent API](/api-reference/agents/run)
* [Roe SQL](/database/functions/run-agent.mdx)

We will run the agent through the UI:

<Steps>
  <Step title="Go to the Agent's details page">
    <Frame>
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-view.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=21a6c1bb15b90120ba326734a9bad49e" width="1942" height="200" data-path="images/agent-view.png" />
    </Frame>
  </Step>

  <Step title="Create a new Agent job">
    <Frame>
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-new-job.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=3517e85ca469e22edd5d35f7861c8763" width="1942" height="674" data-path="images/agent-new-job.png" />
    </Frame>
  </Step>

  <Step title="Fill in the Agent inputs">
    Paste in the following text for the **instruction** input field:

    ````
    Describe the image in one sentence.
    Output in the following structure:
    ```
    {
      "description": "<description of the image>"
    }
    ```
    ````

    Then pick an image to upload to the **image** input field. You can use the one below.

    <Frame caption="san-francisco.jpg">
      <img src="https://mintcdn.com/roeai/KH5NetBx7zzOcueq/images/san-francisco.jpg?fit=max&auto=format&n=KH5NetBx7zzOcueq&q=85&s=68a5a7e0f6c1f0e5c9ea2bf53211352d" width="612" height="336" data-path="images/san-francisco.jpg" />
    </Frame>

    Here is the filled-in Agent inputs:

    <Frame>
      <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-create-job.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=611f776c5fbc0f08b7b40266e3421842" width="1340" height="952" data-path="images/agent-create-job.png" />
    </Frame>
  </Step>

  <Step title="Run the job">
    Hit the **Create** button at the bottom. Hell yeah, your first Agent job has been kicked off!
  </Step>
</Steps>

## View Results

You can view the status of your Agent job in its details page.

<Frame>
  <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-jobs-list.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=fb5b948cdb8fb4184aa3f579f192ea5b" width="1930" height="572" data-path="images/agent-jobs-list.png" />
</Frame>

Click **view** to check the job result.

<Frame>
  <img src="https://mintcdn.com/roeai/wyVOyeWPONjXHsrt/images/agent-job-detail.png?fit=max&auto=format&n=wyVOyeWPONjXHsrt&q=85&s=ce51991d73e918fd05eb79355d58b9db" width="733" height="444" data-path="images/agent-job-detail.png" />
</Frame>

## Improve Your Agents' Results

* [Prompt Engineering](/agents/prompt-engineering)
* [Define Output Schema](/agents/output-schema-json)
