मुख्य सामग्री पर जाएं

कॉन्फ़िगरेशन

प्रत्येक Kazzle ऐप के प्रोजेक्ट रूट में एक kazzle.config.ts होता है। यह फ़ाइल परिभाषित करती है कि आपके ऐप में क्या है — कंपोनेंट, स्किल और मेटाडेटा।

त्वरित शुरुआत

import { defineConfig } from './kazzle.types';

export default defineConfig({
  components: [
    { name: 'My App', type: 'ui', path: '.' }
  ]
});
defineConfig हेल्पर TypeScript ऑटोकंपलीशन और वेलिडेशन प्रदान करता है। प्रकार kazzle.types.ts से आते हैं, जो ऑटो-जेनरेट होता है और हर टेम्पलेट में शामिल होता है।

शीर्ष-स्तरीय फ़ील्ड

फ़ील्डप्रकारआवश्यकविवरण
iconstringनहींरेपो रूट के सापेक्ष ऐप आइकन फ़ाइल का पथ (png, jpg, svg, webp, ico)। प्रकाशन पर CDN में अपलोड किया जाता है।
componentsobject[]नहींनिष्पादन योग्य कंपोनेंट — UI फ्रंटएंड या बैकग्राउंड प्रक्रियाएं
skillsobject[]नहींAI स्किल परिभाषाएं — मार्कडाउन फ़ाइलें जो AI डोमेन ज्ञान के लिए पढ़ता है
capabilitiesobjectनहींवैकल्पिक डेस्कटॉप इंटीग्रेशन सुविधाएं जैसे हॉटकी, नोटिफिकेशन और स्टेटस बार उपस्थिति

कंपोनेंट फ़ील्ड

components[] में प्रत्येक प्रविष्टि:
फ़ील्डप्रकारआवश्यकविवरण
namestringहाँऐप के भीतर अद्वितीय कंपोनेंट नाम
type"ui" | "process"हाँकंपोनेंट प्रकार — ui (अधिकतम 1) या process
pathstringहाँऐप निर्देशिका के भीतर प्रवेश पथ
runtimeobjectनहींकमांड: { dev?, build?, run? }
runtime.devstringनहींडेव सर्वर शुरू करने के लिए कमांड (जैसे "bun run dev")
runtime.buildstringनहींप्रोडक्शन के लिए बिल्ड करने के लिए कमांड (जैसे "vite build")
runtime.runstringनहींप्रोडक्शन में शुरू करने के लिए कमांड (जैसे "bun run start")
schedulestringनहींप्रक्रिया कंपोनेंट के लिए Cron शेड्यूल (जैसे "*/5 * * * *")
trigger"webhook" | "event"नहींप्रक्रिया कंपोनेंट के लिए ट्रिगर मोड
envobjectनहींगुप्त संग्रह + env var इंजेक्शन के लिए पर्यावरण
env.collectionstringहाँ (यदि env)गुप्त संग्रह slug
env.environmentstringहाँ (यदि env)पर्यावरण slug
env.includestring[]नहींकेवल ये env var नाम इंजेक्ट करें। यदि छोड़ा गया है, तो संग्रह+पर्यावरण से सभी इंजेक्ट करें।

स्किल फ़ील्ड

skills[] में प्रत्येक प्रविष्टि:
फ़ील्डप्रकारआवश्यकविवरण
namestringहाँस्किल नाम
pathstringहाँऐप रूट के सापेक्ष SKILL.md फ़ाइल का पथ

बाधाएं

  • प्रति ऐप अधिकतम 1 UI कंपोनेंट
  • कंपोनेंट name मान ऐप के भीतर अद्वितीय होने चाहिए

टेम्पलेट उदाहरण

ui ऐप

import { defineConfig } from './kazzle.types';

export default defineConfig({
  /** रेपो रूट के सापेक्ष ऐप आइकन का पथ। प्रकाशन पर CDN में अपलोड किया जाता है। */
  icon: 'components/ui/public/favicon.svg',
  /** ऐप कंपोनेंट — प्रत्येक प्रविष्टि एक तैनाती योग्य इकाई को परिभाषित करती है। अधिकतम 1 UI कंपोनेंट। */
  components: [
    { name: 'My App', type: 'ui', path: './components/ui' },
  ],
});

प्रक्रिया ऐप

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: [