import { defineConfig } from './kazzle.types';
export default defineConfig({
/** リポジトリルートからの相対パスでアプリアイコン。公開時に CDN にアップロードされます。 */
icon: 'icon.svg',
/** アプリコンポーネント — 各エントリはデプロイ可能なユニットを定義します。 */
components: [
{
name: 'My App',
type: 'process',
path: './components/process/index.ts',
runtime: { dev: 'bun run dev', run: 'bun run start' },
// 永続的なプロセスは長時間実行されるサーバーです。プラットフォームは
// 各トリガーの `path` で実行中のサーバーにトリガーをポストします。
// `Authorization: Bearer ${KAZZLE_TRIGGER_SECRET}` を使用します。カスタマーコードは
// 作業を行う前にヘッダーを検証します。
processMode: 'persistent',
triggers: [
// Cron の例 — コメント解除して調整します。5 フィールド、分単位の解像度。
// { name: 'hourly-sync', kind: 'schedule', schedule: '0 * * * *', path: '/cron/hourly-sync' },
// Webhook の例 — /webhooks/{spaceId}/{appId}/My App/incoming にポストします
// { name: 'incoming', kind: 'webhook', path: '/webhook/incoming' },
],
},
],
});