๋ฐฐ๊ฒฝ: ๋น ํ ํฌ๋ค์ ์ด๋ฏธ ์ฐ๊ณ ์์๋ค
https://blog.langchain.com/open-swe-an-open-source-framework-for-internal-coding-agents/ ๋ธ๋ก๊ทธ ๋ด์ฉ์ ๋ฒ์ญ ๋ฐ ์์ฝํ ๊ฒ์ ๋๋ค.
์์ฆ ์๋๊ฐ๋ ์์ง๋์ด๋ง ํ๋ค์ AI ์ฝ๋ฉ ์์ด์ ํธ๋ฅผ ๋ด๋ถ์ ์ง์ ๊ตฌ์ถํด์ ์ฐ๊ณ ์์ด์.
- Stripe โ Minions
- Ramp โ Inspect
- Coinbase โ Cloudbot
๊ฐ์ ๋ ๋ฆฝ์ ์ผ๋ก ๋ง๋ค์์ง๋ง, ๋๋๊ฒ๋ ๋น์ทํ ์ํคํ ์ฒ ํจํด์ผ๋ก ์๋ ดํ์ต๋๋ค. LangChain์ ์ด ๊ณตํต ํจํด์ ๋ถ์ํด์ ๋๊ตฌ๋ ์ธ ์ ์๋ ์คํ์์ค ํ๋ ์์ํฌ๋ก ๋ง๋ ๊ฒ ๋ฐ๋ก Open SWE์์.

Open SWE ์ํคํ ์ฒ 7๊ฐ์ง ํต์ฌ
1. ๐ง ์์ด์ ํธ ๊ธฐ๋ฐ: Deep Agents + LangGraph
๊ธฐ์กด ์์ด์ ํธ๋ฅผ ํฌํฌํ๊ฑฐ๋ ์ฒ์๋ถํฐ ๋ง๋๋ ๋์ , Deep Agents ํ๋ ์์ํฌ ์์ ์กฐํฉ(compose) ํ๋ ๋ฐฉ์์ ํํ์ด์. Ramp๊ฐ OpenCode ์์ Inspect๋ฅผ ๋ง๋ ๊ฒ๊ณผ ๊ฐ์ ์ ๊ทผ๋ฒ์ ๋๋ค.
- Deep Agents๊ฐ ๊ฐ์ ๋๋ฉด ์๋์ผ๋ก ํํ์ ๋ฐ์
- ํฌํฌ ์์ด ์กฐ์ง๋ณ ์ปค์คํฐ๋ง์ด์ง ๊ฐ๋ฅ
2. ๐๏ธ ์๋๋ฐ์ค: ๊ฒฉ๋ฆฌ๋ ํด๋ผ์ฐ๋ ํ๊ฒฝ
๊ฐ ์์ ์ ๋ ๋ฆฝ๋ ํด๋ผ์ฐ๋ ์๋๋ฐ์ค์์ ์คํ๋ฉ๋๋ค. ์ค์๊ฐ ๋ฐ์ํด๋ ํ๋ก๋์ ์์คํ ์ ์ํฅ ์์ด ๊ฒฉ๋ฆฌ๋ผ์.
- ์ง์ ์๋๋ฐ์ค ํ๋ก๋ฐ์ด๋: Modal, Daytona, Runloop, LangSmith (์ง์ ๊ตฌํ๋ ๊ฐ๋ฅ)
3. ๐ ๏ธ ๋๊ตฌ(Tool): ์ ๊ฒ, ํ์ง๋ง ์ ๋ฐํ๊ฒ
Stripe๋ ์ฝ 500๊ฐ์ ๋๊ตฌ๋ฅผ ๋ณด์ ํ์ง๋ง "๋๊ตฌ์ ์๋ณด๋ค ํ์ง์ด ์ค์"ํ๋ค๊ณ ๋ฐํ์ด์. Open SWE๋ ์ฝ 15๊ฐ์ ํต์ฌ ๋๊ตฌ๋ง ํ๋ ์ด์ ํด์ ์ ๊ณตํฉ๋๋ค.
| ๋๊ตฌ | ์ญํ |
|---|---|
execute | ์๋๋ฐ์ค ๋ด ์ ธ ๋ช ๋ น ์คํ |
fetch_url | ์น ํ์ด์ง๋ฅผ ๋งํฌ๋ค์ด์ผ๋ก ๊ฐ์ ธ์ค๊ธฐ |
http_request | API ํธ์ถ |
commit_and_open_pr | Git ์ปค๋ฐ + GitHub PR ์๋ ์คํ |
linear_comment | Linear ํฐ์ผ์ ์ ๋ฐ์ดํธ ํฌ์คํ |
slack_thread_reply | Slack ์ค๋ ๋ ๋ต์ฅ |
4. ๐ ์ปจํ ์คํธ ์์ง๋์ด๋ง: AGENTS.md
๋ ํฌ ๋ฃจํธ์ AGENTS.md ํ์ผ์ ๋ฃ์ด๋๋ฉด, ์์ด์ ํธ๊ฐ ์์
์์ ์ ์๋์ผ๋ก ์ฝ์ด์ ์์คํ
ํ๋กฌํํธ์ ์ฃผ์
ํฉ๋๋ค. ํ์ ์ฝ๋ฉ ์ปจ๋ฒค์
, ํ
์คํธ ์๊ตฌ์ฌํญ, ์ํคํ
์ฒ ๊ฒฐ์ ์ฌํญ ๋ฑ์ ๋ด์๋๋ฉด ๋ผ์.
5. ๐ญ ์ค์ผ์คํธ๋ ์ด์ : ์๋ธ์์ด์ ํธ + ๋ฏธ๋ค์จ์ด
- ์๋ธ์์ด์ ํธ: ๋ณต์กํ ์์
์
task๋๊ตฌ๋ก ์์ ์์ด์ ํธ์๊ฒ ์์. ๊ฐ ์๋ธ์์ด์ ํธ๋ ๋ ๋ฆฝ๋ ์ปจํ ์คํธ๋ฅผ ๊ฐ์ง - ๋ฏธ๋ค์จ์ด: ๊ฒฐ์ ๋ก ์ ๋ก์ง์ ์์ด์ ํธ ๋ฃจํ์ ์ฃผ์
check_message_queue_before_model: ์์ ์ค ๋์ฐฉํ ๋ฉ์์ง๋ฅผ ๋ค์ ๋ชจ๋ธ ํธ์ถ ์ ์ ์ฃผ์open_pr_if_needed: ์์ด์ ํธ๊ฐ PR์ ์ ์ด๋ฉด ์๋์ผ๋ก ์ด์ด์ฃผ๋ ์์ ๋ง
6. ๐ ํธ์ถ ๋ฐฉ์: Slack, Linear, GitHub
๊ฐ๋ฐ์๋ค์ด ์ด๋ฏธ ์ฐ๋ ๋๊ตฌ์์ ๋ฐ๋ก ํธ์ถํ ์ ์์ด์.
- Slack: ๋ด ๋ฉ์ โ ์ค๋ ๋์์ ์ํ ์ ๋ฐ์ดํธ + PR ๋งํฌ ๋ต์ฅ
- Linear: ์ด์์
@openswe๋๊ธ โ ๐ ๋ฐ์ ํ ๊ฒฐ๊ณผ๋ฅผ ๋๊ธ๋ก ํฌ์คํ - GitHub: ์์ด์ ํธ๊ฐ ๋ง๋ PR์
@opensweํ๊ทธ โ ๋ฆฌ๋ทฐ ํผ๋๋ฐฑ ๋ฐ์ ํ ๊ฐ์ ๋ธ๋์น์ ํธ์
7. โ ๊ฒ์ฆ: ํ๋กฌํํธ ๊ธฐ๋ฐ + ์์ ๋ง
๋ฆฐํฐ, ํฌ๋งคํฐ, ํ
์คํธ๋ฅผ ์ปค๋ฐ ์ ์ ์คํํ๋๋ก ์ง์ํ๊ณ , open_pr_if_needed ๋ฏธ๋ค์จ์ด๊ฐ ์ต์ข
์์ ๋ง ์ญํ ์ ํฉ๋๋ค.
๋ด๋ถ ๊ตฌํ์ฒด๋ค๊ณผ ๋น๊ต
| ํญ๋ชฉ | Open SWE | Stripe (Minions) | Ramp (Inspect) | Coinbase (Cloudbot) |
|---|---|---|---|---|
| ๊ธฐ๋ฐ | Deep Agents/LangGraph | Goose ํฌํฌ | OpenCode ์กฐํฉ | ์ฒ์๋ถํฐ ์ง์ ๊ฐ๋ฐ |
| ์๋๋ฐ์ค | ํ๋ฌ๊ฑฐ๋ธ | AWS EC2 | Modal | ์์ฒด ์ธํ๋ผ |
| ๋๊ตฌ ์ | ~15๊ฐ | ~500๊ฐ | OpenCode SDK | MCPs + ์ปค์คํ |
| ํธ์ถ ๋ฐฉ์ | Slack, Linear, GitHub | Slack + ๋ฒํผ | Slack + ์น + ํฌ๋กฌ ํ์ฅ | Slack ๋ค์ดํฐ๋ธ |
์ปค์คํฐ๋ง์ด์ง ํฌ์ธํธ
Open SWE๋ ์์ฑํ์ด ์๋ ์์์ ์ ๋๋ค. ๋ชจ๋ ์ฃผ์ ์ปดํฌ๋ํธ๋ฅผ ๊ต์ฒดํ ์ ์์ด์.
- ์๋๋ฐ์ค ํ๋ก๋ฐ์ด๋ ๊ต์ฒด
- ๋ชจ๋ธ ๋ณ๊ฒฝ (๊ธฐ๋ณธ๊ฐ: Claude Opus 4)
- ๋ด๋ถ API/๋ฐฐํฌ ์์คํ ์ฉ ๋๊ตฌ ์ถ๊ฐ
- Slack/Linear/GitHub ํธ๋ฆฌ๊ฑฐ ์์
- ๋ฏธ๋ค์จ์ด๋ก ์น์ธ ๊ฒ์ดํธ, ๋ก๊น , ์์ ์ฒดํฌ ์ถ๊ฐ
๋ง๋ฌด๋ฆฌ
Open SWE๋ "AI ์ฝ๋ฉ ์์ด์ ํธ๋ฅผ ์ฐ๋ฆฌ ํ์ ๋์ ํ๊ณ ์ถ์๋ฐ ์ด๋์๋ถํฐ ์์ํด์ผ ํ ์ง ๋ชจ๋ฅด๊ฒ ๋ค"๋ ํ์ ์ํ ํ๋ ์์ํฌ์ ๋๋ค. Stripe, Ramp, Coinbase๊ฐ ์๊ฐ์์ ๊ฑธ์ณ ์๋ ดํ ์ํคํ ์ฒ ํจํด์ ์คํ์์ค๋ก ๊ณต๊ฐํ ๊ฒ์ด๊ธฐ ๋๋ฌธ์ ์์ํ์๋ ๋ถ๋ค์๊ฒ ์ข์ ์ ํ์ด ๋ ๊ฒ ๊ฐ์ต๋๋ค. MIT ๋ผ์ด์ ์ค์ด๊ณ , ๊ธฐ๋ณธ LLM์ Claude Opus 4 ๊ธฐ๋ฐ์ผ๋ก ๋์ํฉ๋๋ค.
- ๐ GitHub: https://github.com/langchain-ai/open-swe
- ๐ ๋ธ๋ก๊ทธ: https://blog.langchain.com/open-swe-an-open-source-framework-for-internal-coding-agents/
- ๐ Deep Agents ๋ฌธ์: https://docs.langchain.com/oss/python/deepagents
