@commit451/salamander 1.1.1 → 1.2.1
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 +42 -42
- package/bin/salamander.js +1 -1
- package/dist/commands/create-runner.d.ts.map +1 -1
- package/dist/commands/create-runner.js +18 -3
- package/dist/commands/create-runner.js.map +1 -1
- package/dist/commands/delete-runner.d.ts.map +1 -1
- package/dist/commands/delete-runner.js +6 -0
- package/dist/commands/delete-runner.js.map +1 -1
- package/dist/commands/runner-selection.d.ts.map +1 -1
- package/dist/commands/runner-selection.js +2 -2
- package/dist/commands/runner-selection.js.map +1 -1
- package/dist/services/api.d.ts +2 -0
- package/dist/services/api.d.ts.map +1 -1
- package/dist/services/api.js.map +1 -1
- package/dist/services/auth.d.ts.map +1 -1
- package/dist/services/auth.js +80 -50
- package/dist/services/auth.js.map +1 -1
- package/dist/services/command-listener.d.ts +4 -1
- package/dist/services/command-listener.d.ts.map +1 -1
- package/dist/services/command-listener.js +78 -41
- package/dist/services/command-listener.js.map +1 -1
- package/dist/services/executor.d.ts +2 -0
- package/dist/services/executor.d.ts.map +1 -1
- package/dist/services/executor.js +45 -10
- package/dist/services/executor.js.map +1 -1
- package/dist/services/runner.d.ts +1 -1
- package/dist/services/runner.d.ts.map +1 -1
- package/dist/services/runner.js +17 -3
- package/dist/services/runner.js.map +1 -1
- package/dist/types/runner.d.ts +1 -0
- package/dist/types/runner.d.ts.map +1 -1
- package/package.json +52 -52
- package/dist/services/crypto.d.ts +0 -52
- package/dist/services/crypto.d.ts.map +0 -1
- package/dist/services/crypto.js +0 -104
- package/dist/services/crypto.js.map +0 -1
- package/dist/services/key-manager.d.ts +0 -45
- package/dist/services/key-manager.d.ts.map +0 -1
- package/dist/services/key-manager.js +0 -123
- package/dist/services/key-manager.js.map +0 -1
- package/dist/services/multi-device-key-manager.d.ts +0 -56
- package/dist/services/multi-device-key-manager.d.ts.map +0 -1
- package/dist/services/multi-device-key-manager.js +0 -159
- package/dist/services/multi-device-key-manager.js.map +0 -1
package/README.md
CHANGED
|
@@ -1,42 +1,42 @@
|
|
|
1
|
-
# Salamander CLI
|
|
2
|
-
|
|
3
|
-
Never be AFK.
|
|
4
|
-
|
|
5
|
-
See [the site](https://salamander.space/) for usage.
|
|
6
|
-
|
|
7
|
-
Command-line interface for Salamander AI runners. This tool allows you to run AI-powered command execution on your local machine and receive commands from the Salamander app.
|
|
8
|
-
|
|
9
|
-
## Installation
|
|
10
|
-
You should first install [Claude's CLI](https://docs.anthropic.com/en/docs/claude-code/cli-reference) so that your machine has the needed `claude` command available.
|
|
11
|
-
|
|
12
|
-
```bash
|
|
13
|
-
npm install -g @commit451/salamander
|
|
14
|
-
```
|
|
15
|
-
|
|
16
|
-
## Usage
|
|
17
|
-
|
|
18
|
-
### Start the CLI
|
|
19
|
-
```bash
|
|
20
|
-
salamander
|
|
21
|
-
```
|
|
22
|
-
|
|
23
|
-
## Development
|
|
24
|
-
|
|
25
|
-
```bash
|
|
26
|
-
# Install dependencies
|
|
27
|
-
npm install
|
|
28
|
-
|
|
29
|
-
# Run in development mode
|
|
30
|
-
npm run dev
|
|
31
|
-
|
|
32
|
-
# Build the project
|
|
33
|
-
npm run build
|
|
34
|
-
|
|
35
|
-
# Run the built version
|
|
36
|
-
npm start
|
|
37
|
-
```
|
|
38
|
-
|
|
39
|
-
## Publish
|
|
40
|
-
```
|
|
41
|
-
npm run pub
|
|
42
|
-
```
|
|
1
|
+
# Salamander CLI
|
|
2
|
+
|
|
3
|
+
Never be AFK.
|
|
4
|
+
|
|
5
|
+
See [the site](https://salamander.space/) for usage.
|
|
6
|
+
|
|
7
|
+
Command-line interface for Salamander AI runners. This tool allows you to run AI-powered command execution on your local machine and receive commands from the Salamander app.
|
|
8
|
+
|
|
9
|
+
## Installation
|
|
10
|
+
You should first install [Claude's CLI](https://docs.anthropic.com/en/docs/claude-code/cli-reference) so that your machine has the needed `claude` command available.
|
|
11
|
+
|
|
12
|
+
```bash
|
|
13
|
+
npm install -g @commit451/salamander
|
|
14
|
+
```
|
|
15
|
+
|
|
16
|
+
## Usage
|
|
17
|
+
|
|
18
|
+
### Start the CLI
|
|
19
|
+
```bash
|
|
20
|
+
salamander
|
|
21
|
+
```
|
|
22
|
+
|
|
23
|
+
## Development
|
|
24
|
+
|
|
25
|
+
```bash
|
|
26
|
+
# Install dependencies
|
|
27
|
+
npm install
|
|
28
|
+
|
|
29
|
+
# Run in development mode
|
|
30
|
+
npm run dev
|
|
31
|
+
|
|
32
|
+
# Build the project
|
|
33
|
+
npm run build
|
|
34
|
+
|
|
35
|
+
# Run the built version
|
|
36
|
+
npm start
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
## Publish
|
|
40
|
+
```
|
|
41
|
+
npm run pub
|
|
42
|
+
```
|
package/bin/salamander.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
#!/usr/bin/env node
|
|
1
|
+
#!/usr/bin/env node
|
|
2
2
|
import('../dist/index.js').then(m => m.default()).catch(console.error);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-runner.d.ts","sourceRoot":"","sources":["../../src/commands/create-runner.ts"],"names":[],"mappings":"AAQA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,
|
|
1
|
+
{"version":3,"file":"create-runner.d.ts","sourceRoot":"","sources":["../../src/commands/create-runner.ts"],"names":[],"mappings":"AAQA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CAwFtD"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { input } from '@inquirer/prompts';
|
|
1
|
+
import { input, select } from '@inquirer/prompts';
|
|
2
2
|
import { resolve } from 'path';
|
|
3
3
|
import { access } from 'fs/promises';
|
|
4
4
|
import chalk from 'chalk';
|
|
@@ -50,8 +50,23 @@ export async function createRunnerFlow() {
|
|
|
50
50
|
}
|
|
51
51
|
});
|
|
52
52
|
const directory = resolve(directoryInput);
|
|
53
|
-
//
|
|
54
|
-
const runnerType =
|
|
53
|
+
// Select runner type
|
|
54
|
+
const runnerType = await select({
|
|
55
|
+
message: 'Select runner type:',
|
|
56
|
+
choices: [
|
|
57
|
+
{
|
|
58
|
+
name: 'Claude',
|
|
59
|
+
value: RunnerType.CLAUDE,
|
|
60
|
+
description: 'Use Claude AI to execute commands'
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
name: 'Codex',
|
|
64
|
+
value: RunnerType.CODEX,
|
|
65
|
+
description: 'Use Codex AI to execute commands'
|
|
66
|
+
}
|
|
67
|
+
],
|
|
68
|
+
default: RunnerType.CLAUDE
|
|
69
|
+
});
|
|
55
70
|
console.log(chalk.yellow('⏳ Creating runner...'));
|
|
56
71
|
const runner = await RunnerService.createRunner({
|
|
57
72
|
name: name.trim(),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"create-runner.js","sourceRoot":"","sources":["../../src/commands/create-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"create-runner.js","sourceRoot":"","sources":["../../src/commands/create-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-runner.d.ts","sourceRoot":"","sources":["../../src/commands/delete-runner.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"delete-runner.d.ts","sourceRoot":"","sources":["../../src/commands/delete-runner.ts"],"names":[],"mappings":"AAMA,wBAAsB,gBAAgB,IAAI,OAAO,CAAC,IAAI,CAAC,CA+DtD"}
|
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
import { confirm, select } from '@inquirer/prompts';
|
|
2
2
|
import chalk from 'chalk';
|
|
3
3
|
import { RunnerService } from '../services/runner.js';
|
|
4
|
+
import { CommandListener } from '../services/command-listener.js';
|
|
4
5
|
export async function deleteRunnerFlow() {
|
|
5
6
|
console.log(chalk.blue('\n🗑️ Delete Runner'));
|
|
6
7
|
try {
|
|
@@ -37,6 +38,11 @@ export async function deleteRunnerFlow() {
|
|
|
37
38
|
return;
|
|
38
39
|
}
|
|
39
40
|
console.log(chalk.yellow('⏳ Deleting runner...'));
|
|
41
|
+
// Stop any active listeners before deleting to avoid Firestore stream errors
|
|
42
|
+
const listener = CommandListener.getInstance();
|
|
43
|
+
await listener.stopAll();
|
|
44
|
+
// Small delay to allow unlisten messages to flush before deletion
|
|
45
|
+
await new Promise(resolve => setTimeout(resolve, 50));
|
|
40
46
|
await RunnerService.deleteRunner(runnerId);
|
|
41
47
|
console.log(chalk.green('✅ Runner deleted successfully!'));
|
|
42
48
|
console.log(chalk.gray(` Removed: ${selectedRunner.name}`));
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete-runner.js","sourceRoot":"","sources":["../../src/commands/delete-runner.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,MAAM,EAAC,MAAM,mBAAmB,CAAC;AAClD,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;
|
|
1
|
+
{"version":3,"file":"delete-runner.js","sourceRoot":"","sources":["../../src/commands/delete-runner.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-selection.d.ts","sourceRoot":"","sources":["../../src/commands/runner-selection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"runner-selection.d.ts","sourceRoot":"","sources":["../../src/commands/runner-selection.ts"],"names":[],"mappings":"AAQA,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,IAAI,CAAC,CAuEzD"}
|
|
@@ -33,7 +33,7 @@ export async function runnerSelectionFlow() {
|
|
|
33
33
|
...localRunners.map(runner => ({
|
|
34
34
|
name: formatRunnerChoice(runner),
|
|
35
35
|
value: `run:${runner.id}`,
|
|
36
|
-
description: `Listen for commands in ${runner.directory}`
|
|
36
|
+
description: `Listen for ${runner.runnerType} commands in ${runner.directory}`
|
|
37
37
|
})),
|
|
38
38
|
{ name: '➕ Create new runner', value: 'create' },
|
|
39
39
|
{ name: '🗑️ Delete runner', value: 'delete' },
|
|
@@ -59,7 +59,7 @@ export async function runnerSelectionFlow() {
|
|
|
59
59
|
const runnerId = selection.replace('run:', '');
|
|
60
60
|
const runner = localRunners.find(r => r.id === runnerId);
|
|
61
61
|
if (runner) {
|
|
62
|
-
const listener =
|
|
62
|
+
const listener = CommandListener.getInstance();
|
|
63
63
|
await listener.startListening(runner);
|
|
64
64
|
}
|
|
65
65
|
else {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"runner-selection.js","sourceRoot":"","sources":["../../src/commands/runner-selection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,MAAM,EAAC,MAAM,mBAAmB,CAAC;AACzC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAC;AACpD,OAAO,EAAC,eAAe,EAAC,MAAM,iCAAiC,CAAC;AAChE,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;AACpD,OAAO,EAAC,gBAAgB,EAAC,MAAM,oBAAoB,CAAC;
|
|
1
|
+
{"version":3,"file":"runner-selection.js","sourceRoot":"","sources":["../../src/commands/runner-selection.ts"],"names":[],"mappings":"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"}
|
package/dist/services/api.d.ts
CHANGED
|
@@ -3,6 +3,7 @@ interface CreateRunnerRequest {
|
|
|
3
3
|
machineId: string;
|
|
4
4
|
machineName: string;
|
|
5
5
|
name: string;
|
|
6
|
+
runnerType: string;
|
|
6
7
|
encryptionVerification?: string;
|
|
7
8
|
}
|
|
8
9
|
interface UpdateRunnerRequest {
|
|
@@ -11,6 +12,7 @@ interface UpdateRunnerRequest {
|
|
|
11
12
|
updateLastUsed?: boolean | null;
|
|
12
13
|
lastMessage?: string;
|
|
13
14
|
pendingCommand?: string;
|
|
15
|
+
threadId?: string;
|
|
14
16
|
}
|
|
15
17
|
export interface CreateMessageRequest {
|
|
16
18
|
content: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"AAeA,UAAU,mBAAmB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,UAAU,mBAAmB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"api.d.ts","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"AAeA,UAAU,mBAAmB;IACzB,SAAS,EAAE,MAAM,CAAC;IAClB,SAAS,EAAE,MAAM,CAAC;IAClB,WAAW,EAAE,MAAM,CAAC;IACpB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;IACnB,sBAAsB,CAAC,EAAE,MAAM,CAAC;CACnC;AAED,UAAU,mBAAmB;IACzB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,mBAAmB,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IACrC,cAAc,CAAC,EAAE,OAAO,GAAG,IAAI,CAAC;IAChC,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,EAAE,MAAM,CAAC;CACrB;AAED,MAAM,WAAW,oBAAoB;IACjC,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,EAAE,MAAM,CAAC;IACb,UAAU,EAAE,MAAM,CAAC;CACtB;AAED,qBAAa,UAAU;mBACE,YAAY;mBAUZ,WAAW;WAwCnB,YAAY,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;WAOxD,mBAAmB,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,oBAAoB,GAAG,OAAO,CAAC,GAAG,CAAC;WAOlF,YAAY,CAAC,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,GAAG,CAAC;WAO1E,YAAY,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;CAK7D"}
|
package/dist/services/api.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,WAAW,EAAC,MAAM,WAAW,CAAC;AAEtC,MAAM,YAAY,GAAG,iCAAiC,CAAC;AAEvD,MAAM,QAAS,SAAQ,KAAK;IAGb;IACA;IAHX,YACI,OAAe,EACR,MAAc,EACd,QAAc;QAErB,KAAK,CAAC,OAAO,CAAC,CAAC;QAHR,WAAM,GAAN,MAAM,CAAQ;QACd,aAAQ,GAAR,QAAQ,CAAM;QAGrB,IAAI,CAAC,IAAI,GAAG,UAAU,CAAC;IAC3B,CAAC;CACJ;
|
|
1
|
+
{"version":3,"file":"api.js","sourceRoot":"","sources":["../../src/services/api.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqD,IAAI,EAAC,MAAM,eAAe,CAAC;AAOvF,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAqB;IAC/C,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAkB;IACrD,OAAO,CAAC,MAAM,CAAC,cAAc,CAA8B;IAE3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAEjE,OAAO,CAAC,MAAM,CAAC,wBAAwB;mBAyClB,WAAW;mBAsBX,wBAAwB;
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAMA,OAAO,EAAqD,IAAI,EAAC,MAAM,eAAe,CAAC;AAOvF,qBAAa,WAAW;IACpB,OAAO,CAAC,MAAM,CAAC,WAAW,CAAqB;IAC/C,OAAO,CAAC,MAAM,CAAC,oBAAoB,CAAkB;IACrD,OAAO,CAAC,MAAM,CAAC,cAAc,CAA8B;IAE3D,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAA8B;IAEjE,OAAO,CAAC,MAAM,CAAC,wBAAwB;mBAyClB,WAAW;mBAsBX,wBAAwB;WA2DhC,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;IAuCxC,MAAM,KAAK,eAAe,IAAI,OAAO,CAEpC;IAED,MAAM,KAAK,IAAI,IAAI,IAAI,GAAG,IAAI,CAE7B;IAED,MAAM,KAAK,MAAM,IAAI,MAAM,GAAG,IAAI,CAEjC;WAEY,SAAS,IAAI,OAAO,CAAC,OAAO,CAAC;mBAqBrB,WAAW;CAsEnC"}
|
package/dist/services/auth.js
CHANGED
|
@@ -15,42 +15,42 @@ export class AuthService {
|
|
|
15
15
|
static WEB_APP_URL = 'https://salamander.space';
|
|
16
16
|
static generateAuthResponseHTML(isSuccess, title, message) {
|
|
17
17
|
const headingColor = isSuccess ? '#10b981' : '#f87171';
|
|
18
|
-
return `
|
|
19
|
-
<!DOCTYPE html>
|
|
20
|
-
<html>
|
|
21
|
-
<head>
|
|
22
|
-
<title>${title}</title>
|
|
23
|
-
<style>
|
|
24
|
-
body {
|
|
25
|
-
background-color: #111827;
|
|
26
|
-
color: #f9fafb;
|
|
27
|
-
font-family: 'Fira Code', 'JetBrains Mono', monospace;
|
|
28
|
-
text-align: center;
|
|
29
|
-
padding: 50px;
|
|
30
|
-
margin: 0;
|
|
31
|
-
}
|
|
32
|
-
h1 { color: ${headingColor}; }
|
|
33
|
-
.logo {
|
|
34
|
-
width: 48px;
|
|
35
|
-
height: 48px;
|
|
36
|
-
margin: 0 auto 24px;
|
|
37
|
-
background: #ff6b35;
|
|
38
|
-
border-radius: 8px;
|
|
39
|
-
display: flex;
|
|
40
|
-
align-items: center;
|
|
41
|
-
justify-content: center;
|
|
42
|
-
font-size: 24px;
|
|
43
|
-
color: white;
|
|
44
|
-
font-weight: bold;
|
|
45
|
-
}
|
|
46
|
-
</style>
|
|
47
|
-
</head>
|
|
48
|
-
<body>
|
|
49
|
-
<div class="logo">S</div>
|
|
50
|
-
<h1>${title}</h1>
|
|
51
|
-
<p>${message}</p>
|
|
52
|
-
</body>
|
|
53
|
-
</html>
|
|
18
|
+
return `
|
|
19
|
+
<!DOCTYPE html>
|
|
20
|
+
<html>
|
|
21
|
+
<head>
|
|
22
|
+
<title>${title}</title>
|
|
23
|
+
<style>
|
|
24
|
+
body {
|
|
25
|
+
background-color: #111827;
|
|
26
|
+
color: #f9fafb;
|
|
27
|
+
font-family: 'Fira Code', 'JetBrains Mono', monospace;
|
|
28
|
+
text-align: center;
|
|
29
|
+
padding: 50px;
|
|
30
|
+
margin: 0;
|
|
31
|
+
}
|
|
32
|
+
h1 { color: ${headingColor}; }
|
|
33
|
+
.logo {
|
|
34
|
+
width: 48px;
|
|
35
|
+
height: 48px;
|
|
36
|
+
margin: 0 auto 24px;
|
|
37
|
+
background: #ff6b35;
|
|
38
|
+
border-radius: 8px;
|
|
39
|
+
display: flex;
|
|
40
|
+
align-items: center;
|
|
41
|
+
justify-content: center;
|
|
42
|
+
font-size: 24px;
|
|
43
|
+
color: white;
|
|
44
|
+
font-weight: bold;
|
|
45
|
+
}
|
|
46
|
+
</style>
|
|
47
|
+
</head>
|
|
48
|
+
<body>
|
|
49
|
+
<div class="logo">S</div>
|
|
50
|
+
<h1>${title}</h1>
|
|
51
|
+
<p>${message}</p>
|
|
52
|
+
</body>
|
|
53
|
+
</html>
|
|
54
54
|
`;
|
|
55
55
|
}
|
|
56
56
|
static async openBrowser(url) {
|
|
@@ -70,7 +70,7 @@ export class AuthService {
|
|
|
70
70
|
await execAsync(command);
|
|
71
71
|
}
|
|
72
72
|
catch (error) {
|
|
73
|
-
|
|
73
|
+
// Browser open failed (e.g. headless environment) - URL is printed separately
|
|
74
74
|
}
|
|
75
75
|
}
|
|
76
76
|
static async startLocalServerForToken() {
|
|
@@ -83,6 +83,14 @@ export class AuthService {
|
|
|
83
83
|
tokenReject = rej;
|
|
84
84
|
});
|
|
85
85
|
server.on('request', (req, res) => {
|
|
86
|
+
// Add CORS headers for cross-origin requests from the web app
|
|
87
|
+
res.setHeader('Access-Control-Allow-Origin', '*');
|
|
88
|
+
res.setHeader('Access-Control-Allow-Methods', 'GET, OPTIONS');
|
|
89
|
+
if (req.method === 'OPTIONS') {
|
|
90
|
+
res.writeHead(204);
|
|
91
|
+
res.end();
|
|
92
|
+
return;
|
|
93
|
+
}
|
|
86
94
|
if (req.url) {
|
|
87
95
|
const url = new URL(req.url, 'http://localhost:8080');
|
|
88
96
|
if (url.pathname === '/auth-callback') {
|
|
@@ -168,13 +176,6 @@ export class AuthService {
|
|
|
168
176
|
console.log(chalk.green('✅ Already signed in!'));
|
|
169
177
|
return true;
|
|
170
178
|
}
|
|
171
|
-
const proceed = await input({
|
|
172
|
-
message: 'Press Enter to open sign-in in your browser, or type "q" to quit:',
|
|
173
|
-
default: '',
|
|
174
|
-
});
|
|
175
|
-
if (proceed.toLowerCase() === 'q') {
|
|
176
|
-
return false;
|
|
177
|
-
}
|
|
178
179
|
return await this.webAuthFlow();
|
|
179
180
|
}
|
|
180
181
|
catch (error) {
|
|
@@ -183,22 +184,51 @@ export class AuthService {
|
|
|
183
184
|
}
|
|
184
185
|
static async webAuthFlow() {
|
|
185
186
|
try {
|
|
186
|
-
console.log(chalk.yellow('🌐 Please complete sign-in in your browser...\n'));
|
|
187
187
|
// Start local server to receive callback
|
|
188
188
|
const { server, tokenPromise } = await this.startLocalServerForToken();
|
|
189
189
|
try {
|
|
190
190
|
// Create the auth URL - use main auth page with callback parameter
|
|
191
191
|
const redirectUrl = 'http://localhost:8080/auth-callback';
|
|
192
192
|
const authUrl = `${this.WEB_APP_URL}/#auth?callback=${encodeURIComponent(redirectUrl)}`;
|
|
193
|
-
//
|
|
193
|
+
// Try to open browser (best effort - may fail on headless)
|
|
194
194
|
await this.openBrowser(authUrl);
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
195
|
+
// Always print the URL so it can be opened on any device
|
|
196
|
+
console.log(chalk.yellow('🌐 Open this URL in any browser to sign in:\n'));
|
|
197
|
+
console.log(` ${chalk.cyan(authUrl)}\n`);
|
|
198
|
+
console.log(chalk.gray(' If signing in from another device, copy the token shown'));
|
|
199
|
+
console.log(chalk.gray(' after authentication and paste it below.\n'));
|
|
200
|
+
// Race between local server callback and manual token paste
|
|
201
|
+
const abortController = new AbortController();
|
|
202
|
+
// When server gets the token, abort the input prompt
|
|
203
|
+
const serverTokenPromise = tokenPromise.then(token => {
|
|
204
|
+
abortController.abort();
|
|
205
|
+
return token;
|
|
206
|
+
});
|
|
207
|
+
// Loop the input prompt so accidental Enter doesn't hang
|
|
208
|
+
const manualTokenPromise = (async () => {
|
|
209
|
+
while (!abortController.signal.aborted) {
|
|
210
|
+
try {
|
|
211
|
+
const token = await input({ message: 'Waiting for sign-in (or paste token here):' }, { signal: abortController.signal });
|
|
212
|
+
if (token && token.trim() !== '') {
|
|
213
|
+
return token.trim();
|
|
214
|
+
}
|
|
215
|
+
}
|
|
216
|
+
catch {
|
|
217
|
+
break;
|
|
218
|
+
}
|
|
219
|
+
}
|
|
220
|
+
// Aborted by server callback - return a never-resolving promise
|
|
221
|
+
// so the race resolves with the server token
|
|
222
|
+
return new Promise(() => { });
|
|
223
|
+
})();
|
|
224
|
+
const customToken = await Promise.race([
|
|
225
|
+
serverTokenPromise,
|
|
226
|
+
manualTokenPromise,
|
|
227
|
+
]);
|
|
198
228
|
// Sign in to Firebase Auth using the custom token
|
|
199
229
|
const userCredential = await signInWithCustomToken(auth, customToken);
|
|
200
230
|
this.currentUser = userCredential.user;
|
|
201
|
-
console.log(chalk.green('✅ Login successful!'));
|
|
231
|
+
console.log(chalk.green('\n✅ Login successful!'));
|
|
202
232
|
return true;
|
|
203
233
|
}
|
|
204
234
|
finally {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,mBAAmB,CAAC;AACxC,OAAO,KAAK,MAAM,OAAO,CAAC;AAC1B,OAAO,EAAC,YAAY,EAAC,MAAM,MAAM,CAAC;AAClC,OAAO,EAAC,GAAG,EAAC,MAAM,KAAK,CAAC;AACxB,OAAO,EAAC,IAAI,EAAC,MAAM,eAAe,CAAC;AACnC,OAAO,EAAC,SAAS,EAAC,MAAM,MAAM,CAAC;AAC/B,OAAO,EAAC,OAAO,EAAE,kBAAkB,EAAE,qBAAqB,EAAO,MAAM,eAAe,CAAC;AACvF,OAAO,GAAG,MAAM,uBAAuB,CAAC;AAExC,MAAM,SAAS,GAAG,SAAS,CAAC,IAAI,CAAC,CAAC;AAElC,MAAM,IAAI,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC;AAE1B,MAAM,OAAO,WAAW;IACZ,MAAM,CAAC,WAAW,GAAgB,IAAI,CAAC;IACvC,MAAM,CAAC,oBAAoB,GAAY,KAAK,CAAC;IAC7C,MAAM,CAAC,cAAc,GAAyB,IAAI,CAAC;IAEnD,MAAM,CAAU,WAAW,GAAG,0BAA0B,CAAC;IAEzD,MAAM,CAAC,wBAAwB,CAAC,SAAkB,EAAE,KAAa,EAAE,OAAe;QACtF,MAAM,YAAY,GAAG,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC;QACvD,OAAO;;;;yBAIU,KAAK;;;;;;;;;;kCAUI,YAAY;;;;;;;;;;;;;;;;;;sBAkBxB,KAAK;qBACN,OAAO;;;SAGnB,CAAC;IACN,CAAC;IAEO,MAAM,CAAC,KAAK,CAAC,WAAW,CAAC,GAAW;QACxC,MAAM,QAAQ,GAAG,OAAO,CAAC,QAAQ,CAAC;QAClC,IAAI,OAAe,CAAC;QAEpB,QAAQ,QAAQ,EAAE,CAAC;YACf,KAAK,QAAQ;gBACT,OAAO,GAAG,SAAS,GAAG,GAAG,CAAC;gBAC1B,MAAM;YACV,KAAK,OAAO;gBACR,OAAO,GAAG,oBAAoB,GAAG,GAAG,CAAC;gBACrC,MAAM;YACV;gBACI,OAAO,GAAG,aAAa,GAAG,GAAG,CAAC;QACtC,CAAC;QAED,IAAI,CAAC;YACD,MAAM,SAAS,CAAC,OAAO,CAAC,CAAC;QAC7B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../../src/services/auth.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,10 +1,13 @@
|
|
|
1
1
|
import { Runner } from '../types/runner.js';
|
|
2
2
|
export declare class CommandListener {
|
|
3
|
+
private static instance;
|
|
3
4
|
private activeListeners;
|
|
4
5
|
private isShuttingDown;
|
|
5
6
|
private rl;
|
|
7
|
+
static getInstance(): CommandListener;
|
|
6
8
|
startListening(runner: Runner): Promise<void>;
|
|
7
|
-
private
|
|
9
|
+
private setupLocalCommandPrompt;
|
|
8
10
|
stopListening(runnerId: string): Promise<void>;
|
|
11
|
+
stopAll(): Promise<void>;
|
|
9
12
|
}
|
|
10
13
|
//# sourceMappingURL=command-listener.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-listener.d.ts","sourceRoot":"","sources":["../../src/services/command-listener.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAO1C,qBAAa,eAAe;IACxB,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,EAAE,CAAmC;
|
|
1
|
+
{"version":3,"file":"command-listener.d.ts","sourceRoot":"","sources":["../../src/services/command-listener.ts"],"names":[],"mappings":"AAEA,OAAO,EAAC,MAAM,EAAC,MAAM,oBAAoB,CAAC;AAO1C,qBAAa,eAAe;IACxB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAgC;IACvD,OAAO,CAAC,eAAe,CAAsC;IAC7D,OAAO,CAAC,cAAc,CAAS;IAC/B,OAAO,CAAC,EAAE,CAAmC;IAE7C,MAAM,CAAC,WAAW,IAAI,eAAe;IAO/B,cAAc,CAAC,MAAM,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IA+InD,OAAO,CAAC,uBAAuB;IAsDzB,aAAa,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAc9C,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC;CAkBjC"}
|