> ## Documentation Index
> Fetch the complete documentation index at: https://supastack.dev/llms.txt
> Use this file to discover all available pages before exploring further.
> For the full documentation corpus in one file, fetch: https://supastack.dev/llms-full.txt

# 코드 서명

인스톨러에 서명해 macOS와 Windows가 사용자에게 경고하지 않게 하세요.

## 초보자 연습

전제 조건: Rust 및 운영 체제 빌드 도구를 포함한 데스크톱 로컬 설정을 완료합니다. 설치 프로그램을 구축하기 전에 Tauri 개발 프로세스를 중지하십시오. 웹 백엔드를 실행 상태로 둡니다. 저장소 루트에서 아래의 각 검사를 실행하고 다음 검사를 실행하기 전에 완료될 때까지 기다립니다. 필터링된 패키지 명령은 데스크탑 전용 및 모든 플랫폼 체크아웃에서 작동합니다.

빠른 용어: 작업 영역은 한 팀의 별도 사용자, 데이터 및 설정입니다. 서버는 신뢰할 수 있는 백엔드입니다. 제공업체 키를 브라우저 및 전화 코드에 보관하세요. 마이그레이션은 테이블을 생성하거나 업데이트하는 버전이 지정된 데이터베이스 변경입니다. AI 모델은 응답하는 엔진입니다. 모델 카탈로그는 서버의 사용 가능한 모델 ID 및 가격 목록입니다. 공급자는 AI, 이메일, 청구 서비스와 같은 외부 서비스입니다. 자격은 작업 영역에서 기능을 사용할 수 있도록 하는 부여입니다. 웹훅은 한 서비스가 다른 서비스의 URL에 보내는 메시지입니다.

1. 로컬 지점에서 코딩 에이전트에게 `apps/desktop/src-tauri/tauri.conf.json`를 검사하고 제품 식별자, 앱 이름, 아이콘 및 백엔드 URL를 자신이 소유한 값으로 설정하도록 요청합니다. 릴리스 빌드에는 공개 HTTPS 백엔드 URL를 사용하세요.

2. 리포지토리 루트에서 아래 데스크탑 패키지 검사를 실행합니다. check:release-config 전에 데스크탑 로컬 설정에서 운영 체제 명령을 사용하여 이 터미널에서 SUPASTACK_APP_URL를 설정하십시오. 공개 HTTPS 백엔드가 실행 중이어야 하며 앱 식별자는 사용자 고유의 것이어야 합니다.

3. 성공적인 빌드는 설치 프로그램에 서명, 공증 또는 게시하지 않습니다. Rust 또는 시스템 라이브러리가 누락된 경우 데스크톱 로컬 설정을 완료하세요.

사용자 정의 코드의 경우 제공된 `prompts/README.md`로 시작하고 가장 가까운 프롬프트(앱 화면의 경우 `prompts/new-app-screen.md`, 공개 페이지의 경우 `prompts/new-landing-page.md`)를 복사합니다. 서버, 데이터베이스 또는 공급자 작업의 경우 코딩 에이전트에게 이 가이드의 작업을 제공하고 `AGENTS.md`, `.ai/PROJECT_CONTEXT.md` 및 일치하는 `.ai/` 미러를 읽도록 요청하세요. 여기에 이름이 지정된 정확한 소스 파일을 검사하십시오. 편집하기 전에 파일을 나열하고 확인합니다. 작업 공간 소유권과 서버 전용 비밀을 보존합니다. 차이점을 보여주세요. 원하는 동작, 입력 및 출력 필드, 허용된 역할, 예상되는 성공 및 오류, 테스트 계정, 공급자 또는 장치를 알려주십시오. 샘플 값을 사용하십시오. 절대 진짜 비밀을 붙여넣지 마세요.

[시작하기 전에](https://supastack.dev/ko/docs/web/before-you-start.md)

[단말기 기본사항](https://supastack.dev/ko/docs/web/terminal-basics.md)

[데스크탑 로컬 설정](https://supastack.dev/ko/docs/desktop/ship-in-5-minutes.md)

[에이전트 프롬프트 및 프로젝트 메모리](https://supastack.dev/ko/docs/web/agents.md)

```
corepack pnpm --filter @supastack/desktop typecheck
corepack pnpm --filter @supastack/desktop test
corepack pnpm --filter @supastack/desktop check:release-config
corepack pnpm --filter @supastack/desktop build
```


## 제품 셸 구성

`src-tauri/tauri.conf.json`, Cargo 메타데이터, 기능 및 플랫폼 식별자를 검토합니다. 공유 자산 프로세스를 통해 앱 아이콘을 교체하고 빌드/런타임 시 의도한 백엔드 URL를 설정합니다. 호스팅된 웹앱은 이미 배포되어 연결 가능해야 합니다.


## 네이티브 빌드 게이트 실행

이러한 패키지 명령은 Rust 유형 검사 및 테스트를 실행하고, 릴리스 설정을 검증하고, Tauri 설치 프로그램을 빌드합니다. 서명 및 배포 구성은 대상 플랫폼과 계정/인증서에 따라 다릅니다. 서명 자료를 소스에 저장하지 마십시오.

```
corepack pnpm --filter @supastack/desktop typecheck
corepack pnpm --filter @supastack/desktop test
corepack pnpm --filter @supastack/desktop check:release-config
corepack pnpm --filter @supastack/desktop build
```


## 대상 OS에서 설치 프로그램을 확인합니다.

새로 설치, 실행, 백엔드 연결 가능성, 인증, 메뉴/트레이, 단축키 등록, 두 번째 인스턴스, 딥 링크, 오프라인 재시도 및 제거를 확인하세요. 지원되는 각 OS를 별도로 확인하세요. 로컬 빌드는 서명 또는 공증된 상업용 배포를 증명하지 않습니다. 서명 구성, 업데이터 피드 및 릴리스 자동화는 포함되지 않습니다.

[네이티브 승인 체크리스트](https://supastack.dev/ko/docs/desktop/run.md)

[공유 백엔드 배포](https://supastack.dev/ko/docs/web/deployment.md)


## 설치 및 설정

1. 서명되지 않은 인스톨러는 본인 기기에는 잘 설치되지만 다른 모든 사람에게는 Gatekeeper와 SmartScreen 경고를 띄웁니다 — 출시 전에 서명하세요.

2. macOS에서는 Apple Developer Program에 가입해 Developer ID 인증서를 받은 뒤 src-tauri/tauri.conf.json의 bundle 섹션 아래에 서명·공증 구성을 추가하고, Tauri의 문서화된 서명 env(APPLE_CERTIFICATE, APPLE_CERTIFICATE_PASSWORD, APPLE_SIGNING_IDENTITY, 그리고 APPLE_API_KEY / APPLE_API_ISSUER 공증 자격 증명)를 CI 시크릿 스토어에서 공급하세요.

3. Windows에서는 번들의 Windows 서명 — 인증서 지문 또는 커스텀 signtool 명령 — 을 구성하고, 인증서는 러너의 시크릿 스토어를 통해 전달하세요.

```
# tauri.conf.json ships unsigned today:
#   "bundle": { "active": true, "targets": "all", "icon": [...] }
# Add signing under bundle > macOS / bundle > windows
# and keep every certificate and password in your secret store,
# never in the repo.
# Auto-updater & release channels (stable / beta via {{channel}}):
# SUPASTACK_UPDATER_ENDPOINT=https://releases.example.com/{{channel}}/{{target}}/{{arch}}/{{current_version}}
# SUPASTACK_UPDATER_PUBKEY=…
# SUPASTACK_UPDATE_CHANNEL=stable
```


## 구현 워크플로

인증서는 자체 시크릿 스토어로 프로비저닝하고 빌드 시 환경 변수로 주입하세요 — 리포지토리에 커밋된 인증서는 폐기할 인증서입니다.

같은 릴리스 빌드에 프로덕션 SUPASTACK_APP_URL을 구워 넣어 설치된 셸이 배포된 앱을 가리키게 하세요.


## 검증 및 문제 해결

본인 것이 아닌 기기에 만들어진 아티팩트를 설치해 검증하세요: Gatekeeper나 SmartScreen 경고 없이 앱이 실행되고 로그인이 유지되어야 합니다. 서명 설치 테스트 없는 녹색 tauri build는 릴리스 증거가 아닙니다.

다음: Web 탭의 배포 체크리스트가 서버 측 출시 게이트를 다룹니다.


설정을 계속하려면 [배포 체크리스트](https://supastack.dev/ko/docs/web/deployment.md) 가이드를 읽어보세요.


## 다음

[배포 체크리스트](https://supastack.dev/ko/docs/web/deployment.md)
