paean 0.8.13 → 0.8.15
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/dist/agent/service.d.ts +5 -0
- package/dist/agent/service.d.ts.map +1 -1
- package/dist/agent/service.js +8 -4
- package/dist/agent/service.js.map +1 -1
- package/dist/agent/types.d.ts +12 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/utils.d.ts.map +1 -1
- package/dist/agent/utils.js +47 -32
- package/dist/agent/utils.js.map +1 -1
- package/dist/api/auth.d.ts +7 -0
- package/dist/api/auth.d.ts.map +1 -1
- package/dist/api/auth.js +70 -0
- package/dist/api/auth.js.map +1 -1
- package/dist/api/client.d.ts.map +1 -1
- package/dist/api/client.js +101 -7
- package/dist/api/client.js.map +1 -1
- package/dist/api/devices.d.ts +35 -0
- package/dist/api/devices.d.ts.map +1 -0
- package/dist/api/devices.js +77 -0
- package/dist/api/devices.js.map +1 -0
- package/dist/api/todo.d.ts +21 -0
- package/dist/api/todo.d.ts.map +1 -1
- package/dist/api/todo.js +18 -0
- package/dist/api/todo.js.map +1 -1
- package/dist/cli.js +17 -1
- package/dist/cli.js.map +1 -1
- package/dist/commands/completion.d.ts +7 -0
- package/dist/commands/completion.d.ts.map +1 -0
- package/dist/commands/completion.js +217 -0
- package/dist/commands/completion.js.map +1 -0
- package/dist/commands/config.d.ts +7 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +107 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/devices.d.ts +7 -0
- package/dist/commands/devices.d.ts.map +1 -0
- package/dist/commands/devices.js +86 -0
- package/dist/commands/devices.js.map +1 -0
- package/dist/commands/history.d.ts +20 -0
- package/dist/commands/history.d.ts.map +1 -1
- package/dist/commands/history.js +160 -10
- package/dist/commands/history.js.map +1 -1
- package/dist/commands/login.d.ts.map +1 -1
- package/dist/commands/login.js +110 -1
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/logout.d.ts.map +1 -1
- package/dist/commands/logout.js +11 -0
- package/dist/commands/logout.js.map +1 -1
- package/dist/commands/mcp.d.ts +7 -0
- package/dist/commands/mcp.d.ts.map +1 -0
- package/dist/commands/mcp.js +179 -0
- package/dist/commands/mcp.js.map +1 -0
- package/dist/commands/sparklet.d.ts +7 -0
- package/dist/commands/sparklet.d.ts.map +1 -0
- package/dist/commands/sparklet.js +145 -0
- package/dist/commands/sparklet.js.map +1 -0
- package/dist/commands/tasks.d.ts.map +1 -1
- package/dist/commands/tasks.js +48 -1
- package/dist/commands/tasks.js.map +1 -1
- package/dist/commands/worker.d.ts.map +1 -1
- package/dist/commands/worker.js +83 -27
- package/dist/commands/worker.js.map +1 -1
- package/dist/mcp/cli-agent-tools.d.ts.map +1 -1
- package/dist/mcp/cli-agent-tools.js +4 -2
- package/dist/mcp/cli-agent-tools.js.map +1 -1
- package/dist/mcp/client.d.ts +5 -0
- package/dist/mcp/client.d.ts.map +1 -1
- package/dist/mcp/client.js +23 -2
- package/dist/mcp/client.js.map +1 -1
- package/dist/mcp/system.d.ts.map +1 -1
- package/dist/mcp/system.js +291 -3
- package/dist/mcp/system.js.map +1 -1
- package/dist/mcp/tools.d.ts.map +1 -1
- package/dist/mcp/tools.js +287 -4
- package/dist/mcp/tools.js.map +1 -1
- package/dist/mcp/worker-tools.js +1 -1
- package/dist/mcp/worker-tools.js.map +1 -1
- package/dist/ui/App.d.ts.map +1 -1
- package/dist/ui/App.js +4 -4
- package/dist/ui/App.js.map +1 -1
- package/dist/ui/components/InputArea.d.ts +3 -1
- package/dist/ui/components/InputArea.d.ts.map +1 -1
- package/dist/ui/components/InputArea.js +164 -26
- package/dist/ui/components/InputArea.js.map +1 -1
- package/dist/ui/components/ToolCallIndicator.d.ts +23 -0
- package/dist/ui/components/ToolCallIndicator.d.ts.map +1 -1
- package/dist/ui/components/ToolCallIndicator.js +31 -4
- package/dist/ui/components/ToolCallIndicator.js.map +1 -1
- package/dist/ui/components/index.d.ts +2 -1
- package/dist/ui/components/index.d.ts.map +1 -1
- package/dist/ui/components/index.js +1 -1
- package/dist/ui/components/index.js.map +1 -1
- package/dist/ui/hooks/useAgentStream.d.ts +2 -0
- package/dist/ui/hooks/useAgentStream.d.ts.map +1 -1
- package/dist/ui/hooks/useAgentStream.js +41 -8
- package/dist/ui/hooks/useAgentStream.js.map +1 -1
- package/dist/ui/hooks/useCommands.d.ts +4 -5
- package/dist/ui/hooks/useCommands.d.ts.map +1 -1
- package/dist/ui/hooks/useCommands.js +76 -11
- package/dist/ui/hooks/useCommands.js.map +1 -1
- package/dist/utils/config.d.ts +18 -0
- package/dist/utils/config.d.ts.map +1 -1
- package/dist/utils/config.js +39 -3
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/output.d.ts +25 -8
- package/dist/utils/output.d.ts.map +1 -1
- package/dist/utils/output.js +46 -9
- package/dist/utils/output.js.map +1 -1
- package/dist/worker/executors/articulate.d.ts +23 -0
- package/dist/worker/executors/articulate.d.ts.map +1 -0
- package/dist/worker/executors/articulate.js +151 -0
- package/dist/worker/executors/articulate.js.map +1 -0
- package/dist/worker/index.d.ts +1 -0
- package/dist/worker/index.d.ts.map +1 -1
- package/dist/worker/index.js +1 -0
- package/dist/worker/index.js.map +1 -1
- package/dist/worker/service.d.ts +1 -0
- package/dist/worker/service.d.ts.map +1 -1
- package/dist/worker/service.js +8 -0
- package/dist/worker/service.js.map +1 -1
- package/dist/worker/supervisor.d.ts.map +1 -1
- package/dist/worker/supervisor.js +59 -21
- package/dist/worker/supervisor.js.map +1 -1
- package/dist/worker/types.d.ts +3 -1
- package/dist/worker/types.d.ts.map +1 -1
- package/dist/worker/types.js +20 -2
- package/dist/worker/types.js.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,EAAE,MAAM,OAAO,CAAC;AACtD,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,qBAAqB,EAAE,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"useAgentStream.js","sourceRoot":"","sources":["../../../src/ui/hooks/useAgentStream.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,11 +1,12 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* useCommands Hook
|
|
3
3
|
* Handles slash commands for the CLI
|
|
4
|
+
* Includes model switching, compact mode, session management, and usage info
|
|
4
5
|
*/
|
|
5
6
|
export interface CommandResult {
|
|
6
7
|
handled: boolean;
|
|
7
8
|
output?: string;
|
|
8
|
-
action?: 'exit' | 'clear' | 'toggle-raw' | 'toggle-debug';
|
|
9
|
+
action?: 'exit' | 'clear' | 'toggle-raw' | 'toggle-debug' | 'toggle-compact';
|
|
9
10
|
}
|
|
10
11
|
export interface UseCommandsOptions {
|
|
11
12
|
mcpServers?: Array<{
|
|
@@ -14,14 +15,12 @@ export interface UseCommandsOptions {
|
|
|
14
15
|
name: string;
|
|
15
16
|
}>;
|
|
16
17
|
}>;
|
|
17
|
-
|
|
18
|
-
onToggleDebug?: () => void;
|
|
19
|
-
onExit?: () => void;
|
|
20
|
-
onClear?: () => void;
|
|
18
|
+
conversationId?: string;
|
|
21
19
|
}
|
|
22
20
|
export interface UseCommandsReturn {
|
|
23
21
|
rawMode: boolean;
|
|
24
22
|
debugMode: boolean;
|
|
23
|
+
compactMode: boolean;
|
|
25
24
|
handleCommand: (input: string) => CommandResult;
|
|
26
25
|
getHelp: () => string;
|
|
27
26
|
getMcpStatus: () => string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCommands.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useCommands.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"useCommands.d.ts","sourceRoot":"","sources":["../../../src/ui/hooks/useCommands.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,GAAG,OAAO,GAAG,YAAY,GAAG,cAAc,GAAG,gBAAgB,CAAC;CAChF;AAED,MAAM,WAAW,kBAAkB;IAC/B,UAAU,CAAC,EAAE,KAAK,CAAC;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAA;SAAE,CAAC,CAAA;KAAE,CAAC,CAAC;IACtE,cAAc,CAAC,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,iBAAiB;IAC9B,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,EAAE,OAAO,CAAC;IACrB,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,aAAa,CAAC;IAChD,OAAO,EAAE,MAAM,MAAM,CAAC;IACtB,YAAY,EAAE,MAAM,MAAM,CAAC;IAC3B,cAAc,EAAE,CAAC,OAAO,EAAE,MAAM,KAAK,MAAM,EAAE,CAAC;CACjD;AAED,wBAAgB,WAAW,CAAC,OAAO,GAAE,kBAAuB,GAAG,iBAAiB,CA4L/E"}
|
|
@@ -1,13 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* useCommands Hook
|
|
3
3
|
* Handles slash commands for the CLI
|
|
4
|
+
* Includes model switching, compact mode, session management, and usage info
|
|
4
5
|
*/
|
|
5
|
-
import { useCallback, useState } from 'react';
|
|
6
|
+
import { useCallback, useState, useRef } from 'react';
|
|
6
7
|
export function useCommands(options = {}) {
|
|
7
8
|
const { mcpServers = [] } = options;
|
|
8
9
|
const [rawMode, setRawMode] = useState(false);
|
|
9
10
|
const [debugMode, setDebugMode] = useState(false);
|
|
10
|
-
|
|
11
|
+
const [compactMode, setCompactMode] = useState(false);
|
|
12
|
+
// Track session stats
|
|
13
|
+
const sessionStartRef = useRef(Date.now());
|
|
14
|
+
const messageCountRef = useRef(0);
|
|
11
15
|
const COMMANDS = [
|
|
12
16
|
'/exit', '/quit', '/q',
|
|
13
17
|
'/clear', '/cls',
|
|
@@ -15,18 +19,36 @@ export function useCommands(options = {}) {
|
|
|
15
19
|
'/debug',
|
|
16
20
|
'/mcp',
|
|
17
21
|
'/raw',
|
|
22
|
+
'/compact',
|
|
23
|
+
'/model',
|
|
24
|
+
'/status',
|
|
25
|
+
'/history',
|
|
18
26
|
];
|
|
19
27
|
const getHelp = useCallback(() => {
|
|
20
28
|
return `
|
|
21
29
|
Available Commands:
|
|
22
30
|
|
|
23
31
|
/exit Exit the chat session (/quit, /q)
|
|
24
|
-
/quit Exit the chat session
|
|
25
32
|
/clear Clear the screen (/cls)
|
|
26
33
|
/help Show available commands (/h, /?)
|
|
27
34
|
/debug Toggle debug mode
|
|
28
35
|
/mcp Show MCP connection status
|
|
29
36
|
/raw Toggle raw output mode (no markdown)
|
|
37
|
+
/compact Toggle compact mode (hide tool call details)
|
|
38
|
+
/model Show current model info
|
|
39
|
+
/status Show session statistics
|
|
40
|
+
/history Show how to list conversation history
|
|
41
|
+
|
|
42
|
+
Keyboard Shortcuts:
|
|
43
|
+
Up/Down Navigate input history
|
|
44
|
+
Left/Right Move cursor within input
|
|
45
|
+
Ctrl+A/E Jump to start/end of line
|
|
46
|
+
Ctrl+U Clear line before cursor
|
|
47
|
+
Ctrl+K Clear line after cursor
|
|
48
|
+
Ctrl+W Delete word before cursor
|
|
49
|
+
Tab Autocomplete commands
|
|
50
|
+
Esc Clear input
|
|
51
|
+
\\+Enter Multi-line continuation
|
|
30
52
|
|
|
31
53
|
Press Tab after / to autocomplete commands
|
|
32
54
|
`;
|
|
@@ -38,11 +60,13 @@ export function useCommands(options = {}) {
|
|
|
38
60
|
let status = '\n MCP Connections:\n\n';
|
|
39
61
|
for (const server of mcpServers) {
|
|
40
62
|
const toolCount = server.tools?.length || 0;
|
|
41
|
-
|
|
63
|
+
const connStatus = toolCount > 0 ? 'connected' : 'pending';
|
|
64
|
+
status += ` ${server.name}: ${toolCount} tools (${connStatus})\n`;
|
|
42
65
|
}
|
|
66
|
+
const totalTools = mcpServers.reduce((sum, s) => sum + (s.tools?.length || 0), 0);
|
|
67
|
+
status += `\n Total: ${totalTools} tools across ${mcpServers.length} server(s)\n`;
|
|
43
68
|
return status;
|
|
44
69
|
}, [mcpServers]);
|
|
45
|
-
// Get command completions for partial input
|
|
46
70
|
const getCompletions = useCallback((partial) => {
|
|
47
71
|
if (!partial.startsWith('/')) {
|
|
48
72
|
return [];
|
|
@@ -52,7 +76,9 @@ export function useCommands(options = {}) {
|
|
|
52
76
|
}, []);
|
|
53
77
|
const handleCommand = useCallback((input) => {
|
|
54
78
|
const cmd = input.toLowerCase().trim();
|
|
55
|
-
|
|
79
|
+
const parts = input.trim().split(/\s+/);
|
|
80
|
+
const baseCmd = parts[0].toLowerCase();
|
|
81
|
+
switch (baseCmd) {
|
|
56
82
|
case '/exit':
|
|
57
83
|
case '/quit':
|
|
58
84
|
case '/q':
|
|
@@ -75,30 +101,69 @@ export function useCommands(options = {}) {
|
|
|
75
101
|
case '/raw':
|
|
76
102
|
setRawMode(prev => !prev);
|
|
77
103
|
const newRawState = !rawMode;
|
|
78
|
-
let
|
|
104
|
+
let rawOutput = ` Raw mode: ${newRawState ? 'ON' : 'OFF'}`;
|
|
79
105
|
if (newRawState) {
|
|
80
|
-
|
|
106
|
+
rawOutput += '\n Agent will return plain text (no markdown)';
|
|
81
107
|
}
|
|
82
108
|
return {
|
|
83
109
|
handled: true,
|
|
84
|
-
output,
|
|
110
|
+
output: rawOutput,
|
|
85
111
|
action: 'toggle-raw'
|
|
86
112
|
};
|
|
113
|
+
case '/compact':
|
|
114
|
+
setCompactMode(prev => !prev);
|
|
115
|
+
const newCompactState = !compactMode;
|
|
116
|
+
return {
|
|
117
|
+
handled: true,
|
|
118
|
+
output: ` Compact mode: ${newCompactState ? 'ON' : 'OFF'}${newCompactState ? '\n Tool call details will be hidden' : ''}`,
|
|
119
|
+
action: 'toggle-compact'
|
|
120
|
+
};
|
|
87
121
|
case '/mcp':
|
|
88
122
|
return { handled: true, output: getMcpStatus() };
|
|
123
|
+
case '/model':
|
|
124
|
+
return {
|
|
125
|
+
handled: true,
|
|
126
|
+
output: '\n Current model: Paean AI (cloud)\n Model selection is handled server-side based on task complexity.\n'
|
|
127
|
+
};
|
|
128
|
+
case '/status': {
|
|
129
|
+
const elapsed = Date.now() - sessionStartRef.current;
|
|
130
|
+
const mins = Math.floor(elapsed / 60000);
|
|
131
|
+
const secs = Math.floor((elapsed % 60000) / 1000);
|
|
132
|
+
const duration = mins > 0 ? `${mins}m ${secs}s` : `${secs}s`;
|
|
133
|
+
const convId = options.conversationId;
|
|
134
|
+
let status = '\n Session Status:\n\n';
|
|
135
|
+
status += ` Duration: ${duration}\n`;
|
|
136
|
+
status += ` Messages: ${messageCountRef.current}\n`;
|
|
137
|
+
status += ` Raw mode: ${rawMode ? 'ON' : 'OFF'}\n`;
|
|
138
|
+
status += ` Compact mode: ${compactMode ? 'ON' : 'OFF'}\n`;
|
|
139
|
+
status += ` Debug mode: ${debugMode ? 'ON' : 'OFF'}\n`;
|
|
140
|
+
if (convId) {
|
|
141
|
+
status += ` Conversation: ${convId.substring(0, 8)}...\n`;
|
|
142
|
+
}
|
|
143
|
+
status += ` MCP servers: ${mcpServers.length}\n`;
|
|
144
|
+
return { handled: true, output: status };
|
|
145
|
+
}
|
|
146
|
+
case '/history':
|
|
147
|
+
return {
|
|
148
|
+
handled: true,
|
|
149
|
+
output: '\n Conversation History:\n\n List: paean ls\n Resume: paean resume <id>\n Show: paean show <id>\n Star: paean star <id>\n'
|
|
150
|
+
};
|
|
89
151
|
default:
|
|
90
152
|
if (cmd.startsWith('/')) {
|
|
91
153
|
return {
|
|
92
154
|
handled: true,
|
|
93
|
-
output: `\n Unknown command: ${
|
|
155
|
+
output: `\n Unknown command: ${baseCmd}\n Type /help for available commands\n`
|
|
94
156
|
};
|
|
95
157
|
}
|
|
158
|
+
// Track message count for /status
|
|
159
|
+
messageCountRef.current++;
|
|
96
160
|
return { handled: false };
|
|
97
161
|
}
|
|
98
|
-
}, [debugMode, rawMode, getHelp, getMcpStatus]);
|
|
162
|
+
}, [debugMode, rawMode, compactMode, getHelp, getMcpStatus, mcpServers.length, options.conversationId]);
|
|
99
163
|
return {
|
|
100
164
|
rawMode,
|
|
101
165
|
debugMode,
|
|
166
|
+
compactMode,
|
|
102
167
|
handleCommand,
|
|
103
168
|
getHelp,
|
|
104
169
|
getMcpStatus,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"useCommands.js","sourceRoot":"","sources":["../../../src/ui/hooks/useCommands.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"useCommands.js","sourceRoot":"","sources":["../../../src/ui/hooks/useCommands.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/config.d.ts
CHANGED
|
@@ -32,29 +32,47 @@ export declare function setConfigValue<K extends keyof PaeanConfig>(key: K, valu
|
|
|
32
32
|
export declare function setConfig(values: Partial<PaeanConfig>): void;
|
|
33
33
|
/**
|
|
34
34
|
* Check if user is authenticated
|
|
35
|
+
* Environment variable PAEAN_TOKEN bypasses expiry checks
|
|
35
36
|
*/
|
|
36
37
|
export declare function isAuthenticated(): boolean;
|
|
37
38
|
/**
|
|
38
39
|
* Get the authentication token
|
|
40
|
+
* Supports PAEAN_TOKEN environment variable override
|
|
39
41
|
*/
|
|
40
42
|
export declare function getToken(): string | undefined;
|
|
41
43
|
/**
|
|
42
44
|
* Get the API URL
|
|
45
|
+
* Supports PAEAN_API_URL environment variable override
|
|
43
46
|
*/
|
|
44
47
|
export declare function getApiUrl(): string;
|
|
45
48
|
/**
|
|
46
49
|
* Get the Web URL
|
|
50
|
+
* Supports PAEAN_WEB_URL environment variable override
|
|
47
51
|
*/
|
|
48
52
|
export declare function getWebUrl(): string;
|
|
53
|
+
/**
|
|
54
|
+
* Check if debug mode is enabled via environment variable
|
|
55
|
+
*/
|
|
56
|
+
export declare function isDebugEnabled(): boolean;
|
|
49
57
|
/**
|
|
50
58
|
* Store authentication data
|
|
51
59
|
*/
|
|
52
60
|
export declare function storeAuth(data: {
|
|
53
61
|
token: string;
|
|
62
|
+
refreshToken?: string;
|
|
54
63
|
userId?: number;
|
|
55
64
|
email?: string;
|
|
56
65
|
expiresAt?: string;
|
|
57
66
|
}): void;
|
|
67
|
+
/**
|
|
68
|
+
* Get the refresh token
|
|
69
|
+
*/
|
|
70
|
+
export declare function getRefreshToken(): string | undefined;
|
|
71
|
+
/**
|
|
72
|
+
* Check if the current token is near expiry (within buffer window)
|
|
73
|
+
* Returns true if the token exists but will expire soon
|
|
74
|
+
*/
|
|
75
|
+
export declare function isTokenNearExpiry(): boolean;
|
|
58
76
|
/**
|
|
59
77
|
* Clear authentication data (logout)
|
|
60
78
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,WAAW;IAE1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC5C,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CAC7C;AA2BD;;GAEG;AACH,wBAAgB,SAAS,IAAI,WAAW,CAEvC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,WAAW,EACxD,GAAG,EAAE,CAAC,GACL,WAAW,CAAC,CAAC,CAAC,CAEhB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,WAAW,EACxD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GACpB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAM5D;AAED
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAMH,MAAM,WAAW,WAAW;IAE1B,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IAGnB,eAAe,CAAC,EAAE,MAAM,CAAC;IAGzB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,MAAM,CAAC,EAAE,MAAM,CAAC;IAGhB,eAAe,CAAC,EAAE,MAAM,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC5C,YAAY,CAAC,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,CAAC;CAC7C;AA2BD;;GAEG;AACH,wBAAgB,SAAS,IAAI,WAAW,CAEvC;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,WAAW,EACxD,GAAG,EAAE,CAAC,GACL,WAAW,CAAC,CAAC,CAAC,CAEhB;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,CAAC,SAAS,MAAM,WAAW,EACxD,GAAG,EAAE,CAAC,EACN,KAAK,EAAE,WAAW,CAAC,CAAC,CAAC,GACpB,IAAI,CAEN;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,MAAM,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,IAAI,CAM5D;AAED;;;GAGG;AACH,wBAAgB,eAAe,IAAI,OAAO,CAoBzC;AAED;;;GAGG;AACH,wBAAgB,QAAQ,IAAI,MAAM,GAAG,SAAS,CAE7C;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;;GAGG;AACH,wBAAgB,SAAS,IAAI,MAAM,CAElC;AAED;;GAEG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;GAEG;AACH,wBAAgB,SAAS,CAAC,IAAI,EAAE;IAC9B,KAAK,EAAE,MAAM,CAAC;IACd,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB,GAAG,IAAI,CAQP;AAED;;GAEG;AACH,wBAAgB,eAAe,IAAI,MAAM,GAAG,SAAS,CAEpD;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,IAAI,OAAO,CAY3C;AAED;;GAEG;AACH,wBAAgB,SAAS,IAAI,IAAI,CAMhC;AAED;;GAEG;AACH,wBAAgB,aAAa,IAAI,MAAM,CAEtC;AAED;;GAEG;AACH,wBAAgB,WAAW,IAAI,IAAI,CAElC"}
|
package/dist/utils/config.js
CHANGED
|
@@ -58,8 +58,12 @@ export function setConfig(values) {
|
|
|
58
58
|
}
|
|
59
59
|
/**
|
|
60
60
|
* Check if user is authenticated
|
|
61
|
+
* Environment variable PAEAN_TOKEN bypasses expiry checks
|
|
61
62
|
*/
|
|
62
63
|
export function isAuthenticated() {
|
|
64
|
+
// Env token always counts as authenticated
|
|
65
|
+
if (process.env.PAEAN_TOKEN)
|
|
66
|
+
return true;
|
|
63
67
|
const token = config.get("token");
|
|
64
68
|
const expiresAt = config.get("expiresAt");
|
|
65
69
|
if (!token)
|
|
@@ -77,21 +81,30 @@ export function isAuthenticated() {
|
|
|
77
81
|
}
|
|
78
82
|
/**
|
|
79
83
|
* Get the authentication token
|
|
84
|
+
* Supports PAEAN_TOKEN environment variable override
|
|
80
85
|
*/
|
|
81
86
|
export function getToken() {
|
|
82
|
-
return config.get("token");
|
|
87
|
+
return process.env.PAEAN_TOKEN || config.get("token");
|
|
83
88
|
}
|
|
84
89
|
/**
|
|
85
90
|
* Get the API URL
|
|
91
|
+
* Supports PAEAN_API_URL environment variable override
|
|
86
92
|
*/
|
|
87
93
|
export function getApiUrl() {
|
|
88
|
-
return config.get("apiUrl") || CONFIG_DEFAULTS.apiUrl;
|
|
94
|
+
return process.env.PAEAN_API_URL || config.get("apiUrl") || CONFIG_DEFAULTS.apiUrl;
|
|
89
95
|
}
|
|
90
96
|
/**
|
|
91
97
|
* Get the Web URL
|
|
98
|
+
* Supports PAEAN_WEB_URL environment variable override
|
|
92
99
|
*/
|
|
93
100
|
export function getWebUrl() {
|
|
94
|
-
return config.get("webUrl") || CONFIG_DEFAULTS.webUrl;
|
|
101
|
+
return process.env.PAEAN_WEB_URL || config.get("webUrl") || CONFIG_DEFAULTS.webUrl;
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Check if debug mode is enabled via environment variable
|
|
105
|
+
*/
|
|
106
|
+
export function isDebugEnabled() {
|
|
107
|
+
return process.env.PAEAN_DEBUG === '1' || process.env.PAEAN_DEBUG === 'true';
|
|
95
108
|
}
|
|
96
109
|
/**
|
|
97
110
|
* Store authentication data
|
|
@@ -99,11 +112,34 @@ export function getWebUrl() {
|
|
|
99
112
|
export function storeAuth(data) {
|
|
100
113
|
setConfig({
|
|
101
114
|
token: data.token,
|
|
115
|
+
refreshToken: data.refreshToken,
|
|
102
116
|
userId: data.userId,
|
|
103
117
|
email: data.email,
|
|
104
118
|
expiresAt: data.expiresAt,
|
|
105
119
|
});
|
|
106
120
|
}
|
|
121
|
+
/**
|
|
122
|
+
* Get the refresh token
|
|
123
|
+
*/
|
|
124
|
+
export function getRefreshToken() {
|
|
125
|
+
return config.get("refreshToken");
|
|
126
|
+
}
|
|
127
|
+
/**
|
|
128
|
+
* Check if the current token is near expiry (within buffer window)
|
|
129
|
+
* Returns true if the token exists but will expire soon
|
|
130
|
+
*/
|
|
131
|
+
export function isTokenNearExpiry() {
|
|
132
|
+
const token = config.get("token");
|
|
133
|
+
const expiresAt = config.get("expiresAt");
|
|
134
|
+
if (!token || !expiresAt)
|
|
135
|
+
return false;
|
|
136
|
+
const expiry = new Date(expiresAt).getTime();
|
|
137
|
+
if (isNaN(expiry))
|
|
138
|
+
return false;
|
|
139
|
+
const now = Date.now();
|
|
140
|
+
const buffer = 10 * 60 * 1000; // 10 minutes - refresh proactively
|
|
141
|
+
return expiry - buffer < now && expiry > now;
|
|
142
|
+
}
|
|
107
143
|
/**
|
|
108
144
|
* Clear authentication data (logout)
|
|
109
145
|
*/
|
package/dist/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAsB5B,MAAM,eAAe,GAAgB;IACnC,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,eAAe,EAAE,QAAQ;IACzB,YAAY,EAAE,OAAO;CACtB,CAAC;AAEF,qCAAqC;AACrC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAc;IACnC,WAAW,EAAE,OAAO;IACpB,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC;IAC9B,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE;QACpE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;KACrE;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAM;IAEN,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAM,EACN,KAAqB;IAErB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,MAA4B;IACpD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,GAAwB,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;AACH,CAAC;AAED
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,IAAI,MAAM,MAAM,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,IAAI,CAAC;AAC7B,OAAO,EAAE,IAAI,EAAE,MAAM,MAAM,CAAC;AAsB5B,MAAM,eAAe,GAAgB;IACnC,MAAM,EAAE,sBAAsB;IAC9B,MAAM,EAAE,sBAAsB;IAC9B,eAAe,EAAE,QAAQ;IACzB,YAAY,EAAE,OAAO;CACtB,CAAC;AAEF,qCAAqC;AACrC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAc;IACnC,WAAW,EAAE,OAAO;IACpB,GAAG,EAAE,IAAI,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC;IAC9B,QAAQ,EAAE,eAAe;IACzB,MAAM,EAAE;QACN,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAChC,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,KAAK,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QACzB,SAAS,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC7B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,MAAM,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC1B,eAAe,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,MAAM,EAAE,QAAQ,EAAE,KAAK,CAAC,EAAE;QACpE,YAAY,EAAE,EAAE,IAAI,EAAE,QAAQ,EAAE,IAAI,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,CAAC,EAAE;KACrE;CACF,CAAC,CAAC;AAEH;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,MAAM,CAAC,KAAK,CAAC;AACtB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAM;IAEN,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAC5B,GAAM,EACN,KAAqB;IAErB,MAAM,CAAC,GAAG,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;AACzB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,MAA4B;IACpD,KAAK,MAAM,CAAC,GAAG,EAAE,KAAK,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE,CAAC;QAClD,IAAI,KAAK,KAAK,SAAS,EAAE,CAAC;YACxB,MAAM,CAAC,GAAG,CAAC,GAAwB,EAAE,KAAK,CAAC,CAAC;QAC9C,CAAC;IACH,CAAC;AACH,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,eAAe;IAC7B,2CAA2C;IAC3C,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW;QAAE,OAAO,IAAI,CAAC;IAEzC,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,CAAC,KAAK;QAAE,OAAO,KAAK,CAAC;IAEzB,mDAAmD;IACnD,IAAI,SAAS,EAAE,CAAC;QACd,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;QAC7C,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;QACvB,MAAM,MAAM,GAAG,CAAC,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,YAAY;QAC1C,IAAI,MAAM,GAAG,MAAM,GAAG,GAAG,EAAE,CAAC;YAC1B,OAAO,KAAK,CAAC;QACf,CAAC;IACH,CAAC;IAED,OAAO,IAAI,CAAC;AACd,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,QAAQ;IACtB,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,MAAO,CAAC;AACtF,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,SAAS;IACvB,OAAO,OAAO,CAAC,GAAG,CAAC,aAAa,IAAI,MAAM,CAAC,GAAG,CAAC,QAAQ,CAAC,IAAI,eAAe,CAAC,MAAO,CAAC;AACtF,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc;IAC5B,OAAO,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,GAAG,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,KAAK,MAAM,CAAC;AAC/E,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS,CAAC,IAMzB;IACC,SAAS,CAAC;QACR,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,YAAY,EAAE,IAAI,CAAC,YAAY;QAC/B,MAAM,EAAE,IAAI,CAAC,MAAM;QACnB,KAAK,EAAE,IAAI,CAAC,KAAK;QACjB,SAAS,EAAE,IAAI,CAAC,SAAS;KAC1B,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe;IAC7B,OAAO,MAAM,CAAC,GAAG,CAAC,cAAc,CAAC,CAAC;AACpC,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,iBAAiB;IAC/B,MAAM,KAAK,GAAG,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;IAClC,MAAM,SAAS,GAAG,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,CAAC;IAE1C,IAAI,CAAC,KAAK,IAAI,CAAC,SAAS;QAAE,OAAO,KAAK,CAAC;IAEvC,MAAM,MAAM,GAAG,IAAI,IAAI,CAAC,SAAS,CAAC,CAAC,OAAO,EAAE,CAAC;IAC7C,IAAI,KAAK,CAAC,MAAM,CAAC;QAAE,OAAO,KAAK,CAAC;IAEhC,MAAM,GAAG,GAAG,IAAI,CAAC,GAAG,EAAE,CAAC;IACvB,MAAM,MAAM,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,CAAC,mCAAmC;IAClE,OAAO,MAAM,GAAG,MAAM,GAAG,GAAG,IAAI,MAAM,GAAG,GAAG,CAAC;AAC/C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,SAAS;IACvB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvB,MAAM,CAAC,MAAM,CAAC,cAAc,CAAC,CAAC;IAC9B,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC;IACxB,MAAM,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC;IACvB,MAAM,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;AAC7B,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,aAAa;IAC3B,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,WAAW;IACzB,MAAM,CAAC,KAAK,EAAE,CAAC;AACjB,CAAC"}
|
package/dist/utils/output.d.ts
CHANGED
|
@@ -1,16 +1,29 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLI output utilities
|
|
3
3
|
* Provides consistent formatting for CLI output
|
|
4
|
+
* Supports NO_COLOR (https://no-color.org/), --no-color flag, and TTY detection
|
|
4
5
|
*/
|
|
5
6
|
import { type Ora } from 'ora';
|
|
7
|
+
/**
|
|
8
|
+
* Whether the output is a TTY (interactive terminal)
|
|
9
|
+
*/
|
|
10
|
+
export declare const isTTY: boolean;
|
|
11
|
+
/**
|
|
12
|
+
* Whether color output is disabled via NO_COLOR env or --no-color flag
|
|
13
|
+
*/
|
|
14
|
+
export declare const isColorDisabled: boolean;
|
|
15
|
+
/**
|
|
16
|
+
* Whether to use colors (TTY and not explicitly disabled)
|
|
17
|
+
*/
|
|
18
|
+
export declare const useColors: boolean;
|
|
6
19
|
export declare const colors: {
|
|
7
|
-
primary: import("chalk").ChalkInstance;
|
|
8
|
-
success: import("chalk").ChalkInstance;
|
|
9
|
-
warning: import("chalk").ChalkInstance;
|
|
10
|
-
error: import("chalk").ChalkInstance;
|
|
11
|
-
info: import("chalk").ChalkInstance;
|
|
12
|
-
dim: import("chalk").ChalkInstance;
|
|
13
|
-
bold: import("chalk").ChalkInstance;
|
|
20
|
+
primary: import("chalk").ChalkInstance | ((s: string) => string);
|
|
21
|
+
success: import("chalk").ChalkInstance | ((s: string) => string);
|
|
22
|
+
warning: import("chalk").ChalkInstance | ((s: string) => string);
|
|
23
|
+
error: import("chalk").ChalkInstance | ((s: string) => string);
|
|
24
|
+
info: import("chalk").ChalkInstance | ((s: string) => string);
|
|
25
|
+
dim: import("chalk").ChalkInstance | ((s: string) => string);
|
|
26
|
+
bold: import("chalk").ChalkInstance | ((s: string) => string);
|
|
14
27
|
};
|
|
15
28
|
/**
|
|
16
29
|
* Print a success message
|
|
@@ -37,7 +50,7 @@ export declare function primary(message: string): void;
|
|
|
37
50
|
*/
|
|
38
51
|
export declare function dim(message: string): void;
|
|
39
52
|
/**
|
|
40
|
-
* Create a spinner
|
|
53
|
+
* Create a spinner (disabled when not a TTY)
|
|
41
54
|
*/
|
|
42
55
|
export declare function spinner(text: string): Ora;
|
|
43
56
|
/**
|
|
@@ -76,6 +89,10 @@ export declare function formatDate(date: string | Date): string;
|
|
|
76
89
|
* Truncate text to a maximum length
|
|
77
90
|
*/
|
|
78
91
|
export declare function truncate(text: string, maxLength: number): string;
|
|
92
|
+
/**
|
|
93
|
+
* Format a duration in milliseconds to a human-readable string
|
|
94
|
+
*/
|
|
95
|
+
export declare function formatDuration(ms: number): string;
|
|
79
96
|
/**
|
|
80
97
|
* Print an error message with contextual recovery hints
|
|
81
98
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAY,EAAE,KAAK,GAAG,EAAE,MAAM,KAAK,CAAC;AAYpC;;GAEG;AACH,eAAO,MAAM,KAAK,SAAgC,CAAC;AAEnD;;GAEG;AACH,eAAO,MAAM,eAAe,SAGC,CAAC;AAE9B;;GAEG;AACH,eAAO,MAAM,SAAS,SAA4B,CAAC;AAQnD,eAAO,MAAM,MAAM;kDAHE,MAAM;kDAAN,MAAM;kDAAN,MAAM;gDAAN,MAAM;+CAAN,MAAM;8CAAN,MAAM;+CAAN,MAAM;CAW1B,CAAC;AAEF;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED;;GAEG;AACH,wBAAgB,KAAK,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE3C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE1C;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAE7C;AAED;;GAEG;AACH,wBAAgB,GAAG,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAEzC;AAED;;GAEG;AACH,wBAAgB,OAAO,CAAC,IAAI,EAAE,MAAM,GAAG,GAAG,CAMzC;AAED;;GAEG;AACH,wBAAgB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,CAIzC;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,EAAE,UAAU,SAAK,GAAG,IAAI,CAG5E;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,MAAM,SAAI,GAAG,IAAI,CAGvD;AAED;;GAEG;AACH,wBAAgB,IAAI,CAAC,IAAI,EAAE,OAAO,GAAG,IAAI,CAExC;AAED;;GAEG;AACH,wBAAgB,OAAO,IAAI,IAAI,CAE9B;AAED;;GAEG;AACH,wBAAgB,YAAY,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAanD;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAWvD;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI,GAAG,MAAM,CAetD;AAED;;GAEG;AACH,wBAAgB,QAAQ,CAAC,IAAI,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,GAAG,MAAM,CAGhE;AAED;;GAEG;AACH,wBAAgB,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,MAAM,CAWjD;AAiBD;;GAEG;AACH,wBAAgB,aAAa,CAAC,OAAO,EAAE,MAAM,GAAG,IAAI,CAMnD;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAG9D"}
|
package/dist/utils/output.js
CHANGED
|
@@ -1,18 +1,37 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* CLI output utilities
|
|
3
3
|
* Provides consistent formatting for CLI output
|
|
4
|
+
* Supports NO_COLOR (https://no-color.org/), --no-color flag, and TTY detection
|
|
4
5
|
*/
|
|
5
6
|
import ora from 'ora';
|
|
6
7
|
import { primary as primaryStyle, success as successStyle, warning as warningStyle, error as errorStyle, info as infoStyle, muted as mutedStyle, bold as boldStyle, symbols, } from '../ui/theme/index.js';
|
|
7
|
-
|
|
8
|
+
/**
|
|
9
|
+
* Whether the output is a TTY (interactive terminal)
|
|
10
|
+
*/
|
|
11
|
+
export const isTTY = process.stdout.isTTY === true;
|
|
12
|
+
/**
|
|
13
|
+
* Whether color output is disabled via NO_COLOR env or --no-color flag
|
|
14
|
+
*/
|
|
15
|
+
export const isColorDisabled = 'NO_COLOR' in process.env ||
|
|
16
|
+
process.argv.includes('--no-color') ||
|
|
17
|
+
process.env.TERM === 'dumb';
|
|
18
|
+
/**
|
|
19
|
+
* Whether to use colors (TTY and not explicitly disabled)
|
|
20
|
+
*/
|
|
21
|
+
export const useColors = isTTY && !isColorDisabled;
|
|
22
|
+
/**
|
|
23
|
+
* Identity function for when colors are disabled
|
|
24
|
+
*/
|
|
25
|
+
const identity = (s) => s;
|
|
26
|
+
// Color scheme matching Paean brand (respects NO_COLOR and TTY detection)
|
|
8
27
|
export const colors = {
|
|
9
|
-
primary: primaryStyle,
|
|
10
|
-
success: successStyle,
|
|
11
|
-
warning: warningStyle,
|
|
12
|
-
error: errorStyle,
|
|
13
|
-
info: infoStyle,
|
|
14
|
-
dim: mutedStyle,
|
|
15
|
-
bold: boldStyle,
|
|
28
|
+
primary: useColors ? primaryStyle : identity,
|
|
29
|
+
success: useColors ? successStyle : identity,
|
|
30
|
+
warning: useColors ? warningStyle : identity,
|
|
31
|
+
error: useColors ? errorStyle : identity,
|
|
32
|
+
info: useColors ? infoStyle : identity,
|
|
33
|
+
dim: useColors ? mutedStyle : identity,
|
|
34
|
+
bold: useColors ? boldStyle : identity,
|
|
16
35
|
};
|
|
17
36
|
/**
|
|
18
37
|
* Print a success message
|
|
@@ -51,12 +70,13 @@ export function dim(message) {
|
|
|
51
70
|
console.log(colors.dim(message));
|
|
52
71
|
}
|
|
53
72
|
/**
|
|
54
|
-
* Create a spinner
|
|
73
|
+
* Create a spinner (disabled when not a TTY)
|
|
55
74
|
*/
|
|
56
75
|
export function spinner(text) {
|
|
57
76
|
return ora({
|
|
58
77
|
text,
|
|
59
78
|
color: 'cyan',
|
|
79
|
+
isSilent: !isTTY,
|
|
60
80
|
});
|
|
61
81
|
}
|
|
62
82
|
/**
|
|
@@ -154,6 +174,23 @@ export function truncate(text, maxLength) {
|
|
|
154
174
|
return text;
|
|
155
175
|
return text.slice(0, maxLength - 3) + '...';
|
|
156
176
|
}
|
|
177
|
+
/**
|
|
178
|
+
* Format a duration in milliseconds to a human-readable string
|
|
179
|
+
*/
|
|
180
|
+
export function formatDuration(ms) {
|
|
181
|
+
if (ms < 1000)
|
|
182
|
+
return `${ms}ms`;
|
|
183
|
+
if (ms < 60000)
|
|
184
|
+
return `${(ms / 1000).toFixed(1)}s`;
|
|
185
|
+
if (ms < 3600000) {
|
|
186
|
+
const mins = Math.floor(ms / 60000);
|
|
187
|
+
const secs = Math.floor((ms % 60000) / 1000);
|
|
188
|
+
return `${mins}m ${secs}s`;
|
|
189
|
+
}
|
|
190
|
+
const hours = Math.floor(ms / 3600000);
|
|
191
|
+
const mins = Math.floor((ms % 3600000) / 60000);
|
|
192
|
+
return `${hours}h ${mins}m`;
|
|
193
|
+
}
|
|
157
194
|
/**
|
|
158
195
|
* Error recovery hints - maps common error patterns to actionable suggestions
|
|
159
196
|
* Inspired by Codex CLI's approach to user-friendly error messaging
|
package/dist/utils/output.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/utils/output.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,GAAiB,MAAM,KAAK,CAAC;AACpC,OAAO,EACL,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,OAAO,IAAI,YAAY,EACvB,KAAK,IAAI,UAAU,EACnB,IAAI,IAAI,SAAS,EACjB,KAAK,IAAI,UAAU,EACnB,IAAI,IAAI,SAAS,EACjB,OAAO,GACR,MAAM,sBAAsB,CAAC;AAE9B;;GAEG;AACH,MAAM,CAAC,MAAM,KAAK,GAAG,OAAO,CAAC,MAAM,CAAC,KAAK,KAAK,IAAI,CAAC;AAEnD;;GAEG;AACH,MAAM,CAAC,MAAM,eAAe,GAC1B,UAAU,IAAI,OAAO,CAAC,GAAG;IACzB,OAAO,CAAC,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC;IACnC,OAAO,CAAC,GAAG,CAAC,IAAI,KAAK,MAAM,CAAC;AAE9B;;GAEG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,KAAK,IAAI,CAAC,eAAe,CAAC;AAEnD;;GAEG;AACH,MAAM,QAAQ,GAAG,CAAC,CAAS,EAAE,EAAE,CAAC,CAAC,CAAC;AAElC,0EAA0E;AAC1E,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;IAC5C,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;IAC5C,OAAO,EAAE,SAAS,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,QAAQ;IAC5C,KAAK,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;IACxC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;IACtC,GAAG,EAAE,SAAS,CAAC,CAAC,CAAC,UAAU,CAAC,CAAC,CAAC,QAAQ;IACtC,IAAI,EAAE,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,QAAQ;CACvC,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,KAAK,CAAC,OAAe;IACnC,OAAO,CAAC,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,OAAO,CAAC,KAAK,CAAC,EAAE,OAAO,CAAC,CAAC;AACtD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,OAAO,CAAC,EAAE,OAAO,CAAC,CAAC;AACxD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,OAAe;IAClC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,OAAO,CAAC,CAAC;AAClD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,OAAe;IACrC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,OAAO,CAAC,OAAO,CAAC,CAAC,CAAC;AACvC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,GAAG,CAAC,OAAe;IACjC,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO,CAAC,IAAY;IAClC,OAAO,GAAG,CAAC;QACT,IAAI;QACJ,KAAK,EAAE,MAAM;QACb,QAAQ,EAAE,CAAC,KAAK;KACjB,CAAC,CAAC;AACL,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,MAAM,CAAC,IAAY;IACjC,OAAO,CAAC,GAAG,EAAE,CAAC;IACd,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAC/C,OAAO,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,MAAM,CAAC,IAAI,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,KAAa,EAAE,KAAa,EAAE,UAAU,GAAG,EAAE;IACpE,MAAM,WAAW,GAAG,KAAK,CAAC,MAAM,CAAC,UAAU,CAAC,CAAC;IAC7C,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,GAAG,CAAC,WAAW,CAAC,IAAI,KAAK,EAAE,CAAC,CAAC;AACvD,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,MAAM,GAAG,CAAC;IAC/C,MAAM,MAAM,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAC,GAAG,MAAM,CAAC,GAAG,CAAC,GAAG,CAAC,CAAC;IACrD,OAAO,CAAC,GAAG,CAAC,GAAG,MAAM,IAAI,IAAI,EAAE,CAAC,CAAC;AACnC,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,IAAI,CAAC,IAAa;IAChC,OAAO,CAAC,GAAG,CAAC,IAAI,CAAC,SAAS,CAAC,IAAI,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;AAC7C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,OAAO;IACrB,OAAO,CAAC,GAAG,EAAE,CAAC;AAChB,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,YAAY,CAAC,MAAc;IACzC,QAAQ,MAAM,EAAE,CAAC;QACf,KAAK,WAAW;YACd,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,OAAO,YAAY,CAAC,CAAC;QACxD,KAAK,SAAS;YACZ,OAAO,MAAM,CAAC,OAAO,CAAC,GAAG,OAAO,CAAC,WAAW,UAAU,CAAC,CAAC;QAC1D,KAAK,aAAa;YAChB,OAAO,MAAM,CAAC,IAAI,CAAC,eAAe,CAAC,CAAC;QACtC,KAAK,WAAW;YACd,OAAO,MAAM,CAAC,GAAG,CAAC,GAAG,OAAO,CAAC,KAAK,YAAY,CAAC,CAAC;QAClD;YACE,OAAO,MAAM,CAAC;IAClB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,QAAgB;IAC7C,QAAQ,QAAQ,EAAE,CAAC;QACjB,KAAK,MAAM;YACT,OAAO,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;QAChC,KAAK,QAAQ;YACX,OAAO,MAAM,CAAC,OAAO,CAAC,UAAU,CAAC,CAAC;QACpC,KAAK,KAAK;YACR,OAAO,MAAM,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;QAC7B;YACE,OAAO,QAAQ,CAAC;IACpB,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,IAAmB;IAC5C,MAAM,CAAC,GAAG,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC;IACzB,MAAM,GAAG,GAAG,IAAI,IAAI,EAAE,CAAC;IACvB,MAAM,IAAI,GAAG,GAAG,CAAC,OAAO,EAAE,GAAG,CAAC,CAAC,OAAO,EAAE,CAAC;IACzC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,GAAG,CAAC,IAAI,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,CAAC,CAAC,CAAC;IAEtD,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACf,OAAO,OAAO,CAAC;IACjB,CAAC;SAAM,IAAI,IAAI,KAAK,CAAC,EAAE,CAAC;QACtB,OAAO,WAAW,CAAC;IACrB,CAAC;SAAM,IAAI,IAAI,GAAG,CAAC,EAAE,CAAC;QACpB,OAAO,GAAG,IAAI,WAAW,CAAC;IAC5B,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,CAAC,kBAAkB,EAAE,CAAC;IAChC,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,SAAiB;IACtD,IAAI,IAAI,CAAC,MAAM,IAAI,SAAS;QAAE,OAAO,IAAI,CAAC;IAC1C,OAAO,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,SAAS,GAAG,CAAC,CAAC,GAAG,KAAK,CAAC;AAC9C,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,EAAU;IACvC,IAAI,EAAE,GAAG,IAAI;QAAE,OAAO,GAAG,EAAE,IAAI,CAAC;IAChC,IAAI,EAAE,GAAG,KAAK;QAAE,OAAO,GAAG,CAAC,EAAE,GAAG,IAAI,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,GAAG,CAAC;IACpD,IAAI,EAAE,GAAG,OAAO,EAAE,CAAC;QACjB,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,KAAK,CAAC,CAAC;QACpC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,KAAK,CAAC,GAAG,IAAI,CAAC,CAAC;QAC7C,OAAO,GAAG,IAAI,KAAK,IAAI,GAAG,CAAC;IAC7B,CAAC;IACD,MAAM,KAAK,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,GAAG,OAAO,CAAC,CAAC;IACvC,MAAM,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,GAAG,OAAO,CAAC,GAAG,KAAK,CAAC,CAAC;IAChD,OAAO,GAAG,KAAK,KAAK,IAAI,GAAG,CAAC;AAC9B,CAAC;AAED;;;GAGG;AACH,MAAM,oBAAoB,GAA6C;IACrE,EAAE,OAAO,EAAE,8BAA8B,EAAE,IAAI,EAAE,uCAAuC,EAAE;IAC1F,EAAE,OAAO,EAAE,wDAAwD,EAAE,IAAI,EAAE,+CAA+C,EAAE;IAC5H,EAAE,OAAO,EAAE,oBAAoB,EAAE,IAAI,EAAE,2DAA2D,EAAE;IACpG,EAAE,OAAO,EAAE,oCAAoC,EAAE,IAAI,EAAE,yDAAyD,EAAE;IAClH,EAAE,OAAO,EAAE,kCAAkC,EAAE,IAAI,EAAE,gEAAgE,EAAE;IACvH,EAAE,OAAO,EAAE,gBAAgB,EAAE,IAAI,EAAE,wDAAwD,EAAE;IAC7F,EAAE,OAAO,EAAE,6BAA6B,EAAE,IAAI,EAAE,mCAAmC,EAAE;IACrF,EAAE,OAAO,EAAE,sBAAsB,EAAE,IAAI,EAAE,6DAA6D,EAAE;CACzG,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,aAAa,CAAC,OAAe;IAC3C,KAAK,CAAC,OAAO,CAAC,CAAC;IACf,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAChF,IAAI,KAAK,EAAE,CAAC;QACV,GAAG,CAAC,WAAW,KAAK,CAAC,IAAI,EAAE,CAAC,CAAC;IAC/B,CAAC;AACH,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,eAAe,CAAC,OAAe;IAC7C,MAAM,KAAK,GAAG,oBAAoB,CAAC,IAAI,CAAC,CAAC,EAAE,OAAO,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC;IAChF,OAAO,KAAK,EAAE,IAAI,IAAI,IAAI,CAAC;AAC7B,CAAC"}
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Articulate (a8e) CLI Executor
|
|
3
|
+
* Integrates with the Articulate CLI for local-first AI-assisted coding tasks
|
|
4
|
+
* https://github.com/a8e-ai/a8e
|
|
5
|
+
*/
|
|
6
|
+
import type { ExecutorOptions, ExecutorResult, AvailabilityStatus } from '../types.js';
|
|
7
|
+
import type { AgentExecutor } from './index.js';
|
|
8
|
+
export declare class ArticulateExecutor implements AgentExecutor {
|
|
9
|
+
readonly type: "articulate";
|
|
10
|
+
private process;
|
|
11
|
+
private binaryPath;
|
|
12
|
+
constructor(binaryPath?: string);
|
|
13
|
+
isAvailable(): Promise<boolean>;
|
|
14
|
+
checkAvailability(): Promise<AvailabilityStatus>;
|
|
15
|
+
execute(prompt: string, options?: ExecutorOptions): Promise<ExecutorResult>;
|
|
16
|
+
/**
|
|
17
|
+
* Build a8e CLI arguments for headless execution
|
|
18
|
+
* Uses `a8e run --text <prompt>` for non-interactive mode
|
|
19
|
+
*/
|
|
20
|
+
private buildArgs;
|
|
21
|
+
abort(): void;
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=articulate.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"articulate.d.ts","sourceRoot":"","sources":["../../../src/worker/executors/articulate.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAKH,OAAO,KAAK,EAAE,eAAe,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AACvF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAIhD,qBAAa,kBAAmB,YAAW,aAAa;IACpD,QAAQ,CAAC,IAAI,EAAG,YAAY,CAAU;IACtC,OAAO,CAAC,OAAO,CAA6B;IAC5C,OAAO,CAAC,UAAU,CAAS;gBAEf,UAAU,GAAE,MAAc;IAIhC,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAS/B,iBAAiB,IAAI,OAAO,CAAC,kBAAkB,CAAC;IAmChD,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,CAAC,EAAE,eAAe,GAAG,OAAO,CAAC,cAAc,CAAC;IA4EjF;;;OAGG;IACH,OAAO,CAAC,SAAS;IAoBjB,KAAK,IAAI,IAAI;CAMhB"}
|