| name | managing-claude-rc |
| description | Manage Claude Code Remote Control bridge (claude-rc): headless multi-instance,
instance lifecycle, version drift ensure, tombstone recovery, troubleshooting.
Trigger: 'claude-rc', 'remote control', '๋ฆฌ๋ชจํธ ์ปจํธ๋กค', 'bridge ์๋ฒ', '๋ชจ๋ฐ์ผ ์ธ์
',
'claude-rc-ensure', 'claude-rc-maint', '์ธ์
tombstone', 'bridge ์ฌ์์'.
NOT for Codex remote control (use configuring-codex / issuing-codex-pairing-code).
|
Claude Code Remote Control (claude-rc) ๊ด๋ฆฌ
Claude ๋ชจ๋ฐ์ผ ์ฑ/claude.ai์์ ์ด flake๊ฐ ๊ด๋ฆฌํ๋ ๋จธ์ ์ Claude Code ์ธ์
์
์๊ฒฉ ์กฐ์ข
ํ๋ claude remote-control ์๋ฒ ์ด์ ๊ฐ์ด๋.
๊ฐ์
claude-rc๋ headless multi-instance ๋ํผ๋ค. ์ธ์คํด์ค๋ ๋๋ ํ ๋ฆฌ ๋จ์์ด๋ฉฐ,
๊ฐ ๋๋ ํ ๋ฆฌ์์ ์๋ฒ 1๊ฐ๊ฐ ํด๋น claude.ai ํ๊ฒฝ 1๊ฐ๋ฅผ ๋ด๋นํ๋ค.
์ฌ์ฉ์/ensure
โโ claude-rc / claude-rc-maint
โโ STATE_DIR/instances.json ๋์ ๋ฑ๋ก
โโ STATE_DIR/<slug>/lock ์ค๋ณต ๊ธฐ๋ ๋ฐฉ์ง
โโ cd /path/to/project && claude remote-control --spawn <mode> ...
STATE_DIR ๊ธฐ๋ณธ๊ฐ: ~/.local/state/claude-rc
- slug:
basename(์ ๋๊ฒฝ๋ก)-sha256(์ ๋๊ฒฝ๋ก)์8์
- ์๋ฒ ํ๋ก์ธ์ค๊ฐ
<slug>/lock์ flock์ผ๋ก ์ง์ ๋ณด์ ํ๋ค. lock ์์ฌ๊ฐ ์๋ฒ ์์ฌ๋ค.
- ๋ํผ๋ฅผ ์ฐํํ ์์ CLI ๊ธฐ๋์ lock์ ๋ณด์ ํ์ง ์์ผ๋ฏ๋ก, ๋ํผ๋ ์คํ ์ค
claude remote-control ํ๋ก์ธ์ค์ cwd๊น์ง ๊ฒ์ฌํ๋ค.
์ฌ์ฉ์ ๋ํผ
| ๋ช
๋ น | ๋์ |
|---|
claude-rc / claude-rc start | ํ์ฌ git top-level ๋๋ ํ ๋ฆฌ ์ธ์คํด์ค ์์ ๋ฐ instances.json ๋ฑ๋ก |
claude-rc stop [path] | ํ์ฌ ๋๋ ์ง์ ์ ๋๊ฒฝ๋ก ์ธ์คํด์ค ์๋ฒ ์ข
๋ฃ ๋ฐ ๋ฑ๋ก ํด์ . worktree ์ธ์
์กด์ฌ ์ --force ํ์ |
claude-rc ls | ๋ฑ๋ก ์ธ์คํด์ค, ์คํ ์ฌ๋ถ, PID, ๋ฒ์ , spawn, source, ๋ก๊ทธ ๊ฒฝ๋ก ์ถ๋ ฅ |
claude-rc cleanup | git worktree ๋ฑ๋ก์ด ๋๊ธด .claude/worktrees/* ์ํด๋ง ์ญ์ . ๋ฑ๋ก๋ worktree๋ ์ฃฝ์ ์ธ์
์ ๊ฒ์ด๋ผ๋ ๋น๋์ โ wt cleanup ์ฌ์ฉ |
์ต์
:
| ์ต์
| ๊ธฐ๋ณธ | ์ค๋ช
|
|---|
--spawn worktree|same-dir | worktree | ์๊ฒฉ ์ธ์
์คํฐ ๋ฐฉ์ |
--capacity N | ๋ฏธ์ ๋ฌ | ๋์ ์ธ์
์. ๋ฏธ์ ๋ฌ ์ upstream ๊ธฐ๋ณธ๊ฐ ์ฌ์ฉ |
--permission-mode MODE | bypassPermissions | acceptEdits, bypassPermissions, default, dontAsk, plan |
--force | false | stop์์ worktree ์ธ์
tombstone ๊ฐ๋ ์ฐํ |
์ด๋ฏธ ์คํ ์ค์ธ ์ธ์คํด์ค์ ๋ค๋ฅธ ์ต์
์ผ๋ก startํ๋ฉด ์ต์
์ ๋ฐ์๋์ง ์๋๋ค.
๋ณ๊ฒฝํ๋ ค๋ฉด claude-rc stop ํ ๋ค์ ์์ํ๋ค.
์ํ ๋ ์ด์์
~/.local/state/claude-rc/
instances.json
instances.json.lock
ensure.lock
status.json
<slug>/
lock
server.log
server.log.1
instances.json schema v1:
{
"version": 1,
"instances": {
"/path/to/project": {
"spawn": "worktree",
"capacity": null,
"permissionMode": "bypassPermissions",
"registeredAt": "2026-07-08T12:00:00+09:00",
"source": "manual"
}
}
}
source=manual: claude-rc start๊ฐ ๋ฑ๋ก
source=declared: claude-rc-maint ensure๊ฐ Nix ์ ์ธ์์ ์๋
server.log: ์๋ฒ stdout/stderr. 5MB ์ด๊ณผ ์ 1์ธ๋ rotate
status.json: ๋ง์ง๋ง ensure ์คํ ๊ฒฐ๊ณผ. top-level timestamp/exitCode/action๊ณผ
์ธ์คํด์ค๋ณ {path,runningVersion,desiredVersion,action} ๋ฐฐ์ด์ ๊ธฐ๋กํ๋ค.
์๋ํ
| ํ๋ซํผ | ์๋ํ | ์ ์ธ ์์น |
|---|
| NixOS | systemd timer claude-rc-ensure 30๋ถ ์ฃผ๊ธฐ | homeserver.claudeRemoteControl.* |
| macOS | launchd agent claude-rc-ensure 30๋ถ ์ฃผ๊ธฐ | modules/darwin/programs/claude-remote-control.nix ์์ |
CLAUDE_RC_DECLARED_INSTANCES๋ JSON ๋ฐฐ์ด์ด๋ค.
[
{
"path": "/path/to/project",
"spawn": "worktree",
"capacity": null,
"permissionMode": "bypassPermissions"
}
]
ensure ํ์ ํ๋ฆ:
- ์ ์ธ ์ธ์คํด์ค๊ฐ
instances.json์ ์์ผ๋ฉด source=declared๋ก ์ถ๊ฐํ๋ค.
- ์ธ์คํด์ค ๊ฒฝ๋ก๊ฐ ์์ผ๋ฉด
path-missing์ผ๋ก ๊ธฐ๋กํ๊ณ ๋ฑ๋ก์ ์ ์งํ๋ค.
- lock์ด ๋น์ด ์์ผ๋ฉด ์๋ฒ๋ฅผ headless๋ก ์์ํ๋ค.
- ์ด์ ์์ผ๋ฉด ์คํ ์ค ๋ฐ์ด๋๋ฆฌ ๋ฒ์ ๊ณผ desired Claude launcher ๋ฒ์ ์ ๋น๊ตํ๋ค.
- drift๊ฐ ์์ผ๋ฉด
healthy.
- drift๊ฐ ์์ผ๋ฉด ์คํ ์ค ์๋ฒ argv์ effective spawn์ ์ค์ธกํ๋ค.
- effective
spawn=same-dir์ด๋ฉด ์ฆ์ ์ฌ์์ํ๋ค.
- effective
spawn=worktree ๋๋ ํ์ฑ ๋ถ๊ฐ์ด๋ฉด idle gate๋ฅผ ํต๊ณผํ ๋๋ง ์ฌ์์ํ๋ค.
registry์ spawn์ desired state์ด๋ฉฐ ๋ถํ/์ฌ๊ธฐ๋ ์ต์
์ผ๋ก๋ง ์ด๋ค. ์ฌ์์ ์์ ์ฑ์
์ด๋ฏธ ์คํ ์ค์ธ ํ๋ก์ธ์ค์ ์ค์ spawn ๋ชจ๋๊ฐ ๊ฒฐ์ ํ๋ค.
worktree idle gate:
- ์ต๊ทผ
IDLE_THRESHOLD_MINUTES ๋ด transcript๊ฐ ์์ผ๋ฉด deferred-active-sessions
--sdk-url ์ธ์
ํ๋ก์ธ์ค๋ ์๋๋ฐ worktree transcript ๋๋ ํ ๋ฆฌ ๋ช
๋ช
๋งค์น๊ฐ 0์ด๋ฉด
deferred-unknown-activity
- ๋ ๋ค ์๋๋ฉด
restarted-version-drift
transcript ๋งค์นญ์ <์ ๊ทํ๋ ์ธ์คํด์ค ๊ฒฝ๋ก>--claude-worktrees-*๋ง ๋ณธ๋ค.
์ธ์คํด์ค root transcript๋ ๋ก์ปฌ/same-dir ์ธ์
ํ๋์ผ ์ ์์ด worktree drift gate์
ํฌํจํ์ง ์๋๋ค.
ํ๊ฒฝ๊ณผ ์ธ์
์๋ช
์ฃผ๊ธฐ
์ค์ธก ๊ธฐ์ค: Claude Code v2.1.204โ2.1.205.
- ์๋ฒ 1๊ฐ = claude.ai ํ๊ฒฝ 1๊ฐ.
- ํ๊ฒฝ ํ์๋ช
์ upstream์ด ํธ์คํธ๋ช
+ ๋๋ ํ ๋ฆฌ basename์ผ๋ก ์ ํ๋ค.
- ํ๊ฒฝ ํ์ ์กฐ๊ฑด: ํ๊ฒฝ์ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก ๊ธฐ์ค์ผ๋ก ์๋ฒ์ธก์ ๋ณด์กด๋์ง๋ง, ์ฌ๊ธฐ๋์ด ๊ฐ์
ํ๊ฒฝ์ ํ์ํ๋ ๊ฒ์ ๋ณด์กด๋ ์ธ์
์ด 1๊ฐ ์ด์ ์์ ๋๋ง์ด๋ค (์ข
๋ฃ ์
"Environment preserved" ๋ฉ์์ง๋ ์ด ๊ฒฝ์ฐ์๋ง ์ถ๋ ฅ). ์ธ์
0๊ฐ์ธ ์๋ฒ์ ์ฌ๊ธฐ๋์
๋งค๋ฒ ์ ํ๊ฒฝ์ ๋ง๋ค๊ณ ์ด์ ํญ๋ชฉ์ ๋นํ์ฑ์ผ๋ก ๋ชฉ๋ก์ ๋จ๋๋ค.
- ํจ์: ์์ ์ธ์คํด์ค(
--no-create-session-in-dir)๋ ์ธ์
์ด ์๋ ๋์์ ์ฌ์์
(๋ฒ์ drift ๋ฑ)๋ง๋ค ๋ชฉ๋ก์ ๋นํ์ฑ ํญ๋ชฉ์ ๋จ๊ธด๋ค. ์ธ์
์์ค์ด ์๋ ์ ์ ๋์์ด๋ฉฐ
์คํด๋ ๋ชฉ๋ก ๋
ธ์ด์ฆ๋ฟ์ด๋ค.
- ๊ฐ์ ๋๋ ํ ๋ฆฌ์ ์๋ฒ 2๊ฐ๊ฐ ๋์์ ๋จ๋ฉด ๋ ๋ฒ์งธ๊ฐ ์ ํ๊ฒฝ์ ๋ง๋ ๋ค. ์ ๋ น(๋นํ์ฑ)
ํ๊ฒฝ์ ์ญ์ UI๊ฐ ์๊ณ ์ฃฝ์ ์งํ ์จ๋ผ์ธ์ผ๋ก ๋ณด์ผ ์ ์์ผ๋, ๋ณด์กด ์ธ์
์ ๋ฌด์ ๋ฌด๊ดํ๊ฒ
์ ์๊ฐ ๋ด ๋ชฉ๋ก์์ ์์ฐ ์๋ฉธํ๋ค (์ค์ธก: ์๋ฒ ์ข
๋ฃ 40๋ถ ์์ ์๋ ์์กด, 6์๊ฐ ์์ ์๋
์ ๋ถ ์๋ฉธ). ๋ชฉ๋ก ๋
ธ์ด์ฆ๋ ์๊ฐ ์น์ ๋๋ฏ๋ก ๋ณ๋ ์กฐ์น๊ฐ ํ์ ์๋ค.
- ์ค๋ณต ๊ธฐ๋ ๋ฐฉ์ง๋ ๋ํผ์
flock + cwd ์ค์ธก ๊ฐ๋๊ฐ ์ ์ผํ ๋ฐฉ์ด๋ค. ์ค์ธก ๊ฐ๋์
์๋ฒ ํ์ ์ cwd ์ธ์ ์คํ ๋ฐ์ด๋๋ฆฌ๊ฐ claude ๋ฐฐํฌ ๊ฒฝ๋ก(VERSIONS_DIR, ๊ธฐ๋ณธ
~/.local/share/claude/versions) ์๋์ธ์ง๋ ์๊ตฌํ๋ค โ argv ๋ฌธ์์ด๋ง ์ผ์นํ๋
๋ฌด๊ด ํ๋ก์ธ์ค์ ์คํ ๋ฐฉ์ง (#1060).
- same-dir ์คํฐ ์ธ์
์ ์๋ฒ ์ฌ์์ ํ ์๋ ์ฌ์ฐ๊ฒฐ๋๋ค. ๊ฐ์ ์ธ์
ID๊ฐ ์ฌ์คํฐ๋๊ณ
๋ํ๋ ๋ณด์กด๋๋ค. ๋จ ์คํ ์ค์ด๋ ๋ฐฑ๊ทธ๋ผ์ด๋ ์์
/๋๊ตฌ ํ๋ก์ธ์ค๋ ์ ์ค๋๋ค โ
ํ๋ก์ธ์ค๊ฐ ์๋ฒ์ ํจ๊ป ์ฃฝ๊ณ ์ฌ์คํฐ ์ธ์
์ ์์
๋ ์ง์คํธ๋ฆฌ๋ ์ด๊ธฐํ๋๋ค. ์ฑ UI๋
์ฌ์์ ์งํ stale "์คํ ์ค" ํ์๋ฅผ ์ ์งํ๋ค๊ฐ ๋ค์ ์ํธ์์ฉ ๋ "์ค์ง๋จ"์ผ๋ก
๋๊ธฐํ๋๋ฉฐ, ์๋ฃ ์๋ฆผ์ ์ค์ง ์๋๋ค.
- worktree ์คํฐ ์ธ์
๋ง tombstone๋๋ค. ์ฌ์์ ํ ์ฌ์คํฐ๋์ง ์๊ณ ์๊ฒฉ ๋ฉ์์ง๊ฐ ๋ก์ปฌ์
๋๋ฌํ์ง ์๋ ๋ฌดํ hang ์ํ๊ฐ ๋๋ค. ์๋ฒ ์์ฒด๊ฐ ์ฃฝ์ ๊ฒฝ์ฐ์ ์ฆ์์ด ๋ค๋ฅด๋ค โ
์๋ฒ ์ฌ๋ง์ ์ฑ์ด "์๊ฒฉ ์ ์ด ์ฐ๊ฒฐ ๋๊น" ์๋ฌ ์นด๋๋ก ๊ฐ์งยทํ์ํ๋ค.
- tombstone ๋ณต๊ตฌ: ํด๋น worktree์์
claude remote-control --session-id <cse_...>๋ฅผ
์คํํ๋ฉด pending ํ๋กฌํํธ๊น์ง ์ฒ๋ฆฌ๋๋ค.
- ๋ณต๊ตฌ ํ๋ก์ธ์ค๋ cwd ๊ธฐ์ค ํ๊ฒฝ์ ํ๋ ๋ฑ๋กํ๋ค. worktree ๊ฒฝ๋ก๊ฐ ํ๊ฒฝ ์ด๋ฆ์ผ๋ก ๋ชฉ๋ก์
์ถ๊ฐ๋๋ ์ค์ผ ๋ถ์์ฉ์ด ์์ผ๋ฏ๋ก ํ์ํ ๊ฒฝ์ฐ์๋ง ์ด๋ค.
- claude.ai/๋ชจ๋ฐ์ผ ์ฑ ํ๊ฒฝ ์์ธ์ "N ์ค M" ํญ์๋ "์ธ์
์ข
๋ฃ" UI๊ฐ ์์ด capacity ์ฌ๋กฏ์
์ง์ ํด์ ํ ์ ์๋ค.
- capacity๋ ์ํํธ ๋ฆฌ๋ฐ์ด๋ค. ์๋ฒ๊ฐ ์ธ์
N๊ฐ๋ฅผ ๋ณด์กดํ ์ํ์์ ๋ ์์
--capacity๋ก
์ฌ๊ธฐ๋ํ๋ฉด ์ค๋ฒ๋ถํน(์ธ์
์ > capacity)์ด ์ฑ๋ฆฝํ๊ณ ํ๊ฒฝ ๋ชฉ๋ก์ ์ฃผํฉ์ "N๊ฐ ์ค M๊ฐ"๋ก
๊ฒฝ๊ณ ํ์๋๋ค. ๋ง์/์ด๊ณผ ์ํ์์ ์ฑ์ ์ ๋ํ๋ก ํ๋กฌํํธ๋ฅผ ๋ณด๋ด๋ฉด ์๋ฌ ์์ด ๊ธฐ์กด
ํ์ฑ ์ธ์
์ผ๋ก ์กฐ์ฉํ ๋ผ์ฐํ
๋๋ค โ ์ ์ธ์
์ด๋ผ ์๊ฐํ ํ๋กฌํํธ๊ฐ ๊ธฐ์กด ๋ํ์ ์์ด๋
ํจ์ ์ ์ฃผ์.
- ์๋ฒ๋ ๋คํธ์ํฌ ์ฝ 10๋ถ ๋จ์ ์ ์๊ธฐ ์ข
๋ฃํ๋ค. 30๋ถ ensure๊ฐ ๋ถํ์ ๋ด๋นํ๋ค.
- ์๋ฒ๊ฐ ์ ์ ์ข
๋ฃ(SIGTERM/Ctrl-C)ํ๋ฉด ์์ ์ธ์
ํ๋ก์ธ์ค๋ฅผ ํจ๊ป ์ ๋ฆฌํ๋ค. SIGKILL๋ก
์ฃฝ์ผ๋ฉด ์์์ด ๊ณ ์(ppid=1)๋ก ์์กดํ๋ค (ensure์ ๊ณ ์ ์ ๋ฆฌ๋ #1061).
๊ธฐ์กด tmux bridge์์ ๋ง์ด๊ทธ๋ ์ด์
๊ตฌ tmux ๊ธฐ๋ฐ bridge๊ฐ ๊ฐ์ ๋๋ ํ ๋ฆฌ์์ ์์ง ๋ ์์ผ๋ฉด ์ claude-rc-maint๋
unmanaged-server-present๋ก ๊ธฐ๋์ ๊ฑฐ๋ถํ๋ค. ๊ฐ์ ๋๋ ํ ๋ฆฌ์ ๋ ๋ฒ์งธ ์๋ฒ๋ฅผ ๋์ฐ๋ฉด
์ญ์ ๋ถ๊ฐ๋ฅํ ์ ๋ น ํ๊ฒฝ์ด ์๊ธฐ๋ฏ๋ก, ์ด ๊ฑฐ๋ถ๊ฐ ์ ์ ์์ ์ฅ์น๋ค.
์ ์ฐจ:
tmux kill-session -t claude-rc
claude-rc start
์ ์ธ ์ธ์คํด์ค๋ ์๋ claude-rc start ๋์ ๋ค์ ensure ์ฃผ๊ธฐ์ ์๋ ๊ธฐ๋์์ผ๋ ๋๋ค.
๊ฐ์ ๋๋ ํ ๋ฆฌ ๊ฒฝ๋ก์ด๋ฏ๋ก ๊ธฐ์กด claude.ai ํ๊ฒฝ์ ํ์ํ๋ค.
ํธ๋ฌ๋ธ์ํ
๊ณตํต:
claude-rc ls
cat ~/.local/state/claude-rc/status.json
tail -50 ~/.local/state/claude-rc/<slug>/server.log
pgrep -fl 'claude remote-control'
NixOS:
journalctl -u claude-rc-ensure --since -2d
systemctl list-timers claude-rc-ensure
systemctl start claude-rc-ensure
macOS:
launchctl list | grep claude-rc
launchctl print "gui/$(id -u)/org.nix-community.home.claude-rc-ensure"
tail -50 ~/Library/Logs/claude-rc-ensure.log
launchctl kickstart "gui/$(id -u)/org.nix-community.home.claude-rc-ensure"
| status action | ์๋ฏธ / ์กฐ์น |
|---|
no-instances | ๋ฑ๋ก๋ ์ธ์คํด์ค ์์. claude-rc start ๋๋ ์ ์ธ env ํ์ธ |
path-missing | ๋ฑ๋ก ๊ฒฝ๋ก๊ฐ ์์. ๋ฑ๋ก์ ์ ์ง๋๋ฉฐ ์๋ฆผ ๋์ ์๋. stale ๋ฑ๋ก์ด๋ฉด claude-rc stop /path/to/project๋ก ์ ๊ฑฐ |
started | ์ฃฝ์ ์ธ์คํด์ค๋ฅผ ์์ํจ |
healthy | ์คํ ๋ฒ์ ๊ณผ desired ๋ฒ์ ์ผ์น |
restarted-version-drift | version drift ์ฌ์์ ์๋ฃ |
deferred-active-sessions | worktree ์ธ์
ํ๋ ๊ฐ์ง๋ก ์ฌ์์ ์ ์ |
deferred-unknown-activity | ์ธ์
ํ๋ก์ธ์ค๋ ์์ผ๋ transcript ๋ช
๋ช
๋งค์น๊ฐ ์์ด ๋ณด์ ์ ์ |
start-failed / restart-failed | <slug>/server.log ํ์ธ |
unmanaged-server-present | ๊ฐ์ cwd์ unmanaged ์๋ฒ ๊ฐ์ง. legacy tmux bridge ์์กด ํฌํจ. ๊ธฐ์กด ์๋ฒ ์ข
๋ฃ ํ claude-rc start ๋๋ ๋ค์ ensure |
no-server-process | lock์ ์กํ์ง๋ง cwd๊ฐ ๊ฐ์ ์๋ฒ PID๋ฅผ ๋ชป ์ฐพ์. stale lock ๋๋ ํ๋ก์ธ์ค shape ํ์ธ |
running-version-unresolvable | ์คํ ๋ฐ์ด๋๋ฆฌ ๊ฒฝ๋ก ์กฐํ ์คํจ. lsof//proc ์ ๊ทผ ํ์ธ |
declared-instances-invalid | CLAUDE_RC_DECLARED_INSTANCES JSON/๊ฒฝ๋ก/spawn/capacity ์ค๋ฅ |
lock-acquire-timeout | ensure ์ค๋ณต ์คํ ๋๋ lock fd ๋์ ์์ฌ |
์ฆ์๋ณ ์กฐ์น:
| ์ฆ์ | ์กฐ์น |
|---|
claude-rc start๊ฐ "์ด๋ฏธ ์คํ ์ค" ์ถ๋ ฅ | ์ ์ ๋ฉฑ๋ฑ. ์ต์
๋ณ๊ฒฝ์ claude-rc stop ํ ์ฌ์์ |
| "same-dir claude remote-control process already exists" | ๋ํผ ์ฐํ ๊ธฐ๋ ๊ฐ์ง. ๊ธฐ์กด ์์ ์๋ฒ ์ข
๋ฃ ํ ๋ํผ๋ก ์์ |
| worktree ์ธ์
์ด ์๋ต ์์ | tombstone ๊ฐ๋ฅ์ฑ. ํด๋น worktree์์ claude remote-control --session-id <cse_...> |
| capacity ๋ถ์กฑ | claude.ai/๋ชจ๋ฐ์ผ ์ฑ ํ๊ฒฝ ์์ธ์ "์ธ์
์ข
๋ฃ" UI๋ก ์ฌ๋กฏ ํด์ |
| ์๋ฒ๊ฐ ์ฃผ๊ธฐ์ ์ผ๋ก ์ฌ๋ผ์ง | ๋คํธ์ํฌ ๋จ์ ์๊ธฐ ์ข
๋ฃ ๊ฐ๋ฅ. ๋ค์ ensure ์ฃผ๊ธฐ์ server.log ํ์ธ |
| ์ฃฝ์ bridge ์ธ์
์ worktree/๋ธ๋์น ์์กด | claude-rc cleanup์ git ๋ฑ๋ก๋ worktree๋ฅผ ์ง์ฐ์ง ์๋๋ค. wt ls๋ก ์ด๋ฆยทdirty/unpushed ํ์ธ ํ wt cleanup <name> [--yes]๋ก ์ ๋ฆฌ |
๊ด๋ จ ํ์ผ
- ๋ํผ:
modules/nixos/scripts/claude-rc.sh
- ๋ํผ ํจํค์ง:
modules/nixos/lib/claude-rc-package.nix
- maint ์์ง:
modules/nixos/programs/claude-remote-control/files/claude-rc-maint.sh
- maint ํจํค์ง:
modules/nixos/lib/claude-rc-maint-package.nix
- NixOS systemd ๋ฐฐ์ :
modules/nixos/programs/claude-remote-control.nix
- macOS launchd ๋ฐฐ์ :
modules/darwin/programs/claude-remote-control.nix
- NixOS ์ต์
:
modules/nixos/options/homeserver.nix
- NixOS Home Manager ๋ํผ ๋งํฌ:
modules/shared/programs/shell/nixos.nix
- ํ
์คํธ:
tests/suites/claude-remote-control.sh