Docs / Key Concepts / Skills & Tools

Skills & Tools

These are two related but different things. Understanding the difference will help you get more out of your assistant.

Tools: the atomic actions

Tools are individual actions your assistant can take. Each one does exactly one thing.

Core tools are always available in every conversation:

ToolWhat it does
file_readRead a file in the workspace
file_writeCreate or overwrite a file in the workspace
file_editEdit a file in the workspace (surgical find-and-replace)
bashRun a shell command (sandboxed to the workspace)
web_searchSearch the internet
web_fetchFetch and extract content from a URL
memory_manageSave, update, or delete facts in long-term memory
memory_recallSearch long-term memory
skill_loadActivate a skill for the current conversation
skill_executeRun a tool provided by a loaded skill
credential_storeManage credentials (prompt, store, connect OAuth)
request_system_permissionAsk you to grant a macOS system permission

Host tools can access your full machine, but require your permission:

ToolWhat it does
host_file_readRead any file on your computer
host_file_writeWrite to any file on your computer
host_file_editEdit any file on your computer
host_bashRun a shell command on your machine (unsandboxed)

Skill tools become available when their skill is loaded. For example, loading the Browser skill adds browser_navigate, browser_click, browser_type, browser_snapshot, browser_extract, and others. Loading the Gmail skill adds tools for archiving, labeling, drafting, sending, unsubscribing, and more.

There are dozens of tools in total. Your assistant picks the right ones based on what you asked for.

Permission levels

Not all tools are created equal. Each tool has an execution target and risk level that determine whether your assistant can use it freely or needs to ask first:

Execution targetExamplesApproval
Sandboxfile_read, file_write, bash, web_searchRuns automatically — confined to the workspace
Hosthost_bash, host_file_write, computer_use_*Prompts you for approval — accesses your full machine

When a tool needs approval, you'll see an explanation of what it wants to do. Your options:

  • Allow — one-time approval
  • Allow for 10 minutes — temporary grant
  • Always allow — persistent rule (saved to your trust configuration)
  • Deny — block this time

These rules accumulate over time. The more you use your assistant, the fewer prompts you'll see for actions you've already approved.

Skills: bundles of capability

A skill is a package that combines tools, instructions, and configuration into a coherent capability.

  • Tool = "I can navigate to a URL"
  • Skill = "I know how to browse the web — navigate pages, click elements, fill forms, extract content, take screenshots, and handle authentication"

Skills give your assistant context about how to use tools for a specific purpose. The Gmail skill knows email workflows. The Browser skill knows how to interact with web pages. The Phone Calls skill knows how to make and receive voice calls through Twilio.

At minimum, a skill is just a single file:

  • SKILL.md — instructions that teach the assistant when and how to use the skill

More complex skills that provide their own tools also include:

  • TOOLS.json — a manifest defining what tools the skill provides, their inputs, risk levels, and execution targets
  • tools/ — the implementation code behind each tool

Built-in skills

Your assistant ships with 28 bundled skills:

CategorySkillsWhat they enable
CommunicationGmail, Slack, Messaging, Phone Calls, SequencesRead, send, and manage messages across platforms. Make and receive voice calls. Run email drip sequences.
Research & contentBrowser, Document, Image Studio, Media Processing, TranscribeNavigate web pages, write long-form content, generate and edit images, process video/audio, transcribe recordings.
ProductivityGoogle Calendar, Contacts, Tasks, Followups, Notifications, Schedule, PlaybooksManage calendar events and availability, track contacts, manage task queues, set reminders, build trigger-action automations.
Computer useComputer Use, Screen WatchControl your Mac directly — click, type, navigate between apps. Watch your screen with OCR at intervals.
MonitoringWatcher, HeartbeatPoll external sources for changes. Run periodic background checklists to keep things healthy.
DevelopmentApp Builder, ACP, SubagentBuild interactive web apps, spawn external coding agents (Claude Code, Codex, etc.) via ACP, run autonomous background agents.
SystemSettings, Skill Management, Skills Catalog, ChatGPT ImportConfigure the assistant, create custom skills, discover and install community skills, import history from other assistants.

How skills load

Skills aren't all active at once. Your assistant sees a catalog of available skills (names, descriptions, and activation hints) in every conversation. When it determines a skill is relevant — because you asked about email, or said "browse this page" — it calls skill_load to activate it.

Once a skill is loaded:

  1. Its full instructions (SKILL.md) are injected into the conversation context
  2. Its tools become available for use
  3. It stays active for the rest of the conversation

This keeps the assistant's context focused. Only the skills that matter for the current conversation take up space.

Custom and community skills

If the built-in skills don't cover what you need, you have two options:

Build your own. Describe what you want and your assistant will scaffold a full skill — SKILL.md with instructions, TOOLS.json with tool definitions, and TypeScript executors — then save it to your skills/ directory. The skill is immediately available.

"Build me a skill that monitors my favorite subreddit for new posts about TypeScript."

Install from the community. Community skills are published on the skills.sh registry. Ask your assistant to search for a skill, and it can inspect, audit, and install it for you.

Whether custom or community-installed, skills live in your skills/ directory. You can inspect, modify, or delete any of them — a skill is just a folder with a few files.

The difference, summarized

ToolsSkills
WhatSingle atomic actionBundle of tools + instructions
Examplebrowser_navigateBrowser skill (navigate, click, type, extract, screenshot)
AvailabilityCore tools are always on; skill tools load with their skillActivated per-conversation when relevant
PermissionsGated by execution target (sandbox vs. host)Skills themselves don't need permission; their individual tools do
ExtensibleVia MCP servers or custom skill toolsBuild your own or install from skills.sh
Think of it asA single LEGO brickA LEGO set with instructions