From 0e14d5920c5fb69cc9ed44259bf0eda0a8dd7277 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Fatih=20Kadir=20Ak=C4=B1n?= Date: Wed, 28 Jan 2026 14:01:31 +0300 Subject: [PATCH] feat(messages): add workflow link fields for multiple languages --- messages/ar.json | 6 +- messages/az.json | 6 +- messages/de.json | 6 +- messages/el.json | 8 +- messages/en.json | 6 +- messages/es.json | 6 +- messages/fa.json | 6 +- messages/fr.json | 6 +- messages/he.json | 6 +- messages/it.json | 6 +- messages/ja.json | 6 +- messages/ko.json | 6 +- messages/nl.json | 6 +- messages/pt.json | 6 +- messages/ru.json | 6 +- messages/tr.json | 8 +- messages/zh.json | 8 +- .../migration.sql | 2 + prisma/schema.prisma | 1 + prompts.config.ts | 1 + public/sponsors/eachlabs-dark.png | Bin 0 -> 61590 bytes public/sponsors/eachlabs.png | Bin 0 -> 78857 bytes src/app/api/prompts/[id]/route.ts | 62 +++++++++++++++- src/app/api/prompts/route.ts | 4 +- src/app/prompts/[id]/edit/page.tsx | 1 + src/app/prompts/[id]/page.tsx | 13 ++++ src/components/prompts/prompt-connections.tsx | 70 +++++++++++------- .../prompts/prompt-flow-section.tsx | 4 + src/components/prompts/prompt-form.tsx | 31 ++++++++ 29 files changed, 249 insertions(+), 48 deletions(-) create mode 100644 prisma/migrations/20260128100000_add_workflow_link/migration.sql create mode 100644 public/sponsors/eachlabs-dark.png create mode 100644 public/sponsors/eachlabs.png diff --git a/messages/ar.json b/messages/ar.json index 6e3a2115..1497bae2 100644 --- a/messages/ar.json +++ b/messages/ar.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "إضافة", + "workflowLink": "رابط تشغيل سير العمل", + "workflowLinkDescription": "رابط URL حيث يمكن للمستخدمين اختبار أو تجربة سير العمل هذا (يظهر عندما يكون للأمر خطوات سابقة/تالية)", + "workflowLinkCreateNote": "احفظ الأمر أولاً، ثم أضف أوامر متصلة (الخطوات السابقة/التالية) لتفعيل هذا الحقل.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "خيارات متقدمة", "searchContributors": "البحث بواسطة اسم المستخدم...", "noUsersFound": "لم يتم العثور على مستخدمين", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "تدفق الأوامر", - "description": "بعض الأوامر تعمل كسير عمل متعدد الخطوات. قم بربط أوامرك لإنشاء تسلسل.", "addPromptFlow": "هذا الأمر له خطوة تالية", + "testWorkflow": "تشغيل سير العمل", "addPrevious": "إضافة سابق", "addNext": "إضافة تالي", "addPreviousTitle": "إضافة أمر سابق", diff --git a/messages/az.json b/messages/az.json index 148b2a57..14430328 100644 --- a/messages/az.json +++ b/messages/az.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Əlavə et", + "workflowLink": "İş Axını Linki", + "workflowLinkDescription": "İstifadəçilərin bu iş axınını sınaya biləcəyi URL (əvvəlki/sonrakı addımları olan promptlar üçün göstərilir)", + "workflowLinkCreateNote": "Əvvəlcə promptu saxlayın, sonra bu sahəni aktivləşdirmək üçün əlaqəli promptlar əlavə edin.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Təkmılləşdirilmiş Seçimlər", "searchContributors": "İstifadəçi adına görə axtar...", "noUsersFound": "İstifadəçi tapılmadı", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Prompt Axını", - "description": "Bəzi promptlar çox addımlı iş axınları kimi işləyir. Ardıcıllıq yaratmaq üçün promptlarınızı birləşdirin.", "addPromptFlow": "Bu promptun növbəti addımı var", + "testWorkflow": "İş Axınını Çalışdır", "addPrevious": "Əvvəlkini Əlavə et", "addNext": "Növbətini Əlavə et", "addPreviousTitle": "Əvvəlki Promptu Əlavə et", diff --git a/messages/de.json b/messages/de.json index c6218c9e..6bdd9ec7 100644 --- a/messages/de.json +++ b/messages/de.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Hinzufügen", + "workflowLink": "Workflow-Link", + "workflowLinkDescription": "Eine URL, wo Benutzer diesen Workflow testen oder demonstrieren können (wird angezeigt, wenn der Prompt vorherige/nächste Schritte hat)", + "workflowLinkCreateNote": "Speichern Sie zuerst den Prompt, dann fügen Sie verbundene Prompts (vorherige/nächste Schritte) hinzu, um dieses Feld zu aktivieren.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Erweiterte Optionen", "searchContributors": "Nach Benutzernamen suchen...", "noUsersFound": "Keine Benutzer gefunden", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Prompt-Ablauf", - "description": "Einige Prompts funktionieren als mehrstufige Workflows. Verbinden Sie Ihre Prompts, um eine Sequenz zu erstellen.", "addPromptFlow": "Dieser Prompt hat einen nächsten Schritt", + "testWorkflow": "Workflow ausführen", "addPrevious": "Vorherigen hinzufügen", "addNext": "Nächsten hinzufügen", "addPreviousTitle": "Vorherigen Prompt hinzufügen", diff --git a/messages/el.json b/messages/el.json index ffab5bd7..44109f2a 100644 --- a/messages/el.json +++ b/messages/el.json @@ -144,7 +144,11 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Προσθήκη", - "advancedOptions": "Προχωρημένες Επιλογές", + "workflowLink": "Σύνδεσμος Ροής Εργασίας", + "workflowLinkDescription": "URL όπου οι χρήστες μπορούν να δοκιμάσουν αυτή τη ροή εργασίας", + "workflowLinkCreateNote": "Αποθηκεύστε πρώτα το prompt, μετά προσθέστε συνδεδεμένα prompts για να ενεργοποιήσετε αυτό το πεδίο.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", + "advancedOptions": "Σύνθετες Επιλογές", "searchContributors": "Αναζήτηση με όνομα χρήστη...", "noUsersFound": "Δεν βρέθηκαν χρήστες", "worksBestWith": "Λειτουργεί καλύτερα με", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Ροή Prompts", - "description": "Ορισμένα prompts λειτουργούν ως ροές εργασίας πολλαπλών βημάτων. Συνδέστε τα prompts σας για να δημιουργήσετε μια ακολουθία.", "addPromptFlow": "Αυτό το prompt έχει επόμενο βήμα", + "testWorkflow": "Εκτέλεση Ροής Εργασίας", "addPrevious": "Προσθήκη Προηγούμενου", "addNext": "Προσθήκη Επόμενου", "addPreviousTitle": "Προσθήκη Προηγούμενου Prompt", diff --git a/messages/en.json b/messages/en.json index 43cc1281..c905d028 100644 --- a/messages/en.json +++ b/messages/en.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Add", + "workflowLink": "Test Workflow Link", + "workflowLinkDescription": "A URL where users can test or demo this workflow (shown when prompt has previous/next steps)", + "workflowLinkCreateNote": "Save the prompt first, then add connected prompts (previous/next steps) to enable this field.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Advanced Options", "worksBestWith": "Works best with", "mcpTools": "MCP Tools", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Prompt Flow", - "description": "Some prompts work as multi-step workflows. Connect your prompts to create a sequence.", "addPromptFlow": "This prompt has a next step", + "testWorkflow": "Run Workflow", "addPrevious": "Add Previous", "addNext": "Add Next", "addPreviousTitle": "Add Previous Prompt", diff --git a/messages/es.json b/messages/es.json index b88bdc16..2d5ee990 100644 --- a/messages/es.json +++ b/messages/es.json @@ -141,6 +141,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Añadir", + "workflowLink": "Enlace del Flujo de Trabajo", + "workflowLinkDescription": "Una URL donde los usuarios pueden probar este flujo de trabajo", + "workflowLinkCreateNote": "Guarda el prompt primero, luego añade prompts conectados para habilitar este campo.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Opciones Avanzadas", "searchContributors": "Buscar por nombre de usuario...", "noUsersFound": "No se encontraron usuarios", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Flujo de Prompts", - "description": "Algunos prompts funcionan como flujos de trabajo de varios pasos. Conecta tus prompts para crear una secuencia.", "addPromptFlow": "Este prompt tiene un paso siguiente", + "testWorkflow": "Ejecutar Flujo", "addPrevious": "Añadir Anterior", "addNext": "Añadir Siguiente", "addPreviousTitle": "Añadir Prompt Anterior", diff --git a/messages/fa.json b/messages/fa.json index cb618861..0f45fa8e 100644 --- a/messages/fa.json +++ b/messages/fa.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "اضافه", + "workflowLink": "لینک گردش کار", + "workflowLinkDescription": "لینکی که کاربران می‌توانند این گردش کار را آزمایش کنند", + "workflowLinkCreateNote": "ابتدا پرامپت را ذخیره کنید، سپس پرامپت‌های متصل اضافه کنید.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "گزینه‌های پیشرفته", "searchContributors": "جستجو بر اساس نام کاربری...", "noUsersFound": "کاربری یافت نشد", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "جریان پرامپت", - "description": "برخی پرامپت‌ها به صورت جریان‌های کاری چند مرحله‌ای عمل می‌کنند. پرامپت‌هایتان را متصل کنید تا یک دنباله بسازید.", "addPromptFlow": "این پرامپت مرحله بعدی دارد", + "testWorkflow": "اجرای گردش کار", "addPrevious": "افزودن قبلی", "addNext": "افزودن بعدی", "addPreviousTitle": "افزودن پرامپت قبلی", diff --git a/messages/fr.json b/messages/fr.json index 5d32184c..91b4f288 100644 --- a/messages/fr.json +++ b/messages/fr.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Ajouter", + "workflowLink": "Lien du Workflow", + "workflowLinkDescription": "URL où les utilisateurs peuvent tester ce workflow", + "workflowLinkCreateNote": "Enregistrez d'abord le prompt, puis ajoutez des prompts connectés pour activer ce champ.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Options Avancées", "searchContributors": "Rechercher par nom d'utilisateur...", "noUsersFound": "Aucun utilisateur trouvé", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Flux de Prompts", - "description": "Certains prompts fonctionnent comme des workflows multi-étapes. Connectez vos prompts pour créer une séquence.", "addPromptFlow": "Ce prompt a une étape suivante", + "testWorkflow": "Exécuter le Workflow", "addPrevious": "Ajouter Précédent", "addNext": "Ajouter Suivant", "addPreviousTitle": "Ajouter Prompt Précédent", diff --git a/messages/he.json b/messages/he.json index 489b3355..3859da59 100644 --- a/messages/he.json +++ b/messages/he.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "הוסף", + "workflowLink": "קישור לתהליך עבודה", + "workflowLinkDescription": "כתובת URL שבה משתמשים יכולים לבדוק את תהליך העבודה הזה", + "workflowLinkCreateNote": "שמור קודם את הפרומפט, ואז הוסף פרומפטים מקושרים כדי להפעיל שדה זה.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "אפשרויות מתקדמות", "searchContributors": "חפש לפי שם משתמש...", "noUsersFound": "לא נמצאו משתמשים", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "זרימת פרומפטים", - "description": "חלק מהפרומפטים עובדים כתהליכי עבודה מרובי שלבים. חבר את הפרומפטים שלך ליצירת רצף.", "addPromptFlow": "לפרומפט הזה יש שלב הבא", + "testWorkflow": "הפעל תהליך עבודה", "addPrevious": "הוסף קודם", "addNext": "הוסף הבא", "addPreviousTitle": "הוסף פרומפט קודם", diff --git a/messages/it.json b/messages/it.json index 8a588d0d..cab03b3d 100644 --- a/messages/it.json +++ b/messages/it.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Aggiungi", + "workflowLink": "Link del Workflow", + "workflowLinkDescription": "URL dove gli utenti possono testare questo workflow", + "workflowLinkCreateNote": "Salva prima il prompt, poi aggiungi prompt collegati per abilitare questo campo.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Opzioni Avanzate", "searchContributors": "Cerca per nome utente...", "noUsersFound": "Nessun utente trovato", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Flusso Prompt", - "description": "Alcuni prompt funzionano come workflow a più passaggi. Collega i tuoi prompt per creare una sequenza.", "addPromptFlow": "Questo prompt ha un passo successivo", + "testWorkflow": "Esegui Workflow", "addPrevious": "Aggiungi Precedente", "addNext": "Aggiungi Successivo", "addPreviousTitle": "Aggiungi Prompt Precedente", diff --git a/messages/ja.json b/messages/ja.json index 69bdbfa7..c248580f 100644 --- a/messages/ja.json +++ b/messages/ja.json @@ -141,6 +141,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "追加", + "workflowLink": "ワークフローリンク", + "workflowLinkDescription": "ユーザーがこのワークフローをテストできるURL", + "workflowLinkCreateNote": "まずプロンプトを保存し、次に接続されたプロンプトを追加してこのフィールドを有効にしてください。", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "詳細オプション", "searchContributors": "ユーザー名で検索...", "noUsersFound": "ユーザーが見つかりません", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "プロンプトフロー", - "description": "一部のプロンプトは複数ステップのワークフローとして機能します。プロンプトを接続してシーケンスを作成しましょう。", "addPromptFlow": "このプロンプトには次のステップがあります", + "testWorkflow": "ワークフローを実行", "addPrevious": "前を追加", "addNext": "次を追加", "addPreviousTitle": "前のプロンプトを追加", diff --git a/messages/ko.json b/messages/ko.json index 7fe556e5..84915700 100644 --- a/messages/ko.json +++ b/messages/ko.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "추가", + "workflowLink": "워크플로 링크", + "workflowLinkDescription": "사용자가 이 워크플로를 테스트할 수 있는 URL", + "workflowLinkCreateNote": "먼저 프롬프트를 저장한 다음 연결된 프롬프트를 추가하여 이 필드를 활성화하세요.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "고급 옵션", "searchContributors": "사용자명으로 검색...", "noUsersFound": "사용자를 찾을 수 없습니다", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "프롬프트 흐름", - "description": "일부 프롬프트는 다단계 워크플로로 작동합니다. 프롬프트를 연결하여 시퀀스를 만드세요.", "addPromptFlow": "이 프롬프트에는 다음 단계가 있습니다", + "testWorkflow": "워크플로 실행", "addPrevious": "이전 추가", "addNext": "다음 추가", "addPreviousTitle": "이전 프롬프트 추가", diff --git a/messages/nl.json b/messages/nl.json index bd77024c..1dd516d4 100644 --- a/messages/nl.json +++ b/messages/nl.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Toevoegen", + "workflowLink": "Workflow Link", + "workflowLinkDescription": "URL waar gebruikers deze workflow kunnen testen", + "workflowLinkCreateNote": "Sla eerst de prompt op en voeg daarna verbonden prompts toe om dit veld in te schakelen.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Geavanceerde opties", "worksBestWith": "Werkt het beste met", "mcpTools": "MCP-tools", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Promptstroom", - "description": "Sommige prompts werken als meerstaps-workflows. Verbind je prompts om een reeks te maken.", "addPromptFlow": "Deze prompt heeft een volgende stap", + "testWorkflow": "Workflow Uitvoeren", "addPrevious": "Vorige toevoegen", "addNext": "Volgende toevoegen", "addPreviousTitle": "Vorige prompt toevoegen", diff --git a/messages/pt.json b/messages/pt.json index 00048a5c..4a38951a 100644 --- a/messages/pt.json +++ b/messages/pt.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Adicionar", + "workflowLink": "Link do Workflow", + "workflowLinkDescription": "URL onde usuários podem testar este workflow", + "workflowLinkCreateNote": "Salve o prompt primeiro, depois adicione prompts conectados para habilitar este campo.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Opções Avançadas", "searchContributors": "Buscar por nome de usuário...", "noUsersFound": "Nenhum usuário encontrado", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Fluxo de Prompts", - "description": "Alguns prompts funcionam como fluxos de trabalho de várias etapas. Conecte seus prompts para criar uma sequência.", "addPromptFlow": "Este prompt tem um próximo passo", + "testWorkflow": "Executar Workflow", "addPrevious": "Adicionar Anterior", "addNext": "Adicionar Próximo", "addPreviousTitle": "Adicionar Prompt Anterior", diff --git a/messages/ru.json b/messages/ru.json index ada0f311..4de3818c 100644 --- a/messages/ru.json +++ b/messages/ru.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Добавить", + "workflowLink": "Ссылка на рабочий процесс", + "workflowLinkDescription": "URL, где пользователи могут протестировать этот рабочий процесс", + "workflowLinkCreateNote": "Сначала сохраните промпт, затем добавьте связанные промпты, чтобы активировать это поле.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Расширенные настройки", "searchContributors": "Поиск по имени пользователя...", "noUsersFound": "Пользователи не найдены", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Поток промптов", - "description": "Некоторые промпты работают как многоэтапные рабочие процессы. Соедините свои промпты для создания последовательности.", "addPromptFlow": "У этого промпта есть следующий шаг", + "testWorkflow": "Запустить рабочий процесс", "addPrevious": "Добавить предыдущий", "addNext": "Добавить следующий", "addPreviousTitle": "Добавить предыдущий промпт", diff --git a/messages/tr.json b/messages/tr.json index 97b9bfbf..a4e2257b 100644 --- a/messages/tr.json +++ b/messages/tr.json @@ -144,6 +144,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "Ekle", + "workflowLink": "İş Akışı Bağlantısı", + "workflowLinkDescription": "Kullanıcıların bu iş akışını test edebileceği URL", + "workflowLinkCreateNote": "Önce promptu kaydedin, ardından bu alanı etkinleştirmek için bağlı promptlar ekleyin.", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "Gelişmiş Seçenekler", "searchContributors": "Kullanıcı adına göre ara...", "noUsersFound": "Kullanıcı bulunamadı", @@ -1230,8 +1234,8 @@ }, "connectedPrompts": { "title": "Prompt Akışı", - "description": "Bazı promptlar çok adımlı iş akışları olarak çalışır. Bir sıra oluşturmak için promptlarınızı bağlayın.", - "addPromptFlow": "Bu promptun sonraki adımı var", + "addPromptFlow": "Bu promptun bir sonraki adımı var", + "testWorkflow": "İş Akışını Çalıştır", "addPrevious": "Önceki Ekle", "addNext": "Sonraki Ekle", "addPreviousTitle": "Önceki Prompt Ekle", diff --git a/messages/zh.json b/messages/zh.json index 9befa9f9..0696b6e8 100644 --- a/messages/zh.json +++ b/messages/zh.json @@ -141,6 +141,10 @@ "mcpCommandPlaceholder": "npx -y @mcp/server-name", "mcpToolsPlaceholder": "tool1, tool2", "add": "添加", + "workflowLink": "工作流链接", + "workflowLinkDescription": "用户可以测试此工作流的URL", + "workflowLinkCreateNote": "先保存提示词,然后添加连接的提示词以启用此字段。", + "workflowLinkPlaceholder": "https://example.com/workflow-demo", "advancedOptions": "高级选项", "searchContributors": "按用户名搜索...", "noUsersFound": "未找到用户", @@ -1225,13 +1229,13 @@ "keyRegenerated": "API 密钥重新生成成功", "keyRevoked": "API 密钥已撤销", "publicByDefault": "默认公开提示词", - "publicByDefaultDescription": "通过 MCP 保存提示词时,默认设为公开而非私有。", + "publicByDefaultDescription": "通过MCP保存提示词时,默认设为公开而非私有。", "settingUpdated": "设置已更新" }, "connectedPrompts": { "title": "提示词流程", - "description": "某些提示词作为多步骤工作流运行。连接您的提示词以创建序列。", "addPromptFlow": "此提示词有下一步", + "testWorkflow": "运行工作流", "addPrevious": "添加上一个", "addNext": "添加下一个", "addPreviousTitle": "添加上一个提示词", diff --git a/prisma/migrations/20260128100000_add_workflow_link/migration.sql b/prisma/migrations/20260128100000_add_workflow_link/migration.sql new file mode 100644 index 00000000..4c50165e --- /dev/null +++ b/prisma/migrations/20260128100000_add_workflow_link/migration.sql @@ -0,0 +1,2 @@ +-- AlterTable +ALTER TABLE "prompts" ADD COLUMN "workflowLink" TEXT; diff --git a/prisma/schema.prisma b/prisma/schema.prisma index 1c1ab567..2aebf1f3 100644 --- a/prisma/schema.prisma +++ b/prisma/schema.prisma @@ -129,6 +129,7 @@ model Prompt { collectedBy Collection[] bestWithModels String[] // Model slugs this prompt works best with (max 3), e.g. ["gpt-4o", "claude-3-5-sonnet"] bestWithMCP Json? // MCP configs array, e.g. [{command: "npx -y @mcp/server", tools: ["tool1"]}] + workflowLink String? // URL to test/demo the workflow when prompt has previous/next connections @@index([authorId]) @@index([categoryId]) diff --git a/prompts.config.ts b/prompts.config.ts index 5c5f227b..1a06770c 100644 --- a/prompts.config.ts +++ b/prompts.config.ts @@ -83,6 +83,7 @@ export default defineConfig({ { name: "CodeRabbit", className: 'py-1', logo: '/sponsors/coderabbit.svg', darkLogo: '/sponsors/coderabbit-dark.svg', url: "https://coderabbit.link/fatih" }, { name: "Sentry", className: 'py-1', logo: '/sponsors/sentry.svg', darkLogo: '/sponsors/sentry-dark.svg', url: "https://sentry.io/?utm_source=prompts.chat" }, { name: "MitteAI", logo: '/sponsors/mitte.svg', darkLogo: '/sponsors/mitte-dark.svg', url: "https://mitte.ai/?utm_source=prompts.chat" }, + { name: "eachlabs", className: 'py-[6px]', logo: '/sponsors/eachlabs.png', darkLogo: '/sponsors/eachlabs-dark.png', url: "https://www.eachlabs.ai/?utm_source=promptschat&utm_medium=referral" }, { name: "warp.dev", className: 'py-2', logo: '/sponsors/warp.svg', url: "https://warp.dev/?utm_source=prompts.chat" }, ], }, diff --git a/public/sponsors/eachlabs-dark.png b/public/sponsors/eachlabs-dark.png new file mode 100644 index 0000000000000000000000000000000000000000..172b760556e1bcbb015269a9427769d2221d5b95 GIT binary patch literal 61590 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 literal 0 HcmV?d00001 diff --git a/public/sponsors/eachlabs.png b/public/sponsors/eachlabs.png new file mode 100644 index 0000000000000000000000000000000000000000..eb709922c803e545187526278922d5dc24029c55 GIT binary patch literal 78857 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 + allFlowConnections.forEach((conn) => { + if (!adjacency.has(conn.sourceId)) adjacency.set(conn.sourceId, new Set()); + if (!adjacency.has(conn.targetId)) adjacency.set(conn.targetId, new Set()); + adjacency.get(conn.sourceId)!.add(conn.targetId); + adjacency.get(conn.targetId)!.add(conn.sourceId); + }); + + // BFS to find all prompts in the same workflow chain + const workflowPromptIds = new Set(); + const queue = [id]; + workflowPromptIds.add(id); + + while (queue.length > 0) { + const current = queue.shift()!; + const neighbors = adjacency.get(current); + if (neighbors) { + neighbors.forEach((neighborId) => { + if (!workflowPromptIds.has(neighborId)) { + workflowPromptIds.add(neighborId); + queue.push(neighborId); + } + }); + } + } + + // Remove current prompt from update set (already updated above) + workflowPromptIds.delete(id); + + // Update all prompts in the workflow with the same workflow link + if (workflowPromptIds.size > 0) { + await db.prompt.updateMany({ + where: { + id: { in: Array.from(workflowPromptIds) }, + }, + data: { + workflowLink: newWorkflowLink, + }, + }); + } + } + // Revalidate prompts cache revalidateTag("prompts", "max"); diff --git a/src/app/api/prompts/route.ts b/src/app/api/prompts/route.ts index aeb7d7e1..274d6aa6 100644 --- a/src/app/api/prompts/route.ts +++ b/src/app/api/prompts/route.ts @@ -28,6 +28,7 @@ const promptSchema = z.object({ command: z.string(), tools: z.array(z.string()).optional(), })).optional(), + workflowLink: z.string().url().optional().or(z.literal("")), }); // Create prompt @@ -51,7 +52,7 @@ export async function POST(request: Request) { ); } - const { title, description, content, type, structuredFormat, categoryId, tagIds, contributorIds, isPrivate, mediaUrl, requiresMediaUpload, requiredMediaType, requiredMediaCount, bestWithModels, bestWithMCP } = parsed.data; + const { title, description, content, type, structuredFormat, categoryId, tagIds, contributorIds, isPrivate, mediaUrl, requiresMediaUpload, requiredMediaType, requiredMediaCount, bestWithModels, bestWithMCP, workflowLink } = parsed.data; // Check if user is flagged (for auto-delisting and daily limit) const currentUser = await db.user.findUnique({ @@ -183,6 +184,7 @@ export async function POST(request: Request) { requiredMediaCount: requiresMediaUpload ? requiredMediaCount : null, bestWithModels: bestWithModels || [], bestWithMCP: bestWithMCP || [], + workflowLink: workflowLink || null, authorId: session.user.id, categoryId: categoryId || null, // Auto-delist prompts from flagged users diff --git a/src/app/prompts/[id]/edit/page.tsx b/src/app/prompts/[id]/edit/page.tsx index f5e8a929..77f80d55 100644 --- a/src/app/prompts/[id]/edit/page.tsx +++ b/src/app/prompts/[id]/edit/page.tsx @@ -98,6 +98,7 @@ export default async function EditPromptPage({ params }: EditPromptPageProps) { requiredMediaCount: prompt.requiredMediaCount || 1, bestWithModels: (prompt as unknown as { bestWithModels?: string[] }).bestWithModels || [], bestWithMCP: (prompt as unknown as { bestWithMCP?: { command: string; tools?: string[] }[] }).bestWithMCP || [], + workflowLink: (prompt as unknown as { workflowLink?: string }).workflowLink || "", }; // Check if AI generation is enabled diff --git a/src/app/prompts/[id]/page.tsx b/src/app/prompts/[id]/page.tsx index 0b68d63f..b8edc7ff 100644 --- a/src/app/prompts/[id]/page.tsx +++ b/src/app/prompts/[id]/page.tsx @@ -207,6 +207,17 @@ export default async function PromptPage({ params }: PromptPageProps) { .map((conn) => conn.target) .filter((p) => !p.isPrivate && !p.isUnlisted && !p.deletedAt); + // Check if prompt has flow connections (previous/next, not "related") + const flowConnectionCount = await db.promptConnection.count({ + where: { + OR: [ + { sourceId: id, label: { not: "related" } }, + { targetId: id, label: { not: "related" } }, + ], + }, + }); + const hasFlowConnections = flowConnectionCount > 0; + if (!prompt) { notFound(); } @@ -654,6 +665,8 @@ export default async function PromptPage({ params }: PromptPageProps) { isLoggedIn={!!session?.user} currentUserId={session?.user?.id} isAdmin={isAdmin} + workflowLink={(prompt as unknown as { workflowLink?: string | null }).workflowLink} + hasFlowConnections={hasFlowConnections} /> )} diff --git a/src/components/prompts/prompt-connections.tsx b/src/components/prompts/prompt-connections.tsx index 3eb0dda0..e52f35f6 100644 --- a/src/components/prompts/prompt-connections.tsx +++ b/src/components/prompts/prompt-connections.tsx @@ -5,7 +5,7 @@ import { useTranslations } from "next-intl"; import { toast } from "sonner"; import { useRouter } from "next/navigation"; import * as d3 from "d3"; -import { Link2, ArrowUp, ArrowDown, ChevronRight, Trash2 } from "lucide-react"; +import { Link2, ArrowUp, ArrowDown, ChevronRight, Trash2, FastForward, ExternalLink } from "lucide-react"; import { Button } from "@/components/ui/button"; import { AddConnectionDialog } from "./add-connection-dialog"; import { getPromptUrl } from "@/lib/urls"; @@ -44,6 +44,7 @@ interface PromptConnectionsProps { sectionOnly?: boolean; // Only render the expanded section expanded?: boolean; // Controlled expanded state onExpandChange?: (expanded: boolean) => void; // Callback when expanded state changes + workflowLink?: string | null; // URL to test the workflow } interface GraphNode { @@ -453,6 +454,7 @@ export function PromptConnections({ sectionOnly = false, expanded: controlledExpanded, onExpandChange, + workflowLink, }: PromptConnectionsProps) { const t = useTranslations("connectedPrompts"); const router = useRouter(); @@ -1066,43 +1068,58 @@ export function PromptConnections({ if (canEdit && !showExpanded) return null; return ( -
-
-
+
+ {/* Header row - above the container */} +
+

{t("title")}

-

{t("description")}

-
- {canEdit && (
+ {canEdit && ( + <> + + + + )} + {hasConnections && workflowLink && ( - + )}
- )} +
+ {/* Content container */} +
{!hasConnections ? (

{t("noConnections")}

) : hasFullFlow ? ( @@ -1133,6 +1150,7 @@ export function PromptConnections({ )}
)} +
{canEdit && ( string) => z.object({ command: z.string(), tools: z.array(z.string()).optional(), })).optional(), + workflowLink: z.string().url().optional().or(z.literal("")), }).superRefine((data, ctx) => { if (data.type === "SKILL") { const frontmatterError = validateSkillFrontmatter(data.content); @@ -459,6 +460,7 @@ export function PromptForm({ categories, tags, initialData, initialContributors requiredMediaCount: initialData?.requiredMediaCount || 1, bestWithModels: initialData?.bestWithModels || [], bestWithMCP: initialData?.bestWithMCP || [], + workflowLink: initialData?.workflowLink || "", }, }); @@ -1083,6 +1085,7 @@ export function PromptForm({ categories, tags, initialData, initialContributors
+ )} @@ -1433,6 +1436,34 @@ export function PromptForm({ categories, tags, initialData, initialContributors )} + {/* ===== WORKFLOW LINK SECTION ===== */} +
+ ( + + {t("workflowLink")} + + {mode === "create" + ? t("workflowLinkCreateNote") + : t("workflowLinkDescription") + } + + + + + + + )} + /> +
+