# Setup

Pick the path that matches the repo and machine you actually have.

1. **Fresh install** — new machine, or at least a machine that does not have the tooling yet: [`./fresh_install.md`](./fresh_install.md)
2. **Existing repo** — the repo already contains `.thoughts/config.json`, and you mostly need to bring local state into line: [`./existing_repo.md`](./existing_repo.md)
3. **New repo** — you want to add Thoughts to a repo for the first time: [`./new_repo.md`](./new_repo.md)
4. **After reboot** — the config still exists, but the mounts vanished because the machine restarted: [`./reboot.md`](./reboot.md)

If one of those paths ends with "why is this still broken," jump to [`../troubleshooting.md`](../troubleshooting.md).
