00:00rec · start
코딩 에이전트를 위한 관측성, 감사 및 보안 — 머신 위에서

코딩 에이전트를 기록에 남기세요.

지난달 당신의 에이전트는 수천 번의 세션을 실행했습니다. 비용은 얼마였고 — 무엇을 만들어냈을까요? 무엇을 건드렸을까요? 당신 회사가 일하는 방식대로 일했을까요? Gesta는 모든 세션을 측정하고 통제하고 안내합니다 — 일이 벌어지는 바로 그 머신 위에서.

$ curl -fsSL https://artifacts.gesta.run/gesta/install-agent.sh | bash -s
시작하기 →
00:14efficiency
장면 1 · 효율

토큰에 $3M을 썼습니다. 무엇이 나왔나요?

이사회는 묻고 있는데, 벤더 청구서는 답하지 못합니다 — API 키에서 멈추니까요. Gesta는 어떤 청구서도 만들어낼 수 없는 명세로 답합니다: 당신의 에이전트가 실제로 작성한 것 — 코드, 문서, 테스트 — API 정가 기준, 모든 캐시 계층을 포함해서.

gesta.run/token-efficiency
토큰 효율 · 최근 30일
$438K토큰 비용
↓ 23% 전월 대비
148K
코드
96K
문서
31K
테스트
멤버비용코드문서테스트작업 유형
alex$4123,120640520코딩 71%
sam$3882,2401,380310코딩 64%
jordan$2961,610420240코딩 58%
rowan$1884602,9000리서치 62%
사람만 집계했습니다 — 자동화(봇)는 $6.2K를 썼고, 조직 총액에는 포함되지만 목록이나 순위에는 절대 오르지 않습니다.
집계는 이렇게 이루어집니다

종이가 아니라 펜 끝에서 측정합니다.

종이는 세션이 남기는 것입니다 — 파일, diff, 커밋 — 그리고 종이는 거짓말을 합니다. 한 글자짜리 수정에 포매터가 천 줄을 다시 씁니다. 생성기는 아무도 작성하지 않은 코드를 뱉어냅니다. 정작 당신의 한 주를 구해준 세션은 커밋 하나 남기지 않을 수 있습니다.

그래서 Gesta는 종이를 세지 않습니다. 잉크를 측정합니다: 에이전트가 직접 써 내려간 모든 글자 — 코드, 테스트, 문서, 심지어 곧바로 위키에 쓰인 한 페이지까지 — 작성되는 그 순간, 포매터도 생성기도 git도 손대기 전에 집계됩니다.

지출은 누구나 볼 수 있습니다. 산출물을 보는 건 오직 Gesta뿐입니다 — 머신 위에서, 그것이 쓰이는 바로 그 순간에.

머신을 벗어나는 것은 오직 집계값뿐입니다. 잉크 자체는 결코 벗어나지 않습니다.

당신의 모델 벤더도 — AI 게이트웨이도 — 절대 보여주지 않을 명세입니다.

01:24security
장면 2 · 보안

실행되기 전에 막습니다.

당신의 규칙은 하나의 콘솔에서 모든 머신의 모든 에이전트로 전파되고, 위험한 호출은 실행되기 전에 붙잡힙니다. 실행 전에 붙잡고, 빠져나가기 전에 막습니다 — 소리 없는 것까지 포함해서: 평문 키를 머신 밖으로 가지고 나가려는 prompt까지.

38
적용 중인 규칙
2,417
결정 · 24시간
11
차단됨
6
검토 대기
214
규칙 적중
gesta.run/policies
동작에이전트사용자세션결정
Prompt attaches AWS_SECRET_ACCESS_KEY규칙: 자격 증명 패턴 · 외부 전송 promptCodexsama190차단
git push --force origin main규칙: 보호된 브랜치로 강제 푸시Claude Codealex7f3c보류
Edit .env.production규칙: 비밀 파일에 쓰기Codexsama190검토 대기
rm -rf build/작업 공간 내로 제한됨Claude Codealex7f3c허용
첫 번째 줄: 키는 머신을 벗어난 적이 없습니다 — 이 prompt는 외부로 나가기 전에 붙잡혔습니다.

규칙은 컨트롤 플레인에서 전파하는 패턴입니다 — 모든 에이전트, 모든 세션, 모든 머신에 걸쳐서. 저희 자체 플릿도 매일 이 규칙들을 실행합니다. 화면의 데이터는 예시용입니다.

에이전트가 하는 모든 일을 막을 수는 없습니다. 하지만 어느 것도 보이지 않게 두지 않을 수는 있습니다.

01:52guide
장면 3 · 라이브러리

에이전트가 그 pod를 삭제했습니다. 먼저 물어보라고 아무도 알려주지 않았습니다.

모델은 일반적인 엔지니어링은 알지만, 당신의 회사는 알지 못합니다 — 어떤 클러스터가 “pre”인지, 무엇에 확인이 필요한지, 공유 인프라를 건드리기 전에 누구에게 알려야 하는지. 그 지식은 당신의 조직 라이브러리(Organization Library)에 살아 있습니다 — 그리고 Gesta는 관리되는 모든 에이전트의 모든 prompt에 그것을 주입합니다.

(a) · 확인

같은 요청, 두 가지 결말.

>pre 환경을 확인하고 payments-api pod를 삭제해줘.

session-b2e1 · replay조직 라이브러리 없음
  1. t+0s“pre” 해석 — Codex가 클러스터 pre-eu-1로 추측
  2. +4skubectl get pods -n payments
  3. +6skubectl delete pod payments-api-7d4f▲ 확인 없음
첫 시도에 삭제됨. 사용자는 나중에야 알게 됨.
session-b2e2 · replay조직 라이브러리 있음
  1. t+0s컨텍스트 주입 — “삭제가 포함된 모든 SRE 작업은 항상 사용자에게 먼저 확인받는다.”
  2. +3s“pre” 해석 — 당신의 용어집 기준으로 클러스터 pre-eu-1
  3. +5sClaude Code가 질문 — “이 작업은 pre의 payments-api를 삭제합니다. 확인할까요?”
  4. +41s사용자 확인 — 삭제 진행, 기록에 남음
먼저 물어봤습니다. 확인 후에야 실행됐습니다.

실제 내부 베타 사고를 각색했습니다. 화면의 데이터는 예시용입니다.

(b) · 신입

입사 3일 차. David의 에이전트는 이미 누구에게 물어야 하는지 알고 있습니다.

어떤 규칙은 어떤 설정 파일이나 README에도 없습니다 — 몇몇 고참의 머릿속에만 살아 있습니다. “staging을 건드리기 전에 alex에게 미리 알려줘.” 신입의 에이전트는 이를 알 방법이 없습니다. 라이브러리는 알고 있습니다.

>내 설정 변경이 반영되도록 staging 클러스터를 재시작해줘.

session-c7a9 · replayDavid, 3일 차
  1. t+0s라이브러리 주입 — “staging은 공유 자원이다. 건드리기 전에 alex에게 미리 알려라.”
  2. +2sClaude Code가 질문 — “당신 팀은 staging 작업 전에 alex에게 알립니다. 이미 알렸나요, 아니면 잠시 멈출까요?”
  3. +30sDavid — “좋은 지적이야, 지금 알릴게. 진행해줘.”
  4. +2mstaging 재시작됨 — alex도 알고 있었음 · 그의 데모는 무사했음
라이브러리가 없었다면: alex는 자신의 데모 도중 staging이 멈춰서야 알게 됐을 겁니다. 이 규칙은 세 고참의 머릿속에만 살아 있었습니다 — 3일 차에, David도 그것을 갖게 됐습니다.

하나의 라이브러리가 당신 회사가 어떻게 일하는지를 담고 있습니다 — 흩어진 사본도, 드리프트도 없이. 모델은 당신의 코드를 읽을 수 있습니다. 하지만 당신의 회사는 결코 읽을 수 없습니다 — 그것이 어떤 벤더도 팔 수 없는 단 하나의 자산입니다.

조직 라이브러리는 흐름 속에서 안내합니다 — 강제 차단은 정책(Policies)의 몫입니다. 모든 전달이 기록에 남습니다.

02:30position
위치

일은 머신 위에서 벌어집니다. Gesta도 거기에 있습니다.

게이트웨이가 보는 것은 트래픽입니다. 모델 벤더가 보는 것은 API 호출입니다. 클라우드 로그가 보는 것은 빌려 쓴 자격 증명입니다. 에이전트의 진짜 일 — 작성하는 파일, 실행하는 명령, 받은 지시 — 은 단 한 곳에만 존재합니다: 그것이 실행되는 머신 위입니다.

Gesta는 바로 거기에 서 있습니다 — SaaS든 자체 호스팅이든, daemon은 머신 위에 있습니다. 그래서 Gesta는 에이전트가 무엇을 작성했는지 세고, 위험한 호출을 실행 전에 붙잡고, 키가 머신을 벗어나기 전에 잡아낼 수 있습니다. 이 중 어느 것도 다른 곳에서는 할 수 없습니다 — 하지 않아서가 아니라, 물리적으로 불가능하기 때문입니다.

머신에 남는 것prompt · 코드 · diff — 잉크 그 자체
머신을 떠나는 것카운트 · 이벤트 · 결정 — 변조 감지되는 기록

기록에 남습니다 — 머신 위에 있기 때문입니다.

02:53self-host
당신의 벽 안에서

당신의 prompt와 코드는 당신의 네트워크를 절대 벗어나지 않습니다.

관리형이 좋으신가요? Gesta를 SaaS로 쓰세요 — daemon은 여전히 당신의 머신 위에 있고, 머신을 떠나는 것은 기록뿐입니다. 기록까지 내부에 두어야 한다면? 같은 스택을 당신 자신의 인스턴스에 자체 호스팅할 수 있습니다: 컨트롤 플레인, 데이터, 기록 — 모두 당신의 경계 안에. 벤더 백엔드 없음, 기본적으로 외부 전송 없음.

03:14install
작동 방식

한 번 설치하면. 모든 코딩 에이전트가 커버됩니다.

01

데몬 설치

엔드포인트에서 명령어 하나: curl -fsSL https://artifacts.gesta.run/gesta/install-agent.sh | bash -s -- --control-url https://api.gesta.run --apikey <secret key>. 머신에 이미 설치된 코딩 에이전트에 연결됩니다.

02

정책 설정 또는 기본값 사용

규칙은 조직 내 모든 에이전트, 모든 세션, 모든 머신에 적용됩니다. 지속적으로 관리되는 기본선에서 시작해 조정하세요.

03

기록을 지켜보세요

실시간 활동, 어떤 세션이든 처음부터 끝까지 재생, 모든 동작의 귀속까지 — 한 곳에서.

$ curl -fsSL https://artifacts.gesta.run/gesta/install-agent.sh | bash -s -- \
  --control-url https://api.gesta.run \
  --apikey <secret key>
→ downloading gesta-agent · darwin/arm64
checksum verified
Claude Code hook installed
Codex hook installed
daemon configured
agent installed — every session on the record
03:34end

■ 세션 종료 · 9건 기록 · 모든 동작 귀속됨

당신의 에이전트 세션에도 같은 기록이 필요합니다.

몇 분이면 설치됩니다. 첫 에이전트 세션을 처음부터 끝까지 귀속된 상태로 지켜보세요.