> ## 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

# 첫 기능 만들기

네이티브 셸 변경 하나에서 검증된 창까지의 엔드 투 엔드 워크스루.

## 초보자 연습

전제 조건: 아래 두 개의 초보자 가이드를 읽고 Desktop 로컬 설정을 완료한 다음 이 리포지토리를 루트에서 편집기로 엽니다. 셸은 시작할 때 SUPASTACK_APP_URL을 터미널 설정으로 읽습니다 — 저장된 .env 파일에서가 아닙니다.

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

1. `.agents/skills/add-a-desktop-capability/SKILL.md`를 열거나 — 코딩 에이전트에게 따르라고 하고 — 작은 네이티브 변경을 하나 합니다. 예를 들어 새 보기 메뉴 항목 또는 다른 소환 단축키.

2. `cargo check`를 실행하고 셸을 시작하고 열린 창에서 변경을 실제로 시험합니다.

3. 출시할 모든 운영 체제에서 반복합니다 — 트레이, 단축키, 메뉴 동작은 플랫폼마다 다릅니다.

사용자 정의 코드의 경우 동작 이름, 영향을 받는 메뉴 또는 단축키, 각 OS에서 발생해야 하는 것을 지정합니다. 이 태스크를 코딩 에이전트에 주고 `AGENTS.md`, `.ai/PROJECT_CONTEXT.md` 및 건드릴 파일의 `.ai/` 미러를 읽게 하고, 편집 전에 파일과 검사를 나열하게 하고, diff를 보여 달라고 하십시오. 샘플 값을 사용하고 실제 비밀은 절대 붙여넣지 마십시오.

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

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

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

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


## 먼저 네이티브인지 제품인지 결정

사용자가 제품 UI로 경험하는 것 — 화면, 데이터, 설정 — 은 웹 앱에 속하고 자동으로 창에 도착합니다. OS 수준 동작만 Rust에 속합니다: 창, 트레이, 메뉴, 전역 단축키, 로그인 시 시작, 업데이트 확인.

```
apps/desktop/src-tauri/src/lib.rs
apps/desktop/src-tauri/tauri.conf.json
apps/desktop/src-tauri/capabilities/default.json
```


## webview 샌드박스를 좁게 유지

webview는 `capabilities/default.json`이 나열하는 것만 호출할 수 있습니다. 새 플러그인이 필요한 변경은 `Cargo.toml`에 크레이트를 추가하고 `lib.rs`에 등록하고 capabilities에서 최소 권한을 부여합니다 — 와일드카드는 절대 아닙니다.

영속적인 셸 상태 — 창 위치, 줌, 업데이트 채널, 창 기본 설정 — 은 수동으로 관리하는 파일이 아니라 포함된 사이드카를 통해 앱의 데이터 디렉터리에 있습니다.


## 모든 대상 OS에서 검증

cargo test를 실행한 다음 Windows, macOS, Linux에서 실제 창을 엽니다: 창 상태 복원, 트레이로 닫기, 단일 인스턴스 포커스, 변경이 활성화된 상태에서의 소환 단축키. 하나의 OS가 통과해도 다른 두 개는 증명되지 않습니다.

[네이티브 메뉴 및 창 기본 설정](https://supastack.dev/ko/docs/desktop/menus.md)

[Desktop 테스트 체크리스트](https://supastack.dev/ko/docs/desktop/testing.md)


## 다음

[코딩 에이전트로 빌드하기](https://supastack.dev/ko/docs/desktop/agents.md)
