# Gist

GitHub Gist is a service provided by GitHub that allows users to share code snippets, notes, and other text-based content. It supports both public and private gists, enabling easy sharing and collaboration.

- **Category:** developer tools
- **Auth:** API_KEY
- **Composio Managed App Available?** N/A
- **Tools:** 20
- **Triggers:** 0
- **Slug:** `GIST`
- **Version:** 20260407_00

## Tools

### Check Gist Star

**Slug:** `GIST_CHECK_GIST_STAR`

Check if the authenticated user has starred a specific gist. Returns True if the gist is starred, False if not starred or if the gist doesn't exist. This is a read-only, idempotent operation that requires authentication but no special permissions.

### Create Gist

**Slug:** `GIST_CREATE_GIST`

Tool to create a new gist with one or more files. Use when you need to create a code snippet or text file to share. Note: Do not name your files 'gistfile' with a numerical suffix.

### Create Gist Comment

**Slug:** `GIST_CREATE_GIST_COMMENT`

Tool to create a comment on a gist. Use when you need to add a comment to an existing gist.

### Delete Gist

**Slug:** `GIST_DELETE_GIST`

Tool to delete a gist. Use when you have a gist_id and want to permanently remove that gist. Example prompt: "Delete gist 'aa5a315d61ae9438b18d'".

### Delete Gist Comment

**Slug:** `GIST_DELETE_GIST_COMMENT`

Tool to delete a comment on a gist. Use when you have both the gist_id and comment_id and want to remove that comment. Example prompt: "Delete comment 42 from gist 'aa5a315d61ae9438b18d'".

### Fork Gist

**Slug:** `GIST_FORK_GIST`

Tool to fork a gist. Use when you need to create a copy of an existing gist under your own account.

### Get Gist

**Slug:** `GIST_GET_GIST`

Tool to retrieve a specific gist by its ID. Use when you have a gist_id and need complete gist details.

### Get Gist Comment

**Slug:** `GIST_GET_GIST_COMMENT`

Tool to get a specific comment on a gist. Use when you need to retrieve details of a particular comment given gist_id and comment_id.

### Get Gist Revision

**Slug:** `GIST_GET_GIST_REVISION`

Tool to retrieve a specific gist revision. Use when you need details of a past state for an existing gist by commit SHA.

### List Gist Comments

**Slug:** `GIST_LIST_GIST_COMMENTS`

Tool to list comments on a gist. Use after confirming the gist_id to retrieve comments for a specific gist. Example: 'List comments for gist abc123'.

### List Gist Commits

**Slug:** `GIST_LIST_GIST_COMMITS`

Tool to list the commit history of a gist. Use after you have the gist ID to review its revisions.

### List Gist Forks

**Slug:** `GIST_LIST_GIST_FORKS`

Tool to list forks of a gist. Use after obtaining a gist_id to retrieve all forks for the gist.

### List Gists

**Slug:** `GIST_LIST_GISTS`

Tool to list the authenticated user's gists or all public gists if called anonymously. Use after setting a valid GitHub token in headers.

### List Public Gists

**Slug:** `GIST_LIST_PUBLIC_GISTS`

Tool to list public gists sorted by most recently updated. Use when you need to discover recent public gists. Note: with pagination, you can fetch up to 3000 gists.

### List Starred Gists

**Slug:** `GIST_LIST_STARRED_GISTS`

Tool to list the authenticated user's starred gists. Use when you need to retrieve all gists the user has starred.

### List User Gists

**Slug:** `GIST_LIST_USER_GISTS`

Tool to list public gists for a specified GitHub user. Use when you have a username and need their gists.

### Star a Gist

**Slug:** `GIST_STAR_GIST`

Star a GitHub gist. This operation is idempotent and will succeed even if the gist is already starred.

### Unstar a Gist

**Slug:** `GIST_UNSTAR_GIST`

Unstar a GitHub gist. This operation is idempotent and will succeed even if the gist is not currently starred.

### Update Gist

**Slug:** `GIST_UPDATE_GIST`

Tool to update a gist's description and files. Use when you need to modify gist content, rename files, or delete files from a gist.

### Update Gist Comment

**Slug:** `GIST_UPDATE_GIST_COMMENT`

Tool to update a Gist comment. Updates an existing comment on a gist. You must be the author of the comment to update it.
