neuro-cli 4.1.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 (175) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +510 -0
  3. package/dist/advisor/advisor.d.ts +50 -0
  4. package/dist/advisor/advisor.js +178 -0
  5. package/dist/agents/base.d.ts +62 -0
  6. package/dist/agents/base.js +215 -0
  7. package/dist/agents/orchestrator.d.ts +46 -0
  8. package/dist/agents/orchestrator.js +192 -0
  9. package/dist/agents/team.d.ts +51 -0
  10. package/dist/agents/team.js +210 -0
  11. package/dist/api/models.d.ts +23 -0
  12. package/dist/api/models.js +514 -0
  13. package/dist/api/ollama.d.ts +153 -0
  14. package/dist/api/ollama.js +751 -0
  15. package/dist/api/openrouter.d.ts +55 -0
  16. package/dist/api/openrouter.js +223 -0
  17. package/dist/commands/commands.d.ts +43 -0
  18. package/dist/commands/commands.js +308 -0
  19. package/dist/config/config.d.ts +8 -0
  20. package/dist/config/config.js +311 -0
  21. package/dist/context/compaction.d.ts +54 -0
  22. package/dist/context/compaction.js +251 -0
  23. package/dist/context/custom-agents.d.ts +107 -0
  24. package/dist/context/custom-agents.js +397 -0
  25. package/dist/context/custom-tools.d.ts +120 -0
  26. package/dist/context/custom-tools.js +564 -0
  27. package/dist/context/git-checkpoint.d.ts +52 -0
  28. package/dist/context/git-checkpoint.js +240 -0
  29. package/dist/context/neuro-md.d.ts +48 -0
  30. package/dist/context/neuro-md.js +202 -0
  31. package/dist/context/neuroignore.d.ts +102 -0
  32. package/dist/context/neuroignore.js +441 -0
  33. package/dist/context/repo-map.d.ts +38 -0
  34. package/dist/context/repo-map.js +220 -0
  35. package/dist/context/skill-standard.d.ts +262 -0
  36. package/dist/context/skill-standard.js +1156 -0
  37. package/dist/context/skill-system.d.ts +75 -0
  38. package/dist/context/skill-system.js +578 -0
  39. package/dist/context/tree-sitter.d.ts +99 -0
  40. package/dist/context/tree-sitter.js +1956 -0
  41. package/dist/core/acp.d.ts +325 -0
  42. package/dist/core/acp.js +1498 -0
  43. package/dist/core/api-server.d.ts +143 -0
  44. package/dist/core/api-server.js +550 -0
  45. package/dist/core/approval.d.ts +81 -0
  46. package/dist/core/approval.js +432 -0
  47. package/dist/core/auto-compact.d.ts +127 -0
  48. package/dist/core/auto-compact.js +436 -0
  49. package/dist/core/auto-mode.d.ts +232 -0
  50. package/dist/core/auto-mode.js +831 -0
  51. package/dist/core/background-session.d.ts +166 -0
  52. package/dist/core/background-session.js +696 -0
  53. package/dist/core/cicd.d.ts +257 -0
  54. package/dist/core/cicd.js +1443 -0
  55. package/dist/core/cloud-sync.d.ts +156 -0
  56. package/dist/core/cloud-sync.js +582 -0
  57. package/dist/core/code-review.d.ts +132 -0
  58. package/dist/core/code-review.js +1191 -0
  59. package/dist/core/completion.d.ts +49 -0
  60. package/dist/core/completion.js +384 -0
  61. package/dist/core/context.d.ts +38 -0
  62. package/dist/core/context.js +144 -0
  63. package/dist/core/diff-preview.d.ts +35 -0
  64. package/dist/core/diff-preview.js +173 -0
  65. package/dist/core/doom-loop.d.ts +51 -0
  66. package/dist/core/doom-loop.js +179 -0
  67. package/dist/core/engine.d.ts +183 -0
  68. package/dist/core/engine.js +942 -0
  69. package/dist/core/extended-thinking.d.ts +103 -0
  70. package/dist/core/extended-thinking.js +269 -0
  71. package/dist/core/fallback.d.ts +54 -0
  72. package/dist/core/fallback.js +104 -0
  73. package/dist/core/git-worktree.d.ts +139 -0
  74. package/dist/core/git-worktree.js +614 -0
  75. package/dist/core/headless.d.ts +30 -0
  76. package/dist/core/headless.js +101 -0
  77. package/dist/core/i18n.d.ts +83 -0
  78. package/dist/core/i18n.js +739 -0
  79. package/dist/core/linting.d.ts +129 -0
  80. package/dist/core/linting.js +699 -0
  81. package/dist/core/model-router.d.ts +109 -0
  82. package/dist/core/model-router.js +581 -0
  83. package/dist/core/multi-model.d.ts +243 -0
  84. package/dist/core/multi-model.js +1099 -0
  85. package/dist/core/multi-session.d.ts +144 -0
  86. package/dist/core/multi-session.js +442 -0
  87. package/dist/core/multimodal.d.ts +125 -0
  88. package/dist/core/multimodal.js +286 -0
  89. package/dist/core/observability.d.ts +93 -0
  90. package/dist/core/observability.js +737 -0
  91. package/dist/core/os-sandbox.d.ts +122 -0
  92. package/dist/core/os-sandbox.js +1193 -0
  93. package/dist/core/outcome-grading.d.ts +228 -0
  94. package/dist/core/outcome-grading.js +1123 -0
  95. package/dist/core/output-styles.d.ts +57 -0
  96. package/dist/core/output-styles.js +382 -0
  97. package/dist/core/parallel-agents.d.ts +183 -0
  98. package/dist/core/parallel-agents.js +563 -0
  99. package/dist/core/plugin-bundle.d.ts +236 -0
  100. package/dist/core/plugin-bundle.js +887 -0
  101. package/dist/core/plugin-sdk.d.ts +139 -0
  102. package/dist/core/plugin-sdk.js +273 -0
  103. package/dist/core/prompt-cache.d.ts +163 -0
  104. package/dist/core/prompt-cache.js +599 -0
  105. package/dist/core/sandbox.d.ts +127 -0
  106. package/dist/core/sandbox.js +369 -0
  107. package/dist/core/scheduled-tasks.d.ts +151 -0
  108. package/dist/core/scheduled-tasks.js +502 -0
  109. package/dist/core/security-scanner.d.ts +160 -0
  110. package/dist/core/security-scanner.js +1494 -0
  111. package/dist/core/session.d.ts +83 -0
  112. package/dist/core/session.js +269 -0
  113. package/dist/core/shell-completion.d.ts +51 -0
  114. package/dist/core/shell-completion.js +674 -0
  115. package/dist/core/smart-monitor.d.ts +146 -0
  116. package/dist/core/smart-monitor.js +1199 -0
  117. package/dist/core/spec-driven.d.ts +233 -0
  118. package/dist/core/spec-driven.js +1485 -0
  119. package/dist/core/spending-warnings.d.ts +123 -0
  120. package/dist/core/spending-warnings.js +456 -0
  121. package/dist/core/sub-agent.d.ts +298 -0
  122. package/dist/core/sub-agent.js +1023 -0
  123. package/dist/core/telemetry.d.ts +157 -0
  124. package/dist/core/telemetry.js +412 -0
  125. package/dist/core/terminal-ux.d.ts +134 -0
  126. package/dist/core/terminal-ux.js +649 -0
  127. package/dist/core/testing.d.ts +146 -0
  128. package/dist/core/testing.js +1200 -0
  129. package/dist/core/types.d.ts +439 -0
  130. package/dist/core/types.js +6 -0
  131. package/dist/core/undo-redo.d.ts +112 -0
  132. package/dist/core/undo-redo.js +290 -0
  133. package/dist/core/updater.d.ts +159 -0
  134. package/dist/core/updater.js +608 -0
  135. package/dist/core/vim-mode.d.ts +151 -0
  136. package/dist/core/vim-mode.js +771 -0
  137. package/dist/core/voice.d.ts +137 -0
  138. package/dist/core/voice.js +538 -0
  139. package/dist/core/web-dashboard.d.ts +109 -0
  140. package/dist/core/web-dashboard.js +484 -0
  141. package/dist/hooks/hooks.d.ts +74 -0
  142. package/dist/hooks/hooks.js +160 -0
  143. package/dist/hooks/llm-evaluator.d.ts +165 -0
  144. package/dist/hooks/llm-evaluator.js +560 -0
  145. package/dist/index.d.ts +3 -0
  146. package/dist/index.js +1186 -0
  147. package/dist/lsp/lsp-manager.d.ts +63 -0
  148. package/dist/lsp/lsp-manager.js +351 -0
  149. package/dist/mcp/client.d.ts +133 -0
  150. package/dist/mcp/client.js +684 -0
  151. package/dist/mcp/mcp-apps.d.ts +70 -0
  152. package/dist/mcp/mcp-apps.js +1007 -0
  153. package/dist/tools/bash.d.ts +5 -0
  154. package/dist/tools/bash.js +195 -0
  155. package/dist/tools/browser.d.ts +92 -0
  156. package/dist/tools/browser.js +1570 -0
  157. package/dist/tools/extended.d.ts +6 -0
  158. package/dist/tools/extended.js +191 -0
  159. package/dist/tools/file.d.ts +10 -0
  160. package/dist/tools/file.js +382 -0
  161. package/dist/tools/github.d.ts +389 -0
  162. package/dist/tools/github.js +759 -0
  163. package/dist/tools/index.d.ts +9 -0
  164. package/dist/tools/index.js +40 -0
  165. package/dist/tools/memory.d.ts +6 -0
  166. package/dist/tools/memory.js +197 -0
  167. package/dist/tools/registry.d.ts +29 -0
  168. package/dist/tools/registry.js +64 -0
  169. package/dist/tools/web.d.ts +6 -0
  170. package/dist/tools/web.js +150 -0
  171. package/dist/ui/renderer.d.ts +97 -0
  172. package/dist/ui/renderer.js +279 -0
  173. package/dist/ui/theme.d.ts +27 -0
  174. package/dist/ui/theme.js +106 -0
  175. package/package.json +83 -0
@@ -0,0 +1,166 @@
1
+ import { EventEmitter } from 'events';
2
+ export interface BackgroundSessionConfig {
3
+ id: string;
4
+ name: string;
5
+ prompt: string;
6
+ model?: string;
7
+ workingDirectory: string;
8
+ autoApprove: boolean;
9
+ maxIterations: number;
10
+ maxCost: number;
11
+ notifyOnComplete: boolean;
12
+ saveOutput: boolean;
13
+ tags?: string[];
14
+ }
15
+ export interface BackgroundSessionState {
16
+ id: string;
17
+ name: string;
18
+ status: 'created' | 'running' | 'paused' | 'completed' | 'failed' | 'stopped';
19
+ createdAt: number;
20
+ startedAt?: number;
21
+ completedAt?: number;
22
+ iterations: number;
23
+ tokensUsed: number;
24
+ cost: number;
25
+ lastOutput?: string;
26
+ outputFilePath?: string;
27
+ tags: string[];
28
+ }
29
+ export interface BackgroundSessionOutput {
30
+ sessionId: string;
31
+ lines: string[];
32
+ totalLines: number;
33
+ fetchedAt: number;
34
+ }
35
+ export interface BackgroundSessionHistoryEntry {
36
+ timestamp: number;
37
+ type: 'info' | 'iteration' | 'output' | 'error' | 'pause' | 'resume' | 'stop' | 'complete';
38
+ message: string;
39
+ data?: Record<string, unknown>;
40
+ }
41
+ export declare class BackgroundSessionManager extends EventEmitter {
42
+ private sessions;
43
+ private currentlyAttached;
44
+ constructor();
45
+ /**
46
+ * Create a new background session. The session starts in "created" status.
47
+ * Call `startSession(sessionId)` to begin execution.
48
+ */
49
+ createSession(config: BackgroundSessionConfig): string;
50
+ /**
51
+ * Start running a session in the background.
52
+ */
53
+ startSession(sessionId: string): boolean;
54
+ /**
55
+ * Stop a running session. Cannot be resumed.
56
+ */
57
+ stopSession(sessionId: string): boolean;
58
+ /**
59
+ * Pause a running session. It can be resumed later.
60
+ */
61
+ pauseSession(sessionId: string): boolean;
62
+ /**
63
+ * Resume a paused session.
64
+ */
65
+ resumeSession(sessionId: string): boolean;
66
+ /**
67
+ * Get detailed status of a session.
68
+ */
69
+ getSessionStatus(sessionId: string): BackgroundSessionState | null;
70
+ /**
71
+ * List all background sessions.
72
+ */
73
+ listSessions(): BackgroundSessionState[];
74
+ /**
75
+ * Get recent output from a session.
76
+ * @param lines Number of recent lines to return (default 50).
77
+ */
78
+ getSessionOutput(sessionId: string, lines?: number): BackgroundSessionOutput | null;
79
+ /**
80
+ * Attach to a background session for interactive monitoring.
81
+ * Only one session can be attached at a time.
82
+ */
83
+ attachSession(sessionId: string): boolean;
84
+ /**
85
+ * Detach from the currently attached session.
86
+ */
87
+ detachSession(): boolean;
88
+ /**
89
+ * Wait for a session to complete.
90
+ */
91
+ waitForSession(sessionId: string): Promise<void>;
92
+ /**
93
+ * Get the full execution history of a session.
94
+ */
95
+ getSessionHistory(sessionId: string): BackgroundSessionHistoryEntry[] | null;
96
+ /**
97
+ * Clean up old completed/failed/stopped sessions older than
98
+ * the specified age (default 7 days).
99
+ */
100
+ cleanup(maxAgeMs?: number): number;
101
+ /**
102
+ * Get the currently attached session ID (if any).
103
+ */
104
+ getAttachedSessionId(): string | null;
105
+ /**
106
+ * Find sessions by tag.
107
+ */
108
+ findByTag(tag: string): BackgroundSessionState[];
109
+ /**
110
+ * The main execution loop for a background session.
111
+ *
112
+ * In production, this would call an LLM, execute tools, handle
113
+ * approvals, etc. Here we simulate with iteration tracking,
114
+ * cost accounting, pause/resume, abort, and output capture.
115
+ */
116
+ private runSessionLoop;
117
+ /**
118
+ * Yield control to the event loop.
119
+ */
120
+ private yieldControl;
121
+ /**
122
+ * Capture an output line to both the in-memory buffer and
123
+ * the output file (if configured).
124
+ */
125
+ private captureOutput;
126
+ /**
127
+ * Initialize an output file with a header.
128
+ */
129
+ private initializeOutputFile;
130
+ /**
131
+ * Add a history entry to a session.
132
+ */
133
+ private addHistoryEntry;
134
+ /**
135
+ * Persist session state to disk so it survives app restarts.
136
+ */
137
+ private persistSession;
138
+ /**
139
+ * Persist a single history entry to the session's history file.
140
+ */
141
+ private persistHistory;
142
+ /**
143
+ * Restore sessions from disk on startup.
144
+ * Only restores terminal-state sessions; running sessions
145
+ * from a previous process are marked as 'stopped'.
146
+ */
147
+ private restoreSessions;
148
+ /**
149
+ * Load history entries from the JSONL file on disk.
150
+ */
151
+ private loadHistoryFromDisk;
152
+ /**
153
+ * Remove a session and its associated files.
154
+ */
155
+ private removeSession;
156
+ /**
157
+ * Send a desktop notification using the operating system's
158
+ * native notification mechanism.
159
+ */
160
+ private sendDesktopNotification;
161
+ /**
162
+ * Ensure a directory exists.
163
+ */
164
+ private ensureDir;
165
+ }
166
+ //# sourceMappingURL=background-session.d.ts.map