You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Commit 58544b8
Browse filesBrowse the repository at this point in the historyBrowse files
Copy file name to clipboardExpand all lines: docs/src/content/docs/get-started/installation.md
+9-1Lines changed: 9 additions & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -108,7 +108,15 @@ Want the same agents across all your projects?
108
108
squad init --global
109
109
```
110
110
111
-
This creates `~/.squad/` — a personal team root that any project can inherit from. See [Upstream Inheritance](../features/upstream-inheritance.md) for details.
111
+
This creates your personal squad directory — a personal team root that any project can inherit from. See [Upstream Inheritance](../features/upstream-inheritance.md) for details.
Copy file name to clipboardExpand all lines: docs/src/content/docs/guide/personal-squad.md
+23-15Lines changed: 23 additions & 15 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -18,7 +18,15 @@ This tutorial walks you through setup, explains what's happening behind the scen
18
18
19
19
Normally, Squad lives inside a single project — `.squad/` in your repo root. Your agents know that project. They don't know your other ones.
20
20
21
-
A personal squad flips that. Your team identity — agents, charters, skills, casting history — moves to a global directory (`~/.squad/`). Every project you work in can point to it.
21
+
A personal squad flips that. Your team identity — agents, charters, skills, casting history — moves to your personal squad directory. Every project you work in can point to it.
22
+
23
+
**Personal squad location by platform:**
24
+
25
+
| Platform | Path |
26
+
|----------|------|
27
+
| Linux |`~/.config/squad/`|
28
+
| macOS |`~/Library/Application Support/squad/`|
29
+
| Windows |`%APPDATA%\squad\`|
22
30
23
31
What that means in practice:
24
32
@@ -51,7 +59,7 @@ You'll see:
51
59
52
60
```
53
61
✅ Personal squad initialized.
54
-
~/.squad/ — your global team root
62
+
{personal squad directory} — your global team root
55
63
Agents, skills, and casting will be shared across projects.
56
64
```
57
65
@@ -65,7 +73,7 @@ squad status
65
73
66
74
```
67
75
Squad Status
68
-
Global squad: ~/.squad/
76
+
Global squad: {personal squad directory}
69
77
Agents: 0 (none cast yet — start a session to form your team)
70
78
Skills: 0
71
79
```
@@ -85,7 +93,7 @@ Squad detects your global team root and writes a pointer:
| Team identity |`.squad/` in project |`~/.squad/` (global) |
140
+
| Team identity |`.squad/` in project |Personal squad directory (global) |
133
141
| Decisions & logs |`.squad/` in project |`.squad/` in project |
134
142
| Agents shared? | No — project only | Yes — across all connected projects |
135
143
| Skills shared? | No | Yes |
136
144
137
145
In remote mode:
138
146
139
-
-**Team identity** (agents, charters, skills, casting) → loaded from `~/.squad/`
147
+
-**Team identity** (agents, charters, skills, casting) → loaded from your personal squad directory
140
148
-**Project-local state** (decisions, logs, orchestration-log) → stays in this project's `.squad/`
141
149
142
150
The resolution system walks up directories looking for `.squad/`. When it finds one with a `teamRoot` in `config.json`, it switches to remote mode — pulling team identity from the external path while keeping project state local.
@@ -251,20 +259,20 @@ Set a directive once:
251
259
📌 Captured. Linting required before task completion.
252
260
```
253
261
254
-
That directive is now in `~/.squad/` — every project, every session. Your agents enforce it everywhere. You set the standard once and it sticks.
262
+
That directive is now in your personal squad directory — every project, every session. Your agents enforce it everywhere. You set the standard once and it sticks.
255
263
256
264
Over time, your personal squad becomes an opinionated workflow engine. Not because you configured it that way — because you worked with it and it learned.
257
265
258
266
---
259
267
260
268
## 8. Use Case: Skills That Grow Everywhere
261
269
262
-
Skills accumulate in `~/.squad/skills/`. Every project contributes.
270
+
Skills accumulate in your personal squad directory under `skills/`. Every project contributes.
263
271
264
272
After a few weeks:
265
273
266
274
```
267
-
~/.squad/skills/
275
+
{personal squad directory}/skills/
268
276
always-use-zod.md
269
277
prefer-tailwind.md
270
278
cursor-pagination.md
@@ -292,7 +300,7 @@ What works well today:
292
300
-**Consult mode** — bring your team to projects you don't own, invisibly ([docs](../features/consult-mode.md))
293
301
294
302
What's still rough:
295
-
- No sync mechanism between machines yet — `~/.squad/` is local to your machine
303
+
- No sync mechanism between machines yet — your personal squad directory is local to your machine
296
304
- Project keys aren't used for anything yet (that `null` in config.json)
297
305
- No UI for browsing your global skills or agent histories (it's files for now)
298
306
@@ -303,10 +311,10 @@ We're building in the open. If something feels off, [open an issue](https://gith
303
311
## Tips
304
312
305
313
-**Start with one project.** Get comfortable with the personal squad on one repo before connecting others. The value compounds, but so does confusion if something's misconfigured.
306
-
-**Commit project `.squad/` but not global `~/.squad/`.** The project-local state (decisions, logs) belongs in version control. Your global identity is personal — keep it out of repos.
314
+
-**Commit project `.squad/` but not personal squad directory.** The project-local state (decisions, logs) belongs in version control. Your global identity is personal — keep it out of repos.
307
315
-**Check status anytime.**`squad status` shows your global squad directory and which projects are connected.
308
316
-**Skills are the payoff.** The more projects you work across, the more skills accumulate. After a month, your agents have a real knowledge base tailored to how *you* build software.
309
-
-**It's just files.**`~/.squad/`is a directory on your machine. You can browse it, edit it, back it up, copy it to another machine manually. No magic, no cloud, no lock-in.
317
+
-**It's just files.**Your personal squad directory is a folder on your machine. You can browse it, edit it, back it up, copy it to another machine manually. No magic, no cloud, no lock-in.
310
318
-**Global install matters.**`npm install -g @bradygaster/squad-cli` gives you the `squad` command everywhere. Without it, you'd need `npx` in each project. Global CLI + global squad = full portability.
Get path to global personal squad (`~/.squad/` on Unix, `%USERPROFILE%\.squad\` on Windows).
54
+
Get path to global personal squad. Returns platform-specific path: `~/.config/squad/` on Linux, `~/Library/Application Support/squad/` on macOS, `%APPDATA%\squad\` on Windows.
Copy file name to clipboardExpand all lines: docs/src/content/docs/reference/cli.md
+2-2Lines changed: 2 additions & 2 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -28,7 +28,7 @@ squad init
28
28
|---------|-------------|:------------------:|
29
29
|`squad`| Enter interactive shell (no args) | No |
30
30
|`squad init`| Initialize Squad in the current repo (idempotent — safe to run multiple times) | No |
31
-
|`squad init --global`| Create a personal squad at `~/.squad/`| No |
31
+
|`squad init --global`| Create a personal squad in your platform-specific directory| No |
32
32
|`squad init --mode remote <path>`| Initialize linked to a remote team root (dual-root mode) | No |
33
33
|`squad start [--tunnel] [--port N] [--command cmd]`| Start Copilot with remote phone access via PTY and WebSocket | No |
34
34
|`squad status`| Show which squad is active and why | Yes |
@@ -239,7 +239,7 @@ When Squad starts, it looks for `.squad/` in this order:
239
239
240
240
1. Current directory (`./.squad/`)
241
241
2. Parent directories (walk up to project root)
242
-
3.Home directory (`~/.squad/`)
242
+
3.Personal squad directory (platform-specific: `~/.config/squad/` on Linux, `~/Library/Application Support/squad/` on macOS, `%APPDATA%\squad\` on Windows)
Copy file name to clipboardExpand all lines: docs/src/content/docs/reference/config.md
+1-1Lines changed: 1 addition & 1 deletion
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -145,7 +145,7 @@ Squad finds `.squad/` by walking up:
145
145
146
146
1. Current directory (`./.squad/`)
147
147
2. Parent directories (up to project root)
148
-
3.Home directory (`~/.squad/`)
148
+
3.Personal squad directory (platform-specific: `~/.config/squad/` on Linux, `~/Library/Application Support/squad/` on macOS, `%APPDATA%\squad\` on Windows)
0 commit comments