Yuer6327/NoLetMe5

dsh-noletme

NoLetMe — real-time reasoning-trajectory keyword stats for the DeepSeek Harness web chat. Tracks the We-need/Let's efficient trajectory vs the Let-me hesitant trajectory vs the The-user-wants neutral framing in the model's streaming reasoning blocks.

AI 분석

核心用途是分析和监控大模型推理过程中的思维倾向。适合对模型提示词工程、推理行为模式感兴趣的研究者。

패키지
dsh-noletme
버전
0.1.0
라이선스
MIT
최근 업데이트
2026. 8. 16.

설치

$npx -p @deepseek-ai/dsh dsh plugin --profile web add github:Yuer6327/NoLetMe

Usage

  • The panel docks below the session header at the top-right (clears the "Session log" download action), floating over the conversation frame.
  • Collapsed it is a compact rounded-rectangle chip (dot + "NoLetMe" + current mode); click it to expand into the card. Expanded it shows the live status strip (streaming/syncing dot, reasoning blocks / chars, visible replies), the trajectory-mode badge on the same row as its label, per-category share bars, raw research metrics (we · let's · let me · I), the keyword breakdown, and a hesitation-pressure health note.
  • The chip↔card transition is a single surface that morphs on a critically-damped spring (interruptible, anchored at the right dock), and degrades to an instant swap under prefers-reduced-motion. The open state is remembered.
  • The panel body's scrollbar is hover-revealed through the harness's own --dsh-scrollbar-* tokens (invisible until hovered).

Data freshness, persistence, and privacy

  • Reasoning-only, like the evidence: the keyword trajectory is counted over reasoning blocks only — the exact scope of analyze_trajectory_exports.py. If a model streams its output as visible text with little or no reasoning, the panel shows a reasoning-health alert (with the raw reasoning/text totals) instead of fabricating counts from the text.
  • Real-time: stats fold incrementally on every streamed reasoning delta (at most once per animation frame) — nothing re-walks the conversation.
  • Session switching: switching conversations immediately repaints the new session's stats from its local cache, then pages in the complete history (a "syncing" indicator shows meanwhile) so the count covers the whole conversation.
  • Local persistence: each session's folded counts are stored in localStorage (dsh-noletme.stats.), so reopening a conversation does not recount it — only new messages are folded.
  • Robustness: compaction rewrites reset the count once; history paging is capped and aborts when you switch away; storage failures are swallowed.
  • No data leaves your browser.