Bot-Konzept: Stages & Skills mit ToolCalls

flowchart TB subgraph Stages START["START
Titel: Start
πŸ”’ Nur Buttons"] GETGOALS["GETGOALS
Titel: Meine Ziele
🟒 Freier Chat"] INTRODUCE["INTRODUCE
Titel: Vorstellung
🟒 Freier Chat
❗ Tool-Auswahl Pflicht"] LEARNSTRAT["LEARNSTRAT
Titel: Lernstrategien
πŸ”’ Nur Buttons"] NOTIME["NOTIME
Titel: keine Zeit
🟒 Freier Chat"] ENDED["ENDED
Titel: Abschluss
🟒 Freier Chat"] end s_notime(("(notime)
Tool: handleNoTimeSituation
β†’ NOTIME
Bitte Zeit einplanen")) s_hastime(("(hastime)
Tool: userHatZeit
β†’ GETGOALS
Frage nach Zielen")) s_personalgoal(("(personalgoal)
Tool: verrate_deine_ziele
β†’ INTRODUCE
Bedanke dich, frage nach Kurs/Bot")) s_coursedoc(("(coursedoc)
Allgemeine Info-Funktion")) s_introbuddy(("(introductionbuddy)
Infos ΓΌber den Lernbegleiter")) s_introend(("(introductionend)
Tool: no_more_questions
β†’ LEARNSTRAT
Frage, ob User weitermachen will")) s_handlelearn(("(handlelearnstrat)
Tool: erfahrungs_level_info
β†’ ENDED
Tipps je nach Erfahrungslevel")) s_restartbot(("(restartbot)
Tool: restart_bot
β†’ START
Frage, ob neu starten")) START --> s_notime START --> s_hastime NOTIME --> s_notime NOTIME --> s_hastime GETGOALS --> s_personalgoal INTRODUCE --> s_coursedoc INTRODUCE --> s_introbuddy INTRODUCE --> s_introend LEARNSTRAT --> s_handlelearn ENDED --> s_coursedoc ENDED --> s_restartbot s_hastime --> GETGOALS s_notime --> NOTIME s_personalgoal --> INTRODUCE s_introend --> LEARNSTRAT s_handlelearn --> ENDED s_restartbot --> START