Bug
`/setup-gbrain` Step 7 ("Offer gstack-brain-sync + wire it into gbrain") writes:
```bash
~/.claude/skills/gstack/bin/gstack-config set gbrain_sync_mode artifacts-only
```
But `~/.claude/skills/gstack/bin/gstack-brain-sync` reads a different config key — `artifacts_sync_mode` (lines 73, 239, 337). The mismatch means:
- User goes through `/setup-gbrain`, picks "yes, artifacts-only" at the federation prompt
- gstack-config stores `gbrain_sync_mode=artifacts-only` ✅
- `gstack-brain-sync` checks `artifacts_sync_mode` → not set → returns `off`
- `--once` and preamble auto-syncs silently no-op
- `--status` shows `mode: off`
- ~/.gstack/ never gets pushed to the federated GitHub repo
- Multi-Mac users never see each other's plans/retros/learnings
The federation prompt is acknowledged successfully and gives no error, but the underlying mechanism is dormant.
Repro
```bash
/setup-gbrain # accept federation prompt with "yes, artifacts-only"
~/.claude/skills/gstack/bin/gstack-config get gbrain_sync_mode
→ artifacts-only
~/.claude/skills/gstack/bin/gstack-brain-sync --status
→ {"queue_depth":0,"last_push":"never","mode":"off"}
~/.claude/skills/gstack/bin/gstack-brain-sync --once
silently does nothing — no commit, no push
git -C ~/.gstack log --oneline
→ only the initial gstack-brain-init commit, no sync commits
```
Then:
```bash
~/.claude/skills/gstack/bin/gstack-config set artifacts_sync_mode artifacts-only
~/.claude/skills/gstack/bin/gstack-brain-sync --once
now pushes N file(s) successfully
```
Verified on
- gstack v1.31.1.0 (current upstream HEAD as of 2026-05-11)
- gbrain v0.32.0
- macOS, PGLite engine, single-Mac install with federated GitHub repo target
Suggested fix
In `/setup-gbrain` Step 7, change the config-set line to `artifacts_sync_mode` (the key brain-sync actually reads). Optionally also leave `gbrain_sync_mode` for backward-compat with anything else that might check it. Or rename the read in brain-sync to match the skill's convention. Either way, the two should align.
Impact
Anyone who ran `/setup-gbrain` with the federation option enabled is currently NOT federating. They have a fully-configured ~/.gstack/.git pointing at their brain repo, an MCP-registered gbrain, and a CLAUDE.md note saying "Memory sync: artifacts-only" — but no actual data is leaving their machine. Multi-Mac federation is silently broken until they manually set the right key.
Discovered via diff between `gstack-config get gbrain_sync_mode` (returns artifacts-only) and `gstack-brain-sync --status` (returns mode:off) on a fresh setup.
Bug
`/setup-gbrain` Step 7 ("Offer gstack-brain-sync + wire it into gbrain") writes:
```bash
~/.claude/skills/gstack/bin/gstack-config set gbrain_sync_mode artifacts-only
```
But `~/.claude/skills/gstack/bin/gstack-brain-sync` reads a different config key — `artifacts_sync_mode` (lines 73, 239, 337). The mismatch means:
The federation prompt is acknowledged successfully and gives no error, but the underlying mechanism is dormant.
Repro
```bash
/setup-gbrain # accept federation prompt with "yes, artifacts-only"
~/.claude/skills/gstack/bin/gstack-config get gbrain_sync_mode
→ artifacts-only
~/.claude/skills/gstack/bin/gstack-brain-sync --status
→ {"queue_depth":0,"last_push":"never","mode":"off"}
~/.claude/skills/gstack/bin/gstack-brain-sync --once
silently does nothing — no commit, no push
git -C ~/.gstack log --oneline
→ only the initial gstack-brain-init commit, no sync commits
```
Then:
```bash
~/.claude/skills/gstack/bin/gstack-config set artifacts_sync_mode artifacts-only
~/.claude/skills/gstack/bin/gstack-brain-sync --once
now pushes N file(s) successfully
```
Verified on
Suggested fix
In `/setup-gbrain` Step 7, change the config-set line to `artifacts_sync_mode` (the key brain-sync actually reads). Optionally also leave `gbrain_sync_mode` for backward-compat with anything else that might check it. Or rename the read in brain-sync to match the skill's convention. Either way, the two should align.
Impact
Anyone who ran `/setup-gbrain` with the federation option enabled is currently NOT federating. They have a fully-configured ~/.gstack/.git pointing at their brain repo, an MCP-registered gbrain, and a CLAUDE.md note saying "Memory sync: artifacts-only" — but no actual data is leaving their machine. Multi-Mac federation is silently broken until they manually set the right key.
Discovered via diff between `gstack-config get gbrain_sync_mode` (returns artifacts-only) and `gstack-brain-sync --status` (returns mode:off) on a fresh setup.