> For the complete documentation index, see [llms.txt](https://gael-boyenval.gitbook.io/debt-collector/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://gael-boyenval.gitbook.io/debt-collector/commands-overview/the-walk-command.md).

# The Walk command

Generate an interactive graph report of your debt evolution through time and space.

```
debt-collector walk
```

{% hint style="info" %}
The walk command requires a specific configuration in order to work. See the [configuration overview](/debt-collector/configuration-overview.md) for more information.
{% endhint %}

The walk command works like compare, but instead of comparing 2 revisions, it will walk through commits in time and analyse changes in order to see the evolution of debt through time. It will generate an HTML file report under

```
node_modules/.cache/debt-collector/report.html
```

This command is designed to be run on your base branch, either triggered by a cron or when releasing new software version.

{% hint style="warning" %}
In order for the walk command to work, and depending on your configuration, make sure you have all git history on the target branch.
{% endhint %}

{% hint style="danger" %}
**DO NOT ABORT EXECUTION :**\
\*\*\*\*As Debt Collector will checkout multiple times during the execution of this command, you may find yourself in a different git state if you do not let Debt collector run the command until completion.
{% endhint %}

### Configuration overview

More information is provided in the [configuration section](/debt-collector/configuration-overview.md) of this documentation, but here are the basics :

#### The typescript signature for the walk config

```typescript
interface Config {
  ...
  walkConfig?: {
    gitCommand: string
    parser: (gitResult: string) => { hash: string; date: string; name: string }[]
    limit?: number
    report?: {
      packages?: { [name: string]: string }
    }
  }
  ...
}
```

| flag                     | argument                          | description                    |
| ------------------------ | --------------------------------- | ------------------------------ |
| **`--open-report / -o`** | `boolean`                         | open the report in the browser |
| **`--config / -c`**      | `string`: path to the config file | change the default config path |
| **`--help`**             |                                   | display help for the command   |
