mirror of
https://github.com/R0m1k3/Loki.git
synced 2026-10-20 05:28:15 +02:00
Mode Code : les consignes du dépôt (AGENTS.md, CLAUDE.md) font partie du contexte
Repris de context/instructions.ts d'OpenFox. Un dépôt qui documente ses commandes de build et de test, ses conventions et ses pièges le fait dans AGENTS.md ou CLAUDE.md. Le modèle les redécouvrait à coups de read et de bash — quand il les redécouvrait. En mode Code, le premier de ces fichiers trouvé (dépôt cloné détecté, puis racine de la discussion) part avec le contexte du projet, tronqué à 4 000 caractères. Comme le reste du contexte projet, il est déplacé dans le premier message utilisateur : le préfixe système, et le cache de prompt, restent intacts. Les tours de correction et de relance du builder reçoivent désormais le même contexte projet que le tour de build : sans lui, le début du premier message utilisateur changeait et tout le prompt était recalculé. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com>
This commit is contained in:
1 parent
dfafca6fb2
commit
d5632e3595
5 files changed
+102
-3
No files matched your search
@@ -152,9 +152,15 @@ func (c *Conversation) runBuilderTurn(ctx context.Context, caps Caps, temperatur
|
||||
msgs := append([]Message(nil), c.Messages...)
|
||||
c.mu.Unlock()
|
||||
|
||||
final := msgs
|
||||
// Même contexte que le tour de build : projet (description, index mémoire,
|
||||
// trackers) et consignes du dépôt. Sans eux, la reprise changeait le début
|
||||
// du premier message utilisateur — tout le cache de prompt à refaire.
|
||||
final := append(projectSystemMessages(), msgs...)
|
||||
if m, ok := codeInstructionsMessage(caps); ok {
|
||||
final = append([]Message{m}, final...)
|
||||
}
|
||||
if sp := readSysPrompt(); sp != "" {
|
||||
final = append([]Message{{Role: "system", Content: sp}}, msgs...)
|
||||
final = append([]Message{{Role: "system", Content: sp}}, final...)
|
||||
}
|
||||
var content strings.Builder
|
||||
extra, _ := runChat(ctx, InjectSkills(final, caps), temperature, caps, func(ev StreamEvent) bool {
|
||||
|
||||
Reference in new issue
Block a user