Skip to content

안전장치 ​

autofix 의 세션은 사람이 지켜보지 않는 동안 코드를 고치고 push 해요. 그래서 자동으로 해도 되는 일과 사람을 기다려야 하는 일을 나눠 두었어요.

세션 권한: 안전한 전부 허용 ​

agent-bridge 는 서비스 API 로 연 세션을 안전한 전부 허용 모드로 열어요.

종류예어떻게 되나요
일반 권한 요청파일 읽기·쓰기, yarn install, go test, git commit, 보통 git push자동으로 허용
위험한 호출sudo, 강제 push, git reset --hard, .env·.ssh 같은 비밀 파일, Claude 설정 파일, 세션 폴더 밖의 rm사람을 기다림
질문세션이 선택지를 묻는 경우사람을 기다림

사람을 기다리는 동안 실행은 확인 대기로 보이고, 무엇을 기다리는지 함께 적혀요. agent-bridge 화면(폰도 돼요)에서 그 세션의 카드에 답하면 이어서 진행해요.

질문하지 않게 하기

내장 규칙에는 "질문하지 말고 판단해서 진행"이 들어 있어요. 그래도 세션이 묻는다면 규칙에 그 판단 기준이 빠진 거예요. 규칙 쓰기에서 채워 두세요.

규칙이 정하는 선 ​

권한 모드는 "할 수 있는가"를 막고, 규칙은 "해야 하는가"를 정해요. 내장 규칙은

  • 검증(lint·typecheck·test·build)을 통과해야만 커밋해요.
  • 같은 문제로 2번 실패하면 그 항목은 멈추고 결과에 적어요. 끝없이 시도하지 않아요.
  • 시크릿 값을 절대 출력하지 않아요. 결과는 화면에 남으니까요.
  • 고칠 수 없는 걸 억지로 바꾸지 않고 보류로 남겨요.

토큰마다 할 수 있는 일 ​

토큰가진 쪽할 수 있는 일못 하는 일
AUTOFIX_TOKEN스캐너목록 보내기(실행 만들기)기록 읽기, 세션 조작
BRIDGE_SERVICE_TOKENautofix정해진 한 사람의 맥에 세션 열기, 토큰으로 연 세션의 상태 읽기사람이 연 세션 읽기, 세션에 메시지 보내기, 세션 닫기
VIEW_USER·VIEW_PASSWORD사람기록 화면과 GET /api/runs 보기실행 만들기

토큰은 SHA-256 으로 바꾼 뒤 상수 시간으로 비교해요. 비어 있는 토큰은 그 기능을 끄는 뜻이에요(늘 401).

화면과 기록 ​

  • 기록 화면은 Basic 인증 뒤에 있고, 스크립트를 쓰지 않아요. 응답마다 Content-Security-Policy: default-src 'none' 과 Cache-Control: no-store 를 붙여요.
  • 세션 답변은 먼저 HTML 을 이스케이프한 뒤 굵게·코드만 표시해요. 답변에 태그가 섞여도 글자로 보여요.
  • 결과에는 세션의 마지막 답변이 그대로 남아요. 비밀값이 섞이지 않도록 규칙에 "시크릿 값을 출력하지 않는다"를 꼭 두세요.

남는 위험 ​

  • 세션이 기본 브랜치에 바로 push 해요. 리뷰를 거쳐야 하는 레포라면 규칙에 "PR 을 만들고 멈춘다"를 적어 바꾸세요.
  • 테스트가 약한 레포에서는 통과가 곧 안전을 뜻하지 않아요. 결과를 읽고 필요하면 되돌리세요.
  • 맥의 gh·git 자격 증명으로 일해요. 세션이 할 수 있는 범위는 그 자격 증명의 범위와 같아요.

agent-bridge 의 서비스 API 위에서 도는 자동 대응 서버예요.