From 7720c981e187c874df3bca5e62192a29d08d3ab2 Mon Sep 17 00:00:00 2001 From: HynLcc Date: Mon, 7 Sep 2026 23:43:53 +0800 Subject: [PATCH] docs: personal credentials with per-resource grants, and the chat scraper entry MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Credentials are personal now: an OAuth connection or a secret you store, managed in Settings › Integrations and granted to individual apps and automations under a variable name. Add a Credentials and Integrations page in all 11 locales, rework the former Secrets sections in App Builder and Automation, and cover the credential request card plus the new Scraper entry in AI Chat. Co-Authored-By: Claude Opus 5 --- ar/basic/ai/ai-chat.mdx | 7 ++-- ar/basic/ai/app-builder.mdx | 29 +++++++------- ar/basic/automation.mdx | 8 ++-- ar/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ de/basic/ai/ai-chat.mdx | 7 ++-- de/basic/ai/app-builder.mdx | 27 +++++++------ de/basic/automation.mdx | 8 ++-- de/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ docs.json | 77 +++++++++++++++++++++---------------- en/basic/ai/ai-chat.mdx | 7 ++-- en/basic/ai/app-builder.mdx | 27 +++++++------ en/basic/automation.mdx | 8 ++-- en/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ es/basic/ai/ai-chat.mdx | 7 ++-- es/basic/ai/app-builder.mdx | 27 +++++++------ es/basic/automation.mdx | 8 ++-- es/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ fr/basic/ai/ai-chat.mdx | 7 ++-- fr/basic/ai/app-builder.mdx | 27 +++++++------ fr/basic/automation.mdx | 8 ++-- fr/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ it/basic/ai/ai-chat.mdx | 7 ++-- it/basic/ai/app-builder.mdx | 27 +++++++------ it/basic/automation.mdx | 8 ++-- it/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ ja/basic/ai/ai-chat.mdx | 7 ++-- ja/basic/ai/app-builder.mdx | 29 +++++++------- ja/basic/automation.mdx | 8 ++-- ja/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ ru/basic/ai/ai-chat.mdx | 7 ++-- ru/basic/ai/app-builder.mdx | 29 +++++++------- ru/basic/automation.mdx | 8 ++-- ru/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ tr/basic/ai/ai-chat.mdx | 7 ++-- tr/basic/ai/app-builder.mdx | 27 +++++++------ tr/basic/automation.mdx | 8 ++-- tr/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ uk/basic/ai/ai-chat.mdx | 7 ++-- uk/basic/ai/app-builder.mdx | 29 +++++++------- uk/basic/automation.mdx | 8 ++-- uk/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ zh/basic/ai/ai-chat.mdx | 7 ++-- zh/basic/ai/app-builder.mdx | 27 +++++++------ zh/basic/automation.mdx | 8 ++-- zh/basic/credential.mdx | 73 +++++++++++++++++++++++++++++++++++ 45 files changed, 1115 insertions(+), 235 deletions(-) create mode 100644 ar/basic/credential.mdx create mode 100644 de/basic/credential.mdx create mode 100644 en/basic/credential.mdx create mode 100644 es/basic/credential.mdx create mode 100644 fr/basic/credential.mdx create mode 100644 it/basic/credential.mdx create mode 100644 ja/basic/credential.mdx create mode 100644 ru/basic/credential.mdx create mode 100644 tr/basic/credential.mdx create mode 100644 uk/basic/credential.mdx create mode 100644 zh/basic/credential.mdx diff --git a/ar/basic/ai/ai-chat.mdx b/ar/basic/ai/ai-chat.mdx index 33e66950..959be258 100644 --- a/ar/basic/ai/ai-chat.mdx +++ b/ar/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ description: تفاعل مع بياناتك باللغة الطبيعية لتح - **الإدخال الصوتي**: انقر على زر الميكروفون في مربع الإدخال واسمح بالوصول إلى الميكروفون لبدء التسجيل. أثناء التسجيل، اختر **إنهاء الإدخال الصوتي** أو **تجاهل الإدخال الصوتي**. بعد اختيار الإنهاء، ينسخ Teable التسجيل إلى نص في مربع الإدخال. - **النموذج**: استخدم قائمة النماذج لاختيار نموذج المحادثة. استخدم نموذجًا أخف للاستعلامات البسيطة أو التنظيف أو إعادة الصياغة، ونموذجًا أقوى للتخطيط المعقد والتحليل عبر الجداول وإنشاء التطبيقات. - **مستوى الذكاء**: اختر مستوى **الذكاء** بصورة مستقلة في قائمة النماذج. يتحكم هذا المستوى في عمق التفكير؛ وتنتج المستويات الأعلى استدلالًا أشمل. -- **الأسرار**: افتح قائمة **+** واختر **الأسرار** لحفظ مفاتيح API أو غيرها من بيانات الاعتماد لمحادثة الذكاء الاصطناعي. يمكن للمحادثة قراءة هذه القيم بوصفها متغيرات بيئة. القيم المحفوظة مخصصة للكتابة فقط؛ أدخل قيمة جديدة لتحديث سر. -- **عمليات التكامل**: عندما يحتاج الذكاء الاصطناعي إلى الوصول إلى حساب تابع لجهة خارجية، يمكنه عرض بطاقة مثل **ربط Slack** في المحادثة. انقر على **ربط** للتصريح عبر OAuth. انقر على **تخطي** لإلغاء هذا التصريح؛ وسيواصل الذكاء الاصطناعي تنفيذ الأجزاء التي يمكنه إكمالها من دون ذلك الاتصال. +- **أسراري**: افتح **+** ← **المزيد** ← **أسراري** لحفظ مفاتيح API أو غيرها من بيانات الاعتماد في **الإعدادات** ← **التكاملات**. هذه القيم ملك لك، ويمكن لمحادثة الذكاء الاصطناعي قراءتها أثناء التشغيل بوصفها متغيرات بيئة، كما يمكنك منحها لتطبيقات وأتمتة بعينها. راجع [بيانات الاعتماد وعمليات التكامل](/ar/basic/credential). +- **طلبات بيانات الاعتماد**: عندما يحتاج الذكاء الاصطناعي إلى حساب خارجي أو إلى سرّ، يثبّت بطاقة طلب في المحادثة. اختر **ربط حسابي** لتنفيذ تصريح OAuth، أو امنح بيانات اعتماد تملكها بالفعل. وإذا نقرت على **تخطي** فلن تُقدَّم بيانات الاعتماد، ويواصل الذكاء الاصطناعي الأجزاء التي يمكنه إكمالها من دونها. +- **استخراج بيانات الويب**: افتح قائمة **+** واختر **استخراج بيانات الويب**، ثم حدد منصة ونوع بيانات، مثل **الملف الشخصي** على LinkedIn أو **تقييمات المنتج** على Amazon. يملأ Teable التعليمات المناسبة في حقل الإدخال، وما عليك سوى إضافة الرابط أو الكلمة المفتاحية. ويقبل خيار **أي صفحة ويب** رابطًا تلصقه مباشرة. - **المهارات**: افتح قائمة **+** واختر **المهارات** لاستيراد المهارات أو تمكينها أو تعطيلها أو تجربتها في المحادثة الحالية. عند استيراد مهارة، اختر من يمكنه استخدامها: يحصرها **شخصي** بك، ويتيحها **قاعدة البيانات** للمتعاونين في قاعدة البيانات هذه، وتتيحها **المساحة** للجميع في هذه المساحة. اكتب `/` في مربع الإدخال لاختيار مهارة مفعّلة. لربط نظام خارجي أو ترحيله، راجع [ربط كل شيء وترحيله](/ar/basic/ai/connect-everything). - **استخدام السياق**: توضح الحلقة المجاورة لمربع الإدخال مقدار ما تستخدمه المحادثة حاليًا من نافذة سياق النموذج. انقر عليها لعرض النسبة المئوية وأعداد الرموز. عندما يمتلئ السياق، يضغط Teable المحادثة؛ ابدأ محادثة جديدة إذا أردت سياقًا جديدًا بدلاً من ذلك. - **إدارة الملفات**: افتح **+** ← **المزيد** ← **إدارة الملفات** لعرض الملفات في بيئة المحادثة المعزولة الحالية. يمكنك معاينة الملفات المدعومة أو تنزيلها أو حذف الملفات والمجلدات التي لم تعد بحاجة إليها. يجب أن تكون هناك محادثة قبل أن تتمكن من إدارة ملفاتها. @@ -283,6 +284,6 @@ Cuppy، يرجى قراءة الذاكرة الخاصة بـ Base ID bsexxxxxxxx - استخدم **+** ← **الأسرار** في إدخال المحادثة. يمكن لمحادثة الذكاء الاصطناعي استخدام هذه القيم أثناء المحادثة من دون وضع النص الصريح في مطالبتك. + استخدم **+** ← **المزيد** ← **أسراري** في إدخال المحادثة. يمكن لمحادثة الذكاء الاصطناعي استخدام هذه القيم أثناء المحادثة من دون وضع النص الصريح في مطالبتك. diff --git a/ar/basic/ai/app-builder.mdx b/ar/basic/ai/app-builder.mdx index f9d089e3..a1db786a 100644 --- a/ar/basic/ai/app-builder.mdx +++ b/ar/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ description: حوّل بياناتك إلى تطبيقات ويب مخصصة ب - يحل ملف ZIP محل المشروع الحالي. وتُحذف من الإصدار الجديد الملفات التي لم تضمنها فيه. - إذا احتوى ملف ZIP على مجلد تغليف واحد، يزيل Teable ذلك المجلد. يمكنك ضغط مجلد المشروع الخارجي مباشرةً. - يجب أن يتضمن المشروع المستورد ملف `package.json` في جذر المشروع. -- يُقرأ ملف `.env` الموجود في جذر ملف ZIP إلى **أسرار** التطبيق. وتُتجاهل صيغ `.env*` الأخرى، مثل `.env.local`. +- تُحفظ المتغيرات المخصصة في ملف `.env` الموجود في جذر ملف ZIP بوصفها أسرارًا لك، وتُمنح للتطبيق بالأسماء نفسها. وتُتجاهل صيغ `.env*` الأخرى، مثل `.env.local`. -#### الأسرار +#### بيانات الاعتماد والإعدادات -استخدم **الأسرار** لمفاتيح API وبيانات الاعتماد وقيم التهيئة التي يحتاج إليها تطبيقك أثناء التشغيل. في لوحة محادثة منشئ التطبيقات، افتح قائمة **+** واختر **الأسرار**. +لا تكتب مفاتيح API وبيانات الاعتماد وقيم التهيئة داخل الشيفرة المصدرية. فالتطبيق يستخدم **بيانات اعتمادك أنت**: اتصال OAuth أو سرًّا تحفظه. من لوحة المحادثة في App Builder، افتح **+** ← **المزيد** ← **بيانات الاعتماد والإعدادات** وامنح التطبيق بيانات اعتماد. -| التفاصيل | السلوك | +| التفصيل | السلوك | | --- | --- | -| الإتاحة | تتاح أسرار التطبيق في بيئة معاينة التطبيق والتطبيق المنشور | -| الوصول من الشيفرة | يمكن لشيفرة التطبيق من جانب الخادم قراءتها من متغيرات البيئة، مثل `process.env.MY_API_KEY` | -| القيم المحفوظة | تكون قيم الأسرار مخصصة للكتابة فقط بعد حفظها؛ أدخل قيمة جديدة لتحديث إحداها | -| تنسيق الاسم | يجب أن يبدأ **الاسم** بحرف إنجليزي كبير، ويمكن أن يحتوي على أحرف إنجليزية كبيرة وأرقام وشرطات سفلية | +| نطاق الإتاحة | تتوفر بيانات الاعتماد الممنوحة للتطبيق في بيئة المعاينة وفي التطبيق المنشور | +| اسم المتغير | الاسم المستعار الذي تدخله عند المنح؛ يبدأ بحرف كبير ولا يقبل سوى الحروف الكبيرة والأرقام والشرطات السفلية | +| قراءة سرّ | تقرأ الشيفرة من جانب الخادم متغيرات البيئة مثل `process.env.MY_API_KEY` | +| قراءة اتصال | تستدعي الشيفرة من جانب الخادم `getConnectionToken('ALIAS')` للحصول على رمز وصول | +| القيم المحفوظة | تصبح القيم مخصصة للكتابة فقط بعد الحفظ؛ أدخل قيمة جديدة لاستبدالها | -بعد إضافة قيمة سر أو حذفها أو تغييرها، تستخدم بيئة معاينة التطبيق القيمة الجديدة. ولا يستخدمها التطبيق المنشور إلا بعد إعادة نشره. لا يتطلب تحرير وصف السر وحده إعادة النشر. +بعد إضافة تفويض أو إزالته أو استبدال قيمة بيانات اعتماد، تستخدم بيئة معاينة التطبيق القيمة الجديدة، أما التطبيق المنشور فلا يستخدمها إلا بعد إعادة النشر. + +لا يؤدي نسخ تطبيق إلى نسخ بيانات اعتماده: تبقى في اللوحة عناصر نائبة عليها **لم يُربط بعد**، ويضيف زر **ربط بيانات اعتمادي** بياناتك أنت. لإدارة بيانات الاعتماد ومعرفة أماكن استخدامها، راجع [بيانات الاعتماد وعمليات التكامل](/ar/basic/credential). #### إدارة ملفات التطبيق @@ -162,7 +165,7 @@ description: حوّل بياناتك إلى تطبيقات ويب مخصصة ب ### متغيرات البيئة والتطوير المحلي -لا يحتوي المستودع إلا على المصدر. لا يدفع Teable مطلقًا ملفًا يبدأ اسمه بـ `.env`، سواء في جذر المشروع أو مجلد فرعي أو سجل الالتزامات. توجد قيم البيئة ضمن **أسرار** التطبيق ولا تدخل إلى git مطلقًا. يتضمن ملف `.gitignore` في المستودع إدخال `.env*` مسبقًا، لذلك لن تلتزم نسخة محلية به عن طريق الخطأ. +لا يحتوي المستودع إلا على المصدر. لا يدفع Teable مطلقًا ملفًا يبدأ اسمه بـ `.env`، سواء في جذر المشروع أو مجلد فرعي أو سجل الالتزامات. تأتي قيم البيئة من بيانات الاعتماد الممنوحة للتطبيق، وتوجد ضمن **بيانات الاعتماد والإعدادات**، ولا تدخل إلى git مطلقًا. يتضمن ملف `.gitignore` في المستودع إدخال `.env*` مسبقًا، لذلك لن تلتزم نسخة محلية به عن طريق الخطأ. لتشغيل التطبيق على جهازك: @@ -172,13 +175,13 @@ description: حوّل بياناتك إلى تطبيقات ويب مخصصة ب شغّل `pnpm dev`. -يطابق المحتوى المنسوخ ما يتلقاه التطبيق في بيئة Teable المعزولة: أسرارك، إلى جانب المتغيرات التي تضخها المنصة لنقطة نهاية API للتطبيق ورمز الوصول والوصول إلى الذكاء الاصطناعي. +يطابق المحتوى المنسوخ ما يتلقاه التطبيق في بيئة Teable المعزولة: بيانات الاعتماد الممنوحة للتطبيق، إلى جانب المتغيرات التي تضخها المنصة لنقطة نهاية API للتطبيق ورمز الوصول والوصول إلى الذكاء الاصطناعي. يمنح سطر `TEABLE_APP_TOKEN` في ذلك الملف حق الوصول إلى بيانات التطبيق، ولذلك لا يمكن نسخه إلا بواسطة الأعضاء الذين يملكون صلاحية تحرير التطبيق. لا تلتزم الملف مطلقًا، ولا تلصقه في مسألة أو طلب سحب. -لإضافة سر أو تغييره، حرر **الأسرار** في Teable بدلاً من الملف المحلي. لا يؤدي الالتزام بملف `.env` إلى GitHub إلى إنشاء سر أو تحديثه. بعد تغيير سر، انسخ المتغيرات مجددًا لتحديث ملف `.env` المحلي. +لإضافة بيانات اعتماد أو استبدالها، استخدم **بيانات الاعتماد والإعدادات** في Teable بدلاً من الملف المحلي. لا يؤدي الالتزام بملف `.env` إلى GitHub إلى إنشاء بيانات اعتماد أو تحديثها. وبعد أي تغيير، انسخ المتغيرات مجددًا لتحديث ملف `.env` المحلي. ### إلغاء ربط المستودع @@ -290,7 +293,7 @@ description: حوّل بياناتك إلى تطبيقات ويب مخصصة ب - انتقل إلى علامة تبويب **الشيفرة** في المحرر، وانقر على قائمة **`...`** في شريط علامات التبويب، ثم اختر **تنزيل الشيفرة** أو **استيراد الشيفرة**. يمكن أن يصل حجم ملفات ZIP المستوردة إلى 20 MB، وهي تحل محل المشروع الحالي؛ لذا ضمّن كل ملف مصدر تريد الاحتفاظ به. يجب أن يتضمن المشروع المستورد ملف `package.json` في الجذر. ويُستورد ملف `.env` في الجذر إلى **أسرار** التطبيق. + انتقل إلى علامة تبويب **الشيفرة** في المحرر، وانقر على قائمة **`...`** في شريط علامات التبويب، ثم اختر **تنزيل الشيفرة** أو **استيراد الشيفرة**. يمكن أن يصل حجم ملفات ZIP المستوردة إلى 20 MB، وهي تحل محل المشروع الحالي؛ لذا ضمّن كل ملف مصدر تريد الاحتفاظ به. يجب أن يتضمن المشروع المستورد ملف `package.json` في الجذر. وتُحفظ المتغيرات المخصصة في ملف `.env` الموجود في الجذر بوصفها أسرارًا لك، وتُمنح للتطبيق بالأسماء نفسها. diff --git a/ar/basic/automation.mdx b/ar/basic/automation.mdx index 1c26dd26..1601e651 100644 --- a/ar/basic/automation.mdx +++ b/ar/basic/automation.mdx @@ -39,11 +39,13 @@ description: "أنشئ تدفقات عمل مؤتمتة بالذكاء الاص تُحفظ التغييرات بوصفها مسودة. ويستمر سير العمل النشط في العمل بالإصدار السابق حتى تنقر على **تطبيق التحديث**. -## الأسرار +## بيانات الاعتماد والإعدادات -استخدم **الأسرار** لتخزين مفاتيح API وبيانات الاعتماد والتهيئة التي تحتاج إليها الأتمتة في وقت التشغيل. افتح سير العمل في علامة تبويب التحرير، ثم انقر على **الأسرار** بجوار عناصر التحكم في الاختبار. +تستدعي الأتمتة الخدمات الخارجية ببيانات اعتمادك: اتصال OAuth أو سرّ تحفظه. افتح سير العمل في علامة تبويب التحرير، وانقر على **بيانات الاعتماد والإعدادات** بجوار عناصر التحكم في الاختبار، وامنح هذه الأتمتة بيانات اعتماد، وأعطها **اسم متغير**. -تقتصر الأسرار على الأتمتة الحالية. ويمكن لإجراءات البرامج النصية قراءتها من متغيرات البيئة مثل `process.env.EXTERNAL_API_KEY`. القيم المحفوظة مخصصة للكتابة فقط؛ أدخل قيمة جديدة لتحديث أحد الأسرار. +تقرأ إجراءات البرامج النصية هذا الاسم من متغير بيئة مثل `process.env.EXTERNAL_API_KEY`، أما الإجراءات الأخرى فيمكنها إدراج مرجع عبر **إدراج سرّ** بجوار حقل الإدخال. ولا تُعرض القيم بنص صريح، كما تُخفى في نتائج الاختبار. + +أما بيانات الاعتماد نفسها فتُدار في **الإعدادات** ← **التكاملات**؛ راجع [بيانات الاعتماد وعمليات التكامل](/ar/basic/credential). ## سجل التشغيل diff --git a/ar/basic/credential.mdx b/ar/basic/credential.mdx new file mode 100644 index 00000000..7268d650 --- /dev/null +++ b/ar/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: بيانات الاعتماد وعمليات التكامل +description: أدر اتصالاتك وأسرارك وامنحها للتطبيقات والأتمتة التي تحتاج إليها. +--- + +متاحة ضمن جميع الخطط السحابية؛ وتتطلب الاستضافة الذاتية خطة Business أو أعلى. + +عندما يستدعي تطبيق أو أتمتة خدمة خارجية، فإنه يستخدم **بيانات اعتمادك أنت**. بيانات الاعتماد ملك لك لا للتطبيق أو الأتمتة، وهي على نوعين: + +- **الاتصالات**: حسابات لدى جهات خارجية تمنح Teable حق الوصول إليها عبر OAuth، مثل Google أو Slack أو Feishu. +- **الأسرار**: سلاسل نصية تحفظها بنفسك، مثل مفتاح API أو رمز وصول. + +تُدار بيانات الاعتماد في **الإعدادات** ← **التكاملات**، ومنها تمنحها لتطبيق أو أتمتة بعينها. وبعد المنح، يستخدم كل من يشغّل ذلك التطبيق أو تلك الأتمتة بيانات اعتماد الشخص الذي منحها. ولا تُعرض القيمة لأحد، كما تُخفى في نتائج اختبار الأتمتة. + +## إدارة اتصالاتك وأسرارك + +انقر على صورتك في أسفل اليسار ثم افتح **الإعدادات** ← **التكاملات**. تنقسم الصفحة إلى ثلاثة أقسام: **اتصالاتي** و**أسراري** و**تطبيقات الطرف الثالث التي منحتها إذنًا**. + +يطلب زر **إضافة سرّ** ما يلي: + +| الحقل | الوصف | +| --- | --- | +| **المفتاح** | يبدأ بحرف كبير، ولا يقبل سوى الحروف الكبيرة والأرقام والشرطات السفلية | +| **القيمة** | مخصصة للكتابة فقط بعد الحفظ؛ أدخل قيمة جديدة لاستبدالها | +| **الوصف** | اختياري، لتوضيح الغرض من السرّ | + +يُضاف الاتصال عبر **ربط حساب جديد**. وعند انتهاء صلاحية التصريح، يظهر في الاتصال زر **إعادة الربط**. + +يبيّن كل عنصر عدد الموارد التي تستخدمه حاليًا. ويفتح زر **عرض** قائمة التطبيقات والأتمتة، حيث يمكنك **إزالة التفويض** عن أي عنصر منها. + +## منح بيانات اعتماد لتطبيق أو أتمتة + +افتح لوحة بيانات الاعتماد الخاصة بالمورد: + +- **التطبيقات**: من لوحة المحادثة في App Builder، افتح **+** ← **المزيد** ← **بيانات الاعتماد والإعدادات**. +- **الأتمتة**: افتح سير العمل وانقر على **بيانات الاعتماد والإعدادات** في علامة تبويب **التحرير**. + +يتيح زر **منح** ثلاثة مسارات: **منح سرّ موجود** لاختيار أحد أسرارك أو اتصالاتك؛ و**إضافة سرّ** لإنشاء سرّ ومنحه في الحال؛ أو اختيار خدمة من قائمة **الخدمات**، فيبدأ تصريح OAuth للخدمة غير المرتبطة، أما الخدمة المعلَّمة بـ **متصل** فتُمنح مباشرة. + +يحتاج كل تفويض إلى **اسم متغير**، وهو الاسم المستعار لبيانات الاعتماد داخل ذلك التطبيق أو تلك الأتمتة. وتنطبق عليه قواعد تسمية مفتاح السرّ نفسها، وهو الاسم الذي تقرؤه الشيفرة. + +قد تظهر في اللوحة عناصر نائبة عليها **لم يُربط بعد**. فنسخ تطبيق أو تكرار سير عمل أو استيراد قاعدة بيانات أو تكرارها ينقل الأسماء المستعارة التي تتوقعها الشيفرة دون بيانات الاعتماد. انقر على **ربط بيانات اعتمادي** لتزويده ببياناتك حتى يعمل التطبيق أو الأتمتة. + +وإذا كان الاسم المستعار مرتبطًا حاليًا ببيانات اعتماد شخص آخر، فزر **استبداله بحسابي** ينقله إليك. أما **إزالة الترخيص فقط (إبقاء العنصر النائب)** فيفك الارتباط ويُبقي العنصر النائب، فلا تحتاج الشيفرة إلى تعديل. + +يتطلب تعديل تفويضات مورد ما صلاحية تحرير ذلك التطبيق أو تلك الأتمتة. ولا يمكنك منح سوى بيانات اعتمادك أنت. + +## قراءة بيانات الاعتماد في الشيفرة + +| الموضع | طريقة القراءة | +| --- | --- | +| البرامج النصية في الأتمتة | متغير بيئة، مثل `process.env.EXTERNAL_API_KEY` | +| حقول الإدخال في الأتمتة | انقر على **إدراج سرّ** بجوار الحقل واختر سرًّا مفوَّضًا | +| الأسرار داخل التطبيق | تقرأ الشيفرة من جانب الخادم `process.env.MY_API_KEY` | +| الاتصالات داخل التطبيق | تستدعي الشيفرة من جانب الخادم `getConnectionToken('ALIAS')` للحصول على رمز وصول | + +عند لصق قيمة تشبه المفتاح في أحد حقول الأتمتة، يحفظها Teable بوصفها سرًّا لك ويترك مكانها مرجعًا، فلا يصل النص الصريح إلى إعدادات سير العمل. وإذا أردت إبقاء النص كما هو، فانقر على **تراجع** في التنبيه. + +## طلبات بيانات الاعتماد في محادثة الذكاء الاصطناعي + +عندما يحتاج الذكاء الاصطناعي إلى حساب خارجي، يثبّت في المحادثة بطاقة طلب توضّح الخدمة التي يريد اتصالًا بها أو الاسم المستعار الذي يريد له سرًّا. أمامك الخيارات التالية: + +- **ربط حسابي**: تنفيذ تصريح OAuth؛ ويُمنح الاتصال الجديد للمورد تلقائيًا. +- **منح ...**: استخدام اتصال أو سرّ تملكه بالفعل. +- **تخطي**: عدم تقديم بيانات الاعتماد؛ ويواصل الذكاء الاصطناعي الأجزاء التي لا تعتمد عليها. + +## الاستبدال والحذف ومغادرة المساحة + +قبل استبدال قيمة سرّ أو حذف سرّ أو قطع اتصال، يعرض Teable قائمة التطبيقات والأتمتة التي لا تزال تستخدمه. ويؤدي الحذف وقطع الاتصال إلى تعطّل تلك الموارد فورًا، لذا امنحها بيانات اعتماد أخرى أولًا إذا كان عليها الاستمرار في العمل. ولا يمكن استرجاع قيمة السرّ القديمة. + +بعد حفظ القيمة الجديدة، تستخدمها الأتمتة في تشغيلها التالي، ويستخدمها التطبيق عند إعادة تشغيل بيئة المعاينة، أما التطبيق المنشور فلا يستخدمها إلا بعد إعادة نشره. + +وإذا غادرت مساحة ما زال فيها تطبيق أو أتمتة يستخدم بيانات اعتمادك، فستشير صفحة **التكاملات** إلى ذلك بعبارة **لقد غادرت هذه المساحة**. انقر على **إزالة التفويض** للتوقف عن تقديمها. diff --git a/de/basic/ai/ai-chat.mdx b/de/basic/ai/ai-chat.mdx index a50cadb0..e6860bab 100644 --- a/de/basic/ai/ai-chat.mdx +++ b/de/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ Wenn Sie einen langen Block mit Klartext einfügen, wandelt Teable ihn in einen - **Spracheingabe**: Klicken Sie im Eingabefeld auf die Mikrofontaste und erlauben Sie den Mikrofonzugriff, um die Aufnahme zu starten. Wählen Sie während der Aufnahme **Spracheingabe beenden** oder **Spracheingabe verwerfen**. Nach dem Beenden transkribiert Teable die Aufnahme in das Eingabefeld. - **Modell**: Verwenden Sie das Modellmenü, um das Modell für die Unterhaltung auszuwählen. Nutzen Sie ein leichteres Modell für einfache Abfragen, Bereinigung oder Überarbeitungen und ein leistungsstärkeres Modell für komplexe Planung, tabellenübergreifende Analysen und App-Erstellung. - **Intelligenz**: Wählen Sie die Stufe **Intelligenz** separat im Modellmenü. Sie steuert die Denktiefe; höhere Stufen liefern gründlichere Überlegungen. -- **Geheimnisse**: Öffnen Sie das Menü **+** und wählen Sie **Geheimnisse**, um API-Schlüssel oder andere Anmeldedaten für den KI-Chat zu speichern. Der KI-Chat kann diese Werte als Umgebungsvariablen lesen. Gespeicherte Werte sind nur schreibbar; geben Sie einen neuen Wert ein, um ein Geheimnis zu aktualisieren. -- **Integrationen**: Wenn die KI Zugriff auf ein Drittanbieterkonto benötigt, kann sie in der Unterhaltung eine Karte wie **Slack verbinden** anzeigen. Klicken Sie auf **Verbinden**, um die Autorisierung über OAuth durchzuführen. Klicken Sie auf **Überspringen**, um diese Autorisierung abzubrechen; die KI fährt mit den Teilen fort, die sie ohne diese Verbindung erledigen kann. +- **Meine Secrets**: Öffnen Sie **+** → **Mehr** → **Meine Secrets**, um API-Schlüssel oder andere Anmeldedaten unter **Einstellungen** → **Integrationen** zu hinterlegen. Die Werte gehören Ihnen, der KI-Chat kann sie zur Laufzeit als Umgebungsvariablen lesen, und Sie können sie einzelnen Apps und Automatisierungen freigeben. Siehe [Zugangsdaten und Integrationen](/de/basic/credential). +- **Anfragen nach Zugangsdaten**: Wenn die KI ein Drittanbieterkonto oder ein Secret benötigt, heftet sie eine entsprechende Karte an die Unterhaltung. Wählen Sie **Mein Konto verbinden** für einen OAuth-Vorgang oder geben Sie vorhandene Zugangsdaten frei. Mit **Überspringen** stellen Sie sie nicht bereit; die KI fährt mit den Teilen fort, die sie auch ohne erledigen kann. +- **Scraper**: Öffnen Sie das Menü **+** und wählen Sie **Scraper**, dann eine Plattform und einen Datentyp, etwa **Persönliches Profil** bei LinkedIn oder **Produktbewertungen** bei Amazon. Teable füllt die passende Anweisung in der Chat-Eingabe vor, die Sie mit einem Link oder einem Stichwort ergänzen. **Beliebige Webseite** nimmt einen eingefügten Link direkt entgegen. - **Skills**: Öffnen Sie das Menü **+** und wählen Sie **Skills**, um Skills im aktuellen Chat zu importieren, zu aktivieren, zu deaktivieren oder auszuprobieren. Wählen Sie beim Import aus, wer ihn verwenden kann: **Persönlich** beschränkt ihn auf Sie selbst, **Base** gibt ihn Mitarbeitenden in dieser Base und **Space** allen Personen in diesem Space. Geben Sie `/` im Eingabefeld ein, um einen aktivierten Skill auszuwählen. Informationen zum Verbinden oder Migrieren eines externen Systems finden Sie unter [Alles verbinden und migrieren](/de/basic/ai/connect-everything). - **Kontextnutzung**: Der Ring neben dem Eingabefeld zeigt, wie viel des Kontextfensters des Modells die Unterhaltung derzeit nutzt. Klicken Sie darauf, um den Prozentsatz und die Token-Anzahlen anzuzeigen. Wenn der Kontext voll ist, verdichtet Teable die Unterhaltung; starten Sie stattdessen einen neuen Chat, wenn Sie einen sauberen Kontext wünschen. - **Dateien verwalten**: Öffnen Sie **+** → **Mehr** → **Dateien verwalten**, um Dateien in der Sandbox des aktuellen Chats anzuzeigen. Sie können unterstützte Dateien in der Vorschau anzeigen, Dateien herunterladen oder nicht mehr benötigte Dateien und Ordner löschen. Eine Unterhaltung muss bestehen, bevor ihre Dateien verwaltet werden können. @@ -283,7 +284,7 @@ Artefakte sind für die Person, die sie erstellt hat, privat. Verwenden Sie dahe - Verwenden Sie **+** → **Geheimnisse** in der Chat-Eingabe. Der KI-Chat kann diese Werte während der Unterhaltung verwenden, ohne den Klartext in Ihre Eingabeaufforderung einzufügen. + Verwenden Sie **+** → **Mehr** → **Meine Secrets** in der Chat-Eingabe. Der KI-Chat kann diese Werte während der Unterhaltung verwenden, ohne den Klartext in Ihre Eingabeaufforderung einzufügen. diff --git a/de/basic/ai/app-builder.mdx b/de/basic/ai/app-builder.mdx index 4bd9defe..a6516f6e 100644 --- a/de/basic/ai/app-builder.mdx +++ b/de/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ Sie können den Code der App durch Importieren einer ZIP-Datei aktualisieren: - Die ZIP-Datei ersetzt das vorhandene Projekt. Nicht enthaltene Dateien werden aus der neuen Version entfernt. - Wenn die ZIP-Datei einen einzelnen umschließenden Ordner enthält, entfernt Teable diesen Ordner. Sie können den äußersten Projektordner direkt komprimieren. - Das importierte Projekt muss `package.json` im Stammverzeichnis des Projekts enthalten. -- Eine `.env`-Datei im Stammverzeichnis der ZIP-Datei wird in die **Secrets** der App eingelesen. Andere `.env*`-Varianten wie `.env.local` werden ignoriert. +- Eigene Variablen aus einer `.env`-Datei im Stammverzeichnis der ZIP-Datei werden als Ihre Secrets gespeichert und der App unter denselben Namen freigegeben. Andere `.env*`-Varianten wie `.env.local` werden ignoriert. -#### Secrets +#### Zugangsdaten und Konfiguration -Verwenden Sie **Secrets** für API-Schlüssel, Anmeldedaten und Konfigurationswerte, die Ihre App während der Ausführung benötigt. Öffnen Sie im Chat-Bereich des App-Builders das Menü **+** und wählen Sie **Secrets**. +Schreiben Sie API-Schlüssel, Anmeldedaten und Konfigurationswerte nicht in den Quellcode. Eine App verwendet **Ihre Zugangsdaten**: eine OAuth-Verbindung oder ein von Ihnen hinterlegtes Secret. Öffnen Sie im Chat-Bereich des App-Builders **+** → **Mehr** → **Zugangsdaten & Konfiguration** und geben Sie Zugangsdaten für die App frei. | Detail | Verhalten | | --- | --- | -| Verfügbarkeit | App-Secrets sind in der Vorschauumgebung der App und in der veröffentlichten App verfügbar | -| Codezugriff | Serverseitiger App-Code kann sie aus Umgebungsvariablen wie `process.env.MY_API_KEY` lesen | -| Gespeicherte Werte | Secret-Werte sind nach dem Speichern nur schreibbar; geben Sie einen neuen Wert ein, um einen Wert zu aktualisieren | -| Namensformat | Der **Name** muss mit einem Großbuchstaben beginnen und darf Großbuchstaben, Ziffern und Unterstriche enthalten | +| Verfügbarkeit | Für die App freigegebene Zugangsdaten stehen in der Vorschauumgebung und in der veröffentlichten App zur Verfügung | +| Variablenname | Der Alias, den Sie bei der Freigabe eingeben; er muss mit einem Großbuchstaben beginnen und darf Großbuchstaben, Ziffern und Unterstriche enthalten | +| Secret lesen | Serverseitiger App-Code liest Umgebungsvariablen wie `process.env.MY_API_KEY` | +| Verbindung lesen | Serverseitiger App-Code ruft `getConnectionToken('ALIAS')` für ein Zugriffstoken auf | +| Gespeicherte Werte | Werte sind nach dem Speichern nur schreibbar; geben Sie einen neuen Wert ein, um einen zu ersetzen | -Nachdem Sie einen Secret-Wert hinzugefügt, gelöscht oder geändert haben, verwendet die Vorschauumgebung der App den neuen Wert. Die veröffentlichte App verwendet ihn erst nach einer erneuten Veröffentlichung. Das Bearbeiten nur einer Secret-Beschreibung erfordert keine erneute Veröffentlichung. +Nachdem Sie eine Freigabe hinzugefügt oder entfernt oder einen Wert ersetzt haben, verwendet die Vorschauumgebung der App den neuen Wert. Die veröffentlichte App verwendet ihn erst nach einer erneuten Veröffentlichung. + +Beim Kopieren einer App werden ihre Zugangsdaten nicht mitkopiert: Im Bereich bleiben Platzhalter mit **Noch nicht gebunden**, und **Meins binden** hinterlegt Ihre eigenen. Zur Verwaltung von Zugangsdaten und zur Frage, wo sie verwendet werden, siehe [Zugangsdaten und Integrationen](/de/basic/credential). #### App-Dateien verwalten @@ -162,7 +165,7 @@ Teable führt niemals einen Force-Push für Ihren Branch aus. Wenn die Verläufe ### Umgebungsvariablen und lokale Entwicklung -Das Repository enthält nur Quellcode. Teable pusht niemals eine Datei, deren Name mit `.env` beginnt: weder im Stammverzeichnis des Projekts noch in einem Unterordner oder im Commit-Verlauf. Umgebungswerte befinden sich in den **Secrets** der App und gelangen nie in Git. Die `.gitignore` des Repositorys enthält bereits `.env*`, sodass ein lokaler Klon nicht versehentlich eine solche Datei committet. +Das Repository enthält nur Quellcode. Teable pusht niemals eine Datei, deren Name mit `.env` beginnt: weder im Stammverzeichnis des Projekts noch in einem Unterordner oder im Commit-Verlauf. Die Umgebungswerte stammen aus den für die App freigegebenen Zugangsdaten, liegen unter **Zugangsdaten & Konfiguration** und gelangen nie in Git. Die `.gitignore` des Repositorys enthält bereits `.env*`, sodass ein lokaler Klon nicht versehentlich eine solche Datei committet. So führen Sie die App auf Ihrem eigenen Rechner aus: @@ -172,13 +175,13 @@ So führen Sie die App auf Ihrem eigenen Rechner aus: Führen Sie `pnpm dev` aus. -Der kopierte Inhalt entspricht dem, was die App in der eigenen Sandbox von Teable erhält: Ihre Secrets sowie die Variablen, die die Plattform für den API-Endpunkt, das Zugriffstoken und den KI-Zugriff der App einfügt. +Der kopierte Inhalt entspricht dem, was die App in der eigenen Sandbox von Teable erhält: die für die App freigegebenen Zugangsdaten sowie die Variablen, die die Plattform für den API-Endpunkt, das Zugriffstoken und den KI-Zugriff der App einfügt. Die Zeile `TEABLE_APP_TOKEN` in dieser Datei gewährt Zugriff auf die Daten der App. Deshalb können sie nur Mitglieder mit Bearbeitungszugriff auf die App kopieren. Committen Sie die Datei niemals und fügen Sie sie niemals in ein Issue oder einen Pull Request ein. -Um ein Secret hinzuzufügen oder zu ändern, bearbeiten Sie **Secrets** in Teable statt der lokalen Datei. Eine in GitHub committete `.env` erstellt oder aktualisiert kein Secret. Kopieren Sie die Variablen nach einer Secret-Änderung erneut, um Ihre lokale `.env` zu aktualisieren. +Um Zugangsdaten hinzuzufügen oder zu ersetzen, verwenden Sie **Zugangsdaten & Konfiguration** in Teable statt der lokalen Datei. Eine in GitHub committete `.env` erstellt oder aktualisiert keine Zugangsdaten. Kopieren Sie die Variablen nach einer Änderung erneut, um Ihre lokale `.env` zu aktualisieren. ### Verknüpfung mit dem Repository aufheben @@ -290,7 +293,7 @@ Informationen zu Prompt-Mustern, Tipps zum Erstellen, Hinweisen zum Rollback und - Wechseln Sie im Editor zum Tab **Code**, klicken Sie in der Tab-Leiste auf das Menü **`...`** und wählen Sie dann **Code herunterladen** oder **Code importieren**. Importierte ZIP-Dateien können bis zu 20 MB groß sein und ersetzen das vorhandene Projekt. Schließen Sie daher jede Quelldatei ein, die Sie behalten möchten. Das importierte Projekt muss eine `package.json` im Stammverzeichnis enthalten. Eine `.env`-Datei im Stammverzeichnis wird in die **Secrets** der App importiert. + Wechseln Sie im Editor zum Tab **Code**, klicken Sie in der Tab-Leiste auf das Menü **`...`** und wählen Sie dann **Code herunterladen** oder **Code importieren**. Importierte ZIP-Dateien können bis zu 20 MB groß sein und ersetzen das vorhandene Projekt. Schließen Sie daher jede Quelldatei ein, die Sie behalten möchten. Das importierte Projekt muss eine `package.json` im Stammverzeichnis enthalten. Eigene Variablen aus einer `.env`-Datei im Stammverzeichnis werden als Ihre Secrets gespeichert und der App unter denselben Namen freigegeben. diff --git a/de/basic/automation.mdx b/de/basic/automation.mdx index 59378b71..c74179aa 100644 --- a/de/basic/automation.mdx +++ b/de/basic/automation.mdx @@ -39,11 +39,13 @@ Sie können Automatisierungen auch Schritt für Schritt mit den integrierten Akt Änderungen werden als Entwurf gespeichert. Der aktive Workflow wird weiterhin mit der vorherigen Version ausgeführt, bis Sie auf **Aktualisierung anwenden** klicken. -## Geheimnisse +## Zugangsdaten und Konfiguration -Verwenden Sie **Geheimnisse**, um API-Schlüssel, Anmeldedaten und Konfigurationen zu speichern, die eine Automatisierung zur Laufzeit benötigt. Öffnen Sie den Workflow im Bearbeitungs-Tab und klicken Sie neben den Test-Steuerelementen auf **Geheimnisse**. +Eine Automatisierung ruft externe Dienste mit Ihren Zugangsdaten auf: einer OAuth-Verbindung oder einem von Ihnen hinterlegten Secret. Öffnen Sie den Workflow im Bearbeitungs-Tab, klicken Sie neben den Test-Steuerelementen auf **Zugangsdaten & Konfiguration**, geben Sie Zugangsdaten für diese Automatisierung frei und vergeben Sie einen **Variablennamen**. -Geheimnisse sind auf die aktuelle Automatisierung beschränkt. Skriptaktionen können sie aus Umgebungsvariablen wie `process.env.EXTERNAL_API_KEY` lesen. Gespeicherte Werte sind nur schreibbar; geben Sie einen neuen Wert ein, um ein Geheimnis zu aktualisieren. +Skriptaktionen lesen diesen Namen aus einer Umgebungsvariablen wie `process.env.EXTERNAL_API_KEY`; in anderen Aktionen fügen Sie über **Secret einfügen** neben einem Eingabefeld einen Verweis ein. Werte werden nie im Klartext angezeigt, und Testergebnisse maskieren sie. + +Die Zugangsdaten selbst liegen unter **Einstellungen** → **Integrationen**, siehe [Zugangsdaten und Integrationen](/de/basic/credential). ## Ausführungshistorie diff --git a/de/basic/credential.mdx b/de/basic/credential.mdx new file mode 100644 index 00000000..c74574f9 --- /dev/null +++ b/de/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Zugangsdaten und Integrationen +description: Verwalten Sie Ihre Verbindungen und Secrets und geben Sie sie für Apps und Automatisierungen frei. +--- + +In allen Cloud-Plänen verfügbar; Self-Hosted erfordert Business oder höher. + +Ruft eine App oder eine Automatisierung einen externen Dienst auf, verwendet sie **Ihre Zugangsdaten**. Zugangsdaten gehören Ihnen und nicht der App oder der Automatisierung. Es gibt zwei Arten: + +- **Verbindungen**: Konten von Drittanbietern, die Sie Teable per OAuth freigeben, etwa Google, Slack oder Feishu. +- **Secrets**: Zeichenfolgen, die Sie selbst hinterlegen, etwa ein API-Schlüssel oder ein Zugriffstoken. + +Verwaltet werden Zugangsdaten unter **Einstellungen** → **Integrationen**; von dort geben Sie sie für einzelne Apps und Automatisierungen frei. Nach der Freigabe verwenden alle, die diese App oder Automatisierung ausführen, die Zugangsdaten der freigebenden Person. Der Wert wird niemandem angezeigt, und Testergebnisse einer Automatisierung maskieren ihn. + +## Verbindungen und Secrets verwalten + +Klicken Sie unten links auf Ihr Profilbild und öffnen Sie **Einstellungen** → **Integrationen**. Die Seite hat drei Bereiche: **Meine Verbindungen**, **Meine Secrets** und **Von Ihnen autorisierte Drittanbieter-Apps**. + +**Secret hinzufügen** fragt nach: + +| Feld | Beschreibung | +| --- | --- | +| **Key** | Beginnt mit einem Großbuchstaben; nur Großbuchstaben, Ziffern und Unterstriche | +| **Wert** | Nach dem Speichern nur schreibbar; geben Sie einen neuen Wert ein, um ihn zu ersetzen | +| **Beschreibung** | Optional, um festzuhalten, wofür das Secret dient | + +Eine Verbindung fügen Sie über **Neues Konto verbinden** hinzu. Läuft eine Autorisierung ab, bietet die Verbindung **Neu verbinden** an. + +Bei jedem Eintrag steht, wie viele Ressourcen ihn derzeit verwenden. **Anzeigen** öffnet die Liste der Apps und Automatisierungen, in der Sie für einzelne Einträge die **Freigabe entfernen** können. + +## Zugangsdaten für eine App oder Automatisierung freigeben + +Öffnen Sie den Zugangsdaten-Bereich der Ressource: + +- **Apps**: im Chat-Bereich des App-Builders **+** → **Mehr** → **Zugangsdaten & Konfiguration**. +- **Automatisierungen**: Workflow öffnen und im Tab **Bearbeiten** auf **Zugangsdaten & Konfiguration** klicken. + +**Freigeben** bietet drei Wege: **Vorhandenes Secret freigeben** wählt eines Ihrer Secrets oder eine Ihrer Verbindungen; **Secret hinzufügen** legt eines an und gibt es sofort frei; oder Sie wählen einen Dienst aus der Liste **Dienste**, wobei ein noch nicht verbundener Dienst einen OAuth-Vorgang startet und ein mit **Verbunden** markierter direkt freigegeben wird. + +Jede Freigabe braucht einen **Variablennamen**, also den Alias, unter dem die Zugangsdaten in dieser App oder Automatisierung stehen. Es gelten dieselben Namensregeln wie für einen Secret-Key, und genau diesen Namen liest der Code. + +Im Bereich können außerdem Platzhalter mit **Noch nicht gebunden** stehen. Beim Kopieren einer App, Duplizieren eines Workflows sowie beim Importieren oder Duplizieren einer Datenbank werden nur die im Code erwarteten Aliase übernommen, nicht die Zugangsdaten. Mit **Meins binden** hinterlegen Sie Ihre eigenen, damit die App oder Automatisierung läuft. + +Gehören die Zugangsdaten hinter einem Alias jemand anderem, übernehmen Sie ihn mit **Durch meins ersetzen**. **Nur Freigabe entfernen (Platzhalter behalten)** löst nur die Bindung und lässt den Platzhalter stehen, sodass der Code unverändert bleibt. + +Zum Ändern der Freigaben einer Ressource brauchen Sie Bearbeitungsrechte für diese App oder Automatisierung. Freigeben können Sie nur eigene Zugangsdaten. + +## Zugangsdaten im Code lesen + +| Ort | Zugriff | +| --- | --- | +| Skripte in Automatisierungen | Umgebungsvariable, etwa `process.env.EXTERNAL_API_KEY` | +| Eingabefelder in Automatisierungen | Neben dem Feld auf **Secret einfügen** klicken und ein freigegebenes Secret wählen | +| Secrets in einer App | Serverseitiger Code liest `process.env.MY_API_KEY` | +| Verbindungen in einer App | Serverseitiger Code ruft `getConnectionToken('ALIAS')` für ein Zugriffstoken auf | + +Fügen Sie in ein Eingabefeld einer Automatisierung etwas ein, das wie ein Schlüssel aussieht, speichert Teable es als Ihr Secret und lässt an der Stelle einen Verweis stehen, sodass der Klartext nicht in der Workflow-Konfiguration landet. Soll der Text so bleiben, wie Sie ihn eingefügt haben, klicken Sie im Hinweis auf **Rückgängig**. + +## Anfragen nach Zugangsdaten im KI-Chat + +Braucht die KI ein externes Konto, heftet sie eine Karte an die Unterhaltung, die nennt, für welchen Dienst sie eine Verbindung oder unter welchem Alias sie ein Secret benötigt. Sie haben die Wahl: + +- **Mein Konto verbinden**: OAuth-Vorgang starten; die neue Verbindung wird der Ressource automatisch freigegeben. +- **Mein … freigeben**: eine vorhandene Verbindung oder ein vorhandenes Secret verwenden. +- **Überspringen**: die Zugangsdaten nicht bereitstellen. Die KI fährt mit den Teilen fort, die nicht davon abhängen. + +## Ersetzen, Löschen und das Verlassen eines Space + +Bevor Sie einen Secret-Wert ersetzen, ein Secret löschen oder eine Verbindung trennen, listet Teable die Apps und Automatisierungen auf, die es noch verwenden. Löschen und Trennen setzen diese Ressourcen sofort außer Betrieb; sollen sie weiterlaufen, geben Sie ihnen vorher andere Zugangsdaten. Der alte Secret-Wert lässt sich nicht wiederherstellen. + +Nach dem Speichern eines neuen Werts übernimmt eine Automatisierung ihn beim nächsten Lauf. Eine App übernimmt ihn, sobald die Vorschauumgebung neu startet, eine veröffentlichte App erst nach einer erneuten Veröffentlichung. + +Verlassen Sie einen Space, in dem eine App oder Automatisierung weiterhin Ihre Zugangsdaten verwendet, weist die Seite **Integrationen** mit **Du hast diesen Space verlassen** darauf hin. Mit **Freigabe entfernen** stellen Sie sie nicht länger bereit. diff --git a/docs.json b/docs.json index 63dbb1d8..a2b13eef 100644 --- a/docs.json +++ b/docs.json @@ -552,8 +552,6 @@ ] }, "en/basic/field/ai/ai-field", - "en/basic/ai/custom-model", - "en/basic/ai/teable-skill", { "group": "Connect & Migrate Everything", "pages": [ @@ -568,7 +566,10 @@ "en/basic/ai/connect-everything/migrate-smartsheet", "en/basic/ai/connect-everything/more-sources" ] - } + }, + "en/basic/credential", + "en/basic/ai/teable-skill", + "en/basic/ai/custom-model" ] }, { @@ -925,8 +926,6 @@ ] }, "zh/basic/field/ai/ai-field", - "zh/basic/ai/custom-model", - "zh/basic/ai/teable-skill", { "group": "Connect & Migrate Everything", "pages": [ @@ -941,7 +940,10 @@ "zh/basic/ai/connect-everything/migrate-smartsheet", "zh/basic/ai/connect-everything/more-sources" ] - } + }, + "zh/basic/credential", + "zh/basic/ai/teable-skill", + "zh/basic/ai/custom-model" ] }, { @@ -1300,8 +1302,6 @@ ] }, "ru/basic/field/ai/ai-field", - "ru/basic/ai/custom-model", - "ru/basic/ai/teable-skill", { "group": "Подключение и перенос данных", "pages": [ @@ -1316,7 +1316,10 @@ "ru/basic/ai/connect-everything/migrate-smartsheet", "ru/basic/ai/connect-everything/more-sources" ] - } + }, + "ru/basic/credential", + "ru/basic/ai/teable-skill", + "ru/basic/ai/custom-model" ] }, { @@ -1673,8 +1676,6 @@ ] }, "de/basic/field/ai/ai-field", - "de/basic/ai/custom-model", - "de/basic/ai/teable-skill", { "group": "Daten verbinden und migrieren", "pages": [ @@ -1689,7 +1690,10 @@ "de/basic/ai/connect-everything/migrate-smartsheet", "de/basic/ai/connect-everything/more-sources" ] - } + }, + "de/basic/credential", + "de/basic/ai/teable-skill", + "de/basic/ai/custom-model" ] }, { @@ -2046,8 +2050,6 @@ ] }, "fr/basic/field/ai/ai-field", - "fr/basic/ai/custom-model", - "fr/basic/ai/teable-skill", { "group": "Connexion et migration des données", "pages": [ @@ -2062,7 +2064,10 @@ "fr/basic/ai/connect-everything/migrate-smartsheet", "fr/basic/ai/connect-everything/more-sources" ] - } + }, + "fr/basic/credential", + "fr/basic/ai/teable-skill", + "fr/basic/ai/custom-model" ] }, { @@ -2419,8 +2424,6 @@ ] }, "es/basic/field/ai/ai-field", - "es/basic/ai/custom-model", - "es/basic/ai/teable-skill", { "group": "Conectar y migrar todo", "pages": [ @@ -2435,7 +2438,10 @@ "es/basic/ai/connect-everything/migrate-smartsheet", "es/basic/ai/connect-everything/more-sources" ] - } + }, + "es/basic/credential", + "es/basic/ai/teable-skill", + "es/basic/ai/custom-model" ] }, { @@ -2792,8 +2798,6 @@ ] }, "it/basic/field/ai/ai-field", - "it/basic/ai/custom-model", - "it/basic/ai/teable-skill", { "group": "Connetti e migra tutto", "pages": [ @@ -2808,7 +2812,10 @@ "it/basic/ai/connect-everything/migrate-smartsheet", "it/basic/ai/connect-everything/more-sources" ] - } + }, + "it/basic/credential", + "it/basic/ai/teable-skill", + "it/basic/ai/custom-model" ] }, { @@ -3165,8 +3172,6 @@ ] }, "ja/basic/field/ai/ai-field", - "ja/basic/ai/custom-model", - "ja/basic/ai/teable-skill", { "group": "すべてを接続・移行", "pages": [ @@ -3181,7 +3186,10 @@ "ja/basic/ai/connect-everything/migrate-smartsheet", "ja/basic/ai/connect-everything/more-sources" ] - } + }, + "ja/basic/credential", + "ja/basic/ai/teable-skill", + "ja/basic/ai/custom-model" ] }, { @@ -3538,8 +3546,6 @@ ] }, "tr/basic/field/ai/ai-field", - "tr/basic/ai/custom-model", - "tr/basic/ai/teable-skill", { "group": "Her Şeyi Bağlayın ve Taşıyın", "pages": [ @@ -3554,7 +3560,10 @@ "tr/basic/ai/connect-everything/migrate-smartsheet", "tr/basic/ai/connect-everything/more-sources" ] - } + }, + "tr/basic/credential", + "tr/basic/ai/teable-skill", + "tr/basic/ai/custom-model" ] }, { @@ -3911,8 +3920,6 @@ ] }, "uk/basic/field/ai/ai-field", - "uk/basic/ai/custom-model", - "uk/basic/ai/teable-skill", { "group": "Підключення й перенесення всіх даних", "pages": [ @@ -3927,7 +3934,10 @@ "uk/basic/ai/connect-everything/migrate-smartsheet", "uk/basic/ai/connect-everything/more-sources" ] - } + }, + "uk/basic/credential", + "uk/basic/ai/teable-skill", + "uk/basic/ai/custom-model" ] }, { @@ -4284,8 +4294,6 @@ ] }, "ar/basic/field/ai/ai-field", - "ar/basic/ai/custom-model", - "ar/basic/ai/teable-skill", { "group": "ربط كل شيء وترحيله", "pages": [ @@ -4300,7 +4308,10 @@ "ar/basic/ai/connect-everything/migrate-smartsheet", "ar/basic/ai/connect-everything/more-sources" ] - } + }, + "ar/basic/credential", + "ar/basic/ai/teable-skill", + "ar/basic/ai/custom-model" ] }, { diff --git a/en/basic/ai/ai-chat.mdx b/en/basic/ai/ai-chat.mdx index 364db993..0b6a680b 100644 --- a/en/basic/ai/ai-chat.mdx +++ b/en/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ When you paste a long block of plain text, Teable converts it to a Markdown atta - **Voice input**: Click the microphone button in the input box and allow microphone access to start recording. While recording, choose **Finish voice input** or **Discard voice input**. After you choose finish, Teable transcribes the recording into the input box. - **Model**: Use the model menu to choose the model for the conversation. Use a lighter model for simple queries, cleanup, or rewriting, and a stronger model for complex planning, cross-table analysis, and app building. - **Intelligence**: Choose the **Intelligence** level separately in the model menu. It controls thinking depth; higher levels produce more thorough reasoning. -- **Secrets**: Open the **+** menu and choose **Secrets** to store API keys or other credentials for AI Chat. AI Chat can read these values as environment variables. Saved values are write-only; enter a new value to update a secret. -- **Integrations**: When AI needs access to a third-party account, it can show a card such as **Connect Slack** in the conversation. Click **Connect** to authorize with OAuth. Click **Skip** to cancel this authorization; AI continues with the parts it can complete without that connection. +- **My secrets**: Open **+** → **More** → **My secrets** to store API keys or other credentials in **Settings** → **Integrations**. The values are yours, AI Chat can read them as environment variables at runtime, and you can grant them to individual apps and automations. See [Credentials and Integrations](/en/basic/credential). +- **Credential requests**: When AI needs a third-party account or a secret, it pins a credential request card to the conversation. Choose **Connect my account** to run an OAuth flow, or grant a credential you already have. Click **Skip** to withhold it; AI continues with the parts it can complete without it. +- **Scraper**: Open the **+** menu and choose **Scraper**, then pick a platform and a data type, such as **personal profile** on LinkedIn or **product reviews** on Amazon. Teable prefills the matching instruction in the chat input for you to complete with a link or a keyword. **Any web page** takes a pasted link directly. - **Skills**: Open the **+** menu and choose **Skills** to import, enable, disable, or try skills in the current chat. When you import one, choose who can use it: **Personal** keeps it to yourself, **Base** gives it to collaborators in this base, and **Space** gives it to everyone in this space. Type `/` in the input box to choose an enabled skill. To connect or migrate an external system, see [Connect & Migrate Everything](/en/basic/ai/connect-everything). - **Context usage**: The ring next to the input box shows how much of the model's context window the conversation currently uses. Click it for the percentage and token counts. When the context fills up, Teable compacts the conversation; start a new chat if you want a clean context instead. - **Manage files**: Open **+** → **More** → **Manage files** to view files in the current chat sandbox. You can preview supported files, download files, or delete files and folders you no longer need. A conversation must exist before its files can be managed. @@ -283,6 +284,6 @@ Open **+** → **More** → **Manage artifacts** to browse everything you have c - Use **+** → **Secrets** in the chat input. AI Chat can use those values during the conversation without putting the plaintext in your prompt. + Use **+** → **More** → **My secrets** in the chat input. AI Chat can use those values during the conversation without putting the plaintext in your prompt. diff --git a/en/basic/ai/app-builder.mdx b/en/basic/ai/app-builder.mdx index 6fbc03d0..e1690881 100644 --- a/en/basic/ai/app-builder.mdx +++ b/en/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ You can update the app's code by importing a ZIP: - The ZIP replaces the existing project. Files you leave out are removed from the new version. - If the ZIP contains one wrapper folder, Teable strips that folder. You can compress the outermost project folder directly. - The imported project must include `package.json` at the project root. -- A root `.env` file in the ZIP is read into the app's **Secrets**. Other `.env*` variants, such as `.env.local`, are ignored. +- Custom variables in a root `.env` file are stored as your secrets and granted to the app under the same names. Other `.env*` variants, such as `.env.local`, are ignored. -#### Secrets +#### Credentials and Config -Use **Secrets** for API keys, credentials, and configuration values your app needs while it runs. In the App Builder chat panel, open the **+** menu and choose **Secrets**. +Keep API keys, credentials, and configuration out of your source. An app uses **your credentials**: an OAuth connection or a secret you store. In the App Builder chat panel, open **+** → **More** → **Credentials & config** and grant a credential to the app. | Detail | Behavior | | --- | --- | -| Availability | App Secrets are available in the app preview environment and the published app | -| Code access | Server-side app code can read them from environment variables such as `process.env.MY_API_KEY` | -| Saved values | Secret values are write-only after saving; enter a new value to update one | -| Name format | The **Name** must start with an uppercase letter and can contain uppercase letters, digits, and underscores | +| Availability | Credentials granted to the app are available in the app preview environment and the published app | +| Variable name | The alias you enter when granting; it must start with an uppercase letter and can contain uppercase letters, digits, and underscores | +| Reading a secret | Server-side app code reads environment variables such as `process.env.MY_API_KEY` | +| Reading a connection | Server-side app code calls `getConnectionToken('ALIAS')` for an access token | +| Saved values | Values are write-only after saving; enter a new value to replace one | -After you add, delete, or change a Secret value, the app preview environment uses the new value. The published app uses it only after you republish. Editing only a Secret description does not require republishing. +After you add a grant, remove one, or replace a credential value, the app preview environment uses the new value. The published app uses it only after you republish. + +Copying an app does not copy its credentials: the panel keeps **Not bound yet** placeholders, and **Bind mine** supplies your own. See [Credentials and Integrations](/en/basic/credential) for managing credentials and checking where they are used. #### Manage App Files @@ -162,7 +165,7 @@ Teable never force-pushes your branch. When the histories diverge, it parks the ### Environment Variables and Local Development -The repository holds source only. Teable never pushes a file whose name starts with `.env`: not at the project root, not in a subfolder, and not in the commit history. Environment values live in the app's **Secrets** and never enter git. The repository's `.gitignore` already lists `.env*`, so a local clone will not commit one by accident. +The repository holds source only. Teable never pushes a file whose name starts with `.env`: not at the project root, not in a subfolder, and not in the commit history. Environment values come from the credentials granted to the app, live in **Credentials & config**, and never enter git. The repository's `.gitignore` already lists `.env*`, so a local clone will not commit one by accident. To run the app on your own machine: @@ -172,13 +175,13 @@ To run the app on your own machine: Run `pnpm dev`. -The copied content matches what the app receives in Teable's own sandbox: your Secrets, plus the variables the platform injects for the app's API endpoint, access token, and AI access. +The copied content matches what the app receives in Teable's own sandbox: the credentials granted to the app, plus the variables the platform injects for the app's API endpoint, access token, and AI access. The `TEABLE_APP_TOKEN` line in that file grants access to the app's data, which is why only members with edit access to the app can copy it. Never commit the file, and never paste it into an issue or a pull request. -To add or change a secret, edit **Secrets** in Teable rather than the local file. A `.env` committed to GitHub does not create or update a Secret. After changing a secret, copy the variables again to refresh your local `.env`. +To add or replace a credential, use **Credentials & config** in Teable rather than the local file. A `.env` committed to GitHub does not create or update a credential. After a credential changes, copy the variables again to refresh your local `.env`. ### Unlink the Repository @@ -290,7 +293,7 @@ For prompt patterns, build tips, rollback advice, and common troubleshooting, se - Switch to the **Code** tab in the editor, click the **`...`** menu in the tab bar, then choose **Download code** or **Import code**. Imported ZIP files can be up to 20 MB and replace the existing project, so include every source file you want to keep. The imported project must include a root `package.json`. A root `.env` file is imported into app **Secrets**. + Switch to the **Code** tab in the editor, click the **`...`** menu in the tab bar, then choose **Download code** or **Import code**. Imported ZIP files can be up to 20 MB and replace the existing project, so include every source file you want to keep. The imported project must include a root `package.json`. Custom variables in a root `.env` file are stored as your secrets and granted to the app under the same names. diff --git a/en/basic/automation.mdx b/en/basic/automation.mdx index 32e658f0..b6a8ccc6 100644 --- a/en/basic/automation.mdx +++ b/en/basic/automation.mdx @@ -39,11 +39,13 @@ You can also build automations step by step using the built-in actions: Changes are saved as a draft. The live workflow keeps running on the previous version until you click **Apply Update**. -## Secrets +## Credentials and Config -Use **Secrets** to store API keys, credentials, and configuration that an automation needs at runtime. Open the workflow on the editing tab, then click **Secrets** next to the test controls. +An automation calls external services with your credentials: an OAuth connection or a secret you store. Open the workflow on the editing tab, click **Credentials & config** next to the test controls, grant a credential to this automation, and give it a **Variable name**. -Secrets are scoped to the current automation. Script actions can read them from environment variables such as `process.env.EXTERNAL_API_KEY`. Saved values are write-only; enter a new value to update a secret. +Script actions read that name from an environment variable such as `process.env.EXTERNAL_API_KEY`; other actions can click **Insert secret** beside an input field to insert a reference. Values are never shown in plaintext, and test results mask them. + +Credentials themselves live in **Settings** → **Integrations**. See [Credentials and Integrations](/en/basic/credential). ## Run history diff --git a/en/basic/credential.mdx b/en/basic/credential.mdx new file mode 100644 index 00000000..7eab2aaa --- /dev/null +++ b/en/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Credentials and Integrations +description: Manage your connections and secrets, and grant them to the apps and automations that need them. +--- + +Available on all Cloud plans; Self-Hosted requires Business or higher. + +When an app or an automation calls an external service, it uses **your credential**. Credentials belong to you, not to the app or automation, and come in two kinds: + +- **Connections**: third-party accounts you authorize to Teable over OAuth, such as Google, Slack, or Feishu. +- **Secrets**: strings you store yourself, such as an API key or an access token. + +You manage credentials in **Settings** → **Integrations** and grant them to individual apps and automations. Once granted, everyone who runs that app or automation uses the granting person's credential. The value is never shown to anyone, and automation test results mask it. + +## Manage Your Connections and Secrets + +Click your avatar in the lower left, then open **Settings** → **Integrations**. The page has three sections: **My connections**, **My secrets**, and **Third-party apps you authorized**. + +**Add secret** asks for: + +| Field | Description | +| --- | --- | +| **Key** | Starts with an uppercase letter; uppercase letters, digits, and underscores only | +| **Value** | Write-only after saving; enter a new value to replace it | +| **Description** | Optional, to record what the secret is for | + +Add a connection with **Connect new account**. When an authorization expires, the connection offers **Reconnect**. + +Each credential shows how many resources currently use it. Click **View** for the list of apps and automations, where you can **Remove grant** for any single one. + +## Grant a Credential to an App or Automation + +Open the resource's credential panel: + +- **Apps**: in the App Builder chat panel, open **+** → **More** → **Credentials & config**. +- **Automations**: open the workflow and click **Credentials & config** on the **Edit** tab. + +**Grant** offers three routes: **Grant existing credential** picks one of your secrets or connections; **Add secret** creates one and grants it right away; or pick a third-party service from the **Services** list, which runs an OAuth flow for a service you have not connected and grants directly for one marked **Connected**. + +Every grant needs a **Variable name**, the alias this credential has inside that app or automation. It follows the same naming rules as a secret key, and it is the name the code reads. + +The panel can also list **Not bound yet** placeholders. Copying an app, duplicating a workflow, and importing or duplicating a base carry over the aliases the code expects but none of the credentials. Click **Bind mine** to supply your own credential so the app or automation can run. + +When an alias currently holds someone else's credential, **Replace with mine** takes it over. **Only remove the grant (keep placeholder)** unbinds it and leaves the placeholder, so the code needs no change. + +Editing a resource's credential grants requires edit permission on that app or automation. You can only grant credentials you own. + +## Read a Credential in Code + +| Where | How to read it | +| --- | --- | +| Automation scripts | An environment variable, such as `process.env.EXTERNAL_API_KEY` | +| Automation input fields | Click **Insert secret** beside the field and pick a granted secret | +| Secrets in an app | Server-side code reads `process.env.MY_API_KEY` | +| Connections in an app | Server-side code calls `getConnectionToken('ALIAS')` for an access token | + +Paste something that looks like a key into an automation input field and Teable stores it as your secret, leaving a reference in place, so the plaintext never lands in the workflow configuration. Click **Undo** in the notice if you would rather keep the text as typed. + +## Credential Requests in AI Chat + +When AI needs an external account, it pins a credential request card to the conversation naming the service it wants a connection for, or the alias it wants a secret for. You can: + +- **Connect my account**: run an OAuth flow; the new connection is granted to the resource automatically. +- **Grant my …**: use a connection or secret you already have. +- **Skip**: withhold the credential. AI continues with the parts that do not depend on it. + +## Replace, Delete, and Leaving a Space + +Before you replace a secret value, delete a secret, or disconnect a connection, Teable lists the apps and automations still using it. Deleting and disconnecting break those resources immediately, so grant them a different credential first if they need to keep running. The old secret value cannot be recovered. + +After a new value is saved, an automation picks it up on its next run; an app picks it up when its preview environment restarts, and a published app when you republish it. + +When you leave a space where an app or automation still uses your credential, the **Integrations** page flags it with **You left this space**. Click **Remove grant** to stop providing it. diff --git a/es/basic/ai/ai-chat.mdx b/es/basic/ai/ai-chat.mdx index 227b9998..4a0a4d22 100644 --- a/es/basic/ai/ai-chat.mdx +++ b/es/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ Cuando pegas un bloque largo de texto sin formato, Teable lo convierte en un arc - **Entrada de voz**: Haz clic en el botón del micrófono del cuadro de entrada y permite el acceso al micrófono para comenzar a grabar. Durante la grabación, elige **Finalizar entrada de voz** o **Descartar entrada de voz**. Al finalizar, Teable transcribe la grabación en el cuadro de entrada. - **Modelo**: Usa el menú de modelos para elegir el modelo de la conversación. Usa un modelo más ligero para consultas sencillas, limpieza o reescritura, y uno más potente para planificación compleja, análisis entre Tablas y creación de aplicaciones. - **Inteligencia**: Elige el nivel de **Inteligencia** por separado en el menú de modelos. Este controla la profundidad del razonamiento; los niveles superiores producen razonamientos más exhaustivos. -- **Secretos**: Abre el menú **+** y elige **Secretos** para almacenar claves de API u otras credenciales del Chat de IA. El Chat de IA puede leer estos valores como variables de entorno. Los valores guardados son de solo escritura; introduce un valor nuevo para actualizar un secreto. -- **Integraciones**: Cuando la IA necesita acceso a una cuenta externa, puede mostrar en la conversación una tarjeta como **Conectar Slack**. Haz clic en **Conectar** para autorizar mediante OAuth. Haz clic en **Omitir** para cancelar la autorización; la IA continuará con las partes que pueda completar sin esa conexión. +- **Mis secretos**: Abre **+** → **Más** → **Mis secretos** para guardar claves de API u otras credenciales en **Ajustes** → **Integraciones**. Esos valores son tuyos, el Chat de IA puede leerlos como variables de entorno durante la ejecución y puedes concederlos a aplicaciones y automatizaciones concretas. Consulta [Credenciales e integraciones](/es/basic/credential). +- **Solicitudes de credenciales**: Cuando la IA necesita una cuenta externa o un secreto, fija en la conversación una tarjeta de solicitud. Elige **Conectar mi cuenta** para iniciar un flujo de OAuth o concede una credencial que ya tengas. Con **Omitir** no la facilitas; la IA continúa con las partes que puede completar sin ella. +- **Scraper**: Abre el menú **+**, elige **Scraper** y selecciona una plataforma y un tipo de dato, por ejemplo **perfil personal** en LinkedIn o **reseñas del producto** en Amazon. Teable rellena la instrucción correspondiente en la entrada del chat para que la completes con un enlace o una palabra clave. **Cualquier página web** acepta directamente un enlace pegado. - **Habilidades**: Abre el menú **+** y elige **Habilidades** para importar, habilitar, deshabilitar o probar habilidades en el chat actual. Cuando importes una, elige quién puede usarla: **Personal** la reserva para ti, **Base** la ofrece a los colaboradores de esta Base y **Espacio** la ofrece a todos los usuarios de este Espacio. Escribe `/` en el cuadro de entrada para elegir una habilidad habilitada. Para conectar o migrar un sistema externo, consulta [Conecta y migra todo](/es/basic/ai/connect-everything). - **Uso del contexto**: El anillo situado junto al cuadro de entrada muestra qué proporción de la ventana de contexto del modelo está usando la conversación. Haz clic en él para consultar el porcentaje y el número de tokens. Cuando se llena el contexto, Teable compacta la conversación; inicia un chat nuevo si quieres partir de un contexto limpio. - **Administrar archivos**: Abre **+** → **Más** → **Administrar archivos** para consultar los archivos del entorno aislado del chat actual. Puedes obtener una vista previa de los archivos compatibles, descargarlos o eliminar los archivos y carpetas que ya no necesites. Debe existir una conversación para poder administrar sus archivos. @@ -283,6 +284,6 @@ Abre **+** → **Más** → **Administrar artefactos** para explorar todo lo que - Usa **+** → **Secretos** en la entrada del chat. El Chat de IA puede usar esos valores durante la conversación sin incluir el texto sin formato en tu instrucción. + Usa **+** → **Más** → **Mis secretos** en la entrada del chat. El Chat de IA puede usar esos valores durante la conversación sin incluir el texto sin formato en tu instrucción. diff --git a/es/basic/ai/app-builder.mdx b/es/basic/ai/app-builder.mdx index 2922434d..20158d3a 100644 --- a/es/basic/ai/app-builder.mdx +++ b/es/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ Puedes actualizar el código de la aplicación importando un archivo ZIP: - El ZIP sustituye el proyecto existente. Los archivos que omitas se eliminan de la versión nueva. - Si el ZIP contiene una carpeta contenedora, Teable elimina esa carpeta. Puedes comprimir directamente la carpeta de nivel superior del proyecto. - El proyecto importado debe incluir `package.json` en la raíz del proyecto. -- Los archivos `.env` situados en la raíz del ZIP se importan en los **Secretos** de la aplicación. Las demás variantes `.env*`, como `.env.local`, se ignoran. +- Las variables personalizadas de un archivo `.env` situado en la raíz del ZIP se guardan como secretos tuyos y se conceden a la aplicación con esos mismos nombres. Las demás variantes `.env*`, como `.env.local`, se ignoran. -#### Secretos +#### Credenciales y configuración -Usa **Secretos** para las claves de API, credenciales y valores de configuración que la aplicación necesita durante la ejecución. En el panel de chat de App Builder, abre el menú **+** y elige **Secretos**. +No escribas claves de API, credenciales ni valores de configuración en el código fuente. Una aplicación usa **tus credenciales**: una conexión OAuth o un secreto que guardas. En el panel de chat del App Builder, abre **+** → **Más** → **Credenciales y configuración** y concede una credencial a la aplicación. | Detalle | Comportamiento | | --- | --- | -| Disponibilidad | Los Secretos de la aplicación están disponibles en el entorno de vista previa y en la aplicación publicada | -| Acceso desde el código | El código de servidor de la aplicación puede leerlos desde variables de entorno como `process.env.MY_API_KEY` | -| Valores guardados | Los valores secretos son de solo escritura después de guardarlos; introduce un valor nuevo para actualizar uno | -| Formato del nombre | El **Nombre** debe comenzar por una letra mayúscula y puede contener letras mayúsculas, dígitos y guiones bajos | +| Disponibilidad | Las credenciales concedidas a la aplicación están disponibles en el entorno de vista previa y en la aplicación publicada | +| Nombre de la variable | El alias que introduces al conceder; empieza por mayúscula y solo admite mayúsculas, dígitos y guiones bajos | +| Leer un secreto | El código de servidor lee variables de entorno como `process.env.MY_API_KEY` | +| Leer una conexión | El código de servidor llama a `getConnectionToken('ALIAS')` para obtener un token de acceso | +| Valores guardados | Los valores son de solo escritura tras guardarlos; introduce uno nuevo para sustituirlo | -Después de añadir, eliminar o cambiar el valor de un Secreto, el entorno de vista previa de la aplicación usa el valor nuevo. La aplicación publicada solo lo usa después de volver a publicarla. Si solo editas la descripción de un Secreto, no es necesario volver a publicar. +Después de añadir o quitar una concesión, o de sustituir el valor de una credencial, el entorno de vista previa usa el valor nuevo. La aplicación publicada solo lo usa cuando vuelves a publicarla. + +Copiar una aplicación no copia sus credenciales: el panel conserva marcadores **Sin vincular** y **Vincular la mía** aporta la tuya. Para gestionar credenciales y ver dónde se usan, consulta [Credenciales e integraciones](/es/basic/credential). #### Administrar los archivos de la aplicación @@ -162,7 +165,7 @@ Teable nunca fuerza el envío a tu rama. Cuando los historiales divergen, coloca ### Variables de entorno y desarrollo local -El repositorio solo contiene el código fuente. Teable nunca envía archivos cuyos nombres comiencen por `.env`: ni en la raíz del proyecto, ni en una subcarpeta ni en el historial de confirmaciones. Los valores de entorno residen en los **Secretos** de la aplicación y nunca entran en git. El archivo `.gitignore` del repositorio ya incluye `.env*`, por lo que un clon local no confirmará ninguno por accidente. +El repositorio solo contiene el código fuente. Teable nunca envía archivos cuyos nombres comiencen por `.env`: ni en la raíz del proyecto, ni en una subcarpeta ni en el historial de confirmaciones. Los valores de entorno proceden de las credenciales concedidas a la aplicación, residen en **Credenciales y configuración** y nunca entran en git. El archivo `.gitignore` del repositorio ya incluye `.env*`, por lo que un clon local no confirmará ninguno por accidente. Para ejecutar la aplicación en tu propio equipo: @@ -172,13 +175,13 @@ Para ejecutar la aplicación en tu propio equipo: Ejecuta `pnpm dev`. -El contenido copiado coincide con lo que recibe la aplicación en el entorno aislado de Teable: tus Secretos y las variables que la plataforma inyecta para el punto de conexión de la API, el token de acceso y el acceso a IA de la aplicación. +El contenido copiado coincide con lo que recibe la aplicación en el entorno aislado de Teable: las credenciales concedidas a la aplicación y las variables que la plataforma inyecta para el punto de conexión de la API, el token de acceso y el acceso a IA de la aplicación. La línea `TEABLE_APP_TOKEN` de ese archivo concede acceso a los datos de la aplicación; por este motivo, solo pueden copiarla los miembros con acceso de edición a la aplicación. Nunca confirmes el archivo ni lo pegues en una incidencia o solicitud de incorporación de cambios. -Para añadir o cambiar un secreto, edita **Secretos** en Teable en lugar del archivo local. Un archivo `.env` confirmado en GitHub no crea ni actualiza ningún Secreto. Después de cambiar un secreto, vuelve a copiar las variables para actualizar tu archivo `.env` local. +Para añadir o sustituir una credencial, usa **Credenciales y configuración** en Teable en lugar del archivo local. Un archivo `.env` confirmado en GitHub no crea ni actualiza ninguna credencial. Después de cambiar una credencial, vuelve a copiar las variables para actualizar tu archivo `.env` local. ### Desvincular el repositorio @@ -290,7 +293,7 @@ Para consultar patrones de instrucciones, consejos de creación, recomendaciones - Cambia a la pestaña **Código** del editor, haz clic en el menú **`...`** de la barra de pestañas y elige **Descargar código** o **Importar código**. Los archivos ZIP importados pueden tener hasta 20 MB y sustituyen el proyecto existente, así que incluye todos los archivos de origen que quieras conservar. El proyecto importado debe incluir un archivo `package.json` en la raíz. Los archivos `.env` situados en la raíz se importan en los **Secretos** de la aplicación. + Cambia a la pestaña **Código** del editor, haz clic en el menú **`...`** de la barra de pestañas y elige **Descargar código** o **Importar código**. Los archivos ZIP importados pueden tener hasta 20 MB y sustituyen el proyecto existente, así que incluye todos los archivos de origen que quieras conservar. El proyecto importado debe incluir un archivo `package.json` en la raíz. Las variables personalizadas de un archivo `.env` situado en la raíz se guardan como secretos tuyos y se conceden a la aplicación con esos mismos nombres. diff --git a/es/basic/automation.mdx b/es/basic/automation.mdx index a4891ae9..802543ea 100644 --- a/es/basic/automation.mdx +++ b/es/basic/automation.mdx @@ -39,11 +39,13 @@ También puedes crear automatizaciones paso a paso mediante las acciones integra Los cambios se guardan como borrador. El flujo de trabajo activo continúa ejecutando la versión anterior hasta que hagas clic en **Aplicar actualización**. -## Secretos +## Credenciales y configuración -Usa **Secretos** para almacenar las claves de API, las credenciales y la configuración que una automatización necesita durante la ejecución. Abre el flujo de trabajo en la pestaña de edición y haz clic en **Secretos**, junto a los controles de prueba. +Una automatización llama a los servicios externos con tus credenciales: una conexión OAuth o un secreto que guardas. Abre el flujo de trabajo en la pestaña de edición, haz clic en **Credenciales y configuración** junto a los controles de prueba, concede una credencial a esta automatización y ponle un **Nombre de la variable**. -El ámbito de los secretos se limita a la automatización actual. Las acciones de código pueden leerlos desde variables de entorno como `process.env.EXTERNAL_API_KEY`. Los valores guardados son de solo escritura; introduce un valor nuevo para actualizar un secreto. +Las acciones de código leen ese nombre desde una variable de entorno como `process.env.EXTERNAL_API_KEY`; en las demás acciones, **Insertar secreto** junto a un campo añade una referencia. Los valores nunca se muestran sin formato y los resultados de prueba los enmascaran. + +Las credenciales se gestionan en **Ajustes** → **Integraciones**; consulta [Credenciales e integraciones](/es/basic/credential). ## Historial de ejecuciones diff --git a/es/basic/credential.mdx b/es/basic/credential.mdx new file mode 100644 index 00000000..ecbf536c --- /dev/null +++ b/es/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Credenciales e integraciones +description: Gestiona tus conexiones y secretos y concédelos a las aplicaciones y automatizaciones que los necesiten. +--- + +Disponible en todos los planes de Cloud; la versión autoalojada requiere el plan Business o uno superior. + +Cuando una aplicación o una automatización llama a un servicio externo, usa **tus credenciales**. Las credenciales son tuyas, no de la aplicación ni de la automatización, y son de dos tipos: + +- **Conexiones**: cuentas de terceros que autorizas a Teable mediante OAuth, como Google, Slack o Feishu. +- **Secretos**: cadenas que guardas tú, como una clave de API o un token de acceso. + +Las credenciales se gestionan en **Ajustes** → **Integraciones** y desde ahí las concedes a cada aplicación o automatización. Una vez concedidas, todas las personas que ejecuten esa aplicación o automatización usan las credenciales de quien las concedió. El valor no se muestra a nadie y los resultados de prueba de una automatización lo enmascaran. + +## Gestiona tus conexiones y secretos + +Haz clic en tu avatar de la esquina inferior izquierda y abre **Ajustes** → **Integraciones**. La página tiene tres secciones: **Mis conexiones**, **Mis secretos** y **Aplicaciones de terceros que has autorizado**. + +**Añadir secreto** pide: + +| Campo | Descripción | +| --- | --- | +| **Clave** | Empieza por mayúscula; solo mayúsculas, dígitos y guiones bajos | +| **Valor** | De solo escritura tras guardarlo; introduce un valor nuevo para sustituirlo | +| **Descripción** | Opcional, para anotar para qué sirve el secreto | + +Las conexiones se añaden con **Conectar nueva cuenta**. Cuando caduca una autorización, la conexión ofrece **Volver a conectar**. + +Cada credencial indica cuántos recursos la usan ahora mismo. **Ver** abre la lista de aplicaciones y automatizaciones, donde puedes **Quitar autorización** a cualquiera de ellas. + +## Conceder una credencial a una aplicación o automatización + +Abre el panel de credenciales del recurso: + +- **Aplicaciones**: en el panel de chat del App Builder, abre **+** → **Más** → **Credenciales y configuración**. +- **Automatizaciones**: abre el flujo de trabajo y haz clic en **Credenciales y configuración** en la pestaña **Editar**. + +**Conceder** ofrece tres caminos: **Conceder un secreto existente** elige uno de tus secretos o conexiones; **Añadir secreto** crea uno y lo concede al momento; o eliges un servicio de la lista **Servicios**, que inicia un flujo de OAuth si aún no lo has conectado y lo concede directamente si está marcado como **Conectado**. + +Cada concesión necesita un **Nombre de la variable**, el alias que esa credencial tiene dentro de la aplicación o automatización. Sigue las mismas reglas de nomenclatura que la clave de un secreto y es el nombre que lee el código. + +El panel también puede mostrar marcadores **Sin vincular**. Copiar una aplicación, duplicar un flujo de trabajo e importar o duplicar una base traen los alias que espera el código, pero ninguna credencial. Con **Vincular la mía** aportas la tuya para que la aplicación o automatización funcione. + +Cuando un alias tiene la credencial de otra persona, **Reemplazar por el mío** la sustituye por la tuya. **Solo quitar el permiso (mantener marcador)** deshace el vínculo y conserva el marcador, así que el código no cambia. + +Cambiar las concesiones de un recurso exige permiso de edición sobre esa aplicación o automatización. Solo puedes conceder credenciales propias. + +## Leer una credencial desde el código + +| Dónde | Cómo leerla | +| --- | --- | +| Acciones de código de una automatización | Una variable de entorno, como `process.env.EXTERNAL_API_KEY` | +| Campos de entrada de una automatización | Haz clic en **Insertar secreto** junto al campo y elige un secreto concedido | +| Secretos en una aplicación | El código de servidor lee `process.env.MY_API_KEY` | +| Conexiones en una aplicación | El código de servidor llama a `getConnectionToken('ALIAS')` para obtener un token de acceso | + +Si pegas algo que parece una clave en un campo de una automatización, Teable lo guarda como secreto tuyo y deja una referencia en su lugar, de modo que el texto sin formato no acaba en la configuración del flujo de trabajo. Si prefieres conservar el texto tal cual, haz clic en **Deshacer** en el aviso. + +## Solicitudes de credenciales en el Chat de IA + +Cuando la IA necesita una cuenta externa, fija en la conversación una tarjeta de solicitud que indica de qué servicio quiere una conexión o para qué alias quiere un secreto. Puedes: + +- **Conectar mi cuenta**: iniciar un flujo de OAuth; la nueva conexión se concede automáticamente al recurso. +- **Conceder mi…**: usar una conexión o un secreto que ya tengas. +- **Omitir**: no facilitar la credencial. La IA continúa con las partes que no dependen de ella. + +## Sustituir, eliminar y salir de un espacio + +Antes de sustituir el valor de un secreto, eliminar un secreto o desconectar una conexión, Teable enumera las aplicaciones y automatizaciones que aún la usan. Eliminar y desconectar las deja fuera de servicio de inmediato, así que concédeles antes otra credencial si tienen que seguir funcionando. El valor anterior de un secreto no se puede recuperar. + +Tras guardar un valor nuevo, una automatización lo toma en su siguiente ejecución; una aplicación, al reiniciarse su entorno de vista previa, y una aplicación publicada, solo cuando vuelves a publicarla. + +Si sales de un espacio donde una aplicación o automatización sigue usando tus credenciales, la página **Integraciones** lo señala con **Saliste de este espacio**. Haz clic en **Quitar autorización** para dejar de facilitarlas. diff --git a/fr/basic/ai/ai-chat.mdx b/fr/basic/ai/ai-chat.mdx index b120281d..828dbabf 100644 --- a/fr/basic/ai/ai-chat.mdx +++ b/fr/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ Lorsque vous collez un long bloc de texte brut, Teable le convertit en pièce jo - **Saisie vocale** : cliquez sur le bouton du microphone dans le champ de saisie et autorisez l’accès au microphone pour commencer l’enregistrement. Pendant l’enregistrement, choisissez **Terminer la saisie vocale** ou **Abandonner la saisie vocale**. Une fois terminé, Teable transcrit l’enregistrement dans le champ de saisie. - **Modèle** : utilisez le menu des modèles pour choisir le modèle de la conversation. Utilisez un modèle plus léger pour les requêtes simples, le nettoyage ou la réécriture, et un modèle plus puissant pour la planification complexe, l’analyse inter-tables et la création d’applications. - **Intelligence** : choisissez séparément le niveau d’**Intelligence** dans le menu des modèles. Il contrôle la profondeur de réflexion ; les niveaux plus élevés produisent un raisonnement plus approfondi. -- **Secrets** : ouvrez le menu **+** et choisissez **Secrets** pour stocker des clés API ou d’autres identifiants pour le Chat IA. Le Chat IA peut lire ces valeurs comme variables d’environnement. Les valeurs enregistrées sont accessibles uniquement en écriture ; saisissez une nouvelle valeur pour mettre à jour un secret. -- **Intégrations** : lorsque l’IA a besoin d’accéder à un compte tiers, elle peut afficher dans la conversation une carte telle que **Connecter Slack**. Cliquez sur **Connecter** pour autoriser l’accès avec OAuth. Cliquez sur **Ignorer** pour annuler cette autorisation ; l’IA poursuit les parties qu’elle peut réaliser sans cette connexion. +- **Mes secrets** : ouvrez **+** → **Plus** → **Mes secrets** pour enregistrer des clés API ou d’autres identifiants dans **Paramètres** → **Intégrations**. Ces valeurs vous appartiennent, le Chat IA peut les lire à l’exécution comme variables d’environnement, et vous pouvez les accorder à telle application ou telle automatisation. Voir [Identifiants et intégrations](/fr/basic/credential). +- **Demandes d’identifiants** : lorsque l’IA a besoin d’un compte tiers ou d’un secret, elle épingle une carte de demande dans la conversation. Choisissez **Connecter mon compte** pour lancer un parcours OAuth, ou accordez un identifiant que vous possédez déjà. **Ignorer** ne le fournit pas ; l’IA poursuit les parties qu’elle peut réaliser sans lui. +- **Scraper** : ouvrez le menu **+** et choisissez **Scraper**, puis une plateforme et un type de données, par exemple **profil personnel** sur LinkedIn ou **avis sur le produit** sur Amazon. Teable pré-remplit l’instruction correspondante dans la saisie du chat, que vous complétez par un lien ou un mot-clé. **Page web quelconque** accepte directement un lien collé. - **Compétences** : ouvrez le menu **+** et choisissez **Compétences** pour importer, activer, désactiver ou essayer des compétences dans le chat actuel. Lors de l’importation, choisissez qui peut l’utiliser : **Personnel** la réserve à votre usage, **Base** la donne aux collaborateurs de cette base et **Espace** la donne à tous les membres de cet espace. Saisissez `/` dans le champ de saisie pour choisir une compétence activée. Pour connecter ou migrer un système externe, consultez [Tout connecter et migrer](/fr/basic/ai/connect-everything). - **Utilisation du contexte** : l’anneau à côté du champ de saisie indique la part de la fenêtre de contexte du modèle actuellement utilisée par la conversation. Cliquez dessus pour afficher le pourcentage et le nombre de jetons. Lorsque le contexte est plein, Teable compacte la conversation ; démarrez un nouveau chat si vous souhaitez un contexte vierge. - **Gérer les fichiers** : ouvrez **+** → **Plus** → **Gérer les fichiers** pour consulter les fichiers dans le bac à sable du chat actuel. Vous pouvez prévisualiser les fichiers pris en charge, télécharger des fichiers ou supprimer les fichiers et dossiers dont vous n’avez plus besoin. Une conversation doit exister avant que ses fichiers puissent être gérés. @@ -283,7 +284,7 @@ Ouvrez **+** → **Plus** → **Gérer les artefacts** pour parcourir tout ce qu - Utilisez **+** → **Secrets** dans la saisie du chat. Le Chat IA peut utiliser ces valeurs pendant la conversation sans placer le texte brut dans votre prompt. + Utilisez **+** → **Plus** → **Mes secrets** dans la saisie du chat. Le Chat IA peut utiliser ces valeurs pendant la conversation sans placer le texte brut dans votre prompt. diff --git a/fr/basic/ai/app-builder.mdx b/fr/basic/ai/app-builder.mdx index 1f877da6..afd6fbe3 100644 --- a/fr/basic/ai/app-builder.mdx +++ b/fr/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ Vous pouvez mettre à jour le code de l’application en important un ZIP : - Le ZIP remplace le projet existant. Les fichiers que vous omettez sont supprimés de la nouvelle version. - Si le ZIP contient un seul dossier enveloppe, Teable retire ce dossier. Vous pouvez compresser directement le dossier de projet le plus externe. - Le projet importé doit inclure `package.json` à la racine du projet. -- Un fichier `.env` à la racine du ZIP est lu dans les **Secrets** de l’application. Les autres variantes `.env*`, telles que `.env.local`, sont ignorées. +- Les variables personnalisées d’un fichier `.env` à la racine du ZIP sont enregistrées comme vos secrets et accordées à l’application sous les mêmes noms. Les autres variantes `.env*`, telles que `.env.local`, sont ignorées. -#### Secrets +#### Identifiants et configuration -Utilisez les **Secrets** pour les clés API, les identifiants et les valeurs de configuration dont votre application a besoin lors de son exécution. Dans le panneau de chat du Créateur d’applications, ouvrez le menu **+** et choisissez **Secrets**. +N’écrivez pas les clés API, les identifiants ni les valeurs de configuration dans le code source. Une application utilise **vos identifiants** : une connexion OAuth ou un secret que vous enregistrez. Dans le panneau de chat de l’App Builder, ouvrez **+** → **Plus** → **Identifiants et configuration**, puis accordez un identifiant à l’application. | Détail | Comportement | | --- | --- | -| Disponibilité | Les Secrets d’application sont disponibles dans l’environnement d’aperçu de l’application et dans l’application publiée | -| Accès au code | Le code côté serveur de l’application peut les lire à partir de variables d’environnement telles que `process.env.MY_API_KEY` | -| Valeurs enregistrées | Les valeurs secrètes sont accessibles en écriture seule après l’enregistrement ; saisissez une nouvelle valeur pour en mettre une à jour | -| Format du nom | Le **Nom** doit commencer par une lettre majuscule et peut contenir des lettres majuscules, des chiffres et des traits de soulignement | +| Disponibilité | Les identifiants accordés à l’application sont disponibles dans l’environnement de prévisualisation et dans l’application publiée | +| Nom de la variable | L’alias saisi lors de l’autorisation ; il commence par une majuscule et n’accepte que majuscules, chiffres et traits de soulignement | +| Lire un secret | Le code d’application côté serveur lit des variables d’environnement telles que `process.env.MY_API_KEY` | +| Lire une connexion | Le code d’application côté serveur appelle `getConnectionToken('ALIAS')` pour obtenir un jeton d’accès | +| Valeurs enregistrées | Les valeurs sont accessibles en écriture seule après l’enregistrement ; saisissez une nouvelle valeur pour en remplacer une | -Après avoir ajouté, supprimé ou modifié une valeur de Secret, l’environnement d’aperçu de l’application utilise la nouvelle valeur. L’application publiée ne l’utilise qu’après une nouvelle publication. La modification de la seule description d’un Secret ne nécessite pas de nouvelle publication. +Après l’ajout ou le retrait d’une autorisation, ou le remplacement d’une valeur, l’environnement de prévisualisation de l’application utilise la nouvelle valeur. L’application publiée ne l’utilise qu’après une nouvelle publication. + +Copier une application ne copie pas ses identifiants : le panneau conserve des emplacements **Pas encore lié**, et **Lier le mien** y place les vôtres. Pour la gestion des identifiants et le suivi de leur utilisation, voir [Identifiants et intégrations](/fr/basic/credential). #### Gérer les fichiers de l’application @@ -162,7 +165,7 @@ Teable ne force jamais l’envoi vers votre branche. Lorsque les historiques div ### Variables d’environnement et développement local -Le dépôt ne contient que le code source. Teable n’envoie jamais de fichier dont le nom commence par `.env` : ni à la racine du projet, ni dans un sous-dossier, ni dans l’historique des commits. Les valeurs d’environnement se trouvent dans les **Secrets** de l’application et n’entrent jamais dans git. Le fichier `.gitignore` du dépôt répertorie déjà `.env*`, de sorte qu’un clone local n’en validera pas un par accident. +Le dépôt ne contient que le code source. Teable n’envoie jamais de fichier dont le nom commence par `.env` : ni à la racine du projet, ni dans un sous-dossier, ni dans l’historique des commits. Les valeurs d’environnement proviennent des identifiants accordés à l’application, se trouvent dans **Identifiants et configuration** et n’entrent jamais dans git. Le fichier `.gitignore` du dépôt répertorie déjà `.env*`, de sorte qu’un clone local n’en validera pas un par accident. Pour exécuter l’application sur votre propre machine : @@ -172,13 +175,13 @@ Pour exécuter l’application sur votre propre machine : Exécutez `pnpm dev`. -Le contenu copié correspond à ce que l’application reçoit dans le propre bac à sable de Teable : vos Secrets, ainsi que les variables que la plateforme injecte pour le point de terminaison API de l’application, le jeton d’accès et l’accès à l’IA. +Le contenu copié correspond à ce que l’application reçoit dans le propre bac à sable de Teable : les identifiants accordés à l’application, ainsi que les variables que la plateforme injecte pour le point de terminaison API de l’application, le jeton d’accès et l’accès à l’IA. La ligne `TEABLE_APP_TOKEN` de ce fichier donne accès aux données de l’application ; c’est pourquoi seuls les membres disposant d’un accès de modification à l’application peuvent la copier. Ne validez jamais le fichier et ne le collez jamais dans une issue ou une pull request. -Pour ajouter ou modifier un secret, modifiez les **Secrets** dans Teable plutôt que le fichier local. Un fichier `.env` validé dans GitHub ne crée ni ne met à jour de Secret. Après avoir modifié un secret, copiez à nouveau les variables pour actualiser votre fichier `.env` local. +Pour ajouter ou remplacer un identifiant, utilisez **Identifiants et configuration** dans Teable plutôt que le fichier local. Un fichier `.env` validé dans GitHub ne crée ni ne met à jour d’identifiant. Après une modification, copiez à nouveau les variables pour actualiser votre fichier `.env` local. ### Dissocier le dépôt @@ -290,7 +293,7 @@ Pour les modèles de prompts, les conseils de création, les recommandations de - Passez à l’onglet **Code** dans l’éditeur, cliquez sur le menu **`...`** dans la barre d’onglets, puis choisissez **Télécharger le code** ou **Importer le code**. Les fichiers ZIP importés peuvent atteindre 20 Mo et remplacent le projet existant ; incluez donc chaque fichier source que vous souhaitez conserver. Le projet importé doit inclure un fichier `package.json` à la racine. Un fichier `.env` à la racine est importé dans les **Secrets** de l’application. + Passez à l’onglet **Code** dans l’éditeur, cliquez sur le menu **`...`** dans la barre d’onglets, puis choisissez **Télécharger le code** ou **Importer le code**. Les fichiers ZIP importés peuvent atteindre 20 Mo et remplacent le projet existant ; incluez donc chaque fichier source que vous souhaitez conserver. Le projet importé doit inclure un fichier `package.json` à la racine. Les variables personnalisées d’un fichier `.env` à la racine sont enregistrées comme vos secrets et accordées à l’application sous les mêmes noms. diff --git a/fr/basic/automation.mdx b/fr/basic/automation.mdx index e8b0d262..87e2c930 100644 --- a/fr/basic/automation.mdx +++ b/fr/basic/automation.mdx @@ -39,11 +39,13 @@ Vous pouvez également créer des automatisations étape par étape à l’aide Les modifications sont enregistrées comme brouillon. Le workflow actif continue de s’exécuter avec la version précédente jusqu’à ce que vous cliquiez sur **Appliquer la mise à jour**. -## Secrets +## Identifiants et configuration -Utilisez **Secrets** pour stocker les clés API, identifiants et configurations dont une automatisation a besoin au moment de l’exécution. Ouvrez le workflow dans l’onglet d’édition, puis cliquez sur **Secrets** à côté des contrôles de test. +Une automatisation appelle les services externes avec vos identifiants : une connexion OAuth ou un secret que vous enregistrez. Ouvrez le workflow dans l’onglet d’édition, cliquez sur **Identifiants et configuration** à côté des contrôles de test, accordez un identifiant à cette automatisation et donnez-lui un **Nom de la variable**. -Les secrets sont limités à l’automatisation actuelle. Les actions de script peuvent les lire à partir de variables d’environnement telles que `process.env.EXTERNAL_API_KEY`. Les valeurs enregistrées sont accessibles en écriture uniquement ; saisissez une nouvelle valeur pour mettre à jour un secret. +Les actions de script lisent ce nom dans une variable d’environnement telle que `process.env.EXTERNAL_API_KEY` ; dans les autres actions, **Insérer un secret** à côté d’un champ ajoute une référence. Les valeurs ne sont jamais affichées en clair et les résultats de test les masquent. + +Les identifiants eux-mêmes se trouvent dans **Paramètres** → **Intégrations**, voir [Identifiants et intégrations](/fr/basic/credential). ## Historique des exécutions diff --git a/fr/basic/credential.mdx b/fr/basic/credential.mdx new file mode 100644 index 00000000..c943cb99 --- /dev/null +++ b/fr/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Identifiants et intégrations +description: Gérez vos connexions et vos secrets, puis accordez-les aux applications et aux automatisations qui en ont besoin. +--- + +Disponible avec tous les forfaits Cloud ; l’auto-hébergement nécessite Business ou une offre supérieure. + +Lorsqu’une application ou une automatisation appelle un service externe, elle utilise **vos identifiants**. Ceux-ci vous appartiennent et non à l’application ou à l’automatisation, et se déclinent en deux types : + +- **Connexions** : comptes tiers que vous autorisez auprès de Teable via OAuth, par exemple Google, Slack ou Feishu. +- **Secrets** : chaînes que vous enregistrez vous-même, par exemple une clé API ou un jeton d’accès. + +Les identifiants se gèrent dans **Paramètres** → **Intégrations**, d’où vous les accordez à telle application ou telle automatisation. Une fois l’autorisation accordée, toute personne qui exécute cette application ou cette automatisation utilise les identifiants de la personne qui les a accordés. La valeur n’est montrée à personne, et les résultats de test d’une automatisation la masquent. + +## Gérer vos connexions et vos secrets + +Cliquez sur votre avatar en bas à gauche, puis ouvrez **Paramètres** → **Intégrations**. La page comporte trois sections : **Mes connexions**, **Mes secrets** et **Applications tierces que vous avez autorisées**. + +**Ajouter un secret** demande : + +| Champ | Description | +| --- | --- | +| **Clé** | Commence par une majuscule ; majuscules, chiffres et traits de soulignement uniquement | +| **Valeur** | Accessible en écriture seule après l’enregistrement ; saisissez une nouvelle valeur pour la remplacer | +| **Description** | Facultative, pour noter à quoi sert le secret | + +Une connexion s’ajoute avec **Connecter un nouveau compte**. Quand une autorisation expire, la connexion propose **Reconnecter**. + +Chaque identifiant indique combien de ressources l’utilisent actuellement. **Afficher** ouvre la liste des applications et automatisations concernées, où vous pouvez **Retirer l’autorisation** pour l’une d’elles. + +## Accorder un identifiant à une application ou une automatisation + +Ouvrez le panneau d’identifiants de la ressource : + +- **Applications** : dans le panneau de chat de l’App Builder, ouvrez **+** → **Plus** → **Identifiants et configuration**. +- **Automatisations** : ouvrez le workflow et cliquez sur **Identifiants et configuration** dans l’onglet **Édition**. + +**Accorder** propose trois voies : **Accorder un secret existant** choisit l’un de vos secrets ou l’une de vos connexions ; **Ajouter un secret** en crée un et l’accorde aussitôt ; vous pouvez aussi choisir un service dans la liste **Services**, ce qui lance un parcours OAuth pour un service non connecté et accorde directement celui marqué **Connecté**. + +Chaque autorisation demande un **Nom de la variable**, l’alias de cet identifiant dans cette application ou automatisation. Les règles de nommage sont celles d’une clé de secret, et c’est ce nom que lit le code. + +Le panneau peut aussi afficher des emplacements **Pas encore lié**. Copier une application, dupliquer un workflow, importer ou dupliquer une base reprend les alias attendus par le code, mais aucun identifiant. **Lier le mien** fournit les vôtres pour que l’application ou l’automatisation fonctionne. + +Quand un alias porte les identifiants de quelqu’un d’autre, **Remplacer par le mien** les reprend. **Retirer seulement l’autorisation (garder l’emplacement)** rompt le lien et conserve l’emplacement, sans toucher au code. + +Modifier les autorisations d’une ressource demande le droit de modification sur cette application ou cette automatisation. Vous ne pouvez accorder que vos propres identifiants. + +## Lire un identifiant dans le code + +| Contexte | Comment le lire | +| --- | --- | +| Scripts d’automatisation | Variable d’environnement, par exemple `process.env.EXTERNAL_API_KEY` | +| Champs de saisie d’une automatisation | Cliquez sur **Insérer un secret** à côté du champ et choisissez un secret accordé | +| Secrets dans une application | Le code côté serveur lit `process.env.MY_API_KEY` | +| Connexions dans une application | Le code côté serveur appelle `getConnectionToken('ALIAS')` pour obtenir un jeton d’accès | + +Si vous collez dans un champ d’automatisation une valeur qui ressemble à une clé, Teable l’enregistre comme votre secret et laisse une référence à la place, de sorte que le texte en clair n’entre pas dans la configuration du workflow. Pour conserver le texte tel quel, cliquez sur **Annuler** dans la notification. + +## Demandes d’identifiants dans le Chat IA + +Quand l’IA a besoin d’un compte externe, elle épingle dans la conversation une carte de demande d’identifiant qui précise le service pour lequel elle veut une connexion, ou l’alias pour lequel elle veut un secret. Vous pouvez : + +- **Connecter mon compte** : lancer un parcours OAuth ; la nouvelle connexion est accordée automatiquement à la ressource. +- **Accorder mon…** : utiliser une connexion ou un secret que vous possédez déjà. +- **Ignorer** : ne pas fournir l’identifiant. L’IA poursuit les parties qui n’en dépendent pas. + +## Remplacer, supprimer et quitter un espace + +Avant que vous remplaciez la valeur d’un secret, supprimiez un secret ou déconnectiez une connexion, Teable liste les applications et automatisations qui l’utilisent encore. La suppression et la déconnexion les mettent aussitôt hors service : accordez-leur d’abord un autre identifiant si elles doivent continuer à tourner. L’ancienne valeur d’un secret est irrécupérable. + +Une fois la nouvelle valeur enregistrée, une automatisation la prend à sa prochaine exécution ; une application la prend au redémarrage de son environnement de prévisualisation, et une application publiée seulement après une nouvelle publication. + +Si vous quittez un espace où une application ou une automatisation utilise encore vos identifiants, la page **Intégrations** le signale avec **Vous avez quitté cet espace**. Cliquez sur **Retirer l’autorisation** pour cesser de les fournir. diff --git a/it/basic/ai/ai-chat.mdx b/it/basic/ai/ai-chat.mdx index 009e436e..65825d84 100644 --- a/it/basic/ai/ai-chat.mdx +++ b/it/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ Quando incolli un lungo blocco di testo normale, Teable lo converte in un allega - **Input vocale**: fai clic sul pulsante del microfono nella casella di input e consenti l'accesso al microfono per iniziare la registrazione. Durante la registrazione, scegli **Termina input vocale** o **Elimina input vocale**. Dopo aver scelto di terminare, Teable trascrive la registrazione nella casella di input. - **Modello**: usa il menu dei modelli per scegliere quello della conversazione. Usa un modello più leggero per query semplici, pulizia o riscrittura e uno più potente per pianificazione complessa, analisi tra Tabelle e creazione di app. - **Intelligenza**: scegli separatamente il livello di **Intelligenza** nel menu dei modelli. Controlla la profondità del ragionamento; i livelli superiori producono un'analisi più approfondita. -- **Segreti**: apri il menu **+** e scegli **Segreti** per archiviare chiavi API o altre credenziali destinate ad AI Chat. AI Chat può leggere questi valori come variabili di ambiente. I valori salvati sono di sola scrittura; inserisci un nuovo valore per aggiornare un segreto. -- **Integrazioni**: quando l'IA deve accedere a un account di terze parti, può mostrare nella conversazione una scheda come **Collega Slack**. Fai clic su **Collega** per autorizzare tramite OAuth. Fai clic su **Ignora** per annullare l'autorizzazione; l'IA continua con le parti che può completare senza tale connessione. +- **I miei segreti**: apri **+** → **Altro** → **I miei segreti** per salvare chiavi API o altre credenziali in **Impostazioni** → **Integrazioni**. I valori sono tuoi, AI Chat può leggerli come variabili di ambiente durante l'esecuzione e puoi concederli alle singole app e Automazioni. Vedi [Credenziali e integrazioni](/it/basic/credential). +- **Richieste di credenziali**: quando l'IA ha bisogno di un account di terze parti o di un segreto, fissa nella conversazione una scheda di richiesta. Scegli **Collega il mio account** per avviare un flusso OAuth oppure concedi una credenziale che possiedi già. Con **Salta** non la fornisci e l'IA continua con le parti che può completare senza di essa. +- **Scraper**: apri il menu **+**, scegli **Scraper** e seleziona una piattaforma e un tipo di dato, ad esempio **profilo personale** su LinkedIn o **recensioni del prodotto** su Amazon. Teable precompila l'istruzione corrispondente nell'input della chat, che completi con un link o una parola chiave. **Qualsiasi pagina web** accetta direttamente un link incollato. - **Skill**: apri il menu **+** e scegli **Skill** per importare, abilitare, disabilitare o provare le skill nella chat corrente. Durante l'importazione, scegli chi può utilizzarla: **Personale** la mantiene soltanto per te, **Base** la rende disponibile ai collaboratori della Base e **Spazio** a tutti gli utenti dello Spazio. Digita `/` nella casella di input per scegliere una skill abilitata. Per collegare o migrare un sistema esterno, consulta [Collega e migra tutto](/it/basic/ai/connect-everything). - **Utilizzo del contesto**: l'anello accanto alla casella di input mostra la quantità della finestra di contesto del modello attualmente utilizzata dalla conversazione. Fai clic su di esso per visualizzare la percentuale e il numero di token. Quando il contesto si riempie, Teable compatta la conversazione; avvia una nuova chat se desideri invece un contesto vuoto. - **Gestisci file**: apri **+** → **Altro** → **Gestisci file** per visualizzare i file nella sandbox della chat corrente. Puoi visualizzare in anteprima i file supportati, scaricarli oppure eliminare file e cartelle non più necessari. Prima di poter gestire i file deve esistere una conversazione. @@ -283,6 +284,6 @@ Apri **+** → **Altro** → **Gestisci artefatti** per sfogliare tutto ciò che - Usa **+** → **Segreti** nell'input della chat. AI Chat può utilizzare tali valori durante la conversazione senza inserire il testo normale nel prompt. + Usa **+** → **Altro** → **I miei segreti** nell'input della chat. AI Chat può utilizzare tali valori durante la conversazione senza inserire il testo normale nel prompt. diff --git a/it/basic/ai/app-builder.mdx b/it/basic/ai/app-builder.mdx index f87e09af..3edaf43c 100644 --- a/it/basic/ai/app-builder.mdx +++ b/it/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ Puoi aggiornare il codice dell'app importando un file ZIP: - Il file ZIP sostituisce il progetto esistente. I file omessi vengono rimossi dalla nuova versione. - Se il file ZIP contiene un'unica cartella contenitore, Teable la rimuove. Puoi comprimere direttamente la cartella principale del progetto. - Il progetto importato deve includere `package.json` nella radice del progetto. -- Un file `.env` nella radice del file ZIP viene importato nei **Segreti** dell'app. Le altre varianti `.env*`, come `.env.local`, vengono ignorate. +- Le variabili personalizzate di un file `.env` nella radice del file ZIP vengono salvate come tuoi segreti e concesse all'app con gli stessi nomi. Le altre varianti `.env*`, come `.env.local`, vengono ignorate. -#### Segreti +#### Credenziali e configurazione -Usa **Segreti** per le chiavi API, le credenziali e i valori di configurazione necessari all'app durante l'esecuzione. Nel pannello della chat di App Builder, apri il menu **+** e scegli **Segreti**. +Non scrivere chiavi API, credenziali e valori di configurazione nel codice sorgente. Un'app usa **le tue credenziali**: una connessione OAuth o un segreto che salvi. Nel pannello di chat dell'App Builder apri **+** → **Altro** → **Credenziali e configurazione** e concedi una credenziale all'app. | Dettaglio | Comportamento | | --- | --- | -| Disponibilità | I Segreti dell'app sono disponibili nell'ambiente di anteprima e nell'app pubblicata | -| Accesso dal codice | Il codice lato server dell'app può leggerli da variabili di ambiente come `process.env.MY_API_KEY` | -| Valori salvati | Dopo il salvataggio, i valori dei Segreti sono di sola scrittura; inserisci un nuovo valore per aggiornarne uno | -| Formato del nome | Il **Nome** deve iniziare con una lettera maiuscola e può contenere lettere maiuscole, cifre e trattini bassi | +| Disponibilità | Le credenziali concesse all'app sono disponibili nell'ambiente di anteprima e nell'app pubblicata | +| Nome della variabile | L'alias che inserisci al momento della concessione; inizia con una lettera maiuscola e accetta solo lettere maiuscole, cifre e trattini bassi | +| Leggere un segreto | Il codice lato server legge variabili di ambiente come `process.env.MY_API_KEY` | +| Leggere una connessione | Il codice lato server chiama `getConnectionToken('ALIAS')` per ottenere un token di accesso | +| Valori salvati | Dopo il salvataggio i valori sono di sola scrittura; inserisci un nuovo valore per sostituirne uno | -Dopo aver aggiunto, eliminato o modificato il valore di un Segreto, l'ambiente di anteprima dell'app utilizza il nuovo valore. L'app pubblicata lo utilizza soltanto dopo una nuova pubblicazione. La sola modifica della descrizione di un Segreto non richiede una nuova pubblicazione. +Dopo aver aggiunto o rimosso una concessione, oppure sostituito il valore di una credenziale, l'ambiente di anteprima dell'app usa il nuovo valore. L'app pubblicata lo usa solo dopo una nuova pubblicazione. + +La copia di un'app non copia le sue credenziali: nel pannello restano segnaposto **Non associato** e con **Associa la mia** inserisci la tua. Per la gestione delle credenziali e per sapere dove sono usate, vedi [Credenziali e integrazioni](/it/basic/credential). #### Gestire i file dell'app @@ -162,7 +165,7 @@ Teable non esegue mai il force push del ramo. Quando le cronologie divergono, co ### Variabili di ambiente e sviluppo locale -Il repository contiene soltanto il codice sorgente. Teable non invia mai file il cui nome inizia con `.env`: né nella radice del progetto, né in una sottocartella, né nella cronologia dei commit. I valori di ambiente risiedono nei **Segreti** dell'app e non entrano mai in git. Il file `.gitignore` del repository elenca già `.env*`, pertanto un clone locale non ne eseguirà accidentalmente il commit. +Il repository contiene soltanto il codice sorgente. Teable non invia mai file il cui nome inizia con `.env`: né nella radice del progetto, né in una sottocartella, né nella cronologia dei commit. I valori di ambiente provengono dalle credenziali concesse all'app, risiedono in **Credenziali e configurazione** e non entrano mai in git. Il file `.gitignore` del repository elenca già `.env*`, pertanto un clone locale non ne eseguirà accidentalmente il commit. Per eseguire l'app sul tuo computer: @@ -172,13 +175,13 @@ Per eseguire l'app sul tuo computer: Esegui `pnpm dev`. -Il contenuto copiato corrisponde a ciò che l'app riceve nella sandbox di Teable: i tuoi Segreti e le variabili inserite dalla piattaforma per l'endpoint API, il token di accesso e l'accesso IA dell'app. +Il contenuto copiato corrisponde a ciò che l'app riceve nella sandbox di Teable: le credenziali concesse all'app e le variabili inserite dalla piattaforma per l'endpoint API, il token di accesso e l'accesso IA dell'app. La riga `TEABLE_APP_TOKEN` in tale file concede l'accesso ai dati dell'app; per questo motivo soltanto i membri con accesso in modifica all'app possono copiarla. Non eseguire mai il commit del file e non incollarlo mai in un problema o in una pull request. -Per aggiungere o modificare un segreto, modifica **Segreti** in Teable anziché il file locale. Un file `.env` sottoposto a commit su GitHub non crea né aggiorna un Segreto. Dopo aver modificato un segreto, copia nuovamente le variabili per aggiornare il file `.env` locale. +Per aggiungere o sostituire una credenziale, usa **Credenziali e configurazione** in Teable anziché il file locale. Un file `.env` sottoposto a commit su GitHub non crea né aggiorna una credenziale. Dopo aver modificato una credenziale, copia nuovamente le variabili per aggiornare il file `.env` locale. ### Scollegare il repository @@ -290,7 +293,7 @@ Per schemi di prompt, suggerimenti per la creazione, consigli sul ripristino e r - Passa alla scheda **Codice** nell'editor, fai clic sul menu **`...`** nella barra delle schede, quindi scegli **Scarica codice** o **Importa codice**. I file ZIP importati possono avere dimensioni massime di 20 MB e sostituiscono il progetto esistente, quindi includi tutti i file sorgente da conservare. Il progetto importato deve includere un file `package.json` nella radice. Un file `.env` nella radice viene importato nei **Segreti** dell'app. + Passa alla scheda **Codice** nell'editor, fai clic sul menu **`...`** nella barra delle schede, quindi scegli **Scarica codice** o **Importa codice**. I file ZIP importati possono avere dimensioni massime di 20 MB e sostituiscono il progetto esistente, quindi includi tutti i file sorgente da conservare. Il progetto importato deve includere un file `package.json` nella radice. Le variabili personalizzate di un file `.env` nella radice vengono salvate come tuoi segreti e concesse all'app con gli stessi nomi. diff --git a/it/basic/automation.mdx b/it/basic/automation.mdx index f61188dc..f792e226 100644 --- a/it/basic/automation.mdx +++ b/it/basic/automation.mdx @@ -39,11 +39,13 @@ Puoi anche creare Automazioni un passaggio alla volta utilizzando le azioni inte Le modifiche vengono salvate come bozza. Il flusso di lavoro attivo continua a essere eseguito nella versione precedente finché non fai clic su **Applica aggiornamento**. -## Segreti +## Credenziali e configurazione -Usa **Segreti** per archiviare le chiavi API, le credenziali e la configurazione necessarie a un'Automazione durante l'esecuzione. Apri il flusso di lavoro nella scheda di modifica, quindi fai clic su **Segreti** accanto ai controlli di test. +Un'Automazione chiama i servizi esterni con le tue credenziali: una connessione OAuth o un segreto che salvi. Apri il flusso di lavoro nella scheda di modifica, fai clic su **Credenziali e configurazione** accanto ai controlli di test, concedi una credenziale a questa Automazione e assegnale un **Nome della variabile**. -I segreti sono limitati all'Automazione corrente. Le azioni script possono leggerli da variabili di ambiente come `process.env.EXTERNAL_API_KEY`. I valori salvati sono di sola scrittura; inserisci un nuovo valore per aggiornare un segreto. +Le azioni script leggono quel nome da una variabile di ambiente come `process.env.EXTERNAL_API_KEY`; nelle altre azioni, **Inserisci segreto** accanto a un campo di input aggiunge un riferimento. I valori non vengono mai mostrati in chiaro e i risultati dei test li mascherano. + +Le credenziali si gestiscono in **Impostazioni** → **Integrazioni**; vedi [Credenziali e integrazioni](/it/basic/credential). ## Cronologia delle esecuzioni diff --git a/it/basic/credential.mdx b/it/basic/credential.mdx new file mode 100644 index 00000000..80d618ff --- /dev/null +++ b/it/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Credenziali e integrazioni +description: Gestisci le tue connessioni e i tuoi segreti e concedili alle app e alle Automazioni che ne hanno bisogno. +--- + +Disponibile in tutti i piani Cloud; Self-hosted richiede il piano Business o superiore. + +Quando un'app o un'Automazione chiama un servizio esterno, usa **le tue credenziali**. Le credenziali appartengono a te, non all'app o all'Automazione, e sono di due tipi: + +- **Connessioni**: account di terze parti che autorizzi su Teable tramite OAuth, come Google, Slack o Feishu. +- **Segreti**: stringhe che salvi tu, come una chiave API o un token di accesso. + +Le credenziali si gestiscono in **Impostazioni** → **Integrazioni** e da lì si concedono alle singole app e Automazioni. Dopo la concessione, chiunque esegua quell'app o quell'Automazione usa le credenziali di chi le ha concesse. Il valore non viene mostrato a nessuno e i risultati dei test di un'Automazione lo mascherano. + +## Gestire connessioni e segreti + +Fai clic sul tuo avatar in basso a sinistra e apri **Impostazioni** → **Integrazioni**. La pagina ha tre sezioni: **Le mie connessioni**, **I miei segreti** e **App di terze parti che hai autorizzato**. + +**Aggiungi segreto** richiede: + +| Campo | Descrizione | +| --- | --- | +| **Chiave** | Inizia con una lettera maiuscola; solo lettere maiuscole, cifre e trattini bassi | +| **Valore** | Di sola scrittura dopo il salvataggio; inserisci un nuovo valore per sostituirlo | +| **Descrizione** | Facoltativa, per annotare a cosa serve il segreto | + +Le connessioni si aggiungono con **Connetti nuovo account**. Quando un'autorizzazione scade, la connessione propone **Ricollega**. + +Ogni credenziale indica da quante risorse è usata al momento. **Visualizza** apre l'elenco di app e Automazioni, dove puoi **Rimuovere l'autorizzazione** a una singola voce. + +## Concedere una credenziale a un'app o a un'Automazione + +Apri il pannello delle credenziali della risorsa: + +- **App**: nel pannello di chat dell'App Builder apri **+** → **Altro** → **Credenziali e configurazione**. +- **Automazioni**: apri il flusso di lavoro e fai clic su **Credenziali e configurazione** nella scheda **Modifica**. + +**Concedi** offre tre strade: **Concedi un segreto esistente** sceglie uno dei tuoi segreti o una delle tue connessioni; **Aggiungi segreto** ne crea uno e lo concede subito; oppure scegli un servizio dall'elenco **Servizi**, che avvia un flusso OAuth per un servizio non ancora collegato e concede direttamente quello contrassegnato come **Connesso**. + +Ogni concessione richiede un **Nome della variabile**, l'alias con cui la credenziale è nota all'interno di quell'app o Automazione. Segue le stesse regole di denominazione della chiave di un segreto ed è il nome che legge il codice. + +Il pannello può mostrare anche segnaposto **Non associato**. La copia di un'app, la duplicazione di un flusso di lavoro e l'importazione o duplicazione di un database portano con sé gli alias attesi dal codice, ma nessuna credenziale. Con **Associa la mia** fornisci la tua, così l'app o l'Automazione può funzionare. + +Quando un alias contiene la credenziale di un'altra persona, **Sostituisci con il mio** la rileva. **Rimuovi solo l'autorizzazione (mantieni segnaposto)** scioglie il collegamento e lascia il segnaposto, quindi il codice resta invariato. + +Per modificare le concessioni di una risorsa serve l'autorizzazione di modifica su quell'app o Automazione. Puoi concedere solo credenziali tue. + +## Leggere una credenziale nel codice + +| Dove | Come leggerla | +| --- | --- | +| Azioni script di un'Automazione | Una variabile di ambiente, come `process.env.EXTERNAL_API_KEY` | +| Campi di input di un'Automazione | Fai clic su **Inserisci segreto** accanto al campo e scegli un segreto concesso | +| Segreti in un'app | Il codice lato server legge `process.env.MY_API_KEY` | +| Connessioni in un'app | Il codice lato server chiama `getConnectionToken('ALIAS')` per ottenere un token di accesso | + +Se incolli in un campo di un'Automazione qualcosa che somiglia a una chiave, Teable lo salva come tuo segreto e lascia un riferimento al suo posto, così il testo in chiaro non finisce nella configurazione del flusso di lavoro. Se preferisci mantenere il testo così com'è, fai clic su **Annulla** nell'avviso. + +## Richieste di credenziali in AI Chat + +Quando l'IA ha bisogno di un account esterno, fissa nella conversazione una scheda di richiesta che indica per quale servizio vuole una connessione o per quale alias vuole un segreto. Puoi: + +- **Collega il mio account**: avviare un flusso OAuth; la nuova connessione viene concessa automaticamente alla risorsa. +- **Concedi il mio…**: usare una connessione o un segreto che possiedi già. +- **Salta**: non fornire la credenziale. L'IA prosegue con le parti che non ne dipendono. + +## Sostituzione, eliminazione e uscita da uno spazio + +Prima che tu sostituisca il valore di un segreto, elimini un segreto o disconnetta una connessione, Teable elenca le app e le Automazioni che la usano ancora. L'eliminazione e la disconnessione le bloccano immediatamente: se devono continuare a funzionare, concedi loro prima un'altra credenziale. Il vecchio valore di un segreto non è recuperabile. + +Una volta salvato il nuovo valore, un'Automazione lo usa alla prossima esecuzione; un'app lo usa al riavvio del suo ambiente di anteprima e un'app pubblicata solo dopo una nuova pubblicazione. + +Se lasci uno spazio in cui un'app o un'Automazione usa ancora le tue credenziali, la pagina **Integrazioni** lo segnala con **Hai lasciato questo spazio**. Fai clic su **Rimuovi autorizzazione** per smettere di fornirle. diff --git a/ja/basic/ai/ai-chat.mdx b/ja/basic/ai/ai-chat.mdx index 96cc26f3..8f36404b 100644 --- a/ja/basic/ai/ai-chat.mdx +++ b/ja/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ AIは、現在のページにある情報を優先します。 - **音声入力**:入力ボックスのマイクボタンをクリックし、マイクへのアクセスを許可して録音を開始します。録音中は、**音声入力を完了**または**音声入力を破棄**を選択できます。完了を選択すると、Teableが録音を文字に起こして入力ボックスへ入力します。 - **モデル**:モデルメニューで会話に使用するモデルを選択します。単純なクエリ、データ整理、文章の書き換えには軽量モデルを使用し、複雑な計画、テーブル横断分析、アプリ構築には高性能モデルを使用します。 - **インテリジェンス**:モデルメニューで**インテリジェンス**レベルを個別に選択します。これは思考の深さを制御し、レベルが高いほど、より詳細な推論が行われます。 -- **シークレット**:**+**メニューを開き、**シークレット**を選択して、AIチャットで使用するAPIキーやその他の認証情報を保存します。AIチャットは、これらの値を環境変数として読み取れます。保存した値は書き込み専用です。シークレットを更新するには新しい値を入力します。 -- **連携**:AIがサードパーティーアカウントへのアクセスを必要とする場合、会話内に**Slackへ接続**などのカードが表示されます。**接続**をクリックしてOAuth認証を行います。認証をキャンセルするには**スキップ**をクリックします。AIは、その接続なしで完了できる処理を続行します。 +- **自分のシークレット**:**+** → **もっと** → **自分のシークレット**を開き、**設定** → **統合**でAPIキーやその他の認証情報を保存します。これらの値は個人に属し、AIチャットは実行時に環境変数として読み取れます。個々のアプリやオートメーションへ付与することもできます。詳しくは[認証情報と連携](/ja/basic/credential)を参照してください。 +- **認証情報のリクエスト**:AIがサードパーティーアカウントやシークレットを必要とする場合、認証情報リクエストのカードが会話に固定されます。**自分のアカウントを接続**でOAuthを実行するか、すでに持っている認証情報を付与します。**スキップ**を選ぶと認証情報は渡されず、AIはそれなしで完了できる処理を続行します。 +- **Webスクレイパー**:**+**メニューを開いて**Webスクレイパー**を選択し、プラットフォームとデータの種類(LinkedInの**個人プロフィール**、Amazonの**商品レビュー**など)を選びます。対応する抽出の指示がチャット入力欄へ自動で入力されるので、リンクやキーワードを補います。**任意のWebページ**を選べば、リンクを貼り付けるだけで抽出できます。 - **Skill**: **+**メニューを開き、**Skill**を選択して、現在のチャットでSkillをインポート、有効化、無効化、試用します。インポート時に利用者を選びます。**個人**は自分だけ、**ベース**はこのベースのコラボレーター、**スペース**はこのスペースの全員が利用できます。入力ボックスに`/`と入力すると、有効なSkillを選択できます。外部システムへの接続または移行については、[あらゆるデータへ接続・移行](/ja/basic/ai/connect-everything)をご覧ください。 - **コンテキスト使用量**:入力ボックスの横にあるリングは、会話が現在使用しているモデルのコンテキストウィンドウの量を示します。クリックすると、割合とトークン数を確認できます。コンテキストがいっぱいになると、Teableは会話を圧縮します。新しいコンテキストから始める場合は、新しいチャットを開始してください。 - **ファイルを管理**:**+** → **その他** → **ファイルを管理**を開くと、現在のチャットのサンドボックス内にあるファイルを表示できます。対応ファイルのプレビュー、ファイルのダウンロード、不要になったファイルやフォルダーの削除が可能です。ファイルを管理するには、会話が存在している必要があります。 @@ -283,6 +284,6 @@ AIがグラフ、レポート、ダッシュボード形式のページ、小規 - チャット入力欄の**+** → **シークレット**を使用します。AIチャットは、平文をプロンプトへ含めずに、会話中にそれらの値を使用できます。 + チャット入力欄の**+** → **もっと** → **自分のシークレット**を使用します。AIチャットは、平文をプロンプトへ含めずに、会話中にそれらの値を使用できます。 diff --git a/ja/basic/ai/app-builder.mdx b/ja/basic/ai/app-builder.mdx index ed9e3eed..37d22df5 100644 --- a/ja/basic/ai/app-builder.mdx +++ b/ja/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ ZIPをインポートして、アプリのコードを更新できます。 - ZIPは既存のプロジェクトを置き換えます。含めなかったファイルは新しいバージョンから削除されます。 - ZIPにラッパーフォルダーが1つ含まれている場合、Teableはそのフォルダーを取り除きます。最上位のプロジェクトフォルダーをそのまま圧縮できます。 - インポートするプロジェクトには、プロジェクトのルートに`package.json`が必要です。 -- ZIP内のルートの`.env`ファイルは、アプリの**シークレット**へ読み込まれます。その他の`.env*`形式(`.env.local`など)は無視されます。 +- ZIP内のルートにある`.env`ファイルのカスタム変数は、あなたのシークレットとして保存され、同じ名前でアプリへ付与されます。その他の`.env*`形式(`.env.local`など)は無視されます。 -#### シークレット +#### 認証情報と設定 -実行中のアプリで必要なAPIキー、認証情報、設定値には、**シークレット**を使用します。App Builderのチャットパネルで**+**メニューを開き、**シークレット**を選択します。 +APIキー、認証情報、アプリの実行に必要な設定値は、ソースコードへ直接書かないでください。アプリが使うのは**あなたの認証情報**、つまりOAuthの接続か、あなたが保存したシークレットです。App Builderのチャットパネルで**+** → **もっと** → **認証情報と設定**を開き、認証情報をアプリへ付与します。 -| 詳細 | 動作 | +| 項目 | 動作 | | --- | --- | -| 利用範囲 | アプリのシークレットは、アプリのプレビュー環境と公開済みアプリで利用できます | -| コードからのアクセス | サーバーサイドのアプリコードは、`process.env.MY_API_KEY`などの環境変数から読み取れます | -| 保存済みの値 | 保存後のシークレット値は書き込み専用です。更新するには、新しい値を入力します | -| 名前の形式 | **名前**は大文字で始める必要があり、大文字、数字、アンダースコアを使用できます | +| 適用範囲 | アプリへ付与した認証情報は、プレビュー環境と公開済みアプリの両方で使えます | +| 変数名 | 付与時に入力するエイリアス。先頭は大文字で、大文字、数字、アンダースコアのみ使用できます | +| シークレットの読み取り | サーバーサイドのコードが`process.env.MY_API_KEY`などの環境変数から読み取ります | +| 接続の読み取り | サーバーサイドのコードが`getConnectionToken('ALIAS')`を呼び出してアクセストークンを取得します | +| 保存した値 | 保存後は書き込み専用です。置き換えるには新しい値を入力します | -シークレット値を追加、削除、変更すると、アプリのプレビュー環境では新しい値が使用されます。公開済みアプリでは、再公開した後にのみ使用されます。シークレットの説明だけを編集した場合、再公開は不要です。 +付与の追加や解除、認証情報の値の変更を行うと、アプリのプレビュー環境は新しい値を使います。公開済みのアプリは、再公開後に新しい値を使います。 + +アプリをコピーしても認証情報はコピーされません。パネルには**未バインド**のプレースホルダーが残るため、**自分のをバインド**で自分の認証情報を割り当てます。認証情報の管理と使用状況については、[認証情報と連携](/ja/basic/credential)を参照してください。 #### アプリファイルを管理する @@ -162,7 +165,7 @@ Teableがブランチを強制プッシュすることはありません。履 ### 環境変数とローカル開発 -リポジトリにはソースだけが保存されます。Teableは、プロジェクトのルート、サブフォルダー、コミット履歴のいずれにある場合でも、名前が`.env`で始まるファイルを決してプッシュしません。環境変数の値はアプリの**シークレット**に保存され、gitへ追加されることはありません。リポジトリの`.gitignore`にはすでに`.env*`が記載されているため、ローカルのクローンから誤ってコミットされることもありません。 +リポジトリにはソースだけが保存されます。Teableは、プロジェクトのルート、サブフォルダー、コミット履歴のいずれにある場合でも、名前が`.env`で始まるファイルを決してプッシュしません。環境変数の値はアプリへ付与された認証情報に由来し、**認証情報と設定**に保存され、gitへ追加されることはありません。リポジトリの`.gitignore`にはすでに`.env*`が記載されているため、ローカルのクローンから誤ってコミットされることもありません。 自分のコンピューターでアプリを実行するには、次の手順を行います。 @@ -172,13 +175,13 @@ Teableがブランチを強制プッシュすることはありません。履 `pnpm dev`を実行します。 -コピーされる内容は、Teable独自のサンドボックスでアプリが受け取る内容と同じです。シークレットに加え、アプリのAPIエンドポイント、アクセストークン、AIアクセス用としてプラットフォームから注入される変数が含まれます。 +コピーされる内容は、Teable独自のサンドボックスでアプリが受け取る内容と同じです。アプリへ付与された認証情報に加え、アプリのAPIエンドポイント、アクセストークン、AIアクセス用としてプラットフォームから注入される変数が含まれます。 そのファイル内の`TEABLE_APP_TOKEN`行はアプリのデータへのアクセス権を付与します。そのため、アプリの編集権限を持つメンバーだけがコピーできます。ファイルをコミットしたり、課題やプルリクエストへ貼り付けたりしないでください。 -シークレットを追加または変更するには、ローカルファイルではなく、Teableの**シークレット**を編集します。GitHubへコミットした`.env`からシークレットが作成または更新されることはありません。シークレットを変更した後は、変数をもう一度コピーして、ローカルの`.env`を更新します。 +認証情報を追加または変更するには、ローカルファイルではなく、Teableの**認証情報と設定**で操作します。GitHubへコミットした`.env`から認証情報が作成または更新されることはありません。認証情報を変更した後は、変数をもう一度コピーして、ローカルの`.env`を更新します。 ### リポジトリのリンクを解除する @@ -290,7 +293,7 @@ Teableは、すべてのデプロイを自動的に追跡します。 - エディターの**コード**タブへ切り替え、タブバーの**`...`**メニューをクリックして、**コードをダウンロード**または**コードをインポート**を選択します。インポートするZIPファイルは最大20MBで、既存のプロジェクトを置き換えます。保持するすべてのソースファイルを含めてください。インポートするプロジェクトには、ルートの`package.json`が必要です。ルートの`.env`ファイルは、アプリの**シークレット**へインポートされます。 + エディターの**コード**タブへ切り替え、タブバーの**`...`**メニューをクリックして、**コードをダウンロード**または**コードをインポート**を選択します。インポートするZIPファイルは最大20MBで、既存のプロジェクトを置き換えます。保持するすべてのソースファイルを含めてください。インポートするプロジェクトには、ルートの`package.json`が必要です。ルートにある`.env`ファイルのカスタム変数は、あなたのシークレットとして保存され、同じ名前でアプリへ付与されます。 diff --git a/ja/basic/automation.mdx b/ja/basic/automation.mdx index da9e295a..b9dd6c2d 100644 --- a/ja/basic/automation.mdx +++ b/ja/basic/automation.mdx @@ -39,11 +39,13 @@ AIがトリガー、アクション、フィールドのマッピングを含む 変更は下書きとして保存されます。**更新を適用**をクリックするまで、稼働中のワークフローは以前のバージョンで動作し続けます。 -## シークレット +## 認証情報と設定 -実行時にオートメーションで必要なAPIキー、認証情報、設定を保存するには、**シークレット**を使用します。編集タブでワークフローを開き、テストコントロールの横にある**シークレット**をクリックします。 +オートメーションが外部サービスを呼び出すときに使うのは、あなたの認証情報、つまりOAuthの接続か、あなたが保存したシークレットです。編集タブでワークフローを開き、テストコントロールの横にある**認証情報と設定**をクリックして、このオートメーションへ認証情報を付与し、**変数名**を付けます。 -シークレットのスコープは現在のオートメーションです。スクリプトアクションでは、`process.env.EXTERNAL_API_KEY`などの環境変数から読み取れます。保存した値は書き込み専用です。シークレットを更新するには新しい値を入力します。 +スクリプトアクションは、その名前を`process.env.EXTERNAL_API_KEY`などの環境変数から読み取ります。ほかのアクションでは、入力欄の横の**シークレットを挿入**から参照を挿入できます。値が平文で表示されることはなく、テスト結果でもマスクされます。 + +認証情報そのものは**設定** → **統合**で管理します。詳しくは[認証情報と連携](/ja/basic/credential)を参照してください。 ## 実行履歴 diff --git a/ja/basic/credential.mdx b/ja/basic/credential.mdx new file mode 100644 index 00000000..c7dc868d --- /dev/null +++ b/ja/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: 認証情報と連携 +description: 自分の接続とシークレットを管理し、必要なアプリやオートメーションへ付与します。 +--- + +すべてのCloudプランで利用できます。セルフホストではBusinessプラン以上が必要です。 + +アプリやオートメーションが外部サービスを呼び出すときに使うのは、**あなたの認証情報**です。認証情報はアプリやオートメーションではなく個人に属し、次の2種類があります。 + +- **接続**:OAuthでTeableに許可したサードパーティーのアカウント。Google、Slack、Feishuなど。 +- **シークレット**:自分で保存する文字列。APIキーやアクセストークンなど。 + +認証情報は**設定** → **統合**でまとめて管理し、そこから個々のアプリやオートメーションへ付与します。付与したあとは、そのアプリやオートメーションを実行する全員が、付与した人の認証情報を使います。値は誰にも表示されず、オートメーションのテスト結果でもマスクされます。 + +## 接続とシークレットを管理する + +左下のアバターをクリックし、**設定** → **統合**を開きます。ページは**自分の接続**、**自分のシークレット**、**許可したサードパーティアプリ**の3つに分かれています。 + +**シークレットを追加**では次の項目を入力します。 + +| 項目 | 説明 | +| --- | --- | +| **Key** | 先頭は大文字。大文字、数字、アンダースコアのみ使用できます | +| **値** | 保存後は書き込み専用です。置き換えるには新しい値を入力します | +| **説明** | 任意。そのシークレットの用途を書き留めます | + +接続は**新しいアカウントを接続**から追加します。認可の期限が切れた接続には**再接続**が表示されます。 + +各認証情報には、現在いくつのリソースで使われているかが表示されます。**表示**をクリックするとアプリとオートメーションの一覧が開き、個別に**認可を解除**できます。 + +## アプリやオートメーションへ付与する + +リソースの認証情報パネルを開きます。 + +- **アプリ**:App Builderのチャットパネルで**+** → **もっと** → **認証情報と設定**。 +- **オートメーション**:ワークフローを開き、**編集**タブで**認証情報と設定**をクリック。 + +**付与**には3つの方法があります。**既存のシークレットを付与**は自分のシークレットや接続から選びます。**シークレットを追加**はその場で作成してすぐ付与します。**サービス**の一覧から選ぶこともでき、未接続のサービスはOAuthに進み、**接続済み**と表示されているサービスはそのまま付与されます。 + +付与には**変数名**が必要です。これはそのアプリやオートメーション内での認証情報のエイリアスで、命名規則はシークレットのKeyと同じです。コードが読み取るのもこの名前です。 + +パネルには**未バインド**のプレースホルダーが並ぶこともあります。アプリのコピー、ワークフローの複製、ベースのインポートや複製では、コードが必要とするエイリアスだけが引き継がれ、認証情報は引き継がれません。**自分のをバインド**で自分の認証情報を割り当てると、アプリやオートメーションが動くようになります。 + +エイリアスに他の人の認証情報がバインドされている場合は、**自分のに置き換え**で引き継げます。**付与のみ解除(プレースホルダーを残す)**を選ぶとバインドだけが外れ、プレースホルダーは残るため、コードの変更は不要です。 + +リソースの付与を変更するには、そのアプリやオートメーションの編集権限が必要です。付与できるのは自分の認証情報だけです。 + +## コードから読み取る + +| 場所 | 読み取り方 | +| --- | --- | +| オートメーションのスクリプト | `process.env.EXTERNAL_API_KEY`などの環境変数 | +| オートメーションの入力欄 | 欄の横の**シークレットを挿入**をクリックし、付与済みのシークレットを選択 | +| アプリ内のシークレット | サーバーサイドのコードで`process.env.MY_API_KEY`を読み取り | +| アプリ内の接続 | サーバーサイドのコードで`getConnectionToken('ALIAS')`を呼び出してアクセストークンを取得 | + +オートメーションの入力欄にキーらしき文字列を貼り付けると、Teableはそれを自分のシークレットとして保存し、その場には参照だけを残します。平文がワークフローの設定に残ることはありません。貼り付けたままにしたい場合は、通知の**元に戻す**をクリックします。 + +## AIチャットでの認証情報リクエスト + +AIが外部アカウントを必要とする場合、どのサービスの接続か、どのエイリアスのシークレットかを示す認証情報リクエストのカードが会話に固定されます。選択肢は次のとおりです。 + +- **自分のアカウントを接続**:OAuthを実行します。新しい接続はそのリソースへ自動的に付与されます。 +- **自分の…を付与**:すでに持っている接続やシークレットを使います。 +- **スキップ**:認証情報を渡しません。AIはそれに依存しない部分の処理を続けます。 + +## 値の変更、削除、スペースからの退出 + +シークレットの値を変更する、シークレットを削除する、接続を解除する前に、Teableはそれをまだ使っているアプリとオートメーションを一覧表示します。削除と接続解除を実行すると、それらのリソースはすぐに動かなくなります。動かし続けたい場合は、先にリソース側で別の認証情報に切り替えてください。以前のシークレットの値は復元できません。 + +新しい値を保存すると、オートメーションは次回の実行から新しい値を使います。アプリはプレビュー環境の再起動後、公開済みのアプリは再公開後に反映されます。 + +スペースから退出したあとも、そこのアプリやオートメーションがあなたの認証情報を使っている場合、**統合**ページに**このスペースから退出済み**と表示されます。提供をやめるには**認可を解除**をクリックします。 diff --git a/ru/basic/ai/ai-chat.mdx b/ru/basic/ai/ai-chat.mdx index 217d5571..8f63a0e5 100644 --- a/ru/basic/ai/ai-chat.mdx +++ b/ru/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ description: Взаимодействуйте с данными на естес - **Голосовой ввод**: нажмите кнопку микрофона в поле ввода и разрешите доступ к микрофону, чтобы начать запись. Во время записи выберите **Завершить голосовой ввод** или **Отменить голосовой ввод**. После завершения Teable преобразует запись в текст в поле ввода. - **Модель**: используйте меню модели, чтобы выбрать модель для беседы. Выбирайте более легкую модель для простых запросов, очистки или переписывания, а более мощную — для сложного планирования, анализа нескольких таблиц и создания приложений. - **Интеллект**: отдельно выберите уровень **Интеллекта** в меню модели. Он управляет глубиной рассуждений; более высокие уровни дают более тщательное обоснование. -- **Секреты**: откройте меню **+** и выберите **Секреты**, чтобы сохранить API-ключи или другие учетные данные для ИИ-чата. ИИ-чат может читать эти значения как переменные окружения. Сохраненные значения доступны только для записи; введите новое значение, чтобы обновить секрет. -- **Интеграции**: когда ИИ требуется доступ к сторонней учетной записи, он может показать в беседе карточку, например **Подключить Slack**. Нажмите **Подключить**, чтобы авторизоваться через OAuth. Нажмите **Пропустить**, чтобы отменить авторизацию; ИИ продолжит работу с теми частями, которые может выполнить без этого подключения. +- **Мои секреты**: откройте **+** → **Больше** → **Мои секреты**, чтобы сохранить API-ключи или другие учётные данные в разделе **Настройки** → **Интеграции**. Эти значения принадлежат вам, ИИ-чат читает их во время работы как переменные окружения, и вы можете выдавать их отдельным приложениям и автоматизациям. См. [Учётные данные и интеграции](/ru/basic/credential). +- **Запросы учётных данных**: когда ИИ нужна сторонняя учётная запись или секрет, он закрепляет в беседе карточку запроса. Выберите **Подключить мой аккаунт**, чтобы пройти OAuth, либо выдайте уже имеющиеся учётные данные. Кнопка **Пропустить** оставляет их при вас, и ИИ продолжает с тем, что может выполнить без них. +- **Скрейпер**: откройте меню **+**, выберите **Скрейпер**, затем платформу и тип данных, например **личный профиль** в LinkedIn или **отзывы о товаре** на Amazon. Teable подставит в поле ввода готовую инструкцию, которую вы дополните ссылкой или ключевым словом. Пункт **Любая веб-страница** принимает вставленную ссылку напрямую. - **Навыки**: откройте меню **+** и выберите **Навыки**, чтобы импортировать, включать, отключать или пробовать навыки в текущем чате. При импорте выберите, кто сможет его использовать: **Личный** оставляет его только вам, **База** предоставляет его соавторам в этой базе, а **Пространство** — всем в этом пространстве. Введите `/` в поле ввода, чтобы выбрать включенный навык. Сведения о подключении или миграции внешней системы см. в разделе [Подключайте и переносите всё](/ru/basic/ai/connect-everything). - **Использование контекста**: кольцо рядом с полем ввода показывает, какую часть контекстного окна модели сейчас использует беседа. Нажмите его, чтобы увидеть процент и количество токенов. Когда контекст заполняется, Teable сжимает беседу; если нужен чистый контекст, начните новый чат. - **Управление файлами**: откройте **+** → **Ещё** → **Управление файлами**, чтобы просмотреть файлы в изолированной среде текущего чата. Можно просматривать поддерживаемые файлы, скачивать их или удалять ненужные файлы и папки. Для управления файлами беседа уже должна существовать. @@ -283,7 +284,7 @@ Cuppy, пожалуйста, прочитай память для Базы с ID - Используйте **+** → **Секреты** в поле ввода чата. ИИ-чат может использовать эти значения во время беседы, не помещая открытый текст в ваш запрос. + Используйте **+** → **Больше** → **Мои секреты** в поле ввода чата. ИИ-чат может использовать эти значения во время беседы, не помещая открытый текст в ваш запрос. diff --git a/ru/basic/ai/app-builder.mdx b/ru/basic/ai/app-builder.mdx index 17f9aaae..8631da9d 100644 --- a/ru/basic/ai/app-builder.mdx +++ b/ru/basic/ai/app-builder.mdx @@ -94,21 +94,24 @@ description: Превращайте свои данные в пользоват - ZIP-архив заменяет существующий проект. Файлы, которые вы не включите, будут удалены из новой версии. - Если ZIP-архив содержит одну внешнюю папку-обёртку, Teable удаляет эту папку. Можно сжать непосредственно самую внешнюю папку проекта. - Импортируемый проект должен содержать `package.json` в корне проекта. -- Корневой файл `.env` в ZIP-архиве считывается в **Секреты** приложения. Другие варианты `.env*`, например `.env.local`, игнорируются. +- Пользовательские переменные из корневого файла `.env` в ZIP-архиве сохраняются как ваши секреты и выдаются приложению под теми же именами. Другие варианты `.env*`, например `.env.local`, игнорируются. -#### Секреты +#### Учётные данные и конфигурация -Используйте **Секреты** для ключей API, учётных данных и значений конфигурации, необходимых приложению во время работы. В панели чата Конструктора приложений откройте меню **+** и выберите **Секреты**. +Не записывайте ключи API, учётные данные и значения конфигурации в исходный код. Приложение использует **ваши учётные данные**: подключение OAuth или сохранённый вами секрет. В панели чата Конструктора приложений откройте **+** → **Больше** → **Учётные данные и конфигурация** и выдайте приложению учётные данные. -| Сведения | Поведение | +| Параметр | Поведение | | --- | --- | -| Доступность | Секреты приложения доступны в среде предварительного просмотра и опубликованном приложении | -| Доступ из кода | Серверный код приложения может считывать их из переменных среды, например `process.env.MY_API_KEY` | -| Сохранённые значения | После сохранения значения секретов доступны только для записи; чтобы обновить значение, введите новое | -| Формат имени | **Имя** должно начинаться с прописной буквы и может содержать прописные буквы, цифры и символы подчёркивания | +| Доступность | Учётные данные, выданные приложению, доступны в среде предварительного просмотра и в опубликованном приложении | +| Имя переменной | Псевдоним, который вы указываете при выдаче: начинается с заглавной буквы, допускает только заглавные буквы, цифры и подчёркивания | +| Чтение секрета | Серверный код приложения читает переменные окружения, например `process.env.MY_API_KEY` | +| Чтение подключения | Серверный код приложения вызывает `getConnectionToken('ALIAS')` и получает токен доступа | +| Сохранённые значения | После сохранения значения доступны только для записи; чтобы заменить, введите новое | -После добавления, удаления или изменения значения Секрета среда предварительного просмотра приложения использует новое значение. Опубликованное приложение начнёт использовать его только после повторной публикации. Редактирование только описания Секрета не требует повторной публикации. +После добавления или отзыва выдачи либо замены значения среда предварительного просмотра приложения использует новое значение. Опубликованное приложение начнёт использовать его только после повторной публикации. + +При копировании приложения его учётные данные не копируются: в панели остаются заглушки **Не привязано**, а кнопка **Привязать мои** подставляет ваши. Об управлении учётными данными и о том, где они используются, см. [Учётные данные и интеграции](/ru/basic/credential). #### Управление файлами приложения @@ -171,7 +174,7 @@ Teable никогда не выполняет принудительную от ### Переменные среды и локальная разработка -В репозитории хранится только исходный код. Teable никогда не отправляет файл, имя которого начинается с `.env`: ни в корне проекта, ни во вложенной папке, ни в истории коммитов. Значения среды находятся в **Секретах** приложения и никогда не попадают в git. В `.gitignore` репозитория уже указан `.env*`, поэтому локальный клон не зафиксирует такой файл случайно. +В репозитории хранится только исходный код. Teable никогда не отправляет файл, имя которого начинается с `.env`: ни в корне проекта, ни во вложенной папке, ни в истории коммитов. Значения среды берутся из учётных данных, выданных приложению, хранятся в разделе **Учётные данные и конфигурация** и никогда не попадают в git. В `.gitignore` репозитория уже указан `.env*`, поэтому локальный клон не зафиксирует такой файл случайно. Чтобы запустить приложение на своём компьютере: @@ -181,13 +184,13 @@ Teable никогда не выполняет принудительную от Выполните `pnpm dev`. -Скопированное содержимое соответствует тому, что приложение получает в собственной песочнице Teable: ваши Секреты и переменные, которые платформа добавляет для API-эндпоинта приложения, токена доступа и доступа к ИИ. +Скопированное содержимое соответствует тому, что приложение получает в собственной песочнице Teable: учётные данные, выданные приложению, и переменные, которые платформа добавляет для API-эндпоинта приложения, токена доступа и доступа к ИИ. Строка `TEABLE_APP_TOKEN` в этом файле предоставляет доступ к данным приложения, поэтому скопировать её могут только участники с доступом на редактирование приложения. Никогда не фиксируйте этот файл и не вставляйте его в задачу или запрос на слияние. -Чтобы добавить или изменить секрет, редактируйте **Секреты** в Teable, а не локальный файл. Файл `.env`, зафиксированный в GitHub, не создаёт и не обновляет Секрет. После изменения секрета снова скопируйте переменные, чтобы обновить локальный `.env`. +Чтобы добавить или заменить учётные данные, используйте раздел **Учётные данные и конфигурация** в Teable, а не локальный файл. Файл `.env`, зафиксированный в GitHub, не создаёт и не обновляет учётные данные. После изменения снова скопируйте переменные, чтобы обновить локальный `.env`. ### Отвязка репозитория @@ -306,7 +309,7 @@ Teable автоматически отслеживает каждое развё - Перейдите на вкладку **Код** в редакторе, нажмите меню **`...`** на панели вкладок, затем выберите **Скачать код** или **Импортировать код**. Импортируемые ZIP-файлы могут иметь размер до 20 МБ и заменяют существующий проект, поэтому включайте все исходные файлы, которые хотите сохранить. Импортируемый проект должен содержать корневой `package.json`. Корневой файл `.env` импортируется в **Секреты** приложения. + Перейдите на вкладку **Код** в редакторе, нажмите меню **`...`** на панели вкладок, затем выберите **Скачать код** или **Импортировать код**. Импортируемые ZIP-файлы могут иметь размер до 20 МБ и заменяют существующий проект, поэтому включайте все исходные файлы, которые хотите сохранить. Импортируемый проект должен содержать корневой `package.json`. Пользовательские переменные из корневого файла `.env` сохраняются как ваши секреты и выдаются приложению под теми же именами. diff --git a/ru/basic/automation.mdx b/ru/basic/automation.mdx index 6d060792..e687141a 100644 --- a/ru/basic/automation.mdx +++ b/ru/basic/automation.mdx @@ -39,11 +39,13 @@ description: "Создавайте рабочие процессы автома Изменения сохраняются как черновик. Активный рабочий процесс продолжает работать в предыдущей версии, пока вы не нажмёте **Применить обновление**. -## Секреты +## Учётные данные и конфигурация -Используйте **Секреты** для хранения ключей API, учётных данных и конфигурации, которые нужны автоматизации во время выполнения. Откройте рабочий процесс на вкладке редактирования, затем нажмите **Секреты** рядом с элементами управления тестированием. +Автоматизация обращается к внешним сервисам с вашими учётными данными: подключением OAuth или сохранённым вами секретом. Откройте рабочий процесс на вкладке редактирования, нажмите **Учётные данные и конфигурация** рядом с элементами управления тестированием, выдайте этой автоматизации учётные данные и задайте **Имя переменной**. -Секреты ограничены текущей автоматизацией. Действия скрипта могут считывать их из переменных среды, например `process.env.EXTERNAL_API_KEY`. Сохранённые значения доступны только для записи; введите новое значение, чтобы обновить секрет. +Действия скрипта читают это имя из переменной окружения, например `process.env.EXTERNAL_API_KEY`; в остальных действиях кнопка **Вставить секрет** рядом с полем ввода добавляет ссылку. Значения никогда не показываются в открытом виде, а в результатах тестирования они скрыты. + +Сами учётные данные хранятся в разделе **Настройки** → **Интеграции**, см. [Учётные данные и интеграции](/ru/basic/credential). ## История запусков diff --git a/ru/basic/credential.mdx b/ru/basic/credential.mdx new file mode 100644 index 00000000..66cad63f --- /dev/null +++ b/ru/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Учётные данные и интеграции +description: Управляйте своими подключениями и секретами и выдавайте их приложениям и автоматизациям. +--- + +Доступно во всех тарифах Cloud; для Self-Hosted требуется тариф Business или выше. + +Когда приложение или автоматизация обращается к внешнему сервису, она использует **ваши учётные данные**. Они принадлежат вам, а не приложению или автоматизации, и бывают двух видов: + +- **Подключения** — сторонние аккаунты, доступ к которым вы выдали Teable через OAuth: Google, Slack, Feishu и другие. +- **Секреты** — строки, которые вы сохраняете сами: ключ API, токен доступа и тому подобное. + +Учётные данные хранятся в разделе **Настройки** → **Интеграции**, оттуда вы выдаёте их отдельным приложениям и автоматизациям. После выдачи все, кто запускает это приложение или автоматизацию, используют учётные данные того, кто их выдал. Значение никому не показывается, а в результатах тестирования автоматизации оно скрыто. + +## Управление подключениями и секретами + +Нажмите на аватар в левом нижнем углу и откройте **Настройки** → **Интеграции**. Страница состоит из трёх разделов: **Мои подключения**, **Мои секреты** и **Сторонние приложения, которым вы дали доступ**. + +При выборе **Добавить секрет** нужно заполнить: + +| Поле | Описание | +| --- | --- | +| **Key** | Начинается с заглавной буквы; только заглавные буквы, цифры и подчёркивания | +| **Значение** | После сохранения доступно только для записи; чтобы заменить, введите новое | +| **Описание** | Необязательное, чтобы отметить назначение секрета | + +Подключение добавляется кнопкой **Подключить новый аккаунт**. Когда авторизация истекает, у подключения появляется **Переподключить**. + +Для каждой записи показано, сколько ресурсов её сейчас используют. По кнопке **Посмотреть** открывается список приложений и автоматизаций, где для любого из них можно **Отозвать доступ**. + +## Выдача учётных данных приложению или автоматизации + +Откройте панель учётных данных ресурса: + +- **Приложения** — в панели чата App Builder: **+** → **Больше** → **Учётные данные и конфигурация**. +- **Автоматизации** — откройте рабочий процесс и нажмите **Учётные данные и конфигурация** на вкладке **Редактирование**. + +Кнопка **Выдать** предлагает три пути: **Выдать существующий секрет** — выбрать один из ваших секретов или подключений; **Добавить секрет** — создать новый и сразу выдать его; либо выбрать сервис в списке **Сервисы**: для неподключённого сервиса откроется OAuth, а сервис с отметкой **Подключено** выдаётся сразу. + +Для каждой выдачи нужно **Имя переменной** — псевдоним, под которым эти учётные данные известны внутри приложения или автоматизации. Правила именования те же, что и для ключа секрета, и именно это имя читает код. + +В панели могут быть заглушки **Не привязано**. При копировании приложения, дублировании рабочего процесса, импорте или дублировании базы переносятся псевдонимы, которые ожидает код, но не сами учётные данные. Нажмите **Привязать мои**, чтобы подставить свои и приложение или автоматизация заработали. + +Если за псевдонимом стоят чужие учётные данные, кнопка **Заменить моим** переводит его на ваши. **Только отозвать доступ (оставить заглушку)** снимает привязку и сохраняет заглушку, так что менять код не придётся. + +Чтобы менять выдачи ресурса, нужны права на редактирование этого приложения или автоматизации. Выдавать можно только свои учётные данные. + +## Чтение учётных данных в коде + +| Где | Как читать | +| --- | --- | +| Скриптовые действия автоматизации | Переменная окружения, например `process.env.EXTERNAL_API_KEY` | +| Поля ввода автоматизации | Нажмите **Вставить секрет** рядом с полем и выберите выданный секрет | +| Секреты в приложении | Серверный код читает `process.env.MY_API_KEY` | +| Подключения в приложении | Серверный код вызывает `getConnectionToken('ALIAS')` и получает токен доступа | + +Если вставить в поле автоматизации строку, похожую на ключ, Teable сохранит её как ваш секрет и оставит на месте ссылку, поэтому открытый текст не попадёт в конфигурацию рабочего процесса. Чтобы оставить текст как есть, нажмите **Отменить** в уведомлении. + +## Запросы учётных данных в ИИ-чате + +Когда ИИ нужен внешний аккаунт, он закрепляет в беседе карточку запроса и указывает, для какого сервиса нужно подключение или под каким псевдонимом нужен секрет. Варианты: + +- **Подключить мой аккаунт** — пройти OAuth; новое подключение выдаётся ресурсу автоматически. +- **Выдать мой…** — использовать уже имеющееся подключение или секрет. +- **Пропустить** — не предоставлять учётные данные. ИИ продолжит с тем, что не зависит от них. + +## Замена, удаление и выход из пространства + +Перед заменой значения секрета, удалением секрета или отключением подключения Teable перечислит приложения и автоматизации, которые их ещё используют. После удаления и отключения эти ресурсы сразу перестают работать, поэтому сначала выдайте им другие учётные данные, если они должны продолжать работу. Прежнее значение секрета восстановить нельзя. + +После сохранения нового значения автоматизация возьмёт его при следующем запуске, приложение — после перезапуска среды предпросмотра, а опубликованное приложение — только после повторной публикации. + +Если вы покинули пространство, где приложение или автоматизация всё ещё использует ваши учётные данные, страница **Интеграции** отметит это надписью **Вы покинули это пространство**. Нажмите **Отозвать доступ**, чтобы перестать их предоставлять. diff --git a/tr/basic/ai/ai-chat.mdx b/tr/basic/ai/ai-chat.mdx index a0f9fe92..4cb83a78 100644 --- a/tr/basic/ai/ai-chat.mdx +++ b/tr/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ Uzun bir düz metin bloğu yapıştırdığınızda Teable, mesaj girişinin kol - **Sesli giriş**: Giriş kutusundaki mikrofon düğmesine tıklayıp kaydı başlatmak için mikrofon erişimine izin verin. Kayıt sırasında **Sesli girişi bitir** veya **Sesli girişi at** seçeneğini belirleyin. Bitirmeyi seçtiğinizde Teable, kaydı metne dönüştürerek giriş kutusuna ekler. - **Model**: Sohbette kullanılacak modeli seçmek için model menüsünü kullanın. Basit sorgular, temizleme veya yeniden yazma için daha hafif; karmaşık planlama, Tablolar arası analiz ve uygulama geliştirme için daha güçlü bir model kullanın. - **Zekâ**: Model menüsünden **Zekâ** düzeyini ayrıca seçin. Bu ayar düşünme derinliğini belirler; daha yüksek düzeyler daha kapsamlı akıl yürütme sağlar. -- **Gizli Bilgiler**: **+** menüsünü açıp API anahtarlarını veya diğer kimlik bilgilerini AI Chat için saklamak üzere **Gizli Bilgiler**'i seçin. AI Chat bu değerleri ortam değişkenleri olarak okuyabilir. Kaydedilen değerler yalnızca yazılabilir; bir gizli bilgiyi güncellemek için yeni bir değer girin. -- **Entegrasyonlar**: AI'ın üçüncü taraf bir hesaba erişmesi gerektiğinde sohbette **Slack'e Bağlan** gibi bir kart gösterebilir. OAuth ile yetkilendirmek için **Bağlan**'a tıklayın. Bu yetkilendirmeyi iptal etmek için **Atla**'ya tıklayın; AI, bu bağlantı olmadan tamamlayabildiği bölümlerle devam eder. +- **Gizli anahtarlarım**: **+** → **Daha Fazla** → **Gizli anahtarlarım** yolunu açıp API anahtarlarını veya diğer kimlik bilgilerini **Ayarlar** → **Entegrasyonlar** bölümüne kaydedin. Bu değerler size aittir, AI Chat bunları çalışma sırasında ortam değişkeni olarak okuyabilir ve tek tek uygulama ve otomasyonlara verebilirsiniz. Bkz. [Kimlik Bilgileri ve Entegrasyonlar](/tr/basic/credential). +- **Kimlik bilgisi istekleri**: AI'ın üçüncü taraf bir hesaba veya bir gizli anahtara ihtiyacı olduğunda sohbete bir kimlik bilgisi isteği kartı sabitlenir. OAuth akışı için **Hesabımı bağla**'yı seçin ya da hâlihazırda sahip olduğunuz bir kimlik bilgisine erişim verin. **Atla**'ya tıklarsanız kimlik bilgisini vermezsiniz; AI, onsuz tamamlayabildiği bölümlerle devam eder. +- **Kazıyıcı**: **+** menüsünü açıp **Kazıyıcı**'yı seçin, ardından bir platform ve veri türü belirleyin; örneğin LinkedIn'de **kişisel profil** veya Amazon'da **ürün yorumları**. Teable ilgili talimatı sohbet girişine önceden doldurur, siz de bir bağlantı ya da anahtar kelimeyle tamamlarsınız. **Herhangi bir web sayfası** seçeneği yapıştırdığınız bağlantıyı doğrudan alır. - **Skill'ler**: Mevcut sohbette Skill'leri içe aktarmak, etkinleştirmek, devre dışı bırakmak veya denemek için **+** menüsünü açıp **Skill'ler**'i seçin. Bir Skill'i içe aktarırken kimlerin kullanabileceğini seçin: **Kişisel** yalnızca sizin kullanımınıza sunar, **Veritabanı** bu Veritabanındaki işbirlikçilerin, **Alan** ise bu Alandaki herkesin kullanımına sunar. Etkin bir Skill'i seçmek için giriş kutusuna `/` yazın. Harici bir sistemi bağlamak veya taşımak için [Her Şeyi Bağlama ve Taşıma](/tr/basic/ai/connect-everything) bölümüne bakın. - **Bağlam kullanımı**: Giriş kutusunun yanındaki halka, sohbetin model bağlam penceresinin ne kadarını kullandığını gösterir. Yüzdeyi ve token sayılarını görmek için halkaya tıklayın. Bağlam dolduğunda Teable sohbeti sıkıştırır; temiz bir bağlam istiyorsanız yeni bir sohbet başlatın. - **Dosyaları yönetme**: Mevcut sohbet korumalı alanındaki dosyaları görüntülemek için **+** → **Diğer** → **Dosyaları yönet** yolunu açın. Desteklenen dosyaları önizleyebilir, dosyaları indirebilir veya artık gerek duymadığınız dosya ve klasörleri silebilirsiniz. Dosyaların yönetilebilmesi için bir sohbetin mevcut olması gerekir. @@ -283,6 +284,6 @@ Sohbetlerinizde oluşturduğunuz tüm yapıtları görüntülemek için **+** - Sohbet girişinde **+** → **Gizli Bilgiler** yolunu kullanın. AI Chat, düz metni isteminize eklemeden bu değerleri sohbet sırasında kullanabilir. + Sohbet girişinde **+** → **Daha Fazla** → **Gizli anahtarlarım** yolunu kullanın. AI Chat, düz metni isteminize eklemeden bu değerleri sohbet sırasında kullanabilir. diff --git a/tr/basic/ai/app-builder.mdx b/tr/basic/ai/app-builder.mdx index dee67eb6..ad9d1470 100644 --- a/tr/basic/ai/app-builder.mdx +++ b/tr/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ Bir ZIP dosyasını içe aktararak uygulamanın kodunu güncelleyebilirsiniz: - ZIP, mevcut projenin yerini alır. Dahil etmediğiniz dosyalar yeni sürümden kaldırılır. - ZIP tek bir kapsayıcı klasör içeriyorsa Teable bu klasörü kaldırır. En dıştaki proje klasörünü doğrudan sıkıştırabilirsiniz. - İçe aktarılan proje, proje kökünde `package.json` dosyasını içermelidir. -- ZIP içindeki kök `.env` dosyası uygulamanın **Gizli Bilgiler** bölümüne alınır. `.env.local` gibi diğer `.env*` çeşitleri yok sayılır. +- ZIP içindeki kök `.env` dosyasında yer alan özel değişkenler sizin gizli anahtarlarınız olarak kaydedilir ve aynı adlarla uygulamaya verilir. `.env.local` gibi diğer `.env*` çeşitleri yok sayılır. -#### Gizli Bilgiler +#### Kimlik Bilgileri ve Yapılandırma -Uygulamanız çalışırken ihtiyaç duyduğu API anahtarları, kimlik bilgileri ve yapılandırma değerleri için **Gizli Bilgiler**'i kullanın. App Builder sohbet panelinde **+** menüsünü açıp **Gizli Bilgiler**'i seçin. +API anahtarlarını, kimlik bilgilerini ve yapılandırma değerlerini kaynak koda yazmayın. Uygulama **sizin kimlik bilgilerinizi** kullanır: bir OAuth bağlantısını ya da kaydettiğiniz bir gizli anahtarı. App Builder sohbet panelinde **+** → **Daha Fazla** → **Kimlik bilgileri ve yapılandırma**'yı açın ve uygulamaya bir kimlik bilgisi verin. | Ayrıntı | Davranış | | --- | --- | -| Kullanılabilirlik | Uygulama Gizli Bilgileri, uygulama önizleme ortamında ve yayımlanan uygulamada kullanılabilir | -| Kod erişimi | Sunucu tarafı uygulama kodu bunları `process.env.MY_API_KEY` gibi ortam değişkenlerinden okuyabilir | -| Kaydedilen değerler | Gizli bilgi değerleri kaydedildikten sonra yalnızca yazılabilir; bir değeri güncellemek için yeni bir değer girin | -| Ad biçimi | **Ad** büyük harfle başlamalıdır ve büyük harf, rakam ve alt çizgi içerebilir | +| Kullanılabilirlik | Uygulamaya verilen kimlik bilgileri hem önizleme ortamında hem de yayımlanmış uygulamada kullanılabilir | +| Değişken adı | Erişim verirken girdiğiniz takma ad; büyük harfle başlar ve yalnızca büyük harf, rakam ve alt çizgi içerir | +| Gizli anahtarı okuma | Sunucu tarafı kod `process.env.MY_API_KEY` gibi ortam değişkenlerini okur | +| Bağlantıyı okuma | Sunucu tarafı kod erişim token'ı için `getConnectionToken('ALIAS')` çağırır | +| Kaydedilen değerler | Kaydedildikten sonra değerler yalnızca yazılabilir; değiştirmek için yeni bir değer girin | -Bir Gizli Bilgi değeri ekledikten, sildikten veya değiştirdikten sonra uygulama önizleme ortamı yeni değeri kullanır. Yayımlanan uygulama bu değeri ancak yeniden yayımladıktan sonra kullanır. Yalnızca bir Gizli Bilgi açıklamasını düzenlemek yeniden yayımlama gerektirmez. +Bir yetki ekledikten, kaldırdıktan veya bir kimlik bilgisinin değerini değiştirdikten sonra uygulamanın önizleme ortamı yeni değeri kullanır. Yayımlanmış uygulama ise ancak yeniden yayımladığınızda kullanır. + +Bir uygulamayı kopyalamak kimlik bilgilerini kopyalamaz: panelde **Henüz bağlanmadı** yer tutucuları kalır, **Benimkini bağla** ile kendi kimlik bilginizi verirsiniz. Kimlik bilgilerinin yönetimi ve nerede kullanıldıkları için bkz. [Kimlik Bilgileri ve Entegrasyonlar](/tr/basic/credential). #### Uygulama Dosyalarını Yönetme @@ -162,7 +165,7 @@ Teable, dalınıza hiçbir zaman zorla gönderim yapmaz. Geçmişler ayrıştı ### Ortam Değişkenleri ve Yerel Geliştirme -Depo yalnızca kaynak kodu barındırır. Teable, adı `.env` ile başlayan hiçbir dosyayı göndermez: proje kökünde, alt klasörlerde veya commit geçmişinde. Ortam değerleri uygulamanın **Gizli Bilgiler** bölümünde tutulur ve git'e hiçbir zaman girmez. Deponun `.gitignore` dosyasında `.env*` zaten yer aldığından yerel bir klon bu dosyalardan birini yanlışlıkla commit etmez. +Depo yalnızca kaynak kodu barındırır. Teable, adı `.env` ile başlayan hiçbir dosyayı göndermez: proje kökünde, alt klasörlerde veya commit geçmişinde. Ortam değerleri uygulamaya verilen kimlik bilgilerinden gelir, **Kimlik bilgileri ve yapılandırma** bölümünde tutulur ve git'e hiçbir zaman girmez. Deponun `.gitignore` dosyasında `.env*` zaten yer aldığından yerel bir klon bu dosyalardan birini yanlışlıkla commit etmez. Uygulamayı kendi bilgisayarınızda çalıştırmak için: @@ -172,13 +175,13 @@ Uygulamayı kendi bilgisayarınızda çalıştırmak için: `pnpm dev` komutunu çalıştırın. -Kopyalanan içerik, uygulamanın Teable'ın kendi korumalı alanında aldığı değerlerle eşleşir: Gizli Bilgileriniz ve platformun uygulamanın API uç noktası, erişim token'ı ve AI erişimi için eklediği değişkenler. +Kopyalanan içerik, uygulamanın Teable'ın kendi korumalı alanında aldığı değerlerle eşleşir: uygulamaya verilen kimlik bilgileri ve platformun uygulamanın API uç noktası, erişim token'ı ve AI erişimi için eklediği değişkenler. Bu dosyadaki `TEABLE_APP_TOKEN` satırı uygulamanın verilerine erişim sağlar; bu nedenle yalnızca uygulamayı düzenleme erişimi olan üyeler bu satırı kopyalayabilir. Dosyayı asla commit etmeyin ve bir issue'ya veya pull request'e hiçbir zaman yapıştırmayın. -Bir gizli bilgi eklemek veya değiştirmek için yerel dosya yerine Teable'daki **Gizli Bilgiler** bölümünü düzenleyin. GitHub'a commit edilen bir `.env` dosyası Gizli Bilgi oluşturmaz veya güncellemez. Bir gizli bilgiyi değiştirdikten sonra yerel `.env` dosyanızı yenilemek için değişkenleri tekrar kopyalayın. +Bir kimlik bilgisi eklemek veya değiştirmek için yerel dosya yerine Teable'daki **Kimlik bilgileri ve yapılandırma** bölümünü kullanın. GitHub'a commit edilen bir `.env` dosyası kimlik bilgisi oluşturmaz veya güncellemez. Bir kimlik bilgisini değiştirdikten sonra yerel `.env` dosyanızı yenilemek için değişkenleri tekrar kopyalayın. ### Deponun Bağlantısını Kaldırma @@ -290,7 +293,7 @@ Bir uygulamayı silmek için üstbilgideki **Ayarlar** (dişli simgesi) düğmes - Düzenleyicide **Kod** sekmesine geçip sekme çubuğundaki **`...`** menüsüne tıklayın, ardından **Kodu indir** veya **Kodu içe aktar** seçeneğini belirleyin. İçe aktarılan ZIP dosyaları en fazla 20 MB olabilir ve mevcut projenin yerini alır; bu nedenle korumak istediğiniz tüm kaynak dosyalarını dahil edin. İçe aktarılan proje kök dizinde `package.json` içermelidir. Kök `.env` dosyası uygulamanın **Gizli Bilgiler** bölümüne aktarılır. + Düzenleyicide **Kod** sekmesine geçip sekme çubuğundaki **`...`** menüsüne tıklayın, ardından **Kodu indir** veya **Kodu içe aktar** seçeneğini belirleyin. İçe aktarılan ZIP dosyaları en fazla 20 MB olabilir ve mevcut projenin yerini alır; bu nedenle korumak istediğiniz tüm kaynak dosyalarını dahil edin. İçe aktarılan proje kök dizinde `package.json` içermelidir. Kök `.env` dosyasındaki özel değişkenler sizin gizli anahtarlarınız olarak kaydedilir ve aynı adlarla uygulamaya verilir. diff --git a/tr/basic/automation.mdx b/tr/basic/automation.mdx index 91e91de7..2ec591af 100644 --- a/tr/basic/automation.mdx +++ b/tr/basic/automation.mdx @@ -39,11 +39,13 @@ Yerleşik eylemleri kullanarak otomasyonları adım adım da oluşturabilirsiniz Değişiklikler taslak olarak kaydedilir. Siz **Güncellemeyi Uygula**'ya tıklayana kadar etkin iş akışı önceki sürümle çalışmayı sürdürür. -## Gizli anahtarlar +## Kimlik Bilgileri ve Yapılandırma -Bir otomasyonun çalışma zamanında ihtiyaç duyduğu API anahtarlarını, kimlik bilgilerini ve yapılandırmayı saklamak için **Gizli Anahtarlar**'ı kullanın. İş akışını düzenleme sekmesinde açın, ardından test denetimlerinin yanındaki **Gizli Anahtarlar**'a tıklayın. +Bir otomasyon dış servisleri sizin kimlik bilgilerinizle çağırır: bir OAuth bağlantısı ya da kaydettiğiniz bir gizli anahtar. İş akışını düzenleme sekmesinde açın, test denetimlerinin yanındaki **Kimlik bilgileri ve yapılandırma**'ya tıklayın, bu otomasyona bir kimlik bilgisi verin ve ona bir **Değişken adı** verin. -Gizli anahtarların kapsamı geçerli otomasyonla sınırlıdır. Komut dosyası eylemleri bunları `process.env.EXTERNAL_API_KEY` gibi ortam değişkenlerinden okuyabilir. Kaydedilen değerler yalnızca yazılabilir; bir gizli anahtarı güncellemek için yeni bir değer girin. +Komut dosyası eylemleri bu adı `process.env.EXTERNAL_API_KEY` gibi bir ortam değişkeninden okur; diğer eylemlerde bir giriş alanının yanındaki **Gizli anahtar yerleştir** ile referans eklersiniz. Değerler hiçbir zaman düz metin olarak gösterilmez, test sonuçlarında da maskelenir. + +Kimlik bilgilerinin kendisi **Ayarlar** → **Entegrasyonlar** bölümünde yönetilir; bkz. [Kimlik Bilgileri ve Entegrasyonlar](/tr/basic/credential). ## Çalıştırma geçmişi diff --git a/tr/basic/credential.mdx b/tr/basic/credential.mdx new file mode 100644 index 00000000..735acb4c --- /dev/null +++ b/tr/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Kimlik Bilgileri ve Entegrasyonlar +description: Bağlantılarınızı ve gizli anahtarlarınızı yönetin, ihtiyaç duyan uygulama ve otomasyonlara erişim verin. +--- + +Tüm Bulut planlarında kullanılabilir; kendi sunucunuzda barındırılan sürüm için Business veya üzeri gerekir. + +Bir uygulama veya otomasyon dış bir servisi çağırdığında **sizin kimlik bilgilerinizi** kullanır. Kimlik bilgileri uygulamaya veya otomasyona değil size aittir ve iki türdedir: + +- **Bağlantılar**: OAuth ile Teable'a yetki verdiğiniz üçüncü taraf hesaplar; Google, Slack, Feishu gibi. +- **Gizli anahtarlar**: kendi kaydettiğiniz dizeler; API anahtarı, erişim token'ı gibi. + +Kimlik bilgileri **Ayarlar** → **Entegrasyonlar** bölümünde yönetilir ve oradan tek tek uygulama ve otomasyonlara verilir. Erişim verildikten sonra o uygulamayı veya otomasyonu çalıştıran herkes, erişimi veren kişinin kimlik bilgisini kullanır. Değer kimseye gösterilmez, otomasyon test sonuçlarında da maskelenir. + +## Bağlantılarınızı ve gizli anahtarlarınızı yönetme + +Sol alttaki avatarınıza tıklayıp **Ayarlar** → **Entegrasyonlar** bölümünü açın. Sayfa üç bölümden oluşur: **Bağlantılarım**, **Gizli anahtarlarım** ve **Yetki verdiğiniz üçüncü taraf uygulamalar**. + +**Gizli anahtar ekle** şunları ister: + +| Alan | Açıklama | +| --- | --- | +| **Key** | Büyük harfle başlar; yalnızca büyük harf, rakam ve alt çizgi | +| **Değer** | Kaydedildikten sonra yalnızca yazılabilir; değiştirmek için yeni bir değer girin | +| **Açıklama** | İsteğe bağlı; gizli anahtarın ne işe yaradığını not etmek için | + +Bağlantılar **Yeni hesap bağla** ile eklenir. Bir yetkilendirme sona erdiğinde ilgili bağlantıda **Yeniden bağla** görünür. + +Her kimlik bilgisinin altında şu anda kaç kaynağın onu kullandığı yazar. **Görüntüle**, uygulama ve otomasyonların listesini açar; buradan tek bir kayıt için **Yetkiyi kaldır** diyebilirsiniz. + +## Bir uygulamaya veya otomasyona erişim verme + +Kaynağın kimlik bilgisi panelini açın: + +- **Uygulamalar**: App Builder sohbet panelinde **+** → **Daha Fazla** → **Kimlik bilgileri ve yapılandırma**. +- **Otomasyonlar**: iş akışını açın ve **Düzenle** sekmesinde **Kimlik bilgileri ve yapılandırma**'ya tıklayın. + +**Erişim ver** üç yol sunar: **Mevcut gizli anahtara erişim ver** kendi gizli anahtarlarınızdan veya bağlantılarınızdan birini seçer; **Gizli anahtar ekle** yeni bir tane oluşturup hemen erişim verir; ya da **Hizmetler** listesinden bir üçüncü taraf hizmet seçersiniz: bağlanmadığınız bir hizmette OAuth akışı başlar, **Bağlı** işaretli olan doğrudan verilir. + +Her erişim için bir **Değişken adı** gerekir; bu, kimlik bilgisinin o uygulama veya otomasyon içindeki takma adıdır. Adlandırma kuralları gizli anahtar Key'iyle aynıdır ve kodun okuduğu ad budur. + +Panelde **Henüz bağlanmadı** yer tutucuları da görünebilir. Uygulama kopyalama, iş akışı çoğaltma, veritabanı içe aktarma veya çoğaltma işlemlerinde kodun beklediği takma adlar taşınır, kimlik bilgileri taşınmaz. **Benimkini bağla** ile kendi kimlik bilginizi verirsiniz ve uygulama ya da otomasyon çalışır hale gelir. + +Bir takma ad şu anda başkasının kimlik bilgisini tutuyorsa **Benimkiyle değiştir** ile devralabilirsiniz. **Yalnızca yetkiyi kaldır (yer tutucuyu koru)** yalnızca bağı çözer, yer tutucu kalır ve kodda değişiklik gerekmez. + +Bir kaynağın yetkilerini değiştirmek için o uygulama veya otomasyon üzerinde düzenleme izniniz olmalıdır. Yalnızca kendi kimlik bilgilerinize erişim verebilirsiniz. + +## Kimlik bilgisini kodda okuma + +| Nerede | Nasıl okunur | +| --- | --- | +| Otomasyon komut dosyaları | `process.env.EXTERNAL_API_KEY` gibi bir ortam değişkeni | +| Otomasyon giriş alanları | Alanın yanındaki **Gizli anahtar yerleştir**'e tıklayıp erişim verilmiş bir gizli anahtar seçin | +| Uygulamadaki gizli anahtarlar | Sunucu tarafı kod `process.env.MY_API_KEY` değerini okur | +| Uygulamadaki bağlantılar | Sunucu tarafı kod erişim token'ı için `getConnectionToken('ALIAS')` çağırır | + +Bir otomasyon giriş alanına anahtara benzeyen bir değer yapıştırdığınızda Teable bunu sizin gizli anahtarınız olarak kaydeder ve yerinde bir referans bırakır; böylece düz metin iş akışı yapılandırmasına girmez. Metnin olduğu gibi kalmasını isterseniz bildirimdeki **Geri al**'a tıklayın. + +## AI Chat'te kimlik bilgisi istekleri + +AI'ın bir dış hesaba ihtiyacı olduğunda, hangi hizmet için bağlantı ya da hangi takma ad için gizli anahtar istediğini belirten bir kimlik bilgisi isteği kartını sohbete sabitler. Seçenekleriniz: + +- **Hesabımı bağla**: OAuth akışını çalıştırır; yeni bağlantı kaynağa otomatik olarak verilir. +- **… erişimi ver**: hâlihazırda sahip olduğunuz bir bağlantıyı veya gizli anahtarı kullanır. +- **Atla**: kimlik bilgisini vermezsiniz. AI, buna bağlı olmayan bölümlerle devam eder. + +## Değiştirme, silme ve alandan ayrılma + +Bir gizli anahtarın değerini değiştirmeden, bir gizli anahtarı silmeden veya bir bağlantıyı kesmeden önce Teable onu hâlâ kullanan uygulama ve otomasyonları listeler. Silme ve bağlantı kesme bu kaynakları anında durdurur; çalışmaya devam etmeleri gerekiyorsa önce onlara başka bir kimlik bilgisi verin. Eski gizli anahtar değeri geri getirilemez. + +Yeni değer kaydedildikten sonra otomasyon bir sonraki çalıştırmasında, uygulama önizleme ortamı yeniden başladığında, yayımlanmış uygulama ise ancak yeniden yayımladığınızda yeni değeri kullanır. + +Uygulamanın veya otomasyonun hâlâ kimlik bilginizi kullandığı bir alandan ayrıldığınızda **Entegrasyonlar** sayfası bunu **Bu alandan ayrıldınız** notuyla belirtir. Sağlamayı durdurmak için **Yetkiyi kaldır**'a tıklayın. diff --git a/uk/basic/ai/ai-chat.mdx b/uk/basic/ai/ai-chat.mdx index 71d331e6..1f1ab4b2 100644 --- a/uk/basic/ai/ai-chat.mdx +++ b/uk/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ AI Chat допомагає аналізувати поточну Таблицю, - **Голосове введення**: натисніть кнопку мікрофона в полі введення та надайте доступ до мікрофона, щоб розпочати запис. Під час запису виберіть **Завершити голосове введення** або **Відхилити голосове введення**. Після завершення Teable транскрибує запис у поле введення. - **Модель**: у меню моделей виберіть модель для розмови. Використовуйте легшу модель для простих запитів, очищення або переписування, а потужнішу — для складного планування, аналізу кількох Таблиць і створення застосунків. - **Інтелект**: окремо виберіть рівень **Інтелект** у меню моделей. Він визначає глибину міркування; вищі рівні забезпечують докладніший аналіз. -- **Секрети**: відкрийте меню **+** і виберіть **Секрети**, щоб зберігати ключі API або інші облікові дані для AI Chat. AI Chat може читати ці значення як змінні середовища. Збережені значення доступні лише для запису; щоб оновити секрет, введіть нове значення. -- **Інтеграції**: коли ШІ потрібен доступ до стороннього облікового запису, у розмові може з’явитися картка на кшталт **Підключити Slack**. Натисніть **Підключити**, щоб авторизуватися через OAuth. Натисніть **Пропустити**, щоб скасувати авторизацію; ШІ продовжить виконувати частини завдання, для яких це підключення не потрібне. +- **Мої секрети**: відкрийте **+** → **Більше** → **Мої секрети**, щоб зберегти ключі API або інші облікові дані в розділі **Налаштування** → **Інтеграції**. Ці значення належать вам, AI Chat читає їх під час роботи як змінні середовища, і ви можете надавати їх окремим застосункам та автоматизаціям. Див. [Облікові дані та інтеграції](/uk/basic/credential). +- **Запити облікових даних**: коли ШІ потрібен сторонній обліковий запис або секрет, у розмові закріплюється картка запиту. Виберіть **Підключити мій обліковий запис**, щоб пройти OAuth, або надайте наявні облікові дані. Кнопка **Пропустити** лишає їх при вас, і ШІ продовжує з тим, що не залежить від них. +- **Скрейпер**: відкрийте меню **+**, виберіть **Скрейпер**, а потім платформу й тип даних, наприклад **особистий профіль** у LinkedIn або **відгуки про товар** на Amazon. Teable підставить у поле введення готову інструкцію, яку ви доповните посиланням або ключовим словом. Пункт **Будь-яка вебсторінка** приймає вставлене посилання напряму. - **Навички**: відкрийте меню **+** і виберіть **Навички**, щоб імпортувати, увімкнути, вимкнути або випробувати навички в поточному чаті. Під час імпорту виберіть, хто може використовувати навичку: **Особиста** доступна лише вам, **База** — співавторам у цій Базі, а **Простір** — усім у цьому Просторі. Введіть `/` у полі введення, щоб вибрати ввімкнену навичку. Щоб підключити або перенести зовнішню систему, див. розділ [Підключення та перенесення будь-яких даних](/uk/basic/ai/connect-everything). - **Використання контексту**: кільце поруч із полем введення показує, яку частину контекстного вікна моделі зараз використовує розмова. Натисніть його, щоб переглянути відсоток і кількість токенів. Коли контекст заповнюється, Teable стискає розмову; почніть новий чат, якщо потрібен чистий контекст. - **Керування файлами**: відкрийте **+** → **Більше** → **Керування файлами**, щоб переглянути файли в пісочниці поточного чату. Можна попередньо переглядати підтримувані файли, завантажувати їх або видаляти непотрібні файли й папки. Для керування файлами має існувати розмова. @@ -283,6 +284,6 @@ AI Chat може підтримувати середовище однієї ро - Скористайтеся **+** → **Секрети** в полі введення чату. AI Chat може використовувати ці значення під час розмови, не додаючи відкритий текст до вашого запиту. + Скористайтеся **+** → **Більше** → **Мої секрети** в полі введення чату. AI Chat може використовувати ці значення під час розмови, не додаючи відкритий текст до вашого запиту. diff --git a/uk/basic/ai/app-builder.mdx b/uk/basic/ai/app-builder.mdx index 6409ea6f..fd19f3a4 100644 --- a/uk/basic/ai/app-builder.mdx +++ b/uk/basic/ai/app-builder.mdx @@ -85,21 +85,24 @@ App Builder має подвійний інтерфейс для користув - ZIP-архів замінює наявний проєкт. Файли, яких немає в архіві, буде видалено з нової версії. - Якщо ZIP-архів містить одну спільну зовнішню папку, Teable вилучає цей рівень. Можна стискати безпосередньо найвищу папку проєкту. - Імпортований проєкт має містити `package.json` у корені проєкту. -- Файл `.env` у корені ZIP-архіву імпортується до розділу **Секрети** застосунку. Інші варіанти `.env*`, наприклад `.env.local`, ігноруються. +- Власні змінні з файлу `.env` у корені ZIP-архіву зберігаються як ваші секрети й надаються застосунку під тими самими назвами. Інші варіанти `.env*`, наприклад `.env.local`, ігноруються. -#### Секрети +#### Облікові дані та конфігурація -Використовуйте **Секрети** для ключів API, облікових даних і параметрів конфігурації, потрібних застосунку під час роботи. У панелі чату App Builder відкрийте меню **+** і виберіть **Секрети**. +Не записуйте ключі API, облікові дані та значення конфігурації у вихідний код. Застосунок використовує **ваші облікові дані**: підключення OAuth або збережений вами секрет. У панелі чату App Builder відкрийте **+** → **Більше** → **Облікові дані та конфігурація** і надайте застосунку облікові дані. -| Відомості | Поведінка | +| Деталь | Поведінка | | --- | --- | -| Доступність | Секрети застосунку доступні в середовищі попереднього перегляду та в опублікованому застосунку | -| Доступ із коду | Серверний код застосунку може читати їх зі змінних середовища, наприклад `process.env.MY_API_KEY` | -| Збережені значення | Після збереження значення секретів доступні лише для запису; щоб оновити секрет, введіть нове значення | -| Формат назви | **Назва** має починатися з великої літери й може містити великі літери, цифри та символи підкреслення | +| Доступність | Облікові дані, надані застосунку, доступні в середовищі попереднього перегляду та в опублікованому застосунку | +| Назва змінної | Псевдонім, який ви вводите під час надання: починається з великої літери й допускає лише великі літери, цифри та підкреслення | +| Читання секрету | Серверний код застосунку читає змінні середовища, наприклад `process.env.MY_API_KEY` | +| Читання підключення | Серверний код застосунку викликає `getConnectionToken('ALIAS')` і отримує токен доступу | +| Збережені значення | Після збереження значення доступні лише для запису; щоб замінити, введіть нове | -Після додавання, видалення або зміни значення Секрету середовище попереднього перегляду застосунку використовує нове значення. Опублікований застосунок почне використовувати його лише після повторної публікації. Якщо змінено тільки опис Секрету, повторна публікація не потрібна. +Після додавання чи відкликання доступу або заміни значення середовище попереднього перегляду застосунку використовує нове значення. Опублікований застосунок почне використовувати його лише після повторної публікації. + +Копіювання застосунку не копіює його облікових даних: у панелі лишаються заглушки **Не привʼязано**, а кнопка **Привʼязати мої** підставляє ваші. Про керування обліковими даними та місця їх використання див. [Облікові дані та інтеграції](/uk/basic/credential). #### Керування файлами застосунку @@ -162,7 +165,7 @@ Teable ніколи не виконує примусове надсилання ### Змінні середовища та локальна розробка -Репозиторій містить лише вихідний код. Teable ніколи не надсилає файли, назви яких починаються з `.env`: ані в корені проєкту, ані у вкладеній папці, ані в історії комітів. Значення середовища зберігаються в розділі **Секрети** застосунку й ніколи не потрапляють до git. У файлі `.gitignore` репозиторію вже вказано `.env*`, тому локальний клон не закомітить такий файл випадково. +Репозиторій містить лише вихідний код. Teable ніколи не надсилає файли, назви яких починаються з `.env`: ані в корені проєкту, ані у вкладеній папці, ані в історії комітів. Значення середовища походять з облікових даних, наданих застосунку, зберігаються в розділі **Облікові дані та конфігурація** й ніколи не потрапляють до git. У файлі `.gitignore` репозиторію вже вказано `.env*`, тому локальний клон не закомітить такий файл випадково. Щоб запустити застосунок на власному комп’ютері: @@ -172,13 +175,13 @@ Teable ніколи не виконує примусове надсилання Виконайте `pnpm dev`. -Скопійований вміст відповідає тому, що застосунок отримує у власній пісочниці Teable: вашим Секретам і змінним, які платформа додає для кінцевої точки API застосунку, токена доступу й доступу до ШІ. +Скопійований вміст відповідає тому, що застосунок отримує у власній пісочниці Teable: наданим застосунку обліковим даним і змінним, які платформа додає для кінцевої точки API застосунку, токена доступу й доступу до ШІ. Рядок `TEABLE_APP_TOKEN` у цьому файлі надає доступ до даних застосунку, тому скопіювати його можуть лише учасники з правом редагування застосунку. Ніколи не додавайте цей файл до коміту й не вставляйте його в проблему або запит на злиття. -Щоб додати або змінити секрет, відредагуйте **Секрети** в Teable, а не локальний файл. Файл `.env`, доданий до GitHub, не створює й не оновлює Секрет. Після зміни секрету скопіюйте змінні ще раз, щоб оновити локальний файл `.env`. +Щоб додати або замінити облікові дані, скористайтеся розділом **Облікові дані та конфігурація** в Teable, а не локальним файлом. Файл `.env`, доданий до GitHub, не створює й не оновлює облікових даних. Після зміни скопіюйте змінні ще раз, щоб оновити локальний файл `.env`. ### Від’єднання репозиторію @@ -290,7 +293,7 @@ Teable автоматично відстежує кожне розгортанн - Перейдіть на вкладку **Код** у редакторі, натисніть меню **`...`** на панелі вкладок, а потім виберіть **Завантажити код** або **Імпортувати код**. Імпортовані ZIP-файли можуть мати розмір до 20 МБ і замінюють наявний проєкт, тому додайте всі вихідні файли, які потрібно зберегти. Імпортований проєкт має містити `package.json` у корені. Файл `.env` у корені імпортується до розділу **Секрети** застосунку. + Перейдіть на вкладку **Код** у редакторі, натисніть меню **`...`** на панелі вкладок, а потім виберіть **Завантажити код** або **Імпортувати код**. Імпортовані ZIP-файли можуть мати розмір до 20 МБ і замінюють наявний проєкт, тому додайте всі вихідні файли, які потрібно зберегти. Імпортований проєкт має містити `package.json` у корені. Власні змінні з файлу `.env` у корені зберігаються як ваші секрети й надаються застосунку під тими самими назвами. diff --git a/uk/basic/automation.mdx b/uk/basic/automation.mdx index d9307892..42a1d416 100644 --- a/uk/basic/automation.mdx +++ b/uk/basic/automation.mdx @@ -39,11 +39,13 @@ description: "Створюйте робочі процеси автоматиз Зміни зберігаються як чернетка. Активний робочий процес продовжує виконувати попередню версію, доки ви не натиснете **Застосувати оновлення**. -## Секрети +## Облікові дані та конфігурація -Використовуйте **Секрети** для зберігання ключів API, облікових даних і конфігурації, потрібних автоматизації під час виконання. Відкрийте робочий процес на вкладці редагування, а потім натисніть **Секрети** біля елементів керування тестуванням. +Автоматизація звертається до зовнішніх сервісів із вашими обліковими даними: підключенням OAuth або збереженим вами секретом. Відкрийте робочий процес на вкладці редагування, натисніть **Облікові дані та конфігурація** біля елементів керування тестуванням, надайте цій автоматизації облікові дані й задайте **Назву змінної**. -Секрети діють лише в поточній автоматизації. Дії сценаріїв можуть читати їх зі змінних середовища, наприклад `process.env.EXTERNAL_API_KEY`. Збережені значення доступні лише для запису; щоб оновити секрет, введіть нове значення. +Дії сценаріїв читають цю назву зі змінної середовища, наприклад `process.env.EXTERNAL_API_KEY`; в інших діях кнопка **Вставити секрет** біля поля введення додає посилання. Значення ніколи не показуються у відкритому вигляді, а в результатах тестування вони приховані. + +Самі облікові дані зберігаються в розділі **Налаштування** → **Інтеграції**, див. [Облікові дані та інтеграції](/uk/basic/credential). ## Історія запусків diff --git a/uk/basic/credential.mdx b/uk/basic/credential.mdx new file mode 100644 index 00000000..2005309e --- /dev/null +++ b/uk/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: Облікові дані та інтеграції +description: Керуйте своїми підключеннями й секретами та надавайте їх застосункам і автоматизаціям. +--- + +Доступно на всіх хмарних тарифних планах; для самостійного розгортання потрібен план Business або вище. + +Коли застосунок або автоматизація звертається до зовнішнього сервісу, вона використовує **ваші облікові дані**. Вони належать вам, а не застосунку чи автоматизації, і бувають двох типів: + +- **Підключення** — сторонні облікові записи, доступ до яких ви надали Teable через OAuth: Google, Slack, Feishu тощо. +- **Секрети** — рядки, які ви зберігаєте самі: ключ API, токен доступу тощо. + +Облікові дані зберігаються в розділі **Налаштування** → **Інтеграції**, звідти ви надаєте їх окремим застосункам і автоматизаціям. Після надання доступу всі, хто запускає цей застосунок чи автоматизацію, використовують облікові дані того, хто їх надав. Значення нікому не показується, а в результатах тестування автоматизації воно приховане. + +## Керування підключеннями та секретами + +Натисніть аватар унизу ліворуч і відкрийте **Налаштування** → **Інтеграції**. Сторінка складається з трьох розділів: **Мої підключення**, **Мої секрети** та **Сторонні додатки, яким ви надали доступ**. + +Кнопка **Додати секрет** запитує: + +| Поле | Опис | +| --- | --- | +| **Key** | Починається з великої літери; лише великі літери, цифри й підкреслення | +| **Значення** | Після збереження доступне лише для запису; щоб замінити, введіть нове | +| **Опис** | Необовʼязковий, щоб зафіксувати призначення секрету | + +Підключення додається кнопкою **Підключити новий обліковий запис**. Коли авторизація втрачає чинність, у підключенні зʼявляється **Підключити знову**. + +Біля кожного запису видно, скільки ресурсів його зараз використовують. Кнопка **Переглянути** відкриває перелік застосунків і автоматизацій, де для будь-якого з них можна **Відкликати доступ**. + +## Надання облікових даних застосунку або автоматизації + +Відкрийте панель облікових даних ресурсу: + +- **Застосунки** — у панелі чату App Builder: **+** → **Більше** → **Облікові дані та конфігурація**. +- **Автоматизації** — відкрийте робочий процес і натисніть **Облікові дані та конфігурація** на вкладці **Редагування**. + +Кнопка **Надати доступ** пропонує три шляхи: **Надати наявний секрет** обирає один з ваших секретів або підключень; **Додати секрет** створює новий і одразу надає його; або оберіть сервіс у списку **Сервіси**: для неповʼязаного сервісу відкриється OAuth, а сервіс із позначкою **Підключено** надається одразу. + +Кожне надання потребує **Назви змінної** — псевдоніма, під яким облікові дані відомі всередині цього застосунку чи автоматизації. Правила найменування такі самі, як для ключа секрету, і саме цю назву читає код. + +У панелі також можуть бути заглушки **Не привʼязано**. Копіювання застосунку, дублювання робочого процесу, імпорт або дублювання бази переносять псевдоніми, яких очікує код, але не самі облікові дані. Натисніть **Привʼязати мої**, щоб підставити власні й застосунок або автоматизація запрацювали. + +Якщо за псевдонімом стоять чужі облікові дані, кнопка **Замінити моїм** переводить його на ваші. **Лише відкликати доступ (залишити заглушку)** знімає привʼязку й лишає заглушку, тож код змінювати не потрібно. + +Щоб змінювати надання ресурсу, потрібне право редагування цього застосунку чи автоматизації. Надавати можна лише власні облікові дані. + +## Читання облікових даних у коді + +| Де | Як прочитати | +| --- | --- | +| Дії сценаріїв автоматизації | Змінна середовища, наприклад `process.env.EXTERNAL_API_KEY` | +| Поля введення автоматизації | Натисніть **Вставити секрет** біля поля й оберіть наданий секрет | +| Секрети в застосунку | Серверний код читає `process.env.MY_API_KEY` | +| Підключення в застосунку | Серверний код викликає `getConnectionToken('ALIAS')` і отримує токен доступу | + +Якщо вставити в поле автоматизації рядок, схожий на ключ, Teable збереже його як ваш секрет і лишить на місці посилання, тож відкритий текст не потрапить до конфігурації робочого процесу. Щоб лишити текст як є, натисніть **Скасувати** в повідомленні. + +## Запити облікових даних в AI Chat + +Коли ШІ потрібен зовнішній обліковий запис, він закріплює в розмові картку запиту й зазначає, для якого сервісу потрібне підключення або під яким псевдонімом потрібен секрет. Варіанти: + +- **Підключити мій обліковий запис** — пройти OAuth; нове підключення надається ресурсу автоматично. +- **Надати мій…** — використати наявне підключення або секрет. +- **Пропустити** — не надавати облікові дані. ШІ продовжить із тим, що від них не залежить. + +## Заміна, видалення та вихід із простору + +Перед заміною значення секрету, видаленням секрету чи відключенням підключення Teable перелічує застосунки й автоматизації, які їх ще використовують. Після видалення та відключення ці ресурси одразу перестають працювати, тож спершу надайте їм інші облікові дані, якщо вони мають працювати далі. Попереднє значення секрету відновити неможливо. + +Після збереження нового значення автоматизація візьме його під час наступного запуску, застосунок — після перезапуску середовища попереднього перегляду, а опублікований застосунок — лише після повторної публікації. + +Якщо ви вийшли з простору, де застосунок або автоматизація досі використовує ваші облікові дані, сторінка **Інтеграції** позначить це написом **Ви вийшли з цього простору**. Натисніть **Відкликати доступ**, щоб припинити їх надавати. diff --git a/zh/basic/ai/ai-chat.mdx b/zh/basic/ai/ai-chat.mdx index 1fd89103..2a65701f 100644 --- a/zh/basic/ai/ai-chat.mdx +++ b/zh/basic/ai/ai-chat.mdx @@ -32,8 +32,9 @@ AI 会优先参考你当前页面中的信息: - **语音输入**:点击输入框中的麦克风按钮,允许使用麦克风后开始录音。录制时可以选择 **结束语音输入** 或 **丢弃本次语音输入**。选择结束后,Teable 会把录音内容转写到输入框中。 - **模型**:在模型菜单中选择本次对话使用的模型。简单查询、整理、改写可以选择较轻量的模型;复杂规划、跨表分析和应用构建适合选择更强的模型。 - **智能**:在模型菜单中单独选择 **智能** 级别,用于控制 AI 的思考强度;级别越高,推理越深入。 -- **密钥管理**:打开 **+** 菜单,选择 **密钥管理**,保存 API Key 或其他凭证。AI 对话运行时可通过环境变量读取这些值。已保存的值不会明文展示;需要修改时,输入新值覆盖即可。 -- **集成连接**:当 AI 需要访问第三方账号时,会在对话中显示类似 **连接 Slack** 的卡片。点击 **连接** 可通过 OAuth 授权;点击 **跳过** 会取消本次授权,AI 会在不使用该连接的情况下继续处理可完成的部分。 +- **我的 Secret**:打开 **+** → **更多** → **我的 Secret**,在 **设置** → **集成** 中保存 API Key 或其他凭证。这些值属于你个人,AI 对话运行时可通过环境变量读取,也可以按需授权给某个应用或自动化使用,详见 [凭据与集成](/zh/basic/credential)。 +- **凭据请求**:当 AI 需要访问第三方账号或某个 Secret 时,会在对话中固定一张凭据请求卡片。可以 **连接我的账号** 走一次 OAuth,或直接授权你已有的凭据;点击 **跳过** 则不提供这份凭据,AI 会在不使用它的情况下继续处理可完成的部分。 +- **网页抓取**:打开 **+** 菜单,选择 **网页抓取**,按平台和数据类型挑一项(如 LinkedIn 的 **个人资料**、Amazon 的 **商品评论**),Teable 会把对应的抓取指令预填到输入框,你补上链接或关键词即可。也可以选 **任意网页**,直接粘贴链接抓取。 - **技能**:打开 **+** 菜单,选择 **技能**,可以在当前对话中导入、启用、停用或试用技能。导入时需要选择谁能用这个技能:选 **个人** 只有自己能用,选 **数据库** 则当前数据库的协作者都能用,选 **空间** 则当前空间的所有成员都能用。在输入框中输入 `/`,可以选择已启用的技能。需要连接或迁移外部系统时,请参阅 [Connect & Migrate Everything](/zh/basic/ai/connect-everything)。 - **上下文用量**:输入框旁的圆环显示当前对话占用了多少模型上下文窗口,点击可查看百分比和 token 数量。上下文接近用满时,Teable 会压缩对话内容;如果希望从干净的上下文开始,可以新建对话。 - **文件管理**:打开 **+** → **更多** → **文件管理**,可以查看当前对话沙箱中的文件。可以预览支持的文件类型、下载文件,也可以删除不再需要的文件或文件夹。需要先开始一段对话,才会有对应文件可管理。 @@ -283,6 +284,6 @@ Artifact 默认只有创建者本人能打开,要让别人查看,需要开 - 在输入框的 **+** 菜单中选择 **密钥管理**。AI 对话可以在运行时使用这些值,不需要把明文密钥写进提示词。 + 在输入框的 **+** → **更多** 中选择 **我的 Secret**。AI 对话可以在运行时使用这些值,不需要把明文密钥写进提示词。 diff --git a/zh/basic/ai/app-builder.mdx b/zh/basic/ai/app-builder.mdx index dd8f1f10..309a57b0 100644 --- a/zh/basic/ai/app-builder.mdx +++ b/zh/basic/ai/app-builder.mdx @@ -87,7 +87,7 @@ Teable 应用构建器 (App Builder) 允许您在不编写代码的情况下, - ZIP 会替换现有项目。未放入 ZIP 的现有文件,会从新版本中移除。 - 如果 ZIP 中包含一个公共外层文件夹,Teable 会自动剥离这一层。你可以直接压缩最外层项目文件夹。 - 导入的项目根目录必须包含 `package.json`。 -- ZIP 根目录中的 `.env` 会导入应用的 **密钥管理**。其他 `.env*` 变体(如 `.env.local`)会被忽略。 +- ZIP 根目录中的 `.env` 里的自定义变量会存成你的 Secret,并按同名变量授权给这个应用。其他 `.env*` 变体(如 `.env.local`)会被忽略。 -#### 密钥管理 +#### 凭据与配置 -不要把 API Key、访问凭证和应用运行所需的配置直接写进源码。需要让应用读取这些值时,在应用构建器对话面板中打开 **+** 菜单,选择 **密钥管理**。 +不要把 API Key、访问凭证和应用运行所需的配置直接写进源码。应用用的是**你的凭据**:OAuth 连接或你保存的 Secret。在应用构建器对话面板中打开 **+** → **更多** → **凭据与配置**,把凭据授权给这个应用。 | 细节 | 行为 | | --- | --- | -| 生效范围 | 应用密钥可用于应用预览环境和已发布应用 | -| 代码读取 | 服务端代码可通过 `process.env.MY_API_KEY` 等环境变量读取 | -| 已保存的值 | 保存后不会明文展示;需要修改时,输入新值覆盖 | -| 名称格式 | **名称**需要以大写字母开头,只能包含大写字母、数字和下划线 | +| 生效范围 | 授权给应用的凭据可用于应用预览环境和已发布应用 | +| 变量名称 | 授权时填写的别名,需以大写字母开头,只能包含大写字母、数字和下划线 | +| 代码读取 Secret | 服务端代码通过 `process.env.MY_API_KEY` 等环境变量读取 | +| 代码读取连接 | 服务端代码调用 `getConnectionToken('别名')` 换取访问令牌 | +| 已保存的值 | 保存后不会明文展示;需要更换时,输入新值 | -新增、删除或修改密钥值后,应用预览环境会使用新值;已发布应用需要重新发布后才会使用。只修改密钥描述,不需要重新发布。 +新增、移除授权或更换凭据值后,应用预览环境会使用新值;已发布应用需要重新发布后才会使用。 + +复制应用后,凭据不会跟着复制,面板里会留下 **尚未授权** 的占位项,点击 **绑定我的** 补上你自己的凭据。凭据的管理和使用位置详见 [凭据与集成](/zh/basic/credential)。 #### 管理应用文件 @@ -170,7 +173,7 @@ Teable 不会强制覆盖你的分支。两边历史分叉时,Teable 把最新 ### 环境变量与本地开发 -仓库里只有源码。Teable 不会推送任何以 `.env` 开头的文件,项目根目录、子目录、提交历史里都没有。环境变量的值存放在应用的 **密钥管理** 中,不会进入 git。仓库的 `.gitignore` 里已经写好了 `.env*`,本地克隆后也不会误提交。 +仓库里只有源码。Teable 不会推送任何以 `.env` 开头的文件,项目根目录、子目录、提交历史里都没有。环境变量的值来自授权给应用的凭据,存放在 **凭据与配置** 中,不会进入 git。仓库的 `.gitignore` 里已经写好了 `.env*`,本地克隆后也不会误提交。 在本地运行应用: @@ -180,13 +183,13 @@ Teable 不会强制覆盖你的分支。两边历史分叉时,Teable 把最新 执行 `pnpm dev`。 -复制出来的内容与应用在 Teable 沙箱中拿到的一致:你自己配置的密钥,加上平台注入的接口地址、访问令牌和 AI 访问相关变量。 +复制出来的内容与应用在 Teable 沙箱中拿到的一致:授权给应用的凭据,加上平台注入的接口地址、访问令牌和 AI 访问相关变量。 文件里的 `TEABLE_APP_TOKEN` 可以访问应用的数据,所以只有拥有应用编辑权限的成员才能复制。切勿提交这个文件,也不要粘贴到 issue 或 Pull Request 里。 -新增或修改密钥请在 Teable 的 **密钥管理** 中操作,不要改本地文件。把 `.env` 提交到 GitHub 不会新增或更新密钥。密钥改动后,重新复制一次环境变量,覆盖本地的 `.env`。 +新增或更换凭据请在 Teable 的 **凭据与配置** 中操作,不要改本地文件。把 `.env` 提交到 GitHub 不会新增或更新凭据。凭据改动后,重新复制一次环境变量,覆盖本地的 `.env`。 ### 解除绑定 @@ -305,7 +308,7 @@ Teable 自动跟踪每一次部署。 - 切换到编辑器中的 **Code** 标签页,点击标签栏中的 **`...`** 菜单,然后选择 **下载代码** 或 **导入代码**。导入的 ZIP 最大 20 MB,且会替换现有项目,因此请放入需要保留的全部源代码文件。导入的项目根目录必须包含 `package.json`。ZIP 根目录中的 `.env` 文件会导入应用的 **密钥管理**。 + 切换到编辑器中的 **Code** 标签页,点击标签栏中的 **`...`** 菜单,然后选择 **下载代码** 或 **导入代码**。导入的 ZIP 最大 20 MB,且会替换现有项目,因此请放入需要保留的全部源代码文件。导入的项目根目录必须包含 `package.json`。ZIP 根目录中的 `.env` 里的自定义变量会存成你的 Secret,并按同名变量授权给这个应用。 diff --git a/zh/basic/automation.mdx b/zh/basic/automation.mdx index 217682c3..d1308c79 100644 --- a/zh/basic/automation.mdx +++ b/zh/basic/automation.mdx @@ -39,11 +39,13 @@ AI 会为你创建并测试完整自动化,包括触发器、操作和字段 修改会保存为草稿,线上工作流继续使用旧版本,直到你点击 **应用更新**。 -## 密钥管理 +## 凭据与配置 -使用 **密钥管理** 保存自动化运行时需要的 API Key、访问凭证和配置。打开工作流,在编辑标签页点击测试控件旁的 **密钥管理**。 +自动化调用外部服务时用的是你的凭据:OAuth 连接或你保存的 Secret。打开工作流,在编辑标签页点击测试控件旁的 **凭据与配置**,把凭据授权给这个自动化,并给它起一个 **变量名称**。 -密钥只作用于当前自动化。脚本操作可通过环境变量读取,例如 `process.env.EXTERNAL_API_KEY`。已保存的值不会明文展示;需要修改时,输入新值覆盖即可。 +脚本操作通过环境变量读取这个名称,例如 `process.env.EXTERNAL_API_KEY`;其他操作的输入框可以点 **插入 Secret** 插入引用。凭据的值不会明文展示,测试结果里也会被遮蔽。 + +凭据本身在 **设置** → **集成** 中管理,详见 [凭据与集成](/zh/basic/credential)。 ## 运行历史 diff --git a/zh/basic/credential.mdx b/zh/basic/credential.mdx new file mode 100644 index 00000000..08ade852 --- /dev/null +++ b/zh/basic/credential.mdx @@ -0,0 +1,73 @@ +--- +title: 凭据与集成 +description: 管理你的连接和 Secret,并把它们授权给应用和自动化使用。 +--- + +云端版本所有方案可用;私有部署版本需要商业版及以上方案。 + +应用和自动化要调用外部服务时,用的是**你的凭据**。凭据属于个人,不属于某个应用或自动化,分两种: + +- **连接**:通过 OAuth 授权给 Teable 的第三方账号,比如 Google、Slack、飞书。 +- **Secret**:你自己保存的 API Key、访问令牌等字符串。 + +凭据统一在 **设置** → **集成** 中管理,再按需授权给某个应用或自动化。授权之后,凡是运行这个应用或自动化的人,用的都是授权者的那份凭据;凭据的值不会展示给任何人,自动化测试结果里也会被遮蔽。 + +## 管理你的连接和 Secret + +点击左下角头像,打开 **设置** → **集成**,这里分三块:**我的连接**、**我的 Secret**、**已授权的第三方应用**。 + +**添加 Secret** 时填写: + +| 字段 | 说明 | +| --- | --- | +| **Key** | 以大写字母开头,只能包含大写字母、数字和下划线 | +| **Value** | 保存后不再显示,需要更换时输入新值 | +| **描述** | 可选,用于说明这个 Secret 的用途 | + +连接通过 **连接新账户** 添加。授权失效时,对应连接上会出现 **重新连接**。 + +每条凭据下方会显示它正在被多少个资源使用。点击 **查看** 可以看到具体的应用和自动化清单,并对其中某一项 **移除授权**。 + +## 授权给应用或自动化 + +打开资源的凭据面板: + +- **应用**:在应用构建器的对话面板中打开 **+** → **更多** → **凭据与配置**。 +- **自动化**:打开工作流,在 **编辑** 标签页点击 **凭据与配置**。 + +点击 **授权**,有三种方式:**授权已有凭据** 从你已有的 Secret 和连接中挑一个;**添加 Secret** 当场新建一个并直接授权;也可以从 **服务** 列表里选一个第三方服务,没连过的会走一次 OAuth,标着 **已连接** 的直接授权。 + +授权时需要填 **变量名称**,也就是这份凭据在这个应用或自动化里的别名,命名规则和 Secret 的 Key 一致,代码里读取的就是这个别名。 + +面板里可能出现 **尚未授权** 的占位项:复制应用、复制工作流、导入或复制数据库时,凭据不会跟着复制过来,只保留了代码需要的别名。点击 **绑定我的** 补上你自己的凭据,这个应用或自动化才能正常运行。 + +某个别名当前绑定的是别人的凭据时,可以点 **换成我的** 替换;点 **仅移除授权** 只解除绑定、保留占位项,代码不用改。 + +需要有应用或自动化的编辑权限,才能修改它的凭据授权。你只能授权自己的凭据。 + +## 在代码中读取 + +| 场景 | 读取方式 | +| --- | --- | +| 自动化脚本 | 环境变量,如 `process.env.EXTERNAL_API_KEY` | +| 自动化输入框 | 点击输入框旁的 **插入 Secret**,选择已授权的 Secret 插入引用 | +| 应用中的 Secret | 服务端代码通过 `process.env.MY_API_KEY` 读取 | +| 应用中的连接 | 服务端代码调用 `getConnectionToken('别名')` 换取访问令牌 | + +在自动化输入框里粘贴一段疑似密钥的内容时,Teable 会自动把它存成你的 Secret,原处留下引用,明文不会留在工作流配置里。不需要这样处理时,点击提示里的 **撤销**。 + +## AI 对话中的凭据请求 + +AI 需要用到某个外部账号时,会在对话中固定一张凭据请求卡片,说明它要的是哪个服务的连接,还是哪个别名的 Secret。可以选择: + +- **连接我的账号**:走一次 OAuth,连接完成后自动授权给当前资源。 +- **授权我的 xxx**:直接使用你已有的连接或 Secret。 +- **跳过**:不提供这份凭据,AI 会继续处理不依赖它的部分。 + +## 更换值、删除和退出空间 + +更换 Secret 的值、删除 Secret 或断开连接前,Teable 会列出仍在使用它的应用和自动化。删除和断开之后这些资源会立刻失效,要让它们继续运行,得先在资源里换成别的凭据。旧的 Secret 值不可恢复。 + +更换值后,自动化在下次运行时使用新值;应用的预览环境需要重启,已发布的应用需要重新发布。 + +退出某个空间后,那里的应用或自动化还在用你的凭据时,**集成** 页会提示 **你已退出该空间**。不想继续提供,点击 **移除授权**。