wiggum-cli 0.11.15 → 0.11.16
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/.claude/settings.local.json +2 -1
- package/dist/tui/components/CommandDropdown.d.ts.map +1 -1
- package/dist/tui/components/CommandDropdown.js +1 -0
- package/dist/tui/components/CommandDropdown.js.map +1 -1
- package/dist/tui/components/MessageList.d.ts.map +1 -1
- package/dist/tui/components/MessageList.js +9 -1
- package/dist/tui/components/MessageList.js.map +1 -1
- package/dist/tui/screens/MainShell.d.ts.map +1 -1
- package/dist/tui/screens/MainShell.js +16 -14
- package/dist/tui/screens/MainShell.js.map +1 -1
- package/package.json +1 -1
- package/src/tui/components/CommandDropdown.tsx +1 -0
- package/src/tui/components/MessageList.tsx +18 -0
- package/src/tui/screens/MainShell.tsx +56 -13
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandDropdown.d.ts","sourceRoot":"","sources":["../../../src/tui/components/CommandDropdown.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAIxC;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iDAAiD;IACjD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AASD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,GACT,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CA2F3C;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"CommandDropdown.d.ts","sourceRoot":"","sources":["../../../src/tui/components/CommandDropdown.tsx"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAmB,MAAM,OAAO,CAAC;AAIxC;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,+BAA+B;IAC/B,IAAI,EAAE,MAAM,CAAC;IACb,wCAAwC;IACxC,WAAW,EAAE,MAAM,CAAC;CACrB;AAED;;GAEG;AACH,MAAM,WAAW,oBAAoB;IACnC,yBAAyB;IACzB,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,8CAA8C;IAC9C,MAAM,EAAE,MAAM,CAAC;IACf,wCAAwC;IACxC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,IAAI,CAAC;IACpC,iDAAiD;IACjD,QAAQ,EAAE,MAAM,IAAI,CAAC;CACtB;AASD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,eAAe,CAAC,EAC9B,QAAQ,EACR,MAAM,EACN,QAAQ,EACR,QAAQ,GACT,EAAE,oBAAoB,GAAG,KAAK,CAAC,YAAY,CA2F3C;AAED;;GAEG;AACH,eAAO,MAAM,gBAAgB,EAAE,OAAO,EAQrC,CAAC"}
|
|
@@ -82,6 +82,7 @@ export function CommandDropdown({ commands, filter, onSelect, onCancel, }) {
|
|
|
82
82
|
*/
|
|
83
83
|
export const DEFAULT_COMMANDS = [
|
|
84
84
|
{ name: 'init', description: 'Initialize project with CLAUDE.md' },
|
|
85
|
+
{ name: 'sync', description: 'Refresh project context (scan + AI analysis)' },
|
|
85
86
|
{ name: 'new', description: 'Create a new feature specification' },
|
|
86
87
|
{ name: 'run', description: 'Run a spec file with AI' },
|
|
87
88
|
{ name: 'help', description: 'Show available commands' },
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"CommandDropdown.js","sourceRoot":"","sources":["../../../src/tui/components/CommandDropdown.tsx"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"CommandDropdown.js","sourceRoot":"","sources":["../../../src/tui/components/CommandDropdown.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/tui/components/MessageList.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;
|
|
1
|
+
{"version":3,"file":"MessageList.d.ts","sourceRoot":"","sources":["../../../src/tui/components/MessageList.tsx"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,OAAO,KAAK,MAAM,OAAO,CAAC;AAI1B,OAAO,EAAgB,KAAK,cAAc,EAAE,MAAM,mBAAmB,CAAC;AAEtE;;GAEG;AACH,MAAM,WAAW,QAAQ;IACvB,sCAAsC;IACtC,QAAQ,EAAE,MAAM,CAAC;IACjB,+BAA+B;IAC/B,MAAM,EAAE,cAAc,CAAC;IACvB,+BAA+B;IAC/B,KAAK,EAAE,MAAM,CAAC;IACd,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,8BAA8B;IAC9B,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AAED;;GAEG;AACH,MAAM,WAAW,OAAO;IACtB,wCAAwC;IACxC,EAAE,EAAE,MAAM,CAAC;IACX,2BAA2B;IAC3B,IAAI,EAAE,MAAM,GAAG,WAAW,GAAG,QAAQ,CAAC;IACtC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,gDAAgD;IAChD,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB,kDAAkD;IAClD,WAAW,CAAC,EAAE,OAAO,CAAC;CACvB;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,mCAAmC;IACnC,QAAQ,EAAE,OAAO,EAAE,CAAC;IACpB,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,uEAAuE;IACvE,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAsID;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,SAAS,EACT,iBAAyB,GAC1B,EAAE,gBAAgB,GAAG,KAAK,CAAC,YAAY,CA0BvC"}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { jsxs as _jsxs, jsx as _jsx } from "react/jsx-runtime";
|
|
2
2
|
import { Box, Text } from 'ink';
|
|
3
|
-
import { theme } from '../theme.js';
|
|
3
|
+
import { colors, theme } from '../theme.js';
|
|
4
4
|
import { StreamingText } from './StreamingText.js';
|
|
5
5
|
import { ToolCallCard } from './ToolCallCard.js';
|
|
6
6
|
/**
|
|
@@ -36,10 +36,18 @@ function AssistantMessage({ content, toolCalls, isStreaming, toolCallsExpanded =
|
|
|
36
36
|
function SystemMessage({ content }) {
|
|
37
37
|
// Check if this is a phase header (e.g., "Phase 2: Goals - Describe what you want to build")
|
|
38
38
|
const phaseMatch = content.match(/^Phase (\d+): (.+?) - (.+)$/);
|
|
39
|
+
const isSyncFailure = content.toLowerCase().startsWith('sync failed:');
|
|
40
|
+
const isSyncMessage = content.toLowerCase().startsWith('sync:');
|
|
39
41
|
if (phaseMatch) {
|
|
40
42
|
const [, phaseNum, phaseName, description] = phaseMatch;
|
|
41
43
|
return (_jsxs(Box, { marginY: 1, flexDirection: "column", children: [_jsxs(Text, { color: theme.colors.brand, bold: true, children: ["Phase ", phaseNum, ": ", phaseName] }), _jsx(Text, { dimColor: true, children: description })] }));
|
|
42
44
|
}
|
|
45
|
+
if (isSyncFailure) {
|
|
46
|
+
return (_jsx(Box, { marginY: 1, children: _jsx(Text, { color: colors.pink, children: content }) }));
|
|
47
|
+
}
|
|
48
|
+
if (isSyncMessage) {
|
|
49
|
+
return (_jsx(Box, { marginY: 1, children: _jsx(Text, { color: colors.blue, children: content }) }));
|
|
50
|
+
}
|
|
43
51
|
return (_jsx(Box, { marginY: 1, children: _jsx(Text, { dimColor: true, children: content }) }));
|
|
44
52
|
}
|
|
45
53
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MessageList.js","sourceRoot":"","sources":["../../../src/tui/components/MessageList.tsx"],"names":[],"mappings":";AAUA,OAAO,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,KAAK,CAAC;AAChC,OAAO,
|
|
1
|
+
{"version":3,"file":"MessageList.js","sourceRoot":"","sources":["../../../src/tui/components/MessageList.tsx"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainShell.d.ts","sourceRoot":"","sources":["../../../src/tui/screens/MainShell.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,
|
|
1
|
+
{"version":3,"file":"MainShell.d.ts","sourceRoot":"","sources":["../../../src/tui/screens/MainShell.tsx"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAgC,MAAM,OAAO,CAAC;AAarD,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,6BAA6B,CAAC;AAGhE;;GAEG;AACH,MAAM,MAAM,gBAAgB,GAAG,SAAS,GAAG,OAAO,GAAG,WAAW,GAAG,MAAM,GAAG,KAAK,CAAC;AAElF;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;CACxB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,4BAA4B;IAC5B,YAAY,EAAE,YAAY,CAAC;IAC3B,+CAA+C;IAC/C,UAAU,EAAE,CAAC,MAAM,EAAE,gBAAgB,EAAE,KAAK,CAAC,EAAE,eAAe,KAAK,IAAI,CAAC;IACxE,wCAAwC;IACxC,oBAAoB,CAAC,EAAE,CAAC,KAAK,EAAE,YAAY,KAAK,IAAI,CAAC;CACtD;AASD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,SAAS,CAAC,EACxB,YAAY,EACZ,UAAU,GACX,EAAE,cAAc,GAAG,KAAK,CAAC,YAAY,CAySrC"}
|
|
@@ -5,11 +5,13 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
5
5
|
* The main interactive shell for Wiggum CLI, replacing the readline REPL.
|
|
6
6
|
* Handles slash commands and provides navigation to other screens.
|
|
7
7
|
*/
|
|
8
|
-
import { useState, useCallback
|
|
8
|
+
import { useState, useCallback } from 'react';
|
|
9
9
|
import { Box, Text, useInput, useApp } from 'ink';
|
|
10
10
|
import { MessageList } from '../components/MessageList.js';
|
|
11
11
|
import { ChatInput } from '../components/ChatInput.js';
|
|
12
|
-
import {
|
|
12
|
+
import { WorkingIndicator } from '../components/WorkingIndicator.js';
|
|
13
|
+
import { ActionOutput } from '../components/ActionOutput.js';
|
|
14
|
+
import { colors, theme } from '../theme.js';
|
|
13
15
|
import { parseInput, resolveCommandAlias, formatHelpText, } from '../../repl/command-parser.js';
|
|
14
16
|
import { useSync } from '../hooks/useSync.js';
|
|
15
17
|
/**
|
|
@@ -48,16 +50,6 @@ export function MainShell({ sessionState, onNavigate, }) {
|
|
|
48
50
|
};
|
|
49
51
|
setMessages((prev) => [...prev, message]);
|
|
50
52
|
}, []);
|
|
51
|
-
// Watch sync status changes
|
|
52
|
-
useEffect(() => {
|
|
53
|
-
if (syncStatus === 'success') {
|
|
54
|
-
addSystemMessage('Project context sync completed successfully.');
|
|
55
|
-
}
|
|
56
|
-
else if (syncStatus === 'error') {
|
|
57
|
-
const msg = syncError?.message || 'Unknown error';
|
|
58
|
-
addSystemMessage(`Sync failed: ${msg}`);
|
|
59
|
-
}
|
|
60
|
-
}, [syncStatus, syncError, addSystemMessage]);
|
|
61
53
|
/**
|
|
62
54
|
* Handle /help command
|
|
63
55
|
*/
|
|
@@ -150,7 +142,6 @@ export function MainShell({ sessionState, onNavigate, }) {
|
|
|
150
142
|
addSystemMessage('Sync already in progress.');
|
|
151
143
|
return;
|
|
152
144
|
}
|
|
153
|
-
addSystemMessage('Starting sync of project context…');
|
|
154
145
|
sync(sessionState.projectRoot, sessionState.provider, sessionState.model);
|
|
155
146
|
}, [sessionState, syncStatus, addSystemMessage, sync]);
|
|
156
147
|
/**
|
|
@@ -226,6 +217,17 @@ export function MainShell({ sessionState, onNavigate, }) {
|
|
|
226
217
|
addSystemMessage('Use /exit to quit');
|
|
227
218
|
}
|
|
228
219
|
});
|
|
229
|
-
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: colors.yellow, bold: true, children: "Wiggum Interactive Mode" }), _jsx(Text, { dimColor: true, children: " \u2502 " }), sessionState.initialized ? (_jsx(Text, { color: colors.green, children: "Ready" })) : (_jsx(Text, { color: colors.orange, children: "Not initialized - run /init" }))] }), _jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { dimColor: true, children: sessionState.provider ? `${sessionState.provider}/${sessionState.model}` : 'No provider configured' }), _jsx(Text, { dimColor: true, children: " \u2502 Type /help for commands" })] }), messages.length > 0 && (_jsx(Box, { marginY: 1, flexDirection: "column", children: _jsx(MessageList, { messages: messages }) })),
|
|
220
|
+
return (_jsxs(Box, { flexDirection: "column", padding: 1, children: [_jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { color: colors.yellow, bold: true, children: "Wiggum Interactive Mode" }), _jsx(Text, { dimColor: true, children: " \u2502 " }), sessionState.initialized ? (_jsx(Text, { color: colors.green, children: "Ready" })) : (_jsx(Text, { color: colors.orange, children: "Not initialized - run /init" }))] }), _jsxs(Box, { marginBottom: 1, children: [_jsx(Text, { dimColor: true, children: sessionState.provider ? `${sessionState.provider}/${sessionState.model}` : 'No provider configured' }), _jsx(Text, { dimColor: true, children: " \u2502 Type /help for commands" })] }), messages.length > 0 && (_jsx(Box, { marginY: 1, flexDirection: "column", children: _jsx(MessageList, { messages: messages }) })), syncStatus !== 'idle' && (_jsxs(Box, { marginY: 1, flexDirection: "column", gap: 1, children: [syncStatus === 'running' && (_jsx(WorkingIndicator, { state: {
|
|
221
|
+
isWorking: true,
|
|
222
|
+
status: 'Syncing project context…',
|
|
223
|
+
} })), _jsx(ActionOutput, { actionName: "Sync", description: "Project context", status: syncStatus === 'running'
|
|
224
|
+
? 'running'
|
|
225
|
+
: syncStatus === 'success'
|
|
226
|
+
? 'success'
|
|
227
|
+
: 'error', output: syncStatus === 'running'
|
|
228
|
+
? 'Scanning + AI analysis…'
|
|
229
|
+
: syncStatus === 'success'
|
|
230
|
+
? 'Updated .ralph/.context.json'
|
|
231
|
+
: undefined, error: syncStatus === 'error' ? (syncError?.message || 'Unknown error') : undefined, previewLines: 2 }), syncStatus === 'success' && (_jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsxs(Box, { flexDirection: "row", children: [_jsxs(Text, { color: colors.green, children: [theme.chars.bullet, " "] }), _jsx(Text, { children: "Done. Project context updated." })] }), _jsxs(Box, { marginTop: 1, flexDirection: "column", children: [_jsx(Text, { bold: true, children: "What's next:" }), _jsxs(Box, { flexDirection: "row", gap: 1, children: [_jsx(Text, { color: colors.green, children: "\u203A" }), _jsxs(Text, { color: colors.blue, children: ["/new ", '<feature>'] }), _jsx(Text, { dimColor: true, children: "Create a feature specification" })] })] })] }))] })), _jsx(Box, { marginTop: 1, children: _jsx(ChatInput, { onSubmit: handleSubmit, disabled: false, placeholder: "Enter command or type /help...", onCommand: (cmd) => handleSubmit(`/${cmd}`) }) })] }));
|
|
230
232
|
}
|
|
231
233
|
//# sourceMappingURL=MainShell.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"MainShell.js","sourceRoot":"","sources":["../../../src/tui/screens/MainShell.tsx"],"names":[],"mappings":";AAAA;;;;;GAKG;AAEH,OAAc,EAAE,QAAQ,EAAE,WAAW,EAAE,
|
|
1
|
+
{"version":3,"file":"MainShell.js","sourceRoot":"","sources":["../../../src/tui/screens/MainShell.tsx"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -163,6 +163,7 @@ export function CommandDropdown({
|
|
|
163
163
|
*/
|
|
164
164
|
export const DEFAULT_COMMANDS: Command[] = [
|
|
165
165
|
{ name: 'init', description: 'Initialize project with CLAUDE.md' },
|
|
166
|
+
{ name: 'sync', description: 'Refresh project context (scan + AI analysis)' },
|
|
166
167
|
{ name: 'new', description: 'Create a new feature specification' },
|
|
167
168
|
{ name: 'run', description: 'Run a spec file with AI' },
|
|
168
169
|
{ name: 'help', description: 'Show available commands' },
|
|
@@ -153,6 +153,8 @@ function AssistantMessage({
|
|
|
153
153
|
function SystemMessage({ content }: { content: string }): React.ReactElement {
|
|
154
154
|
// Check if this is a phase header (e.g., "Phase 2: Goals - Describe what you want to build")
|
|
155
155
|
const phaseMatch = content.match(/^Phase (\d+): (.+?) - (.+)$/);
|
|
156
|
+
const isSyncFailure = content.toLowerCase().startsWith('sync failed:');
|
|
157
|
+
const isSyncMessage = content.toLowerCase().startsWith('sync:');
|
|
156
158
|
|
|
157
159
|
if (phaseMatch) {
|
|
158
160
|
const [, phaseNum, phaseName, description] = phaseMatch;
|
|
@@ -164,6 +166,22 @@ function SystemMessage({ content }: { content: string }): React.ReactElement {
|
|
|
164
166
|
);
|
|
165
167
|
}
|
|
166
168
|
|
|
169
|
+
if (isSyncFailure) {
|
|
170
|
+
return (
|
|
171
|
+
<Box marginY={1}>
|
|
172
|
+
<Text color={colors.pink}>{content}</Text>
|
|
173
|
+
</Box>
|
|
174
|
+
);
|
|
175
|
+
}
|
|
176
|
+
|
|
177
|
+
if (isSyncMessage) {
|
|
178
|
+
return (
|
|
179
|
+
<Box marginY={1}>
|
|
180
|
+
<Text color={colors.blue}>{content}</Text>
|
|
181
|
+
</Box>
|
|
182
|
+
);
|
|
183
|
+
}
|
|
184
|
+
|
|
167
185
|
return (
|
|
168
186
|
<Box marginY={1}>
|
|
169
187
|
<Text dimColor>{content}</Text>
|
|
@@ -5,11 +5,13 @@
|
|
|
5
5
|
* Handles slash commands and provides navigation to other screens.
|
|
6
6
|
*/
|
|
7
7
|
|
|
8
|
-
import React, { useState, useCallback
|
|
8
|
+
import React, { useState, useCallback } from 'react';
|
|
9
9
|
import { Box, Text, useInput, useApp } from 'ink';
|
|
10
10
|
import { MessageList, type Message } from '../components/MessageList.js';
|
|
11
11
|
import { ChatInput } from '../components/ChatInput.js';
|
|
12
|
-
import {
|
|
12
|
+
import { WorkingIndicator } from '../components/WorkingIndicator.js';
|
|
13
|
+
import { ActionOutput } from '../components/ActionOutput.js';
|
|
14
|
+
import { colors, theme } from '../theme.js';
|
|
13
15
|
import {
|
|
14
16
|
parseInput,
|
|
15
17
|
resolveCommandAlias,
|
|
@@ -87,16 +89,6 @@ export function MainShell({
|
|
|
87
89
|
setMessages((prev) => [...prev, message]);
|
|
88
90
|
}, []);
|
|
89
91
|
|
|
90
|
-
// Watch sync status changes
|
|
91
|
-
useEffect(() => {
|
|
92
|
-
if (syncStatus === 'success') {
|
|
93
|
-
addSystemMessage('Project context sync completed successfully.');
|
|
94
|
-
} else if (syncStatus === 'error') {
|
|
95
|
-
const msg = syncError?.message || 'Unknown error';
|
|
96
|
-
addSystemMessage(`Sync failed: ${msg}`);
|
|
97
|
-
}
|
|
98
|
-
}, [syncStatus, syncError, addSystemMessage]);
|
|
99
|
-
|
|
100
92
|
/**
|
|
101
93
|
* Handle /help command
|
|
102
94
|
*/
|
|
@@ -200,7 +192,6 @@ export function MainShell({
|
|
|
200
192
|
addSystemMessage('Sync already in progress.');
|
|
201
193
|
return;
|
|
202
194
|
}
|
|
203
|
-
addSystemMessage('Starting sync of project context…');
|
|
204
195
|
sync(sessionState.projectRoot, sessionState.provider, sessionState.model);
|
|
205
196
|
}, [sessionState, syncStatus, addSystemMessage, sync]);
|
|
206
197
|
|
|
@@ -313,6 +304,58 @@ export function MainShell({
|
|
|
313
304
|
</Box>
|
|
314
305
|
)}
|
|
315
306
|
|
|
307
|
+
{/* Sync UI */}
|
|
308
|
+
{syncStatus !== 'idle' && (
|
|
309
|
+
<Box marginY={1} flexDirection="column" gap={1}>
|
|
310
|
+
{syncStatus === 'running' && (
|
|
311
|
+
<WorkingIndicator
|
|
312
|
+
state={{
|
|
313
|
+
isWorking: true,
|
|
314
|
+
status: 'Syncing project context…',
|
|
315
|
+
}}
|
|
316
|
+
/>
|
|
317
|
+
)}
|
|
318
|
+
|
|
319
|
+
<ActionOutput
|
|
320
|
+
actionName="Sync"
|
|
321
|
+
description="Project context"
|
|
322
|
+
status={
|
|
323
|
+
syncStatus === 'running'
|
|
324
|
+
? 'running'
|
|
325
|
+
: syncStatus === 'success'
|
|
326
|
+
? 'success'
|
|
327
|
+
: 'error'
|
|
328
|
+
}
|
|
329
|
+
output={
|
|
330
|
+
syncStatus === 'running'
|
|
331
|
+
? 'Scanning + AI analysis…'
|
|
332
|
+
: syncStatus === 'success'
|
|
333
|
+
? 'Updated .ralph/.context.json'
|
|
334
|
+
: undefined
|
|
335
|
+
}
|
|
336
|
+
error={syncStatus === 'error' ? (syncError?.message || 'Unknown error') : undefined}
|
|
337
|
+
previewLines={2}
|
|
338
|
+
/>
|
|
339
|
+
|
|
340
|
+
{syncStatus === 'success' && (
|
|
341
|
+
<Box marginTop={1} flexDirection="column">
|
|
342
|
+
<Box flexDirection="row">
|
|
343
|
+
<Text color={colors.green}>{theme.chars.bullet} </Text>
|
|
344
|
+
<Text>Done. Project context updated.</Text>
|
|
345
|
+
</Box>
|
|
346
|
+
<Box marginTop={1} flexDirection="column">
|
|
347
|
+
<Text bold>What's next:</Text>
|
|
348
|
+
<Box flexDirection="row" gap={1}>
|
|
349
|
+
<Text color={colors.green}>›</Text>
|
|
350
|
+
<Text color={colors.blue}>/new {'<feature>'}</Text>
|
|
351
|
+
<Text dimColor>Create a feature specification</Text>
|
|
352
|
+
</Box>
|
|
353
|
+
</Box>
|
|
354
|
+
</Box>
|
|
355
|
+
)}
|
|
356
|
+
</Box>
|
|
357
|
+
)}
|
|
358
|
+
|
|
316
359
|
{/* Input */}
|
|
317
360
|
<Box marginTop={1}>
|
|
318
361
|
<ChatInput
|