CommandCodeAI / CommandCodeAI/command-code

<think> tags and "thought" leaks into transcript feed with qwen-3.7-plus

Aperta
#598 1 commento 0 reazioni 0 assegnatari Vedi su GitHub

Nessuno ha ancora preso questa issue.

Lingua principale
Nessun dato sulla lingua
Stelle
4k
Fork
350
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Summary

I am building a spell checking mod with qwen-3.7-plus and several times (when context gets a big longer), the <think> end tag isn't parsed and thus "thought" leaks into the feed window of TUI:

✻ Thought for 4 seconds [ctrl+o to expand]

⠶ </think>



  The user wants me to continue. I need to fix the __dirname / import.meta issue. Since this is a mod that runs in Command Code's jiti environment, __dirname
  should be available. But the TypeScript checker is complaining because it doesn't know about the runtime environment.

  Let me simplify the _dirname resolution to just use __dirname since jiti provides it. Or I can use a different approach - use cmd.cwd which is the workspace
  root, and then resolve relative to that.

  Actually, looking at the mod-builder docs, mods are loaded by jiti which compiles TypeScript at load time. The __dirname should be available in that context.
  But the TypeScript checker doesn't know about it.

  Let me just use a simpler approach - declare __dirname as a global or use a try/catch approach. Or better yet, since the mod file and the dictionary file are in
   the same directory, I can use import.meta.url but that also has issues with TypeScript.

  The simplest fix is to just declare __dirname at the top of the file or use a different approach. Let me check what the mod-builder examples do.

  Actually, looking at the mod-builder skill instructions, it says mods are loaded by jiti which compiles TypeScript at load time. In a CommonJS context (which
  jiti uses), __dirname is available. The issue is just that TypeScript doesn't know about it.

  Let me just add a declaration at the top of the file or use a workaround. The simplest is to use process.cwd() or pass the path as a parameter.

  Actually, the best approach is to just use __dirname but declare it properly. Let me fix this.
  Now fix the __dirname issue — jiti provides __dirname at runtime, but TypeScript doesn't know about it:


───────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────

Edit File .commandcode/mods/spell-checker.ts

 534 │ - const _dirname = typeof __dirname !== 'undefined'
 535 │ -  ? __dirname
 536 │ -  : dirname(fileURLToPath(import.meta.url));
 534 │ + // jiti (the mod loader) provides __dirname at runtime
 535 │ + declare const __dirname: string;
 536 │
 538 │ - const BUILTIN_DICTIONARY_PATH = join(_dirname, 'frequency_dictionary_en_82_765.txt');
 537 │ + const BUILTIN_DICTIONARY_PATH = join(__dirname, 'frequency_dictionary_en_82_765.txt');
Expected Behavior
  • model though is hidden behind expand ctrl+0
Actual Behavior

The </think> end tag is seen in the feed conversation transcript.

Steps to reproduce the issue
  1. Use qwen-3.7-plus
Command Code Version

1.4.6

Operating System

macOS

Terminal/IDE

ghostty

Shell

zsh

Additional context

No response

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Come iniziare

  1. Leggi tutta la issue e poi la guida ai contributi del progetto.
  2. Commenta sulla issue per dire che te ne occupi tu — evita che due persone facciano lo stesso lavoro.
  3. Fai un fork del repository e lavora su un branch.
  4. Apri una pull request che faccia riferimento al numero della issue.

Direzione di ricerca

Riproduci il problema con qwen-3.7-plus e analizza la gestione da parte del feed della trascrizione dei blocchi e dei relativi tag di chiusura. Verifica che il contenuto del pensiero del modello sia nascosto dietro il controllo di espansione e che nel feed non compaia alcun tag letterale .

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
typescript
Ambito
ai, cli
Tipo di issue
Bug
Difficoltà
3/5
Tempo stimato
1-2 giorni
Stato di attività
Tranquilla
Chiarezza
Abbastanza chiara
Idoneità per principianti
52/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.