# Use Cases

Runbooks are meant to solve most of the use cases that involve improving and modifying an existing codebase, but not everything is worth using Runbooks for.

### When to use Runbooks

Runbooks are great for most well defined or well scoped tasks. It is meant to absorb business context and get smarter over time. Some examples include:

* [Product backlog](/runbooks/concepts/use-cases/product-backlog.md)
* [Refactoring](/runbooks/concepts/use-cases/code-refactoring.md)
* [Bug fixes](/runbooks/concepts/use-cases/bug-fixes.md)
* [Improving build times](/runbooks/concepts/use-cases/improve-build-times.md)
* [Flaky test resolution](/runbooks/concepts/use-cases/flaky-test-resolution.md)
* [Code migration](/runbooks/concepts/use-cases/code-migrations.md)
* [Improving readability](/runbooks/concepts/use-cases/improving-readability.md)
* [Improving code coverage](/runbooks/concepts/use-cases/improving-code-coverage.md)

### When not to use Runbooks

Runbooks are not great for brainstorming ideas or working on greenfield projects. If requires a lot of back-and-forth with your agents, you might be better off using Claude code or similar coding tools in your terminal.

### Creating templates

When you use Runbooks for a specific use case that occurs often (e.g. a bug fix or a flaky test resolution), create templates. [Template](/runbooks/concepts/templates.md) can be created from any new or existing Runbook. These are great ways to share your process with the team and enhance collective development.

### Getting Started

1. **Choose a simple feature**: Start with a well-defined, isolated feature
2. **Write clear requirements**: Provide detailed specifications and examples
3. **Review and refine**: Work with Runbooks to refine the implementation plan
4. **Execute step by step**: Run the implementation in stages with review points
5. **Learn and iterate**: Use the experience to improve future automation


---

# Agent Instructions: Querying This Documentation

If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter:

```
GET https://docs.aviator.co/runbooks/concepts/use-cases.md?ask=<question>
```

The question should be specific, self-contained, and written in natural language.
The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
