mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-23 15:08:16 +02:00
v0.2.1 : anti-boucle + system prompt facon pi
- Nouveau system prompt structure facon pi (identite -> methode/guidelines -> date -> outils + conseils -> contexte machine/skills), injecte via InjectSkills. Corrige les boucles de raisonnement infinies. - Plafond de reflexion par defaut (REASONING_BUDGET=2048 au lieu de -1) : coupe une reflexion qui derape au lieu de tourner a l'infini. - Garde-fou anti-boucle dans runChat : stop si le modele relance exactement le meme appel d'outil plusieurs tours de suite. - Descriptions d'outils enrichies (run_shell, skill). - Bump version 0.2.0 -> 0.2.1.
This commit is contained in:
1 parent
e606206d90
commit
ca5d3f9197
6 files changed
+78
-10
No files matched your search
@@ -162,12 +162,20 @@ func skillsSystemPrompt() string {
|
||||
}
|
||||
list := ListSkills()
|
||||
var b strings.Builder
|
||||
b.WriteString(`Skills = guides Markdown que tu gères toi-même via le tool skill(action, name, content) : read=lire, write=créer/remplacer, append=ajouter à la fin sans réécrire, delete=supprimer. De ta propre initiative, crée ou enrichis un skill quand tu découvres une solution réutilisable (problème enfin résolu, procédure, astuce) ; sa 1re ligne est un titre court (#) servant de description. N'utilise read que si la question concerne un skill listé.`)
|
||||
b.WriteString("Outil disponible — skill(action, name, content) : gère tes guides Markdown réutilisables. action: read=lire, write=créer/remplacer, append=ajouter à la fin, delete=supprimer.\n")
|
||||
b.WriteString("Conseils skill :\n")
|
||||
for _, l := range []string{
|
||||
"De ta propre initiative, crée ou enrichis un skill quand tu découvres une solution réutilisable (problème résolu, procédure, astuce).",
|
||||
"La 1re ligne du contenu est un titre court (#) qui sert de description.",
|
||||
"N'utilise read que si la question concerne un skill listé ci-dessous — sinon n'appelle pas l'outil.",
|
||||
} {
|
||||
b.WriteString("- " + l + "\n")
|
||||
}
|
||||
if len(list) == 0 {
|
||||
b.WriteString("\nAucun skill pour l'instant.")
|
||||
b.WriteString("Skills : aucun pour l'instant.")
|
||||
return b.String()
|
||||
}
|
||||
b.WriteString("\nSkills :\n")
|
||||
b.WriteString("Skills :\n")
|
||||
for _, s := range list {
|
||||
fmt.Fprintf(&b, "- %s: %s\n", s.Name, s.Desc)
|
||||
}
|
||||
|
||||
Reference in new issue
Block a user