์—…๋ฐ์ดํŠธ๋กœ ๋Œ์•„๊ฐ€๊ธฐ
New releaseJul 25, 2026

aquaman v0.14.0

๐Ÿ”ฑ AI ์—์ด์ „ํŠธ๋ฅผ ์œ„ํ•œ ์œ ์ผํ•œ ๋…๋ฆฝ ์ž๊ฒฉ ์ฆ๋ช… ํ”„๋ก์‹œ: ์ž์ฒด ๋ณผํŠธ ๊ฒฉ๋ฆฌ(BYOV) ๋ฐ ์ตœ์†Œ ๊ถŒํ•œ ์š”์ฒญ ์ •์ฑ…. ํ‚ค๋Š” ์ด๋ฏธ ๋ณด๊ด€ ์ค‘์ธ ๊ณณ์— ๊ทธ๋Œ€๋กœ ๋‚จ์•„ ์žˆ์œผ๋ฉฐ, ์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ์— ์ ˆ๋Œ€ ์ €์žฅ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 1Password, keychain, keepassxc ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ๋„๊ตฌ์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค.

๊ณต์œ 

๐Ÿ”ฑ Aquaman

CI codecov npm version npm downloads Security: process isolation TypeScript License: MIT

๐Ÿ”ฑ AI ์—์ด์ „ํŠธ๋ฅผ ์œ„ํ•œ ์œ ์ผํ•œ ๋…๋ฆฝํ˜• ์ž๊ฒฉ ์ฆ๋ช… ํ”„๋ก์‹œ: ์ž์ฒด ๋ณด๊ด€์†Œ(bring-your-own-vault) ๊ฒฉ๋ฆฌ ๋ฐ ์ตœ์†Œ ๊ถŒํ•œ ์š”์ฒญ ์ •์ฑ…. ํ‚ค๋Š” ์ด๋ฏธ ๋ณด๊ด€ ์ค‘์ธ ๊ณณ์— ๊ทธ๋Œ€๋กœ ๋‘๋ฉฐ, ์—์ด์ „ํŠธ์˜ ๋ฉ”๋ชจ๋ฆฌ์—๋Š” ์ ˆ๋Œ€ ๋‚จ์ง€ ์•Š์Šต๋‹ˆ๋‹ค. 1Password, keychain, keepassxc ๋ฐ ๊ธฐํƒ€ ์—ฌ๋Ÿฌ ๋„๊ตฌ์™€ ํ˜ธํ™˜๋ฉ๋‹ˆ๋‹ค.

Claude Code, Codex, OpenClaw, Hermes ๋˜๋Š” Docker Sandboxes๋ฅผ ์„ค์ •ํ–ˆ๋Š”๋ฐ, ์ด์ œ ์†Œ์ค‘ํ•œ API ํ‚ค๊ฐ€ ํ‰๋ฌธ์œผ๋กœ ๋“ค์–ด ์žˆ๋Š” .env ํŒŒ์ผ์„ ๋ฐ”๋ผ๋ณด๊ณ  ๊ณ„์‹ ๊ฐ€์š”? ๊ด€๋ จ ๊ธ€๋“ค์„ ์ฝ์–ด๋ณด์…จ์„ ํ…Œ๊ณ , ์—์ด์ „ํŠธ๊ฐ€ ํ”„๋กฌํ”„ํŠธ ์ธ์ ์…˜์„ ๋‹นํ•˜๋ฉด ๋ฌด์Šจ ์ผ์ด ๋ฒŒ์–ด์ง€๋Š”์ง€๋„ ์•„์‹ค ๊ฒ๋‹ˆ๋‹ค. ์ถฉ๋ถ„ํžˆ ์ดํ•ดํ•ฉ๋‹ˆ๋‹ค.

Aquaman์€ ์„ธ ๊ฐ€์ง€ ๋ฐฉ์–ด ๊ณ„์ธต์œผ๋กœ ์ด ๋ฌธ์ œ๋ฅผ ํ•ด๊ฒฐํ•ฉ๋‹ˆ๋‹ค:

  1. ํ”„๋กœ์„ธ์Šค ๊ฒฉ๋ฆฌ: API ํ‚ค๋Š” ์†ก์‹  ์‹œ์ ์— ํ‚ค๋ฅผ ์ฃผ์ž…ํ•˜๋Š” ๋ณ„๋„์˜ ํ”„๋ก์‹œ ํ”„๋กœ์„ธ์Šค์— ์กด์žฌํ•ฉ๋‹ˆ๋‹ค. ์—์ด์ „ํŠธ๋Š” ํ‚ค๊ฐ€ ์•„๋‹Œ ๋งˆ์ปค๋งŒ ๋ณด์œ ํ•˜๋ฏ€๋กœ, ์—์ด์ „ํŠธ์—์„œ RCE๊ฐ€ ๋ฐœ์ƒํ•˜๋”๋ผ๋„ ํ‚ค๋ฅผ ์ฝ์„ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค. ์ฝ”๋”ฉ ์—์ด์ „ํŠธ๋Š” ์„ ์–ธํ•œ ์ฐธ์กฐ๋งŒ, ํ•œ ๋ฒˆ์— ํ•œ ๋ช…๋ น์”ฉ๋งŒ ๋ฐ›์Šต๋‹ˆ๋‹ค.
  2. ์š”์ฒญ ์ •์ฑ…: ์„œ๋น„์Šค๋ณ„ ๊ทœ์น™์œผ๋กœ ์—์ด์ „ํŠธ๊ฐ€ ์–ด๋–ค ์—”๋“œํฌ์ธํŠธ๋ฅผ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋Š”์ง€ ์ œ์–ดํ•ฉ๋‹ˆ๋‹ค. ๊ด€๋ฆฌ์ž API ์ฐจ๋‹จ, ์‚ญ์ œ ๋ฐฉ์ง€, ์ดˆ์•ˆ ํ—ˆ์šฉํ•˜๋˜ ์ „์†ก ๊ฑฐ๋ถ€ ๋“ฑ์„ ์„ค์ •ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ฑฐ๋ถ€๋œ ์š”์ฒญ์—๋Š” ์‹ค์ œ ์ž๊ฒฉ ์ฆ๋ช…์ด ์ ˆ๋Œ€ ์ „๋‹ฌ๋˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.
  3. ๋ณ€์กฐ ๊ฐ์ง€ ๊ฐ์‚ฌ: ๋ชจ๋“  ์ž๊ฒฉ ์ฆ๋ช… ์‚ฌ์šฉ์€ SHA-256 ํ•ด์‹œ ์ฒด์ธ์œผ๋กœ ๊ธฐ๋ก๋ฉ๋‹ˆ๋‹ค. ๋ฌด์—‡์— ์ ‘๊ทผํ–ˆ๋Š”์ง€ ์ฆ๋ช…ํ•˜๊ณ , ์‚ฌํ›„์— ๋ณ€์กฐ ์—ฌ๋ถ€๋ฅผ ํƒ์ง€ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ฒฝ๋กœ ์„ ํƒ

Aquaman์€ ํ•˜๋‚˜์˜ ๋ณด๊ด€์†Œ + ํ•˜๋‚˜์˜ ๋ฐ๋ชฌ์„ ๊ณต์œ ํ•˜๋Š” ๋„ค ๊ฐœ์˜ ์œ ๊ธฐ์ ์ธ ํŒจํ‚ค์ง€๋กœ ์ œ๊ณต๋ฉ๋‹ˆ๋‹ค. ํ•„์š”ํ•œ ๊ฒƒ๋งŒ ์„ค์น˜ํ•˜์„ธ์š”:

ํŒจํ‚ค์ง€๊ธฐ๋Šฅ์„ค์น˜ ์‹œ์ 
aquaman-proxyํ•ต์‹ฌ: ๋ณด๊ด€์†Œ, ๋ฐ๋ชฌ, ๊ฐ์‚ฌ, ์ •์ฑ…, CLI. ๋ˆ„๊ตฌ๋‚˜ ํ•„์š”ํ•œ ๊ตฌ์„ฑ ์š”์†Œ.ํ•ญ์ƒ.
aquaman-pluginOpenClaw Gateway ์–ด๋Œ‘ํ„ฐ. Gateway ์‹œ์ž‘ ์‹œ ํ”„๋ก์‹œ๋ฅผ ์‹คํ–‰ํ•˜๊ณ , ๋ชจ๋ธ ๋ฐ Telegram ํŠธ๋ž˜ํ”ฝ์„ ํ”„๋ก์‹œ๋ฅผ ํ†ตํ•ด ๋ผ์šฐํŒ…ํ•˜๋ฉฐ, 5๊ฐ€์ง€ ์ธ์ฆ ๋ชจ๋“œ์— ๊ฑธ์ณ 25๊ฐœ์˜ ๋‚ด์žฅ ์„œ๋น„์Šค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.OpenClaw Gateway๋ฅผ ์šด์˜ํ•˜๋Š” ๊ฒฝ์šฐ. https://clawhub.ai/plugins/aquaman-plugin ์—์„œ๋„ ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.
aquaman-coderAI ์ฝ”๋”ฉ ์—์ด์ „ํŠธ ์–ด๋Œ‘ํ„ฐ. ํ”„๋กœ์ ํŠธ ๋ฒ”์œ„์˜ aquaman://service/key ์ฐธ์กฐ๋ฅผ Bash ๋„๊ตฌ ํ˜ธ์ถœ๋งˆ๋‹ค ํ•ด์„ํ•ฉ๋‹ˆ๋‹ค.Claude Code ๋˜๋Š” Codex๋ฅผ ์‚ฌ์šฉํ•˜๋Š” ๊ฒฝ์šฐ.
aquaman-hermesHermes ์—์ด์ „ํŠธ ํ˜ธ์ŠคํŠธ ํ”Œ๋Ÿฌ๊ทธ์ธ (Python, PyPI ๋ฐฐํฌ). ๋„ค์ดํ‹ฐ๋ธŒ ANTHROPIC_BASE_URL/OPENAI_BASE_URL์„ ํ†ตํ•ด Hermes๋ฅผ ์˜ตํŠธ์ธ ๋ฐฉ์‹์˜ ํ† ํฐ ๊ฒŒ์ดํŠธ ๋ฃจํ”„๋ฐฑ ๋ฆฌ์Šค๋„ˆ๋กœ ์—ฐ๊ฒฐํ•˜๋ฉฐ, ์„ธ์…˜ ๋‚ด /aquaman-status ๋ช…๋ น, ๋„๊ตฌ, ์ƒํƒœ ํ™•์ธ ํ”„๋กœ๋ธŒ๋ฅผ ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค. ๊ฒฉ๋ฆฌ๋Š” ํ”„๋ก์‹œ ์ธก์—์„œ ์ด๋ฃจ์–ด์ง€๋ฉฐ, ํ”Œ๋Ÿฌ๊ทธ์ธ์€ ์ž๊ฒฉ ์ฆ๋ช…์„ ๋ณด์œ ํ•˜์ง€ ์•Š์Šต๋‹ˆ๋‹ค.Hermes ์—์ด์ „ํŠธ ํ˜ธ์ŠคํŠธ๋ฅผ ์šด์˜ํ•˜๋Š” ๊ฒฝ์šฐ. pip install aquaman-hermes
Docker SandboxesํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค: aquaman-proxy๋งŒ ํ•„์š”ํ•œ ๋ณ„๋„ ๊ฒฝ๋กœ์ž…๋‹ˆ๋‹ค. Docker ์ž์ฒด ํ”„๋ก์‹œ๊ฐ€ ์‹œํฌ๋ฆฟ์„ ์ฃผ์ž…ํ•˜๊ณ , aquaman get์ด ํ—ˆ์šฉ ๋ชฉ๋ก ๋ฐ ๊ฐ์‚ฌ ๋กœ๊ทธ์™€ ํ•จ๊ป˜ ๋ณด๊ด€์†Œ์—์„œ ์‹œํฌ๋ฆฟ์„ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.Docker Sandboxes์—์„œ ์—์ด์ „ํŠธ๋ฅผ ์šด์˜ํ•˜๋Š” ๊ฒฝ์šฐ. ๋น ๋ฅธ ์‹œ์ž‘ 5๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.
NVIDIA OpenShellํŒจํ‚ค์ง€๊ฐ€ ์•„๋‹™๋‹ˆ๋‹ค: aquaman daemon์ด OpenShell ๊ฒŒ์ดํŠธ์›จ์ด์˜ ์ž๊ฒฉ ์ฆ๋ช… ๋“œ๋ผ์ด๋ฒ„๊ฐ€ ๋ฉ๋‹ˆ๋‹ค. OpenShell์ด ์ƒŒ๋“œ๋ฐ•์Šค๋กœ๋ถ€ํ„ฐ ํ‚ค๋ฅผ ๊ฒฉ๋ฆฌํ•˜๊ณ , aquaman์ด ํ—ˆ์šฉ ๋ชฉ๋ก ๋ฐ ๊ฐ์‚ฌ ๋กœ๊ทธ์™€ ํ•จ๊ป˜ ๋ณด๊ด€์†Œ์—์„œ ์ฐธ์กฐ๋กœ ํ‚ค๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.OpenShell ์ƒŒ๋“œ๋ฐ•์Šค์—์„œ ์—์ด์ „ํŠธ๋ฅผ ์šด์˜ํ•˜๋Š” ๊ฒฝ์šฐ. ๋น ๋ฅธ ์‹œ์ž‘ 6์„ ์ฐธ์กฐํ•˜์„ธ์š”.

๋‹จ์ผ aquaman CLI๊ฐ€ ๋„ค ๊ฐ€์ง€ ๋ชจ๋‘๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค. vault์™€ audit์„ ์œ„ํ•œ ์ตœ์ƒ์œ„ ๋ช…๋ น, OpenClaw ํ†ตํ•ฉ์„ ์œ„ํ•œ aquaman openclaw ..., ์ฝ”๋”ฉ ์—์ด์ „ํŠธ ํ†ตํ•ฉ์„ ์œ„ํ•œ aquaman coder ...(๋‚ด๋ถ€์ ์œผ๋กœ aquaman-coder์— ์œ„์ž„), ๊ทธ๋ฆฌ๊ณ  Hermes Python ํŒจํ‚ค์ง€๋ฅผ ์œ„ํ•œ aquaman hermes ...๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

๋น ๋ฅธ ์‹œ์ž‘

aquaman help, aquaman doctor๊ฐ€ ๋„์›€์ด ๋ฉ๋‹ˆ๋‹ค.

1. Vault๋งŒ ์‚ฌ์šฉ (ํ”„๋ก์‹œ + ์‹œํฌ๋ฆฟ๋งŒ)

npm install -g aquaman-proxy
aquaman setup                                # backend wizard + store keys
aquaman daemon &                             # start the proxy
aquaman credentials list                     # verify

ํ”„๋ก์‹œ๋Š” ~/.aquaman/proxy.sock(UDS, chmod 0o600)์—์„œ ์ˆ˜์‹  ๋Œ€๊ธฐํ•ฉ๋‹ˆ๋‹ค. ์–ด๋–ค ๋„๊ตฌ๋“  http://aquaman.local/<service>/<path>๋กœ ์ง€์ •ํ•˜๋ฉด ํ”„๋ก์‹œ๊ฐ€ ์„ ํƒํ•œ vault ๋ฐฑ์—”๋“œ์—์„œ ํ•ด๋‹น ์„œ๋น„์Šค์˜ ์ธ์ฆ ํ—ค๋”๋ฅผ ์ฃผ์ž…ํ•ฉ๋‹ˆ๋‹ค.

2. OpenClaw Gateway

openclaw plugins install aquaman-plugin           # 1. install plugin + proxy
openclaw aquaman setup                            # 2. backend + keys + plugin wire-up
openclaw                                          # 3. done - proxy starts automatically

๋ฌธ์ œ ํ•ด๊ฒฐ: openclaw aquaman doctor.

npm์„ ์ง์ ‘ ์‚ฌ์šฉํ•˜์‹œ๋‚˜์š”? npm install -g aquaman-proxy && aquaman openclaw setup๋„ ๋™์ผํ•œ ์ž‘์—…์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ํ”„๋ก์‹œ CLI๋ฅผ ์„ค์น˜ํ•˜๊ณ , ํ‚ค๋ฅผ ์ €์žฅํ•˜๋ฉฐ, ํ”Œ๋Ÿฌ๊ทธ์ธ์„ ~/.openclaw/extensions/aquaman-plugin/์— ์„ค์น˜ํ•˜๊ณ , ์ž๊ฒฉ ์ฆ๋ช…์„ ์—ฐ๊ฒฐํ•ฉ๋‹ˆ๋‹ค(OpenClaw โ‰ฅ 2026.6.5์—์„œ๋Š” SecretRef ์ฐธ์กฐ, ์ด์ „ ๋ฒ„์ „์—์„œ๋Š” auth-profiles.json ํ”Œ๋ ˆ์ด์Šคํ™€๋”).

aquaman openclaw setup์€ models.providers.<svc>.baseUrl๊ณผ channels.telegram.apiRoot๋ฅผ ํ”„๋ก์‹œ์˜ ๋ฃจํ”„๋ฐฑ ๋ฆฌ์Šค๋„ˆ๋กœ ์ง€์ •ํ•ฉ๋‹ˆ๋‹ค. OpenClaw์˜ ๋ชจ๋ธ ์ „์†ก ๊ณ„์ธต๊ณผ ๊ฐ ์ฑ„๋„์ด ์ž์ฒด HTTP ํด๋ผ์ด์–ธํŠธ๋ฅผ ๊ตฌ์ถ•ํ•˜์—ฌ fetch ์ธํ„ฐ์…‰ํ„ฐ๋ฅผ ์šฐํšŒํ•˜๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. Telegram ์ด์™ธ์˜ ์ฑ„๋„์€ ์—”๋“œํฌ์ธํŠธ ์žฌ์ •์˜๋ฅผ ๋…ธ์ถœํ•˜์ง€ ์•Š์œผ๋ฏ€๋กœ, ํ•ด๋‹น ํ† ํฐ์€ ์ €์žฅ๋˜๊ณ  ๋งˆ์ด๊ทธ๋ ˆ์ด์…˜๋˜์ง€๋งŒ ์ด๊ทธ๋ ˆ์Šค ์‹œ์ ์— ์ฃผ์ž…๋˜์ง€๋Š” ์•Š์Šต๋‹ˆ๋‹ค(packages/plugin/README.md ์ฐธ์กฐ). openclaw.json์˜ ํ”Œ๋Ÿฌ๊ทธ์ธ ์„ค์ • ์•„๋ž˜์— ์ฑ„๋„์„ ์ถ”๊ฐ€ํ•˜์„ธ์š”. ์ง€์›๋˜๋Š” ์ฑ„๋„๋กœ๋Š” Slack, Discord, Telegram, MS Teams, Matrix, LINE, Twitch, Twilio, BlueBubbles, Mattermost, Nostr, Tlon, Feishu, Google Chat, ElevenLabs, xAI, Cloudflare AI Gateway, Mistral, Hugging Face ๋“ฑ์ด ์žˆ์Šต๋‹ˆ๋‹ค(์ด 25๊ฐœ).

3. AI ์ฝ”๋”ฉ ์—์ด์ „ํŠธ (Claude Code, Codex)

npm install -g aquaman-proxy aquaman-coder        # 1. install daemon + adapter
aquaman setup                                      # 2. vault wizard
aquaman daemon &                                   # 3. start the proxy

aquaman coder project add my-app --path ~/code/my-app \
  --env ANTHROPIC_API_KEY=aquaman://anthropic/api_key \
  --env GITHUB_TOKEN=aquaman://github/token         # 4. declare a project
aquaman coder setup claude-code                    # 5. wire Claude Code hooks
                                                   #    (or: aquaman coder setup codex)
aquaman doctor                                     # 6. verify - should show both vault + coder green

์ง์ ‘ ํ™•์ธํ•ด ๋ณด์„ธ์š” (30์ดˆ ๋งŒ์— ๊นจ๋‹ซ๋Š” ์ˆœ๊ฐ„): Claude Code(๋˜๋Š” Codex)๋ฅผ ์žฌ์‹œ์ž‘ํ•˜๊ณ , ~/code/my-app ์•ˆ์—์„œ ์ƒˆ ์„ธ์…˜์„ ์—ด๊ณ , ์—์ด์ „ํŠธ์—๊ฒŒ ๋‹ค์Œ์„ ์‹คํ–‰ํ•˜๋„๋ก ์š”์ฒญํ•˜์„ธ์š”:

printenv | grep ANTHROPIC_API_KEY

์ด๊ฒƒ์€ ํŠธ๋žœ์Šคํฌ๋ฆฝํŠธ์—์„œ ๋ณด๊ฒŒ ๋  ๊ฒƒ์ž…๋‹ˆ๋‹ค:

ANTHROPIC_API_KEY=[REDACTED:injected-value]

โบ ANTHROPIC_API_KEY is set and available (injected via aquaman vault). 

์ž์‹ ํ”„๋กœ์„ธ์Šค๋Š” ์‹ค์ œ ํ‚ค๋ฅผ ๋ณด์•˜์Šต๋‹ˆ๋‹ค(ํ…Œ์ŠคํŠธ, ๋นŒ๋“œ, MCP ์„œ๋ฒ„, import ์Šคํฌ๋ฆฝํŠธ ๋“ฑ ์‹ค์ œ๋กœ ํ‚ค๊ฐ€ ํ•„์š”ํ•œ ๋ชจ๋“  ๊ฒƒ์€ ์ •์ƒ์ ์œผ๋กœ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค). ์—์ด์ „ํŠธ - ์ฆ‰, ์—ฌ๋Ÿฌ๋ถ„์˜ ๋จธ์‹ ์—์„œ ์–ด๋–ค ์ฝ”๋“œ๋ฅผ ์‹คํ–‰ํ• ์ง€ ๊ฒฐ์ •ํ•˜๋Š” ์ฃผ์ฒด - ๋Š” ๊ทธ ๊ฐ’์„ ๊ฒฐ์ฝ” ๋ณด์ง€ ๋ชปํ•˜๋ฉฐ, ๋”ฐ๋ผ์„œ ๋Œ€ํ™” ๊ธฐ๋ก๋„, ๋ชจ๋ธ ์ œ๊ณต์ž์˜ ๋กœ๊ทธ๋„, ๋‚˜์ค‘์— ์—ฌ๋Ÿฌ๋ถ„์˜ ํ„ฐ๋ฏธ๋„์„ ์Šคํฌ๋ฆฐ์ƒท์œผ๋กœ ์ฐ๋Š” ๋ˆ„๊ตฌ๋„ ๊ทธ ๊ฐ’์„ ๋ณผ ์ˆ˜ ์—†์Šต๋‹ˆ๋‹ค.

์—ฌ๋Ÿฌ๋ถ„์˜ ํ„ฐ๋ฏธ๋„์—์„œ๋„ ์‚ฌ์šฉํ•˜์„ธ์š”. ๋™์ผํ•œ ๋ž˜ํผ๋Š” ์—์ด์ „ํŠธ ์—†์ด๋„ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ์ปค๋ฒ„๋œ ํ”„๋กœ์ ํŠธ๋กœ cdํ•œ ๋’ค ๋ช…๋ น ์•ž์— ์ ‘๋‘์‚ฌ๋ฅผ ๋ถ™์ด๊ธฐ๋งŒ ํ•˜๋ฉด ๋ฉ๋‹ˆ๋‹ค:

cd ~/code/
aquaman-coder exec -- python app/scripts/import.py

๋™์ผํ•œ ํ™˜๊ฒฝ ๋ณ€์ˆ˜ ์ฃผ์ž…, stdout/stderr์— ๋Œ€ํ•œ ๋™์ผํ•œ ๋ฆฌ๋‹ค์ด๋ ‰์…˜. Makefile ํƒ€๊นƒ, ์…ธ ๋ณ„์นญ, ๋˜๋Š” CI ๋Ÿฌ๋„ˆ ๋“ฑ ํ‰์†Œ๋ผ๋ฉด .env ํŒŒ์ผ์„ ์ฐพ์•˜์„ ๊ณณ ์–ด๋””์—๋“  ๋„ฃ์„ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

Claude Code๋‚˜ Codex๊ฐ€ ~/code/my-app์—์„œ ์…ธ ๋ช…๋ น์„ ์‹คํ–‰ํ•˜๋ฉด, aquaman์˜ ํ›…์ด updatedInput.command๋ฅผ ํ†ตํ•ด ๋ช…๋ น์„ ์žฌ์ž‘์„ฑํ•˜์—ฌ aquaman-coder exec ์•„๋ž˜์— ๊ฐ์Œ‰๋‹ˆ๋‹ค. ํ•ด๋‹น ๋ž˜ํผ๋Š”:

  • ๋ธŒ๋กœ์ปค(UDS๋ฅผ ํ†ตํ•œ POST /broker/resolve)๋ฅผ ํ†ตํ•ด ๊ฐ aquaman://service/key ์ฐธ์กฐ๋ฅผ ํ•ด์„ํ•ฉ๋‹ˆ๋‹ค. ์ž๊ฒฉ ์ฆ๋ช…์€ ์—์ด์ „ํŠธ์˜ ์ˆ˜๋ช… ๋™์•ˆ์ด ์•„๋‹ˆ๋ผ ๋‹จ์ผ ๋ช…๋ น์„ ์œ„ํ•ด ๊ตฌ์ฒดํ™”๋ฉ๋‹ˆ๋‹ค.
  • stdout/stderr๋ฅผ ๋ฆฌ๋‹ค์•กํ„ฐ๋ฅผ ํ†ตํ•ด ํŒŒ์ดํ”„ํ•˜๋ฉฐ, ๋ฆฌ๋‹ค์•กํ„ฐ๋Š” ํ•ด์„๋œ ๊ฐ ๊ฐ’์— ๋Œ€ํ•ด ๊ฐ’ ๊ธฐ๋ฐ˜ ํŒจํ„ด์„ ์•ž์— ๋ถ™์ž…๋‹ˆ๋‹ค: ์ฃผ์ž…๋œ ๋ฌธ์ž์—ด์€ ํ˜•ํƒœ์™€ ๋ฌด๊ด€ํ•˜๊ฒŒ ๋ฆฌ๋‹ค์•ก์…˜๋ฉ๋‹ˆ๋‹ค (Atlassian ํ† ํฐ, Notion ์‹œํฌ๋ฆฟ, ๋‚ด๋ถ€ API ํ‚ค โ€” ์–ด๋А ๊ฒƒ๋„ ์•Œ๋ ค์ง„ ์ œ๊ณต์ž ํ˜•์‹๊ณผ ์ผ์น˜ํ•  ํ•„์š”๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค). ํ˜•ํƒœ ๊ธฐ๋ฐ˜์˜ ์ผ๋ฐ˜ ํŒจํ„ด(sk-ant-, ghp_, sk_live_, AKIAโ€ฆ, JWT, PEM ๋ธ”๋ก, ATATT3xFโ€ฆ)์€ ์šฐ๋ฆฌ๊ฐ€ ์ฃผ์ž…ํ•˜์ง€ ์•Š์€ ์‹œํฌ๋ฆฟ์ด ์ž์‹ ํ”„๋กœ์„ธ์Šค์—์„œ ๋…ธ์ถœ๋  ๊ฒฝ์šฐ๋ฅผ ๋Œ€๋น„ํ•œ ์‹ฌ์ธต ๋ฐฉ์–ด๋กœ์„œ ์ดํ›„์— ์—ฌ์ „ํžˆ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.
  • ๋ช…๋ น์ด ์ข…๋ฃŒ๋˜๋ฉด ์ •๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

Claude Code ์ƒŒ๋“œ๋ฐ•์Šค: ๊ธฐ๋ณธ์ ์œผ๋กœ Unix ์†Œ์ผ“์„ ์ฐจ๋‹จํ•˜๋ฏ€๋กœ, aquaman coder setup claude-code๋Š” macOS์—์„œ ํ”„๋ก์‹œ ์†Œ์ผ“์„ ํ—ˆ์šฉ ๋ชฉ๋ก์— ์ถ”๊ฐ€ํ•ฉ๋‹ˆ๋‹ค(sandbox.network.allowUnixSockets). Linux์™€ WSL2๋Š” ํ•ด๋‹น ๋ชฉ๋ก์„ ๋ฌด์‹œํ•˜๋ฉฐ, ์œ ์ผํ•œ ์˜ต์…˜์€ sandbox.network.allowAllUnixSockets: true๋กœ, ์ด๋Š” ์ƒŒ๋“œ๋ฐ•์Šค๋œ ๋ช…๋ น์— ๋ชจ๋“  Unix ์†Œ์ผ“์„ ๊ฐœ๋ฐฉํ•ฉ๋‹ˆ๋‹ค.

Codex: ์„ค์ • ํ›„ Codex์˜ ์‹œ์ž‘ ํ›… ๊ฒ€ํ† ์—์„œ aquaman ํ›…์„ ์Šน์ธํ•˜์„ธ์š”(Codex๋Š” ์‹ ๋ขฐํ•˜๊ธฐ ์ „๊นŒ์ง€ ์ƒˆ ํ›…์„ ๊ฑด๋„ˆ๋œ๋‹ˆ๋‹ค). ํ•ด๋‹น ์ƒŒ๋“œ๋ฐ•์Šค ์—ญ์‹œ ๊ธฐ๋ณธ์ ์œผ๋กœ ํ”„๋ก์‹œ ์†Œ์ผ“์„ ์ฐจ๋‹จํ•˜๋ฏ€๋กœ, aquaman coder setup codex๋Š” ์ด๋ฅผ ํ—ˆ์šฉํ•˜๋Š” config.toml ๊ถŒํ•œ ํ”„๋กœํ•„์„ ์ถœ๋ ฅํ•ฉ๋‹ˆ๋‹ค. Codex ํ›…์€ ์…ธ ์ถœ๋ ฅ์„ ์žฌ์ž‘์„ฑํ•  ์ˆ˜ ์—†์œผ๋ฏ€๋กœ, ๋ฆฌ๋‹ค์•ก์…˜์€ aquaman-coder exec ๋‚ด๋ถ€์—์„œ ์ด๋ฃจ์–ด์ง‘๋‹ˆ๋‹ค. ์ž์„ธํ•œ ๋‚ด์šฉ์€ packages/coder/README.md๋ฅผ ์ฐธ์กฐํ•˜์„ธ์š”.

4. Hermes (์—์ด์ „ํŠธ ํ˜ธ์ŠคํŠธ)

์นดํ…Œ๊ณ ๋ฆฌ