offstage

offstage

offstage cloud · 코딩 · 생산성

offstage는 AI 에이전트와 CI 작업에 진짜 Mac을 넘긴다. Apple Silicon 위의 새 macOS 27 계정을 API로 다루고 초 단위로 과금한다.

offstage 미리보기

offstage 소개

About

offstage란

offstage는 AI 에이전트와 CI 작업을 위한 macOS 샌드박스다. 샌드박스 하나가 Mac Studio 위의 사용자 계정 하나이고, Mac 클라우드 API나 TypeScript SDK로 접근한다. 셸 명령을 돌리고 파일을 주고받고 화면을 캡처한 뒤, 일이 끝나면 계정을 닫는다.

두 가지 불편이 제품을 만들었다. Linux 호스트에서 Apple 소프트웨어를 빌드하고 테스트하는 일은 번거롭다. 에이전트가 자기 노트북을 클릭하게 두는 일은 위험하다. 여기서는 공유 머신의 root 대신 작업마다 전용 계정을 주고, 닫히는 순간 계정을 지운다.

제약도 제품의 일부다. sudo도 Homebrew도 없고, xcodebuild test의 iOS 시뮬레이터 대상은 아직 구멍이 있으며, 샌드박스는 최대 24시간만 산다.

시작하기

  1. console.offstage.cloud 콘솔에 로그인하고 API keys에서 키를 만든다. sk_offstage_로 시작하며 한 번만 보여준다.
  2. npm install offstage-cloud로 SDK를 설치하거나, 어떤 언어에서든 HTTP API를 직접 호출한다.
  3. Sandbox.create()로 샌드박스를 만들고 타임아웃을 하려는 작업에 맞춘다.
  4. sandbox.commands.run()으로 명령을 실행하고 sandbox.files.write()와 sandbox.files.read()로 파일을 옮긴다.
  5. finally 블록에서 샌드박스를 닫아야 과금이 멈춘다.

제품 정보

offstage의 요금, 지원 플랫폼, 성능을 한눈에 확인해 보세요.

무료 플랜예
유료 플랜$0.000217/sec, about $0.78/hr
플랫폼Web, API, TypeScript SDK, GitHub Actions
개발사offstage cloud
카테고리코딩 · 생산성
출시일N/A
최근 업데이트Nov 2026
웹사이트 방문 수N/A
웹사이트 글로벌 순위N/A
API 제공 여부예

추천 대상

이 도구가 가장 잘 맞는 사용자, 작업, 상황입니다.

사용자

  • iOS와 macOS 개발자
  • 컴퓨터를 다루는 에이전트를 만드는 팀
  • Windows나 Linux에서 코딩하는 사람

작업

  • pull request마다 swift build와 swift test 실행
  • macOS 27에서만 나는 버그 재현
  • 문서용 스크린샷 생성
  • iOS 시뮬레이터를 띄워 레이아웃 확인

활용 상황

  • 코딩 에이전트가 Mac이 필요한 단계에 닿는다
  • 릴리스 주간에 CI 대기가 길다
  • 데스크톱 자동화 스크립트를 시험한다

주요 기능

샌드박스마다 macOS 계정 하나

Apple Silicon 샌드박스는 macOS 27을 홈 디렉터리와 프로세스가 따로 있는 사용자 계정으로 돌린다. 호출 한 번씩 다루는 방식이라 zsh에서 명령을 돌리고, 최대 10 MiB 파일을 쓰고, 텍스트나 원본 바이트로 다시 읽는다. 같은 Mac Studio의 다른 작업은 이 파일을 보지 못한다.

터미널처럼 동작하는 명령 실행기

sandbox.commands.run()은 zsh -lc 안에서 실행되고 stdout, stderr, 종료 코드, 걸린 시간을 돌려준다. 종료 코드가 0이 아니어도 예외를 던지지 않는다. 실패한 테스트는 평범한 결과이고 그걸로 다음 판단을 한다. 긴 명령은 최대 30분까지 따라간다.

헤드리스와 데스크톱, 두 가지 세션

헤드리스 샌드박스는 셸로 바로 뜬다. 빌드와 스크립트에 맞다. gui 샌드박스는 로그인된 데스크톱 세션에서 돌아 창이 있는 앱과 화면 캡처를 처리한다. 클릭이나 타이핑 API는 없다. Mac에서 도는 프로그램으로 인터페이스를 조작한다.

GitHub Actions의 macOS 러너

콘솔에서 GitHub 조직을 연결하고 워크플로에 runs-on: offstage-macos를 적는다. 작업마다 새 계정이 붙고 GitHub 러너가 그 작업 하나를 실행하며, 끝나면 계정이 지워진다. 시뮬레이터 UI 테스트처럼 데스크톱이 필요하면 offstage-macos-gui로 바꾼다.

지켜보지 않아도 되는 CI용 task

task는 공개 저장소의 기본 브랜치를 clone하고 지정한 명령을 돌린 뒤 이름을 붙인 산출물을 남긴다. failureReason을 보면 빌드 실패, clone 실패, 타임아웃, 머신이 오지 않은 경우를 구분한다. 대기열에서 기다리는 시간은 과금되지 않는다.

초 단위 과금과 지출 상한

샌드박스와 task 모두 초당 $0.000217, 시간당 $0.78이다. 최소 금액도 좌석비도 없다. 새 팀은 $5 크레딧과 월 $50 예산으로 시작하고, 소유자가 콘솔에서 올리거나 없앨 수 있다. 50%, 80%, 100%에서 알림이 온다.

장단점

장점

  • 격리: 에이전트가 자기 macOS 계정에 머문다. 부주의한 명령이 내 노트북이나 다른 팀 파일에 닿지 않는다.
  • Apple 툴체인이 미리 깔려 있다: Xcode 27.2, Swift, SwiftPM, clang, git, make가 모든 머신에 있다.
  • 대기 시간은 무료이고 과금은 초 단위다. 2분짜리 테스트면 3센트 정도다.
  • 코딩 에이전트는 api.offstage.cloud/SKILL.md 파일 하나만 읽고 스스로 설정한다. 사람이 키를 복사할 일이 없다.
  • task가 실패 이유를 알려준다. 빌드, clone, 용량 중 어디서 막혔는지 구분된다.

단점

  • sudo와 Homebrew가 없다. 시스템 패키지를 전제로 하는 도구는 프로젝트 안에서 빌드하거나 홈 디렉터리에 설치해야 한다.
  • xcodebuild test의 iOS 시뮬레이터 대상은 아직 동작하지 않는다. 시뮬레이터 UI 테스트는 다른 러너가 필요하다.
  • 팀당 동시에 열 수 있는 샌드박스는 4개이고 CI 작업은 60분에서 멈춘다. 긴 빌드 매트릭스는 들어가지 않는다.
  • 클릭이나 타이핑 API가 없다. 컴퓨터를 다루는 에이전트는 자체 자동화 프로그램을 들고 와야 한다.

자주 묻는 질문

macOS 작업을 필요할 때 돌리는 데 쓴다. Apple 빌드, 테스트, 시뮬레이터, 데스크톱이 필요한 에이전트 루프가 대상이다. Mac을 빌리거나 책상에 두는 대신 API로 명령을 보낸다.