gnet
v0.1 · OSS · MIT · local-first

코드 리뷰 팀을 터미널에서 소집합니다.

gnet은 저장소를 분석하고, Opus 메타플래너가 3–16명의 Claude Code 전문가 팀을 설계한 뒤, 각 에이전트를 tmux pane에서 병렬로 실행합니다. 결과는 보드와 대시보드로 모이고, 마지막에는 하나의 final.md로 합성됩니다.

3–16

repo 맞춤 전문가

40–60%

all-Opus 대비 절감

0

계정·서버·데몬

$ curl -fsSL https://g-net.space/install | bash

실행 전 스크립트를 먼저 확인할 수 있습니다: g-net.space/install

claude-opus-4-7·claude-sonnet-4-6·tmux + jq·events.jsonl·MCP-compatible

why gnet

한 명의 에이전트보다, 역할이 나뉜 팀.

큰 저장소를 한 세션에 밀어 넣으면 깊이와 범위를 맞바꾸게 됩니다. gnet은 분석, 보안, 성능, 테스트, 문서 역할을 분리해 병렬로 봅니다.

needone-agent flowgnet
다각도 코드 리뷰한 에이전트가 순서대로 검토3–16개 전문가 세션을 tmux 그리드에서 병렬 실행
에이전트 구성고정 프리셋 또는 직접 작성저장소 분석 결과로 roster.json을 동적 생성
협업 상태복사/붙여넣기와 수동 메모공유 board.md와 gnet-ask RPC로 조율
모델 비용모든 역할을 Opus로 처리Opus 컨덕터 + Sonnet 전문가 + prompt cache
작업 재개처음부터 다시 실행gnet resume으로 이전 팀과 상태 복원
IDE 연결터미널 밖 상태 공유 어려움MCP 서버로 Claude Code, Cursor 등에 보드 노출

dashboard

전문가들이 움직이는 장면까지 봅니다. 실시간으로.

Electron 대시보드는 .gnet/events.jsonl을 tail하고 knowledge/state JSON을 읽습니다. 아래 화면은 gnet이 gnet을 분석하는 상황을 압축한 데모입니다.

gnet — ~/code/gnet
● live
gnet
+ new

features detected

16

avg confidence

88%

files referenced

67

  • gnet CLI orchestrator

    user_flow

    메인 진입점. analyze → plan → spawn 라이프사이클을 묶고 attach/resume/kill/status 같은 세션 운영 서브커맨드를 디스패치한다.

  • Codebase analyzer

    data_pipeline

    워크디렉터리를 훑어 파일/언어/프레임워크/엔트리포인트 통계를 뽑고 메타플래너에 줄 analysis.md 와 analysis.json 을 만든다.

  • Opus meta-planner

    data_pipeline

    analysis.json 을 Opus 에 넘겨 3–16명짜리 specialist 로스터(roster.json)를 동적으로 설계한다.

  • Tmux agent grid

    background

    로스터를 바탕으로 tmux 세션을 만들고 conductor + specialist 패널마다 인터랙티브 claude/codex 런타임을 띄운다.

  • Inter-agent ask

    api

    conductor 와 사용자가 특정 specialist 패널에 메시지를 전달하는 IPC. kick(전원 재핑)·voice 전달의 백엔드.

  • Final report synthesizer

    data_pipeline

    각 에이전트가 board.md 에 적은 섹션을 모아 Opus 로 통합 final.md 리포트를 만든다.

  • Cost & token savings

    data_pipeline

    Claude Code 트랜스크립트와 세션 레코드를 합산해 all-Opus 베이스라인 대비 절감액을 계산하고 savings.md 를 생성한다.

  • Per-prompt savings hook

    background

    Claude Code UserPromptSubmit/Stop 훅을 등록해 프롬프트마다 누적 절감 라인을 사용자에게 보여 준다.

  • MCP server

    api

    stdio JSON-RPC MCP 서버로 board/roster/tasks 를 외부 IDE(Claude Code, Cursor 등)에 노출한다.

  • Voice input

    user_flow

    sox/ffmpeg 로 짧은 클립을 녹음하고 whisper 로 받아쓴 뒤 선택적으로 specialist 패널에 전달한다.

  • Local kanban GUI

    ui_page

    로컬 http.server 기반 다크 글래스모피즘 칸반. roster/tasks/board 상태를 보여 주고 ask 위임을 트리거한다.

  • Knowledge agents

    data_pipeline

    Features/Security/Precision 한 방 에이전트. 스키마 잠금된 JSON 을 .gnet/knowledge/ 에 atomic-write 해 대시보드에 공급한다.

  • State observers

    background

    DB/git/logs 를 폴링해 state/*.json 스냅샷과 events.jsonl 이벤트를 만든다. 대시보드의 라이브 신호 소스.

  • Electron dashboard

    ui_page

    워크스페이스 탭, 임베디드 터미널, Features/Security/Schema/Savings 뷰를 묶은 데스크톱 대시보드.

  • Reset workspace

    admin

    .gnet/ 캐시를 지우고 깨끗한 baseline 위에서 분석을 다시 돌리기 위한 wipe 도구.

  • Marketing & docs site

    ui_page

    Next.js 기반 랜딩 페이지(Hero/Features/Pricing/FAQ)와 MDX 문서 라우트, OG 이미지 API.

~/code/my-app — gnet
$ gnet
analyzing 247 files in /Users/me/code/my-app ...
→ analysis.md (12kb)
[meta-planner] composing roster ...
6 specialists picked: arch · security · perf · schema · tests · docs
3 opus · 3 sonnet · estimated 60% savings vs all-opus
[spawn] tmux session 'gnet' created
◇ pane 0 arch-cartographer opus-4-7 [thinking]
◇ pane 1 security-auditor opus-4-7 [tool: grep]
◇ pane 2 perf-sleuth opus-4-7 [tool: read]
◇ pane 3 schema-detective sonnet-4-6 [thinking]
◇ pane 4 test-curator sonnet-4-6 [tool: glob]
◇ pane 5 docs-writer sonnet-4-6 [idle]
attaching ... (prefix + d to detach)

how

실행 흐름

네 단계입니다. 숨은 플랫폼은 없습니다. 파일과 tmux와 Claude Code만 씁니다.

  1. 01gnet analyze

    저장소를 읽습니다

    파일 목록과 대표 발췌를 모아 메타플래너가 읽을 analysis.md/json으로 정리합니다.

  2. 02gnet plan

    팀을 설계합니다

    Opus 메타플래너가 저장소 성격에 맞춰 architecture, security, perf, tests 같은 전문가를 고릅니다.

  3. 03gnet spawn

    tmux에 띄웁니다

    각 전문가는 실제 interactive claude 세션으로 실행됩니다. pane을 보거나, 확대하거나, 직접 말을 걸 수 있습니다.

  4. 04gnet synth

    결론을 합칩니다

    board.md와 각 에이전트 출력을 모아 final.md를 만들고, 토큰과 비용 절감 리포트를 함께 보여줍니다.

feature map

gnet이 실제로 가진 기능

gnet-knowledge features가 이 저장소를 분석해 찾아낸 14개 기능입니다. 마케팅 문구가 아니라 코드에서 나온 feature map입니다.

.gnet/knowledge/features.json → web/src/content/features.json

gnet CLI orchestrator

user_flow

메인 진입점. analyze → plan → spawn 라이프사이클을 묶고 attach/resume/kill/status 같은 세션 운영 서브커맨드를 디스패치한다.

bin/gnetlib/util.shlib/history.sh

Codebase analyzer

data_pipeline

워크디렉터리를 훑어 파일/언어/프레임워크/엔트리포인트 통계를 뽑고 메타플래너에 줄 analysis.md 와 analysis.json 을 만든다.

lib/analyze.sh

Opus meta-planner

data_pipeline

analysis.json 을 Opus 에 넘겨 3–16명짜리 specialist 로스터(roster.json)를 동적으로 설계한다.

lib/plan.shprompts/meta_planner.md

Tmux agent grid

background

로스터를 바탕으로 tmux 세션을 만들고 conductor + specialist 패널마다 인터랙티브 claude/codex 런타임을 띄운다.

lib/spawn.shlib/launch_orchestrator.shlib/launch_agent.sh+5

Inter-agent ask

api

conductor 와 사용자가 특정 specialist 패널에 메시지를 전달하는 IPC. kick(전원 재핑)·voice 전달의 백엔드.

bin/gnet-ask

Final report synthesizer

data_pipeline

각 에이전트가 board.md 에 적은 섹션을 모아 Opus 로 통합 final.md 리포트를 만든다.

lib/synthesize.shprompts/synthesizer.md

Cost & token savings

data_pipeline

Claude Code 트랜스크립트와 세션 레코드를 합산해 all-Opus 베이스라인 대비 절감액을 계산하고 savings.md 를 생성한다.

lib/savings.shlib/savings_core.pylib/pricing.sh

Per-prompt savings hook

background

Claude Code UserPromptSubmit/Stop 훅을 등록해 프롬프트마다 누적 절감 라인을 사용자에게 보여 준다.

bin/gnet-prompt-hooklib/prompt_hook_start.pylib/prompt_hook_stop.py

MCP server

api

stdio JSON-RPC MCP 서버로 board/roster/tasks 를 외부 IDE(Claude Code, Cursor 등)에 노출한다.

lib/mcp_server.py.mcp.example.json

Voice input

user_flow

sox/ffmpeg 로 짧은 클립을 녹음하고 whisper 로 받아쓴 뒤 선택적으로 specialist 패널에 전달한다.

bin/gnet-voice

Local kanban GUI

ui_page

로컬 http.server 기반 다크 글래스모피즘 칸반. roster/tasks/board 상태를 보여 주고 ask 위임을 트리거한다.

lib/gui_server.py

Knowledge agents

data_pipeline

Features/Security/Precision 한 방 에이전트. 스키마 잠금된 JSON 을 .gnet/knowledge/ 에 atomic-write 해 대시보드에 공급한다.

bin/gnet-knowledgeprompts/feature_explorer.mdprompts/security_auditor.md+4

State observers

background

DB/git/logs 를 폴링해 state/*.json 스냅샷과 events.jsonl 이벤트를 만든다. 대시보드의 라이브 신호 소스.

bin/gnet-observelib/state/db.shlib/state/git.sh+1

Electron dashboard

ui_page

워크스페이스 탭, 임베디드 터미널, Features/Security/Schema/Savings 뷰를 묶은 데스크톱 대시보드.

electron/main.jselectron/preload.jselectron/package.json+11

Reset workspace

admin

.gnet/ 캐시를 지우고 깨끗한 baseline 위에서 분석을 다시 돌리기 위한 wipe 도구.

bin/gnet-reset.claude/commands/gnet-reset.md

Marketing & docs site

ui_page

Next.js 기반 랜딩 페이지(Hero/Features/Pricing/FAQ)와 MDX 문서 라우트, OG 이미지 API.

web/src/app/layout.tsxweb/src/app/page.tsxweb/src/app/docs/[slug]/page.tsx+10

architecture

파일이 곧 인터페이스입니다

모든 상태는 .gnet/ 아래 plain file로 남습니다. tail, grep, diff, delete가 됩니다. 블랙박스가 아닙니다.

① writers

  • bin/gnet — CLI dispatcher
  • lib/state/git.sh — git observer
  • lib/state/db.sh — DB observer
  • lib/state/logs.sh — log observer
  • claude — every specialist

single source of truth

.gnet/events.jsonl

{ts, src, kind, session, payload}

② readers

  • Electron dashboard
  • gnet status — roster + state
  • gnet synth — final.md
  • gnet savings — token report
  • gnet mcp — MCP server
# 새 관측 기능을 추가한다면? # 스크립트가 .gnet/events.jsonl에 append하게 만듭니다. # dashboard가 그 이벤트를 자동으로 읽습니다.

pricing

가격

gnet은 로컬에서 실행되는 OSS CLI입니다. Cloud는 팀을 위한 선택지로만 남깁니다.

Free

OSS

$0

MIT 라이선스, 로컬 실행

  • 저장소 맞춤 전문가 팀
  • 로컬 tmux 오케스트레이션
  • Electron 대시보드, MCP 서버, voice
  • 본인 Claude Code 환경 사용
  • 설치 후 로컬 파일로 상태 관리
  • 에이전트는 제안하고, 최종 반영은 사용자가 결정

Cloud

준비 중

Soon

호스팅 실행, 공유 보드, 팀 분석

  • 로컬 tmux 없이 관리형 인프라에서 실행
  • 여러 기기에서 이어지는 프로젝트 메모리
  • 팀 공유 보드와 roster
  • SSO, audit log, usage cap

faq

자주 묻는 질문