메인 콘텐츠로 건너뛰기

Documentation Index

Fetch the complete documentation index at: https://docs.replit.com/llms.txt

Use this file to discover all available pages before exploring further.

시작하기

Replit은 어떤 프레임워크나 스택도 작성하고 실행할 수 있는 클라우드 개발 환경입니다. 커스텀 템플릿을 빌드하는 데는 두 가지 권장 경로가 있습니다:
  1. Git 제공자에서 가져오기 — GitHub, GitLab, 또는 Bitbucket에서 기존 스타터 스택(또는 원하는 스택)을 가져옵니다.
  2. Blank 템플릿 포크Blank 템플릿을 포크하여 완전히 빈 개발 환경에서 처음부터 시작합니다.
고객들은 Rust, Python, Java, C++ 및 다양한 스택에 맞는 템플릿을 성공적으로 빌드해 왔습니다. 어떤 것이든 실행된다면 Replit에서도 실행할 수 있습니다.
첫 번째 템플릿을 빌드할 때 Replit의 Field Engineering 팀과 함께 작업하는 것을 권장합니다. 이 팀은 다양한 스택에 걸쳐 커스텀 템플릿을 설정한 풍부한 경험을 보유하고 있으며 도움을 드릴 수 있습니다. 담당 Account Executive에게 연락하여 연결하세요.
커스텀 템플릿을 사용하면 Enterprise 관리자가 조직의 모든 구성원을 위해 Agent 입력 상자에 직접 표시되는 사전 구성된 시작점을 만들 수 있습니다. 빌더가 커스텀 템플릿을 선택하면 Agent가 이를 포크하고 템플릿의 구성, 지침, 스킬을 사용하여 이후 모든 작업을 안내합니다. 추가 설정이 필요하지 않습니다.
커스텀 템플릿은 Enterprise 플랜에서만 사용할 수 있습니다. 조직 관리자만 템플릿을 고정하고 관리할 수 있습니다.

커스텀 템플릿의 작동 방식

커스텀 템플릿은 Agent 입력 상자에 고정된 조직 내 표준 Replit App입니다. 빌더가 선택하면:
  1. Agent가 템플릿을 포크하여 새 앱을 생성합니다 (모든 파일이 복사됨)
  2. Agent가 계획 단계를 건너뛰고 바로 빌드로 진행합니다
  3. 템플릿의 custom_instruction/instructions.md 파일이 Agent의 컨텍스트에 주입됩니다
  4. .agents/skills/의 커스텀 스킬이 발견되어 사용 가능해집니다
  5. replit.md 파일이 지속적인 프로젝트 컨텍스트를 제공합니다
즉, 조직의 표준, 패턴, 도구가 첫 번째 상호작용부터 내장됩니다.

템플릿 파일 구조

커스텀 템플릿의 권장 레이아웃은 다음과 같습니다:
my-template/
├── .replit                              # 앱 구성 (실행 명령, 포트, 모듈)
├── replit.md                            # Agent 메모리: 프로젝트 개요 및 기본 설정
├── custom_instruction/
│   └── instructions.md                  # Agent 프롬프트에 주입되는 회사 지침
├── .agents/
│   └── skills/
│       └── my-skill/
│           └── SKILL.md                 # Agent가 필요 시 호출할 수 있는 커스텀 스킬
└── ...                                  # 나머지 저장소 구조
각 파일은 고유한 역할을 수행합니다. 아래 섹션에서 각 파일을 구성하는 방법을 안내합니다.

커스텀 템플릿 설정

기본 앱 만들기

조직에서 새 Replit App을 만듭니다. 빌더가 시작점으로 필요한 모든 파일, 종속성 및 구성으로 프로젝트를 설정합니다. 여기에는 다음이 포함됩니다:
  • 소스 코드 스캐폴딩 (컴포넌트, 유틸리티, 구성 파일)
  • 사전 설치된 종속성 (package.json, requirements.txt 등)
  • .replit 파일의 환경 구성

공유 시크릿 구성

템플릿이 API 키, 토큰 또는 기타 자격 증명에 의존하는 경우, 고정하기 전에 템플릿의 Secrets(도구 패널 아래)에 추가하세요. 빌더가 템플릿에서 새 앱을 만들면 모든 시크릿이 새 앱에 자동으로 복사되므로, 빌더는 자격 증명을 직접 구성하지 않고도 작업을 시작할 수 있습니다. custom_instruction/instructions.md(또는 전용 스킬)에 모든 시크릿을 문서화하여 빌더가 무엇이 있는지, 각 키가 무엇에 사용되는지 알 수 있도록 하세요.
시크릿은 포크 시점에 복사되며 동적으로 동기화되지 않습니다. 키를 교체하거나 템플릿에 새 시크릿을 추가하면, 이전에 포크된 기존 앱은 업데이트되지 않습니다. 빌더는 해당 앱에서 수동으로 시크릿을 추가하거나 업데이트해야 합니다.

커스텀 지침 작성

프로젝트 루트의 custom_instruction/instructions.md에 파일을 만듭니다. 이것은 템플릿에서 가장 중요한 파일로, 조직이 소프트웨어를 빌드하는 방식을 Agent에게 알려줍니다.
폴더 이름은 custom_instructions(복수형)가 아닌 custom_instruction(단수형)이어야 합니다.
Agent는 이 파일을 회사가 제공한 지침으로 프레이밍하는 서문과 함께 시스템 프롬프트에 직접 주입합니다. Markdown으로 작성하고 다음을 포함하세요:
  • 아키텍처 패턴: 앱의 구조화 방식
  • 코딩 표준: 명명 규칙, 파일 구성 규칙, 린팅 기대치
  • 컴포넌트 사용: 사용할 (그리고 피해야 할) 라이브러리와 컴포넌트
  • API 패턴: 백엔드 서비스 호출, 인증 처리, 오류 관리 방법
  • 테스트 요구 사항: 기대되는 테스트와 실행 방법
  • 배포 지침: 환경별 구성 및 배포 워크플로
# 회사 엔지니어링 표준

## 아키텍처
모든 웹 애플리케이션은 TypeScript와 함께 React를 사용합니다. 훅이 있는
함수형 컴포넌트만 사용합니다. 상태 관리는 로컬 상태에 Zustand를,
서버 상태에 React Query를 사용합니다.

## 컴포넌트 라이브러리
내부 디자인 시스템 패키지 `@acme/ui`를 사용합니다. 버튼, 입력, 폼,
모달에는 절대 원시 HTML 요소를 사용하지 말고 항상 `@acme/ui`
해당 컴포넌트를 사용합니다.

다음과 같이 컴포넌트를 가져옵니다:
```tsx
import { Button, TextField, Modal } from '@acme/ui';
```

## API 통합
모든 API 호출은 `@acme/api-client` 패키지를 통해 이루어집니다.
절대 raw fetch나 axios를 직접 사용하지 않습니다. 인증은 클라이언트가
자동으로 처리합니다.

## 테스트
모든 컴포넌트에는 해당 테스트 파일이 있어야 합니다. 단위 테스트에는
Vitest를, 통합 테스트에는 Playwright를 사용합니다.
크기 제한: 콘텐츠는 약 25 KB로 소프트 제한됩니다. 이 제한을 초과하는 콘텐츠는 점진적으로 잘릴 수 있습니다. 지침이 늘어나면, 모든 것을 instructions.md에 유지하는 대신 상세한 참조 자료를 .agents/skills/스킬로 이동하세요. 스킬은 관련 있을 때 필요 시 로드되므로 지침 크기 제한에 포함되지 않으며 주요 지침을 고수준 규칙에 집중되게 유지합니다.

커스텀 스킬 추가

Agent가 따라야 할 특수 워크플로를 위해 .agents/skills/ 디렉터리에 스킬을 만듭니다. 각 스킬은 YAML 프론트매터가 있는 SKILL.md 파일을 포함하는 디렉터리입니다.
.agents/skills/
├── use-design-system/
│   └── SKILL.md
├── api-integration/
│   └── SKILL.md
└── run-tests/
    └── SKILL.md
SKILL.md에는 프론트매터에 namedescription이 필요합니다:
---
name: use-design-system
description: Use when building UI components. Provides component patterns, theming rules, and accessibility requirements for the Acme design system.
---

# Acme Design System

## Available components

- `Button` — Primary, secondary, and ghost variants
- `TextField` — Text input with validation support
- `Modal` — Dialog overlay with focus trapping
...
필드필수 여부세부 사항
name최대 64자. 소문자, 숫자, 하이픈만 가능합니다.
description최대 1,024자. 스킬이 무엇을 하는지, 언제 사용하는지 설명합니다.
enabled아니오기본값은 true입니다. 삭제하지 않고 비활성화하려면 false로 설정합니다.
스킬 로드 방식: Agent는 프롬프트에서 namedescription만 봅니다. 스킬이 현재 작업과 관련 있을 때 필요 시 전체 SKILL.md 콘텐츠를 읽습니다. 즉, description이 매우 중요합니다. Agent가 스킬을 사용해야 하는 시나리오와 일치하도록 작성하세요. 스킬은 SKILL.md와 함께 지원 파일도 포함할 수 있습니다:
.agents/skills/use-design-system/
├── SKILL.md
├── references/
│   └── component-api.md
└── assets/
    └── theme-tokens.json
스킬에 대한 자세한 내용은 Agent Skills스킬 사용을 참조하세요.

replit.md 구성

프로젝트 루트의 replit.md에 템플릿의 아키텍처 개요를 사전에 채워 넣습니다. 이 파일은 항상 Agent의 컨텍스트에 로드되며 지속적인 프로젝트 메모리 역할을 합니다. 파일에는 다음 네 섹션이 있어야 합니다:
# Overview
Task management application built with React, TypeScript, and the Acme
design system. Uses Express.js backend with PostgreSQL.

# User Preferences
- Use TypeScript for all files
- Prefer functional components with hooks
- Follow Acme coding standards

# System Architecture
- Frontend: React + TypeScript + @acme/ui
- Backend: Express.js + TypeScript
- Database: PostgreSQL with Drizzle ORM
- Auth: Acme SSO via @acme/auth

# External Dependencies
- @acme/ui: Internal design system
- @acme/api-client: API integration layer
- @acme/auth: Authentication SDK
Agent는 프로젝트가 발전함에 따라 replit.md를 업데이트합니다. 파일이 약 4,000 토큰을 초과하면 Agent가 자동으로 요약하여 집중적이고 유용하게 유지합니다. 자세한 내용은 replit.md를 참조하세요.

조직에 템플릿 고정

템플릿이 준비되면:
  1. 조직의 템플릿 앱으로 이동합니다
  2. 앱의 작업 메뉴(점 세 개 메뉴)를 엽니다
  3. Agent 입력 상자에 고정을 선택합니다
Agent 입력 상자에 고정 옵션을 보여주는 앱 작업 메뉴
조직 관리자(system_admins 역할의 구성원)만 템플릿을 고정하거나 고정 해제할 수 있습니다.
구성원이 고정된 템플릿을 편집하지 않고 보고 사용할 수 있도록 구성원 액세스를 읽기 전용으로 설정합니다. 구성원 액세스가 읽기 전용으로 설정된 초대 대화 상자 이제 템플릿이 조직의 모든 구성원을 위해 Agent 입력 상자 아래에 선택 가능한 필로 표시됩니다. 제거하려면 동일한 메뉴를 열고 Agent 입력 상자에서 고정 해제를 선택합니다.

템플릿 접근 제어

고정하면 템플릿이 모든 조직 구성원에게 표시됩니다. 보다 타겟팅된 배포를 위해 템플릿 앱의 초대 버튼을 사용하여 특정 그룹 또는 개별 사용자와 공유합니다. 이를 통해 조직 전체 입력 상자에 고정하지 않고도 어떤 팀이나 사람이 템플릿을 보고 포크할 수 있는지 제한할 수 있습니다.

빌더가 템플릿을 선택하면 어떻게 되는가

Agent 입력 상자에 선택 가능한 필로 표시된 템플릿 조직 구성원이 Agent 입력 상자에서 고정된 템플릿을 선택하면:
  1. 포크: 모든 파일이 포함된 템플릿의 복사본으로 새 앱이 생성됩니다
  2. 계획 건너뛰기: Agent가 초기 계획 대화를 건너뛰고 빌드 모드로 직접 진행합니다
  3. 지침 로드: custom_instruction/instructions.md가 읽혀 회사 제공 지침으로 Agent의 시스템 프롬프트에 주입됩니다
  4. 스킬 발견: .agents/skills/의 스킬이 식별되어 필요 시 로드를 위해 Agent의 컨텍스트에 나열됩니다
  5. 프로젝트 컨텍스트 로드: replit.md가 읽혀 Agent의 컨텍스트에 주입됩니다 (없으면 자동 생성됨)
  6. 구성 상속: .replit 파일, 종속성, 모든 템플릿 파일이 새 앱으로 이어집니다
빌더는 즉시 특정 요구 사항으로 Agent에게 프롬프트를 시작할 수 있으며, Agent는 템플릿에서 설정된 가드레일 내에서 작동합니다.

파일이 함께 작동하는 방식

각 구성 파일은 고유한 역할을 수행합니다:
파일목적Agent가 읽는 시점Agent가 수정 가능 여부
custom_instruction/instructions.md조직 표준 및 규칙항상 (시스템 프롬프트에 주입)아니오
.agents/skills/*/SKILL.md특수 워크플로 및 패턴필요 시 (관련 있을 때)예 (Agent도 스킬을 만들 수 있음)
replit.md프로젝트 개요 및 기본 설정항상 (시스템 프롬프트에 주입)예 (Agent가 시간이 지남에 따라 업데이트)
.replit런타임 구성앱 구성 시
핵심 구분: custom_instruction/instructions.md는 조직 표준을 위한 정적이고 권위 있는 소스입니다. replit.md는 프로젝트가 발전함에 따라 Agent가 유지 관리하는 살아있는 문서입니다. 스킬은 특정 워크플로를 위한 필요 시 참조 자료입니다.

모범 사례

지침을 집중되게 유지

가장 중요한 패턴을 위해 custom_instruction/instructions.md를 작성합니다. 다음에 집중하세요:
  • 되돌리기 어려운 결정 (아키텍처, 데이터 모델)
  • 일관되어야 하는 패턴 (컴포넌트 사용, API 규칙)
  • 빌더가 모를 수 있는 표준 (내부 라이브러리, 팀 규칙)
변경 이력, 구현 세부 사항, 또는 자주 변경되는 정보는 포함하지 마세요.

발견 가능한 스킬 설명 작성

SKILL.md 프론트매터의 description 필드는 Agent가 스킬을 로드할 시점을 결정하는 데 사용하는 것입니다. 스킬이 관련 있는 작업과 일치하는 설명을 작성하세요:
# 좋음 — 언제 사용할지 설명
description: Use when building forms or handling user input. Provides validation patterns, error display conventions, and accessible form layouts.

# 덜 효과적 — 너무 모호함
description: Form utilities and helpers.

워크플로별로 스킬 구성

기술적 카테고리가 아닌 워크플로를 중심으로 스킬을 그룹화합니다:
접근 방식예시
워크플로별build-a-form, connect-to-api, add-auth
기술 영역별react-utils, api-helpers, auth-config
워크플로 접근 방식은 Agent가 적시에 스킬을 발견하는 데 도움이 됩니다.

템플릿을 반복 개선

템플릿은 사용하면서 개선됩니다. 팀이 템플릿으로 빌드를 시작한 후:
  1. Agent가 잘못 처리하는 패턴을 확인하고 instructions.md에 추가합니다
  2. Agent가 문제를 잘 해결할 때 새 스킬을 만들어 해결책을 캡처합니다
  3. 스택이 발전함에 따라 기본 종속성과 구성을 업데이트합니다
  4. 템플릿에서 새 앱을 만들어 변경 사항을 테스트하여 경험을 확인합니다

템플릿 업데이트와 기존 앱

템플릿 앱에 대한 변경 사항은 새로 만들어지는 앱에 반영됩니다. 템플릿에서 이전에 포크된 기존 앱은 독립적인 복사본이며 업데이트를 받지 않습니다.

관련 리소스