@trenchwork/coder 1.4.0 → 1.5.0

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.
Files changed (95) hide show
  1. package/dist/contracts/v1/agent.d.ts +2 -0
  2. package/dist/contracts/v1/agent.d.ts.map +1 -1
  3. package/dist/core/agent.d.ts.map +1 -1
  4. package/dist/core/agent.js +77 -2
  5. package/dist/core/agent.js.map +1 -1
  6. package/dist/core/contextManager.d.ts +10 -137
  7. package/dist/core/contextManager.d.ts.map +1 -1
  8. package/dist/core/contextManager.js +74 -540
  9. package/dist/core/contextManager.js.map +1 -1
  10. package/dist/core/errorClassification.d.ts.map +1 -1
  11. package/dist/core/errorClassification.js +8 -0
  12. package/dist/core/errorClassification.js.map +1 -1
  13. package/dist/core/hooks.d.ts.map +1 -1
  14. package/dist/core/hooks.js +42 -19
  15. package/dist/core/hooks.js.map +1 -1
  16. package/dist/core/keyResolution.d.ts +30 -0
  17. package/dist/core/keyResolution.d.ts.map +1 -0
  18. package/dist/core/keyResolution.js +38 -0
  19. package/dist/core/keyResolution.js.map +1 -0
  20. package/dist/core/permissionMode.d.ts +17 -2
  21. package/dist/core/permissionMode.d.ts.map +1 -1
  22. package/dist/core/permissionMode.js +20 -7
  23. package/dist/core/permissionMode.js.map +1 -1
  24. package/dist/core/reasoningFallback.d.ts +22 -0
  25. package/dist/core/reasoningFallback.d.ts.map +1 -0
  26. package/dist/core/reasoningFallback.js +22 -0
  27. package/dist/core/reasoningFallback.js.map +1 -0
  28. package/dist/core/sessionStore.js +34 -8
  29. package/dist/core/sessionStore.js.map +1 -1
  30. package/dist/core/slashCommands.d.ts.map +1 -1
  31. package/dist/core/slashCommands.js +0 -3
  32. package/dist/core/slashCommands.js.map +1 -1
  33. package/dist/core/taskCompletionDetector.d.ts.map +1 -1
  34. package/dist/core/taskCompletionDetector.js +10 -3
  35. package/dist/core/taskCompletionDetector.js.map +1 -1
  36. package/dist/core/toolRuntime.d.ts +1 -0
  37. package/dist/core/toolRuntime.d.ts.map +1 -1
  38. package/dist/core/toolRuntime.js +21 -2
  39. package/dist/core/toolRuntime.js.map +1 -1
  40. package/dist/core/turnTokenMeter.d.ts +19 -0
  41. package/dist/core/turnTokenMeter.d.ts.map +1 -0
  42. package/dist/core/turnTokenMeter.js +36 -0
  43. package/dist/core/turnTokenMeter.js.map +1 -0
  44. package/dist/headless/interactiveShell.d.ts +3 -3
  45. package/dist/headless/interactiveShell.d.ts.map +1 -1
  46. package/dist/headless/interactiveShell.js +68 -115
  47. package/dist/headless/interactiveShell.js.map +1 -1
  48. package/dist/plugins/providers/deepseek/index.js +4 -6
  49. package/dist/plugins/providers/deepseek/index.js.map +1 -1
  50. package/dist/providers/openaiChatCompletionsProvider.d.ts.map +1 -1
  51. package/dist/providers/openaiChatCompletionsProvider.js +33 -26
  52. package/dist/providers/openaiChatCompletionsProvider.js.map +1 -1
  53. package/dist/runtime/agentController.d.ts.map +1 -1
  54. package/dist/runtime/agentController.js +16 -7
  55. package/dist/runtime/agentController.js.map +1 -1
  56. package/dist/runtime/agentSession.d.ts.map +1 -1
  57. package/dist/runtime/agentSession.js +10 -3
  58. package/dist/runtime/agentSession.js.map +1 -1
  59. package/dist/tools/bashTools.d.ts +63 -0
  60. package/dist/tools/bashTools.d.ts.map +1 -1
  61. package/dist/tools/bashTools.js +186 -77
  62. package/dist/tools/bashTools.js.map +1 -1
  63. package/dist/tools/grepTools.d.ts.map +1 -1
  64. package/dist/tools/grepTools.js +41 -23
  65. package/dist/tools/grepTools.js.map +1 -1
  66. package/dist/tools/searchTools.d.ts.map +1 -1
  67. package/dist/tools/searchTools.js +18 -8
  68. package/dist/tools/searchTools.js.map +1 -1
  69. package/dist/tools/webTools.d.ts.map +1 -1
  70. package/dist/tools/webTools.js +10 -2
  71. package/dist/tools/webTools.js.map +1 -1
  72. package/dist/ui/ink/App.d.ts +6 -1
  73. package/dist/ui/ink/App.d.ts.map +1 -1
  74. package/dist/ui/ink/App.js +20 -2
  75. package/dist/ui/ink/App.js.map +1 -1
  76. package/dist/ui/ink/ChatStatic.d.ts.map +1 -1
  77. package/dist/ui/ink/ChatStatic.js +9 -2
  78. package/dist/ui/ink/ChatStatic.js.map +1 -1
  79. package/dist/ui/ink/InkPromptController.d.ts +8 -8
  80. package/dist/ui/ink/InkPromptController.d.ts.map +1 -1
  81. package/dist/ui/ink/InkPromptController.js +19 -11
  82. package/dist/ui/ink/InkPromptController.js.map +1 -1
  83. package/dist/ui/ink/StatusLine.d.ts +6 -7
  84. package/dist/ui/ink/StatusLine.d.ts.map +1 -1
  85. package/dist/ui/ink/StatusLine.js +9 -9
  86. package/dist/ui/ink/StatusLine.js.map +1 -1
  87. package/dist/ui/ink/markdownRender.d.ts +2 -0
  88. package/dist/ui/ink/markdownRender.d.ts.map +1 -0
  89. package/dist/ui/ink/markdownRender.js +76 -0
  90. package/dist/ui/ink/markdownRender.js.map +1 -0
  91. package/package.json +2 -1
  92. package/dist/core/hostedAuth.d.ts +0 -88
  93. package/dist/core/hostedAuth.d.ts.map +0 -1
  94. package/dist/core/hostedAuth.js +0 -219
  95. package/dist/core/hostedAuth.js.map +0 -1
@@ -17,7 +17,7 @@
17
17
  * facade implementing exactly those.
18
18
  */
19
19
  import { EventEmitter } from 'node:events';
20
- import { cyclePermissionMode, permissionHint, permissionStatusChip } from '../../core/permissionMode.js';
20
+ import { cyclePermissionMode, permissionHint, permissionModeStrip, permissionStatusChip } from '../../core/permissionMode.js';
21
21
  import { isGenericThinking } from '../../core/thinkingVerbs.js';
22
22
  /** Map RendererEventType (UnifiedUIRenderer) to ChatItem.kind. */
23
23
  const EVENT_KIND_MAP = {
@@ -172,6 +172,9 @@ export class InkPromptController extends EventEmitter {
172
172
  statusStreaming = null;
173
173
  activityMessage = null;
174
174
  mode = 'idle';
175
+ // outputTokens drives the spinner's `↑ N tokens`; contextPercent (from
176
+ // contextTokens/tokenLimit) drives the `% context left` chip. Two concerns,
177
+ // never the same number.
175
178
  metaInfo = {};
176
179
  // ms timestamp the current spinner run began — drives the elapsed counter in
177
180
  // StatusLine. Set when the UI transitions into a spinning state, cleared when
@@ -346,11 +349,15 @@ export class InkPromptController extends EventEmitter {
346
349
  const s = meta.elapsedSeconds % 60;
347
350
  this.metaInfo.sessionTime = `${m}:${s < 10 ? '0' : ''}${s}`;
348
351
  }
349
- if (typeof meta.tokensUsed === 'number' && meta.tokensUsed >= 0) {
350
- this.metaInfo.tokensUsed = meta.tokensUsed;
352
+ if (typeof meta.outputTokens === 'number' && Number.isFinite(meta.outputTokens) && meta.outputTokens >= 0) {
353
+ this.metaInfo.outputTokens = meta.outputTokens;
351
354
  }
352
- if (meta.tokensUsed != null && meta.tokenLimit != null) {
353
- this.metaInfo.contextPercent = meta.tokenLimit > 0 ? Math.round((meta.tokensUsed / meta.tokenLimit) * 100) : 0;
355
+ // NaN passes a `!= null` check a proxy that garbles prompt_tokens would
356
+ // render "NaN% context left". Only finite inputs with a positive window
357
+ // may update the chip.
358
+ if (typeof meta.contextTokens === 'number' && Number.isFinite(meta.contextTokens)
359
+ && typeof meta.tokenLimit === 'number' && Number.isFinite(meta.tokenLimit) && meta.tokenLimit > 0) {
360
+ this.metaInfo.contextPercent = Math.round((meta.contextTokens / meta.tokenLimit) * 100);
354
361
  }
355
362
  this.rerender();
356
363
  }
@@ -547,15 +554,16 @@ export class InkPromptController extends EventEmitter {
547
554
  streamingMessage: this.streamingText || null,
548
555
  status: {
549
556
  message: composedStatus,
550
- modeMessage: modeChips,
551
557
  spinning,
552
558
  startTime: this.spinStart,
553
- tokensUsed: this.metaInfo.tokensUsed ?? null,
559
+ tokensUsed: this.metaInfo.outputTokens ?? null,
554
560
  thinkingGerund,
555
561
  },
556
562
  suggestions: this.suggestions.length ? this.suggestions : undefined,
557
563
  inlinePanel: this.inlinePanel && this.inlinePanel.length ? this.inlinePanel : undefined,
564
+ permissionStrip: permissionModeStrip(),
558
565
  permissionHint: permissionHint(),
566
+ metaLine: modeChips,
559
567
  queuedPrompts: this.queuedPrompts.length ? this.queuedPrompts : undefined,
560
568
  menu: this.menuOpen ? {
561
569
  items: this.menuItems,
@@ -623,10 +631,10 @@ export class InkPromptController extends EventEmitter {
623
631
  });
624
632
  }
625
633
  /**
626
- * The dim mode line under the spinner. Claude Code keeps this minimal and
627
- * emoji-free: product, model, context left, then active toggles. The cwd and
628
- * elapsed time deliberately don't live here (cwd is in the welcome box;
629
- * elapsed rides the spinner).
634
+ * The dim meta line under the toggle-modes strip (below the input box).
635
+ * Claude Code keeps this minimal and emoji-free: product, model, context
636
+ * left, then active toggles. The cwd and elapsed time deliberately don't
637
+ * live here (cwd is in the welcome box; elapsed rides the spinner).
630
638
  */
631
639
  formatModeChips() {
632
640
  const parts = ['trenchwork-coder'];
@@ -1 +1 @@
1
- {"version":3,"file":"InkPromptController.js","sourceRoot":"","sources":["../../../src/ui/ink/InkPromptController.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"InkPromptController.js","sourceRoot":"","sources":["../../../src/ui/ink/InkPromptController.ts"],"names":[],"mappings":"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"}
@@ -1,13 +1,14 @@
1
1
  /**
2
2
  * StatusLine — Ink-rendered working line. The CLI's renderer is Ink-only;
3
- * this component owns the spinner / activity message / mode chips row.
3
+ * this component owns the spinner / activity message row.
4
4
  *
5
5
  * Claude Code shape (see src/ui/CLAUDE_CODE_UX.md): a sparkle that animates
6
6
  * through `· ✢ ✳ ✶ ✻ ✽`, the current activity, then dim meta
7
- * `(Ns · ↑ X tokens · esc to interrupt)`. A second dim line carries the mode
8
- * chips. The component self-ticks (its own interval) so the sparkle spins and
9
- * the elapsed counter advances between host rerenders — Ink reconciles it to a
10
- * stable fiber, so the interval survives the controller's prop updates.
7
+ * `(Ns · ↑ X tokens · esc to interrupt)`. The component self-ticks (its own
8
+ * interval) so the sparkle spins and the elapsed counter advances between host
9
+ * rerenders — Ink reconciles it to a stable fiber, so the interval survives
10
+ * the controller's prop updates. The mode/meta chips line lives below the
11
+ * input box (App.metaLine), not here.
11
12
  *
12
13
  * Render contract: this component is the *only* writer for its rows. No
13
14
  * console.log / process.stdout.write side-effects.
@@ -16,8 +17,6 @@ import React from 'react';
16
17
  export interface StatusLineProps {
17
18
  /** Active line shown next to the spinner. Empty/undefined hides the row. */
18
19
  message?: string | null;
19
- /** Optional secondary line (mode chips). */
20
- modeMessage?: string | null;
21
20
  /** Animate the sparkle + show elapsed/token meta. */
22
21
  spinning?: boolean;
23
22
  /** ms timestamp the current activity began, for the elapsed counter. */
@@ -1 +1 @@
1
- {"version":3,"file":"StatusLine.d.ts","sourceRoot":"","sources":["../../../src/ui/ink/StatusLine.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,4CAA4C;IAC5C,WAAW,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC5B,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAYD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CAyDhD,CAAC"}
1
+ {"version":3,"file":"StatusLine.d.ts","sourceRoot":"","sources":["../../../src/ui/ink/StatusLine.tsx"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;GAcG;AAEH,OAAO,KAA8B,MAAM,OAAO,CAAC;AAInD,MAAM,WAAW,eAAe;IAC9B,4EAA4E;IAC5E,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACxB,qDAAqD;IACrD,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,wEAAwE;IACxE,SAAS,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,2DAA2D;IAC3D,UAAU,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IAC3B;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B;AAYD,eAAO,MAAM,UAAU,EAAE,KAAK,CAAC,EAAE,CAAC,eAAe,CA+ChD,CAAC"}
@@ -1,14 +1,15 @@
1
1
  import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
2
2
  /**
3
3
  * StatusLine — Ink-rendered working line. The CLI's renderer is Ink-only;
4
- * this component owns the spinner / activity message / mode chips row.
4
+ * this component owns the spinner / activity message row.
5
5
  *
6
6
  * Claude Code shape (see src/ui/CLAUDE_CODE_UX.md): a sparkle that animates
7
7
  * through `· ✢ ✳ ✶ ✻ ✽`, the current activity, then dim meta
8
- * `(Ns · ↑ X tokens · esc to interrupt)`. A second dim line carries the mode
9
- * chips. The component self-ticks (its own interval) so the sparkle spins and
10
- * the elapsed counter advances between host rerenders — Ink reconciles it to a
11
- * stable fiber, so the interval survives the controller's prop updates.
8
+ * `(Ns · ↑ X tokens · esc to interrupt)`. The component self-ticks (its own
9
+ * interval) so the sparkle spins and the elapsed counter advances between host
10
+ * rerenders — Ink reconciles it to a stable fiber, so the interval survives
11
+ * the controller's prop updates. The mode/meta chips line lives below the
12
+ * input box (App.metaLine), not here.
12
13
  *
13
14
  * Render contract: this component is the *only* writer for its rows. No
14
15
  * console.log / process.stdout.write side-effects.
@@ -23,7 +24,7 @@ const LUNAR = '#e8e9ed';
23
24
  function fmtTokens(n) {
24
25
  return n >= 1000 ? `${(n / 1000).toFixed(1)}k` : String(n);
25
26
  }
26
- export const StatusLine = ({ message, modeMessage, spinning, startTime, tokensUsed, thinkingGerund }) => {
27
+ export const StatusLine = ({ message, spinning, startTime, tokensUsed, thinkingGerund }) => {
27
28
  const [frame, setFrame] = useState(0);
28
29
  const [verb, setVerb] = useState(() => pickThinkingVerb());
29
30
  useEffect(() => {
@@ -44,8 +45,7 @@ export const StatusLine = ({ message, modeMessage, spinning, startTime, tokensUs
44
45
  }, [spinning, thinkingGerund]);
45
46
  const label = spinning && thinkingGerund ? `${verb}…` : message;
46
47
  const hasMessage = Boolean(label && label.length);
47
- const hasMode = Boolean(modeMessage && modeMessage.length);
48
- if (!hasMessage && !hasMode)
48
+ if (!hasMessage)
49
49
  return null;
50
50
  const glyph = STAR_FRAMES[frame % STAR_FRAMES.length];
51
51
  // Meta + sparkle only appear while working; an idle status line is just the
@@ -61,6 +61,6 @@ export const StatusLine = ({ message, modeMessage, spinning, startTime, tokensUs
61
61
  }
62
62
  meta.push('esc to interrupt');
63
63
  }
64
- return (_jsxs(Box, { flexDirection: "column", children: [hasMessage ? (_jsxs(Box, { children: [spinning ? _jsxs(Text, { color: STARLIGHT, children: [glyph, " "] }) : null, _jsx(Text, { color: LUNAR, children: label }), meta.length ? _jsx(Text, { dimColor: true, children: ` (${meta.join(' · ')})` }) : null] })) : null, hasMode ? (_jsx(Box, { children: _jsx(Text, { dimColor: true, children: modeMessage }) })) : null] }));
64
+ return (_jsxs(Box, { children: [spinning ? _jsxs(Text, { color: STARLIGHT, children: [glyph, " "] }) : null, _jsx(Text, { color: LUNAR, children: label }), meta.length ? _jsx(Text, { dimColor: true, children: ` (${meta.join(' · ')})` }) : null] }));
65
65
  };
66
66
  //# sourceMappingURL=StatusLine.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"StatusLine.js","sourceRoot":"","sources":["../../../src/ui/ink/StatusLine.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"StatusLine.js","sourceRoot":"","sources":["../../../src/ui/ink/StatusLine.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,2 @@
1
+ export declare function renderMarkdown(text: string): string;
2
+ //# sourceMappingURL=markdownRender.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdownRender.d.ts","sourceRoot":"","sources":["../../../src/ui/ink/markdownRender.ts"],"names":[],"mappings":"AAkEA,wBAAgB,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAYnD"}
@@ -0,0 +1,76 @@
1
+ /**
2
+ * Render assistant Markdown to themed ANSI for the terminal transcript, the way
3
+ * Claude Code does. Applied at COMMIT time (when an assistant turn becomes a
4
+ * permanent <Static> ChatItem) — the live streaming region stays plain so
5
+ * formatting solidifies once, with no per-frame reflow.
6
+ *
7
+ * Space Black palette (mirrors src/ui/theme.ts): headings/strong in lunar,
8
+ * inline code + code blocks in ice-cyan, links in starlight, rules/quotes dim.
9
+ */
10
+ import { marked } from 'marked';
11
+ import { markedTerminal } from 'marked-terminal';
12
+ import chalk from 'chalk';
13
+ const LUNAR = '#e8e9ed';
14
+ const ICE = '#64d2ff';
15
+ const STARLIGHT = '#82aaff';
16
+ const ASH = '#8b8e96';
17
+ let configured = false;
18
+ function configure() {
19
+ if (configured)
20
+ return;
21
+ marked.use(markedTerminal({
22
+ // Headings as bold text, no leading `##`.
23
+ showSectionPrefix: false,
24
+ reflowText: false,
25
+ tab: 2,
26
+ heading: chalk.hex(LUNAR).bold,
27
+ firstHeading: chalk.hex(LUNAR).bold,
28
+ strong: chalk.hex(LUNAR).bold,
29
+ em: chalk.italic,
30
+ codespan: chalk.hex(ICE),
31
+ code: chalk.hex(ICE),
32
+ link: chalk.hex(STARLIGHT).underline,
33
+ href: chalk.hex(STARLIGHT).underline,
34
+ blockquote: chalk.hex(ASH).italic,
35
+ hr: chalk.hex(ASH),
36
+ listitem: (text) => text,
37
+ }));
38
+ configured = true;
39
+ }
40
+ /**
41
+ * Render Markdown to a themed ANSI string. Returns the input unchanged if it
42
+ * contains no Markdown-ish syntax (cheap fast-path) or if rendering throws —
43
+ * plain prose must never be mangled or dropped.
44
+ */
45
+ // Trigger rendering ONLY on STRUCTURAL Markdown or unambiguous paired inline
46
+ // syntax (`**bold**`, `` `code` ``). Bare single `*` / `_` are deliberately
47
+ // excluded: prose and math like "2*3*4" or "a_b_c" are valid CommonMark
48
+ // emphasis and marked would silently delete the markers (and the text between),
49
+ // corrupting plain output. Better to under-render than to mangle.
50
+ const MARKDOWN_RE = new RegExp([
51
+ '(?:^|\\n) {0,3}#{1,6} ', // ATX heading
52
+ '```', // fenced code block
53
+ '(?:^|\\n) {0,3}> ', // blockquote
54
+ '(?:^|\\n) {0,3}(?:[-+]|\\d+\\.) +\\S', // bullet (-, +) or ordered list
55
+ '(?:^|\\n) {0,3}\\|.*\\|.*\\n {0,3}\\|? *:?-{2,}', // table: header row + separator
56
+ '\\[[^\\]\\n]+\\]\\([^)\\n]+\\)', // [text](url) link
57
+ '`[^`\\n]+`', // `inline code`
58
+ '\\*\\*[^*\\n]+\\*\\*', // **bold**
59
+ ].join('|'));
60
+ export function renderMarkdown(text) {
61
+ if (!text)
62
+ return text;
63
+ // Fast path: no structural Markdown → leave the prose exactly as-is.
64
+ if (!MARKDOWN_RE.test(text))
65
+ return text;
66
+ try {
67
+ configure();
68
+ const out = marked.parse(text, { async: false });
69
+ // marked appends a trailing newline; keep the body tight for the transcript.
70
+ return typeof out === 'string' ? out.replace(/\n+$/, '') : text;
71
+ }
72
+ catch {
73
+ return text;
74
+ }
75
+ }
76
+ //# sourceMappingURL=markdownRender.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"markdownRender.js","sourceRoot":"","sources":["../../../src/ui/ink/markdownRender.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,EAAE,MAAM,EAAE,MAAM,QAAQ,CAAC;AAChC,OAAO,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AACjD,OAAO,KAAK,MAAM,OAAO,CAAC;AAE1B,MAAM,KAAK,GAAG,SAAS,CAAC;AACxB,MAAM,GAAG,GAAG,SAAS,CAAC;AACtB,MAAM,SAAS,GAAG,SAAS,CAAC;AAC5B,MAAM,GAAG,GAAG,SAAS,CAAC;AAEtB,IAAI,UAAU,GAAG,KAAK,CAAC;AACvB,SAAS,SAAS;IAChB,IAAI,UAAU;QAAE,OAAO;IACvB,MAAM,CAAC,GAAG,CACR,cAAc,CAAC;QACb,0CAA0C;QAC1C,iBAAiB,EAAE,KAAK;QACxB,UAAU,EAAE,KAAK;QACjB,GAAG,EAAE,CAAC;QACN,OAAO,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI;QAC9B,YAAY,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI;QACnC,MAAM,EAAE,KAAK,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,IAAI;QAC7B,EAAE,EAAE,KAAK,CAAC,MAAM;QAChB,QAAQ,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;QACxB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;QACpB,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS;QACpC,IAAI,EAAE,KAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,SAAS;QACpC,UAAU,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC,MAAM;QACjC,EAAE,EAAE,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC;QAClB,QAAQ,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,IAAI;KACjC,CAAqC,CACvC,CAAC;IACF,UAAU,GAAG,IAAI,CAAC;AACpB,CAAC;AAED;;;;GAIG;AACH,6EAA6E;AAC7E,4EAA4E;AAC5E,wEAAwE;AACxE,gFAAgF;AAChF,kEAAkE;AAClE,MAAM,WAAW,GAAG,IAAI,MAAM,CAC5B;IACE,wBAAwB,EAAE,cAAc;IACxC,KAAK,EAAE,oBAAoB;IAC3B,mBAAmB,EAAE,aAAa;IAClC,sCAAsC,EAAE,gCAAgC;IACxE,iDAAiD,EAAE,gCAAgC;IACnF,gCAAgC,EAAE,mBAAmB;IACrD,YAAY,EAAE,gBAAgB;IAC9B,sBAAsB,EAAE,WAAW;CACpC,CAAC,IAAI,CAAC,GAAG,CAAC,CACZ,CAAC;AAEF,MAAM,UAAU,cAAc,CAAC,IAAY;IACzC,IAAI,CAAC,IAAI;QAAE,OAAO,IAAI,CAAC;IACvB,qEAAqE;IACrE,IAAI,CAAC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC;QAAE,OAAO,IAAI,CAAC;IACzC,IAAI,CAAC;QACH,SAAS,EAAE,CAAC;QACZ,MAAM,GAAG,GAAG,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAW,CAAC;QAC3D,6EAA6E;QAC7E,OAAO,OAAO,GAAG,KAAK,QAAQ,CAAC,CAAC,CAAC,GAAG,CAAC,OAAO,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC;IAClE,CAAC;IAAC,MAAM,CAAC;QACP,OAAO,IAAI,CAAC;IACd,CAAC;AACH,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@trenchwork/coder",
3
- "version": "1.4.0",
3
+ "version": "1.5.0",
4
4
  "description": "Claude Code–class Ink TUI agent for DeepSeek v4 Pro (max thought, ultracode always on). Live follow-up queue, Shift+Tab permission modes, colored diffs, adversarial verifier — your keys, no login. Independent; inspired by Project Glasswing.",
5
5
  "deepseek": {
6
6
  "rulebookSchema": "src/contracts/schemas/agent-rules.schema.json"
@@ -106,6 +106,7 @@
106
106
  "gradient-string": "^3.0.0",
107
107
  "ink": "^7.0.1",
108
108
  "ink-spinner": "^5.0.0",
109
+ "marked-terminal": "^7.3.0",
109
110
  "nanospinner": "1.2.2",
110
111
  "open": "^11.0.0",
111
112
  "openai": "^6.10.0",
@@ -1,88 +0,0 @@
1
- /**
2
- * Hosted-key access — the CLIENT side of "optional sign-in unlocks hosted keys,
3
- * or bring your own." Keys NEVER ship in this client (Project Glasswing); they
4
- * live only in the ero.solar AWS backend, exactly like the Tavily search proxy
5
- * already does (see src/tools/webTools.ts). Sign-in mints a short-lived token;
6
- * the proxies validate it and use the operator keys.
7
- *
8
- * ── CONTRACT (the ero.solar backend implements this; this file codes against it) ──
9
- * Sign-in (loopback OAuth, increment 2):
10
- * open https://ero.solar/cli/login?port=<loopbackPort>&state=<csrf>
11
- * → Google SSO → 302 http://127.0.0.1:<port>/cb?token=<jwt>&email=<e>&state=<csrf>
12
- * DeepSeek (hosted): POST {HOSTED_DEEPSEEK_PROXY} header `Authorization: Bearer <token>`
13
- * Tavily (hosted): the existing tavilySearch proxy, same Bearer token
14
- * The token is short-lived and server-validated; if it 401s the CLI drops to
15
- * "signed out" and asks the user to /login again or use their own key.
16
- *
17
- * THIS MODULE is state + resolution only (increment 1, fully testable). The live
18
- * sign-in flow and the provider→proxy wiring are increment 2 (backend-gated).
19
- */
20
- export declare const HOSTED_LOGIN_URL = "https://ero.solar/cli/login";
21
- export declare const HOSTED_DEEPSEEK_PROXY = "https://ero.solar/api/deepseek";
22
- export interface HostedSession {
23
- token: string;
24
- email: string;
25
- }
26
- export type KeyMode = 'hosted' | 'own' | 'none';
27
- export interface KeyModeStatus {
28
- mode: KeyMode;
29
- email: string | null;
30
- signedIn: boolean;
31
- ownDeepSeek: boolean;
32
- ownTavily: boolean;
33
- preferOwnKeys: boolean;
34
- }
35
- /** The active hosted session (token + email), or null when signed out. */
36
- export declare function getHostedSession(): HostedSession | null;
37
- /** Persist a hosted session (called by /login once the backend returns a token). */
38
- export declare function setHostedSession(session: HostedSession): void;
39
- /** Sign out: drop the token but keep the own/hosted preference. */
40
- export declare function clearHostedSession(): void;
41
- export declare function prefersOwnKeys(): boolean;
42
- export declare function setPreferOwnKeys(value: boolean): void;
43
- /**
44
- * Resolve which keys are in effect. Preference order: an explicit "use my own
45
- * keys" wins when the user actually has a DeepSeek key; otherwise a hosted
46
- * session is used; otherwise the user's own key; otherwise nothing is set up.
47
- */
48
- export declare function resolveKeyMode(): KeyModeStatus;
49
- /**
50
- * The dim welcome/banner line that makes the active key source unmistakable —
51
- * the user must be able to see at a glance whether they're on hosted keys or
52
- * their own. Returns null in 'none' mode (the welcome already shows key setup).
53
- */
54
- export declare function keyModeLine(status?: KeyModeStatus): string | null;
55
- /**
56
- * Resolve the DeepSeek endpoint the provider should use. Hosted mode routes
57
- * through the ero.solar proxy authenticated by the short-lived sign-in token
58
- * (the real key lives only server-side, Glasswing); otherwise the user's own
59
- * key hits the API directly. `apiKey` is '' in 'none' mode (caller errors).
60
- */
61
- export declare function resolveDeepSeekEndpoint(): {
62
- apiKey: string;
63
- baseURL: string;
64
- mode: KeyMode;
65
- };
66
- export interface LoginResult {
67
- ok: boolean;
68
- session?: HostedSession;
69
- error?: string;
70
- }
71
- /**
72
- * Loopback-OAuth sign-in (the contract's increment 2). Starts a one-shot
73
- * 127.0.0.1 server on an ephemeral port, opens the browser to the ero.solar
74
- * Google-SSO login URL with that port + a CSRF state, and waits for the
75
- * redirect back to /cb?token=&email=&state=. On match it persists the hosted
76
- * session. The browser launch is injected (`open`) so the flow is testable
77
- * against the REAL loopback server without a real browser.
78
- *
79
- * Requires the ero.solar backend (SSO + token mint + redirect) to be live; with
80
- * no backend the browser opens to a not-yet-served endpoint and the wait times
81
- * out — the caller surfaces that honestly.
82
- */
83
- export declare function loginViaLoopback(opts: {
84
- open: (url: string) => void | Promise<void>;
85
- timeoutMs?: number;
86
- loginUrl?: string;
87
- }): Promise<LoginResult>;
88
- //# sourceMappingURL=hostedAuth.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"hostedAuth.d.ts","sourceRoot":"","sources":["../../src/core/hostedAuth.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAUH,eAAO,MAAM,gBAAgB,gCAAgC,CAAC;AAC9D,eAAO,MAAM,qBAAqB,mCAAmC,CAAC;AAWtE,MAAM,WAAW,aAAa;IAC5B,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;CACf;AASD,MAAM,MAAM,OAAO,GAAG,QAAQ,GAAG,KAAK,GAAG,MAAM,CAAC;AAEhD,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,OAAO,CAAC;IACd,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,QAAQ,EAAE,OAAO,CAAC;IAClB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;IACnB,aAAa,EAAE,OAAO,CAAC;CACxB;AA+BD,0EAA0E;AAC1E,wBAAgB,gBAAgB,IAAI,aAAa,GAAG,IAAI,CAGvD;AAED,oFAAoF;AACpF,wBAAgB,gBAAgB,CAAC,OAAO,EAAE,aAAa,GAAG,IAAI,CAG7D;AAED,mEAAmE;AACnE,wBAAgB,kBAAkB,IAAI,IAAI,CAMzC;AAED,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED,wBAAgB,gBAAgB,CAAC,KAAK,EAAE,OAAO,GAAG,IAAI,CAErD;AAED;;;;GAIG;AACH,wBAAgB,cAAc,IAAI,aAAa,CAa9C;AAED;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,MAAM,GAAE,aAAgC,GAAG,MAAM,GAAG,IAAI,CAanF;AAED;;;;;GAKG;AACH,wBAAgB,uBAAuB,IAAI;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,OAAO,EAAE,MAAM,CAAC;IAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAW5F;AAED,MAAM,WAAW,WAAW;IAC1B,EAAE,EAAE,OAAO,CAAC;IACZ,OAAO,CAAC,EAAE,aAAa,CAAC;IACxB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;;;;;;;;;;GAWG;AACH,wBAAgB,gBAAgB,CAAC,IAAI,EAAE;IACrC,IAAI,EAAE,CAAC,GAAG,EAAE,MAAM,KAAK,IAAI,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5C,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,GAAG,OAAO,CAAC,WAAW,CAAC,CAuCvB"}