Skip to main content

Generalist World · Summer School

Building productivity superpowers with Claude Code

The workshop reference — which Claude to reach for, how the agent actually works, the habits that get you good results, and how to keep going.

June 11, 2026No coding experience neededEvent page

Workshop materials

Grab the files

The project we built in the workshop — the context Claude reads automatically, plus the spreadsheets to work with.

  1. 1Download and unzip the folder, then open it in Claude Code.
  2. 2Ask Claude to read the files in context/ and look at the data, then tell you what it understands about the project.
  3. 3Follow along with the workshop from there.

Getting set up

Setup video

Installing Claude Code and connecting GitHub, start to finish.

The lay of the land

Pick your Claude

Claude Code

the workshop tool

The full agent harness, running directly on your machine or a cloud sandbox. Can use any MCP server or connector.

Best for: the most powerful option — building, automating, analyzing.

Claude Cowork

An agent in a local virtual machine — a simplified harness with safety features. Connects to your apps via approved connectors.

Best for: everyday knowledge work on files, docs, and spreadsheets.

Claude Chat

Conversation in the app or browser. Limited agentic capabilities — it talks, it doesn't act.

Best for: quick questions, Q&A, brainstorming, drafting.

Same Claude Code underneath

Pick your interface

Desktop app

Best for: Smoother visuals; the easiest way to work in a cloud sandbox or locally.

Watch out: Missing some features the terminal has.

Terminal

Best for: Simple text interface; full power — you can run fancy scripts.

Watch out: Steeper learning curve.

Web

Best for: Familiar interface, zero install — runs sessions in the cloud.

Watch out: Cloud-only — can't touch files on your machine.

Mobile

Best for: Kick off and check in on cloud sessions from your phone.

Watch out: Reviewing on the go, not deep work.

Under the hood

How Claude Code works

1

You prompt Claude

Describe the goal, the constraints, and what success looks like.

2

Claude runs in a loop

It works with resources and tools, checking results and course-correcting as it goes:

FilesCodeToolsWebConnectorsComputer use
3

Claude finishes

It reports back once the task is complete.

An appA reportAn automation

The better your context, the better your results

Context is everything

Claude starts every session with a small core, then goes and finds what the task needs.

In every session

Loaded automatically at the start

Claude Code system promptCLAUDE.mdMemory indexSkill names & descriptionsMCP server instructions

Pulled on demand

Claude finds what's relevant to your task

Project filesRelevant skillsRelevant memoriesWeb sourcesExternal data via connectors, MCP & APIs
CLAUDE.mdStanding instructions read at the start of every session — project facts, preferences, rules. Ask Claude to write it: run /init.
@-mentionsType @file to pull a specific file or folder straight into the conversation.
Plan mode (Shift+Tab)Claude proposes an approach for your approval before touching anything.
/clear · /compactReset between unrelated tasks; condense a long session so quality doesn't degrade.
SkillsSaved, reusable workflows. Ask Claude to “create a skill that does X” for any recurring job.

Operating habits

Five prompting practices

1

Plan before you build

My goal is X. Plan phases A, B, and C. The success criteria are… Your constraints are…

2

Start simple, then iterate

Begin by creating an exploratory analysis of the sales data. Then we'll take on the bigger project.

3

Make Claude validate its work at every milestone

Verify that every citation links to a real webpage.

Claude will write and run its own checks.

4

Show what good looks like

The dashboard should use the same visual style as the home page.

Examples beat adjectives.

5

Don't rely on prompts for safety

Keep confidential info private; only connect trusted resources. Hard rules belong in settings, not prompts — see below.

Muscle memory

Slash commands & keys worth knowing

/initClaude writes a CLAUDE.md for the current project by exploring it
/clearWipe the slate between unrelated tasks
/compactCondense a long conversation and keep going
/permissionsSee and edit what Claude is allowed to do
/configA menu for every other setting
/mcpManage connected tools and data sources (MCP servers)
/helpEverything else
EscInterrupt Claude mid-task — stop it, redirect it, course-correct
Shift+TabCycle permission modes: default → acceptEdits → plan

Settings & security

How to control and secure Claude Code

A handful of plain-text files control Claude Code — your personal defaults, with each project layering its own on top. No need to memorize this: Claude can read, explain, and change its own configuration when you ask.

~/.claude/settings.jsonYour personal defaultsYou, in every project
.claude/settings.jsonThe project's settings, checked into gitEveryone on the project
.claude/settings.local.jsonPersonal overrides for one project (kept out of git automatically)Just you, this project
CLAUDE.mdStanding instructions — context Claude reads, not rules it enforcesAnyone working here
.mcp.jsonShared connections to external tools (MCP servers)Everyone on the project

On conflict: managed policy → command line → local → project → user. Permission rules instead merge across files — and a deny anywhere always wins.

Permissions: every action is checked first

Every action is checked against your rules: deny (blocked, always) → ask (pauses for your OK) → allow (runs without asking). No rule matched? Safe reads just run; anything risky prompts you. These are guardrails enforced by the app itself — not suggestions.

Read(./.env)denyClaude can never read your secrets file
Bash(npm run test:*)allowAny test command runs without asking
Bash(git push:*)askAlways pauses before pushing code anywhere
WebFetch(domain:github.com)allowFetching pages from github.com is pre-approved
mcp__slackallowTrust every tool your Slack connector exposes

Paths are gitignore-style: ~/… = home, /src/… = project root, //… = absolute. :* makes a Bash rule match a prefix.

Permission modes — the big lever

defaultAsks before anything risky; safe reads just run
planRead-only — researches and proposes, touches nothing
acceptEditsFile edits auto-approved; commands still ask
autoMost actions run, with safety checks in the background
bypassPermissionsNever asks; disposable sandboxes only

Cycle modes with Shift+Tab in the terminal (mode picker in the desktop app); set where sessions start with defaultMode.

A real settings.json, annotated

{
  "permissions": {
    "defaultMode": "acceptEdits",
    "allow": [ "Bash(npm run test:*)" ],
    "ask":   [ "Bash(git push:*)" ],
    "deny":  [ "Read(./.env)", "Read(./secrets/**)" ]
  }
}
  • defaultMode — the mode every session starts in
  • deny — beats every allow, in any file
  • Changes apply the moment you save — no restart needed

Three ways to change settings

In the session

/permissions shows and edits your rules; /config is a menu for everything else; Shift+Tab switches modes.

Edit the file

It's plain JSON in your project folder — open it in any text editor. Changes apply on save.

Ask Claude

easiest

“Update my settings so you can never read .env files and can run tests without asking.” You approve the edit like any other.

Keep going

Resources

Official docs

Worth exploring

Foundational tools

Needed for many projects — and Claude can install most of this for you; just ask.

Free courses

  • anthropic.com/learnAnthropic's free self-paced courses with certificates; start with Claude Code 101

Keep in touch

Up for 1:1 Claude Code practice, or a chat about AI operations? I'd love to hear what you build.