praxis-agent 0.1.2 → 0.2.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.
package/README.md CHANGED
@@ -78,7 +78,8 @@ troubleshooting. Run `praxis --help` for the authoritative command surface.
78
78
 
79
79
  ## What Praxis provides
80
80
 
81
- - **Local agent runtime** — streaming interactive UI, print mode, structured
81
+ - **Local agent runtime** — Claude-style responsive TUI with rich transcript,
82
+ tool, decision, thinking, and context-budget panels; print mode, structured
82
83
  JSON/JSONL, context compaction, tool loops, and bounded execution.
83
84
  - **Built-in tools** — read, write, edit, glob, search, shell, notebook, PDF,
84
85
  image, web, scheduled prompts, workflows, and worktrees.
@@ -124,6 +125,7 @@ for exact shared data, version boundaries, exclusions, and verification gates.
124
125
  | Understand module and data-flow boundaries | [Architecture](https://github.com/Forest-Isle/Praxis/blob/main/docs/ARCHITECTURE.md) |
125
126
  | Review security assumptions | [Threat Model](https://github.com/Forest-Isle/Praxis/blob/main/docs/THREAT_MODEL.md) |
126
127
  | Check Claude Code parity | [Parity Matrix](https://github.com/Forest-Isle/Praxis/blob/main/docs/PARITY_MATRIX.md) |
128
+ | Review interactive TUI design and evidence | [TUI Parity](https://github.com/Forest-Isle/Praxis/blob/main/docs/TUI_PARITY.md) |
127
129
  | Build, test, and contribute | [Contributing](https://github.com/Forest-Isle/Praxis/blob/main/CONTRIBUTING.md) |
128
130
  | Verify release and supply-chain controls | [Release Contract](https://github.com/Forest-Isle/Praxis/blob/main/docs/RELEASE.md) |
129
131
 
@@ -2,6 +2,7 @@ import type { ForkResult, SessionRunResult, SessionSummary } from '../applicatio
2
2
  import type { ModelToolCall, RuntimeEventSink } from '../core/runtime.js';
3
3
  import type { CliElicitationRequest, CliElicitationResult } from './protocol.js';
4
4
  import type { ClaudeInteractiveToolCallbacks } from '../tools/claude-interactive-tools.js';
5
+ import { type TuiDisplayMetadata } from './tui/claude-style.js';
5
6
  interface InteractiveSessionCommands {
6
7
  run(prompt: string, signal?: AbortSignal): Promise<SessionRunResult>;
7
8
  resume(sessionId: string, prompt: string, signal?: AbortSignal): Promise<SessionRunResult>;
@@ -47,13 +48,16 @@ interface InteractiveAppProps {
47
48
  axScreenReader?: boolean;
48
49
  allowNewSession?: boolean;
49
50
  resume?: InteractiveResumeOptions;
51
+ display?: TuiDisplayMetadata;
52
+ terminalWidth?: number;
50
53
  }
51
- export declare function InteractiveApp({ factory, initialSessions, initialPrompt, signal, onCancel, onTurnChange, onCleanup, axScreenReader, allowNewSession, resume, }: InteractiveAppProps): import("react").JSX.Element;
54
+ export declare function InteractiveApp({ factory, initialSessions, initialPrompt, signal, onCancel, onTurnChange, onCleanup, axScreenReader, allowNewSession, resume, display, terminalWidth, }: InteractiveAppProps): import("react").JSX.Element;
52
55
  export declare function runInteractive(options: {
53
56
  factory: InteractiveServiceFactory;
54
57
  initialPrompt?: string;
55
58
  signal?: AbortSignal;
56
59
  axScreenReader?: boolean;
60
+ display?: TuiDisplayMetadata;
57
61
  sessionFilter?: (session: SessionSummary) => boolean;
58
62
  requireSession?: boolean;
59
63
  missingSessionMessage?: string;
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/cli/interactive.tsx"],"names":[],"mappings":"AAIA,OAAO,KAAK,EACV,UAAU,EACV,gBAAgB,EAChB,cAAc,EACf,MAAM,mCAAmC,CAAA;AAC1C,OAAO,KAAK,EACV,aAAa,EAEb,gBAAgB,EACjB,MAAM,oBAAoB,CAAA;AAC3B,OAAO,KAAK,EAAE,qBAAqB,EAAE,oBAAoB,EAAE,MAAM,eAAe,CAAA;AAChF,OAAO,KAAK,EACV,8BAA8B,EAI/B,MAAM,sCAAsC,CAAA;AAM7C,UAAU,0BAA0B;IAClC,GAAG,CAAC,MAAM,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,WAAW,GAAG,OAAO,CAAC,gBAAgB,CAAC,CAAA;IACpE,MAAM,CACJ,SAAS,EAAE,MAAM,EACjB,MAAM,EAAE,MAAM,EACd,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC,gBAAgB,CAAC,CAAA;IAC5B,IAAI,CAAC,SAAS,EAAE,MAAM,EAAE,eAAe,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC,CAAA;IACtE,QAAQ,IAAI,OAAO,CAAC,cAAc,EAAE,CAAC,CAAA;IACrC,SAAS,CAAC,IAAI,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,CAAA;IAChD,mBAAmB,CAAC,CAClB,MAAM,CAAC,EAAE,WAAW,GACnB,OAAO,CAAC;QAAE,EAAE,EAAE,MAAM,CAAC;QAAC,MAAM,EAAE,MAAM,CAAA;KAAE,GAAG,IAAI,CAAC,CAAA;IACjD,KAAK,CAAC,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;CACxB;AAED,MAAM,WAAW,yBAAyB;IACxC,gBAAgB,CAAC,EAAE,OAAO,CAAA;IAC1B,aAAa,CAAC,OAAO,EAAE;QACrB,SAAS,EAAE,gBAAgB,CAAA;QAC3B,eAAe,EAAE,OAAO,CAAA;QACxB,eAAe,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;QACrE,WAAW,CAAC,EAAE,CAAC,IAAI,EAAE,aAAa,KAAK,OAAO,GAAG,OAAO,CAAC,OAAO,CAAC,CAAA;QACjE,aAAa,CAAC,EAAE,CACd,OAAO,EAAE,qBAAqB,KAC3B,OAAO,CAAC,oBAAoB,CAAC,CAAA;QAClC,OAAO,CAAC,EAAE,8BAA8B,CAAC,SAAS,CAAC,CAAA;QACnD,WAAW,CAAC,EAAE,8BAA8B,CAAC,aAAa,CAAC,CAAA;QAC3D,KAAK,CAAC,EAAE,MAAM,CAAA;QACd,MAAM,CAAC,EAAE,WAAW,CAAA;KACrB,GAAG,OAAO,CAAC,0BAA0B,CAAC,CAAA;CACxC;AAED,MAAM,WAAW,wBAAwB;IACvC,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,eAAe,CAAC,EAAE,MAAM,CAAA;IACxB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,WAAW,CAAC,EAAE,OAAO,CAAA;IACrB,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,qBAAqB,CAAC,EAAE,OAAO,CAAA;CAChC;AAED,UAAU,mBAAmB;IAC3B,OAAO,EAAE,yBAAyB,CAAA;IAClC,eAAe,EAAE,SAAS,cAAc,EAAE,CAAA;IAC1C,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,QAAQ,CAAC,EAAE,MAAM,IAAI,CAAA;IACrB,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,KAAK,IAAI,CAAA;IACnD,SAAS,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,IAAI,CAAC,KAAK,IAAI,CAAA;IAC5C,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB,MAAM,CAAC,EAAE,wBAAwB,CAAA;CAClC;AAiED,wBAAgB,cAAc,CAAC,EAC7B,OAAO,EACP,eAAe,EACf,aAAa,EACb,MAAM,EACN,QAAQ,EACR,YAAY,EACZ,SAAS,EACT,cAAsB,EACtB,eAAsB,EACtB,MAAM,GACP,EAAE,mBAAmB,+BAqoBrB;AAED,wBAAsB,cAAc,CAAC,OAAO,EAAE;IAC5C,OAAO,EAAE,yBAAyB,CAAA;IAClC,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,MAAM,CAAC,EAAE,WAAW,CAAA;IACpB,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,aAAa,CAAC,EAAE,CAAC,OAAO,EAAE,cAAc,KAAK,OAAO,CAAA;IACpD,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB,qBAAqB,CAAC,EAAE,MAAM,CAAA;IAC9B,MAAM,CAAC,EAAE,wBAAwB,CAAA;CAClC,GAAG,OAAO,CAAC,MAAM,CAAC,CAqElB"}
1
+ {"version":3,"file":"interactive.d.ts","sourceRoot":"","sources":["../../src/cli/interactive.tsx"],"names":[],"mappings":"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"}
@@ -2,6 +2,7 @@ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-run
2
2
  import { useEffect, useMemo, useRef, useState } from 'react';
3
3
  import { Box, Text, render, useApp, useInput } from 'ink';
4
4
  import { redactSensitiveText, sensitiveEnvironmentValues, } from '../platform/sensitive-data.js';
5
+ import { Composer, DialogFrame, SessionPicker, Transcript, WelcomePanel, useTerminalWidth, } from './tui/claude-style.js';
5
6
  function questionAnswer(question, input) {
6
7
  const answer = input.trim();
7
8
  if (!answer)
@@ -31,14 +32,20 @@ function questionAnswer(question, input) {
31
32
  }
32
33
  function describeTool(call, sensitiveValues) {
33
34
  const name = redactSensitiveText(call.name, sensitiveValues);
35
+ return `${name} ${describeToolInput(call, sensitiveValues)}`;
36
+ }
37
+ function describeToolInput(call, sensitiveValues) {
34
38
  const detail = redactSensitiveText(JSON.stringify(call.input), sensitiveValues);
35
- return `${name} ${detail.length > 160 ? `${detail.slice(0, 157)}...` : detail}`;
39
+ return detail.length > 160 ? `${detail.slice(0, 157)}...` : detail;
36
40
  }
37
- export function InteractiveApp({ factory, initialSessions, initialPrompt, signal, onCancel, onTurnChange, onCleanup, axScreenReader = false, allowNewSession = true, resume, }) {
41
+ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal, onCancel, onTurnChange, onCleanup, axScreenReader = false, allowNewSession = true, resume, display = { version: 'dev', cwd: process.cwd() }, terminalWidth, }) {
38
42
  const { exit } = useApp();
43
+ const width = useTerminalWidth(terminalWidth);
39
44
  const sensitiveValues = useMemo(() => sensitiveEnvironmentValues(process.env), []);
40
45
  const choices = useMemo(() => allowNewSession ? [null, ...initialSessions] : initialSessions, [allowNewSession, initialSessions]);
41
- const [selectingSession, setSelectingSession] = useState(initialSessions.length > 0 && resume?.sessionId === undefined);
46
+ const [selectingSession, setSelectingSession] = useState(initialSessions.length > 0 &&
47
+ resume?.sessionId === undefined &&
48
+ (!allowNewSession || resume?.requireSession === true));
42
49
  const [selectedIndex, setSelectedIndex] = useState(0);
43
50
  const selectedIndexRef = useRef(0);
44
51
  const [sessionId, setSessionId] = useState(resume?.sessionId ?? null);
@@ -50,6 +57,8 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
50
57
  const [initialPromptPending, setInitialPromptPending] = useState(initialPromptRef.current.length > 0);
51
58
  const [status, setStatus] = useState('ready');
52
59
  const [activeText, setActiveText] = useState('');
60
+ const [activeThinking, setActiveThinking] = useState('');
61
+ const [usage, setUsage] = useState();
53
62
  const [history, setHistory] = useState([]);
54
63
  const [permission, setPermission] = useState(null);
55
64
  const permissionRef = useRef(null);
@@ -64,6 +73,7 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
64
73
  const onCleanupRef = useRef(onCleanup);
65
74
  onCleanupRef.current = onCleanup;
66
75
  const scheduledWaitRef = useRef(null);
76
+ const turnControllerRef = useRef(null);
67
77
  useEffect(() => {
68
78
  if (!signal)
69
79
  return;
@@ -86,6 +96,7 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
86
96
  questionRef.current?.resolve(null);
87
97
  planApprovalRef.current?.resolve(false);
88
98
  scheduledWaitRef.current?.abort();
99
+ turnControllerRef.current?.abort();
89
100
  const closing = serviceRef.current?.close?.() ?? Promise.resolve();
90
101
  if (onCleanupRef.current)
91
102
  onCleanupRef.current(closing);
@@ -94,32 +105,120 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
94
105
  }, []);
95
106
  const append = (line) => setHistory((current) => [...current, line]);
96
107
  const handleEvent = (event) => {
97
- if (event.type === 'text-delta') {
98
- setActiveText((current) => current + event.delta);
99
- }
100
- else if (event.type === 'user-message') {
101
- append({ kind: 'assistant', text: event.message });
102
- }
103
- else if (event.type === 'state') {
104
- setStatus(event.state);
105
- }
106
- else if (event.type === 'tool-call') {
107
- append({
108
- kind: 'notice',
109
- text: `Tool: ${describeTool(event.call, sensitiveValues)}`,
110
- });
111
- }
112
- else if (event.type === 'tool-result' && event.isError) {
113
- append({
114
- kind: 'warning',
115
- text: `Tool failed: ${redactSensitiveText(event.content, sensitiveValues)}`,
116
- });
117
- }
118
- else if (event.type === 'warning' || event.type === 'failed') {
119
- append({
120
- kind: 'warning',
121
- text: redactSensitiveText(event.message, sensitiveValues),
122
- });
108
+ switch (event.type) {
109
+ case 'text-delta':
110
+ setActiveText((current) => current + event.delta);
111
+ break;
112
+ case 'thinking-start':
113
+ setActiveThinking(event.block.type === 'thinking' ? event.block.thinking : '');
114
+ break;
115
+ case 'thinking-delta':
116
+ setActiveThinking((current) => current + event.delta);
117
+ break;
118
+ case 'thinking-signature-delta':
119
+ // Signatures authenticate a thinking block for provider replay; they are
120
+ // intentionally not part of the user-visible reasoning summary.
121
+ break;
122
+ case 'thinking-stop':
123
+ append({
124
+ kind: 'thinking',
125
+ text: event.block.type === 'thinking'
126
+ ? event.block.thinking
127
+ : activeThinking,
128
+ });
129
+ setActiveThinking('');
130
+ break;
131
+ case 'user-message':
132
+ append({ kind: 'assistant', text: event.message });
133
+ break;
134
+ case 'state':
135
+ setStatus(event.state);
136
+ break;
137
+ case 'usage':
138
+ setUsage(event.usage);
139
+ break;
140
+ case 'tool-call':
141
+ append({
142
+ kind: 'tool',
143
+ call: event.call,
144
+ detail: describeToolInput(event.call, sensitiveValues),
145
+ });
146
+ break;
147
+ case 'permission-decision':
148
+ append({
149
+ kind: event.behavior === 'deny' ? 'warning' : 'notice',
150
+ text: event.behavior === 'ask'
151
+ ? `Permission confirmation required · ${event.callId}`
152
+ : `Permission ${event.behavior === 'allow' ? 'allowed' : 'denied'} · ${event.callId}`,
153
+ });
154
+ break;
155
+ case 'tool-result':
156
+ append({
157
+ kind: 'tool-result',
158
+ callId: event.callId,
159
+ text: redactSensitiveText(event.content, sensitiveValues),
160
+ isError: event.isError,
161
+ });
162
+ break;
163
+ case 'tool-progress':
164
+ setStatus(`${event.toolName} · ${event.elapsedTimeSeconds}s`);
165
+ break;
166
+ case 'task-started':
167
+ append({ kind: 'notice', text: `Task started · ${event.description}` });
168
+ break;
169
+ case 'task-progress':
170
+ setStatus(event.summary ?? event.description);
171
+ break;
172
+ case 'task-notification':
173
+ append({
174
+ kind: event.status === 'failed' ? 'warning' : 'notice',
175
+ text: `Task ${event.status} · ${event.summary}`,
176
+ });
177
+ break;
178
+ case 'compact-boundary':
179
+ append({
180
+ kind: 'notice',
181
+ text: `Conversation compacted · ${event.preTokens} tokens`,
182
+ });
183
+ break;
184
+ case 'api-retry':
185
+ append({
186
+ kind: 'warning',
187
+ text: `API retry ${event.attempt}/${event.maxRetries} · ${event.error}`,
188
+ });
189
+ break;
190
+ case 'elicitation-complete':
191
+ append({
192
+ kind: 'notice',
193
+ text: `MCP elicitation completed · ${event.mcpServerName}`,
194
+ });
195
+ break;
196
+ case 'tool-use-summary':
197
+ append({ kind: 'notice', text: event.summary });
198
+ break;
199
+ case 'hook': {
200
+ const { event: hook } = event;
201
+ const outcome = hook.outcome ? ` · ${hook.outcome}` : '';
202
+ append({
203
+ kind: hook.outcome === 'error' ? 'warning' : 'notice',
204
+ text: `Hook ${hook.type} · ${hook.hookName}${outcome}`,
205
+ });
206
+ break;
207
+ }
208
+ case 'session-state-changed':
209
+ setStatus(event.state.replace('_', ' '));
210
+ break;
211
+ case 'warning':
212
+ case 'failed':
213
+ append({
214
+ kind: 'warning',
215
+ text: redactSensitiveText(event.message, sensitiveValues),
216
+ });
217
+ break;
218
+ default: {
219
+ const unreachable = event;
220
+ return unreachable;
221
+ }
123
222
  }
124
223
  };
125
224
  const requestApproval = (call, kind) => new Promise((resolveApproval) => {
@@ -237,9 +336,16 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
237
336
  };
238
337
  const submit = async (prompt) => {
239
338
  scheduledWaitRef.current?.abort();
339
+ const turnController = new AbortController();
340
+ turnControllerRef.current?.abort();
341
+ turnControllerRef.current = turnController;
342
+ const turnSignal = signal
343
+ ? AbortSignal.any([signal, turnController.signal])
344
+ : turnController.signal;
240
345
  setBusy(true);
241
346
  setStatus('assembling-context');
242
347
  setActiveText('');
348
+ setActiveThinking('');
243
349
  append({ kind: 'user', text: prompt });
244
350
  let commands;
245
351
  try {
@@ -252,19 +358,27 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
252
358
  setPendingFork(false);
253
359
  }
254
360
  const result = activeSessionId
255
- ? await commands.resume(activeSessionId, prompt, signal)
256
- : await commands.run(prompt, signal);
361
+ ? await commands.resume(activeSessionId, prompt, turnSignal)
362
+ : await commands.run(prompt, turnSignal);
257
363
  setSessionId(result.sessionId);
364
+ setUsage(result.usage);
258
365
  append({ kind: 'assistant', text: result.text });
259
366
  setActiveText('');
367
+ setActiveThinking('');
260
368
  setStatus('ready');
261
369
  }
262
370
  catch (error) {
263
- append({
264
- kind: 'warning',
265
- text: redactSensitiveText(error instanceof Error ? error.message : String(error), sensitiveValues),
266
- });
267
- setStatus('failed');
371
+ if (turnController.signal.aborted && !signal?.aborted) {
372
+ append({ kind: 'notice', text: 'Interrupted by user.' });
373
+ setStatus('cancelled');
374
+ }
375
+ else {
376
+ append({
377
+ kind: 'warning',
378
+ text: redactSensitiveText(error instanceof Error ? error.message : String(error), sensitiveValues),
379
+ });
380
+ setStatus('failed');
381
+ }
268
382
  }
269
383
  finally {
270
384
  if (!factory.scheduledPrompts && commands) {
@@ -282,6 +396,8 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
282
396
  serviceRef.current = null;
283
397
  }
284
398
  }
399
+ if (turnControllerRef.current === turnController)
400
+ turnControllerRef.current = null;
285
401
  setBusy(false);
286
402
  }
287
403
  };
@@ -348,19 +464,25 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
348
464
  return;
349
465
  }
350
466
  if (permission) {
351
- if (value.toLowerCase() === 'y') {
467
+ if (value.toLowerCase() === 'y' || value === '1') {
352
468
  permission.resolve(true);
353
469
  }
354
- else if (value.toLowerCase() === 'n' || key.return || key.escape) {
470
+ else if (value.toLowerCase() === 'n' ||
471
+ value === '2' ||
472
+ key.return ||
473
+ key.escape) {
355
474
  permission.resolve(false);
356
475
  }
357
476
  return;
358
477
  }
359
478
  if (planApproval) {
360
- if (value.toLowerCase() === 'y') {
479
+ if (value.toLowerCase() === 'y' || value === '1') {
361
480
  planApproval.resolve(true);
362
481
  }
363
- else if (value.toLowerCase() === 'n' || key.return || key.escape) {
482
+ else if (value.toLowerCase() === 'n' ||
483
+ value === '2' ||
484
+ key.return ||
485
+ key.escape) {
364
486
  planApproval.resolve(false);
365
487
  }
366
488
  return;
@@ -453,7 +575,18 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
453
575
  return;
454
576
  }
455
577
  if (selectingSession) {
456
- if (key.upArrow) {
578
+ if (key.escape) {
579
+ if (allowNewSession) {
580
+ setSessionId(null);
581
+ setPendingFork(false);
582
+ setSelectingSession(false);
583
+ }
584
+ else {
585
+ onCancel?.();
586
+ exit();
587
+ }
588
+ }
589
+ else if (key.upArrow) {
457
590
  selectedIndexRef.current = Math.max(0, selectedIndexRef.current - 1);
458
591
  setSelectedIndex(selectedIndexRef.current);
459
592
  }
@@ -470,9 +603,17 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
470
603
  }
471
604
  return;
472
605
  }
473
- if (busy)
606
+ if (busy) {
607
+ if (key.escape || value === '\u001B')
608
+ turnControllerRef.current?.abort();
474
609
  return;
610
+ }
475
611
  if (key.return) {
612
+ if (key.shift) {
613
+ inputRef.current += '\n';
614
+ setInput(inputRef.current);
615
+ return;
616
+ }
476
617
  const prompt = inputRef.current.trim();
477
618
  inputRef.current = '';
478
619
  setInput('');
@@ -481,6 +622,12 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
481
622
  if (prompt === '/exit') {
482
623
  exit();
483
624
  }
625
+ else if (prompt === '/help' || prompt === '?') {
626
+ append({
627
+ kind: 'notice',
628
+ text: '/new start a session · /sessions resume · /workflows list workflows · /exit quit',
629
+ });
630
+ }
484
631
  else if (prompt === '/new') {
485
632
  setSessionId(null);
486
633
  setPendingFork(false);
@@ -533,15 +680,11 @@ export function InteractiveApp({ factory, initialSessions, initialPrompt, signal
533
680
  setInput(inputRef.current);
534
681
  }
535
682
  });
536
- return (_jsxs(Box, { flexDirection: "column", children: [axScreenReader ? null : (_jsx(Text, { bold: true, color: "cyan", children: "Praxis" })), selectingSession ? (_jsxs(Box, { flexDirection: "column", children: [axScreenReader ? null : (_jsx(Text, { dimColor: true, children: "Select session \u00B7 \u2191/\u2193 move \u00B7 Enter confirm" })), choices.map((session, index) => (_jsxs(Text, { children: [index === selectedIndex ? '› ' : ' ', session
537
- ? `${session.name ?? session.lastPrompt ?? 'Untitled'} · ${session.sessionId}${session.status === 'ready' ? '' : ` · ${session.status}`}`
538
- : 'New session'] }, session?.sessionId ?? 'new')))] })) : (_jsxs(_Fragment, { children: [sessionId ? _jsxs(Text, { dimColor: true, children: ["Session ", sessionId] }) : null, history.map((line, index) => (_jsxs(Text, { ...(line.kind === 'warning' ? { color: 'red' } : {}), children: [line.kind === 'user'
539
- ? 'You: '
540
- : line.kind === 'assistant'
541
- ? 'Praxis: '
542
- : '· ', line.text] }, `${index}-${line.kind}`))), activeText ? _jsxs(Text, { children: ["Praxis: ", activeText] }) : null, permission ? (_jsxs(Text, { color: "yellow", children: [permission.kind === 'recovery' ? 'Retry interrupted ' : 'Allow ', describeTool(permission.call, sensitiveValues), "? (y/N)"] })) : planApproval ? (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { color: "yellow", children: "Approve this plan and begin implementation? (y/N)" }), _jsx(Text, { dimColor: true, children: planApproval.request.planPath }), planApproval.request.plan ? (_jsx(Text, { children: planApproval.request.plan })) : null] })) : question ? (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: "yellow", children: [question.questions[question.index]?.header, ":", ' ', question.questions[question.index]?.question] }), question.questions[question.index]?.options.map((option, index) => (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { children: [index + 1, ". ", option.label, " \u2014 ", option.description] }), option.preview ? (_jsx(Text, { dimColor: true, children: option.preview })) : null] }, `${index}-${option.label}`))), _jsxs(Text, { children: ["\u203A ", input] }), _jsx(Text, { dimColor: true, children: question.questions[question.index]?.multiSelect
543
- ? 'Enter comma-separated option numbers or custom text · Esc cancels'
544
- : 'Enter one option number or custom text · Esc cancels' })] })) : elicitation ? (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: "yellow", children: ["MCP elicitation (", elicitation.request.serverName, "):", ' ', elicitation.request.message] }), elicitation.request.url ? (_jsx(Text, { children: elicitation.request.url })) : null, elicitation.request.requestedSchema ? (_jsx(Text, { dimColor: true, children: JSON.stringify(elicitation.request.requestedSchema) })) : null, _jsxs(Text, { children: ["\u203A ", input] }), _jsx(Text, { dimColor: true, children: "Enter JSON object to accept \u00B7 Esc to cancel" })] })) : busy ? (_jsxs(Text, { dimColor: true, children: [status, "\u2026"] })) : (_jsxs(_Fragment, { children: [_jsxs(Text, { children: ["\u203A ", input] }), axScreenReader ? null : (_jsx(Text, { dimColor: true, children: "/new \u00B7 /sessions \u00B7 /workflows \u00B7 /exit" }))] }))] }))] }));
683
+ return (_jsx(Box, { flexDirection: "column", children: selectingSession ? (_jsx(SessionPicker, { sessions: choices, selectedIndex: selectedIndex, screenReader: axScreenReader })) : (_jsxs(_Fragment, { children: [!axScreenReader && history.length === 0 && !sessionId ? (_jsx(WelcomePanel, { display: display, width: width })) : null, sessionId ? (_jsxs(Text, { dimColor: true, children: ["Session ", sessionId.slice(0, 8)] })) : null, _jsx(Transcript, { items: history, activeText: activeText, activeThinking: activeThinking, screenReader: axScreenReader }), permission ? (_jsxs(DialogFrame, { title: permission.kind === 'recovery'
684
+ ? `Retry interrupted ${permission.call.name}?`
685
+ : `Allow ${permission.call.name}?`, screenReader: axScreenReader, children: [_jsx(Text, { bold: true, children: describeTool(permission.call, sensitiveValues) }), _jsx(Text, { children: "\u276F 1. Yes" }), _jsx(Text, { children: " 2. No" }), _jsx(Text, { dimColor: true, children: "Enter/Esc declines \u00B7 y/n quick response" })] })) : planApproval ? (_jsxs(DialogFrame, { title: "Approve this plan and begin implementation?", screenReader: axScreenReader, children: [_jsx(Text, { dimColor: true, children: planApproval.request.planPath }), planApproval.request.plan ? (_jsx(Box, { marginY: 1, children: _jsx(Text, { children: planApproval.request.plan }) })) : null, _jsx(Text, { children: "\u276F 1. Yes, implement the plan" }), _jsx(Text, { children: " 2. No, keep planning" })] })) : question ? (_jsxs(DialogFrame, { title: `${question.questions[question.index]?.header}: ${question.questions[question.index]?.question}`, screenReader: axScreenReader, children: [question.questions[question.index]?.options.map((option, index) => (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { children: [index === 0 ? '' : ' ', index + 1, ". ", option.label, " \u2014 ", option.description] }), option.preview ? (_jsx(Text, { dimColor: true, children: option.preview })) : null] }, `${index}-${option.label}`))), _jsxs(Text, { children: ["\u203A ", input] }), _jsx(Text, { dimColor: true, children: question.questions[question.index]?.multiSelect
686
+ ? 'Enter comma-separated option numbers or custom text · Esc cancels'
687
+ : 'Enter one option number or custom text · Esc cancels' })] })) : elicitation ? (_jsxs(DialogFrame, { title: `MCP elicitation (${elicitation.request.serverName})`, screenReader: axScreenReader, children: [_jsx(Text, { children: elicitation.request.message }), elicitation.request.url ? (_jsx(Text, { children: elicitation.request.url })) : null, elicitation.request.requestedSchema ? (_jsx(Text, { dimColor: true, children: JSON.stringify(elicitation.request.requestedSchema) })) : null, _jsxs(Text, { children: ["\u203A ", input] }), _jsx(Text, { dimColor: true, children: "Enter JSON object to accept \u00B7 Esc to cancel" })] })) : (_jsx(Composer, { input: input, busy: busy, status: status, display: display, ...(usage === undefined ? {} : { usage }), width: width, screenReader: axScreenReader }))] })) }));
545
688
  }
546
689
  export async function runInteractive(options) {
547
690
  const controller = new AbortController();
@@ -589,7 +732,11 @@ export async function runInteractive(options) {
589
732
  activeTurn = turn;
590
733
  }, onCleanup: (closing) => {
591
734
  cleanup = closing;
592
- }, allowNewSession: !options.requireSession, ...(resume === undefined ? {} : { resume }), ...(options.axScreenReader ? { axScreenReader: true } : {}) }), { exitOnCtrlC: false, incrementalRendering: !options.axScreenReader });
735
+ }, allowNewSession: !options.requireSession, ...(resume === undefined ? {} : { resume }), ...(options.display === undefined ? {} : { display: options.display }), ...(options.axScreenReader ? { axScreenReader: true } : {}) }), {
736
+ exitOnCtrlC: false,
737
+ incrementalRendering: !options.axScreenReader,
738
+ interactive: true,
739
+ });
593
740
  await instance.waitUntilExit();
594
741
  if (activeTurn)
595
742
  await activeTurn;
@@ -1 +1 @@
1
- {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/cli/interactive.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"interactive.js","sourceRoot":"","sources":["../../src/cli/interactive.tsx"],"names":[],"mappings":"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"}