> For the complete documentation index, see [llms.txt](https://hashman.gitbook.io/hashman-docs/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://hashman.gitbook.io/hashman-docs/architecture.md).

# Architecture

Hashman uses a desired state-based system instead of direct commands. Think of it as setting a destination rather than giving turn-by-turn directions.

* **Desired state operations**
  * You set the target state (what you want)
  * System continuously converges toward desired state
  * No need to manually sequence commands
  * System fixes itself when issues occur

### Control loop architecture

<figure><img src="/files/TZrIfOg90raI1ltz5M9J" alt=""><figcaption><p>Hashman's control loop</p></figcaption></figure>

### Key benefits

1. **Reliability**
   * System always trends toward desired state
   * Self-correcting on failures
   * Handles network issues and hiccups
   * Automatic recovery from ASIC errors
2. **Simplicity**
   * No complex command chaining
   * See what's happening
   * Quick problem diagnosis
   * Fewer human operator errors
3. **Scalability**

   * Scales with fleet exansion
   * Consistent behavior across fleet
   * Works anywhere <br>

   Unlike traditional tools that need step-by-step instructions, Hashman automatically figures out how to reach your desired state and optimizes towards it.
