> ## Documentation Index
> Fetch the complete documentation index at: https://codegeninc-codegen-bot-add-tools-documentation.mintlify.site/llms.txt
> Use this file to discover all available pages before exploring further.

# Available Tools

Codegen provides a comprehensive set of tools that enable agents to perform a wide range of tasks across different platforms and services. These tools are organized by category and can be used in various contexts, including Slack interactions, GitHub integrations, and Linear workflows.

## Sandbox Interaction Tools

| Tool                  | Description                                             |
| --------------------- | ------------------------------------------------------- |
| `ripgrep_search`      | Search the codebase using regex pattern matching        |
| `set_active_codebase` | Selects a codebase to be "active" for operations        |
| `file_write`          | Create new files or completely overwrite existing files |
| `relace_edit`         | Make targeted edits to existing files                   |
| `run_command`         | Run a command in a sandboxed environment                |

## Web Search & Browsing

| Tool                | Description                                                 |
| ------------------- | ----------------------------------------------------------- |
| `exa_web_search`    | Search the web and get content snippets from search results |
| `exa_web_view_page` | View the content of a specific webpage                      |

## GitHub

| Tool                         | Description                                                          |
| ---------------------------- | -------------------------------------------------------------------- |
| `view_all_repos`             | View all repositories in the organization                            |
| `view_repo_history`          | View the recent commit history for the codebase                      |
| `view_commit`                | View the details of a commit                                         |
| `search_all_repos`           | Search for code across all repositories in the organization          |
| `get_repo_default_branch`    | Get the name of the default branch for the repository                |
| `create_pr`                  | Create a PR for the current branch                                   |
| `view_pr`                    | View the diff and associated context for a pull request              |
| `list_pr_checks`             | List the check suites for a PR                                       |
| `view_workflow_run`          | View a workflow run                                                  |
| `github_assign_pr_reviewers` | Assign a reviewer to a GitHub PR                                     |
| `edit_pr_meta`               | Edit a PR's title and/or body and/or state                           |
| `create_pr_comment`          | Create a general comment on a pull request                           |
| `create_pr_review_comment`   | Create an inline review comment on a specific line in a pull request |
| `github_create_issue`        | Create a new GitHub issue in the repository                          |
| `view_issue`                 | View the details of a GitHub issue                                   |
| `create_issue_comment`       | Create a general comment on an issue                                 |
| `search_issues`              | Search for GitHub issues/PRs using a query string                    |

## Linear

| Tool                               | Description                                               |
| ---------------------------------- | --------------------------------------------------------- |
| `linear_create_issue`              | Create a new Linear issue                                 |
| `linear_get_issue`                 | Get details of a Linear issue by its ID                   |
| `linear_update_issue`              | Update an existing Linear issue                           |
| `linear_comment_on_issue`          | Add a comment to a Linear issue                           |
| `linear_get_issue_comments`        | Get all comments on a Linear issue                        |
| `linear_search_issues`             | Search for Linear issues with flexible filtering options  |
| `linear_assign_issue_to_cycle`     | Assign a Linear issue to a cycle                          |
| `linear_get_teams`                 | Get all Linear teams the authenticated user has access to |
| `linear_search_teams`              | Search for Linear teams using a search string             |
| `linear_search_projects`           | Search for Linear projects using a search string          |
| `linear_get_assignees`             | Get all users who can be assigned to issues in a team     |
| `linear_search_users`              | Search for Linear users using a search string             |
| `linear_get_issue_states`          | Get all states for issues in a team                       |
| `linear_get_issue_priority_values` | Get all issue priority values                             |
| `linear_get_issue_labels`          | Get all labels for issues in a team                       |
| `linear_get_active_cycle`          | Get the active cycle for a Linear team                    |
| `linear_get_cycles`                | Get all cycles for a Linear team                          |
| `linear_get_cycle_issues`          | Get all issues in a Linear cycle                          |

## User Information

| Tool          | Description                                                 |
| ------------- | ----------------------------------------------------------- |
| `who_is_user` | Returns information about the user you are interacting with |

## Communication

| Tool           | Description              |
| -------------- | ------------------------ |
| `send_message` | Send a message via Slack |

## Tool Availability by Organization

Note that tool availability may vary by organization settings. Some organizations may have certain tools disabled, such as SQL database access or PR creation capabilities.
