replicas-cli 0.2.9 → 0.2.11
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/commands/code.d.ts +0 -1
- package/dist/commands/code.d.ts.map +1 -1
- package/dist/commands/code.js.map +1 -1
- package/dist/commands/codex-auth.d.ts +2 -0
- package/dist/commands/codex-auth.d.ts.map +1 -0
- package/dist/commands/codex-auth.js +53 -0
- package/dist/commands/codex-auth.js.map +1 -0
- package/dist/commands/connect.d.ts +0 -1
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/use-codex.d.ts +6 -0
- package/dist/commands/use-codex.d.ts.map +1 -0
- package/dist/commands/use-codex.js +58 -0
- package/dist/commands/use-codex.js.map +1 -0
- package/dist/index.js +16 -3
- package/dist/index.js.map +1 -1
- package/dist/lib/workspace-connection.d.ts +0 -1
- package/dist/lib/workspace-connection.d.ts.map +1 -1
- package/dist/lib/workspace-connection.js +2 -32
- package/dist/lib/workspace-connection.js.map +1 -1
- package/package.json +1 -1
package/dist/commands/code.d.ts
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAMA,wBAAsB,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"code.d.ts","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"AAMA,wBAAsB,WAAW,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAqEnG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":";;;;;AAMA,kCAqEC;AA3ED,kDAA0B;AAC1B,iDAAsC;AACtC,0CAA+D;AAC/D,sEAAyE;AACzE,kDAAqF;AAE9E,KAAK,UAAU,WAAW,CAAC,aAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"code.js","sourceRoot":"","sources":["../../src/commands/code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-auth.d.ts","sourceRoot":"","sources":["../../src/commands/codex-auth.ts"],"names":[],"mappings":"AAiBA,wBAAsB,gBAAgB,kBAkDrC"}
|
|
@@ -0,0 +1,53 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.codexAuthCommand = codexAuthCommand;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
const fs_1 = __importDefault(require("fs"));
|
|
9
|
+
const path_1 = __importDefault(require("path"));
|
|
10
|
+
const os_1 = __importDefault(require("os"));
|
|
11
|
+
const api_1 = require("../lib/api");
|
|
12
|
+
async function codexAuthCommand() {
|
|
13
|
+
console.log(chalk_1.default.gray('Uploading Codex authentication...\n'));
|
|
14
|
+
const authJsonPath = path_1.default.join(os_1.default.homedir(), '.codex', 'auth.json');
|
|
15
|
+
let authData = null;
|
|
16
|
+
if (fs_1.default.existsSync(authJsonPath)) {
|
|
17
|
+
try {
|
|
18
|
+
const fileContent = fs_1.default.readFileSync(authJsonPath, 'utf-8');
|
|
19
|
+
authData = JSON.parse(fileContent);
|
|
20
|
+
}
|
|
21
|
+
catch (error) {
|
|
22
|
+
console.log(chalk_1.default.yellow(` Warning: Found auth.json but failed to parse it`));
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
if (!authData) {
|
|
26
|
+
throw new Error('Could not find Codex auth.json. Expected at:\n' +
|
|
27
|
+
` - ${authJsonPath}\n\n` +
|
|
28
|
+
'Make sure you have authenticated with Codex CLI first.');
|
|
29
|
+
}
|
|
30
|
+
console.log(chalk_1.default.gray(` Found auth.json at: ${authJsonPath}`));
|
|
31
|
+
if (!authData.tokens || !authData.tokens.access_token || !authData.tokens.refresh_token || !authData.tokens.id_token) {
|
|
32
|
+
throw new Error('Invalid auth.json format: missing required tokens');
|
|
33
|
+
}
|
|
34
|
+
try {
|
|
35
|
+
const response = await (0, api_1.authenticatedFetch)('/api/codex/credentials', {
|
|
36
|
+
method: 'POST',
|
|
37
|
+
body: {
|
|
38
|
+
access_token: authData.tokens.access_token,
|
|
39
|
+
refresh_token: authData.tokens.refresh_token,
|
|
40
|
+
id_token: authData.tokens.id_token,
|
|
41
|
+
},
|
|
42
|
+
});
|
|
43
|
+
console.log(chalk_1.default.green('\n✓ Codex credentials uploaded successfully!'));
|
|
44
|
+
console.log(chalk_1.default.gray(' Your Codex authentication will now be available in all workspaces.\n'));
|
|
45
|
+
}
|
|
46
|
+
catch (error) {
|
|
47
|
+
if (error instanceof Error) {
|
|
48
|
+
throw new Error(`Failed to upload credentials: ${error.message}`);
|
|
49
|
+
}
|
|
50
|
+
throw error;
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
//# sourceMappingURL=codex-auth.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"codex-auth.js","sourceRoot":"","sources":["../../src/commands/codex-auth.ts"],"names":[],"mappings":";;;;;AAiBA,4CAkDC;AAnED,kDAA0B;AAC1B,4CAAoB;AACpB,gDAAwB;AACxB,4CAAoB;AACpB,oCAAgD;AAazC,KAAK,UAAU,gBAAgB;IACpC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,qCAAqC,CAAC,CAAC,CAAC;IAE/D,MAAM,YAAY,GAAG,cAAI,CAAC,IAAI,CAAC,YAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,EAAE,WAAW,CAAC,CAAC;IACpE,IAAI,QAAQ,GAAyB,IAAI,CAAC;IAE1C,IAAI,YAAE,CAAC,UAAU,CAAC,YAAY,CAAC,EAAE,CAAC;QAChC,IAAI,CAAC;YACH,MAAM,WAAW,GAAG,YAAE,CAAC,YAAY,CAAC,YAAY,EAAE,OAAO,CAAC,CAAC;YAC3D,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,WAAW,CAAkB,CAAC;QACtD,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,mDAAmD,CAAC,CAAC,CAAC;QACjF,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,EAAE,CAAC;QACd,MAAM,IAAI,KAAK,CACb,gDAAgD;YAChD,OAAO,YAAY,MAAM;YACzB,wDAAwD,CACzD,CAAC;IACJ,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,yBAAyB,YAAY,EAAE,CAAC,CAAC,CAAC;IAEjE,IAAI,CAAC,QAAQ,CAAC,MAAM,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,YAAY,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,aAAa,IAAI,CAAC,QAAQ,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrH,MAAM,IAAI,KAAK,CAAC,mDAAmD,CAAC,CAAC;IACvE,CAAC;IAED,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,IAAA,wBAAkB,EACvC,wBAAwB,EACxB;YACE,MAAM,EAAE,MAAM;YACd,IAAI,EAAE;gBACJ,YAAY,EAAE,QAAQ,CAAC,MAAM,CAAC,YAAY;gBAC1C,aAAa,EAAE,QAAQ,CAAC,MAAM,CAAC,aAAa;gBAC5C,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,QAAQ;aACnC;SACF,CACF,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8CAA8C,CAAC,CAAC,CAAC;QACzE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,wEAAwE,CAAC,CAAC,CAAC;IACpG,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,IAAI,KAAK,YAAY,KAAK,EAAE,CAAC;YAC3B,MAAM,IAAI,KAAK,CAAC,iCAAiC,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC;QACpE,CAAC;QACD,MAAM,KAAK,CAAC;IACd,CAAC;AACH,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAKA,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,
|
|
1
|
+
{"version":3,"file":"connect.d.ts","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":"AAKA,wBAAsB,cAAc,CAAC,aAAa,EAAE,MAAM,EAAE,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAAG,OAAO,CAAC,IAAI,CAAC,CAsCtG"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":";;;;;AAKA,wCAsCC;AA3CD,kDAA0B;AAC1B,0CAAgD;AAChD,oCAAwC;AACxC,sEAAyE;AAElE,KAAK,UAAU,cAAc,CAAC,aAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"connect.js","sourceRoot":"","sources":["../../src/commands/connect.ts"],"names":[],"mappings":";;;;;AAKA,wCAsCC;AA3CD,kDAA0B;AAC1B,0CAAgD;AAChD,oCAAwC;AACxC,sEAAyE;AAElE,KAAK,UAAU,cAAc,CAAC,aAAqB,EAAE,OAA2B;IACrF,IAAI,CAAC,IAAA,wBAAe,GAAE,EAAE,CAAC;QACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,mDAAmD,CAAC,CAAC,CAAC;QAC5E,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC;QACH,MAAM,EAAE,SAAS,EAAE,UAAU,EAAE,YAAY,EAAE,GAAG,MAAM,IAAA,iDAA0B,EAC9E,aAAa,EACb,OAAO,CACR,CAAC;QAEF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,mBAAmB,SAAS,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;QAEhE,IAAI,UAAU,GAAG,UAAU,UAAU,EAAE,CAAC;QACxC,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC;YACnD,UAAU,IAAI,OAAO,SAAS,cAAc,UAAU,EAAE,CAAC;QAC3D,CAAC;QACD,UAAU,IAAI,WAAW,SAAS,CAAC,YAAY,EAAE,CAAC;QAElD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC;QAEtD,IAAI,YAAY,CAAC,IAAI,GAAG,CAAC,EAAE,CAAC;YAC1B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2BAA2B,CAAC,CAAC,CAAC;YACrD,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,YAAY,EAAE,CAAC;gBACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iBAAiB,SAAS,gBAAgB,UAAU,EAAE,CAAC,CAAC,CAAC;YAClF,CAAC;QACH,CAAC;QAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;QAE3D,MAAM,IAAA,gBAAU,EAAC,UAAU,EAAE,SAAS,CAAC,YAAa,EAAE,YAAY,CAAC,CAAC;QAEpE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,oCAAoC,CAAC,CAAC,CAAC;IACjE,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,YAAY,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;QACjG,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;AACH,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-codex.d.ts","sourceRoot":"","sources":["../../src/commands/use-codex.ts"],"names":[],"mappings":"AAOA;;;GAGG;AACH,wBAAsB,eAAe,kBAgDpC"}
|
|
@@ -0,0 +1,58 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
3
|
+
return (mod && mod.__esModule) ? mod : { "default": mod };
|
|
4
|
+
};
|
|
5
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
|
+
exports.useCodexCommand = useCodexCommand;
|
|
7
|
+
const chalk_1 = __importDefault(require("chalk"));
|
|
8
|
+
const http_1 = __importDefault(require("http"));
|
|
9
|
+
const url_1 = __importDefault(require("url"));
|
|
10
|
+
const PORT = 1455;
|
|
11
|
+
const CALLBACK_PATH = '/auth/callback';
|
|
12
|
+
/**
|
|
13
|
+
* Start OAuth proxy server for Codex authentication
|
|
14
|
+
* This server receives OAuth callbacks from OpenAI and proxies them to the Replicas web app
|
|
15
|
+
*/
|
|
16
|
+
async function useCodexCommand() {
|
|
17
|
+
console.log(chalk_1.default.cyan('\n╭─────────────────────────────────────────╮'));
|
|
18
|
+
console.log(chalk_1.default.cyan('│') + ' ' + chalk_1.default.bold('Codex OAuth Proxy Server') + ' ' + chalk_1.default.cyan('│'));
|
|
19
|
+
console.log(chalk_1.default.cyan('╰─────────────────────────────────────────╯\n'));
|
|
20
|
+
console.log(chalk_1.default.gray('Starting OAuth proxy server for Codex...\n'));
|
|
21
|
+
const server = http_1.default.createServer((req, res) => {
|
|
22
|
+
const parsedUrl = url_1.default.parse(req.url || '', true);
|
|
23
|
+
if (parsedUrl.pathname === CALLBACK_PATH) {
|
|
24
|
+
// Extract query parameters
|
|
25
|
+
const queryParams = parsedUrl.query;
|
|
26
|
+
const queryString = Object.keys(queryParams)
|
|
27
|
+
.map(key => `${key}=${encodeURIComponent(String(queryParams[key]))}`)
|
|
28
|
+
.join('&');
|
|
29
|
+
// Redirect to Replicas web app callback
|
|
30
|
+
const redirectUrl = `http://localhost:3000/api/codex/oauth/callback?${queryString}`;
|
|
31
|
+
console.log(chalk_1.default.green('✓') + ' Received OAuth callback');
|
|
32
|
+
console.log(chalk_1.default.gray(` Redirecting to: ${redirectUrl}\n`));
|
|
33
|
+
res.writeHead(302, {
|
|
34
|
+
'Location': redirectUrl,
|
|
35
|
+
});
|
|
36
|
+
res.end();
|
|
37
|
+
}
|
|
38
|
+
else {
|
|
39
|
+
res.writeHead(404);
|
|
40
|
+
res.end('Not Found');
|
|
41
|
+
}
|
|
42
|
+
});
|
|
43
|
+
server.listen(PORT, () => {
|
|
44
|
+
console.log(chalk_1.default.green('✓') + ` Server listening on ${chalk_1.default.bold(`http://localhost:${PORT}`)}`);
|
|
45
|
+
console.log(chalk_1.default.gray(` Waiting for OAuth callbacks from OpenAI...\n`));
|
|
46
|
+
console.log(chalk_1.default.yellow('ℹ') + ' You can now click ' + chalk_1.default.bold('Connect') + ' in the Replicas web app');
|
|
47
|
+
console.log(chalk_1.default.gray(' Press Ctrl+C to stop the server\n'));
|
|
48
|
+
});
|
|
49
|
+
// Handle shutdown gracefully
|
|
50
|
+
process.on('SIGINT', () => {
|
|
51
|
+
console.log(chalk_1.default.yellow('\n\n✓ Shutting down OAuth proxy server...'));
|
|
52
|
+
server.close(() => {
|
|
53
|
+
console.log(chalk_1.default.green('✓ Server stopped\n'));
|
|
54
|
+
process.exit(0);
|
|
55
|
+
});
|
|
56
|
+
});
|
|
57
|
+
}
|
|
58
|
+
//# sourceMappingURL=use-codex.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-codex.js","sourceRoot":"","sources":["../../src/commands/use-codex.ts"],"names":[],"mappings":"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"}
|
package/dist/index.js
CHANGED
|
@@ -15,11 +15,12 @@ const code_1 = require("./commands/code");
|
|
|
15
15
|
const org_1 = require("./commands/org");
|
|
16
16
|
const config_1 = require("./commands/config");
|
|
17
17
|
const tools_1 = require("./commands/tools");
|
|
18
|
+
const codex_auth_1 = require("./commands/codex-auth");
|
|
18
19
|
const program = new commander_1.Command();
|
|
19
20
|
program
|
|
20
21
|
.name('replicas')
|
|
21
22
|
.description('CLI for managing Replicas workspaces')
|
|
22
|
-
.version('0.2.
|
|
23
|
+
.version('0.2.11');
|
|
23
24
|
program
|
|
24
25
|
.command('login')
|
|
25
26
|
.description('Authenticate with your Replicas account')
|
|
@@ -76,6 +77,20 @@ program
|
|
|
76
77
|
process.exit(1);
|
|
77
78
|
}
|
|
78
79
|
});
|
|
80
|
+
program
|
|
81
|
+
.command('codex-auth')
|
|
82
|
+
.description('Authenticate Replicas with your Codex credentials')
|
|
83
|
+
.action(async () => {
|
|
84
|
+
try {
|
|
85
|
+
await (0, codex_auth_1.codexAuthCommand)();
|
|
86
|
+
}
|
|
87
|
+
catch (error) {
|
|
88
|
+
if (error instanceof Error) {
|
|
89
|
+
console.error(chalk_1.default.red(`\n✗ ${error.message}\n`));
|
|
90
|
+
}
|
|
91
|
+
process.exit(1);
|
|
92
|
+
}
|
|
93
|
+
});
|
|
79
94
|
// Organization commands
|
|
80
95
|
const org = program
|
|
81
96
|
.command('org')
|
|
@@ -111,7 +126,6 @@ program
|
|
|
111
126
|
.command('connect <workspace-name>')
|
|
112
127
|
.description('Connect to a workspace via SSH')
|
|
113
128
|
.option('-c, --copy', 'Copy files from replicas.json to the workspace')
|
|
114
|
-
.option('--skip-auth', 'Skip copying Codex authentication to the workspace')
|
|
115
129
|
.action(async (workspaceName, options) => {
|
|
116
130
|
try {
|
|
117
131
|
await (0, connect_1.connectCommand)(workspaceName, options);
|
|
@@ -128,7 +142,6 @@ program
|
|
|
128
142
|
.command('code <workspace-name>')
|
|
129
143
|
.description('Open a workspace in VSCode/Cursor via Remote SSH')
|
|
130
144
|
.option('-c, --copy', 'Copy files from replicas.json to the workspace')
|
|
131
|
-
.option('--skip-auth', 'Skip copying Codex authentication to the workspace')
|
|
132
145
|
.action(async (workspaceName, options) => {
|
|
133
146
|
try {
|
|
134
147
|
await (0, code_1.codeCommand)(workspaceName, options);
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";;;;;;AAEA,yBAAuB;AACvB,yCAAoC;AACpC,kDAA0B;AAC1B,4CAAgD;AAChD,8CAAkD;AAClD,8CAAkD;AAClD,gDAAoD;AACpD,0CAA8C;AAC9C,wCAA8D;AAC9D,8CAA0F;AAC1F,4CAAgD;
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-connection.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-connection.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"workspace-connection.d.ts","sourceRoot":"","sources":["../../src/lib/workspace-connection.ts"],"names":[],"mappings":"AAMA,OAAO,EAAE,SAAS,EAAE,MAAM,UAAU,CAAC;AAcrC,MAAM,WAAW,uBAAuB;IACtC,SAAS,EAAE,SAAS,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,YAAY,EAAE,GAAG,CAAC,MAAM,EAAE,MAAM,CAAC,CAAC;IAClC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAC;CACzB;AAED,wBAAsB,0BAA0B,CAC9C,aAAa,EAAE,MAAM,EACrB,OAAO,EAAE;IAAE,IAAI,CAAC,EAAE,OAAO,CAAA;CAAE,GAC1B,OAAO,CAAC,uBAAuB,CAAC,CAuIlC"}
|
|
@@ -8,16 +8,12 @@ const chalk_1 = __importDefault(require("chalk"));
|
|
|
8
8
|
const prompts_1 = __importDefault(require("prompts"));
|
|
9
9
|
const path_1 = __importDefault(require("path"));
|
|
10
10
|
const fs_1 = __importDefault(require("fs"));
|
|
11
|
-
const os_1 = __importDefault(require("os"));
|
|
12
|
-
const child_process_1 = require("child_process");
|
|
13
|
-
const util_1 = require("util");
|
|
14
11
|
const config_1 = require("./config");
|
|
15
12
|
const api_1 = require("./api");
|
|
16
13
|
const ssh_1 = require("./ssh");
|
|
17
14
|
const git_1 = require("./git");
|
|
18
15
|
const replicas_config_1 = require("./replicas-config");
|
|
19
16
|
const ports_1 = require("./ports");
|
|
20
|
-
const execAsync = (0, util_1.promisify)(child_process_1.exec);
|
|
21
17
|
async function prepareWorkspaceConnection(workspaceName, options) {
|
|
22
18
|
const orgId = (0, config_1.getOrganizationId)();
|
|
23
19
|
if (!orgId) {
|
|
@@ -64,30 +60,7 @@ async function prepareWorkspaceConnection(workspaceName, options) {
|
|
|
64
60
|
const keyPath = path_1.default.join(config_1.CONFIG_DIR, 'keys', `${selectedWorkspace.ssh_key_id}.pem`);
|
|
65
61
|
fs_1.default.writeFileSync(keyPath, privateKey, { mode: 0o600 });
|
|
66
62
|
console.log(chalk_1.default.green('✓ SSH key ready'));
|
|
67
|
-
// Step 4:
|
|
68
|
-
if (!options.skipAuth) {
|
|
69
|
-
const codexAuthPath = path_1.default.join(os_1.default.homedir(), '.codex', 'auth.json');
|
|
70
|
-
if (fs_1.default.existsSync(codexAuthPath)) {
|
|
71
|
-
console.log(chalk_1.default.blue('\nCopying ~/.codex/auth.json to workspace...'));
|
|
72
|
-
try {
|
|
73
|
-
// Create ~/.codex directory on the VM
|
|
74
|
-
await execAsync(`ssh -i ${keyPath} -o StrictHostKeyChecking=no -o UserKnownHostsFile=/dev/null ubuntu@${selectedWorkspace.ipv4_address} "mkdir -p ~/.codex"`);
|
|
75
|
-
const remoteAuthPath = '/home/ubuntu/.codex/auth.json';
|
|
76
|
-
await (0, ssh_1.scpCopyFile)(keyPath, codexAuthPath, remoteAuthPath, selectedWorkspace.ipv4_address);
|
|
77
|
-
console.log(chalk_1.default.green('✓ Copied Codex authentication to workspace'));
|
|
78
|
-
}
|
|
79
|
-
catch (error) {
|
|
80
|
-
console.log(chalk_1.default.yellow(`Warning: Failed to copy ~/.codex/auth.json: ${error instanceof Error ? error.message : 'Unknown error'}`));
|
|
81
|
-
}
|
|
82
|
-
}
|
|
83
|
-
else {
|
|
84
|
-
console.log(chalk_1.default.gray('\nSkipping ~/.codex/auth.json copy (file not found locally)'));
|
|
85
|
-
}
|
|
86
|
-
}
|
|
87
|
-
else {
|
|
88
|
-
console.log(chalk_1.default.gray('\nSkipping ~/.codex/auth.json copy (--skip-auth flag specified)'));
|
|
89
|
-
}
|
|
90
|
-
// Step 5: Handle --copy flag
|
|
63
|
+
// Step 4: Handle --copy flag
|
|
91
64
|
let repoName = null;
|
|
92
65
|
if (options.copy) {
|
|
93
66
|
if (!(0, git_1.isInsideGitRepo)()) {
|
|
@@ -132,11 +105,8 @@ async function prepareWorkspaceConnection(workspaceName, options) {
|
|
|
132
105
|
}
|
|
133
106
|
// Step 6: Handle port forwarding
|
|
134
107
|
const portMappings = new Map();
|
|
135
|
-
// Always tunnel port 1455
|
|
136
|
-
console.log(chalk_1.default.blue('\nSetting up port forwarding...'));
|
|
137
|
-
portMappings.set(1455, 1455);
|
|
138
|
-
console.log(chalk_1.default.gray(` Forwarding localhost:1455 -> workspace:1455`));
|
|
139
108
|
// Add ports from replicas.json if inside a git repo
|
|
109
|
+
console.log(chalk_1.default.blue('\nSetting up port forwarding...'));
|
|
140
110
|
if ((0, git_1.isInsideGitRepo)()) {
|
|
141
111
|
const replicasConfig = (0, replicas_config_1.readReplicasConfig)();
|
|
142
112
|
if (replicasConfig && replicasConfig.ports && replicasConfig.ports.length > 0) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"workspace-connection.js","sourceRoot":"","sources":["../../src/lib/workspace-connection.ts"],"names":[],"mappings":";;;;;
|
|
1
|
+
{"version":3,"file":"workspace-connection.js","sourceRoot":"","sources":["../../src/lib/workspace-connection.ts"],"names":[],"mappings":";;;;;AA2BA,gEA0IC;AArKD,kDAA0B;AAC1B,sDAA8B;AAC9B,gDAAwB;AACxB,4CAAoB;AACpB,qCAAyD;AACzD,+BAA8C;AAE9C,+BAA+C;AAC/C,+BAAwD;AACxD,uDAA+F;AAC/F,mCAA0C;AAiBnC,KAAK,UAAU,0BAA0B,CAC9C,aAAqB,EACrB,OAA2B;IAE3B,MAAM,KAAK,GAAG,IAAA,0BAAiB,GAAE,CAAC;IAClC,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,mCAAmC;IACnC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,8BAA8B,aAAa,KAAK,CAAC,CAAC,CAAC;IAC1E,MAAM,QAAQ,GAAG,MAAM,IAAA,2BAAqB,EAC1C,wBAAwB,kBAAkB,CAAC,aAAa,CAAC,EAAE,CAC5D,CAAC;IAEF,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,MAAM,IAAI,KAAK,CAAC,2CAA2C,aAAa,IAAI,CAAC,CAAC;IAChF,CAAC;IAED,4DAA4D;IAC5D,IAAI,iBAA4B,CAAC;IAEjC,IAAI,QAAQ,CAAC,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACrC,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAC,CAAC,CAAC;IAC7C,CAAC;SAAM,CAAC;QACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,WAAW,QAAQ,CAAC,UAAU,CAAC,MAAM,yBAAyB,aAAa,IAAI,CAAC,CAAC,CAAC;QAE3G,MAAM,cAAc,GAAG,MAAM,IAAA,iBAAO,EAAC;YACnC,IAAI,EAAE,QAAQ;YACd,IAAI,EAAE,aAAa;YACnB,OAAO,EAAE,qBAAqB;YAC9B,OAAO,EAAE,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;gBACtC,KAAK,EAAE,GAAG,EAAE,CAAC,IAAI,KAAK,EAAE,CAAC,MAAM,IAAI,SAAS,GAAG;gBAC/C,KAAK,EAAE,EAAE,CAAC,EAAE;gBACZ,WAAW,EAAE,OAAO,EAAE,CAAC,YAAY,IAAI,KAAK,gBAAgB,EAAE,CAAC,aAAa,IAAI,KAAK,EAAE;aACxF,CAAC,CAAC;SACJ,CAAC,CAAC;QAEH,IAAI,CAAC,cAAc,CAAC,WAAW,EAAE,CAAC;YAChC,MAAM,IAAI,KAAK,CAAC,gCAAgC,CAAC,CAAC;QACpD,CAAC;QAED,iBAAiB,GAAG,QAAQ,CAAC,UAAU,CAAC,IAAI,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,KAAK,cAAc,CAAC,WAAW,CAAE,CAAC;IAC5F,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,2BAA2B,iBAAiB,CAAC,IAAI,EAAE,CAAC,CAAC,CAAC;IAC9E,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,SAAS,iBAAiB,CAAC,YAAY,EAAE,CAAC,CAAC,CAAC;IACnE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,iBAAiB,CAAC,MAAM,IAAI,SAAS,EAAE,CAAC,CAAC,CAAC;IAE9E,IAAI,CAAC,iBAAiB,CAAC,YAAY,EAAE,CAAC;QACpC,MAAM,IAAI,KAAK,CAAC,mEAAmE,CAAC,CAAC;IACvF,CAAC;IAED,sBAAsB;IACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,yBAAyB,CAAC,CAAC,CAAC;IACnD,MAAM,UAAU,GAAG,MAAM,IAAA,eAAS,EAAC,iBAAiB,CAAC,UAAU,CAAC,CAAC;IAEjE,wCAAwC;IACxC,MAAM,OAAO,GAAG,cAAI,CAAC,IAAI,CAAC,mBAAU,EAAE,MAAM,EAAE,GAAG,iBAAiB,CAAC,UAAU,MAAM,CAAC,CAAC;IACrF,YAAE,CAAC,aAAa,CAAC,OAAO,EAAE,UAAU,EAAE,EAAE,IAAI,EAAE,KAAK,EAAE,CAAC,CAAC;IAEvD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,CAAC,CAAC;IAE5C,6BAA6B;IAC7B,IAAI,QAAQ,GAAkB,IAAI,CAAC;IAEnC,IAAI,OAAO,CAAC,IAAI,EAAE,CAAC;QACjB,IAAI,CAAC,IAAA,qBAAe,GAAE,EAAE,CAAC;YACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,6DAA6D,CAAC,CAAC,CAAC;QAC3F,CAAC;aAAM,CAAC;YACN,QAAQ,GAAG,IAAA,oBAAc,GAAE,CAAC;YAC5B,MAAM,cAAc,GAAG,IAAA,oCAAkB,GAAE,CAAC;YAE5C,IAAI,CAAC,cAAc,IAAI,CAAC,cAAc,CAAC,IAAI,IAAI,cAAc,CAAC,IAAI,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBAChF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,wDAAwD,CAAC,CAAC,CAAC;YACtF,CAAC;iBAAM,CAAC;gBACN,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,uCAAuC,QAAQ,MAAM,CAAC,CAAC,CAAC;gBAE/E,MAAM,EAAE,KAAK,EAAE,OAAO,EAAE,GAAG,IAAA,mCAAiB,EAAC,cAAc,CAAC,IAAI,CAAC,CAAC;gBAElE,IAAI,OAAO,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;oBACvB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,cAAc,OAAO,CAAC,MAAM,6BAA6B,CAAC,CAAC,CAAC;oBACrF,OAAO,CAAC,OAAO,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC,CAAC;gBAClE,CAAC;gBAED,KAAK,MAAM,IAAI,IAAI,KAAK,EAAE,CAAC;oBACzB,MAAM,SAAS,GAAG,IAAA,qCAAmB,EAAC,IAAI,CAAC,CAAC;oBAC5C,MAAM,UAAU,GAAG,2BAA2B,QAAQ,IAAI,IAAI,EAAE,CAAC;oBAEjE,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,aAAa,IAAI,KAAK,CAAC,CAAC,CAAC;oBAEhD,IAAI,CAAC;wBACH,MAAM,IAAA,iBAAW,EAAC,OAAO,EAAE,SAAS,EAAE,UAAU,EAAE,iBAAiB,CAAC,YAAY,CAAC,CAAC;wBAClF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,OAAO,IAAI,EAAE,CAAC,CAAC,CAAC;oBAC1C,CAAC;oBAAC,OAAO,KAAK,EAAE,CAAC;wBACf,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,GAAG,CAAC,sBAAsB,IAAI,KAAK,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC;oBACpH,CAAC;gBACH,CAAC;gBAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,2BAA2B,KAAK,CAAC,MAAM,SAAS,CAAC,CAAC,CAAC;YAC7E,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC,QAAQ,IAAI,IAAA,qBAAe,GAAE,EAAE,CAAC;QACnC,IAAI,CAAC;YACH,QAAQ,GAAG,IAAA,oBAAc,GAAE,CAAC;QAC9B,CAAC;QAAC,MAAM,CAAC;YACP,uCAAuC;QACzC,CAAC;IACH,CAAC;IAED,iCAAiC;IACjC,MAAM,YAAY,GAAG,IAAI,GAAG,EAAkB,CAAC;IAE/C,oDAAoD;IACpD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,iCAAiC,CAAC,CAAC,CAAC;IAC3D,IAAI,IAAA,qBAAe,GAAE,EAAE,CAAC;QACtB,MAAM,cAAc,GAAG,IAAA,oCAAkB,GAAE,CAAC;QAE5C,IAAI,cAAc,IAAI,cAAc,CAAC,KAAK,IAAI,cAAc,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;YAC9E,MAAM,QAAQ,GAAG,MAAM,IAAA,uBAAe,EAAC,cAAc,CAAC,KAAK,CAAC,CAAC;YAE7D,KAAK,MAAM,CAAC,UAAU,EAAE,SAAS,CAAC,IAAI,QAAQ,EAAE,CAAC;gBAC/C,YAAY,CAAC,GAAG,CAAC,UAAU,EAAE,SAAS,CAAC,CAAC;gBACxC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,0BAA0B,SAAS,iBAAiB,UAAU,EAAE,CAAC,CAAC,CAAC;YAC5F,CAAC;QACH,CAAC;IACH,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,8BAA8B,CAAC,CAAC,CAAC;IAEzD,OAAO;QACL,SAAS,EAAE,iBAAiB;QAC5B,UAAU,EAAE,OAAO;QACnB,YAAY;QACZ,QAAQ;KACT,CAAC;AACJ,CAAC"}
|