दस्तावेज़
रनटाइम कॉन्फ़िगरेशन
प्रक्रिया, डेटा निर्देशिका, क्रेडेंशियल प्रकार और एकीकरण सेटिंग्स चुनें जो वास्तव में प्रत्येक रनटाइम को नियंत्रित करती हैं।
अंग्रेज़ी से स्वचालित रूप से अनुवादित। अंग्रेज़ी मूल देखें
कॉन्फ़िगरेशन स्वामी
साइडकार पर्यावरण कॉन्फ़िगरेशन को पढ़ता है AppConfigService में apps/sidecar/src/config.ts. जब एक परत का निर्माण किया जाता है तो वह उन मानों को पढ़ती है और उन सेवाओं को AppConfig मान भेजती है जिन्हें इसकी आवश्यकता होती है। पैरेंट शेल वेरिएबल को बदलने से पहले से चल रही सेवा में बदलाव नहीं होता है।
बच्चे को शुरू करते समय टौरी अपना स्वयं का लॉन्च टोकन और एप्लिकेशन डेटा/माइग्रेशन पथ प्रदान करता है। ब्राउज़र पूर्वावलोकन वाइट-साइड कनेक्शन वेरिएबल का उपयोग करता है। मोबाइल एक युग्मित डेस्कटॉप कनेक्शन और डिवाइस क्रेडेंशियल संग्रहीत करता है। दस्तावेज़ीकरण साइट में अलग वर्कर बाइंडिंग और एक स्वतंत्र स्थानीय स्टूडियो प्रक्रिया है। वे एक सार्वभौमिक कॉन्फ़िगरेशन फ़ाइल साझा नहीं करते हैं.
जिस व्यवहार को आप बदलना चाहते हैं उसके स्वामी को कॉन्फ़िगर करें। उदाहरण के लिए, सीएलआई माइग्रेशन यूआरएल सेट करने से मूल डेस्कटॉप डेटाबेस रीडायरेक्ट नहीं होता है, और दस्तावेज़ीकरण सहायक को कॉन्फ़िगर करने से डेस्कटॉप एआई प्रदाता क्रेडेंशियल की आपूर्ति नहीं होती है।
एक पृथक साइडकार प्रारंभ करें
CADCAMFUN_TOKEN=local-development-token \
CADCAMFUN_DATA_DIR=/tmp/cadcamfun-config-example \
CADCAMFUN_MIGRATIONS_DIR="$PWD/packages/db/drizzle" \
CADCAMFUN_AI_HOST=direct \
CADCAMFUN_AI_OFFLINE=1 \
bun --no-env-file apps/sidecar/src/main.ts यह एक डिस्पोजेबल निर्देशिका और एक उदाहरण विकास टोकन का उपयोग करता है। अपनी प्रक्रिया के लिए एक उपयुक्त टोकन चुनें। सर्वर एक निर्दिष्ट पोर्ट पर लूपबैक को बांधता है; उस पोर्ट को उसके तैयार इवेंट से पढ़ें। stdin को खुला रखें क्योंकि इसे बंद करने से शटडाउन का संकेत मिलता है। कमांड जानबूझकर सेटिंग्स को स्पष्ट रूप से पास करता है और Bun की स्वचालित पर्यावरण-फ़ाइल लोडिंग को अक्षम कर देता है।
सामान्य देशी लूप के लिए, उपयोग करें bun run desktop:dev. यह टॉरी को लॉन्च करने से पहले साइडकार बाइनरी और माइग्रेशन तैयार करता है, जो परिणामी प्रक्रिया कनेक्शन का मालिक है। दूसरा मैनुअल साइडकार शुरू न करें और यह मान लें कि मूल वेबव्यू उससे जुड़ जाएगा।
आवश्यक कनेक्शन और भंडारण सेटिंग्स
| सेटिंग | गलती करना | व्यवहार |
|---|---|---|
CADCAMFUN_TOKEN | आवश्यक | संरक्षित स्थानीय एपीआई मार्गों के लिए संशोधित एप्लिकेशन बियरर क्रेडेंशियल। |
CADCAMFUN_DATA_DIR | आवश्यक | साइडकार-प्रबंधित स्थानीय राज्य की जड़। डेटाबेस है cadcamfun.db इसके नीचे. |
CADCAMFUN_MIGRATIONS_DIR | अनुपस्थित | माइग्रेशन निर्देशिका डेटाबेस परत को पास कर दी गई। इसके बिना, डेटाबेस खोलने से एप्लिकेशन तालिकाएँ नहीं बनती या अपग्रेड नहीं होती हैं। |
CADCAMFUN_APP_URL | कॉन्फ़िगरेशन में अनुपस्थित | खाता लिंक एकीकरण के लिए बेस यूआरएल प्रदान किया गया। संबंधित सेवा इसके फ़ॉलबैक का निर्णय लेती है। |
CADCAMFUN_DEBUG_LINKS | असत्य | उन हैंडलर में खाता लिंक के लिए विकास प्रतिक्रिया फ़ील्ड सक्षम करता है जो उनका समर्थन करते हैं। |
डेटा डायरेक्टरी एक स्टोरेज रूट है, HTTP बाइंड एड्रेस नहीं। मुख्य सर्वर का श्रोता तय हो गया है 127.0.0.1 एक अल्पकालिक बंदरगाह के साथ. सहयोगी नेटवर्किंग अपने स्वयं के स्पष्ट रूप से सक्षम HTTPS गेटवे का उपयोग करती है; यूआरएल सेटिंग बदलने से लूपबैक श्रोता सार्वजनिक नहीं हो जाता।
कॉन्फ़िगर की गई माइग्रेशन निर्देशिका को बाइनरी के साथ संरेखित रखें। जब माइग्रेशन की योजना नहीं बनाई जा सकती, उसका बैकअप नहीं लिया जा सकता, या उसे लागू नहीं किया जा सकता तो स्टार्टअप तैयार होने से पहले ही विफल हो सकता है। डेटाबेस संदर्भ लेनदेन और बैकअप व्यवहार की व्याख्या करता है; माइग्रेशन छोड़ने के बाद गायब तालिका इस बात का प्रमाण देने के बजाय एक कॉन्फ़िगरेशन समस्या है कि प्रोजेक्ट हटा दिया गया था।
एप्लिकेशन टोकन को संशोधित मान के रूप में पढ़ा जाता है और कॉन्फ़िगरेशन लॉग में कभी दिखाई नहीं देता है। इस पृष्ठ पर प्रत्येक सेटिंग को एक बार पढ़ा जाता है apps/sidecar/src/config.ts; परिवर्तित मान साइडकार के पुनरारंभ होने के बाद ही प्रभावी होता है।
एआई होस्ट और कनेक्टिविटी
| सेटिंग | गलती करना | व्यवहार |
|---|---|---|
CADCAMFUN_AI_HOST | nikcli | चुनना nikcli या direct. डायरेक्ट होस्ट एम्बेडेड परसिस्टेंट टूल लूप और विशेषज्ञ शेड्यूलर नहीं जोड़ता है। |
CADCAMFUN_AI_OFFLINE | असत्य | नेटवर्क प्रदाता-कैटलॉग लोडिंग और लाइव वेब-सर्च हैंडलर को अक्षम करता है। यह कोई स्थानीय मॉडल कार्यान्वयन नहीं है. |
CADCAMFUN_AI_MINIMAX_BASE_URL | अनुपस्थित | एम्बेडेड मिनीमैक्स कॉन्फ़िगरेशन के लिए वैकल्पिक ट्रिम किए गए एंडपॉइंट ओवरराइड। |
प्रदाता कुंजियाँ क्रेडेंशियल एपीआई द्वारा प्रबंधित की जाती हैं और एआई सेवा द्वारा जारी रखी जाती हैं <dataDir>/ai/credentials.json. प्रत्येक प्रदाता के लिए एक अनिर्दिष्ट पर्यावरण चर का आविष्कार करके उन्हें आपूर्ति नहीं की जाती है। क्या कॉन्फ़िगर किया गया है यह स्थापित करने के लिए प्रदाता/मॉडल स्थिति समापन बिंदु का उपयोग करें एआई गाइड समर्थित डायरेक्ट-मॉडल रूटिंग के लिए।
ऑफ़लाइन मोड क्लाउड प्रदाता कॉल को ऑफ़लाइन उत्तर में नहीं बदलता है। एक कॉन्फ़िगर किए गए प्रत्यक्ष या एम्बेडेड मॉडल को अभी भी अनुमान के लिए अपने प्रदाता कनेक्शन की आवश्यकता हो सकती है। स्थानीय-प्रथम उत्पाद मॉडल कनेक्शन के बिना स्थानीय परियोजनाओं को बरकरार रखता है; वह भंडारण संपत्ति ऑफ़लाइन एआई अनुमान से अलग है।
ऑपरेटर पॉलिसी यहां से लोड की गई है <dataDir>/ai/policy.json. एम्बेडेड होस्ट एप्लिकेशन के एआई स्टोरेज के नीचे अपनी स्वयं की कार्य/कॉन्फ़िगरेशन निर्देशिकाओं को अलग करता है। नीति, क्रेडेंशियल, सत्र संदर्भ और प्रदाता-कैटलॉग कैश के अलग-अलग उद्देश्य हैं; एक फ़ाइल की प्रतिलिपि बनाने से वार्तालाप के संपूर्ण रनटाइम का पुनर्निर्माण नहीं होता है।
खाता और बिलिंग एकीकरण
| सेटिंग | उपयोग | अनुपस्थित होने पर |
|---|---|---|
STRIPE_SECRET_KEY | आउटबाउंड स्ट्राइप एपीआई प्रमाणीकरण। | सशुल्क चेकआउट और बिलिंग पोर्टल एकीकरण उपलब्ध नहीं है। |
STRIPE_WEBHOOK_SECRET | हस्ताक्षरित स्ट्राइप वेबहुक पेलोड सत्यापित करें। | वेबहुक हैंडलर सत्यापन कॉन्फ़िगरेशन के बिना अंतर्ग्रहण से इनकार करता है। |
STRIPE_PRICE_BASIC, STRIPE_PRICE_PRO, STRIPE_PRICE_ENTERPRISE | सशुल्क योजनाओं के लिए मूल्य आईडी। रिक्त मानों को नजरअंदाज कर दिया जाता है. | एक गुम मैपिंग उस योजना के लिए कॉन्फ़िगर किए गए चेकआउट मूल्य की पहचान नहीं कर सकती है। |
CRON_SECRET | क्रॉन रखरखाव के लिए अतिरिक्त साझा क्रेडेंशियल। | उस गार्ड को किसी अतिरिक्त क्रॉन रहस्य की आवश्यकता नहीं है; आवेदन धारक प्रवेश अभी भी लागू है। |
ADMIN_EMAIL | खाता/सेवा नीति द्वारा उपयोग की गई प्रशासक पहचान। | स्थानीय इंस्टॉलेशन की प्रोफ़ाइल उसकी सेवाओं द्वारा कार्यान्वित स्थानीय प्रशासनिक व्यवहार को बरकरार रखती है। |
ये सेटिंग्स एकीकरण को कॉन्फ़िगर करती हैं; वे यह स्थापित नहीं करते हैं कि एक दूरस्थ खाता, मूल्य, सदस्यता, या वेबहुक डिलीवरी मौजूद है। ऑपरेशन की वास्तविक विफलता और चल रही सेवा स्थिति की जाँच करें। यह अनुमान न लगाएं कि तालिका की उपस्थिति का मतलब है कि संबंधित होस्ट की गई सुविधा पूरी तरह से कॉन्फ़िगर की गई है।
AppConfig इंटरफ़ेस में प्रतिस्थापन मॉडल फ़ैक्टरी और स्ट्राइप एपीआई बेस जैसे परीक्षण-इंजेक्शन हुक भी शामिल हैं। वे इस उत्पादन कॉन्फ़िगरेशन परत द्वारा पढ़े जाने वाले पर्यावरण चर नहीं हैं। परीक्षण हुक को परिनियोजन निर्देशों से दूर रखें जब तक कि चल रहा होस्ट स्पष्ट रूप से उन्हें उजागर न कर दे।
बिलिंग परीक्षण मार्ग 14-दिन में शुरू होता है PRO परीक्षण (TRIAL_DAYS में apps/sidecar/src/repos/billing-repo.ts, द्वारा उपयोग किया जाता है http/billing.ts). उपलब्ध योजनाएं हैं FREE, BASIC, PRO, और ENTERPRISE; केवल तीन भुगतान योजनाएं ही लेती हैं STRIPE_PRICE_* सेटिंग।
लॉग और टेलीमेट्री
OTEL_EXPORTER_OTLP_ENDPOINT साइडकार के ओटीएलपी/एचटीटीपी ट्रेस, मीट्रिक और लॉग निर्यातकों को सक्षम बनाता है। गैर-रिक्त समापन बिंदु के बिना, यह वैकल्पिक टेलीमेट्री परत अक्षम है। निर्यातक कोड सिग्नल-विशिष्ट समापन बिंदु बनाता है; एक संग्राहक को कॉन्फ़िगर करें जो उन संकेतों का समर्थन करता है।
सामान्य साइडकार लॉगिंग टेलीमेट्री निर्यात से अलग है। Stdout शेल द्वारा उपभोग किए गए JSON तत्परता/त्रुटि प्रोटोकॉल को वहन करता है, जबकि लॉग stderr को निर्देशित होते हैं। स्टार्टअप का निदान करते समय, एप्लिकेशन विंडो में प्रत्येक आरंभीकरण विवरण शामिल करने की अपेक्षा करने के बजाय पहली प्रासंगिक त्रुटि और उसके संचालन संदर्भ को बनाए रखें।
डायग्नोस्टिक बंडलों में लॉन्च टोकन, प्रदाता कुंजी, सत्र टोकन या पूर्ण क्रेडेंशियल फ़ाइलें शामिल न करें। स्रोत पथ, विधि/स्थिति, समापन बिंदु आईडी, गैर-गुप्त प्रोजेक्ट आईडी और विफल डेटाबेस ऑपरेशन आमतौर पर एक सुरक्षित और अधिक उपयोगी प्रारंभिक बिंदु प्रदान करते हैं।
ग्राहक विन्यास
जब केवल ब्राउज़र वाला डेस्कटॉप पूर्वावलोकन नकली इन-मेमोरी एपीआई का उपयोग करता है VITE_SIDECAR_URL अनुपस्थित है. इसे मैन्युअल रूप से प्रारंभ किए गए साइडकार से कनेक्ट करने के लिए, वह URL सेट करें और VITE_SIDECAR_TOKEN vite शुरू करने से पहले. पैकेज्ड टौरी पथ इसके बजाय शेल से अपना कनेक्शन प्राप्त करता है।
VITE_SIDECAR_URL=http://127.0.0.1:READY_PORT \
VITE_SIDECAR_TOKEN=local-development-token \
bun run --filter @cadcamfun/desktop dev पोर्ट प्लेसहोल्डर बदलें. वाइट सेटिंग्स फ्रंटएंड विकास प्रक्रिया से संबंधित हैं; उन्हें बदलने से साइडकार पुनः आरंभ या पुन: कॉन्फ़िगर नहीं होता है। ब्राउज़र एक्सेस साइडकार की लूपबैक/टौरी सीओआरएस नीति और सामान्य बियरर प्रवेश के अधीन है।
मोबाइल पेयरिंग मोबाइल एप्लिकेशन के माध्यम से अपना डेस्कटॉप पता, प्रमाणपत्र फिंगरप्रिंट और डिवाइस टोकन संग्रहीत करता है। डेस्कटॉप के लॉन्च टोकन को बदलना फ़ोन को पेयर करने का सामान्य तरीका नहीं है। उपयोग युग्मन प्रक्रिया और जरूरत पड़ने पर अलग-अलग डिवाइस को रद्द कर दें।
डेटाबेस पथ चयन
| प्रक्रिया | चयन नियम |
|---|---|
| देशी डेस्कटॉप साइडकार | टौरी द्वारा प्रदत्त एप्लिकेशन डेटा निर्देशिका, फिर cadcamfun.db. |
| मैनुअल साइडकार | CADCAMFUN_DATA_DIR/cadcamfun.db. |
| डेटाबेस माइग्रेशन सीएलआई | DATABASE_URL, एक प्रारंभिक हटा रहा है file:; अन्यथा प्रक्रिया-सापेक्ष ./data/cadcamfun.db. |
जड़ db:migrate आवरण | डीबी पैकेज स्क्रिप्ट चलाता है, इसलिए डिफ़ॉल्ट भीतर ही हल हो जाता है packages/db. |
| दस्तावेज़ीकरण स्टूडियो | CADCAMFUN_DB, तब DATABASE_URL, फिर रिपॉजिटरी-रूट data/cadcamfun.db. फ़ाइल मौजूद होनी चाहिए. |
इसलिए खाली प्रोजेक्ट सूची का मतलब यह हो सकता है कि आपने कोई अन्य वैध डेटाबेस खोला है। माइग्रेशन बदलने या डेटा कॉपी करने से पहले प्रक्रिया और पूर्ण चयनित पथ को रिकॉर्ड करें। एक खाता सत्र यह भी बदल सकता है कि फ़ाइल को बदले बिना कौन से संसाधन दिखाई दे रहे हैं।
परिवर्तन लागू करें और सत्यापित करें
- स्वामी प्रक्रिया और वर्तमान भंडारण पथ की पहचान करें। भंडारण या माइग्रेशन बदलने से पहले आवश्यक डेटा सुरक्षित रखें।
- उस प्रक्रिया को साफ़-साफ़ रोकें और उसके स्पष्ट लॉन्च कॉन्फ़िगरेशन या मूल सेटिंग को अपडेट करें।
- इसे फिर से शुरू करें और इसके वास्तविक तत्परता परिणाम की प्रतीक्षा करें। पुराने पोर्ट का पुन: उपयोग करने के बजाय नए कनेक्शन का समाधान करें।
- सार्वजनिक स्वास्थ्य कॉल और स्वीकृत संरक्षित कॉल की जाँच करें।
- विशिष्ट व्यवहार को सत्यापित करें: इच्छित प्रोजेक्ट प्रकट होता है, प्रदाता की स्थिति बदल जाती है, गेटवे पहुंच योग्य हो जाता है, या कॉन्फ़िगर टेलीमेट्री कलेक्टर अपेक्षित सिग्नल प्राप्त करता है।
कॉन्फ़िगर किए गए मान की उपस्थिति कार्यशील बाह्य एकीकरण के समान नहीं है। परिवर्तन करने के बाद सेवा परिणाम पढ़ें. डिफ़ॉल्ट वाले कॉन्फ़िगरेशन मानों को वैकल्पिक मानों से अलग किया जाना चाहिए जिसके लिए प्राप्तकर्ता सेवा अपना फ़ॉलबैक तय करती है।
कॉन्फ़िगरेशन निदान
यदि आरंभीकरण तैयार होने से पहले विफल हो जाता है, तो आवश्यक सेटिंग्स, माइग्रेशन उपलब्धता, निर्देशिका पहुंच और पहली परत-निर्माण त्रुटि का निरीक्षण करें। यदि स्वास्थ्य सफल होता है लेकिन संरक्षित कॉल विफल हो जाती है, तो टोकन प्रकार और वर्तमान प्रक्रिया की जाँच करें। यदि कोई प्रदाता परियोजनाओं के काम के दौरान विफल हो जाता है, तो डेटाबेस को रीसेट करने के बजाय एआई कॉन्फ़िगरेशन का निरीक्षण करें।
यदि स्टूडियो होस्ट की गई साइट पर अनुपलब्ध है, तो इसका उत्पादन एपीआई जानबूझकर 503 लौटाता है; चयनित मौजूदा फ़ाइल के विरुद्ध इसकी स्थानीय Bun प्रक्रिया प्रारंभ करें। यदि दस्तावेज़ीकरण सहायक अनुपलब्ध है, तो वर्कर बाइंडिंग या उसके कॉन्फ़िगर किए गए निक्ली बैकएंड का निरीक्षण करें। किसी भी निदान के लिए डेस्कटॉप क्रेडेंशियल्स को बदलने की आवश्यकता नहीं है।
स्रोत साक्ष्य: apps/sidecar/src/config.ts, layers.ts, main.ts, observability.ts, services/ai.ts, packages/db/src/migrate.ts, और packages/web/script/studio-server.ts.
प्रत्येक साइडकार सेटिंग एक टेबल में
AppConfigService साइडकार में यह एकमात्र स्थान है जो पर्यावरण को पढ़ता है। तालिका प्रत्येक वेरिएबल को उसके द्वारा पढ़े जाने वाले क्रम में सूचीबद्ध करती है। वैकल्पिक मान जो खाली हैं या रिक्त स्थान हैं, उन्हें वहां अनुपस्थित माना जाता है।
| चर | प्रकार | गलती करना | द्वारा उपयोग किया जाता है |
|---|---|---|---|
CADCAMFUN_TOKEN | संशोधित स्ट्रिंग | आवश्यक | प्रत्येक संरक्षित मार्ग के लिए बियरर मिडलवेयर |
CADCAMFUN_DATA_DIR | डोरी | आवश्यक | डेटाबेस, एआई स्टोरेज, प्लगइन्स, साथी, अपलोड |
CADCAMFUN_MIGRATIONS_DIR | डोरी | अनुपस्थित | डेटाबेस परत; अनुपस्थित का मतलब है कि कोई स्कीमा नहीं बनाया गया है |
CADCAMFUN_APP_URL | डोरी | अनुपस्थित | खाता ई-मेल में लिंक (विरासत NEXTAUTH_URL) |
CADCAMFUN_DEBUG_LINKS | बूलियन | false | प्रतिक्रियाओं में इको रीसेट और मैजिक लिंक (केवल विकास) |
CADCAMFUN_AI_OFFLINE | बूलियन | false | कोई प्रदाता-कैटलॉग डाउनलोड नहीं और कोई लाइव वेब खोज नहीं |
CADCAMFUN_AI_HOST | nikcli | direct | nikcli | सहायक मेज़बान; कोई अन्य मान स्टार्टअप को विफल कर देता है |
CADCAMFUN_AI_MINIMAX_BASE_URL | स्ट्रिंग, छंटनी | अनुपस्थित | एम्बेडेड होस्ट के लिए मिनीमैक्स एंडपॉइंट |
STRIPE_WEBHOOK_SECRET | डोरी | अनुपस्थित | इसके बिना, स्ट्राइप वेबहुक अस्वीकार कर दिए जाते हैं |
STRIPE_SECRET_KEY | संशोधित स्ट्रिंग | अनुपस्थित | इसके बिना, सशुल्क चेकआउट और बिलिंग पोर्टल अनुपलब्ध है |
STRIPE_PRICE_BASIC, _PRO, _ENTERPRISE | स्ट्रिंग, छंटनी | अनुपस्थित | प्रति भुगतान योजना मूल्य आईडी; रिक्त मानों को अनदेखा कर दिया जाता है |
CRON_SECRET | डोरी | अनुपस्थित | के लिए रहस्य साझा किया /api/cron/*; इसके बिना मार्ग स्थानीय ऐप के लिए खुला है |
ADMIN_EMAIL | डोरी | अनुपस्थित | प्रशासक ई-मेल; डिफ़ॉल्ट रूप से स्थानीय प्रोफ़ाइल अपनी स्वयं की स्थापना का प्रबंधन करती है |
OTEL_EXPORTER_OTLP_ENDPOINT | स्ट्रिंग, छंटनी | अनुपस्थित | ओटीएलपी/एचटीटीपी कलेक्टर आधार यूआरएल; इसके बिना टेलीमेट्री बंद है |
रिपोर्ट किया गया आवेदन version कोड में तय किया गया है (6.0.0), परिवेश से नहीं पढ़ा गया।
अमान्य मान स्टार्टअप को रोकते हैं
एक अनुपलब्ध आवश्यक चर, या एक मान जो पार्स नहीं करता है (उदाहरण के लिए CADCAMFUN_AI_HOST=local), कॉन्फ़िगरेशन परत विफल हो जाती है। साइडकार फिर अपनी तैयार लाइन के बजाय एक त्रुटि प्रिंट करता है, और डेस्कटॉप स्टार्टअप विफलता की रिपोर्ट करता है।
वेरिएबल साइडकार कॉन्फ़िगरेशन के बाहर पढ़े जाते हैं
| चर | पाठक | उद्देश्य |
|---|---|---|
DATABASE_URL | packages/db माइग्रेट स्क्रिप्ट और ड्रिज़ल-किट | के लिए लक्ष्य db:migrate / db:generate; एक अग्रणी file: छीन लिया गया है. गलती करना ./data/cadcamfun.db के सापेक्ष packages/db. |
CADCAMFUN_DB, तब DATABASE_URL | वेब स्टूडियो सर्वर (packages/web/script/studio-server.ts) | स्थानीय स्टूडियो डेटाबेस खोलता है; गलती करना data/cadcamfun.db रिपोजिटरी रूट पर. |
NIKCLI_LOCALE, NIKCLI_LANGUAGE, NIKCLI_REGION | एंबेडेड सहायक होस्ट | सहायक की भाषा और क्षेत्र को ओवरराइड करें। |
LC_ALL, LC_MESSAGES, LANG, LANGUAGE, TZ | एंबेडेड सहायक होस्ट | कोई ओवरराइड सेट न होने पर सिस्टम लोकेल और समय-क्षेत्र का पता लगाना। |
डेस्कटॉप शेल लॉन्च होने वाले साइडकार में बिल्कुल तीन वेरिएबल पास करता है: CADCAMFUN_TOKEN (प्रति लॉन्च एक नया यादृच्छिक टोकन), CADCAMFUN_DATA_DIR (एप्लिकेशन डेटा निर्देशिका) और CADCAMFUN_MIGRATIONS_DIR (बंडल माइग्रेशन)। कुछ और भी उस वातावरण में मौजूद होना चाहिए जिसके साथ डेस्कटॉप ऐप शुरू किया गया था।
डेटा डायरेक्टरी में क्या रहता है
cadcamfun.db SQLite database (+ -wal / -shm while running)
backups/ pre-migration snapshots, newest five kept
auth-secret signing secret for account session tokens (0600)
auth-revoked.json revoked session tokens
ai/
credentials.json provider API keys (owner-readable only)
policy.json operator policy for the assistant
skills/ user skills
session-owners/ which account owns which assistant session
nikcli/ isolated working and config dirs of the embedded host
plugins/ assistant plugins loaded at startup
plugins-registry/ installed marketplace plugin files
companion/ gateway TLS cert.pem and key.pem (0600)
storage/ file storage for library import/export, entity I/O and plugins
uploads/profiles/ profile pictures
downloads/ files served by /api/download
waitlist.json local waitlist entries निर्देशिकाएँ पहले उपयोग पर बनाई जाती हैं, इसलिए एक ताज़ा इंस्टॉलेशन में केवल वे ही शामिल होते हैं जिन्हें इसकी विशेषताओं ने छुआ है। एप्लिकेशन बंद होने पर पूरी निर्देशिका का बैकअप लें: डेटाबेस, क्रेडेंशियल, ऑथ सीक्रेट और साथी कुंजियाँ एक साथ हैं। युग्मित सहयोगी डिवाइस डेटाबेस की कुंजी-मान तालिका में संग्रहीत होते हैं, अंदर नहीं companion/.
निर्देशिका को गुप्त मानें
ai/credentials.json, auth-secret और सहयोगी निजी कुंजी क्रेडेंशियल हैं। विकास डेटा निर्देशिका न बनाएं या इसे बग रिपोर्ट के साथ संलग्न न करें।
उदाहरण विन्यास
export CADCAMFUN_TOKEN=dev-$(openssl rand -hex 16)
export CADCAMFUN_DATA_DIR="$(mktemp -d)"
export CADCAMFUN_MIGRATIONS_DIR="$PWD/packages/db/drizzle"
export CADCAMFUN_AI_HOST=direct
export CADCAMFUN_AI_OFFLINE=true
bun --no-env-file apps/sidecar/src/main.ts export CADCAMFUN_APP_URL=http://localhost:4321
export CADCAMFUN_DEBUG_LINKS=true # reset/magic links appear in responses export OTEL_EXPORTER_OTLP_ENDPOINT=http://127.0.0.1:4318 export STRIPE_SECRET_KEY=sk_test_...
export STRIPE_WEBHOOK_SECRET=whsec_...
export STRIPE_PRICE_PRO=price_... कभी सेट न करें CADCAMFUN_DEBUG_LINKS बाहरी विकास: यह HTTP प्रतिक्रियाओं में खाता लिंक डालता है।