---
title: "Glossary"
description: "Definitions of the terms these docs use, such as tool, preset, approval and step, each with one meaning."
canonical_url: "https://github-tools.com/reference/glossary"
---
# Glossary

> Definitions of the terms these docs use, such as tool, preset, approval and step, each with one meaning.

This glossary defines the terms the GitHub tools docs use. Every page uses them with the meaning below.

### Tool

A tool is one GitHub operation the model can call, such as `listIssues`. It is an AI SDK `Tool` with a Zod input schema. See [Tools](https://github-tools.com/tools).

### Read tool

A read tool is a tool that doesn't change anything on GitHub. It never asks for approval.

### Write tool

A write tool is a tool that changes something on GitHub. 48 of the 97 tools are write tools, and they ask for approval by default.

### Context tool

A context tool is a read tool that gathers what one task needs in a single call, such as `getPullRequestContext`. See [Context](https://github-tools.com/context#context-tools).

### Preset

A preset is a named list of tools for one job, such as `code-review`, with a matching system prompt. See [Presets](https://github-tools.com/presets).

### Core read tools

The core read tools are the five reads every preset includes: `getRepository`, `getFileContent`, `getRepositoryTree`, `searchCode` and `listCommits`.

### Approval

Approval is the pause before a write tool runs, until someone answers yes or no. See [Approval](https://github-tools.com/approval).

### Approval request

An approval request is what the agent returns instead of running a write tool: the tool name, its input, and an `approvalId` to answer.

### Decision model

The decision model is the fast model behind every `'auto'` option. It is Jev by default.

### `'auto'`

`'auto'` hands a choice to the decision model: `requireApproval: 'auto'` approves routine writes, and `preset: 'auto'` picks the tools.

### `callGithubTool`

`callGithubTool` is the tool an agent with `preset: 'auto'` uses to reach a GitHub tool outside its selection.

### Working context

Working context is the default `owner`, `repo`, pull request or issue number for a tool set. See [Context](https://github-tools.com/context).

### Override

An override is a per-tool change to the description, title or `needsApproval`, without changing what the tool does. See [Tools](https://github-tools.com/tools#overrides).

### Paged list

A paged list is a list result with `items`, `hasMore`, `page`, `perPage` and `nextPage`.

### Connector

A connector is a Vercel Connect connection to a GitHub App, which mints short-lived tokens for your deployment. See [Auth](https://github-tools.com/auth#vercel-connect).

### Installation token

An installation token is a token that acts as the GitHub App. A connector mints one by default.

### User token

A user token is a token that acts as one GitHub user who authorized the app. A connector mints one when you pass a `subject`.

### Durable agent

A durable agent is an agent whose model calls and tool calls run as workflow steps, so it resumes after a crash. See [Vercel Workflow](https://github-tools.com/integrations/workflow).

### Step

A step is one retryable unit of a workflow. Every tool call runs in its own step.

### eve extension

The eve extension is `@github-tools/eve-extension`, which mounts the tools in an eve agent from one file. See [eve](https://github-tools.com/integrations/eve).


## Sitemap

See the full [sitemap](https://github-tools.com/sitemap.md) for all pages.
