# Quickstart

> Build an Endue agent, connect it to a tool you already use, and get a real result — in about ten minutes.

This walks you through building one agent that does something genuinely useful, rather than a toy that only talks. By the end you will have an agent with its own identity, a tool connection, and a result you can point at.

## Before you begin

Make sure you have:

- An Endue account, signed in on the web.
- About ten minutes.
- An account at a service you want the agent to work with — Gmail, Google
  Calendar, Slack, Notion, or [any of the others](/docs/connect/available-connectors/).
  Step 3 connects one of them. Use an account whose data you are comfortable
  experimenting with.

<Aside type="note">
  This guide covers the web app. Endue also runs on the [desktop, mobile, and the
  command line](/docs/get-started/surfaces/) — the agent you build here works from all
  of them.
</Aside>

## Build your first agent

<Steps>

1. **Create the agent.**

   Go to **Agents** and choose **New agent**. Give it a name and a handle — the
   handle is how you address it later, so keep it short.

   Write one sentence describing what this agent is for. Be specific: *"Summarizes
   my unread email every morning and flags anything needing a reply"* produces a far
   better agent than *"email assistant"*.

2. **Give it a system prompt.**

   Open the agent and write its system prompt — the standing instructions it reads
   before every conversation. Say what it should do, what it should never do, and
   what a good result looks like.

   Endue keeps every version of this prompt. Change it freely; if a change makes the
   agent worse, roll back to the revision that worked.

3. **Connect a tool.**

   Open **Connectors** in Agent Builder and connect the service you want the agent
   to work with — Gmail, Google Calendar, Slack, Notion, or any of the
   [the full catalog](/docs/connect/available-connectors/).

   You will be sent to that provider to sign in and approve access. Endue only
   receives the permissions shown on that consent screen, and you can revoke them at
   any time.

   Then bind the connection to your agent, so this agent — and not every agent in
   your account — can use it.

   <Aside type="caution" title="Connect the account you mean to use">
     Connections are tied to a specific account at the provider. If you have both a
     work and a personal Google account, check which one you are signing in as.
   </Aside>

4. **Ask it to do something real.**

   Open a conversation with the agent and give it an actual task, not a test —
   *"Find every email from this week that I haven't replied to and summarize what
   each one is asking for."*

   The agent works in a **run**: it decides which tools to call, calls them, reads
   the results, and keeps going until it has an answer. You can watch each step as
   it happens.

5. **Steer it if it goes the wrong way.**

   You do not have to wait for a bad run to finish. Send a correction while it is
   still working and the agent picks it up on its next step.

6. **Approve anything that leaves your account.**

   If the agent tries to send an email, post a message, or delete something, it
   stops and asks you first. Approve it and the agent continues with exactly the
   action you saw; reject it and the agent adapts.

   This gate is not optional and cannot be turned off for outbound or destructive
   actions.

7. **Find what it produced.**

   Anything substantial the agent writes — a report, a summary, a document — becomes
   an **artifact** with its own page under **Artifacts**. Artifacts are private to
   you by default. Share one with a link when you want someone outside your workspace
   to read it, without giving them access to anything else.

</Steps>

<Aside type="note" title="Screenshots are on the way">
  This guide is written for readers who can follow along in the product. Annotated
  screenshots for each step are generated automatically from the app and land in a
  later revision of this page.
</Aside>

## Make it recurring

The agent you just built runs when you ask it to. Most of the value shows up when it runs without you.

Turn the same task into a **routine** with a schedule — every weekday at 8am, every Monday, the first of the month. The routine runs whether or not you have Endue open, and what it produces is waiting for you when you come back. If it needs a decision, it asks, and you will see the request in your inbox.

## Getting a better agent

The difference between an agent that helps and one that annoys is usually in how you set it up, not which model it uses. Once you have tried these, [Testing and iterating](/docs/build/iterating/) covers how to change an agent without breaking one that already works.

<AccordionGroup>
  <Accordion title="Say what a good result looks like">
    The agent picks its own steps. What it cannot guess is your standard for
    "done".

    Instead of *"summarize my email"*, try *"summarize my unread email; group by
    sender; for anything asking me a direct question, quote the question verbatim
    so I can answer without opening it."*
  </Accordion>

  <Accordion title="Put the standing rules in the system prompt, not in every message">
    Anything you would repeat in every conversation belongs in the system prompt:
    who you are, what you care about, what the agent should never do, the format
    you want results in.

    Prompts are versioned, so this is safe to iterate on — change it, see if the
    agent gets better, roll back if it does not.
  </Accordion>

  <Accordion title="Give it one job">
    An agent with a narrow purpose and three tools outperforms one with a vague
    purpose and twenty. Build a second agent rather than widening the first.
  </Accordion>

  <Accordion title="Correct it while it is working">
    Watching a run go the wrong way and waiting for it to finish wastes the whole
    run. Send the correction as soon as you see the problem — the agent picks it
    up on its next step.
  </Accordion>

  <Accordion title="Bind only the connections it needs">
    Connections are bound per agent for a reason. An agent that does not need
    your calendar should not have it — it narrows what can go wrong and makes the
    agent's choices more predictable.
  </Accordion>
</AccordionGroup>

## What to read next

<CardGrid>
  <LinkCard
    title="Core concepts"
    href="/docs/get-started/core-concepts/"
    description="What an agent, run, skill, connector, memory, and artifact actually are."
  />
  <LinkCard
    title="How Endue works"
    href="/docs/get-started/how-it-works/"
    description="The loop behind every run, and why runs pause when they do."
  />
  <LinkCard
    title="Agent Builder"
    href="/docs/build/agent-builder/"
    description="Every setting that decides how your agent behaves."
  />
  <LinkCard
    title="Routines"
    href="/docs/automate/routines/"
    description="Turn what you just built into work that happens without you."
  />
</CardGrid>

## Getting help

- **Search these docs** — press <kbd>Ctrl</kbd>/<kbd>⌘</kbd> + <kbd>K</kbd> from any page.
- **Ask your agent** — every page here is available as Markdown, and the whole
  site is indexed at [`/llms.txt`](/docs/llms.txt). Point an agent at it and ask.
- **Email us** — [support@endue.ai](mailto:support@endue.ai).
