はじめに
Replitは、あらゆるフレームワークやスタックを記述・実行できるクラウド開発環境です。カスタムテンプレートを構築するには、2つの推奨パスがあります:
- Gitプロバイダーからインポート — GitHub、GitLab、またはBitbucketから既存のスターターStack(または好みに合ったもの)をインポートします。
- Blankテンプレートをフォーク — Blankテンプレートをフォークして、完全に空の開発環境からゼロベースで始めます。
お客様はRust、Python、Java、C++、その他多くのスタックに対応したテンプレートを正常にビルドしています—実行できるものであれば、Replitでも実行できます。
最初のテンプレートを構築する際は、Replitのフィールドエンジニアリングチームとの連携をお勧めします。彼らは幅広いスタックにわたるカスタムテンプレートのセットアップに豊富な経験を持ち、サポートを提供できます。アカウントエグゼクティブにお問い合わせの上、繋いでもらってください。
カスタムテンプレートを使用すると、Enterpriseの管理者は事前設定済みのスタートポイントを作成し、組織のすべてのメンバーのAgentインプットボックスに直接表示させることができます。ビルダーがカスタムテンプレートを選択すると、AgentはそれをフォークしてテンプレートのConfiguration、Instructions、およびSkillsを使用してすべての後続作業をガイドします。追加のセットアップは不要です。
カスタムテンプレートはEnterpriseプランでのみ利用可能です。Orgの管理者のみがテンプレートをピン留めおよびManageできます。
カスタムテンプレートの仕組み
カスタムテンプレートは、組織内の標準的なReplit Appで、Agentインプットボックスにピン留めされたものです。ビルダーが選択すると:
- AgentはテンプレートをフォークしてNew Appを作成します(すべてのファイルがコピーされます)
- Agentは計画フェーズをスキップして、直接ビルドモードに移行します
- テンプレートの
custom_instruction/instructions.mdファイルがAgentのContextに注入されます
.agents/skills/からのカスタムスキルが検出されて利用可能になります
replit.mdファイルが継続的なプロジェクトコンテキストを提供します
これにより、組織の標準、パターン、ツールが最初のインタラクションから組み込まれます。
テンプレートファイル構造
カスタムテンプレートの推奨レイアウトは次のとおりです:
my-template/
├── .replit # App configuration (run commands, ports, modules)
├── replit.md # Agent memory: project overview and preferences
├── custom_instruction/
│ └── instructions.md # Company instructions injected into Agent's prompt
├── .agents/
│ └── skills/
│ └── my-skill/
│ └── SKILL.md # Custom skills Agent can invoke on demand
└── ... # The rest of your repo structure
各ファイルは個別の役割を担っています。以下のセクションでは、各ファイルの設定方法について説明します。
カスタムテンプレートのセットアップ
ベースAppの作成
組織内にNew Replit Appを作成します。ビルダーがスタートポイントとして必要なすべてのファイル、依存関係、およびConfigurationでプロジェクトをセットアップします。これには次が含まれます:
- ソースコードのScaffolding(コンポーネント、ユーティリティ、設定ファイル)
- 事前インストール済みの依存関係(
package.json、requirements.txtなど)
.replitファイルの環境Configuration
共有Secretの設定
テンプレートがAPIキー、トークン、またはその他の認証情報に依存している場合は、ピン留め前にテンプレートのSecrets(ツールパネル配下)に追加してください。ビルダーがテンプレートからNew Appを作成すると、すべてのSecretsが新しいAppに自動的にコピーされるため、ビルダーは認証情報を自分で設定せずにすぐに作業を開始できます。
すべてのSecretをcustom_instruction/instructions.md(または専用のSkill)に記録して、ビルダーが利用可能なものと各キーの用途を把握できるようにしてください。
Secretsはフォーク時にコピーされ、動的に同期されません。テンプレートのキーをローテーションしたり新しいSecretを追加したりしても、以前にフォークされた既存のAppは更新されません。ビルダーはそれらのAppで手動でSecretsを追加または更新する必要があります。
カスタムInstructionsの作成
プロジェクトルートのcustom_instruction/instructions.mdにファイルを作成します。これはテンプレートで最も重要なファイルです—組織がソフトウェアをどのようにビルドするかをAgentに伝えます。
フォルダー名はcustom_instruction(単数形)であり、custom_instructionsではありません。
AgentはこのファイルをシステムプロンプトにPreambleとともに直接注入し、会社提供のガイダンスとして示します。Markdownで記述し、以下を含めてください:
- アーキテクチャパターン: Appをどのように構造化するか
- コーディング標準: 命名規則、ファイル整理ルール、リンティング要件
- コンポーネントの使用: 使用するライブラリとコンポーネント(および避けるもの)
- APIパターン: バックエンドサービスの呼び出し方法、認証処理、エラー管理
- テスト要件: 期待されるテストとその実行方法
- デプロイガイドライン: 環境固有の設定とデプロイワークフロー
# Company Engineering Standards
## Architecture
All web applications use React with TypeScript. Use functional components
with hooks exclusively. State management uses Zustand for local state
and React Query for server state.
## Component Library
Use our internal design system package `@acme/ui`. Never use raw HTML
elements for buttons, inputs, forms, or modals — always use the
corresponding component from `@acme/ui`.
Import components like this:
```tsx
import { Button, TextField, Modal } from '@acme/ui';
```
## API Integration
All API calls go through the `@acme/api-client` package. Never use
raw fetch or axios directly. Authentication is handled automatically
by the client.
## Testing
Every component must have a corresponding test file. Use Vitest
for unit tests and Playwright for integration tests.
サイズ制限: コンテンツは約25 KBにソフト制限されています。この制限を超えるコンテンツは段階的に切り捨てられる場合があります。Instructionsが大きくなった場合は、instructions.mdにすべてを保持するのではなく、.agents/skills/のスキルに詳細な参照資料を移動してください。スキルは関連するときにオンデマンドで読み込まれるため、Instruction のサイズ制限にカウントされず、メインのInstructionsを高レベルのルールに集中させることができます。
カスタムスキルの追加
Agentが従うべき専門的なワークフロー用に.agents/skills/ディレクトリにスキルを作成します。各スキルはYAML Frontmatterを含むSKILL.mdファイルを含むディレクトリです。
.agents/skills/
├── use-design-system/
│ └── SKILL.md
├── api-integration/
│ └── SKILL.md
└── run-tests/
└── SKILL.md
各SKILL.mdのFrontmatterにはnameとdescriptionが必要です:
---
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はプロンプト内でnameとdescriptionのみを認識します。現在のタスクにスキルが関連する場合、オンデマンドで完全なSKILL.mdコンテンツを読み込みます。つまり、descriptionが重要です—Agentがスキルを使用すべきシナリオに一致するように記述してください。
スキルにはSKILL.mdとともにサポートファイルを含めることもできます:
.agents/skills/use-design-system/
├── SKILL.md
├── references/
│ └── component-api.md
└── assets/
└── theme-tokens.json
スキルの詳細については、Agentスキルおよびスキルの使用をご覧ください。
replit.mdの設定
プロジェクトルートのreplit.mdにテンプレートのアーキテクチャ概要を事前入力します。このファイルは常にAgentのContextに読み込まれ、継続的なプロジェクトメモリとして機能します。
ファイルには次の4つのセクションが必要です:
# 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をご覧ください。
テンプレートを組織にピン留めする
テンプレートの準備ができたら:
- 組織内のテンプレートAppに移動します
- Appのアクションメニュー(三点メニュー)を開きます
- Agentインプットボックスにピン留めを選択します
テンプレートをピン留めおよびピン解除できるのは、Orgの管理者(system_adminsロールのメンバー)のみです。
メンバーアクセスを読み取り専用に設定して、メンバーがピン留めされたテンプレートを編集できずに表示および使用できるようにします。
テンプレートは組織のすべてのメンバーのAgentインプットボックスの下に選択可能なPillとして表示されます。削除するには、同じメニューを開いてAgentインプットボックスからピン解除を選択します。
テンプレートアクセスの制御
ピン留めによりテンプレートはすべてのOrgメンバーに表示されます。より絞り込んだ配布のためには、テンプレートAppのInviteボタンを使用して特定のグループまたは個別ユーザーと共有します。これにより、Orgワイドのインプットボックスにピン留めせずに、特定のチームや人物がテンプレートを表示・フォークできる対象を制限できます。
ビルダーがテンプレートを選択した場合の動作
Orgメンバーがエージェント入力ボックスからピン留めされたテンプレートを選択すると:
- フォーク: すべてのファイルを含むテンプレートのコピーとしてNew Appが作成されます
- 計画スキップ: Agentは初期計画会話をバイパスして、直接ビルドモードに移行します
- Instructionsの読み込み:
custom_instruction/instructions.mdが読み込まれ、会社提供のガイダンスとしてAgentのシステムプロンプトに注入されます
- スキルの検出:
.agents/skills/のスキルが識別され、オンデマンド読み込み用にAgentのContextにリストされます
- プロジェクトコンテキストの読み込み:
replit.mdが読み込まれてAgentのContextに注入されます(存在しない場合は自動生成されます)
- Configurationの継承:
.replitファイル、依存関係、およびすべてのテンプレートファイルがNew Appに引き継がれます
ビルダーはすぐに特定の要件をAgentにPromptし始めることができ、AgentはテンプレートによってEstablishされたガードレール内で動作します。
ファイルの連携方法
各設定ファイルは個別の役割を担っています:
| ファイル | 目的 | Agentが読み込むタイミング | Agentによる変更可否 |
|---|
custom_instruction/instructions.md | 組織の標準とルール | 常時(システムプロンプトに注入) | 不可 |
.agents/skills/*/SKILL.md | 専門的なワークフローとパターン | オンデマンド(関連する場合) | 可(AgentもスキルをCreateできます) |
replit.md | プロジェクト概要と設定 | 常時(システムプロンプトに注入) | 可(Agentが時間をかけて更新します) |
.replit | ランタイムConfiguration | Appを設定する場合 | 可 |
主要な区別: custom_instruction/instructions.mdは組織の標準に対する静的で権威ある情報源です。replit.mdはプロジェクトが進化するにつれてAgentが維持するリビングドキュメントです。スキルは特定のワークフロー向けのオンデマンド参照資料です。
ベストプラクティス
Instructionsをフォーカスした状態に保つ
custom_instruction/instructions.mdは最も重要なパターンに向けて記述します。以下に焦点を当ててください:
- 取り消しが難しい決定(アーキテクチャ、データモデル)
- 一貫している必要があるパターン(コンポーネントの使用、API規約)
- ビルダーが知らないかもしれない標準(内部ライブラリ、チーム規約)
Changelog、実装の詳細、または頻繁に変わる情報の追加は避けてください。
検出可能なスキルDescriptionを記述する
SKILL.md FrontmatterのDescriptionフィールドは、Agentがスキルをいつ読み込むかを決定するために使用するものです。スキルが関連するタスクに一致するDescriptionを記述してください:
# 良い例 — いつ使用するかを説明している
description: フォームのビルドやユーザー入力の処理時に使用します。Acmeデザインシステムのバリデーションパターン、エラー表示規約、アクセシブルなフォームレイアウトを提供します。
# 効果が低い例 — 曖昧すぎる
description: フォームのユーティリティとヘルパー。
ワークフロー別にスキルを整理する
技術的なカテゴリーではなく、ワークフロー別にスキルをグループ化します:
| アプローチ | 例 |
|---|
| ワークフロー別 | build-a-form、connect-to-api、add-auth |
| 技術分野別 | react-utils、api-helpers、auth-config |
ワークフローアプローチにより、Agentは適切なタイミングでスキルを検出できます。
テンプレートを改善し続ける
テンプレートは使用を通じて改善されます。チームがテンプレートでビルドを開始した後:
- AgentがミスするパターンをWatchして
instructions.mdに追加します
- Agentが問題をうまく解決した場合はNew Skillを作成して解決策を記録します
- スタックの進化に合わせてベースの依存関係とConfigurationを更新します
- テンプレートからNew Appを作成してエクスペリエンスを確認することで変更をテストします
テンプレートの更新と既存のApp
テンプレートAppへの変更は、それから作成された新しいAppに反映されます。以前にテンプレートからフォークされた既存のAppは独立したコピーであり、更新を受け取りません。
関連リソース