feat(web): show routines with quick toggle in project overview sidebar
This commit is contained in:
parent
f820c75632
commit
ac9fcce0fb
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr "{toolCount, plural, one {# Tool} other {# Tools}}"
|
msgstr "{toolCount, plural, one {# Tool} other {# Tools}}"
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} arbeitet"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Executor hinzufügen"
|
msgstr "Executor hinzufügen"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr "Ziel hinzufügen"
|
msgstr "Ziel hinzufügen"
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Immer erlaubt"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr "Analysiert die Aufgabe und führt Tools aus…"
|
msgstr "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr "Analysiere das Projekt und gib mir einen kurzen Überblick."
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr "Projekt wird analysiert…"
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Antwort"
|
msgstr "Antwort"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "Zu verknüpfender Bot"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Bots handeln standardmäßig ohne Nachfrage. Füge nur dann eine Ausnahme hinzu, wenn du eine Aktionsart zuerst prüfen möchtest."
|
msgstr "Bots handeln standardmäßig ohne Nachfrage. Füge nur dann eine Ausnahme hinzu, wenn du eine Aktionsart zuerst prüfen möchtest."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Bots arbeiten"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr "Schleife"
|
msgstr "Schleife"
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr "Das sehe ich in den Logs…"
|
msgstr "Das sehe ich in den Logs…"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Hallo, so klinge ich, wenn ich Antworten vorlese."
|
msgstr "Hallo, so klinge ich, wenn wir miteinander sprechen."
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr "Bots ausblenden"
|
msgstr "Bots ausblenden"
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "Zur neuesten Nachricht springen"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Zur beantworteten Nachricht springen"
|
msgstr "Zur beantworteten Nachricht springen"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr "Sag einfach im Chat Bescheid, wenn etwas regelmäßig erledigt werden soll."
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "Keine Ergebnisse"
|
msgstr "Keine Ergebnisse"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "Noch keine Ausführungen"
|
msgstr "Noch keine Ausführungen"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Benachrichtigungen"
|
msgstr "Benachrichtigungen"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Jetzt"
|
msgstr "Jetzt"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr "Privater Arbeitsbereich mit eigenen Bots und Gruppen."
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr "Projekt"
|
msgstr "Projekt"
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr "Projekt · Sessions & Ordner"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr "Lese den Stacktrace…"
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr "Bereit"
|
msgstr "Bereit"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr "Bereit"
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "Denkaufwand"
|
msgstr "Denkaufwand"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr "Nur abrufen"
|
msgstr "Nur abrufen"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Kürzlich"
|
msgstr "Kürzlich"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr "Rund"
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Routine"
|
msgstr "Routine"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Routinen"
|
msgstr "Routinen"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "Ausführen um"
|
msgstr "Ausführen um"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "Ausführungsverlauf"
|
msgstr "Ausführungsverlauf"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Mehr anzeigen"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "Passwort anzeigen"
|
msgstr "Passwort anzeigen"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Einstellungen anzeigen"
|
msgstr "Einstellungen anzeigen"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Aufgabe wird angelernt. Beende das Anlernen, bevor du eine neue Nachrich
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Team"
|
msgstr "Team"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr "Arbeitskanal offen — leg los."
|
msgstr "Arbeitskanal offen — leg los."
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr "Arbeitet"
|
msgstr "Arbeitet"
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Gestern"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "Du"
|
msgstr "Du"
|
||||||
|
|
||||||
@ -6077,8 +6093,8 @@ msgid "Your name"
|
|||||||
msgstr "Dein Name"
|
msgstr "Dein Name"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr "Wenn das an ist, liest dein Oo Antworten vor."
|
msgstr "Wenn das an ist, spricht dein Oo ganz natürlich mit dir."
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
msgid "Your Oo will communicate in this language. You can change it later."
|
msgid "Your Oo will communicate in this language. You can change it later."
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr "{toolCount, plural, one {# tool} other {# tools}}"
|
msgstr "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} is working"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Add Executor"
|
msgstr "Add Executor"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr "Add goal"
|
msgstr "Add goal"
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Always allowed"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr "Analysiert die Aufgabe und führt Tools aus…"
|
msgstr "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr "Analyze the project and give me a brief overview."
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr "Analyzing project…"
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Answer"
|
msgstr "Answer"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "Bot to link"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgstr "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Bots are working"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr "Bow"
|
msgstr "Bow"
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr "Here's what I see in the logs…"
|
msgstr "Here's what I see in the logs…"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Hi, this is how I'll sound when I read replies out loud."
|
msgstr "Hi, this is how I'll sound when we talk."
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr "Hide bots"
|
msgstr "Hide bots"
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "Jump to latest"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Jump to replied message"
|
msgstr "Jump to replied message"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr "Just ask in the chat whenever something should happen regularly."
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "No results"
|
msgstr "No results"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "No runs yet"
|
msgstr "No runs yet"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Notifications"
|
msgstr "Notifications"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Now"
|
msgstr "Now"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr "Private workspace with its own bots and groups."
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr "Project"
|
msgstr "Project"
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr "Project · sessions & folders"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr "Reading the stack trace…"
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr "Ready"
|
msgstr "Ready"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr "Ready"
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "Reasoning effort"
|
msgstr "Reasoning effort"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr "Recall only"
|
msgstr "Recall only"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Recent"
|
msgstr "Recent"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr "Round"
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Routine"
|
msgstr "Routine"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Routines"
|
msgstr "Routines"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "Run at"
|
msgstr "Run at"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "Run history"
|
msgstr "Run history"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Show more"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "Show password"
|
msgstr "Show password"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Show settings"
|
msgstr "Show settings"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Teaching in progress. Stop teaching before sending a new message."
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Team"
|
msgstr "Team"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr "Work channel open — go ahead."
|
msgstr "Work channel open — go ahead."
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr "Working"
|
msgstr "Working"
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Yesterday"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "You"
|
msgstr "You"
|
||||||
|
|
||||||
@ -6077,8 +6093,8 @@ msgid "Your name"
|
|||||||
msgstr "Your name"
|
msgstr "Your name"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr "Your Oo reads replies aloud when this is on."
|
msgstr "Your Oo talks with you naturally when this is on."
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
msgid "Your Oo will communicate in this language. You can change it later."
|
msgid "Your Oo will communicate in this language. You can change it later."
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} está trabajando"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Agregar Executor"
|
msgstr "Agregar Executor"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Siempre permitido"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Responder"
|
msgstr "Responder"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "Bot a vincular"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Los bots actúan sin preguntar de forma predeterminada. Agrega una excepción solo cuando quieras revisar primero un tipo de acción."
|
msgstr "Los bots actúan sin preguntar de forma predeterminada. Agrega una excepción solo cuando quieras revisar primero un tipo de acción."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Los bots están trabajando"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Hola, así sonaré cuando lea las respuestas en voz alta."
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "Ir al más reciente"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Ir al mensaje respondido"
|
msgstr "Ir al mensaje respondido"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "Sin resultados"
|
msgstr "Sin resultados"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "Aún no hay ejecuciones"
|
msgstr "Aún no hay ejecuciones"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Notificaciones"
|
msgstr "Notificaciones"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Ahora"
|
msgstr "Ahora"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "Esfuerzo de razonamiento"
|
msgstr "Esfuerzo de razonamiento"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Recientes"
|
msgstr "Recientes"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Rutina"
|
msgstr "Rutina"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Rutinas"
|
msgstr "Rutinas"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "Ejecutar a las"
|
msgstr "Ejecutar a las"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "Historial de ejecuciones"
|
msgstr "Historial de ejecuciones"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Mostrar más"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "Mostrar contraseña"
|
msgstr "Mostrar contraseña"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Mostrar configuración"
|
msgstr "Mostrar configuración"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Enseñanza en curso: detén la enseñanza antes de enviar un nuevo mensa
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Equipo"
|
msgstr "Equipo"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Ayer"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "Tú"
|
msgstr "Tú"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "Tu nombre"
|
msgstr "Tu nombre"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} काम कर रहा है"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Executor जोड़ें"
|
msgstr "Executor जोड़ें"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "हमेशा अनुमत"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "उत्तर"
|
msgstr "उत्तर"
|
||||||
@ -1031,10 +1036,6 @@ msgstr ""
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "बॉट डिफ़ॉल्ट रूप से बिना पूछे कार्रवाई करते हैं। अपवाद तभी जोड़ें जब आप किसी प्रकार की कार्रवाई की पहले समीक्षा करना चाहते हों।"
|
msgstr "बॉट डिफ़ॉल्ट रूप से बिना पूछे कार्रवाई करते हैं। अपवाद तभी जोड़ें जब आप किसी प्रकार की कार्रवाई की पहले समीक्षा करना चाहते हों।"
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "बॉट काम कर रहे हैं"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "नमस्ते, उत्तर पढ़कर सुनाते समय मेरी आवाज़ ऐसी होगी।"
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "नवीनतम संदेश पर जाएँ"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "जिस संदेश का उत्तर दिया गया उस पर जाएं"
|
msgstr "जिस संदेश का उत्तर दिया गया उस पर जाएं"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "कोई परिणाम नहीं"
|
msgstr "कोई परिणाम नहीं"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "सूचनाएं"
|
msgstr "सूचनाएं"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "अभी"
|
msgstr "अभी"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "रीज़निंग प्रयास"
|
msgstr "रीज़निंग प्रयास"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "हाल के"
|
msgstr "हाल के"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "रूटीन"
|
msgstr "रूटीन"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "रूटीन्स"
|
msgstr "रूटीन्स"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "और दिखाएँ"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "सेटिंग्स दिखाएं"
|
msgstr "सेटिंग्स दिखाएं"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "सिखाना जारी है। नया संदेश भ
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "टीम"
|
msgstr "टीम"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "कल"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "आप"
|
msgstr "आप"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "आपका नाम"
|
msgstr "आपका नाम"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} 작업 중"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Executor 추가"
|
msgstr "Executor 추가"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "항상 허용됨"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "답변"
|
msgstr "답변"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "연결할 Bot"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Bot은 기본적으로 묻지 않고 작업합니다. 먼저 확인하고 싶은 작업만 예외로 추가하세요."
|
msgstr "Bot은 기본적으로 묻지 않고 작업합니다. 먼저 확인하고 싶은 작업만 예외로 추가하세요."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "봇 작업 중"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "안녕하세요. 답변을 소리 내어 읽을 때 이런 목소리로 들립니다."
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "최신 메시지로 이동"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "답장한 메시지로 이동"
|
msgstr "답장한 메시지로 이동"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "검색 결과가 없습니다"
|
msgstr "검색 결과가 없습니다"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "아직 실행 기록이 없습니다"
|
msgstr "아직 실행 기록이 없습니다"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "알림"
|
msgstr "알림"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "지금"
|
msgstr "지금"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "추론 강도"
|
msgstr "추론 강도"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "최근"
|
msgstr "최근"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "자동 실행"
|
msgstr "자동 실행"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "자동 실행"
|
msgstr "자동 실행"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "실행 시간"
|
msgstr "실행 시간"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "실행 기록"
|
msgstr "실행 기록"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "더 보기"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "비밀번호 표시"
|
msgstr "비밀번호 표시"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "설정 보기"
|
msgstr "설정 보기"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "작업을 가르치는 중입니다. 새 메시지를 보내려면 먼
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "팀 공용"
|
msgstr "팀 공용"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "어제"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "나"
|
msgstr "나"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "이름"
|
msgstr "이름"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} está trabalhando"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Adicionar Executor"
|
msgstr "Adicionar Executor"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Sempre permitido"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Resposta"
|
msgstr "Resposta"
|
||||||
@ -1031,10 +1036,6 @@ msgstr ""
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Os bots agem sem perguntar por padrão. Adicione uma exceção apenas quando quiser analisar um tipo de ação primeiro."
|
msgstr "Os bots agem sem perguntar por padrão. Adicione uma exceção apenas quando quiser analisar um tipo de ação primeiro."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Bots estão trabalhando"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Olá, é assim que vou soar quando ler as respostas em voz alta."
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "Ir para a mensagem mais recente"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Ir para a mensagem respondida"
|
msgstr "Ir para a mensagem respondida"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "Nenhum resultado"
|
msgstr "Nenhum resultado"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Notificações"
|
msgstr "Notificações"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Agora"
|
msgstr "Agora"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "Esforço de raciocínio"
|
msgstr "Esforço de raciocínio"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Recente"
|
msgstr "Recente"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Rotina"
|
msgstr "Rotina"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Rotinas"
|
msgstr "Rotinas"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Mostrar mais"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Mostrar configurações"
|
msgstr "Mostrar configurações"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Ensino em andamento. Pare de ensinar antes de enviar uma nova mensagem."
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Equipe"
|
msgstr "Equipe"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Ontem"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "Você"
|
msgstr "Você"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "O seu nome"
|
msgstr "O seu nome"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr "{toolCount, plural, one {# инструмент} few {# инструмента} many {# инструментов} other {# инструмента}}"
|
msgstr "{toolCount, plural, one {# инструмент} few {# инструмента} many {# инструментов} other {# инструмента}}"
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} работает"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Добавить Executor"
|
msgstr "Добавить Executor"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Всегда разрешено"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Ответ"
|
msgstr "Ответ"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "Бот для ссылки"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "По умолчанию боты действуют, не спрашивая. Добавляйте исключение только в том случае, если вы хотите сначала просмотреть тип действия."
|
msgstr "По умолчанию боты действуют, не спрашивая. Добавляйте исключение только в том случае, если вы хотите сначала просмотреть тип действия."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Боты работают"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Привет, вот как я буду звучать, когда буду читать ответы вслух."
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr "Скрыть ботов"
|
msgstr "Скрыть ботов"
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "Перейти к последнему"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Перейти к ответному сообщению"
|
msgstr "Перейти к ответному сообщению"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "Нет результатов"
|
msgstr "Нет результатов"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "Запусков пока нет"
|
msgstr "Запусков пока нет"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Уведомления"
|
msgstr "Уведомления"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Сейчас"
|
msgstr "Сейчас"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr "Приватное пространство со своими ботам
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Недавние"
|
msgstr "Недавние"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Задача"
|
msgstr "Задача"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Задачи"
|
msgstr "Задачи"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "Запустить в"
|
msgstr "Запустить в"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "История запуска"
|
msgstr "История запуска"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Показать ещё"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "Показать пароль"
|
msgstr "Показать пароль"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Показать настройки"
|
msgstr "Показать настройки"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Обучение в процессе. Прекратите обучен
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Команда"
|
msgstr "Команда"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Вчера"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "Вы"
|
msgstr "Вы"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "Ваше имя"
|
msgstr "Ваше имя"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title}, {label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} çalışıyor"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "Executor ekle"
|
msgstr "Executor ekle"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "Her zaman izinli"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "Yanıtla"
|
msgstr "Yanıtla"
|
||||||
@ -1031,10 +1036,6 @@ msgstr ""
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "Botlar varsayılan olarak sormadan hareket eder. Yalnızca belirli bir işlem türünü önce incelemek istediğinde istisna ekle."
|
msgstr "Botlar varsayılan olarak sormadan hareket eder. Yalnızca belirli bir işlem türünü önce incelemek istediğinde istisna ekle."
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Botlar çalışıyor"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "Merhaba, yanıtları sesli okuduğumda böyle duyulacağım."
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "En son mesaja git"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "Yanıtlanan mesaja git"
|
msgstr "Yanıtlanan mesaja git"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "Sonuç yok"
|
msgstr "Sonuç yok"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "Bildirimler"
|
msgstr "Bildirimler"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "Şimdi"
|
msgstr "Şimdi"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "Akıl yürütme düzeyi"
|
msgstr "Akıl yürütme düzeyi"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "Son"
|
msgstr "Son"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "Rutin"
|
msgstr "Rutin"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "Rutinler"
|
msgstr "Rutinler"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "Daha fazla göster"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "Ayarları göster"
|
msgstr "Ayarları göster"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "Öğretme sürüyor. Yeni mesaj göndermeden önce öğretmeyi durdur."
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "Takım"
|
msgstr "Takım"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "Dün"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "Sen"
|
msgstr "Sen"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "Adın"
|
msgstr "Adın"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -386,10 +386,6 @@ msgstr "{title},{label}"
|
|||||||
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
msgid "{toolCount, plural, one {# tool} other {# tools}}"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "{workingBotName} is working"
|
|
||||||
msgstr "{workingBotName} 正在工作"
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "/Users/you/projects/acme"
|
msgid "/Users/you/projects/acme"
|
||||||
@ -549,6 +545,7 @@ msgid "Add Executor"
|
|||||||
msgstr "添加 Executor"
|
msgstr "添加 Executor"
|
||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Add goal"
|
msgid "Add goal"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -737,6 +734,14 @@ msgstr "始终允许"
|
|||||||
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
msgid "Analysiert die Aufgabe und führt Tools aus…"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/Shell.tsx
|
||||||
|
msgid "Analyze the project and give me a brief overview."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Analyzing project…"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/AskCard.tsx
|
#: src/components/AskCard.tsx
|
||||||
msgid "Answer"
|
msgid "Answer"
|
||||||
msgstr "回答"
|
msgstr "回答"
|
||||||
@ -1031,10 +1036,6 @@ msgstr "要关联的 Bot"
|
|||||||
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
msgid "Bots act without asking by default. Add an exception only when you want to review a type of action first."
|
||||||
msgstr "默认情况下 Bot 会直接执行。只有当你想先审核某类操作时,才添加例外。"
|
msgstr "默认情况下 Bot 会直接执行。只有当你想先审核某类操作时,才添加例外。"
|
||||||
|
|
||||||
#: src/pages/shell/transcript.tsx
|
|
||||||
msgid "Bots are working"
|
|
||||||
msgstr "Bot 正在工作"
|
|
||||||
|
|
||||||
#: src/components/OoAtelier.tsx
|
#: src/components/OoAtelier.tsx
|
||||||
msgid "Bow"
|
msgid "Bow"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
@ -2983,10 +2984,11 @@ msgid "Here's what I see in the logs…"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Hi, this is how I'll sound when I read replies out loud."
|
msgid "Hi, this is how I'll sound when we talk."
|
||||||
msgstr "你好,这是我朗读回复时的声音。"
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/sidebar-header.tsx
|
||||||
msgid "Hide bots"
|
msgid "Hide bots"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -3174,6 +3176,10 @@ msgstr "跳到最新"
|
|||||||
msgid "Jump to replied message"
|
msgid "Jump to replied message"
|
||||||
msgstr "跳到被回复的消息"
|
msgstr "跳到被回复的消息"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Just ask in the chat whenever something should happen regularly."
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
msgid "just now"
|
msgid "just now"
|
||||||
@ -3899,6 +3905,7 @@ msgid "No results"
|
|||||||
msgstr "无结果"
|
msgstr "无结果"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "No runs yet"
|
msgid "No runs yet"
|
||||||
msgstr "还没有运行记录"
|
msgstr "还没有运行记录"
|
||||||
|
|
||||||
@ -3957,6 +3964,7 @@ msgid "Notifications"
|
|||||||
msgstr "通知"
|
msgstr "通知"
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Now"
|
msgid "Now"
|
||||||
msgstr "现在"
|
msgstr "现在"
|
||||||
|
|
||||||
@ -4288,10 +4296,6 @@ msgstr ""
|
|||||||
msgid "Project"
|
msgid "Project"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Shell.tsx
|
|
||||||
msgid "Project · sessions & folders"
|
|
||||||
msgstr ""
|
|
||||||
|
|
||||||
#: src/pages/shell/dialogs.tsx
|
#: src/pages/shell/dialogs.tsx
|
||||||
#: src/pages/shell/project-look-dialog.tsx
|
#: src/pages/shell/project-look-dialog.tsx
|
||||||
msgid "Project folder"
|
msgid "Project folder"
|
||||||
@ -4399,6 +4403,10 @@ msgstr ""
|
|||||||
msgid "Ready"
|
msgid "Ready"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
|
msgid "Ready"
|
||||||
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ModelSettingsOverlay.tsx
|
#: src/pages/ModelSettingsOverlay.tsx
|
||||||
msgid "Reasoning effort"
|
msgid "Reasoning effort"
|
||||||
msgstr "推理强度"
|
msgstr "推理强度"
|
||||||
@ -4412,6 +4420,7 @@ msgid "Recall only"
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/ActivityList.tsx
|
#: src/pages/ActivityList.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Recent"
|
msgid "Recent"
|
||||||
msgstr "最近"
|
msgstr "最近"
|
||||||
|
|
||||||
@ -4700,11 +4709,13 @@ msgstr ""
|
|||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/routine-event-line.tsx
|
#: src/pages/shell/routine-event-line.tsx
|
||||||
msgid "Routine"
|
msgid "Routine"
|
||||||
msgstr "例行任务"
|
msgstr "例行任务"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Routines"
|
msgid "Routines"
|
||||||
msgstr "例行任务"
|
msgstr "例行任务"
|
||||||
|
|
||||||
@ -4718,6 +4729,7 @@ msgid "Run at"
|
|||||||
msgstr "运行时间"
|
msgstr "运行时间"
|
||||||
|
|
||||||
#: src/pages/RoutineEditor.tsx
|
#: src/pages/RoutineEditor.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Run history"
|
msgid "Run history"
|
||||||
msgstr "运行记录"
|
msgstr "运行记录"
|
||||||
|
|
||||||
@ -5037,6 +5049,7 @@ msgstr "显示更多"
|
|||||||
msgid "Show password"
|
msgid "Show password"
|
||||||
msgstr "显示密码"
|
msgstr "显示密码"
|
||||||
|
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
#: src/pages/shell/side-panel-header.tsx
|
#: src/pages/shell/side-panel-header.tsx
|
||||||
msgid "Show settings"
|
msgid "Show settings"
|
||||||
msgstr "显示设置"
|
msgstr "显示设置"
|
||||||
@ -5398,6 +5411,7 @@ msgstr "正在示范,发送新消息前请先停止示范。"
|
|||||||
|
|
||||||
#: src/pages/ProjectSessionTimeline.tsx
|
#: src/pages/ProjectSessionTimeline.tsx
|
||||||
#: src/pages/shell/bot-panel.tsx
|
#: src/pages/shell/bot-panel.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Team"
|
msgid "Team"
|
||||||
msgstr "团队"
|
msgstr "团队"
|
||||||
|
|
||||||
@ -5995,6 +6009,7 @@ msgid "Work channel open — go ahead."
|
|||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/components/stage/OoStage.tsx
|
#: src/components/stage/OoStage.tsx
|
||||||
|
#: src/pages/shell/project-overview.tsx
|
||||||
msgid "Working"
|
msgid "Working"
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
@ -6037,6 +6052,7 @@ msgstr "昨天"
|
|||||||
#: src/components/UserProfileSettings.tsx
|
#: src/components/UserProfileSettings.tsx
|
||||||
#: src/components/voice/VoiceStage.tsx
|
#: src/components/voice/VoiceStage.tsx
|
||||||
#: src/pages/Shell.tsx
|
#: src/pages/Shell.tsx
|
||||||
|
#: src/pages/shell/transcript.tsx
|
||||||
msgid "You"
|
msgid "You"
|
||||||
msgstr "你"
|
msgstr "你"
|
||||||
|
|
||||||
@ -6077,7 +6093,7 @@ msgid "Your name"
|
|||||||
msgstr "你的名字"
|
msgstr "你的名字"
|
||||||
|
|
||||||
#: src/pages/VoiceSettingsOverlay.tsx
|
#: src/pages/VoiceSettingsOverlay.tsx
|
||||||
msgid "Your Oo reads replies aloud when this is on."
|
msgid "Your Oo talks with you naturally when this is on."
|
||||||
msgstr ""
|
msgstr ""
|
||||||
|
|
||||||
#: src/pages/Onboarding.tsx
|
#: src/pages/Onboarding.tsx
|
||||||
|
|||||||
@ -435,6 +435,9 @@ export function ShellPage() {
|
|||||||
} | null>(null);
|
} | null>(null);
|
||||||
const [routines, setRoutines] = useState<Routine[]>([]);
|
const [routines, setRoutines] = useState<Routine[]>([]);
|
||||||
const [routinesBotId, setRoutinesBotId] = useState<string | null>(null);
|
const [routinesBotId, setRoutinesBotId] = useState<string | null>(null);
|
||||||
|
const [projectRoutines, setProjectRoutines] = useState<Routine[]>([]);
|
||||||
|
const [projectRoutinesSpaceId, setProjectRoutinesSpaceId] = useState<string | null>(null);
|
||||||
|
const projectRoutinesRequest = useRef(0);
|
||||||
const [routineActiveToggleId, setRoutineActiveToggleId] = useState<string | null>(null);
|
const [routineActiveToggleId, setRoutineActiveToggleId] = useState<string | null>(null);
|
||||||
const routineActiveToggleRequest = useRef(0);
|
const routineActiveToggleRequest = useRef(0);
|
||||||
const [taughtSkills, setTaughtSkills] = useState<TaughtSkill[]>([]);
|
const [taughtSkills, setTaughtSkills] = useState<TaughtSkill[]>([]);
|
||||||
@ -718,6 +721,61 @@ export function ShellPage() {
|
|||||||
[active?.id, groupId, inGroup, pendingAttachments],
|
[active?.id, groupId, inGroup, pendingAttachments],
|
||||||
);
|
);
|
||||||
const activeRoutines = !inGroup && routinesBotId === active?.id ? routines : [];
|
const activeRoutines = !inGroup && routinesBotId === active?.id ? routines : [];
|
||||||
|
const projectBotIds = useMemo(() => {
|
||||||
|
if (!inProject || !activeSpace) return [];
|
||||||
|
const ids = new Set<string>();
|
||||||
|
if (coordinatorBot) ids.add(coordinatorBot.id);
|
||||||
|
for (const member of activeSpace.bots ?? []) ids.add(member.id);
|
||||||
|
for (const bot of bots) {
|
||||||
|
if (bot.spaceId === activeSpace.id) ids.add(bot.id);
|
||||||
|
}
|
||||||
|
return [...ids];
|
||||||
|
}, [inProject, activeSpace, coordinatorBot, bots]);
|
||||||
|
const projectBotIdsRef = useRef<string[]>([]);
|
||||||
|
projectBotIdsRef.current = projectBotIds;
|
||||||
|
const activeProjectSpaceIdRef = useRef<string | null>(
|
||||||
|
inProject && activeSpace ? activeSpace.id : null,
|
||||||
|
);
|
||||||
|
activeProjectSpaceIdRef.current = inProject && activeSpace ? activeSpace.id : null;
|
||||||
|
const refreshProjectRoutines = useCallback(async (extraBotIds?: readonly string[]) => {
|
||||||
|
const spaceId = activeProjectSpaceIdRef.current;
|
||||||
|
if (!spaceId) return;
|
||||||
|
const botIds = [...new Set([...projectBotIdsRef.current, ...(extraBotIds ?? [])])];
|
||||||
|
if (botIds.length === 0) {
|
||||||
|
setProjectRoutines([]);
|
||||||
|
setProjectRoutinesSpaceId(spaceId);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const request = ++projectRoutinesRequest.current;
|
||||||
|
const lists = await Promise.all(
|
||||||
|
botIds.map((id) => rpc.routines.list({ botId: id }).catch(() => null)),
|
||||||
|
);
|
||||||
|
if (request !== projectRoutinesRequest.current || activeProjectSpaceIdRef.current !== spaceId) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
const seen = new Set<string>();
|
||||||
|
const merged: Routine[] = [];
|
||||||
|
for (const list of lists) {
|
||||||
|
if (!list) continue;
|
||||||
|
for (const item of list) {
|
||||||
|
if (!seen.has(item.id)) {
|
||||||
|
seen.add(item.id);
|
||||||
|
merged.push(item);
|
||||||
|
}
|
||||||
|
}
|
||||||
|
}
|
||||||
|
setProjectRoutines(merged);
|
||||||
|
setProjectRoutinesSpaceId(spaceId);
|
||||||
|
}, []);
|
||||||
|
const projectBotIdsKey = projectBotIds.join(",");
|
||||||
|
useEffect(() => {
|
||||||
|
if (!inProject || !activeSpace) {
|
||||||
|
setProjectRoutines([]);
|
||||||
|
setProjectRoutinesSpaceId(null);
|
||||||
|
return;
|
||||||
|
}
|
||||||
|
void refreshProjectRoutines();
|
||||||
|
}, [inProject, activeSpace?.id, projectBotIdsKey, refreshProjectRoutines]);
|
||||||
const activeTaughtSkills = taughtSkillsBotId === active?.id ? taughtSkills : [];
|
const activeTaughtSkills = taughtSkillsBotId === active?.id ? taughtSkills : [];
|
||||||
const recordingSkill = activeTaughtSkills.find((skill) => skill.status === "recording") ?? null;
|
const recordingSkill = activeTaughtSkills.find((skill) => skill.status === "recording") ?? null;
|
||||||
const routeBotId = useRef<string | undefined>(botId);
|
const routeBotId = useRef<string | undefined>(botId);
|
||||||
@ -903,6 +961,11 @@ export function ShellPage() {
|
|||||||
commitComputer(null);
|
commitComputer(null);
|
||||||
setRoutines([]);
|
setRoutines([]);
|
||||||
setRoutinesBotId(null);
|
setRoutinesBotId(null);
|
||||||
|
void refreshProjectRoutines(
|
||||||
|
[snap.leadBotId, ...(snap.members?.map((member) => member.botId) ?? [])].filter(
|
||||||
|
(botId): botId is string => Boolean(botId),
|
||||||
|
),
|
||||||
|
);
|
||||||
// Keep the search-jump viewport; expandedHistoryThread merge still accepts live messages.
|
// Keep the search-jump viewport; expandedHistoryThread merge still accepts live messages.
|
||||||
if (
|
if (
|
||||||
stickToEnd &&
|
stickToEnd &&
|
||||||
@ -962,6 +1025,7 @@ export function ShellPage() {
|
|||||||
if (routines) {
|
if (routines) {
|
||||||
setRoutines(routines);
|
setRoutines(routines);
|
||||||
setRoutinesBotId(id);
|
setRoutinesBotId(id);
|
||||||
|
void refreshProjectRoutines([id]);
|
||||||
}
|
}
|
||||||
if (skills) {
|
if (skills) {
|
||||||
setTaughtSkills(skills);
|
setTaughtSkills(skills);
|
||||||
@ -1409,6 +1473,16 @@ export function ShellPage() {
|
|||||||
if (blocks.some((block) => block.kind === "project_created")) {
|
if (blocks.some((block) => block.kind === "project_created")) {
|
||||||
void refreshBots().catch(() => undefined);
|
void refreshBots().catch(() => undefined);
|
||||||
}
|
}
|
||||||
|
if (blocks.some((block) => block.kind === "event")) {
|
||||||
|
void refreshProjectRoutines();
|
||||||
|
}
|
||||||
|
}
|
||||||
|
if (
|
||||||
|
event.type === "thread.message.updated" ||
|
||||||
|
event.type === "routine.created" ||
|
||||||
|
event.type === "routine.updated"
|
||||||
|
) {
|
||||||
|
void refreshProjectRoutines();
|
||||||
}
|
}
|
||||||
if (event.type === "run.waiting_input" || event.type === "computer.takeover.requested") {
|
if (event.type === "run.waiting_input" || event.type === "computer.takeover.requested") {
|
||||||
ooSound.play("need-you");
|
ooSound.play("need-you");
|
||||||
@ -2689,7 +2763,10 @@ export function ShellPage() {
|
|||||||
const setRoutineActive = useCallback(
|
const setRoutineActive = useCallback(
|
||||||
async (routine: Routine, active: boolean) => {
|
async (routine: Routine, active: boolean) => {
|
||||||
const botId = activeBotId.current;
|
const botId = activeBotId.current;
|
||||||
if (!botId || routine.botId !== botId) return;
|
const inCurrentProject =
|
||||||
|
Boolean(activeProjectSpaceIdRef.current) &&
|
||||||
|
projectBotIdsRef.current.includes(routine.botId);
|
||||||
|
if ((!botId || routine.botId !== botId) && !inCurrentProject) return;
|
||||||
const request = ++routineActiveToggleRequest.current;
|
const request = ++routineActiveToggleRequest.current;
|
||||||
const previousActive = routine.active;
|
const previousActive = routine.active;
|
||||||
setRoutineActiveToggleId(routine.id);
|
setRoutineActiveToggleId(routine.id);
|
||||||
@ -2698,16 +2775,32 @@ export function ShellPage() {
|
|||||||
? current.map((item) => (item.id === routine.id ? { ...item, active } : item))
|
? current.map((item) => (item.id === routine.id ? { ...item, active } : item))
|
||||||
: current,
|
: current,
|
||||||
);
|
);
|
||||||
|
setProjectRoutines((current) =>
|
||||||
|
current.map((item) => (item.id === routine.id ? { ...item, active } : item)),
|
||||||
|
);
|
||||||
try {
|
try {
|
||||||
const saved = await rpc.routines.update({ routineId: routine.id, active });
|
const saved = await rpc.routines.update({ routineId: routine.id, active });
|
||||||
if (routineActiveToggleRequest.current !== request || activeBotId.current !== botId) return;
|
if (
|
||||||
|
routineActiveToggleRequest.current !== request ||
|
||||||
|
(activeBotId.current !== botId && !activeProjectSpaceIdRef.current)
|
||||||
|
) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
setRoutines((current) =>
|
setRoutines((current) =>
|
||||||
routinesBotId === botId
|
routinesBotId === botId
|
||||||
? current.map((item) => (item.id === saved.id ? saved : item))
|
? current.map((item) => (item.id === saved.id ? saved : item))
|
||||||
: current,
|
: current,
|
||||||
);
|
);
|
||||||
|
setProjectRoutines((current) =>
|
||||||
|
current.map((item) => (item.id === saved.id ? saved : item)),
|
||||||
|
);
|
||||||
} catch {
|
} catch {
|
||||||
if (routineActiveToggleRequest.current !== request || activeBotId.current !== botId) return;
|
if (
|
||||||
|
routineActiveToggleRequest.current !== request ||
|
||||||
|
(activeBotId.current !== botId && !activeProjectSpaceIdRef.current)
|
||||||
|
) {
|
||||||
|
return;
|
||||||
|
}
|
||||||
setRoutines((current) =>
|
setRoutines((current) =>
|
||||||
routinesBotId === botId
|
routinesBotId === botId
|
||||||
? current.map((item) =>
|
? current.map((item) =>
|
||||||
@ -2715,6 +2808,11 @@ export function ShellPage() {
|
|||||||
)
|
)
|
||||||
: current,
|
: current,
|
||||||
);
|
);
|
||||||
|
setProjectRoutines((current) =>
|
||||||
|
current.map((item) =>
|
||||||
|
item.id === routine.id ? { ...item, active: previousActive } : item,
|
||||||
|
),
|
||||||
|
);
|
||||||
} finally {
|
} finally {
|
||||||
if (routineActiveToggleRequest.current === request) {
|
if (routineActiveToggleRequest.current === request) {
|
||||||
setRoutineActiveToggleId((current) => (current === routine.id ? null : current));
|
setRoutineActiveToggleId((current) => (current === routine.id ? null : current));
|
||||||
@ -4127,6 +4225,16 @@ export function ShellPage() {
|
|||||||
: inProject && !panel && canvasTab === "sandbox"
|
: inProject && !panel && canvasTab === "sandbox"
|
||||||
? "overview"
|
? "overview"
|
||||||
: canvasTab;
|
: canvasTab;
|
||||||
|
const isOverlayPanel =
|
||||||
|
panel === "settings" ||
|
||||||
|
panel === "routine" ||
|
||||||
|
panel === "create" ||
|
||||||
|
panel === "create-group" ||
|
||||||
|
panel === "group-settings";
|
||||||
|
const routineTargetBot =
|
||||||
|
(editingRoutine ? bots.find((b) => b.id === editingRoutine.botId) : undefined) ??
|
||||||
|
active ??
|
||||||
|
coordinatorBot;
|
||||||
|
|
||||||
const canvasElement = (
|
const canvasElement = (
|
||||||
<aside
|
<aside
|
||||||
@ -4198,7 +4306,7 @@ export function ShellPage() {
|
|||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
|
|
||||||
{inProject && panel !== "settings" && effectiveTab === "overview" && activeSpace ? (
|
{inProject && !isOverlayPanel && effectiveTab === "overview" && activeSpace ? (
|
||||||
<div className="rk-scroll h-full w-full overflow-y-auto px-4 py-4">
|
<div className="rk-scroll h-full w-full overflow-y-auto px-4 py-4">
|
||||||
<ProjectOverview
|
<ProjectOverview
|
||||||
spaceId={activeSpace.id}
|
spaceId={activeSpace.id}
|
||||||
@ -4211,6 +4319,24 @@ export function ShellPage() {
|
|||||||
}
|
}
|
||||||
: undefined
|
: undefined
|
||||||
}
|
}
|
||||||
|
routines={projectRoutinesSpaceId === activeSpace.id ? projectRoutines : []}
|
||||||
|
runningRoutineId={
|
||||||
|
activeSnapshot?.run && isActive(activeSnapshot.run.status)
|
||||||
|
? (activeSnapshot.run.routineId ?? null)
|
||||||
|
: null
|
||||||
|
}
|
||||||
|
togglingRoutineId={routineActiveToggleId}
|
||||||
|
onToggleRoutineActive={(routine, next) =>
|
||||||
|
void setRoutineActive(routine, next)
|
||||||
|
}
|
||||||
|
onOpenRoutine={(routine) => {
|
||||||
|
setRoutineDraft(draftFromRoutine(routine));
|
||||||
|
setRoutineWebhookSecret(null);
|
||||||
|
setEditingRoutine(routine);
|
||||||
|
setRoutineError(null);
|
||||||
|
setPanel("routine");
|
||||||
|
}}
|
||||||
|
onStopRun={() => void stopRun()}
|
||||||
onOpenRun={(run) =>
|
onOpenRun={(run) =>
|
||||||
openSpaceChat(
|
openSpaceChat(
|
||||||
run.spaceId,
|
run.spaceId,
|
||||||
@ -4225,7 +4351,7 @@ export function ShellPage() {
|
|||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
) : !inProject &&
|
) : !inProject &&
|
||||||
panel !== "settings" &&
|
!isOverlayPanel &&
|
||||||
effectiveTab === "overview" &&
|
effectiveTab === "overview" &&
|
||||||
(active ?? coordinatorBot) ? (
|
(active ?? coordinatorBot) ? (
|
||||||
<div className="rk-scroll h-full w-full overflow-y-auto px-4 py-4">
|
<div className="rk-scroll h-full w-full overflow-y-auto px-4 py-4">
|
||||||
@ -4270,7 +4396,7 @@ export function ShellPage() {
|
|||||||
onOpenSettings={() => setPanel("settings")}
|
onOpenSettings={() => setPanel("settings")}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
) : panel === "browser" || (effectiveTab === "browser" && panel !== "settings") ? (
|
) : panel === "browser" || (effectiveTab === "browser" && !isOverlayPanel) ? (
|
||||||
<div className="flex-1 min-h-0 flex flex-col">
|
<div className="flex-1 min-h-0 flex flex-col">
|
||||||
<InAppBrowser
|
<InAppBrowser
|
||||||
onClose={() => {
|
onClose={() => {
|
||||||
@ -4297,7 +4423,7 @@ export function ShellPage() {
|
|||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
</div>
|
</div>
|
||||||
) : effectiveTab === "files" && panel !== "settings" ? (
|
) : effectiveTab === "files" && !isOverlayPanel ? (
|
||||||
<div className="rk-scroll h-full w-full overflow-y-auto px-5 lg:px-7 2xl:px-9 py-[17px]">
|
<div className="rk-scroll h-full w-full overflow-y-auto px-5 lg:px-7 2xl:px-9 py-[17px]">
|
||||||
{(active ?? coordinatorBot) ? (
|
{(active ?? coordinatorBot) ? (
|
||||||
<WorkspaceFilesView botId={(active ?? coordinatorBot)!.id} className="mt-0" />
|
<WorkspaceFilesView botId={(active ?? coordinatorBot)!.id} className="mt-0" />
|
||||||
@ -4431,7 +4557,7 @@ export function ShellPage() {
|
|||||||
}
|
}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
{panel === "routine" && active ? (
|
{panel === "routine" && routineTargetBot ? (
|
||||||
<RoutineEditor
|
<RoutineEditor
|
||||||
draft={routineDraft}
|
draft={routineDraft}
|
||||||
onChange={setRoutineDraft}
|
onChange={setRoutineDraft}
|
||||||
@ -4440,28 +4566,29 @@ export function ShellPage() {
|
|||||||
webhook={{
|
webhook={{
|
||||||
path:
|
path:
|
||||||
typeof window !== "undefined"
|
typeof window !== "undefined"
|
||||||
? `${window.location.origin}/api/v1/bots/${active.id}/webhook`
|
? `${window.location.origin}/api/v1/bots/${routineTargetBot.id}/webhook`
|
||||||
: `/api/v1/bots/${active.id}/webhook`,
|
: `/api/v1/bots/${routineTargetBot.id}/webhook`,
|
||||||
secret: routineWebhookSecret,
|
secret: routineWebhookSecret,
|
||||||
configured: active.webhookConfigured || Boolean(routineWebhookSecret),
|
configured:
|
||||||
|
routineTargetBot.webhookConfigured || Boolean(routineWebhookSecret),
|
||||||
}}
|
}}
|
||||||
githubPath={
|
githubPath={
|
||||||
typeof window !== "undefined"
|
typeof window !== "undefined"
|
||||||
? `${window.location.origin}/api/v1/bots/${active.id}/github`
|
? `${window.location.origin}/api/v1/bots/${routineTargetBot.id}/github`
|
||||||
: `/api/v1/bots/${active.id}/github`
|
: `/api/v1/bots/${routineTargetBot.id}/github`
|
||||||
}
|
}
|
||||||
messageProviders={messagingProviders}
|
messageProviders={messagingProviders}
|
||||||
saving={savingRoutine}
|
saving={savingRoutine}
|
||||||
running={runningRoutine}
|
running={runningRoutine}
|
||||||
error={routineError}
|
error={routineError}
|
||||||
onBack={() => setPanel("computer")}
|
onBack={() => setPanel(inProject ? null : "computer")}
|
||||||
onClose={() => setPanel(null)}
|
onClose={() => setPanel(null)}
|
||||||
onEnsureWebhook={async () => {
|
onEnsureWebhook={async () => {
|
||||||
await ensureWebhookSecret(active.id);
|
await ensureWebhookSecret(routineTargetBot.id);
|
||||||
}}
|
}}
|
||||||
onSave={async () => {
|
onSave={async () => {
|
||||||
if (routineSavePending.current) return;
|
if (routineSavePending.current) return;
|
||||||
const targetBotId = active.id;
|
const targetBotId = routineTargetBot.id;
|
||||||
const targetRoutine = editingRoutine;
|
const targetRoutine = editingRoutine;
|
||||||
if (targetRoutine && targetRoutine.botId !== targetBotId) return;
|
if (targetRoutine && targetRoutine.botId !== targetBotId) return;
|
||||||
if (
|
if (
|
||||||
@ -4480,7 +4607,7 @@ export function ShellPage() {
|
|||||||
try {
|
try {
|
||||||
if (
|
if (
|
||||||
(routineDraft.webhookEnabled || routineDraft.githubEnabled) &&
|
(routineDraft.webhookEnabled || routineDraft.githubEnabled) &&
|
||||||
!active.webhookConfigured &&
|
!routineTargetBot.webhookConfigured &&
|
||||||
!routineWebhookSecret
|
!routineWebhookSecret
|
||||||
) {
|
) {
|
||||||
await ensureWebhookSecret(targetBotId);
|
await ensureWebhookSecret(targetBotId);
|
||||||
@ -4533,23 +4660,34 @@ export function ShellPage() {
|
|||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
routineSaveRequest.current === saveRequest &&
|
routineSaveRequest.current === saveRequest &&
|
||||||
activeBotId.current === targetBotId
|
(activeBotId.current === targetBotId ||
|
||||||
|
Boolean(activeProjectSpaceIdRef.current))
|
||||||
) {
|
) {
|
||||||
setEditingRoutine(saved);
|
setEditingRoutine(saved);
|
||||||
setRoutineDraft(draftFromRoutine(saved));
|
setRoutineDraft(draftFromRoutine(saved));
|
||||||
setRoutines((current) =>
|
if (activeBotId.current === targetBotId) {
|
||||||
routinesBotId === targetBotId || routinesBotId === null
|
setRoutines((current) =>
|
||||||
? current.some((item) => item.id === saved.id)
|
routinesBotId === targetBotId || routinesBotId === null
|
||||||
|
? current.some((item) => item.id === saved.id)
|
||||||
|
? current.map((item) => (item.id === saved.id ? saved : item))
|
||||||
|
: [...current, saved]
|
||||||
|
: current,
|
||||||
|
);
|
||||||
|
setRoutinesBotId(targetBotId);
|
||||||
|
}
|
||||||
|
if (activeProjectSpaceIdRef.current) {
|
||||||
|
setProjectRoutines((current) =>
|
||||||
|
current.some((item) => item.id === saved.id)
|
||||||
? current.map((item) => (item.id === saved.id ? saved : item))
|
? current.map((item) => (item.id === saved.id ? saved : item))
|
||||||
: [...current, saved]
|
: [...current, saved],
|
||||||
: current,
|
);
|
||||||
);
|
}
|
||||||
setRoutinesBotId(targetBotId);
|
|
||||||
}
|
}
|
||||||
} catch (error) {
|
} catch (error) {
|
||||||
if (
|
if (
|
||||||
routineSaveRequest.current !== saveRequest ||
|
routineSaveRequest.current !== saveRequest ||
|
||||||
activeBotId.current !== targetBotId
|
(activeBotId.current !== targetBotId &&
|
||||||
|
!activeProjectSpaceIdRef.current)
|
||||||
) {
|
) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
@ -4563,15 +4701,20 @@ export function ShellPage() {
|
|||||||
}
|
}
|
||||||
if (
|
if (
|
||||||
routineSaveRequest.current !== saveRequest ||
|
routineSaveRequest.current !== saveRequest ||
|
||||||
activeBotId.current !== targetBotId
|
(activeBotId.current !== targetBotId &&
|
||||||
|
!activeProjectSpaceIdRef.current)
|
||||||
) {
|
) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
await refreshThread(targetBotId).catch(() => undefined);
|
if (activeBotId.current === targetBotId) {
|
||||||
|
await refreshThread(targetBotId).catch(() => undefined);
|
||||||
|
} else {
|
||||||
|
await refreshProjectRoutines([targetBotId]).catch(() => undefined);
|
||||||
|
}
|
||||||
}}
|
}}
|
||||||
onTestRun={async () => {
|
onTestRun={async () => {
|
||||||
if (routineRunPending.current) return;
|
if (routineRunPending.current) return;
|
||||||
const targetBotId = active.id;
|
const targetBotId = routineTargetBot.id;
|
||||||
const targetRoutine = editingRoutine;
|
const targetRoutine = editingRoutine;
|
||||||
if (!targetRoutine) return;
|
if (!targetRoutine) return;
|
||||||
routineRunPending.current = true;
|
routineRunPending.current = true;
|
||||||
@ -4579,9 +4722,16 @@ export function ShellPage() {
|
|||||||
setRoutineError(null);
|
setRoutineError(null);
|
||||||
try {
|
try {
|
||||||
await rpc.routines.testRun({ routineId: targetRoutine.id });
|
await rpc.routines.testRun({ routineId: targetRoutine.id });
|
||||||
await refreshThread(targetBotId);
|
|
||||||
} catch (error) {
|
|
||||||
if (activeBotId.current === targetBotId) {
|
if (activeBotId.current === targetBotId) {
|
||||||
|
await refreshThread(targetBotId);
|
||||||
|
} else if (activeGroupId.current) {
|
||||||
|
await refreshGroupThread(activeGroupId.current);
|
||||||
|
}
|
||||||
|
} catch (error) {
|
||||||
|
if (
|
||||||
|
activeBotId.current === targetBotId ||
|
||||||
|
activeProjectSpaceIdRef.current
|
||||||
|
) {
|
||||||
setRoutineError(
|
setRoutineError(
|
||||||
error instanceof Error ? error.message : t`Could not run routine`,
|
error instanceof Error ? error.message : t`Could not run routine`,
|
||||||
);
|
);
|
||||||
@ -4596,7 +4746,7 @@ export function ShellPage() {
|
|||||||
setDeleteRoutineTarget(editingRoutine);
|
setDeleteRoutineTarget(editingRoutine);
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
setPanel("computer");
|
setPanel(inProject ? null : "computer");
|
||||||
}}
|
}}
|
||||||
/>
|
/>
|
||||||
) : null}
|
) : null}
|
||||||
@ -4952,10 +5102,15 @@ export function ShellPage() {
|
|||||||
if (newSpaceDialogVariant === "project") {
|
if (newSpaceDialogVariant === "project") {
|
||||||
try {
|
try {
|
||||||
const main = await rpc.spaces.ensureMain({ spaceId: space.id });
|
const main = await rpc.spaces.ensureMain({ spaceId: space.id });
|
||||||
if (input.goal?.trim()) {
|
const kickoff =
|
||||||
|
input.goal?.trim() ||
|
||||||
|
(input.workspacePath?.trim() || input.gitRemoteUrl?.trim()
|
||||||
|
? t`Analyze the project and give me a brief overview.`
|
||||||
|
: "");
|
||||||
|
if (kickoff) {
|
||||||
await rpc.threads.send({
|
await rpc.threads.send({
|
||||||
groupId: main.groupId,
|
groupId: main.groupId,
|
||||||
text: input.goal.trim(),
|
text: kickoff,
|
||||||
});
|
});
|
||||||
}
|
}
|
||||||
window.location.assign(`/app/g/${main.groupId}`);
|
window.location.assign(`/app/g/${main.groupId}`);
|
||||||
@ -5027,6 +5182,11 @@ export function ShellPage() {
|
|||||||
await rpc.routines.remove({ routineId: target.id });
|
await rpc.routines.remove({ routineId: target.id });
|
||||||
setDeleteRoutineTarget(null);
|
setDeleteRoutineTarget(null);
|
||||||
setEditingRoutine((current) => (current?.id === target.id ? null : current));
|
setEditingRoutine((current) => (current?.id === target.id ? null : current));
|
||||||
|
setProjectRoutines((current) => current.filter((item) => item.id !== target.id));
|
||||||
|
if (activeProjectSpaceIdRef.current && activeBotId.current !== target.botId) {
|
||||||
|
setPanel(null);
|
||||||
|
return;
|
||||||
|
}
|
||||||
if (activeBotId.current !== target.botId) return;
|
if (activeBotId.current !== target.botId) return;
|
||||||
await refreshThread(target.botId);
|
await refreshThread(target.botId);
|
||||||
if (activeBotId.current === target.botId) setPanel("computer");
|
if (activeBotId.current === target.botId) setPanel("computer");
|
||||||
|
|||||||
142
apps/web/src/pages/shell/project-overview.test.tsx
Normal file
142
apps/web/src/pages/shell/project-overview.test.tsx
Normal file
@ -0,0 +1,142 @@
|
|||||||
|
// @vitest-environment jsdom
|
||||||
|
|
||||||
|
import type { Routine, Space } from "@rakazo/contracts";
|
||||||
|
import { act } from "react";
|
||||||
|
import type { Root } from "react-dom/client";
|
||||||
|
import { createRoot } from "react-dom/client";
|
||||||
|
import { afterEach, beforeEach, describe, expect, it, vi } from "vitest";
|
||||||
|
|
||||||
|
(globalThis as Record<string, unknown>).IS_REACT_ACT_ENVIRONMENT = true;
|
||||||
|
|
||||||
|
vi.mock("@lingui/core/macro", () => ({
|
||||||
|
t: (parts: TemplateStringsArray, ...values: unknown[]) =>
|
||||||
|
parts.reduce(
|
||||||
|
(text, part, index) => text + part + (index < values.length ? values[index] : ""),
|
||||||
|
"",
|
||||||
|
),
|
||||||
|
}));
|
||||||
|
|
||||||
|
vi.mock("@lingui/react/macro", () => {
|
||||||
|
const t = (parts: TemplateStringsArray, ...values: unknown[]) =>
|
||||||
|
parts.reduce(
|
||||||
|
(text, part, index) => text + part + (index < values.length ? values[index] : ""),
|
||||||
|
"",
|
||||||
|
);
|
||||||
|
return {
|
||||||
|
useLingui: () => ({ t }),
|
||||||
|
Trans: ({ children }: { children: React.ReactNode }) => children,
|
||||||
|
};
|
||||||
|
});
|
||||||
|
|
||||||
|
import { ProjectOverview } from "./project-overview";
|
||||||
|
|
||||||
|
const sampleSpace: Space = {
|
||||||
|
id: "space-project-1",
|
||||||
|
name: "Garten",
|
||||||
|
isDefault: false,
|
||||||
|
canEdit: true,
|
||||||
|
canDelete: true,
|
||||||
|
hasContent: true,
|
||||||
|
bots: [],
|
||||||
|
groups: [],
|
||||||
|
externalConversations: [],
|
||||||
|
botSections: [],
|
||||||
|
};
|
||||||
|
|
||||||
|
const sampleRoutine: Routine = {
|
||||||
|
id: "routine-1",
|
||||||
|
botId: "bot-1",
|
||||||
|
name: "Morning check-in",
|
||||||
|
prompt: "Summarize project status",
|
||||||
|
crons: ["0 9 * * *"],
|
||||||
|
timezone: "Europe/Berlin",
|
||||||
|
active: true,
|
||||||
|
notify: true,
|
||||||
|
webhookEnabled: false,
|
||||||
|
githubEnabled: false,
|
||||||
|
messageProvider: null,
|
||||||
|
lastRunAt: null,
|
||||||
|
nextRunAt: "2026-10-20T07:00:00.000Z",
|
||||||
|
createdAt: "2026-10-19T07:00:00.000Z",
|
||||||
|
coachKey: null,
|
||||||
|
};
|
||||||
|
|
||||||
|
describe("ProjectOverview routines section", () => {
|
||||||
|
let container: HTMLDivElement;
|
||||||
|
let root: Root;
|
||||||
|
|
||||||
|
beforeEach(() => {
|
||||||
|
container = document.createElement("div");
|
||||||
|
document.body.appendChild(container);
|
||||||
|
root = createRoot(container);
|
||||||
|
});
|
||||||
|
|
||||||
|
afterEach(() => {
|
||||||
|
act(() => {
|
||||||
|
root.unmount();
|
||||||
|
});
|
||||||
|
container.remove();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("shows a customer-friendly hint to create routines via chat when no routines exist", () => {
|
||||||
|
act(() => {
|
||||||
|
root.render(
|
||||||
|
<ProjectOverview
|
||||||
|
spaceId={sampleSpace.id}
|
||||||
|
space={sampleSpace}
|
||||||
|
routines={[]}
|
||||||
|
onOpenRun={() => undefined}
|
||||||
|
/>,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
const overview = container.querySelector('[data-testid="project-overview"]');
|
||||||
|
expect(overview).not.toBeNull();
|
||||||
|
expect(overview?.textContent).toContain("Routines");
|
||||||
|
expect(overview?.textContent).toContain(
|
||||||
|
"Just ask in the chat whenever something should happen regularly.",
|
||||||
|
);
|
||||||
|
expect(container.querySelector('[data-testid="routine-list-row"]')).toBeNull();
|
||||||
|
});
|
||||||
|
|
||||||
|
it("renders existing routines with a toggle to quickly turn them on and off", () => {
|
||||||
|
const onToggleRoutineActive = vi.fn();
|
||||||
|
const onOpenRoutine = vi.fn();
|
||||||
|
|
||||||
|
act(() => {
|
||||||
|
root.render(
|
||||||
|
<ProjectOverview
|
||||||
|
spaceId={sampleSpace.id}
|
||||||
|
space={sampleSpace}
|
||||||
|
routines={[sampleRoutine]}
|
||||||
|
onToggleRoutineActive={onToggleRoutineActive}
|
||||||
|
onOpenRoutine={onOpenRoutine}
|
||||||
|
onOpenRun={() => undefined}
|
||||||
|
/>,
|
||||||
|
);
|
||||||
|
});
|
||||||
|
|
||||||
|
const row = container.querySelector('[data-testid="routine-list-row"]');
|
||||||
|
expect(row).not.toBeNull();
|
||||||
|
expect(row?.textContent).toContain("Morning check-in");
|
||||||
|
|
||||||
|
const toggle = container.querySelector(
|
||||||
|
'[data-testid="routine-list-active-toggle"]',
|
||||||
|
) as HTMLElement | null;
|
||||||
|
expect(toggle).not.toBeNull();
|
||||||
|
expect(toggle?.getAttribute("aria-checked")).toBe("true");
|
||||||
|
|
||||||
|
act(() => {
|
||||||
|
toggle?.click();
|
||||||
|
});
|
||||||
|
expect(onToggleRoutineActive).toHaveBeenCalledTimes(1);
|
||||||
|
expect(onToggleRoutineActive).toHaveBeenCalledWith(sampleRoutine, false);
|
||||||
|
|
||||||
|
const openButton = row?.querySelector("button") as HTMLButtonElement | null;
|
||||||
|
act(() => {
|
||||||
|
openButton?.click();
|
||||||
|
});
|
||||||
|
expect(onOpenRoutine).toHaveBeenCalledTimes(1);
|
||||||
|
expect(onOpenRoutine).toHaveBeenCalledWith(sampleRoutine);
|
||||||
|
});
|
||||||
|
});
|
||||||
@ -22,6 +22,12 @@ export function ProjectOverview({
|
|||||||
spaceId,
|
spaceId,
|
||||||
space,
|
space,
|
||||||
coordinator,
|
coordinator,
|
||||||
|
routines = [],
|
||||||
|
runningRoutineId,
|
||||||
|
togglingRoutineId,
|
||||||
|
onToggleRoutineActive,
|
||||||
|
onOpenRoutine,
|
||||||
|
onStopRun,
|
||||||
onOpenRun,
|
onOpenRun,
|
||||||
onOpenBot,
|
onOpenBot,
|
||||||
onOpenNewInquiry,
|
onOpenNewInquiry,
|
||||||
@ -30,6 +36,12 @@ export function ProjectOverview({
|
|||||||
spaceId: string;
|
spaceId: string;
|
||||||
space?: Space;
|
space?: Space;
|
||||||
coordinator?: { threadId: string; botId?: string };
|
coordinator?: { threadId: string; botId?: string };
|
||||||
|
routines?: readonly Routine[];
|
||||||
|
runningRoutineId?: string | null;
|
||||||
|
togglingRoutineId?: string | null;
|
||||||
|
onToggleRoutineActive?: (routine: Routine, active: boolean) => void;
|
||||||
|
onOpenRoutine?: (routine: Routine) => void;
|
||||||
|
onStopRun?: () => void;
|
||||||
onOpenRun: (run: RunActivityRow) => void;
|
onOpenRun: (run: RunActivityRow) => void;
|
||||||
onOpenBot?: (botId: string) => void;
|
onOpenBot?: (botId: string) => void;
|
||||||
onOpenNewInquiry?: () => void;
|
onOpenNewInquiry?: () => void;
|
||||||
@ -71,6 +83,14 @@ export function ProjectOverview({
|
|||||||
const gitRemote = space?.workspace?.git?.remoteUrl;
|
const gitRemote = space?.workspace?.git?.remoteUrl;
|
||||||
const goal = space?.goal;
|
const goal = space?.goal;
|
||||||
const projectBots = space?.bots ?? [];
|
const projectBots = space?.bots ?? [];
|
||||||
|
const coordinatorWorking =
|
||||||
|
projectBots.some(
|
||||||
|
(member) =>
|
||||||
|
member.status &&
|
||||||
|
member.status !== "idle" &&
|
||||||
|
member.status !== "ready" &&
|
||||||
|
member.status !== "done",
|
||||||
|
) || activity.active.some((row) => row.spaceId === spaceId);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<div
|
<div
|
||||||
@ -237,8 +257,48 @@ export function ProjectOverview({
|
|||||||
) : null}
|
) : null}
|
||||||
</div>
|
</div>
|
||||||
) : isProjectSpace ? (
|
) : isProjectSpace ? (
|
||||||
<div className="rounded-xl border border-border/60 bg-card/30 px-3.5 py-3 text-ui-body-sm text-muted-foreground">
|
coordinatorWorking ? (
|
||||||
<Trans>No runs yet</Trans>
|
<div className="flex items-center gap-2 rounded-xl border border-border/60 bg-card/30 px-3.5 py-3 text-ui-body-sm text-foreground">
|
||||||
|
<span aria-hidden="true" className="size-2 rounded-full bg-warning animate-pulse" />
|
||||||
|
<Trans>Analyzing project…</Trans>
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<div className="rounded-xl border border-border/60 bg-card/30 px-3.5 py-3 text-ui-body-sm text-muted-foreground">
|
||||||
|
<Trans>No runs yet</Trans>
|
||||||
|
</div>
|
||||||
|
)
|
||||||
|
) : null}
|
||||||
|
|
||||||
|
{isProjectSpace ? (
|
||||||
|
<div className="space-y-2">
|
||||||
|
<div className="flex items-center justify-between px-1">
|
||||||
|
<span className="text-ui-label font-semibold uppercase tracking-wider text-muted-foreground">
|
||||||
|
<Trans>Routines</Trans>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
|
||||||
|
{routines.length > 0 ? (
|
||||||
|
<div className="rounded-xl border border-border/60 bg-card/30 p-1.5 space-y-0.5">
|
||||||
|
{routines.map((routine) => (
|
||||||
|
<RoutineListRow
|
||||||
|
key={routine.id}
|
||||||
|
routine={routine}
|
||||||
|
running={runningRoutineId === routine.id}
|
||||||
|
togglingActive={togglingRoutineId === routine.id}
|
||||||
|
onActiveChange={(next) => onToggleRoutineActive?.(routine, next)}
|
||||||
|
onOpen={() => onOpenRoutine?.(routine)}
|
||||||
|
onStop={() => onStopRun?.()}
|
||||||
|
/>
|
||||||
|
))}
|
||||||
|
</div>
|
||||||
|
) : (
|
||||||
|
<div className="flex items-center gap-2 rounded-xl border border-border/60 bg-card/30 px-3.5 py-2.5 text-ui-body-sm text-muted-foreground">
|
||||||
|
<Clock size={14} className="shrink-0" />
|
||||||
|
<span>
|
||||||
|
<Trans>Just ask in the chat whenever something should happen regularly.</Trans>
|
||||||
|
</span>
|
||||||
|
</div>
|
||||||
|
)}
|
||||||
</div>
|
</div>
|
||||||
) : null}
|
) : null}
|
||||||
</div>
|
</div>
|
||||||
@ -430,7 +490,7 @@ export function AgentOverview({
|
|||||||
<div className="flex items-center gap-2 rounded-xl border border-border/60 bg-card/30 px-3.5 py-2.5 text-ui-body-sm text-muted-foreground">
|
<div className="flex items-center gap-2 rounded-xl border border-border/60 bg-card/30 px-3.5 py-2.5 text-ui-body-sm text-muted-foreground">
|
||||||
<Clock size={14} className="shrink-0" />
|
<Clock size={14} className="shrink-0" />
|
||||||
<span>
|
<span>
|
||||||
<Trans>On a schedule</Trans>
|
<Trans>Just ask in the chat whenever something should happen regularly.</Trans>
|
||||||
</span>
|
</span>
|
||||||
</div>
|
</div>
|
||||||
)}
|
)}
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user