praxis-agent 0.34.0 → 0.36.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 (78) hide show
  1. package/README.md +9 -1
  2. package/dist/application/background-agent-manager.d.ts +16 -6
  3. package/dist/application/background-agent-manager.js +139 -97
  4. package/dist/application/context-engine.d.ts +56 -0
  5. package/dist/application/context-engine.js +129 -0
  6. package/dist/application/session-service.d.ts +8 -5
  7. package/dist/application/session-service.js +1824 -1728
  8. package/dist/application/subagent-service.js +385 -193
  9. package/dist/application/top-level-agent-manager.d.ts +1 -0
  10. package/dist/application/top-level-agent-manager.js +1025 -403
  11. package/dist/application/transcript-projection.d.ts +33 -0
  12. package/dist/application/transcript-projection.js +110 -0
  13. package/dist/application/turn-lifecycle.d.ts +40 -0
  14. package/dist/application/turn-lifecycle.js +36 -0
  15. package/dist/application/turn-memory-coordinator.d.ts +43 -0
  16. package/dist/application/turn-memory-coordinator.js +98 -0
  17. package/dist/cli/agents-dashboard.js +10 -5
  18. package/dist/cli/interactive.js +279 -209
  19. package/dist/cli/protocol.js +5 -2
  20. package/dist/cli/tui/claude-style.d.ts +5 -48
  21. package/dist/cli/tui/claude-style.js +167 -197
  22. package/dist/cli/tui/task-panel.js +10 -1
  23. package/dist/cli/tui/theme.d.ts +46 -3
  24. package/dist/cli/tui/theme.js +414 -56
  25. package/dist/cli/tui/tool-permission.js +9 -5
  26. package/dist/cli/tui/transcript-presentation.d.ts +89 -0
  27. package/dist/cli/tui/transcript-presentation.js +169 -0
  28. package/dist/cli/tui/transcript-viewport.d.ts +5 -34
  29. package/dist/cli/tui/transcript-viewport.js +639 -158
  30. package/dist/cli/tui/tui-interaction-router.d.ts +78 -0
  31. package/dist/cli/tui/tui-interaction-router.js +127 -0
  32. package/dist/cli/tui/tui-view-model.d.ts +6 -2
  33. package/dist/cli/tui/tui-view-model.js +23 -6
  34. package/dist/cli-runtime.d.ts +2 -2
  35. package/dist/compatibility/claude/context.d.ts +2 -2
  36. package/dist/compatibility/claude/context.js +2 -14
  37. package/dist/compatibility/claude/data-plane-adapter.d.ts +9 -0
  38. package/dist/compatibility/claude/data-plane-adapter.js +44 -0
  39. package/dist/compatibility/claude/paths.js +2 -2
  40. package/dist/compatibility/claude/shared-resources.d.ts +7 -38
  41. package/dist/compatibility/claude/transcript-codec.d.ts +21 -0
  42. package/dist/compatibility/claude/transcript-codec.js +512 -0
  43. package/dist/core/agent-orchestration.d.ts +31 -0
  44. package/dist/core/agent-orchestration.js +235 -0
  45. package/dist/core/context.d.ts +25 -7
  46. package/dist/core/context.js +46 -0
  47. package/dist/core/prompt-composer.d.ts +8 -16
  48. package/dist/core/prompt-composer.js +65 -25
  49. package/dist/core/resources.d.ts +39 -0
  50. package/dist/core/resources.js +2 -0
  51. package/dist/core/runtime.d.ts +6 -1
  52. package/dist/core/runtime.js +15 -1
  53. package/dist/core/session.d.ts +2 -0
  54. package/dist/core/session.js +5 -0
  55. package/dist/core/transcript-codec.d.ts +70 -0
  56. package/dist/core/transcript-codec.js +60 -0
  57. package/dist/core/transcript-event.d.ts +33 -0
  58. package/dist/core/transcript-event.js +198 -0
  59. package/dist/persistence/claude-job-store.d.ts +58 -0
  60. package/dist/persistence/claude-job-store.js +483 -1
  61. package/dist/persistence/data-plane-adapter.d.ts +32 -0
  62. package/dist/persistence/data-plane-adapter.js +2 -0
  63. package/dist/persistence/data-plane.d.ts +4 -20
  64. package/dist/persistence/data-plane.js +10 -47
  65. package/dist/persistence/native-data-plane-adapter.d.ts +9 -0
  66. package/dist/persistence/native-data-plane-adapter.js +39 -0
  67. package/dist/persistence/native-resources.d.ts +4 -4
  68. package/dist/persistence/native-transcript-codec.d.ts +13 -0
  69. package/dist/persistence/native-transcript-codec.js +102 -0
  70. package/dist/persistence/native-transcript-reader.d.ts +53 -0
  71. package/dist/persistence/native-transcript-reader.js +283 -0
  72. package/dist/persistence/subagent-lifecycle-store.d.ts +41 -8
  73. package/dist/persistence/subagent-lifecycle-store.js +373 -146
  74. package/dist/platform/exclusive-file-lease.d.ts +3 -0
  75. package/dist/platform/exclusive-file-lease.js +3 -0
  76. package/dist/tools/claude-user-message.d.ts +0 -1
  77. package/dist/tools/claude-user-message.js +0 -1
  78. package/package.json +6 -2
@@ -1788,11 +1788,14 @@ export class StreamJsonOutput {
1788
1788
  event.state === 'executing-tools' ||
1789
1789
  event.state === 'persisting-results' ||
1790
1790
  event.state === 'completed' ||
1791
- event.state === 'cancelled') {
1791
+ event.state === 'cancelled' ||
1792
+ event.state === 'failed') {
1792
1793
  this.flushAssistant();
1793
1794
  if (event.state === 'awaiting-permission')
1794
1795
  this.writeSessionState('requires_action');
1795
- else if (event.state === 'completed' || event.state === 'cancelled') {
1796
+ else if (event.state === 'completed' ||
1797
+ event.state === 'cancelled' ||
1798
+ event.state === 'failed') {
1796
1799
  this.writeSessionState('idle');
1797
1800
  }
1798
1801
  }
@@ -1,5 +1,5 @@
1
1
  import { type ReactElement } from 'react';
2
- import type { ModelToolCall, ModelUsage } from '../../core/runtime.js';
2
+ import type { ModelUsage } from '../../core/runtime.js';
3
3
  import type { AgentColorName } from '../../compatibility/claude/agent-color.js';
4
4
  import type { DataPlane } from '../../persistence/data-plane.js';
5
5
  import type { TuiFileEntry, TuiMentionEntry } from './file-picker.js';
@@ -10,6 +10,7 @@ import type { TuiPermissionRule } from './permission-settings.js';
10
10
  import type { RecentlyDeniedAction } from './recently-denied.js';
11
11
  import type { CustomThemeToken, TuiCustomTheme } from './custom-themes.js';
12
12
  import type { TuiSlashCommand } from './slash-commands.js';
13
+ import type { TranscriptPresentationEntry } from './transcript-presentation.js';
13
14
  import { type TuiTheme } from './theme.js';
14
15
  export interface TuiDisplayMetadata {
15
16
  version: string;
@@ -19,51 +20,7 @@ export interface TuiDisplayMetadata {
19
20
  permissionMode?: string;
20
21
  contextWindowTokens?: number;
21
22
  }
22
- export type TranscriptItem = {
23
- kind: 'user' | 'assistant' | 'notice' | 'warning';
24
- text: string;
25
- } | {
26
- kind: 'local-result';
27
- text: string;
28
- } | {
29
- kind: 'thinking';
30
- text: string;
31
- } | {
32
- kind: 'compact';
33
- summary: string;
34
- } | {
35
- kind: 'context';
36
- usedTokens: number;
37
- contextWindowTokens: number;
38
- model?: string;
39
- skills: readonly {
40
- name: string;
41
- tokens: number;
42
- }[];
43
- memoryFiles: readonly {
44
- path: string;
45
- tokens: number;
46
- }[];
47
- } | {
48
- kind: 'tool';
49
- call: ModelToolCall;
50
- detail: string;
51
- } | {
52
- kind: 'tool-result';
53
- callId: string;
54
- text: string;
55
- isError: boolean;
56
- } | {
57
- kind: 'shell';
58
- callId: string;
59
- command: string;
60
- } | {
61
- kind: 'shell-result';
62
- callId: string;
63
- stdout: string;
64
- stderr: string;
65
- isError: boolean;
66
- };
23
+ export type { TranscriptItem } from './transcript-presentation.js';
67
24
  export interface TuiBtwEntry {
68
25
  id: number;
69
26
  question: string;
@@ -92,8 +49,8 @@ export declare function activeStreamWindow(text: string): {
92
49
  pendingText: string;
93
50
  truncated: boolean;
94
51
  };
95
- export declare function Transcript({ items, activeText, activeThinking, activeStreamVisible, thinkingExpanded, detailedTranscript, screenReader, }: {
96
- items: readonly TranscriptItem[];
52
+ export declare function Transcript({ entries, activeText, activeThinking, activeStreamVisible, thinkingExpanded, detailedTranscript, screenReader, }: {
53
+ entries: readonly TranscriptPresentationEntry[];
97
54
  activeText: string;
98
55
  activeThinking?: string;
99
56
  activeStreamVisible?: boolean;