์ด๋ฏธ ์ฐ๊ณ ์๋ Grok / Claude Code / Codex CLI๋ฅผ ํ๋์ ์ฐฝ ์์ ๋ด์ผ๋ก ๋ชจ์ ์ฃผ๋ ๋งฅ ์ฑ์ด์์. ๋ชจ๋ธ API๋ฅผ ์๋ก ๋ถ์ด๋ ๋์ , CLI๋ฅผ ํค๋๋ฆฌ์ค๋ก ์คํํ๊ณ ๊ทธ ๋ต๋ณ๋ง ๋งํ์ ์ผ๋ก ๋ณด์ฌ์ค์.
์ค์น ์คํฌ๋ฆฝํธ๋ GitHub Releases์ .dmg๋ก ์ค์นํ ์ ์๊ณ , ์ค์น๋ ์ฑ์ ์ ๋ฒ์ ์ด ๋์ค๋ฉด ์ง์ ์
๋ฐ์ดํธํด์.
์์ด์ ํธ ์ธ์ ํ๋๋ฅผ ์ฌ๋ ํ๋๋ก ๋ด์. ๋ฆฌ๋ทฐ๋ Claude, ๊ตฌํ์ Grok, ๋๋จธ์ง๋ Codex์ฒ๋ผ ์ ๋ฌธ๊ฐ๋ฅผ ๋ง๋ค์ด ๋๊ณ , ํ์ฌ์ฒ๋ผ ํ ์ฐฝ์์ ํ์ ํ๊ฒ ํ๋ ํ๋ก๊ทธ๋จ์ด์์. ์ฐฝ์ ์ฌ๋ฌ ๊ฐ ๋์ ๋๊ณ ํ ์ชฝ ๊ฒฐ๊ณผ๋ฅผ ๋ค๋ฅธ ์ชฝ์ ๋ณต์ฌํด ๋๊ธฐ๋ ์ผ์, ๋ค๋ฅธ ์ ๋ฌธ๊ฐ์๊ฒ ์ผ์ ๋งก๊ธฐ๋ ๊ฑธ๋ก ๋ฐ๊ฟ ์ค์.
Grok์ ๋ด ๊ธฐ๋ฅ์์ ์๊ฐ์ ๋ฐ์์ด์. ์ฑ๊ฒฉ๊ณผ ์ญํ ์ ์ง์ ํ ๋ด์ ๋ง๋ค์ด ๋๊ณ ํ์ํ ๋ @๋ก ๋ถ๋ฅด๋ ๋ฐฉ์์ด ์ข์๋๋ฐ, ์ ์ ์์ด ๋ง์ด ๊ฐ๋ ์ผ์ ํฐ๋ฏธ๋์ ์์ด์ ํธ CLI๊ฐ ํ๊ณ ์์๊ฑฐ๋ ์. ๊ทธ๋์ ๊ทธ ๊ฒฝํ์ ๊ทธ๋๋ก ๋ก์ปฌ CLI ์์ ์ฌ๋ ค ๋ดค์ด์.
์ด๋ฏธ ์ฐ๋ CLI๋ฅผ ๋ฐ์คํฌํฑ ์์ ๋ชจ์ ๋๋ฉด:
- 1:1๋ก ํ ๋ด๊ณผ ๋ํํ๊ฑฐ๋
- ์ฑ๋์ ์ฌ๋ฌ ๋ด์ ๋ชจ์ ๋๊ณ
@์ด๋ฆ์ผ๋ก ๋ถ๋ฅด๊ฑฐ๋ - ๋ด์ด
crew tell๋ก ๋ค๋ฅธ ๋ด์๊ฒ ์ง์ ์ผ์ ๋๊ธฐ๊ฑฐ๋ - ์ ํด ๋ ์๊ฐ์ ๋ฃจํด์ด ์ฑ๋์ด๋ ๋ด์๊ฒ ์ผ์ ๋งก๊ธฐ๊ฒ ํ ์ ์์ด์
๋ด ํ๋๋ agents.json์ ํ ํญ๋ชฉ์ด์์. ์ด๋ฆ, ์ญํ , ์์
ํด๋, ๋ชจ๋ธ, ์๋ฐํ๋ฅผ ๊ฐ๊ณ ์๊ณ , ๋ฉ์์ง๋ฅผ ๋ฐ์ผ๋ฉด ๊ทธ ๋ด์ ์ง์ ๋ cmd๋ฅผ ์คํํด์.
๊ธฐ๋ณธ ๋ช ๋ น์ ๊ฐ CLI์ ์น์ธ ํ๋กฌํํธ๋ฅผ ๊ฑด๋๋ฐ๋๋ก ๋์ด ์์ด์. ๋ฐ์คํฌํฑ ์ฑํ ์ด TUI ๊ถํ ํ๋ฉด์์ ๋ฉ์ถ์ง ์๊ฒ ํ๊ธฐ ์ํด์์ธ๋ฐ, ์ด ํ๋๊ทธ๊ฐ ์ด๋๊น์ง ํ์ฉํ๋์ง๋ ์๊ณ ์ฐ๋ ํธ์ด ์ข์์.
| CLI | ๊ธฐ๋ณธ cmd |
|---|---|
| Grok | grok --always-approve |
| Claude | claude --dangerously-skip-permissions |
| Codex | codex --yolo |
Grok / Claude / Codex๋ ํด ๋จ์ ํค๋๋ฆฌ์ค๋ก ์คํ๋ผ์. -p / exec์ ์คํธ๋ฆฌ๋ฐ JSON๋ง ์ฝ๊ธฐ ๋๋ฌธ์ ๋ฐฐ๋๋ ์คํผ๋, ๋จ์ถํค ์๋ด๊ฐ ๋งํ์ ์ ์์ด์ง ์์์. CLI ์ธ์
id๋ ๋ด๋ณ๋ก ๋ณด๊ดํ๋๊น ๋ํ๋ฅผ ์ด์ด์ ํ ์ ์๊ณ , ๋ํ๋ฅผ ์ง์ฐ๋ฉด ์ ์ธ์
์ด ์ด๋ ค์.
cat ๊ฐ์ ์คํ
์ ์์ธ๋ก ๊ธด PTY ์ธ์
์ผ๋ก ์ ์งํด์. ํ
์คํธ๋ ๊ฐ๋จํ ์์ฝ ๋ด์ ์ฐ๋ฉด ๋ผ์.
์ฑ๋์๋ ๋ฉค๋ฒ ๋ด, ๋ธ๋ฆฌํ, ์ต๊ทผ ๋ํ๊ฐ ์์ด์. ๋ฉ์์ง๋ฅผ ๋ณด๋ด๋ฉด Crew๊ฐ ๋๊ฐ ๋ตํ ์ฐจ๋ก์ธ์ง ์ ํด ์ค์.
@์ด๋ฆ/@idโ ๊ทธ ๋ฉค๋ฒ๊ฐ. ์ฌ๋ฌ ๋ช ์ด๋ฉด ์ ํ ์์๋๋ก ํ ๋ช ์ฉ@everyone/@all/@here/@channelโ ๋ฉค๋ฒ ์์๋๋ก ํ ๋ช ์ฉ- ๋ฉ์ ์ด ์์ผ๋ฉด โ ๋ง์ง๋ง์ผ๋ก ๋ตํ ๋ฉค๋ฒ๊ฐ, ๊ทธ๋ง์ ์์ผ๋ฉด ์ฒซ ๋ฒ์งธ ๋ฉค๋ฒ๊ฐ
- ๋ด์ด ๋ฉ์ ์์ด ์ฑ๋์ ๊ธ์ ๋จ๊ธฐ๋ฉด โ ์๋ฌด๋ ๋ตํ์ง ์์์. ๋ด๋ผ๋ฆฌ ๋์์ด ์ฃผ๊ณ ๋ฐ์ง ์๋๋ก์
ํธ์ถ๋ ๋ด์๊ฒ๋ ์ฑ๋ ์ด๋ฆ, ๋ฉค๋ฒ id, ๋ธ๋ฆฌํ, ์ต๊ทผ ๋ํ ๋ช ์ค์ด ํจ๊ป ์ ๋ฌ๋ผ์.
์ฑ๋์ ๋ด๋ ๋ง๋ค ์ ์์ด์. "์ด ๋ฉค๋ฒ ๊ทธ๋๋ก ๋ค๋ฅธ ๋ฐฉ ํ๋ ํ ์ค" ์ฒ๋ผ ๋ถํํ๋ฉด, ๋ด์ด crew channel list๋ก ์ง๊ธ ๋ฐฉ ๋ฉค๋ฒ๋ฅผ ํ์ธํ๊ณ crew channel add๋ก ์ ๋ฐฉ์ ์ด์ด์. ์ ๋ฐฉ์ ๋ธ๋ฆฌํ๋ฅผ ๋ฃ์ด ๋๋ฉด ๊ทธ ๋ฐฉ์์ ๊นจ์ด๋๋ ๋ฉค๋ฒ๋ง๋ค ๊ทธ ๋ฃฐ์ ๊ฐ์ด ๋ฐ์์. ๋ฐฉ์ ๋ฉค๋ฒ๊ฐ ์๋๋ฉด ๊ธ์ ๋ชป ์ฌ๋ฆฌ๋๊น ๋ด์ด ๊ทธ ๋ฐฉ์์ ๋งํ ๊ฑฐ๋ฉด ์๊ธฐ id๋ ๋ฉค๋ฒ์ ๋ฃ์ด์ผ ํ๊ณ , ๋ด์ด ์ฌ๋ฆฐ ์ฒซ ๊ธ์ @๋ฉค๋ฒ๋ @everyone์ด ์์ด์ผ ์ผ์ด ์์๋ผ์.
์ธ์
๋ง๋ค CREW_AGENT_ID์ ํ์ฅ๋ PATH๊ฐ ๋ค์ด๊ฐ์. ์์คํ
ํ๋กฌํํธ๋ ๋๋ต ์ด๋ ๊ฒ ์๋ ค ์ค์.
์ฌ์ฉ์๊ฐ
@id๋ฅผ ์ฐ๋ฉด ๊ทธ๊ฑด ๋์๊ฒ ๋ค๋ฅธ ๋ด์ ๊ฐ๋ฆฌํค๋ ๊ฒ์ด๋ค. ์ด ์ธ์ ์ ๋จ์๋ผ. ํ์ํ๋ฉด ์ง์ crew tell <id> <text>๋ฅผ ์คํํด๋ผ. ์ด๋ฆ์ ๋ฐ๊ฟ ๋ฌ๋ผ๋ฉดcrew agent set --name "์ ์ด๋ฆ"์ ์คํํด๋ผ. ๋ฐ๋ณต ์ผ์ ๋งก๊ธฐ๋ฉดcrew routine add๋ก ๋ฃจํด์ ๋ง๋ค์ด๋ผ. ์ฌ๋์๊ฒ ๊ณ ๋ฅด๋ผ๊ณ ๋ฌผ์ผ๋ ค๋ฉดcrew ask --question "..." --option A --option B๋ฅผ ์คํํด๋ผ. ๊ฐ์ ์ ์ผ๋ผ๊ณ ํ๋ ค๋ฉด--input ์์ด๋๋ฅผ ๋ณดํ๋ผ. ๋ค๋ฅธ ๋ด์๊ฒ ๋ฌป์ง ๋ง๋ผ.
๊ทธ๋์ 1:1 ๋ํ์์ @๋ฆฌ๋ทฐ์ด ์ด ํจ์น ๋ด์ค๋ผ๊ณ ์ฐ๋ฉด, ์ง๊ธ ๋ํ ์ค์ธ ๋ด์ด ๋จผ์ ์ผ์ ํ๊ณ ํ์ํ ๋ ๋ฆฌ๋ทฐ์ด ๋ด์๊ฒ ๋๊ฒจ์. ์ด๋ฆ์ ์ฌ๋ฌ ๊ฐ ์ ์ผ๋ฉด ์ง๊ธ ๋ด์ด ๋ต์ ๋๋ธ ๋ค์, ์ ํ ์์๋๋ก ํ ๋ช
์ฉ ๋ตํด์. ๋ด ์ฌ์ด์ ๋ฆด๋ ์ด๋ ์ฌ์ฉ์ ๋ฉ์์ง ํ๋๋น ์ต๋ 4ํ์ด์์. ์ด๋ฆ ๋ณ๊ฒฝ๊ณผ ๋ฃจํด ๋ฑ๋ก์ ์ฑํ
์์ ์ํค๋ฉด ๋ด์ด ๊ฐ์ ์์ผ๋ก crew๋ฅผ ์คํํด์. ์ฌ๋์๊ฒ A / B / C๋ฅผ ๊ณ ๋ฅด๋ผ๊ณ ๋ฌป๊ฑฐ๋ ๊ฐ์ ์ ์ผ๋ผ๊ณ ํ ๋๋ crew ask๋ก ๊ทธ ๋ด์ ์ฑํ
์ ์นด๋๊ฐ ๋ ์.
๋ํ ๊ธฐ๋ก์ ์ง์ฐ๋ฉด ์์นด์ด๋ธ๋ก ์ฎ๊ฒจ๊ฐ์ง๋ง, $CREW_HOME/memory/<id>.md๋ ๊ทธ๋๋ก ๋จ์์. ๋ค์ ํด์ Grok์ --rules๋ก, Claude๋ --append-system-prompt๋ก, Codex๋ -c developer_instructions=๋ก ๋ค์ ๋ฃ์ด ์ค์. ๋ด์ ๋ณต์ ํ๋ฉด ๋ฉ๋ชจ๋ฆฌ๋ ํจ๊ป ๋ณต์ฌ๋๊ณ , ๋ด์ ์ญ์ ํ๋ฉด ๋ฉ๋ชจ๋ฆฌ ํ์ผ๋ ๊ฐ์ด ์ง์์ ธ์.
์ฑํ
- ๋ดยท์ฑ๋ ์ฌ์ด๋๋ฐ, ๊ทธ๋ฃน, ๋๋๊ทธ ์ค ๋๋กญ, ๊ฒ์ (
โK) - ์คํธ๋ฆฌ๋ฐ ๋งํ์ , ์ฐ์ ๋ต๋ณ ๋ถ๋ฆฌ, ๋งํฌ๋ค์ด, ๋ก์ปฌ ์ด๋ฏธ์งยทํ์ผ ๊ฒฝ๋ก
@๋ฉ์ ์นฉ, ํ์ผ ์ฒจ๋ถ,/์คํฌ๋ฌธ๊ตฌ ์ฝ์- ๋ด์ด ์์ ์ค์ผ ๋ ๋ณด๋ธ ๋ฉ์์ง๋ ์์๋๋ก ๋๊ธฐํด์. ๋ด๋น ์ต๋ 32๊ฐ
- ์ค์ง (
โ.๋๋stop/์ค์ง/๋ฉ์ถฐ). ํ์ธ์ด ํ์ํ ๋ ํ ๋ฒ ํ์ฉ / ๊ฑฐ๋ถ - ๋ด์ด ์ฌ๋์๊ฒ ๊ณ ๋ฅด๊ฑฐ๋ ๊ฐ์ ์ ์ผ๋ผ๊ณ ๋ฌผ์ผ๋ฉด (
crew ask) ๊ทธ ์ฑํ ์ ์นด๋๊ฐ ๋ ์. ๊ณ ๋ฅธ ๋ต์ด๋ ์ ์ ๊ฐ์ด ๋ด์๊ฒ ๋์์์. ๋ค๋ฅธ ๋ด์๊ฒ ๋ฌป์ง ์์์ - ๋๊ตฌ ํธ์ถ์ ์ ํ ์นด๋๋ก ๋ณด์ฌ ์ฃผ๊ณ , ๊ธด ํธ๋์คํ๋ ์ ์ ์ ์์ด์
- ์ฝ์ง ์์ ๋ํ ํ์, Dock ๋ฐฐ์ง, ์์ ์๋ฃยท์ฐจ๋จยท๋ฃจํด ์คํจ ์๋ฆผ
๋ด
- Grok / Claude / Codex ์ค์์ ์ ํ. ๋ชจ๋ธยท์๊ฐ(effort)ยท์ญํ ยท์์ ํด๋ ์ค์
- Grok Bot ์คํ์ผ์ ๋ํ ์๋ฐํ (์, ๋ฌผ๋ฐฉ์ธ, ๋ฅ๊ทผ ์ฌ๊ฐํ, ์ก๊ฐํ, ์ผ๊ฐํ, ๊ตฌ๋ฆ, ์์ฝ, ๋ค์ด์๋ชฌ๋, ์ค๊ฐํ, ๋ณ, ํํธ) + ์์. ์ฌ์ง์ผ๋ก ๋ฐ๊ฟ ์๋ ์์ด์
- ์์ ์ค์๋ ๊ถค๋ ์ ๋๋ฉ์ด์ , ํ์ธ์ ๊ธฐ๋ค๋ฆด ๋ ํ์ ๋ง
- ๋ณต์ , ๋ํ ์ง์ฐ๊ธฐ (๋ฃจํด๋ ํจ๊ป ์ง์ธ์ง ์ ํ), ์ญ์
์ฑ๋
- ๋ฉค๋ฒยท์ด๋ฆยท๋ธ๋ฆฌํ ์ค์
- ์ฑ๋ ์ ์ฉ ๋ฃจํด. ์ฃผ์๋
#์ฑ๋์ด๋ฆ - ์ฑ๋์์ ์์ ์ค์ธ ๋ฉค๋ฒ ํ์ธ. ์๋ฆผ์ ๋๋ฅด๋ฉด ๊ทธ ์ฑ๋๋ก ์ด๋ํด์
๋ฃจํด
- 5ํ๋ cron, ๋๋
ํ์ผ 8์์ ๋ธ๋ฆฌํ๊ฐ์ ํ๊ธ/์์ด ๋ฌธ์ฅ - ๋งค์ผ / ํ์ผ / ๋งค์ฃผ / ๋งค์ ํผ์ปค, ์ง๊ธ ์คํ, ์ผ์์ ์ง, ์ต๊ทผ ์คํ ๊ธฐ๋ก
- ์คํจํ ์คํ๋ ๊ทธ ๋ถ(minute)์ ์ฌ๋กฏ์ ์ด ๊ฒ์ผ๋ก ์ณ์. ๊ฐ์ ๋ถ์ ๋ค์ ์คํ๋์ง ์๋๋ก์
์คํฌ
- ์ค์ ์์ ์ด๋ฆ๊ณผ ๋ณธ๋ฌธ์ ๋งํฌ๋ค์ด์ผ๋ก ์ ์ฅ (
$CREW_HOME/skills/<์ด๋ฆ>.md) - ์
๋ ฅ์ฐฝ์
/์ด๋ฆ์ ์น๋ฉด ๋ณธ๋ฌธ์ด ๋ค์ด๊ฐ์
์ฑ
- ํ๊ตญ์ด / English
- ๋คํฌ / ๋ผ์ดํธ / ์์คํ (๋งฅ ์ธ๊ด ์ค์ )
- ๋จ์ถํค ์ค๋ฒ๋ ์ด (
โ/, ๋๋ ์ ๋ ฅ์ฐฝ ๋ฐ์์?) - macOS ์๋ ์ ๋ฐ์ดํธ โ ์ ๋ฒ์ ์ ์๋ ค ์ฃผ๊ณ , ์ ์ฉ ์์ ์ ์ค์ ์์ ๊ณ ๋ฅผ ์ ์์ด์
| ํญ๋ชฉ | ๋ด์ฉ |
|---|---|
| OS | macOS (Unix ์์ผ, ~/Library/Application Support, ํธ๋ํฝ ๋ผ์ดํธ ํ์ดํ๋ฐ) |
| ์์ด์ ํธ CLI | grok, claude, codex ์ค ์ธ ๊ฒ๋ง. Crew๋ ๋ชจ๋ธ์ ๋ด์ฅํ์ง ์์์ |
์์ด์ ํธ CLI ๋ฐ์ด๋๋ฆฌ๋ ์๋ ๊ฒฝ๋ก์์๋ ์ฐพ์์.
~/.grok/bin, ~/.local/bin, ~/.cargo/bin, /opt/homebrew/bin, /usr/local/bin
ํ ์ค๋ก ์ค์นํ ์ ์์ด์. ์ต์ ๋ฆด๋ฆฌ์ค DMG๋ฅผ ๋ฐ์ /Applications/Crew.app์ ๋ณต์ฌํ๊ณ quarantine ์์ฑ์ ์ ๊ฑฐํด์.
curl -fsSL https://raw.githubusercontent.com/im-ian/crew/main/scripts/install-macos.sh | bash~/.local/bin/crew์ CLI ์ฌ๋ณผ๋ฆญ ๋งํฌ๋ ๋ง๋ค์ด ์ค์. ์์น๋ฅผ ๋ฐ๊พธ๋ ค๋ฉด CREW_INSTALL_DIR๋ฅผ ์ง์ :
curl -fsSL https://raw.githubusercontent.com/im-ian/crew/main/scripts/install-macos.sh \
| CREW_INSTALL_DIR="$HOME/Applications" bashReleases์์ Crew_*_aarch64.dmg(Apple Silicon) ๋๋ Crew_*_x64.dmg(Intel)๋ฅผ ๋ฐ์ Applications๋ก ๋ณต์ฌํ ๋ค quarantine ์์ฑ ์ ๊ฑฐ:
xattr -dr com.apple.quarantine /Applications/Crew.appCrew๋ Apple Developer ID๋ก ์๋ช ยท๊ณต์ฆ๋์ง ์์ ad-hoc ๋น๋์ ๋๋ค. ์ ๋ช ๋ น์ Gatekeeper์ quarantine ํ๋๊ทธ๋ง ๋ผ๋ ๋จ๊ณ๋ก ์ฑ ๋ฌด๊ฒฐ์ฑ์๋ ์ํฅ์ด ์์ต๋๋ค.
์ค์น๋ ์ฑ์ ์์ ์์ ์ค์ ์์ ์ ๋ฐ์ดํธ๋ฅผ ํ์ธํด์. ์ ๋ฒ์ ์ ์ฌ์ฉ์๊ฐ ์ค์น๋ฅผ ๊ณ ๋ฅธ ๋ค์๋ง ๋ฐ์ ๋ค์ ์คํํฉ๋๋ค.
๋ฏธ๋ฆฌ ๋น๋๋ ์ฑ ๋์ ์ ์ฅ์๋ฅผ ๋ฐ์์ ์ง์ ๋น๋ํ ์๋ ์์ด์. ์๊ตฌ์ฌํญ์ Rust stable (rustup, rustc 1.95์์ ํ์ธ), Node.js 20+, Xcode Command Line Tools์์.
# Rust
curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh
# Xcode Command Line Tools (์์ง ์๋ค๋ฉด)
xcode-select --installNode๋ nodejs.org์์ ๋ฐ๊ฑฐ๋ brew install node๋ก ์ค์นํ๋ฉด ๋ผ์.
๊ฐ ๋๊ตฌ์ ๊ณต์ ์ค์น ๋ฐฉ๋ฒ์ ๋ฐ๋ฅธ ๋ค, ํฐ๋ฏธ๋์์ ํด๋น ๋ช ๋ น์ด ์คํ๋๋์ง๋ง ํ์ธํ๋ฉด ๋ผ์.
grok --version
claude --version
codex --version์ ์ฅ์์์ ๋น๋
git clone https://github.com/im-ian/crew.git
cd crew
cargo build --release -p crew๋ฐ์ด๋๋ฆฌ: target/release/crew
macOS .app / .dmg๋ ๋ค์์ผ๋ก ๋ง๋ค์ด์. ์๋ช
ํค๊ฐ ์์ผ๋ฉด ์
๋ฐ์ดํฐ ์ํฐํฉํธ ์์ด ํธ์คํธ ์ํคํ
์ฒ ๋ฒ๋ค๋ง ๋์์.
./scripts/build-macos.shPATH์ ๋ฃ์ผ๋ ค๋ฉด:
install -m 755 target/release/crew "$HOME/.local/bin/crew"
# ๋๋
cargo install --path crates/crew --lockedcargo install์ ~/.cargo/bin/crew์ ์ค์นํด์. rustup์ผ๋ก ์ค์นํ๋ค๋ฉด ์ด๋ฏธ PATH์ ์กํ ์์ด์.
Git์์ ๋ฐ๋ก ์ค์น
cargo install --git https://github.com/im-ian/crew.git --locked crew๋ ๋ฐฉ๋ฒ ๋ชจ๋ build.rs๊ฐ crates/crew/ui์์ npm install๊ณผ npm run build๋ฅผ ์คํํด์. ์ฒซ ๋น๋๋ Node ์์กด์ฑ ๋๋ฌธ์ ์๊ฐ์ด ์ข ๋ ๊ฑธ๋ ค์.
crew์ธ์ ์์ด ์คํํ๊ฑฐ๋ crew app์ ์ฐ๋ฉด ๋ฐ์คํฌํฑ ์ฐฝ์ด ์ด๋ ค์. ๋ฐ๋ชฌ์ด ๋ ์์ง ์์ผ๋ฉด ๊ฐ์ ๋ฐ์ด๋๋ฆฌ๊ฐ ๋ฐฑ๊ทธ๋ผ์ด๋ ๋ฐ๋ชฌ์ ํจ๊ป ๋์์.
์ฐฝ๋ง ๋ซ์ผ๋ฉด ๋ฐ๋ชฌ์ ๋จ์ ์์ ์ ์์ด์. ์์ ํ ์ข ๋ฃํ๋ ค๋ฉด:
crew stop์ฐฝ์ ํ ๋ฒ์ ํ๋์์. ์ด๋ฏธ ์คํ ์ค์ธ Crew๊ฐ ์๋ค๋ฉด ๋จผ์ ์ข ๋ฃํ๊ณ ๋ค์ ์ฌ๋ ํธ์ด ์์ ํด์.
๋ฐ์ดํฐ ํ์ ๊ธฐ๋ณธ์ ์ผ๋ก ์ฌ๊ธฐ์์.
~/Library/Application Support/crew
CREW_HOME์ ์ง์ ํ๋ฉด ๊ทธ ๋๋ ํฐ๋ฆฌ๋ฅผ ์ฌ์ฉํด์.
agents.json์ด ์์ง ์์ผ๋ฉด ์ ์ฅ์์ agents.example.json์ ๋ณต์ฌํด์ ์์ํด์. ์์ ๋ก์คํฐ๋ ์ด๋์.
| id | ์ด๋ฆ | ๋ช ๋ น | ์์ ํด๋ |
|---|---|---|---|
grok |
Grok | grok --always-approve |
/tmp/crew-demo/grok |
shell |
Shell | cat |
/tmp/crew-demo/shell |
examples ๋ธ๋ก์ Claude / Codex๋ ์ฐธ๊ณ ์ฉ์ด๋ผ ์๋์ผ๋ก ๋ฑ๋ก๋์ง๋ ์์์. ์ฑ์ ์ ๋ด์ด๋ CLI๋ก ์ถ๊ฐํ๋ฉด ๋ผ์.
Grok์ด PATH์ ์๋ค๋ฉด ์์ grok ๋ด์๊ฒ ๋ฐ๋ก ๋ง์ ๊ฑธ ์ ์์ด์. ์๋ค๋ฉด ์ ๋ด์ ๋ง๋ค๋ฉด์ ์ค์นํด ๋ CLI๋ฅผ ๊ณ ๋ฅด๋ฉด ๋ผ์.
crew๋ฅผ ์คํํด ์ฐฝ์ ์ด์ด์.- ์ฌ์ด๋๋ฐ์์ ๋ด์ ๊ณ ๋ฅด๊ฑฐ๋, ์ ๋ด (
โN)์ผ๋ก Grok / Claude / Codex ๋ด์ ๋ง๋ค์ด์. - ์ฌ๋ฌ ๋ด์ ํจ๊ป ์ฐ๋ ค๋ฉด ์ ์ฑ๋ (
โโงN)์ ๋ง๋ค๊ณ ๋ฉค๋ฒ๋ฅผ ๋ฃ์ด์. - ๋ฉ์์ง,
@๋ฉ์ , ํ์ผ ์ฒจ๋ถ (โU),/์คํฌ์ ์ฌ์ฉํด์. โI๋ก ๋ด/์ฑ๋ ์ ๋ณด๋ฅผ ๋ด์ (์ญํ , ๋ชจ๋ธ, ๋ฉ๋ชจ๋ฆฌ, ์์ ํด๋, ์๋ฐํ).โโงR๋ก ๋ฃจํด์ ๊ด๋ฆฌํด์.
์
๋ ฅ ์ค์๋ โ ์กฐํฉ์ ๊ทธ๋๋ก ๋์ํด์. ?๋ ์
๋ ฅ์ฐฝ ๋ฐ์์๋ง ๋จนํ์.
โ/ |
๋จ์ถํค |
โ, |
์ค์ |
โK |
๊ฒ์ |
โJ |
์ ๋ ฅ์ฐฝ |
โโฅโ / โโฅโ |
์ด์ / ๋ค์ ๋ํ |
โโงโ |
๋งจ ์๋ |
โN |
์ ๋ด |
โโงN |
์ ์ฑ๋ |
โI |
์ ๋ณด |
โโงR |
๋ฃจํด |
โ. |
์ค์ง |
โU |
ํ์ผ ์ฒจ๋ถ |
โโฉ |
ํ ๋ฒ ํ์ฉ |
โโซ |
๊ฑฐ๋ถ |
CLI๋ ๋ฐ์คํฌํฑ๊ณผ ๊ฐ์ ๋ฐ๋ชฌ, ๊ฐ์ agents.json์ ์จ์. ๋ฐ๋ชฌ์ด ๊บผ์ ธ ์์ด๋ agent / channel / memory / routine์ ์ค์ ๋ณ๊ฒฝ์ ํ์ผ์ ๋ฐ๋ก ๋ฐ์๋ผ์. tell, send, reset, routine run์ฒ๋ผ ์ด์ ์๋ ์ธ์
์ด ํ์ํ ๋ช
๋ น์ ๋ฐ๋ชฌ์ ๋์ด ๋ค์ ์คํํด์.
๋ด ์ธ์
์์์ crew tell์ ์คํํ๋ฉด CREW_AGENT_ID๊ฐ ๋ณด๋ธ ์ฌ๋์ด ๋ผ์. ์์ด์ ํธ ํ๋ก์ธ์ค๊ฐ ๋ฐ๋ชฌ์ ์๋ก ๋์ฐ์ง๋ ์์์.
crew # ๋ฐ์คํฌํฑ
crew app
crew daemon # ๋ฐฑ๊ทธ๋ผ์ด๋ ์๋ฒ๋ง
crew stop
crew agent list
crew agent add review --cli claude --name "๋ฆฌ๋ทฐ์ด"
crew agent add impl --cli grok --cwd ~/Projects/app
crew agent add hack --cli codex
crew agent set grok --name "๊ทธ๋ก๋ด ํ
์คํฐ"
crew agent set grok --model grok-4 --effort high --shape circle --color "#ff6a00"
crew agent clone grok --name "Grok ๋ณต์ฌ๋ณธ"
crew agent remove shell
crew tell grok ์ด ํ์ผ์ ํ
์คํธ๋ฅผ ๋ณด๊ฐํด์ค
crew tell review --from grok ๋ฐฉ๊ธ ํจ์น ๋ฆฌ๋ทฐํด์ค
crew tell --channel frontend @grok ์ค๋ ๋ณด๋ ์์ฝํด์ค
crew ask --question "์ด๋ ์ชฝ์ ๊ณ ๋ฅผ๋?" --option A --option B --option C
crew ask --question "๋ก๊ทธ์ธ" --input ์์ด๋ --input ๋น๋ฐ๋ฒํธ
crew channel add frontend --name "ํ๋ก ํธ์๋" --members grok,review
crew channel add --name "๋ธ๋ผ์ฐ์ QA" --members grok,review # id๋ฅผ ์๋ตํ๋ฉด ์ด๋ฆ์์ ๋ง๋ค๊ณ , ๋ง๋ id๋ฅผ ์ถ๋ ฅํด์
crew channel send frontend ์คํ ๋์
์์
crew channel set frontend --brief "์ด ๋ฐฉ์ UI๋ง"
crew channel join frontend impl
crew channel leave frontend review
crew routine add grok --name "์์นจ" --schedule "ํ์ผ 8์์ ๋ธ๋ฆฌํ" --prompt "์ค๋ ํ ์ผ ๋ธ๋ฆฌํ"
crew routine add grok --name "์์นจ" --schedule "0 8 * * 1-5" --prompt "์ค๋ ํ ์ผ ๋ธ๋ฆฌํ"
crew routine add '#frontend' --name "์คํ ๋์
" --schedule "0 9 * * 1-5" --prompt "์ด์ ํ ์ผ"
crew routine run grok ์์นจ
crew memory show grok
crew memory set grok ์ฌ์ฉ์๋ ํ๊ตญ์ด๋ก ์งง๊ฒ ๋ตํ๊ธธ ์ข์ํ๋ค
crew memory append grok ์ด ๋ ํฌ๋ ์ํฌ์คํ์ด์ค ๋ฃจํธ๊ฐ crew ๋ค
crew messages grok
crew reset grok
crew reset grok --drop-routinescrew agent add์๋ --cli grok|claude|codex ๋๋ --cmd โฆ๊ฐ ํ์ํด์. --cmd๋ฅผ ์ฃผ๋ฉด --cli๋ ๋ฌด์๋ผ์. ์์
ํด๋๋ฅผ ์๋ตํ๋ฉด /tmp/crew-demo/<id>๊ฐ ๋ผ์.
์ฑ๋ ๋ฃจํด์ ๋์์ #์ฑ๋id ํ์์ผ๋ก ์ ์ด์.
๊ธฐ๋ณธ ๊ฒฝ๋ก: ~/Library/Application Support/crew
๋ณ๊ฒฝํ๋ ค๋ฉด: CREW_HOME
| ๊ฒฝ๋ก | ๋ด์ฉ |
|---|---|
agents.json |
๋ดยท์ฑ๋ยท๋ฃจํด |
groups.json |
์ฌ์ด๋๋ฐ ๊ทธ๋ฃน |
locale |
ko ๋๋ en (์๋ฆผยทCLI ๋ผ๋ฒจ) |
roster.md |
๋ด์๊ฒ ์ฃผ์ ๋๋ ์ต์ ๋ด ๋ช ๋จ |
memory/<id>.md |
๋ํ๋ฅผ ์ง์๋ ๋จ๋ ๊ธฐ์ต |
skills/<์ด๋ฆ>.md |
/์ด๋ฆ ์คํฌ |
transcripts/<id>.jsonl |
1:1 ๋ํ |
channels/<id>.jsonl |
์ฑ๋ ๋ํ |
cli-sessions/<id> |
Grok/Claude/Codex ์ธ์ id |
archive/ |
์ง์ด ๋ํ |
uploads/ |
์ฒจ๋ถ ํ์ผ |
crew.sock / crew.pid |
๋ฐ๋ชฌ |
crew.log |
๋ฐ๋ชฌ ๋ก๊ทธ |
git clone https://github.com/im-ian/crew.git
cd crew
cargo run -p crew # ๋๋ฒ๊ทธ. UI๋ Vite http://127.0.0.1:1420
cargo test -p crew
(cd crates/crew/ui && npm test)๋๋ฒ๊ทธ ๋น๋๋ ui/dist๊ฐ ์์ผ๋ฉด ํ๋ก ํธ์๋๋ฅผ ๋ค์ ๋ฒ๋คํ์ง ์๊ณ ์ฐฝ์ Vite์ ์ฐ๊ฒฐํด์. ๋ฆด๋ฆฌ์ค ๋น๋๋ npm run build๋ก ui/dist๋ฅผ ๋ง๋ค์ด์.
crates/crew/src/ Rust: CLI, ๋ฐ๋ชฌ, ํค๋๋ฆฌ์ค/PTY, Tauri ์ปค๋งจ๋
crates/crew/ui/src/ React 19 UI
GitHub์ vX.Y.Z ํ๊ทธ๋ฅผ ์ฌ๋ฆฌ๋ฉด Release ์ํฌํ๋ก๊ฐ Apple SiliconยทIntel DMG์ ์
๋ฐ์ดํฐ latest.json์ ๊ฒ์ํด์. Cargo.toml, crates/crew/tauri.conf.json, crates/crew/ui/package.json์ ๋ฒ์ ์ด ํ๊ทธ์ ๊ฐ์์ผ ํด์. ์
๋ฐ์ดํฐ ์๋ช
์ ์ฐ๋ ค๋ฉด ์ ์ฅ์ Secrets์ TAURI_SIGNING_PRIVATE_KEY๊ฐ ์์ด์ผ ํด์.
ํต์ฌ์ ๋ฐ๋ชฌ์ด์์. ๋ฐ์คํฌํฑ ์ฑ๊ณผ crew CLI๊ฐ Unix ์์ผ์ผ๋ก JSON ์์ฒญ์ ๋ณด๋ด๋ฉด, ๋ฐ๋ชฌ์ด ์์ด์ ํธ ํ๋ก์ธ์ค๋ฅผ ์คํํด์.
MIT. Cargo.toml์ workspace.package.license์ ๋์ผํด์.



