Automating Without Overwhelming Yourself 3 of 6 · 2:30–2:45
3 · 2:30–2:45 · 15-minute tour

Tools of the trade

Three agents that work on files on your computer: Claude Code, Claude Cowork and Codex. What they can touch, and the ways to make an automation run without you.

  1. The agents 3 min
  2. What it can touch 4 min
  3. House rules 1 min
  4. Ways to run it 4 min
  5. Which setup? 2 min
  6. Four questions 1 min
  7. APIs optional

The agents

3 min

A chat assistant only sees what you paste in. An agent works in your files, runs commands, and acts with your keys.

Claude Code

Anthropic

A coding agent that works in a project folder.

Today's demos
What it is
Reads your files, edits them, and runs commands.
Where it runs
The terminal, VS Code and JetBrains, the Claude Desktop app, and the web.
What it can touch
Files in your project and commands on your computer. Its permission mode decides when it stops to ask.
House rules
CLAUDE.md, read at the start of every session. It can also read AGENTS.md.
Good first use
Intake to triage: a short script that gives every form response a status. That's demo 1.

Claude Cowork

Anthropic

The agent mode in the Claude app, for knowledge work on your files.

No terminal
What it is
Works across your files and apps, and can finish a piece of work while you do something else.
Where it runs
The Claude Desktop app. Since July 2026, also on claude.ai on the web and on mobile.
What it can touch
Folders you connect, with the permissions you set. A built-in browser that opens sites, reads pages, clicks, types and fills forms. It asks before it acts.
House rules
Keep a rules file in the connected folder, and start each task with “Read the rules file first.”
Good first use
Pile to catalog: list what's in a folder and flag the duplicates, with no code on your side.

Codex

OpenAI

OpenAI's coding agent.

Folder is ready for it
What it is
Reads your code, makes edits, and runs commands.
Where it runs
The terminal (Codex CLI); VS Code, Cursor and Windsurf; the Codex view in the ChatGPT desktop app, where the Codex app moved on July 9; and Codex cloud at chatgpt.com/codex.
What it can touch
By default, the working folder: there it edits and runs commands without asking. It asks before it edits files outside that folder or runs anything that needs the network.
House rules
AGENTS.md, read before it starts work. A file in a deeper folder overrides one higher up.
Good first use
Many sheets to one table: a merge script that joins two exports on a shared key. That's demo 3's shape.

An agent sees whatever is in the folder you give it. Today it only gets dummy data, from the class data folder. Client data goes only into tools the client and U-M approve, such as U-M GPT and Maizey, as Michael Hess covered earlier today.

Speaker notes · 2:30 to 2:33

One idea across all three cards: an agent works in your files and holds your keys. A chat assistant like U-M GPT only sees what you paste.

The demos run in Claude Code. The Codex CLI isn't installed on this Mac; the demo folder has an AGENTS.md, so it is ready for Codex. Cowork is the option for teams who don't want a terminal.

Read the dummy-data line aloud, then move on. Don't re-teach Michael's material on approved tools.

What your agent can touch

4 min
  • It acts as you.It signs in with your account, so it can do what you can do. Connectors like Gmail, Drive and Calendar ask for access on a consent screen. Read that screen: it lists every key you hand over.
  • Read → draft → send → delete.Each step up is a bigger key. Start at read. Add a step only after you've watched the one below it work.

The email ladder

Click a rung. Read is at the bottom.

My rule: Drafts only. Sending stays manual.

Pick a rung

Each one shows what that permission lets an agent do with your email, an example request, and the risk.

It asks before it acts

Claude Code

Permission modes. Default asks before every edit and command. Auto uses classifiers to approve some steps for you.

Since August 14, Auto is the default on Pro, Max and Team plans. Check which mode you're in.

Claude Cowork

Asks permission for actions, like Claude Code. It reaches only the folders you connected, with the permissions you set.

Codex

Two dials. Sandbox: read-only, workspace-write or danger-full-access. Approval: on-request or never.

The default preset, Auto, is workspace-write plus on-request. Network is off by default. --yolo turns off both dials; OpenAI marks it not recommended.

Both products have something called “Auto,” and they mean different things. Start where it asks the most, and loosen one notch at a time.

  • What leaves your laptop.Whatever the agent reads goes to the model. A cloud run happens on the company's machines, with whatever you connected to it.
  • Write the house rules down.A plain-text SOP the agent reads first. See the real one below.

The scopes story

My business inbox was read-only. I added one permission, compose, so the agent can draft replies. It still can't send.

Speaker notes · 2:33 to 2:37

Click Read, then Draft. Pause on the dashed line. Then Send and Delete, and ask the room which rung their project needs.

The three “asks” cards: for the demos, Claude Code is set to ask before every edit and command. The Auto point matters for anyone who installs it tonight.

Tell the scopes story last. One permission added, and it still can't send. Set up the demos: when the agent asks to write triage.py or run python3, that's this section happening live.

House rules

1 min
CLAUDE.md

Claude Code reads it at the start of every session: commands, conventions, project rules.

AGENTS.md

Codex reads it before it starts work, from your global settings down to the current folder. The closest file wins.

Cowork

Keep the same file in the connected folder and ask it to read that first.

This is the file in today's demo folder. No code in it: an SOP in plain English.

03_demos/CLAUDE.md (also saved as AGENTS.md)
# House rules for this folder

Everything in this folder is dummy data made for a workshop. Treat it as if it were real.

- Work only inside this folder. Don't read or write anywhere else.
- The CSV files you were given are originals. Never edit them; write new files next to them.
- Before you run any code, explain in plain English what it will do.
- Put exact checks (duplicates, blanks, formats, dates) in code. Use your own judgment only where I ask
  for it, and say which is which.
- When a row doesn't fit the rules, mark it "needs review" with a reason. Don't guess.
- Never send email, post, or upload anything.
Speaker notes · 2:37 to 2:38

Read two lines aloud: “needs review” with a reason, and never send. Students can copy it for their own folder in Track B.

Ways to run an automation

4 min

Five ways, from “you run it” to “it runs itself.” The further down, the less you watch.

  1. By hand, in a session

    You ask, you watch every step, you say yes or no. The smallest useful unit starts here.

    Claude Code's /loop repeats a prompt inside an open session until a goal is met, for up to about three days.

    Laptop on, you're at itClaude Code · Cowork · Codex
  2. A trigger inside a tool you already use

    Google Apps Script. On form submit runs when someone responds to a form. Time-driven runs anywhere from every minute to once a month; a 9 AM trigger fires between 9 and 10, then keeps that time.

    It runs as the person who created the trigger, so any email it sends comes from that account.

    Laptop can be closedToday's hands-on, Track A
  3. Scheduled on your own computer

    cron runs a command on a timetable. On a Mac, Apple recommends launchd instead. The command can be a script, or an agent run without a chat window: claude -p "…" or codex exec "…".

    Only while the computer is on and awake. A launchd job missed during sleep runs when the Mac wakes; a cron job waits for its next time.

    Laptop must be on
  4. Scheduled tasks built into the apps

    • Claude Code, desktop scheduled tasks: on your machine, awake with the Desktop app open. As often as every minute, with your local files and a permission mode for each task.
    • Claude Code routines: in Anthropic's cloud. On a schedule (at most hourly), from an API call, or on GitHub events. No local files. Set up at claude.ai/code/routines or with /schedule.
    • Claude Cowork scheduled tasks: /schedule. They run in the cloud and keep going when the Desktop app is closed, but reach your connected folders only while it is open.
    • Codex scheduled tasks (formerly Automations): under Scheduled in the ChatGPT desktop app, which works as an inbox. On the desktop they can use your project folder, with the computer on and the app running. Made on the web, they use uploads and connected tools, not your folders.
    Laptop: depends where it runs
  5. In the cloud: GitHub Actions

    A workflow file in a GitHub repository, run on GitHub's machines on a schedule or on events such as a pull request. Claude Code and Codex each have an official Action: anthropics/claude-code-action and openai/codex-action.

    API keys live in repository secrets. Every run uses the key, and API use costs money.

    Laptop can be closed

When should it run?

Pick one. The matching option lights up above.

Start by hand. Schedule it only after you've watched it work a few times.

And decide up front what stays manual.

Side by side

Ways to run an automation compared
OptionWhere it runsLaptop on?What it can touchSetupA good first use
A · By hand, in a sessionYour computer, or the Claude app for CoworkYes, and you're watchingWhat you allow, one step at a timeNoneBuild and test the smallest useful unit
B · Apps Script triggerYour Google accountNoThe Google files and services you authorizedLowEach form response becomes a pipeline row with a status and timestamp
C · cron or launchdYour computerYes, on and awakeYour files, and whatever the command is allowed to doMediumRun demo 1's triage script at 9:00 every Monday
D · Desktop scheduled task (Claude Code, Codex)Your computerYes, with the app openLocal files, within the permissions you setLowRe-run triage on the newest export each morning
D · Cloud scheduled task (Claude Code routine, Cowork, Codex on the web)The company's cloudNoRepositories, uploads and connected tools; Cowork reaches your folders only while its app is openLowA weekly “no movement in 14 days” alert
E · GitHub ActionsGitHub's machinesNoThe repository, plus keys stored as secretsMedium to highA weekly check on a data file kept in a repository

Reading a cron line

0 9 * * 1 means 9:00 every Monday.

One crontab line
# minute hour day-of-month month day-of-week  command
0 9 * * 1  /Users/you/intake/run-triage.sh
Before you point cron at an agent
  • claude -p is Claude Code's non-interactive mode, so cron or launchd can run it.
  • codex exec starts read-only. Add --sandbox workspace-write to let it edit. It expects a Git repository unless you pass --skip-git-repo-check, and only the final answer goes to standard output, so you can save it to a file.
  • OpenAI lists scheduled jobs as a use for codex exec; its docs don't show a crontab line.

A GitHub Actions schedule

.github/workflows/weekly-check.yml
name: Weekly check
on:
  schedule:
    # By default, cron time is UTC. 13:00 UTC is 9:00
    # in Michigan during daylight saving time.
    - cron: '0 13 * * 1'
jobs:
  check:
    runs-on: ubuntu-latest
    steps:
      - uses: actions/checkout@v4
      - run: python3 check.py
        env:
          API_KEY: ${{ secrets.API_KEY }}  # a repository secret
Good to know
  • The shortest schedule is every 5 minutes. It runs on the latest commit of the default branch.
  • GitHub now also accepts a timezone: line next to the cron line.
  • Runs can be delayed at busy times, such as the top of the hour. In a public repository, schedules switch off after 60 days with no activity.
  • Add a key under Settings → Secrets and variables → Actions → New repository secret. Values read through secrets are masked in logs.
  • openai/codex-action@v1 needs openai-api-key from a secret, plus a prompt or prompt-file. OpenAI's example runs on pull requests, not on a schedule.
Where to read more
Speaker notes · 2:38 to 2:42

The new material. Walk A to E once, top to bottom: the further down, the less you watch. The laptop pills are the thing to point at.

Ask one team what their project needs, and click the matching “When should it run?” button. Close on the callout. Don't read the table aloud; it's there for later.

If asked about Codex timing: its docs don't say whether a desktop run missed while asleep catches up later.

Which setup for your project?

2 min

7 of 11 client projects involve sensitive data or an NDA. Answer four questions.

1. Is the data sensitive or under an NDA?
2. Does it live in Google Workspace (Forms, Sheets, Drive)?
3. Does it need to run on files on a computer?
4. Does it need to run on its own?

Recommendation

Answer all four questions. 0 of 4 answered.

How the chooser decides
  1. Files on a computer? Claude Code or Codex, or Cowork if you'd rather skip the terminal. On its own: a desktop scheduled task, or cron or launchd, with the computer on. If it also lives in Google, ask whether Apps Script is simpler.
  2. Otherwise, in Google Workspace? Apps Script, written with an AI assistant and read by you. On its own: an on-form-submit or time-driven trigger.
  3. Otherwise, sensitive data? An approved chat assistant, U-M GPT or Maizey, by hand. No schedule until a tool is approved for that data.
  4. Otherwise, on its own? A cloud schedule: a Claude Code routine, a Cowork scheduled task, a Codex scheduled task made on the web, or GitHub Actions.
  5. Otherwise? Cowork or a chat assistant, by hand, when you need it.
  6. Sensitive data adds a caution to every answer: build on dummy data, and real data goes in only if the client and U-M approve the tool.
Speaker notes · 2:42 to 2:44

Ask one team to call out their four answers and click them in.

If someone asks why, open “How the chooser decides.” Each rule asks whether the work really needs that tool. If not, it drops to a simpler one: match tool complexity to task complexity.

Four questions before you pick

1 min
  1. What do I need to connect?
  2. What tools have access to those systems?
  3. What is the simplest approach that works?
  4. Can an AI tool help me bridge the gap between systems?

Three scenarios

Google Workspace only

Everything is in Google Drive.

Decision

The ecosystem's built-in tools.

Several workspaces

Google Drive, a team chat tool, a project management app.

Decision

Ecosystem tools, plus no-code tools to bridge the gaps.

A simple task

Any workspace.

Decision

Challenge the complex solution. Ask: “Is there a simpler way that I can do this?”

Next: three live demos. Watch for the moments the agent asks.
Speaker notes · 2:44 to 2:45

Read the four questions. Let the room guess each scenario before you open it.

End on “Is there a simpler way?” Then switch to the terminal for demo 1: “Let's watch it ask.”

APIs in one minute

Optional

What is an API?

Application Programming Interface: a list of things a system can do, and the rules for how to ask it to do them.

How do computers talk?

JSON: a list of keys paired with values.

{
  "name": "John",
  "role": "Manager",
  "department": "Operations"
}
Which part is the key?

Keys: name, role, department. Values: John, Manager, Operations. Key on the left, value on the right.

Authentication

Who you are.

Permissions

What you may do.

  • Read emails?
  • Send emails?
  • Delete things?
  • Schedule events?

Sound familiar? That's the email ladder.

Where AI comes in

LLMs translate human language into computer language.

Human language“I want to pull data from a spreadsheet and create individual documents for each row.”
AI
Computer languageWhat the system can run.
Speaker notes · only if there's time

Skip unless a team asks what an API is. The permissions list is the ladder again; the LLM line is why today works: you say it in English, the agent writes the code.

Product details checked against Anthropic, OpenAI, GitHub, Apple and Google documentation on September 27, 2026. These tools change often.

Your notes: tools for your project

saves as you type

Type as you go. It saves in this browser. The My notes button (bottom right) downloads everything from every page as one file.