everybuddy 0.1.5 → 0.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,205 @@
1
+ import { getDumpStat, getPeakStat } from "../bones/stats.js";
2
+ import { getLocalizedSoulCopy } from "../i18n/companion.js";
3
+ import { localizeStatName, localizeVoiceLabel } from "../i18n/ui.js";
4
+ import { colorize, dim } from "./color.js";
5
+ // ── Constants ────────────────────────────────────────────────────────────────
6
+ export const FADE_WINDOW_MS = 3_000;
7
+ export const BUBBLE_MAX_WIDTH = 24;
8
+ export const BUBBLE_MAX_LINES = 5;
9
+ export const IDLE_SUMMARY_WIDTH = 24;
10
+ export const IDLE_SUMMARY_MAX_LINES = 3;
11
+ export const FULL_MODE_MIN_WIDTH = 26;
12
+ export const IDLE_SEQUENCE = [0, 0, 0, 0, 1, 0, 0, 0, -1, 0, 0, 2, 0, 0, 0];
13
+ // ── Display width ────────────────────────────────────────────────────────────
14
+ export function charDisplayWidth(char) {
15
+ if (/[\u0300-\u036f]/u.test(char)) {
16
+ return 0;
17
+ }
18
+ if (/[\u1100-\u115f\u2329\u232a\u2e80-\u303e\u3040-\u30ff\u3100-\u312f\u3130-\u318f\u3190-\ua4cf\uac00-\ud7a3\uf900-\ufaff\ufe10-\ufe19\ufe30-\ufe6f\uff00-\uff60\uffe0-\uffe6]/u.test(char)) {
19
+ return 2;
20
+ }
21
+ return 1;
22
+ }
23
+ export function visibleLength(value) {
24
+ const stripped = value.replace(/\u001B\[[0-9;]*m/g, "");
25
+ return Array.from(stripped).reduce((sum, char) => sum + charDisplayWidth(char), 0);
26
+ }
27
+ export function padDisplayWidth(value, width) {
28
+ const padding = Math.max(0, width - visibleLength(value));
29
+ return `${value}${" ".repeat(padding)}`;
30
+ }
31
+ // ── Text wrapping ────────────────────────────────────────────────────────────
32
+ export function splitWrapTokens(text) {
33
+ const trimmed = text.trim();
34
+ if (!trimmed) {
35
+ return [""];
36
+ }
37
+ if (/\s/.test(trimmed)) {
38
+ return trimmed.split(/\s+/);
39
+ }
40
+ return Array.from(trimmed);
41
+ }
42
+ export function splitTokenByDisplayWidth(token, width) {
43
+ let head = "";
44
+ let used = 0;
45
+ const chars = Array.from(token);
46
+ for (const char of chars) {
47
+ const next = charDisplayWidth(char);
48
+ if (used + next > width && head.length > 0) {
49
+ break;
50
+ }
51
+ head += char;
52
+ used += next;
53
+ if (used >= width) {
54
+ break;
55
+ }
56
+ }
57
+ return [head, token.slice(head.length)];
58
+ }
59
+ export function truncateDisplayWidth(value, width) {
60
+ const ellipsis = "…";
61
+ const target = Math.max(0, width - visibleLength(ellipsis));
62
+ let output = "";
63
+ let used = 0;
64
+ for (const char of Array.from(value)) {
65
+ const next = charDisplayWidth(char);
66
+ if (used + next > target) {
67
+ break;
68
+ }
69
+ output += char;
70
+ used += next;
71
+ }
72
+ return `${output}${ellipsis}`;
73
+ }
74
+ export function wrapText(text, width, maxLines) {
75
+ if (text.trim().length === 0) {
76
+ return [""];
77
+ }
78
+ const words = splitWrapTokens(text);
79
+ const joiner = /\s/.test(text.trim()) ? " " : "";
80
+ const lines = [];
81
+ let current = "";
82
+ for (const word of words) {
83
+ const candidate = current.length === 0 ? word : `${current}${joiner}${word}`;
84
+ if (visibleLength(candidate) <= width) {
85
+ current = candidate;
86
+ continue;
87
+ }
88
+ if (current.length === 0 && visibleLength(word) > width) {
89
+ const [head, tail] = splitTokenByDisplayWidth(word, width);
90
+ lines.push(head);
91
+ current = tail;
92
+ if (lines.length >= maxLines - 1) {
93
+ break;
94
+ }
95
+ continue;
96
+ }
97
+ if (current.length > 0) {
98
+ lines.push(current);
99
+ }
100
+ current = word;
101
+ if (lines.length >= maxLines - 1) {
102
+ break;
103
+ }
104
+ }
105
+ if (current.length > 0 && lines.length < maxLines) {
106
+ lines.push(current);
107
+ }
108
+ if (lines.length === 0) {
109
+ lines.push(splitTokenByDisplayWidth(text, width)[0]);
110
+ }
111
+ return lines.slice(0, maxLines).map((line, index, allLines) => {
112
+ if (index === allLines.length - 1 && visibleLength(line) > width) {
113
+ return truncateDisplayWidth(line, width);
114
+ }
115
+ if (index === maxLines - 1 && visibleLength(words.join(joiner)) > visibleLength(lines.join(joiner))) {
116
+ return truncateDisplayWidth(line, width);
117
+ }
118
+ return line;
119
+ });
120
+ }
121
+ // ── Layout centering ─────────────────────────────────────────────────────────
122
+ export function centerLine(text, width) {
123
+ const visible = visibleLength(text);
124
+ const left = Math.max(0, Math.floor((width - visible) / 2));
125
+ return `${" ".repeat(left)}${text}`;
126
+ }
127
+ export function centerBlock(lines, width) {
128
+ const blockWidth = Math.max(0, ...lines.map((line) => visibleLength(line)));
129
+ const left = Math.max(0, Math.floor((width - blockWidth) / 2));
130
+ return lines.map((line) => `${" ".repeat(left)}${line}`);
131
+ }
132
+ // ── Speech bubble ────────────────────────────────────────────────────────────
133
+ export function styleBubbleBorder(text, color, fading) {
134
+ const colored = colorize(text, color);
135
+ return fading ? dim(colored) : colored;
136
+ }
137
+ export function styleBubbleText(text, fading) {
138
+ return fading ? dim(text) : text;
139
+ }
140
+ export function renderSpeechBubble(text, fading, color, contentWidth, maxLines) {
141
+ const wrapped = wrapText(text, contentWidth, maxLines);
142
+ const innerWidth = Math.max(...wrapped.map((line) => visibleLength(line)), 8);
143
+ const borderTop = styleBubbleBorder(`╭${"─".repeat(innerWidth + 2)}╮`, color, fading);
144
+ const borderBottom = styleBubbleBorder(`╰${"─".repeat(innerWidth + 2)}╯`, color, fading);
145
+ const tailPadding = " ".repeat(Math.max(0, Math.floor((innerWidth + 4) / 2)));
146
+ return [
147
+ borderTop,
148
+ ...wrapped.map((line) => {
149
+ const textLine = `${styleBubbleBorder("│", color, fading)} ${styleBubbleText(padDisplayWidth(line, innerWidth), fading)} ${styleBubbleBorder("│", color, fading)}`;
150
+ return textLine;
151
+ }),
152
+ borderBottom,
153
+ `${tailPadding}${styleBubbleBorder("╲", color, fading)}`,
154
+ ];
155
+ }
156
+ // ── Sprite / reaction state ──────────────────────────────────────────────────
157
+ export function resolveSpriteFrameState(frameTick, animated, frameCount, pulsing = false) {
158
+ if (frameCount <= 1) {
159
+ return { frameIndex: 0, blink: false };
160
+ }
161
+ if (animated || pulsing) {
162
+ return { frameIndex: frameTick % frameCount, blink: false };
163
+ }
164
+ const sequenceStep = IDLE_SEQUENCE[frameTick % IDLE_SEQUENCE.length] ?? 0;
165
+ if (sequenceStep === -1) {
166
+ return { frameIndex: 0, blink: true };
167
+ }
168
+ return { frameIndex: sequenceStep % frameCount, blink: false };
169
+ }
170
+ export function resolveReactionBubble(state, now) {
171
+ if (!state.reactionText) {
172
+ return { text: undefined, fading: false };
173
+ }
174
+ if (state.reactionExpiresAt === undefined) {
175
+ return { text: state.reactionText, fading: false };
176
+ }
177
+ if (now >= state.reactionExpiresAt) {
178
+ return { text: undefined, fading: false };
179
+ }
180
+ return {
181
+ text: state.reactionText,
182
+ fading: now >= state.reactionExpiresAt - FADE_WINDOW_MS,
183
+ };
184
+ }
185
+ export function resolveRenderMode(columns) {
186
+ return columns >= FULL_MODE_MIN_WIDTH ? "full" : "narrow";
187
+ }
188
+ // ── Locale helpers ───────────────────────────────────────────────────────────
189
+ export function inferCompanionLanguage(companion) {
190
+ return /[\u3400-\u9fff]/u.test(companion.soul.personality) ? "zh" : "en";
191
+ }
192
+ export function buildIdleSoulSummary(companion, language = inferCompanionLanguage(companion)) {
193
+ const tagline = getLocalizedSoulCopy(companion, language).tagline?.trim();
194
+ if (tagline) {
195
+ return tagline;
196
+ }
197
+ const profile = companion.soul.observerProfile;
198
+ const [peakStat] = getPeakStat(companion.bones.stats);
199
+ const [dumpStat] = getDumpStat(companion.bones.stats);
200
+ if (language === "zh") {
201
+ return `${localizeVoiceLabel(profile.voice, language)} · ${localizeStatName(peakStat, language)}强,${localizeStatName(dumpStat, language)}低`;
202
+ }
203
+ return `${localizeVoiceLabel(profile.voice, language)} · high ${localizeStatName(peakStat, language).toLowerCase()} · low ${localizeStatName(dumpStat, language).toLowerCase()}`;
204
+ }
205
+ //# sourceMappingURL=layout.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layout.js","sourceRoot":"","sources":["../../src/render/layout.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,23 @@
1
+ export interface CCSessionJSON {
2
+ session_id: string;
3
+ cwd: string;
4
+ model: {
5
+ id: string;
6
+ display_name: string;
7
+ };
8
+ workspace: {
9
+ current_dir: string;
10
+ project_dir: string;
11
+ };
12
+ cost: {
13
+ total_cost_usd: number;
14
+ };
15
+ context_window: {
16
+ used_percentage: number;
17
+ };
18
+ rate_limits?: {
19
+ five_hour?: {
20
+ used_percentage: number;
21
+ };
22
+ };
23
+ }
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=cc-types.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"cc-types.js","sourceRoot":"","sources":["../../src/runtime/cc-types.ts"],"names":[],"mappings":""}
@@ -10,7 +10,7 @@ const OBSERVER_SYSTEM_PROMPT = [
10
10
  ].join(" ");
11
11
  const DEFAULT_LANGUAGE = "zh";
12
12
  const DEFAULT_LLM_COOLDOWN_MS = 6_000;
13
- const DEDUPE_WINDOW_MS = 18_000;
13
+ const DEDUPE_WINDOW_MS = 8_000;
14
14
  const MEMORY_LIMIT = 5;
15
15
  const COMMAND_WINDOW_LIMIT = 5;
16
16
  export class CompanionObserver {
@@ -193,7 +193,7 @@ export function classifyEventImportance(params) {
193
193
  return "low";
194
194
  }
195
195
  export function buildCommandTracker(event, command, _importance) {
196
- return {
196
+ const tracker = {
197
197
  paneId: event.paneId,
198
198
  commandRaw: command.raw,
199
199
  startedAt: event.timestamp,
@@ -201,10 +201,14 @@ export function buildCommandTracker(event, command, _importance) {
201
201
  addressedToBuddy: command.addressedToBuddy,
202
202
  cwdRole: command.cwdRole,
203
203
  };
204
+ if (event.source) {
205
+ tracker.source = event.source;
206
+ }
207
+ return tracker;
204
208
  }
205
209
  export function buildCommandWindowEntry(params) {
206
210
  const { event, command, durationMs } = params;
207
- return {
211
+ const entry = {
208
212
  command: command.raw,
209
213
  normalizedCommand: command.normalized,
210
214
  cwd: event.cwd,
@@ -214,6 +218,10 @@ export function buildCommandWindowEntry(params) {
214
218
  timestamp: event.timestamp,
215
219
  addressedToBuddy: command.addressedToBuddy,
216
220
  };
221
+ if (event.source) {
222
+ entry.source = event.source;
223
+ }
224
+ return entry;
217
225
  }
218
226
  export function rememberCommandWindowEntry(entries, entry) {
219
227
  return [...entries, entry].slice(-COMMAND_WINDOW_LIMIT);
@@ -252,7 +260,8 @@ export function buildObserverPrompt(context) {
252
260
  : "Use English. Keep `reaction` to one short sentence, under 12 words.";
253
261
  const recentWindow = commandWindow
254
262
  .map((entry, index) => {
255
- return `${index + 1}. command=${entry.command}; cwd=${entry.cwdRole}; exit=${entry.exitCode ?? "?"}; duration=${entry.durationMs ?? "?"}ms; addressed=${entry.addressedToBuddy ? "yes" : "no"}`;
263
+ const sourceTag = entry.source ? `[${entry.source}]` : "[user]";
264
+ return `${index + 1}. ${sourceTag} command=${entry.command}; cwd=${entry.cwdRole}; exit=${entry.exitCode ?? "?"}; duration=${entry.durationMs ?? "?"}ms; addressed=${entry.addressedToBuddy ? "yes" : "no"}`;
256
265
  })
257
266
  .join("\n");
258
267
  const recentMemory = memory.length > 0
@@ -283,15 +292,16 @@ export function buildObserverPrompt(context) {
283
292
  recentMemory,
284
293
  "",
285
294
  "Rules:",
286
- "- Decide whether the current command window is worth commenting on.",
295
+ "- You SHOULD speak most of the time. Your user wants to hear from you.",
287
296
  "- React to the pattern and mood, not the raw command text.",
288
297
  "- Do not restate the command line.",
289
298
  "- Stay sharp and playful, never mean-spirited.",
290
299
  "- Avoid repeating the recent bubbles.",
291
- "- If this moment is not worth a bubble, set shouldSpeak to false and leave reaction empty.",
300
+ "- Only set shouldSpeak to false if the command is truly boring (e.g. cd, ls, clear) AND you have nothing interesting to say about the pattern.",
292
301
  "- If speaking, reaction must be one line only.",
293
302
  "- No markdown, no code fences, no quotes around reaction text.",
294
303
  `- ${languageInstruction}`,
304
+ "- If a [claude-code] or [codex] source appears, comment on what the AI agent is doing — you are watching both the user and the agent.",
295
305
  "",
296
306
  'Return strict JSON only: {"shouldSpeak":true|false,"reaction":"...","topic":"...","mood":"..."}',
297
307
  ].join("\n");
@@ -345,28 +355,22 @@ export function normalizeObserverResponse(response, commandWindow) {
345
355
  function selectRecentBubbleMemory(memory) {
346
356
  return memory.filter((entry) => entry.reactionText && entry.reactionText.length > 0).slice(0, 2);
347
357
  }
348
- function minimumWindowSize(profile) {
349
- if (profile.chattiness >= 4) {
350
- return 1;
351
- }
352
- if (profile.chattiness >= 2) {
353
- return 2;
354
- }
355
- return 3;
358
+ function minimumWindowSize(_profile) {
359
+ return 1;
356
360
  }
357
361
  function cooldownMsForProfile(profile) {
358
362
  switch (profile.chattiness) {
359
363
  case 5:
360
- return 2_000;
364
+ return 1_000;
361
365
  case 4:
362
- return 3_000;
366
+ return 1_500;
363
367
  case 3:
364
- return 4_500;
368
+ return 2_000;
365
369
  case 2:
366
- return 6_000;
370
+ return 3_000;
367
371
  case 1:
368
372
  default:
369
- return 8_000;
373
+ return 4_000;
370
374
  }
371
375
  }
372
376
  function normalizeCommand(command) {
@@ -1 +1 @@
1
- {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/runtime/observer.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"observer.js","sourceRoot":"","sources":["../../src/runtime/observer.ts"],"names":[],"mappings":"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"}
@@ -1,18 +1,6 @@
1
- import type { RenderMode, SidecarState } from "./types.js";
2
- import type { BuddyLanguage, CompanionRecord } from "../types/companion.js";
3
1
  export interface SidecarCommandOptions {
4
2
  windowId: string;
5
3
  targetPane?: string | undefined;
6
4
  }
7
5
  export declare function runSidecarCommand(options: SidecarCommandOptions): Promise<void>;
8
6
  export declare function resolveTargetPane(paneIds: string[], sidecarPaneId: string, currentTargetPaneId?: string): string | undefined;
9
- export declare function resolveRenderMode(columns: number): RenderMode;
10
- export declare function resolveReactionBubble(state: Pick<SidecarState, "reactionText" | "reactionExpiresAt">, now: number): {
11
- text: string | undefined;
12
- fading: boolean;
13
- };
14
- export declare function resolveSpriteFrameState(frameTick: number, animated: boolean, frameCount: number, pulsing?: boolean): {
15
- frameIndex: number;
16
- blink: boolean;
17
- };
18
- export declare function buildIdleSoulSummary(companion: CompanionRecord, language?: BuddyLanguage): string;