User Guide

Working with your AI team, day to day. ← Help Center

My Desk πŸ—‚

Your starting screen brings daily briefs, team updates, and to-dos together. Use the staff sidebar to open conversations; the β€’β€’β€’ button on each row shows the agent’s email and assigned phone number, plus Jobs, Schedule, Triggers, Files, and Manage. The email and phone number are clickable. Settings on My Desk opens your personal inbox connection.

Recent work, at the bottom of the staff sidebar, opens a dialog that updates live. Filter by In progress, Completed, or All, then click a job to inspect its original request, latest response or result, files, pending decisions, and activity. The desk shows up to 12 jobs from the latest 50 per visible staff member. For more, open that employee’s Jobs from the staff sidebar.

Agents can post to your desk on request ("put the weekly summary on my desk") or on their own initiative when something is ready. Ask for it in chat and they'll do it.

What your AI employees are

Each staff card in the sidebar represents a persistent AI staff member with a job description, a long-term memory, its own files, and (once connected) its own work email and Google Drive. They do their work in a secure cloud workspace with tools for writing documents, running analysis, and browsing the web.

Treat them like colleagues: give clear assignments, share the files they need, correct them when they get something wrong β€” they remember, and they get better at working with you over time.

Chatting and assigning work πŸ’¬

Click an agent’s row in the sidebar to open their window, and type a task or question. This is also where you follow work in progress β€” you'll see the agent's activity ("Using bash", "Using web_search"), a live cost counter in the badge, finished documents, and anything waiting on your approval. Click the dimmed area outside, or press Escape, to close it.

How conversations work

Keep instructions in the message; put long content in attachments. Attached files are cheaper for the agent to work with than pasted text.

Files: attachments, cabinet, deliverables πŸ“

Email πŸ“§

An agent with a connected work account can search and read its own inbox, and incoming email wakes it automatically β€” it reads the message, does the work, and drafts a reply.

The approval system

Schedules πŸ—“

Recurring duties an agent performs on its own β€” no prompting needed. Open πŸ—“ Schedule on the agent's card (whoever manages the agent can add them).

Agents can also read their own calendar and create events with Google Meet links (invitations only to approved contacts) β€” so "schedule a check-in with me Thursday" works as a chat request.

Meetings πŸ“ (Google Meet and Zoom)

For recurring Zoom meetings, open a Meetings card’s Settings β†’ Google Calendar and select the recurring event by name. Your connected Google account’s primary calendar supplies upcoming dates for the next 12 months. Events need a Zoom join link. A personal Zoom room can serve several series: recordings are matched using their actual time and Calendar event ID. Cloud recording and Zoom transcription must be enabled. Ambiguous or unmatched recordings appear in Previous meetings β†’ Choose meeting; select a card and click Assign. Existing dedicated Zoom connections remain available under the optional section. When a legacy β€œrecording ready” agent duty watches the same room, saving the Calendar connection pauses that duty so the transcript is processed only once; the duty remains available and can be turned back on later.

On My Desk, the Meetings card sits below Today at a glance. Manage recurring meetings, record a one-off meeting, and inspect saved meetings directly in the card. Use All meetings to return to the list and Refresh to update it.

Your own inbox πŸ“₯

You can let one assistant agent work in your personal mailbox. On My Desk β†’ Settings β†’ My inbox, pick the agent and click Connect my inbox, then approve with your own Google account. The consent screen asks for Gmail only β€” no Drive, no Calendar.

Your inbox holds confidential personnel, student, and legal matters, and what the assistant reads passes through the AI model. Use a dedicated assistant for this rather than sharing the job with agents that do other work.

Costs πŸ’΅

Agents working together 🀝

Your agents can ask each other for things, the way colleagues do. You don't set this up β€” it is on for every agent β€” and you don't have to ask for it: an agent reaches out on its own when the answer or the access belongs to someone else. You can also just say so: "check with Nora first", or "ask Ava to book it, she has the calendar".

This matters most where access differs. If Ava is the one connected to a calendar or a mailbox, Nora doesn't need a copy of that access β€” she asks Ava, and Ava does it with her own. Nothing is shared or duplicated.

A colleague answering a question replies from what they know, not by going and looking β€” they don't use their tools for it. If the job really needs someone to search their mailbox or run a report, the agent hands it over as a job instead, and you'll see it appear on their board.

Roles 🎭

Per agent, whoever manages it chooses: Everyone in the organization (choosing whether everyone can view, chat, or manage) or Only specific people, each at one of three levels β€” Manager (full control), Chat (assign work, handle approvals), or View (follow the work read-only).

For managers & admins βš™οΈ

Hiring

  1. + Hire β†’ name, role title, and a real job description (this is literally the agent's brief β€” specific beats vague).
  2. Add standing instructions: house style, preferences, recurring duties, things to always/never do. You can refine these anytime in Manage.
  3. For an email-enabled agent: have IT create a Workspace account (see the IT Guide), set it as the work email, then Generate connect link in Manage.

The Manage panel

Web accounts β€” letting an agent use your systems

Connected services β€” giving an agent a whole toolset πŸ”Œ

Zoom β€” scheduling, recordings and transcripts πŸ“Ή

One small app connects your organization's Zoom: agents can then schedule Zoom meetings, list cloud recordings, and read transcripts. Reading is strictly personal: an agent only ever sees the recordings of the person who gave it the task β€” never anyone else's, whoever asks.

Setup β€” once per organization, about five minutes, no sign-ins:

  1. On marketplace.zoom.us, an admin chooses Develop β†’ Build App β†’ Server-to-Server OAuth app. Fill in the required app information; it stays private and needs no review.
  2. Under Scopes, add meeting:write:meeting:admin and cloud_recording:read:list_user_recordings:admin, then activate the app.
  3. Copy the Account ID, Client ID and Client Secret from its credentials page into Organization settings β†’ Zoom. The save mints a real token, verifies all three values, and tells you exactly which of the two abilities the app's scopes enable.

What agents can then do:

The privacy line, spelled out: the app's credential is account-level, but the platform only ever reads the recordings of the person who assigned the task β€” checked on every call. Scheduled and email-triggered tasks have no person behind them, so recording reads are refused there entirely.

Systems an agent can query β€” connecting an API πŸ”—

These systems hold real records about real children. Agents are told to retrieve only what a task needs and to keep names and identifying details out of anything they produce β€” but decide deliberately which agents get access, and give the narrowest key you can.

A website an agent maintains β€” connecting AWS S3 ☁️

If your school website is a static site kept in an Amazon S3 bucket, one agent can be given the ability to edit and publish it. The agent never holds an AWS key: it gets six website_* tools β€” list, read, write, upload, delete, clear cache β€” and our servers carry each one out with a key you store once. The setup is about twenty minutes in the AWS console, done once.

Before you start β€” find three things in AWS

  1. Which bucket is the live site. Go to S3 β†’ Buckets. If there are several (old domains, redirect buckets, a logs bucket), open the one whose name matches your current domain and check Properties β†’ Static website hosting is enabled, or see step 2. Note its name and its AWS Region column (e.g. us-east-2).
  2. Whether a CloudFront distribution sits in front of it. Go to CloudFront β†’ Distributions and look for one whose Alternate domain names include your site and whose Origin is that bucket. Note its ID (looks like E2Q1B5D6WXBFT1). If none matches, the site is served straight from S3 and you leave that field blank. A quick check from any computer: if the site's response headers say x-cache: … cloudfront, there is a distribution.
  3. Your 12-digit account ID β€” top-right menu of the console.

Step 1 β€” Turn on bucket versioning (the undo button)

S3 β†’ your bucket β†’ Properties β†’ Bucket Versioning β†’ Edit β†’ Enable β†’ Save changes. From now on every change keeps the previous copy, so a bad edit is a one-click restore in the console (Objects β†’ Show versions). Without this there is no undo β€” do not skip it.

Step 2 β€” Create an IAM user for the agent

  1. IAM β†’ Users β†’ Create user. Name it something recognisable, e.g. schoolclaude-website. Leave Provide user access to the AWS Management Console unticked β€” this identity only ever calls the API. Next.
  2. On Set permissions choose nothing (do not add it to an admin group) β€” Next β€” Create user. Then open the user.
  3. Permissions β†’ Add permissions β†’ Create inline policy β†’ JSON. Delete what is there, paste the policy below, and replace YOUR-BUCKET (twice), YOUR-ACCOUNT-ID and YOUR-DISTRIBUTION-ID. If there is no CloudFront distribution, delete the whole third statement (and the comma before it). The editor should say no errors. Next β€” name it e.g. website-bucket-only β€” Create policy.
{
  "Version": "2012-10-17",
  "Statement": [
    { "Effect": "Allow",
      "Action": ["s3:ListBucket", "s3:GetBucketLocation"],
      "Resource": "arn:aws:s3:::YOUR-BUCKET" },
    { "Effect": "Allow",
      "Action": ["s3:GetObject", "s3:PutObject", "s3:DeleteObject"],
      "Resource": "arn:aws:s3:::YOUR-BUCKET/*" },
    { "Effect": "Allow",
      "Action": ["cloudfront:CreateInvalidation", "cloudfront:GetInvalidation"],
      "Resource": "arn:aws:cloudfront::YOUR-ACCOUNT-ID:distribution/YOUR-DISTRIBUTION-ID" }
  ]
}

This is the whole of the agent's power in AWS: read, write and delete files in that one bucket, and clear that one cache. It cannot see other buckets, change bucket settings, or touch anything else in the account. Never use a root or administrator key here.

Step 3 β€” Create the access key

  1. On the user's page: Security credentials β†’ Access keys β†’ Create access key.
  2. Use case: Third-party service β†’ tick I understand the above recommendation β†’ Next.
  3. Description tag: anything like SchoolClaude website agent β€” letters, numbers, spaces and _ . : / = + - @ only; parentheses are rejected. Create access key.
  4. You are now on Retrieve access keys. Stay on this page β€” the secret is shown exactly once. Leave it open while you do step 4.

Step 4 β€” Grant the agent access in SchoolClaude

  1. Open the agent β†’ Manage β†’ Connections β†’ Website this agent maintains β†’ + Grant website access.
  2. Fill in: bucket name, region, the public site URL, the CloudFront distribution ID (or blank), the Access key ID (starts AKIA), and the Secret access key β€” use the copy icon next to it in AWS rather than retyping; it is exactly 40 characters and one wrong character is invisible. Notes are optional but useful: how the site is built, which pages the agent owns.
  3. Grant access. This checks the key against the bucket on the spot. You will see either Website access granted or AWS's own reason for refusing (InvalidAccessKeyId β€” the key ID was mistyped or the key is inactive; SignatureDoesNotMatch β€” the secret is wrong; AccessDenied β€” the policy names a different bucket than the one you entered). Fix and try again; nothing is stored until it works.
  4. Now click Done in AWS. If you ever lose a secret, do not hunt for it β€” deactivate that key under Security credentials and create a new one; Replace key or settings in SchoolClaude takes the new pair.

Step 5 β€” Test before you trust it

Give the agent a new task: "List the top-level files on the website and read index.html. Change nothing." It should report the file list and the page. Then try a real but tiny edit on a low-traffic page and check it live. Every publish appears in the agent's activity feed as Published <path>.

Day to day

Why the key is not simply handed to the agent: AWS signs every request with the secret, and our credential vault (which keeps other keys out of agents' sandboxes by swapping placeholders for real values) cannot reproduce a signature. Running the tools on our servers is the documented alternative β€” and it means nothing AWS-related ever enters the agent's environment at all.

Archiving ("firing") an agent

Organization settings (admins)

A member can belong to only one organization, and everything β€” agents, chats, files, approvals β€” is visible only inside your organization.