๋ณธ๋ฌธ์œผ๋กœ ๊ฑด๋„ˆ๋›ฐ๊ธฐ

ยฉ 2026 Molayo

Qiitaํ—ค๋“œ๋ผ์ธ2026. 06. 05. 15:20

๐Ÿง  GBrain์ด๋ž€ โ€” AI ์—์ด์ „ํŠธ์—๊ฒŒ '๋‹ต์„ ๋Œ๋ ค์ฃผ๋Š” ๋‡Œ'๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ์ง€์‹ ๋Ÿฐํƒ€์ž„

์š”์•ฝ

GBrain์€ AI ์—์ด์ „ํŠธ์—๊ฒŒ ๋‹จ์ˆœ ๊ฒ€์ƒ‰์„ ๋„˜์–ด ํ•ฉ์„ฑ๋œ ๋‹ต๋ณ€์„ ์ œ๊ณตํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ์ง€์‹ ๋Ÿฐํƒ€์ž„์ž…๋‹ˆ๋‹ค. Garry Tan์ด ๊ฐœ๋ฐœํ•˜์˜€์œผ๋ฉฐ, ์ง€์‹ ๊ทธ๋ž˜ํ”„์™€ ํ•ฉ์„ฑ ๋ ˆ์ด์–ด๋ฅผ ํ†ตํ•ด ์—์ด์ „ํŠธ๊ฐ€ ๋งฅ๋ฝ์„ ์œ ์ง€ํ•˜๊ณ  ์ •ํ™•ํ•œ ๋‹ต์„ ๋„์ถœํ•˜๋„๋ก ๋•์Šต๋‹ˆ๋‹ค.

ํ•ต์‹ฌ ํฌ์ธํŠธ

  • ๋‹จ์ˆœ ํŽ˜์ด์ง€ ๋ชฉ๋ก์ด ์•„๋‹Œ ์ถœ์ฒ˜๊ฐ€ ํฌํ•จ๋œ ํ•ฉ์„ฑ๋œ ๋‹ต๋ณ€ ์ œ๊ณต
  • ์ž๊ธฐ ๋ฐฐ์„ ํ˜• ์ง€์‹ ๊ทธ๋ž˜ํ”„์™€ ํ•ฉ์„ฑ ๋ ˆ์ด์–ด ์•„ํ‚คํ…์ฒ˜ ํ™œ์šฉ
  • Postgres, pgvector, WASM ๊ธฐ๋ฐ˜์˜ ๊ธฐ์ˆ  ์Šคํƒ ๊ตฌ์„ฑ
  • ์—์ด์ „ํŠธ์˜ ๊ธฐ์–ต๋ ฅ ์œ ์ง€ ๋ฐ ์ค‘๋ณต ์ž‘์—… ๋ฐฉ์ง€ ์†”๋ฃจ์…˜

GBrain์€ AI ์—์ด์ „ํŠธ์—๊ฒŒ '์ง€์‹์˜ ๋‡Œ(brain layer)'๋ฅผ ๋ถ€์—ฌํ•˜๋Š” ์˜คํ”ˆ์†Œ์Šค ์ง€์‹ ๋Ÿฐํƒ€์ž„(Knowledge Runtime)์ž…๋‹ˆ๋‹ค. ์ œ์ž‘์ž๋Š” Y Combinator์˜ President ๊ฒธ CEO์ธ Garry Tan์ด๋ฉฐ, ๋ผ์ด์„ ์Šค๋Š” MIT, ๊ตฌํ˜„ ์–ธ์–ด๋Š” TypeScript๋ฅผ ์‚ฌ์šฉํ•˜๋ฉฐ, GitHub์—์„œ 2๋งŒ ๊ฐœ ์ด์ƒ์˜ ์Šคํƒ€(Star)๋ฅผ ๊ธฐ๋กํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค (2026๋…„ 6์›” ๊ธฐ์ค€).

GBrain์˜ ์œ„์น˜๋Š” ๋ฆฌํฌ์ง€ํ† ๋ฆฌ ๋„์ž…๋ถ€์˜ ํ•œ ๋ฌธ์žฅ์— ์ž˜ ๋‚˜ํƒ€๋‚˜ ์žˆ์Šต๋‹ˆ๋‹ค. "Search gives you raw pages. GBrain gives you the answer. (๊ฒ€์ƒ‰์€ ๊ฐ€๊ณต๋˜์ง€ ์•Š์€ ํŽ˜์ด์ง€๋ฅผ ์ œ๊ณตํ•˜์ง€๋งŒ, GBrain์€ ๋‹ต์„ ์ œ๊ณตํ•œ๋‹ค)". ์ผ๋ฐ˜์ ์ธ ๊ฐœ์ธ ์ง€์‹ ๋„๊ตฌ๊ฐ€ ํ‚ค์›Œ๋“œ ์ผ์น˜๋‚˜ ๋ฒกํ„ฐ ๊ฒ€์ƒ‰(Vector Search)์„ ํ†ตํ•ด '๊ด€๋ จ ์žˆ์–ด ๋ณด์ด๋Š” ํŽ˜์ด์ง€ ๋ชฉ๋ก'์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ๊ณผ ๋‹ฌ๋ฆฌ, GBrain์€ ์—ฌ๋Ÿฌ ํŽ˜์ด์ง€๋ฅผ ๊ฐ€๋กœ์งˆ๋Ÿฌ **ํ•ฉ์„ฑ๋œ ๋‹ต(Synthesized Answer)**์„ ์ถœ์ฒ˜ ๋ฐ '์•„์ง ํŒŒ์•…๋˜์ง€ ์•Š์€ ์‚ฌํ•ญ'์— ๋Œ€ํ•œ ์ฃผ์„๊ณผ ํ•จ๊ป˜ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ธฐ์‚ฌ์—์„œ ์•Œ ์ˆ˜ ์žˆ๋Š” ๋‚ด์šฉ:

  • ๐Ÿ” GBrain์ด '๊ฒ€์ƒ‰'๊ณผ ๋ฌด์—‡์ด ๋‹ค๋ฅธ๊ฐ€ (ํŽ˜์ด์ง€ ๋ชฉ๋ก์ด ์•„๋‹Œ ๋‹ต์„ ๋ฐ˜ํ™˜ํ•œ๋‹ค๋Š” ์„ค๊ณ„)
  • โœจ ๋‘ ๊ฐ€์ง€ ์ฐจ๋ณ„ํ™” ์š”์†Œ โ€” ํ•ฉ์„ฑ ๋ ˆ์ด์–ด(Synthesis Layer)์™€ ์ž๊ธฐ ๋ฐฐ์„ ํ˜• ์ง€์‹ ๊ทธ๋ž˜ํ”„(Self-wiring Knowledge Graph)
  • ๐Ÿ—๏ธ ์•„ํ‚คํ…์ฒ˜ โ€” Postgres + pgvector (WASM) ๋ฐ 'Markdown ๊ธฐ์ˆ ' ๊ตฌ์„ฑ
  • ๐ŸŽฏ ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ๊ฒ€์ƒ‰ + ๊ทธ๋ž˜ํ”„์˜ 4๋‹จ๊ณ„ ๊ตฌ์กฐ์™€ ๊ทธ ์‹ค์ธก ๋ฒค์น˜๋งˆํฌ
  • ๐ŸŒ™ ๋ฐ์ดํ„ฐ ์ž…๋ ฅ ๋ฐฉ์‹๊ณผ ์•ผ๊ฐ„์— ๋˜‘๋˜‘ํ•ด์ง€๋Š” '๋“œ๋ฆผ ์‚ฌ์ดํด(Dream Cycle)'
  • ๐Ÿ—‚๏ธ ๋ธŒ๋ ˆ์ธ(Brain) / ์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ(Agent Memory) / ์„ธ์…˜(Session)์˜ 3์ธต ๊ตฌ์กฐ ํ™œ์šฉ๋ฒ•
  • โš™๏ธ ๋„์ž… ๋ฐฉ๋ฒ• (์—์ด์ „ํŠธ์— ์˜ํ•œ ์ž๋™ ์„ค์น˜ / CLI / MCP) ๋ฐ 3๊ฐ€์ง€ ๋ฐฐํฌ ๊ตฌ์„ฑ

์˜ˆ์ƒ ๋…์ž๋Š” AI ์—์ด์ „ํŠธ์—๊ฒŒ ์˜์†์ ์ธ ์ง€์‹ ๊ธฐ๋ฐ˜์„ ๊ฐ–๊ฒŒ ํ•˜๊ณ  ์‹ถ์€ ๊ฐœ๋ฐœ์ž ๋ฐ ํŒ€ ๋ฆฌ๋”์ž…๋‹ˆ๋‹ค.

GBrain์˜ ์ถœ๋ฐœ์ ์€ Garry Tan ์”จ๊ฐ€ ์ž์‹ ์˜ AI ์—์ด์ „ํŠธ(OpenClaw / Hermes)๋ฅผ ์šด์˜ํ•˜๋Š” ๊ณผ์ •์—์„œ ๋งž๋‹ฅ๋œจ๋ฆฐ ๋‘ ๊ฐ€์ง€ ๋ฌธ์ œ์˜€์Šต๋‹ˆ๋‹ค. ๊ณต์‹ Origin ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด, ์ดˆ๊ธฐ ๋ฒ„์ „์€ ์Šคํ‚ฌ๊ณผ ๋ธŒ๋ ˆ์ธ์„ ๊ฐ–์ถ”๊ณ  ์žˆ์—ˆ์œผ๋‚˜ ๋ธŒ๋ ˆ์ธ์˜ ์‹ค์ฒด๋Š” 'Markdown ํŒŒ์ผ์ด ๋‚˜์—ด๋œ ํ‰๋ฉด์ ์ธ ๋””๋ ‰ํ† ๋ฆฌ'์˜€์œผ๋ฉฐ, ๊ฒ€์ƒ‰์€ ripgrep์„ ์‚ฌ์šฉํ•˜๊ณ  ๊ธฐ์–ต์€ ์ง๊ด€์— ์˜์กดํ•˜๋Š” ์ˆ˜์ค€์ด์—ˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

๊ทธ ๊ณผ์ •์—์„œ ๋“œ๋Ÿฌ๋‚œ ๋ฌธ์ œ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

  • ์—์ด์ „ํŠธ๊ฐ€ ๋Œ€ํ™”๋ฅผ ๋„˜์–ด์„œ๋Š” ์‚ฌํ•ญ์„ ์žŠ์–ด๋ฒ„๋ฆฐ๋‹ค. ์ƒˆ๋กœ์šด ์„ธ์…˜์ด ์‹œ์ž‘๋  ๋•Œ๋งˆ๋‹ค ๊ธฐ๋ณธ์ ์ธ ์งˆ๋ฌธ์„ ๋‹ค์‹œ ํ•ด์•ผ ํ•˜๋ฉฐ, ์ง€๋‚œ์ฃผ์— ์†Œ๊ฐœ๋œ ์‚ฌ๋žŒ์˜ ์ด๋ฆ„์กฐ์ฐจ ์‚ฌ๋ผ์ง„๋‹ค.
  • ์—์ด์ „ํŠธ๊ฐ€ ์ž‘์—…์„ ์ค‘๋ณต์‹œํ‚จ๋‹ค. ๋™์ผํ•œ ํšŒ์‚ฌ์— ๊ด€ํ•œ ๋‘ ๊ฐœ์˜ ์‹ ํ˜ธ๊ฐ€ ๋‘ ๊ฐœ์˜ ์„œ๋กœ ๋‹ค๋ฅธ ํŽ˜์ด์ง€๊ฐ€ ๋˜๊ณ , ๋™์ผ ์ธ๋ฌผ๊ณผ์˜ ์„ธ ๋ฒˆ์˜ ํšŒ์˜๊ฐ€ ์„ธ ๊ฐœ์˜ ๋ฌด์ƒ๊ด€ ํƒ€์ž„๋ผ์ธ์œผ๋กœ ๋‚จ๋Š”๋‹ค.

์ด ๋‘ ๊ฐ€์ง€๋ฅผ 'ํ—ˆ์šฉํ•  ์ˆ˜ ์—†๋‹ค'๊ณ  ๊ฒฐ์ •ํ–ˆ์„ ๋•Œ ๋งŒ๋“ค์–ด์ง„ ๊ฒƒ์ด GBrain์ž…๋‹ˆ๋‹ค. ๊ตฌ์ฒด์ ์ธ ์˜ˆ๋ฅผ ๋ณด๋ฉด ์ฐจ์ด๊ฐ€ ๋ช…ํ™•ํ•ฉ๋‹ˆ๋‹ค. ์˜ˆ๋ฅผ ๋“ค์–ด "๋‚ด์ผ Alice์™€์˜ ํšŒ์˜ ์ „์— ๋ฌด์—‡์„ ์•Œ๊ณ  ์žˆ์–ด์•ผ ํ•ด?"๋ผ๊ณ  ๋ฌผ์—ˆ์„ ๋•Œ, ๋งŽ์€ ๋„๊ตฌ๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์€ ํŽ˜์ด์ง€ ๋ชฉ๋ก์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

1. people/alice โ€” Alice runs engineering at Acme...
2. meetings/2026-03-15-alice-q1 โ€” Q1 product review with Alice...
3. customers/acme โ€” Acme is a series-B fintech we work with...
...

์‚ฌ์šฉ์ž๋Š” ์ด 5๊ฐœ์˜ ํŽ˜์ด์ง€๋ฅผ ์ง์ ‘ ์—ด์–ด์„œ ์ฝ๊ณ  ์ค€๋น„ํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด, GBrain์€ ์ถœ์ฒ˜๊ฐ€ ํฌํ•จ๋œ ๋‹ต ๊ทธ ์ž์ฒด๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค.

Alice๋Š” Acme(์‹œ๋ฆฌ์ฆˆ B ํ•€ํ…Œํฌ ๊ธฐ์—…)์—์„œ ์—”์ง€๋‹ˆ์–ด๋ง์„ ์ด๊ด„ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๋งˆ์ง€๋ง‰์œผ๋กœ ๋Œ€ํ™”ํ•œ ๋‚ด์šฉ์€ 4/22 ๊ฐ€๊ฒฉ์— ๊ด€ํ•œ ์งง์€ ๊ต์‹ ์ด์—ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋กœ๋ถ€ํ„ฐ ๋ฏธ๊ฒฐ ์‚ฌํ•ญ์ด 3๊ฐ€์ง€ ์žˆ์Šต๋‹ˆ๋‹ค:
...

๋๋ถ€๋ถ„์˜ '์ฃผ์˜ ์‚ฌํ•ญ'์ด GBrain์ด ๋‹ค๋ฅธ ๊ฒƒ๊ณผ ์ฐจ๋ณ„ํ™”๋˜๋Š” ์ง€์ ์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ์ฃผ์žฅ์—๋Š” ์ถœ์ฒ˜ ํŽ˜์ด์ง€๊ฐ€ ์—ฐ๊ฒฐ๋˜๋ฉฐ, ๋‚˜์•„๊ฐ€ "๋ธŒ๋ ˆ์ธ์ด ์•„์ง ์•Œ์ง€ ๋ชปํ•˜๋Š” ๊ฒƒ(์ •๋ณด๊ฐ€ ์˜ค๋ž˜๋จ, ์ถœ์ฒ˜ ์—†์Œ, ๋ชจ์ˆœ๋จ)"์„ ๋ช…์‹œํ•ฉ๋‹ˆ๋‹ค. ๊ฒ€์ƒ‰ ์—”์ง„์€ ํŽ˜์ด์ง€๋ฅผ ์ฐพ์•„๋‚ด๊ณ , ๋‡Œ๋Š” ๊ทธ๊ฒƒ์„ ์ฝ๊ณ  ๋‹ต์„ ์ž‘์„ฑํ•œ๋‹ค๋Š” ์ฐจ์ด๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๋„ํ‘œ์˜ ํ•ต์‹ฌ์€ ๊ฒ€์ƒ‰ ๋„๊ตฌ๊ฐ€ '์žฌ๋ฃŒ๋ฅผ ์ฐพ๋Š”' ๋‹จ๊ณ„์—์„œ ๋ฉˆ์ถ”๋Š” ๋ฐ˜๋ฉด, GBrain์€ ๋™์ผํ•œ ์žฌ๋ฃŒ๋ฅผ ์ฝ๊ณ  '๋‹ต์„ ์ž‘์„ฑํ•˜๋Š”' ๋‹จ๊ณ„๊นŒ์ง€ ๋‚˜์•„๊ฐ„๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

GBrain์€ ๋งŽ์€ ๊ฐœ์ธ ์ง€์‹ ๋„๊ตฌ๊ฐ€ ๊ฐ–์ถ˜ ํ‚ค์›Œ๋“œ ์ผ์น˜๋‚˜ grep ๊ธฐ๋Šฅ์„ ๋‚ดํฌํ•˜๋ฉด์„œ๋„, ๋‹ค๋ฅธ ๋„๊ตฌ๋“ค์ด ์ž˜ ํฌํ•จํ•˜์ง€ ์•Š๋Š” ๋‘ ๊ฐ€์ง€ ๊ธฐ๋Šฅ์„ ์กฐํ•ฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ฒซ ๋ฒˆ์งธ๋Š” ์‹ค์ œ ๋‹ต๋ณ€์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ํ•ฉ์„ฑ ๋ ˆ์ด์–ด (Synthesis Layer)์ž…๋‹ˆ๋‹ค. ์‚ฌ๋žŒ, ํšŒ์‚ฌ, ํ”„๋กœ์ ํŠธ, ์•„์ด๋””์–ด๋ฅผ ๊ฐ€๋กœ์งˆ๋Ÿฌ ์ถœ์ฒ˜๊ฐ€ ํฌํ•จ๋œ ์‚ฐ๋ฌธ(prose) ํ˜•ํƒœ๋กœ ๋‹ต๋ณ€์„ ํ•ฉ์„ฑํ•ฉ๋‹ˆ๋‹ค. "์ฟผ๋ฆฌ์— ์–ธ๊ธ‰๋œ 10๊ฐœ์˜ ์ฒญํฌ(chunk)"๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒƒ์ด ์•„๋‹ˆ๋ผ, "์ด ๋‹ต๋ณ€ + ์ถœ์ฒ˜ + ์•„์ง ํŒŒ์•…๋˜์ง€ ์•Š์€ ์‚ฌํ•ญ์— ๋Œ€ํ•œ ์ฃผ์„"์„ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ๋ฐ”๋กœ ์ด **๊ฐญ ๋ถ„์„ (Gap Analysis)**์ด์•ผ๋ง๋กœ GBrain์˜ ์‚ฌ์šฉ ๋ฐฉ์‹์„ ๋ฐ”๊พธ๋Š” ํ•ต์‹ฌ ์š”์†Œ๋กœ ์ž๋ฆฌ๋งค๊น€ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋‘ ๋ฒˆ์งธ๋Š” ์ž๋™์œผ๋กœ ์—ฐ๊ฒฐ๋˜์–ด ๊ฐ€๋Š” ์ง€์‹ ๊ทธ๋ž˜ํ”„ (Knowledge Graph)์ž…๋‹ˆ๋‹ค. ๋ชจ๋“  ํŽ˜์ด์ง€๋ฅผ ์ž‘์„ฑํ•  ๋•Œ ์—”ํ‹ฐํ‹ฐ ์ฐธ์กฐ (entity reference)๋ฅผ ์ถ”์ถœํ•˜์—ฌ, attended (์ฐธ์„ํ•จ) / works_at (์†Œ์†๋จ) / invested_in (ํˆฌ์žํ•จ) / founded (์ฐฝ์—…ํ•จ) / advises (์กฐ์–ธํ•จ)์™€ ๊ฐ™์€ **ํƒ€์ž…์ด ์ง€์ •๋œ ์—์ง€ (typed edge)**๋ฅผ LLM ํ˜ธ์ถœ ์—†์ด (zero LLM calls) ์ƒ์„ฑํ•ฉ๋‹ˆ๋‹ค. ์ด๋ฅผ ํ†ตํ•ด "Acme AI์—์„œ ๋ˆ„๊ฐ€ ์ผํ•˜๊ณ  ์žˆ๋Š”๊ฐ€?", "Bob์€ ์ด๋ฒˆ ๋ถ„๊ธฐ์— ๋ฌด์—‡์— ํˆฌ์žํ–ˆ๋Š”๊ฐ€?"์™€ ๊ฐ™์ด ๋ฒกํ„ฐ ๊ฒ€์ƒ‰ (vector search)๋งŒ์œผ๋กœ๋Š” ๋„๋‹ฌํ•  ์ˆ˜ ์—†๋Š” ์งˆ๋ฌธ์— ๋‹ตํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

๋‹ค์Œ ๊ทธ๋ฆผ์€ ํŽ˜์ด์ง€ ์ž‘์„ฑ์œผ๋กœ๋ถ€ํ„ฐ ๊ทธ๋ž˜ํ”„๊ฐ€ ์„ฑ์žฅํ•˜๋Š” ํ๋ฆ„์„ ๋ณด์—ฌ์ค๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ ์—์ง€ ์ถ”์ถœ์ด 3๊ฐœ์˜ ์ •๊ทœ ํ‘œํ˜„์‹๊ณผ ๋‹จ 1ํšŒ์˜ SQL๋งŒ์œผ๋กœ ์™„๊ฒฐ๋˜๋ฉฐ, LLM์„ ์ „ํ˜€ ์‚ฌ์šฉํ•˜์ง€ ์•Š๋Š”๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. ๊ณต์‹ ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด, ๊ทธ๋ž˜ํ”„๋Š” ๋งค๋ฒˆ ์ž‘์„ฑํ•  ๋•Œ๋งˆ๋‹ค ๊ฑฐ์˜ ์ œ๋กœ ์ฝ”์ŠคํŠธ๋กœ ์„ฑ์žฅํ•˜๋ฉฐ, 1๋งŒ 7์ฒœ ํŽ˜์ด์ง€ ๊ทœ๋ชจ์˜ GBrain์—์„œ๋„ ๊ทธ๋ž˜ํ”„ ์ „์ฒด ์ถ”์ถœ์ด ๋ช‡ ์ดˆ ๋งŒ์— ์™„๋ฃŒ๋œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ทธ๋ž˜ํ”„์˜ ํšจ๊ณผ๋Š” ๋ฒค์น˜๋งˆํฌ์—์„œ๋„ ๋‚˜ํƒ€๋‚ฉ๋‹ˆ๋‹ค. ๊ณต์‹ README์™€ ๋ฌธ์„œ๊ฐ€ ๋ณด์—ฌ์ฃผ๋Š” BrainBench (240 ํŽ˜์ด์ง€์˜ Opus ์ƒ์„ฑ ๋ฆฌ์น˜ ์‚ฐ๋ฌธ ์ฝ”ํผ์Šค)์˜ ์ˆ˜์น˜๋Š” ๋‹ค์Œ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ „๋žตP@5R@5๋น„๊ณ 
ripgrep BM25 ์ „์šฉ์•ฝ 18์•ฝ 75์–ดํœ˜ ์ผ์น˜(lexical match) ๊ธฐ๋ฐ˜์˜ ๋ฒ ์ด์Šค๋ผ์ธ
GBrain ๊ธฐ๋ณธ๊ฐ’ (ํ’€์Šคํƒ)49.197.9๊ทธ๋ž˜ํ”„ + ์ถ”์ถœ ํ’ˆ์งˆ์˜ ํ–ฅ์ƒ

๊ณต์‹ ๋ฌธ์„œ๋Š” ๊ทธ๋ž˜ํ”„์™€ ์ถ”์ถœ ํ’ˆ์งˆ์˜ ๊ณ ๋„ํ™”๋ฅผ ํ†ตํ•ด P@5๊ฐ€ +31.4 ํฌ์ธํŠธ ์ƒ์Šนํ–ˆ๋‹ค๊ณ  ์„ค๋ช…ํ•˜๋ฉฐ, "๊ทธ๋ž˜ํ”„๋Š” ๋ถ€์ˆ˜์ ์ธ ๊ธฐ๋Šฅ์ด ์•„๋‹ˆ๋ผ, ํ•˜์ค‘์„ ์ง€ํƒฑํ•˜๋Š” ๋ฒฝ (load-bearing wall)์ด๋‹ค"๋ผ๊ณ  ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

GBrain ๊ตฌ์„ฑ์˜ ํŠน์ง•์€ ๋ฌด๊ฑฐ์šด ์˜์กด์„ฑ์„ ๊ฐ€์ ธ์˜ค์ง€ ์•Š๋Š”๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๋Š” Postgres + pgvector๋ฅผ ์‚ฌ์šฉํ•˜์ง€๋งŒ, WASM ์ƒ์—์„œ ๋™์ž‘ํ•˜๋Š” PGLite๋ฅผ ์‚ฌ์šฉํ•จ์œผ๋กœ์จ "์„œ๋ฒ„ ์—†์ด 2์ดˆ ๋งŒ์— ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค๊ฐ€ ๊ตฌ๋™๋˜๋Š”" ์ƒํƒœ๋ฅผ ์‹คํ˜„ํ–ˆ์Šต๋‹ˆ๋‹ค (๊ณต์‹ ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด PGLite๋Š” ๊ฐœ์ธ์šฉ GBrain์—์„œ ๋Œ€๋žต 5๋งŒ ํŽ˜์ด์ง€ ๊ทœ๋ชจ๊นŒ์ง€ ๋Œ€์‘ํ•˜๋ฉฐ, ์ด๋ฅผ ์ดˆ๊ณผํ•˜๋Š” ๊ทœ๋ชจ๋‚˜ ์•ฝ 1,000๊ฐœ ์ด์ƒ์˜ ํŒŒ์ผ์ด ์žˆ๋Š” ๊ฒฝ์šฐ์—๋Š” Supabase๋ฅผ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค).

๊ทธ๋ฆฌ๊ณ  ์—์ด์ „ํŠธ์˜ ํ–‰๋™์„ ๊ฒฐ์ •ํ•˜๋Š” "์Šคํ‚ฌ (skill)"์€ ์ฝ”๋“œ๊ฐ€ ์•„๋‹Œ Markdown์œผ๋กœ ์ž‘์„ฑ๋˜๋ฉฐ, ์ด๋“ค์„ ๋ฌถ์–ด์ฃผ๋Š” ๊ฒƒ์€ ๋ผ์šฐํ„ฐ LLM์ด ์•„๋‹Œ ์ž‘์€ ํ…์ŠคํŠธ ํŒŒ์ผ์ž…๋‹ˆ๋‹ค. ์ „์ฒด ๊ตฌ์กฐ๋Š” ๋‹ค์Œ ๊ทธ๋ฆผ๊ณผ ๊ฐ™์Šต๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ ํด๋ผ์ด์–ธํŠธ๊ฐ€ MCP (Model Context Protocol)๋ฅผ ํ†ตํ•ด ์—”์ง„์— ์—ฐ๊ฒฐ๋˜๋ฉฐ, ์—”์ง„ ์ง€๋Šฅ์˜ ๋Œ€๋ถ€๋ถ„์ด "Markdown ์Šคํ‚ฌ"๊ณผ "๋ผ์šฐํŒ… ํ‘œ"๋กœ ์™ธ๋ถ€์— ๋ถ„๋ฆฌ๋˜์–ด ์žˆ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

์ด ์„ค๊ณ„์˜ ๋ฐฐ๊ฒฝ์—๋Š” Garry Tan์ด ์ œ์ฐฝํ•˜๋Š” **Thin Harness, Fat Skills (์–‡์€ ํ•˜๋„ค์Šค, ๋‘๊บผ์šด ์Šคํ‚ฌ)**๋ผ๋Š” ๊ฐœ๋…์ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ์˜ ์—์„ธ์ด์— ๋”ฐ๋ฅด๋ฉด, AI ์—์ด์ „ํŠธ์˜ ์ƒ์‚ฐ์„ฑ์„ ๊ฐ€๋ฅด๋Š” ๊ฒƒ์€ ๋ชจ๋ธ์˜ ๋˜‘๋˜‘ํ•จ์ด ์•„๋‹ˆ๋ผ, ๋ชจ๋ธ์„ ๊ฐ์‹ธ๋Š” "ํ•˜๋„ค์Šค (harness)"์™€ "์Šคํ‚ฌ (skill)"์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

  • **์Šคํ‚ฌ ํŒŒ์ผ (Skill file)**์€ "๋ฌด์—‡์„ ํ•˜๋Š”๊ฐ€ (WHAT)"๊ฐ€ ์•„๋‹ˆ๋ผ "์–ด๋–ป๊ฒŒ ํ•˜๋Š”๊ฐ€ (HOW)"๋ฅผ ๊ฐ€๋ฅด์น˜๋Š” ์žฌ์‚ฌ์šฉ ๊ฐ€๋Šฅํ•œ Markdown ์ ˆ์ฐจ์„œ์ž…๋‹ˆ๋‹ค. ํŒŒ๋ผ๋ฏธํ„ฐ๋ฅผ ์ทจํ•˜๊ณ  ์ธ์ž๋ฅผ ๋ณ€๊ฒฝํ•˜์—ฌ ํ˜ธ์ถœํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์—์„œ "๋ฉ”์„œ๋“œ ํ˜ธ์ถœ (method call)์ฒ˜๋Ÿผ ์ž‘๋™ํ•œ๋‹ค"๊ณ  ์„ค๋ช…๋ฉ๋‹ˆ๋‹ค.
  • **ํ•˜๋„ค์Šค (Harness)**๋Š” LLM์„ ์‹คํ–‰ํ•˜๋Š” ํ”„๋กœ๊ทธ๋žจ์œผ๋กœ, ๋ฃจํ”„ ์‹คํ–‰, ํŒŒ์ผ ์ฝ๊ธฐ/์“ฐ๊ธฐ, ์ปจํ…์ŠคํŠธ ๊ด€๋ฆฌ, ์•ˆ์ „์„ฑ ๊ฐ•์ œ๋งŒ์„ ๋‹ด๋‹นํ•˜๋Š” "์–‡์€" ์กด์žฌ๋กœ ์œ ์ง€ํ•ฉ๋‹ˆ๋‹ค. 40๊ฐœ ์ด์ƒ์˜ ๋„๊ตฌ ์ •์˜๋กœ ์ปจํ…์ŠคํŠธ๋ฅผ ์†Œ๋ชจํ•˜๋Š” "๋‘๊บผ์šด ํ•˜๋„ค์Šค"๋Š” ์•ˆํ‹ฐ ํŒจํ„ด์œผ๋กœ ๊ฐ„์ฃผ๋ฉ๋‹ˆ๋‹ค.
  • **๋ฆฌ์กธ๋ฒ„ (RESOLVER)**๋Š” "๋ฌธ๋งฅ์„ ์œ„ํ•œ ๋ผ์šฐํŒ… ํ‘œ"์ž…๋‹ˆ๋‹ค. ํƒœ์Šคํฌ ์œ ํ˜• X๊ฐ€ ๋‚˜ํƒ€๋‚˜๋ฉด ๋ฌธ์„œ Y๋ฅผ ๋จผ์ € ์ฝ๋Š”๋‹ค๋Š” ์‹์˜ ๋Œ€์‘ ๊ด€๊ณ„๋ฅผ ์ •์˜ํ•ฉ๋‹ˆ๋‹ค.

GBrain์€ ์ด๋Ÿฌํ•œ ์‚ฌ์ƒ์„ "GBrain (Brain)"์ด๋ผ๋Š” ํ˜•ํƒœ๋กœ ๊ตฌ์ฒดํ™”ํ•œ ๊ฒƒ์ด๋ผ๊ณ  ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.

GBrain์˜ ๊ฒ€์ƒ‰์ด 'ํŽ˜์ด์ง€ ๋ชฉ๋ก์œผ๋กœ์„œ ์šฐ์ˆ˜'ํ•œ ์ด์œ ๋Š” 4๊ฐ€์ง€ ์ „๋žต์„ ์ค‘์ฒฉํ•˜๊ณ  ์žˆ๊ธฐ ๋•Œ๋ฌธ์ž…๋‹ˆ๋‹ค. ๊ณต์‹ Retrieval (๊ฒ€์ƒ‰) ๋ฌธ์„œ์—์„œ๋Š” ๋ฒกํ„ฐ ๊ฒ€์ƒ‰(Vector Search)๋งŒ์œผ๋กœ๋Š” ์‹ค์ œ ๊ฐœ์ธ ์ง€์‹ ๊ฒ€์ƒ‰์— ์—ญ๋ถ€์กฑ์ด๋ผ๊ณ  ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ 4๊ฐ€์ง€ ์ „๋žต์ด ์ƒํ˜ธ ๋ณด์™„ ๊ด€๊ณ„์— ์žˆ๋‹ค๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๋ฌธ์„œ๋Š” "๊ฐ ์ „๋žต์€ ๋‹จ๋…์œผ๋กœ๋Š” ์‹คํŒจํ•œ๋‹ค"๋ผ๊ณ  ์ •๋ฆฌํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

๋ฒกํ„ฐ(Vector)๋งŒ ์‚ฌ์šฉ: ์ž„๋ฒ ๋”ฉ(Embedding)์— ์ง์ ‘ ์ธ์ฝ”๋”ฉ๋˜์ง€ ์•Š์€ ์‚ฌ์‹ค ๊ด€๊ณ„๋ฅผ ๋†“์นจ ("Garry์˜ ํฌํŠธํด๋ฆฌ์˜ค ๊ธฐ์—…"์„ ๊ฒ€์ƒ‰ํ–ˆ์„ ๋•Œ ํฌํŠธํด๋ฆฌ์˜ค ์ด๋ก ์— ๊ด€ํ•œ ์—์„ธ์ด๋ฅผ ๋ฐ˜ํ™˜ํ•จ).

ํ‚ค์›Œ๋“œ(Keyword)๋งŒ ์‚ฌ์šฉ: ์œ ์˜์–ด(Paraphrasing)์— ์ทจ์•ฝ ("retrieval"์„ ์ฐพ์œผ๋ฉด "search ranking"์ด๋ผ๊ณ  ์ ํžŒ ํŽ˜์ด์ง€๋ฅผ ๋†“์นจ).

๊ทธ๋ž˜ํ”„(Graph)๋งŒ ์‚ฌ์šฉ: "Alice์˜ ์ด์›ƒ"์€ ์ž˜ ์ฐพ์•„๋‚ด์ง€๋งŒ, ์•„์ง ๋งํฌ๋˜์ง€ ์•Š์€ ๊ฒƒ์—๋Š” ๋ฌด๋ ฅํ•จ.

๊ทธ๋ž˜ํ”„ ์—†๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ(Hybrid): "X๋ž€ ๋ฌด์—‡์ธ๊ฐ€?"์—๋Š” ๊ฐ•ํ•˜์ง€๋งŒ, "Y์™€ X์˜ ๊ด€๊ณ„๋Š”?"๊ณผ ๊ฐ™์€ ๊ทธ๋ž˜ํ”„์ ์ธ ์งˆ๋ฌธ์—๋Š” ์•ฝํ•จ.

์—ฌ๊ธฐ์— ๋” ์ƒ์œ„ ๋‹จ๊ณ„๋กœ **๋ฆฌ๋žญ์ปค(Reranker)**๊ฐ€ ์œ„์น˜ํ•ฉ๋‹ˆ๋‹ค. v0.36.0.0 ๋ฒ„์ „์—์„œ๋Š” ZeroEntropy์˜ zerank-2๊ฐ€ ๊ธฐ๋ณธ ๋ฆฌ๋žญ์ปค๋กœ ํƒ‘์žฌ๋˜์—ˆ์œผ๋ฉฐ, ๋ฌธ์„œ์— ๋”ฐ๋ฅด๋ฉด ์‹ค์ œ ์ฝ”ํผ์Šค(Corpus) 20๊ฐœ ์ฟผ๋ฆฌ์—์„œ Top 1 ๊ฒฐ๊ณผ๋ฅผ 60% ๊ต์ฒดํ•œ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ๋น„์šฉ์€ p50 ๊ธฐ์ค€ +150ms, ์•ฝ $0.025/M ํ† ํฐ์ด๋ฉฐ, ๊ฒ€์ƒ‰ ํ›„์— LLM ์ฒ˜๋ฆฌ๊ฐ€ ์ด์–ด์ง€๋Š” ์—์ด์ „ํŠธ ๋ฃจํ”„(Agent Loop)์—์„œ๋Š” ์ง€์—ฐ์ด ๊ฑฐ์˜ ๋А๊ปด์ง€์ง€ ์•Š๋Š”๋‹ค๊ณ  ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. ๋žญํ‚น์€ ์†Œ์Šค(Source)์—๋„ ๋ฏผ๊ฐํ•˜์—ฌ, originals/๋‚˜ concepts/์™€ ๊ฐ™์€ ์—„์„ ๋œ ์ฝ˜ํ…์ธ ๊ฐ€ daily/๋‚˜ media/์™€ ๊ฐ™์€ ๋Œ€๋Ÿ‰์˜ ์ฝ˜ํ…์ธ ๋ณด๋‹ค ์ƒ์œ„์— ์˜ค๋„๋ก SQL ๋ ˆ์ด์–ด์—์„œ ๊ฐ€์ค‘์น˜(Weighting)๊ฐ€ ๋ถ€์—ฌ๋ฉ๋‹ˆ๋‹ค.

GBrain์—๋Š” ์„ฑ๊ฒฉ์ด ๋‹ค๋ฅธ ๋‘ ๊ฐ€์ง€ ์ฟผ๋ฆฌ ๋ฐฉ๋ฒ•์ด ์žˆ์Šต๋‹ˆ๋‹ค.

# ์ƒ(Raw) ๊ฒ€์ƒ‰: ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šค์ฝ”์–ด ์ƒ์œ„์˜ ํŽ˜์ด์ง€๋ฅผ ๋ฐ˜ํ™˜. ๋น ๋ฆ„, LLM ๋น„์šฉ ์—†์Œ
gbrain search "who's working on AI agents at portfolio companies?"
# ๋ธŒ๋ ˆ์ธ(Brain) ๋ ˆ์ด์–ด: ์ถœ์ฒ˜ ํฌํ•จ + ๊ฐญ ๋ถ„์„(Gap Analysis)์ด ํฌํ•จ๋œ ํ•ฉ์„ฑ๋œ ๋‹ต๋ณ€
...

๋‘ ๋ฐฉ์‹์€ ์—ญํ• ์ด ๋‹ค๋ฆ…๋‹ˆ๋‹ค. gbrain search๋Š” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ ์Šค์ฝ”์–ด(๋ฒกํ„ฐ + ํ‚ค์›Œ๋“œ + RRF + ์†Œ์Šค ํ‹ฐ์–ด ๋ณด์ • + ๋ฆฌ๋žญ์ปค)๋ฅผ ํ†ตํ•ด ์ƒ์œ„ ํŽ˜์ด์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•ฉ๋‹ˆ๋‹ค. ์—์ด์ „ํŠธ์˜ ์ปจํ…์ŠคํŠธ(Context)์— ์žฌ๋ฃŒ๋ฅผ ํ˜๋ ค๋„ฃ๊ณ  ์‹ถ์„ ๋•Œ๋‚˜ ์ธ์šฉ ์ถœ์ฒ˜๋ฅผ ์ฐพ๊ณ  ์‹ถ์„ ๋•Œ ์ ํ•ฉํ•ฉ๋‹ˆ๋‹ค. ๋ฐ˜๋ฉด gbrain think๋Š” ๋™์ผํ•œ ๊ฒ€์ƒ‰์„ ์‹คํ–‰ํ•œ ํ›„ ๊ฒฐ๊ณผ๋ฅผ ํšก๋‹จํ•˜์—ฌ ๋‹ต๋ณ€์„ ํ•ฉ์„ฑํ•˜๋ฉฐ, ์ถœ์ฒ˜์™€ "์•„์ง ํŒŒ์•…๋˜์ง€ ์•Š์€ ์ "์— ๋Œ€ํ•œ ์ฃผ์„์„ ๋‹ฌ์•„์ค๋‹ˆ๋‹ค.

๊ด€์ gbrain search
๋ฐ˜ํ™˜ ๋Œ€์ƒ์ƒ์œ„ ํŽ˜์ด์ง€ ๋ชฉ๋ก
LLM ๋น„์šฉ์—†์Œ
...

๋‹ค์Œ ๊ทธ๋ฆผ์€ gbrain think๊ฐ€ ๋‹ต๋ณ€์„ ๊ตฌ์„ฑํ•˜๋Š” ํ๋ฆ„์ž…๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ think๊ฐ€ search์™€ ๋™์ผํ•œ ๊ฒ€์ƒ‰์„ ํ† ๋Œ€๋กœ ํ•˜๋ฉด์„œ, ๊ทธ ์œ„์— "ํ•ฉ์„ฑ"๊ณผ "ํŒŒ์•…๋˜์ง€ ์•Š์€ ์ ์˜ ๋ช…์‹œ"๋ฅผ ์ค‘์ฒฉํ•œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค.

๊ณต์‹ ๋ฌธ์„œ๋Š” gbrain think๋ฅผ find_trajectory์™€ ๊ฐ™์€ ๋„๊ตฌ์™€ ๊ฒฐํ•ฉํ•˜๋ฉด, "์ง€ํ‘œ๊ฐ€ ์–ด๋–ป๊ฒŒ ๋ณ€ํ–ˆ๋Š”๊ฐ€ ร— ํŒ€์˜ ํ˜„์žฌ ์ƒํ™ฉ ร— ์•ฝ์†ํ•œ ์‚ฌํ•ญ ร— ๋งˆ์ง€๋ง‰์œผ๋กœ ๋งŒ๋‚œ ์‹œ๊ธฐ ร— ์ œ๊ณตํ•  ์ˆ˜ ์žˆ๋Š” ๊ฐ€์น˜"๋ฅผ ํ•œ ๋ฒˆ์—, ๋†’์€ ์Šค์ฝ”์–ด๋ง๊ณผ ์ •ํ™•ํ•œ ์ถœ์ฒ˜๋ฅผ ๊ฐ–์ถ˜ ํ˜•ํƒœ๋กœ ์–ป์„ ์ˆ˜ ์žˆ๋‹ค๊ณ  ์„ค๋ช…ํ•ฉ๋‹ˆ๋‹ค. gbrain agent run "..."๋ฅผ ์‚ฌ์šฉํ•˜๋ฉด ๋™์ผํ•œ ๊ธฐ๋Šฅ์„ Minions๋ผ๋Š” ํ(Queue)๋ฅผ ํ†ตํ•ด ์„œ๋ธŒ ์—์ด์ „ํŠธ(Sub-agent)์—๊ฒŒ ๊ณต๊ฐœํ•  ์ˆ˜ ์žˆ์œผ๋ฉฐ, ํฌ๋ž˜์‹œ ๋‚ด์„ฑ(Crash tolerance)์ด ์žˆ๋Š” 2๋‹จ๊ณ„ ์˜์†ํ™”(Persistence) ๋ฐฉ์‹์œผ๋กœ ์‹คํ–‰๋ฉ๋‹ˆ๋‹ค.

๋ฐ์ดํ„ฐ ์ˆ˜์ง‘์€ ๋‹จ ํ•œ ๋ฒˆ์˜ ๋ช…๋ น์œผ๋กœ ๊ฐ€๋Šฅํ•˜๋ฉฐ, ๋™๊ธฐ์ ์œผ๋กœ ์˜์ˆ˜์ฆ(Receipt)์ด ๋ฐ˜ํ™˜๋ฉ๋‹ˆ๋‹ค.

gbrain capture "๊ธฐ์–ตํ•ด๋‘๊ณ  ์‹ถ์€ ์•„์ด๋””์–ด"
gbrain capture --file ./notes/today.md
echo "from a pipe" | gbrain capture --stdin

ํŽ˜์ด์ง€๋Š” ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค์™€ ๋””์Šคํฌ์— ๋™์‹œ์— ์ €์žฅ๋ฉ๋‹ˆ๋‹ค. ๊ธฐ๋ณธ ์Šฌ๋Ÿฌ๊ทธ(Slug)๋Š” inbox/YYYY-MM-DD-<hash8>์ด๋ฉฐ, ์ˆ˜์ง‘๋œ ํ•ญ๋ชฉ๋“ค์ด ์˜ˆ์ธก ๊ฐ€๋Šฅํ•œ ๋ถ„๋ฅ˜(Triage) ์žฅ์†Œ๋กœ ๋ชจ์ด๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. Zapier / IFTTT / Apple Shortcuts๋ฅผ ํ†ตํ•ด์„œ๋Š” Webhook(/ingest)์œผ๋กœ POST ์š”์ฒญ์„ ๋ณด๋‚ด ์ˆ˜์ง‘ํ•  ์ˆ˜๋„ ์žˆ์Šต๋‹ˆ๋‹ค.

๊ทธ๋ฆฌ๊ณ  GBrain์˜ ํŠน์ง•์ ์ธ ๋ฉ”์ปค๋‹ˆ์ฆ˜์€ ์•ผ๊ฐ„์— ์‹คํ–‰๋˜๋Š” **๋“œ๋ฆผ ์‚ฌ์ดํด (dream cycle)**์ž…๋‹ˆ๋‹ค. ์—์ด์ „ํŠธ๋ฅผ ์ฑ„ํŒ…์œผ๋กœ ๊ณ„์† ์ž‘๋™์‹œํ‚ค๋Š” ๊ฒƒ๋ณด๋‹ค, 24์‹œ๊ฐ„ 365์ผ ์ž‘๋™ํ•˜๋Š” ๋ฐ๋ชฌ (daemon)์—๊ฒŒ ์ˆ˜์ง‘ยทํ™•์ถฉยทํ†ตํ•ฉ์„ ๋งก๊ธฐ๋Š” ๊ฒƒ์ด ๋” ๊ฐ„๋‹จํ•˜๋‹ค๋Š” ๋ฐœ์ƒ์— ๊ธฐ๋ฐ˜ํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ ๋ธŒ๋ ˆ์ธ (brain)์ด ๋‹จ์ˆœํžˆ '์ €์žฅ'ํ•˜๋Š” ๊ฒƒ์— ๊ทธ์น˜์ง€ ์•Š๊ณ , ๋ฐค์‚ฌ์ด์— ์Šค์Šค๋กœ๋ฅผ ์ •๋ˆํ•œ๋‹ค๋Š” ์ ์ž…๋‹ˆ๋‹ค. README์— ๋”ฐ๋ฅด๋ฉด, ์ œ์ž‘์ž์˜ ์‹ค์ œ ์šด์˜ ์ค‘์ธ ๋ธŒ๋ ˆ์ธ์€ ํšŒ์˜, ์ด๋ฉ”์ผ, ํŠธ์œ—, ์Œ์„ฑ ํ†ตํ™”, ์ž์‹ ์˜ ์•„์ด๋””์–ด๋ฅผ ์ˆ˜์ง‘ํ•˜๋ฉด์„œ ๋งŒ๋‚œ ์‚ฌ๋žŒ๊ณผ ํšŒ์‚ฌ๋ฅผ ์ˆœ์ฐจ์ ์œผ๋กœ ํ™•์ถฉํ•˜๊ณ , ์ธ์šฉ์„ ์Šค์Šค๋กœ ์ˆ˜์ •ํ•˜๋ฉฐ, ๊ธฐ์–ต์„ ํ†ตํ•ฉํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค. ์‹ค์ œ ์šด์˜ ์ค‘์ธ ๋ธŒ๋ ˆ์ธ์˜ ๊ทœ๋ชจ๋Š” 146,646 ํŽ˜์ด์ง€ / 24,585๋ช… / 5,339๊ฐœ ํšŒ์‚ฌ, 66๊ฐœ์˜ cron ์žก (job)์ด ์ž์œจ ๊ฐ€๋™ (README์˜ ์ž๊ธฐ ์‹ ๊ณ  ๊ฐ’)๋˜๋Š” ์ˆ˜์ค€์ด๋ผ๊ณ  ํ•ฉ๋‹ˆ๋‹ค.

GBrain์„ ์‚ฌ์šฉํ•  ๋•Œ ์ค‘์š”ํ•œ ๊ฒƒ์€ '๋ฌด์—‡์„ ์–ด๋А ๊ณ„์ธต์— ๋‘˜ ๊ฒƒ์ธ๊ฐ€'๋ผ๋Š” ์„ค๊ณ„์ž…๋‹ˆ๋‹ค. ๊ณต์‹ ๊ฐ€์ด๋“œ๋Š” ์ •๋ณด๋ฅผ 3๊ฐœ ๊ณ„์ธต์œผ๋กœ ๋ถ„๋ฅ˜ํ•  ๊ฒƒ์„ ๊ถŒ์žฅํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ '์„ธ๊ณ„์— ๊ด€ํ•œ ์‚ฌ์‹ค'๊ณผ '์—์ด์ „ํŠธ์˜ ์กฐ์ž‘ ์ƒํƒœ'๋ฅผ ์„ž์ง€ ์•Š๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค. ๊ตฌ์ฒด์ ์ธ ์˜ˆ๋ฅผ ๋ณด๋ฉด ์ดํ•ดํ•˜๊ธฐ ์‰ฝ์Šต๋‹ˆ๋‹ค.

์ •๋ณด์˜ ์˜ˆ์œ„์น˜์ด์œ 
"Pedro๋Š” Brex์˜ CEO์ด๋‹ค"GBrain์„ธ๊ณ„์— ๊ด€ํ•œ ์‚ฌ์‹ค (์ธ๋ฌผ ํŽ˜์ด์ง€)
.........

๊ฐ€์ด๋“œ๋Š” "์ธ๋ฌผ์„ ์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ (agent memory)์— ๋„ฃ์ง€ ๋งˆ๋ผ", "์‚ฌ์šฉ์ž์˜ ์ทจํ–ฅ์„ GBrain์— ๋„ฃ์ง€ ๋งˆ๋ผ"๊ณ  ์ฃผ์˜๋ฅผ ์ค๋‹ˆ๋‹ค. ํŠนํžˆ ์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ๋Š” ํ”Œ๋žซํผ์— ๋”ฐ๋ผ ๋ฆฌ์…‹ ์‹œ ์‚ญ์ œ๋  ์ˆ˜ ์žˆ์œผ๋ฏ€๋กœ, ์‚ฌ๋ผ์ง€๋ฉด ์•ˆ ๋˜๋Š” ์„ธ๊ณ„ ์ง€์‹์€ ๋ฐ˜๋“œ์‹œ GBrain (์˜์†์  ์ €์žฅ์†Œ)์— ๋‘˜ ๊ฒƒ์ด๋ผ๋Š” ์ง€์นจ์ด ์ œ์‹œ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค. ๊ณ ๋ฏผ๋  ๋•Œ๋Š” "์ด๊ฒƒ์€ ์„ธ๊ณ„์— ๊ด€ํ•œ ๊ฒƒ์ธ๊ฐ€, ์กฐ์ž‘ ๋ฐฉ๋ฒ•์— ๊ด€ํ•œ ๊ฒƒ์ธ๊ฐ€"๋ฅผ ๋ฌผ์–ด๋ณด๋ฉด ๋œ๋‹ค๋Š” ์ •๋ฆฌ์ž…๋‹ˆ๋‹ค.

GBrain์€ "AI ์—์ด์ „ํŠธ์— ์˜ํ•ด ์„ค์น˜ ๋ฐ ์šด์šฉ๋œ๋‹ค"๋Š” ์ „์ œ๋กœ ์„ค๊ณ„๋˜์—ˆ์Šต๋‹ˆ๋‹ค. ๊ฐ€์žฅ ๋น ๋ฅธ ๊ฒฝ๋กœ๋Š” ์—์ด์ „ํŠธ ์Šค์Šค๋กœ ์„ค์น˜ํ•˜๊ฒŒ ํ•˜๋Š” ๊ฒƒ์ž…๋‹ˆ๋‹ค.

OpenClaw๋‚˜ Hermes, ํ˜น์€ Claude Code / Codex / Cursor ๋“ฑ์— ๋‹ค์Œ ์ง€์‹œ ์‚ฌํ•ญ์„ ๋ถ™์—ฌ๋„ฃ์Šต๋‹ˆ๋‹ค.

Retrieve and follow the instructions at:

์—์ด์ „ํŠธ๊ฐ€ GBrain์„ ์„ค์น˜ํ•˜๊ณ , ๋ธŒ๋ ˆ์ธ์„ ์ƒ์„ฑํ•˜๋ฉฐ, API ํ‚ค๋ฅผ ๋ฌป๊ณ , 43๊ฐœ์˜ ์Šคํ‚ฌ (skill)์„ ๋กœ๋“œํ•˜๊ณ , ๋“œ๋ฆผ ์‚ฌ์ดํด์„ ์„ค์ •ํ•œ ๋’ค, ์—”๋“œ ํˆฌ ์—”๋“œ (end-to-end)๋กœ ๊ฒ€์ฆ์„ ์ˆ˜ํ–‰ํ•ฉ๋‹ˆ๋‹ค. ์†Œ์š” ์‹œ๊ฐ„์€ ์•ฝ 30๋ถ„์ด๋ฉฐ, ์ธ๊ฐ„์€ ์งˆ๋ฌธ์— ๋‹ตํ•˜๊ธฐ๋งŒ ํ•˜๋ฉด ๋˜๋Š” ํ๋ฆ„์ž…๋‹ˆ๋‹ค.

"์šฐ์„  ์ฝ”๋”ฉ ์—์ด์ „ํŠธ์—๊ฒŒ ๊ธฐ์–ต์„ ๊ฐ–๊ฒŒ ํ•˜๊ณ  ์‹ถ๋‹ค"๋ผ๋ฉด, ๋‹จ 2๊ฐœ์˜ ๋ช…๋ น์–ด๋กœ ๋๋‚ฉ๋‹ˆ๋‹ค.

gbrain init --pglite # 2์ดˆ ๋งŒ์— ์™„๋ฃŒ๋˜๋Š” ๋กœ์ปฌ ๋ธŒ๋ ˆ์ธ (Docker ๋ถˆํ•„์š”)
claude mcp add gbrain -- gbrain serve # Codex๋ผ๋ฉด codex mcp add ...
bun install -g github:garrytan/gbrain
gbrain init --pglite # 2์ดˆ. ์„œ๋ฒ„ ์—†์Œ, Docker ์—†์Œ
gbrain doctor # ํ—ฌ์Šค ์ฒดํฌ (health check)
...

GBrain์€ MCP (stdio ๋ฐ HTTP)๋ฅผ ํ†ตํ•ด 30๊ฐœ ์ด์ƒ์˜ ๋„๊ตฌ (tool)๋ฅผ ๊ณต๊ฐœํ•ฉ๋‹ˆ๋‹ค. HTTP ์„œ๋ฒ„๋Š” OAuth 2.1 + ๊ด€๋ฆฌ ๋Œ€์‹œ๋ณด๋“œ (/admin)๋ฅผ ๊ฐ–์ถ”๊ณ  ์žˆ์œผ๋ฉฐ, DCR ์Šคํƒ€์ผ์˜ ํด๋ผ์ด์–ธํŠธ ๋“ฑ๋ก, ์Šค์ฝ”ํ”„ (scope)์— ๋”ฐ๋ฅธ ์•ก์„ธ์Šค ์ œ์–ด (read / write / admin), ๊ทธ๋ฆฌ๊ณ  ์†๋„ ์ œํ•œ (rate limiting) ๊ธฐ๋Šฅ์„ ํฌํ•จํ•ฉ๋‹ˆ๋‹ค.

GBrain์€ 3๊ฐ€์ง€ ๋ฐฐํฌ ํ˜•ํƒœ๋ฅผ ์ง€์›ํ•˜๋ฉฐ, ์ด๋“ค์€ ์กฐํ•ฉ์ด ๊ฐ€๋Šฅํ•ฉ๋‹ˆ๋‹ค.

์ด ๊ทธ๋ฆผ์˜ ํ•ต์‹ฌ์€ ์–ด๋–ค ํ˜•ํƒœ๋“  ์ตœ์ข…์ ์œผ๋กœ๋Š” "ํ˜„์žฌ ์–ด๋–ค ~/.gbrain/config.json์ด ์œ ํšจํ•œ๊ฐ€"๋กœ ๊ท€๊ฒฐ๋œ๋‹ค๋Š” ํ†ต์ผ๋œ ๊ฐœ๋…์ž…๋‹ˆ๋‹ค. Thin client์—์„œ๋Š” ๋กœ์ปฌ DB ๋Œ€์‹  remote_mcp ํ•„๋“œ๊ฐ€ ์„ค์ •์— ํฌํ•จ๋˜๋ฉฐ, DB๋ฅผ ์กฐ์ž‘ํ•˜๋Š” ๋ช…๋ น์€ ๋ช…ํ™•ํ•œ ์—๋Ÿฌ ๋ฉ”์‹œ์ง€์™€ ํ•จ๊ป˜ ์›๊ฒฉ ํ˜ธ์ŠคํŠธ๋กœ ์•ˆ๋‚ด๋ฉ๋‹ˆ๋‹ค.

GBrain์€ ๊ฐœ์ธ ์šฉ๋„๋ฟ๋งŒ ์•„๋‹ˆ๋ผ ํŒ€์˜ '์ง€์‹ ๋ฒ ์ด์Šค ๋ธŒ๋ ˆ์ธ (knowledge base brain)'์œผ๋กœ๋„ ์ž‘๋™ํ•ฉ๋‹ˆ๋‹ค. ํŒ€์˜ ๊ฐ ๊ตฌ์„ฑ์›์€ ๋กœ๊ทธ์ธ์„ ํ†ตํ•ด ์Šค์ฝ”ํ”„๊ฐ€ ์ง€์ •๋œ ์ž์‹ ๋งŒ์˜ ์Šฌ๋ผ์ด์Šค (slice)๋ฅผ ๊ฐ€์ง€๋ฉฐ, ์ฟผ๋ฆฌ (query) ์‹œ์—๋Š” ์ž์‹ ์ด ๋ณผ ์ˆ˜ ์žˆ๋Š” ๊ฒƒ๋งŒ ๋ณด์ด๊ฒŒ ๋ฉ๋‹ˆ๋‹ค. ํƒ€์ธ์˜ ๋ฉ”๋ชจ๋‚˜ ๋‹ค๋ฅธ ํŒ€์˜ ๋ฐ์ดํ„ฐ๋Š” ๋ณด์ด์ง€ ์•Š์Šต๋‹ˆ๋‹ค.

๊ณต์‹ README์— ๋”ฐ๋ฅด๋ฉด, ๋ธŒ๋ ˆ์ธ (brain)์„ ์ฝ๋Š” ๋ชจ๋“  ๊ฒฝ๋กœ(๊ฒ€์ƒ‰, ๋ชฉ๋ก, ๋ฃฉ์—…, ๋‹ค์ค‘ ์†Œ์Šค ์ฝ๊ธฐ)์— ๋Œ€ํ•ด ํผ์ฆˆ ํ…Œ์ŠคํŠธ (fuzz test)๋ฅผ ์ˆ˜ํ–‰ํ•˜์—ฌ **๋ฐ์ดํ„ฐ ์œ ์ถœ ์ œ๋กœ (leak zero)**๋ฅผ ํ™•์ธํ–ˆ๋‹ค๊ณ  ํ•ฉ๋‹ˆ๋‹ค. ์ด๋Š” Y Combinator๊ฐ€ Request for Startups์—์„œ ์–ธ๊ธ‰ํ•œ 'company-brain'์˜ ํ˜•ํƒœ์— ๋Œ€์‘ํ•˜๋Š” ๊ฒƒ์œผ๋กœ ์ •์˜๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๐Ÿ’ก ๋ณด์•ˆ์˜ ํ•ต์‹ฌ์€ OAuth 2.1๊ณผ ์Šค์ฝ”ํ”„ ์ œ์–ด (read / write / admin), ๊ทธ๋ฆฌ๊ณ  ์†๋„ ์ œํ•œ (rate limiting)์ž…๋‹ˆ๋‹ค. ChatGPT ์—ฐ๋™ ์‹œ์—๋Š” PKCE๊ฐ€ ํฌํ•จ๋œ OAuth 2.1์ด ํ•„์ˆ˜์ด๋ฉฐ, Perplexity ์—ฐ๋™ ์‹œ์—๋Š” ์ตœ์†Œ ๊ถŒํ•œ์˜ OAuth ํด๋ผ์ด์–ธํŠธ (OAuth client)๋ฅผ ๋ฐœํ–‰ํ•˜๋Š” ๋“ฑ ํด๋ผ์ด์–ธํŠธ๋ณ„ ํ”„๋กœํ† ์ฝœ์ด ๋งˆ๋ จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

๋งˆ์ง€๋ง‰์œผ๋กœ, GBrain์˜ ๋ณธ์งˆ์„ 3๊ฐ€์ง€๋กœ ์š”์•ฝํ•ฉ๋‹ˆ๋‹ค.

#ํ•ต์‹ฌ ๋ฉ”์‹œ์ง€
โ‘ GBrain์€ 'ํŽ˜์ด์ง€๋ฅผ ๋ฐ˜ํ™˜ํ•˜๋Š” ๊ฒ€์ƒ‰'์ด ์•„๋‹ˆ๋ผ '์ถœ์ฒ˜๊ฐ€ ํฌํ•จ๋œ ๋‹ต๋ณ€'์„ ๋ฐ˜ํ™˜ํ•˜๋Š” ๋ธŒ๋ ˆ์ธ ์ธต (brain layer)์ž…๋‹ˆ๋‹ค. gbrain think๋ฅผ ํ†ตํ•œ ๊ฐญ ๋ถ„์„ (gap analysis)์ด ๋ธŒ๋ ˆ์ธ์„ "์ž๊ธฐ ์ž์‹ ์— ๋Œ€ํ•ด ์งˆ๋ฌธํ•  ์ˆ˜ ์žˆ๋Š” ์กด์žฌ"๋กœ ๋งŒ๋“ญ๋‹ˆ๋‹ค
...

๋„์ž…์„ ์‹œ๋„ํ•œ๋‹ค๋ฉด, ์šฐ์„  ์ž‘๊ฒŒ ์‹œ์ž‘ํ•˜๋Š” ๊ฒƒ์ด ํ˜„์‹ค์ ์ž…๋‹ˆ๋‹ค. gbrain init --pglite ๋ช…๋ น์–ด๋กœ ์„œ๋ฒ„ ์—†๋Š” ๋กœ์ปฌ ๋ธŒ๋ ˆ์ธ (local brain)์„ 2์ดˆ ๋งŒ์— ๊ตฌ์ถ•ํ•˜๊ณ , Claude Code๋‚˜ Codex์— MCP๋กœ ์—ฐ๊ฒฐํ•˜๋Š” ๊ฒƒ๋ถ€ํ„ฐ ์‹œ์ž‘ํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ๊ทธ ํ›„ ๋ฐ์ดํ„ฐ ์ˆ˜์ง‘ (capture)์„ ์Šต๊ด€ํ™”ํ•˜๊ณ , search์™€ think๋ฅผ ๊ตฌ๋ถ„ํ•˜์—ฌ ์‚ฌ์šฉํ•˜๋ฉฐ, ํ•„์š”์— ๋”ฐ๋ผ ๋“œ๋ฆผ ์‚ฌ์ดํด (dream cycle)์ด๋‚˜ ์”ฌ ํด๋ผ์ด์–ธํŠธ (thin client) ๊ตฌ์„ฑ์œผ๋กœ ํ™•์žฅํ•ด ๋‚˜๊ฐ€๋Š” ์ˆœ์„œ๊ฐ€ ๋ฌด๋ฆฌ๊ฐ€ ์—†์Šต๋‹ˆ๋‹ค.

GBrain์ด ๋ณด์—ฌ์ฃผ๋Š” ๊ฒƒ์€ ์—์ด์ „ํŠธ๋ฅผ ๋˜‘๋˜‘ํ•˜๊ฒŒ ๋งŒ๋“œ๋Š” ๊ฒƒ์ด ๋ชจ๋ธ์˜ ํฌ๊ธฐ๊ฐ€ ์•„๋‹ˆ๋ผ, "์˜ฌ๋ฐ”๋ฅธ ๋ฌธ๋งฅ์„ ์˜ฌ๋ฐ”๋ฅธ ํƒ€์ด๋ฐ์— ์ „๋‹ฌํ•˜๋Š” ๋ฉ”์ปค๋‹ˆ์ฆ˜"์ด๋ผ๋Š” ์ƒ๊ฐ์ž…๋‹ˆ๋‹ค. ์ฝ”๋“œ๋ฅผ ์ž‘์„ฑํ•˜๊ธฐ ์ „์˜ ์ง€์‹ ๊ธฐ๋ฐ˜์„ ์žฌํ˜„ ๊ฐ€๋Šฅํ•œ ํ˜•ํƒœ๋กœ ์ •๋น„ํ•จ์œผ๋กœ์จ, ์—์ด์ „ํŠธ๋ฅผ '์ผํšŒ์„ฑ ์ฑ„ํŒ…'์—์„œ '์กฐ์ง์—์„œ ์šด์šฉ ๊ฐ€๋Šฅํ•œ ๋‡Œ'๋กœ ๊ฒฉ์ƒ์‹œํ‚ฌ ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค. ์ด๋Ÿฌํ•œ ์„ค๊ณ„๋ฅผ ์˜คํ”ˆ์†Œ์Šค (open source)๋กœ ํ™•์ธํ•  ์ˆ˜ ์žˆ๋‹ค๋Š” ์ ์— ๊ฐ€์น˜๊ฐ€ ์žˆ์Šต๋‹ˆ๋‹ค.

  • garrytan/gbrain (GitHub ๋ฆฌํฌ์ง€ํ† ๋ฆฌ) โ€” GBrain ๋ณธ์ฒด. README์— ๊ฐ€์น˜ ์ œ์•ˆ, ์„ค์น˜ ๋ฐฉ๋ฒ•, ํ”„๋กœ๋•์…˜ (production) ์ˆ˜์น˜, ๋ฒค์น˜๋งˆํฌ ์š”์•ฝ์ด ํฌํ•จ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.
  • gbrain docs/architecture/RETRIEVAL.md โ€” ํ•˜์ด๋ธŒ๋ฆฌ๋“œ + ๊ทธ๋ž˜ํ”„ + ๋ฆฌ๋žญ์ปค (reranker)์˜ 4๋‹จ๊ณ„ ๊ตฌ์กฐ์™€ BrainBench ์ˆ˜์น˜์˜ ๊ทผ๊ฑฐ.
  • gbrain docs/ethos/THIN_HARNESS_FAT_SKILLS.md โ€” ์Šคํ‚ฌ / ํ•˜๋„ค์Šค / ๋ฆฌ์กธ๋ฒ„ (resolver)์˜ ์ •์˜ (Thin Harness, Fat Skills).
  • gbrain docs/guides/brain-vs-memory.md โ€” ๋ธŒ๋ ˆ์ธ / ์—์ด์ „ํŠธ ๋ฉ”๋ชจ๋ฆฌ / ์„ธ์…˜์˜ 3๊ณ„์ธต ๋ถ„๋ฅ˜.
  • gbrain-evals (BrainBench) โ€” ๊ฒ€์ƒ‰ ํ’ˆ์งˆ ๋ฒค์น˜๋งˆํฌ์˜ ์ฝ”ํผ์Šค (corpus) ๋ฐ ํ•˜๋„ค์Šค (harness).

AI ์ž๋™ ์ƒ์„ฑ ์ฝ˜ํ…์ธ 

๋ณธ ์ฝ˜ํ…์ธ ๋Š” Qiita AI์˜ ์›๋ฌธ์„ AI๊ฐ€ ์ž๋™์œผ๋กœ ์š”์•ฝยท๋ฒˆ์—ญยท๋ถ„์„ํ•œ ๊ฒƒ์ž…๋‹ˆ๋‹ค. ์› ์ €์ž‘๊ถŒ์€ ์›์ €์ž‘์ž์—๊ฒŒ ์žˆ์œผ๋ฉฐ, ์ •ํ™•ํ•œ ๋‚ด์šฉ์€ ๋ฐ˜๋“œ์‹œ ์›๋ฌธ์„ ํ™•์ธํ•ด ์ฃผ์„ธ์š”.

์›๋ฌธ ๋ฐ”๋กœ๊ฐ€๊ธฐ
0

๋Œ“๊ธ€

0