openai-precise-coder 1.0.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/auth.d.ts +17 -0
- package/dist/auth.d.ts.map +1 -0
- package/dist/auth.js +96 -0
- package/dist/auth.js.map +1 -0
- package/dist/cli.d.ts +1 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +80 -10
- package/dist/cli.js.map +1 -1
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -0
- package/dist/index.js.map +1 -1
- package/package.json +3 -2
package/dist/auth.d.ts
ADDED
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authentication module - Google Cloud based
|
|
3
|
+
*/
|
|
4
|
+
interface AuthConfig {
|
|
5
|
+
authenticated: boolean;
|
|
6
|
+
email?: string;
|
|
7
|
+
lastLogin?: string;
|
|
8
|
+
}
|
|
9
|
+
export declare function checkGCloudAuth(): Promise<boolean>;
|
|
10
|
+
export declare function getGCloudEmail(): Promise<string | null>;
|
|
11
|
+
export declare function login(): Promise<boolean>;
|
|
12
|
+
export declare function logout(): Promise<void>;
|
|
13
|
+
export declare function getOpenAIKey(): Promise<string>;
|
|
14
|
+
export declare function getConfig(): AuthConfig;
|
|
15
|
+
export declare function ensureAuthenticated(): Promise<string>;
|
|
16
|
+
export {};
|
|
17
|
+
//# sourceMappingURL=auth.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.d.ts","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"AAAA;;GAEG;AAaH,UAAU,UAAU;IAClB,aAAa,EAAE,OAAO,CAAC;IACvB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,wBAAsB,eAAe,IAAI,OAAO,CAAC,OAAO,CAAC,CAUxD;AAED,wBAAsB,cAAc,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAS7D;AAED,wBAAsB,KAAK,IAAI,OAAO,CAAC,OAAO,CAAC,CAgB9C;AAED,wBAAsB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC,CAO5C;AAED,wBAAsB,YAAY,IAAI,OAAO,CAAC,MAAM,CAAC,CAapD;AAED,wBAAgB,SAAS,IAAI,UAAU,CAUtC;AASD,wBAAsB,mBAAmB,IAAI,OAAO,CAAC,MAAM,CAAC,CAQ3D"}
|
package/dist/auth.js
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Authentication module - Google Cloud based
|
|
3
|
+
*/
|
|
4
|
+
import { SecretManagerServiceClient } from '@google-cloud/secret-manager';
|
|
5
|
+
import { existsSync, readFileSync, writeFileSync, mkdirSync } from 'fs';
|
|
6
|
+
import { homedir } from 'os';
|
|
7
|
+
import { join } from 'path';
|
|
8
|
+
import { execSync } from 'child_process';
|
|
9
|
+
const CONFIG_DIR = join(homedir(), '.precise-coder');
|
|
10
|
+
const CONFIG_FILE = join(CONFIG_DIR, 'config.json');
|
|
11
|
+
const GCP_PROJECT = 'precise-coder-prod';
|
|
12
|
+
const SECRET_NAME = 'OPENAI_API_KEY';
|
|
13
|
+
export async function checkGCloudAuth() {
|
|
14
|
+
try {
|
|
15
|
+
const result = execSync('gcloud auth print-access-token 2>/dev/null', {
|
|
16
|
+
encoding: 'utf-8',
|
|
17
|
+
timeout: 10000
|
|
18
|
+
});
|
|
19
|
+
return result.trim().length > 0;
|
|
20
|
+
}
|
|
21
|
+
catch {
|
|
22
|
+
return false;
|
|
23
|
+
}
|
|
24
|
+
}
|
|
25
|
+
export async function getGCloudEmail() {
|
|
26
|
+
try {
|
|
27
|
+
const result = execSync('gcloud config get-value account 2>/dev/null', {
|
|
28
|
+
encoding: 'utf-8'
|
|
29
|
+
});
|
|
30
|
+
return result.trim() || null;
|
|
31
|
+
}
|
|
32
|
+
catch {
|
|
33
|
+
return null;
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
export async function login() {
|
|
37
|
+
try {
|
|
38
|
+
execSync('gcloud auth login', { stdio: 'inherit' });
|
|
39
|
+
execSync('gcloud auth application-default login', { stdio: 'inherit' });
|
|
40
|
+
const email = await getGCloudEmail();
|
|
41
|
+
saveConfig({
|
|
42
|
+
authenticated: true,
|
|
43
|
+
email: email || undefined,
|
|
44
|
+
lastLogin: new Date().toISOString()
|
|
45
|
+
});
|
|
46
|
+
return true;
|
|
47
|
+
}
|
|
48
|
+
catch {
|
|
49
|
+
return false;
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
export async function logout() {
|
|
53
|
+
try {
|
|
54
|
+
execSync('gcloud auth revoke --all 2>/dev/null', { stdio: 'inherit' });
|
|
55
|
+
}
|
|
56
|
+
catch {
|
|
57
|
+
// Ignore errors
|
|
58
|
+
}
|
|
59
|
+
saveConfig({ authenticated: false });
|
|
60
|
+
}
|
|
61
|
+
export async function getOpenAIKey() {
|
|
62
|
+
const client = new SecretManagerServiceClient();
|
|
63
|
+
const [version] = await client.accessSecretVersion({
|
|
64
|
+
name: `projects/${GCP_PROJECT}/secrets/${SECRET_NAME}/versions/latest`,
|
|
65
|
+
});
|
|
66
|
+
const payload = version.payload?.data;
|
|
67
|
+
if (!payload) {
|
|
68
|
+
throw new Error('Secret payload is empty');
|
|
69
|
+
}
|
|
70
|
+
return payload.toString();
|
|
71
|
+
}
|
|
72
|
+
export function getConfig() {
|
|
73
|
+
if (!existsSync(CONFIG_FILE)) {
|
|
74
|
+
return { authenticated: false };
|
|
75
|
+
}
|
|
76
|
+
try {
|
|
77
|
+
return JSON.parse(readFileSync(CONFIG_FILE, 'utf-8'));
|
|
78
|
+
}
|
|
79
|
+
catch {
|
|
80
|
+
return { authenticated: false };
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
function saveConfig(config) {
|
|
84
|
+
if (!existsSync(CONFIG_DIR)) {
|
|
85
|
+
mkdirSync(CONFIG_DIR, { recursive: true });
|
|
86
|
+
}
|
|
87
|
+
writeFileSync(CONFIG_FILE, JSON.stringify(config, null, 2));
|
|
88
|
+
}
|
|
89
|
+
export async function ensureAuthenticated() {
|
|
90
|
+
const isAuthed = await checkGCloudAuth();
|
|
91
|
+
if (!isAuthed) {
|
|
92
|
+
throw new Error('Not authenticated. Run: precise-coder login');
|
|
93
|
+
}
|
|
94
|
+
return getOpenAIKey();
|
|
95
|
+
}
|
|
96
|
+
//# sourceMappingURL=auth.js.map
|
package/dist/auth.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"auth.js","sourceRoot":"","sources":["../src/auth.ts"],"names":[],"mappings":"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"}
|
package/dist/cli.d.ts
CHANGED
package/dist/cli.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"cli.d.ts","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA;;;GAGG"}
|
package/dist/cli.js
CHANGED
|
@@ -1,12 +1,14 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
/**
|
|
3
3
|
* GPT-5.2 Precision Coder - CLI Interface
|
|
4
|
+
* Requires Google Cloud authentication
|
|
4
5
|
*/
|
|
5
6
|
import { createInterface } from 'readline';
|
|
6
7
|
import chalk from 'chalk';
|
|
7
8
|
import ora from 'ora';
|
|
8
9
|
import { GPTCoder } from './client.js';
|
|
9
10
|
import { DEFAULT_MODEL } from './types.js';
|
|
11
|
+
import { checkGCloudAuth, getGCloudEmail, login, logout, getOpenAIKey, } from './auth.js';
|
|
10
12
|
const LOGO = `
|
|
11
13
|
${chalk.cyan('╔═══════════════════════════════════════════════════╗')}
|
|
12
14
|
${chalk.cyan('║')} ${chalk.bold.white('GPT-5.2 Precision Coder')} ${chalk.cyan('║')}
|
|
@@ -22,16 +24,76 @@ const COMMANDS = {
|
|
|
22
24
|
review: 'Review code for improvements',
|
|
23
25
|
clear: 'Clear conversation context',
|
|
24
26
|
tokens: 'Show tokens used',
|
|
27
|
+
logout: 'Logout and revoke credentials',
|
|
25
28
|
exit: 'Exit the CLI',
|
|
26
29
|
};
|
|
30
|
+
async function handleLogin() {
|
|
31
|
+
console.log(chalk.cyan('\nGoogle Cloud Authentication Required\n'));
|
|
32
|
+
console.log(chalk.gray('This will open a browser for authentication...'));
|
|
33
|
+
const success = await login();
|
|
34
|
+
if (success) {
|
|
35
|
+
const email = await getGCloudEmail();
|
|
36
|
+
console.log(chalk.green(`\nAuthenticated as: ${email}`));
|
|
37
|
+
return true;
|
|
38
|
+
}
|
|
39
|
+
else {
|
|
40
|
+
console.error(chalk.red('\nAuthentication failed'));
|
|
41
|
+
return false;
|
|
42
|
+
}
|
|
43
|
+
}
|
|
27
44
|
async function main() {
|
|
45
|
+
const args = process.argv.slice(2);
|
|
46
|
+
// Handle login command
|
|
47
|
+
if (args[0] === 'login') {
|
|
48
|
+
console.log(LOGO);
|
|
49
|
+
const success = await handleLogin();
|
|
50
|
+
process.exit(success ? 0 : 1);
|
|
51
|
+
}
|
|
52
|
+
// Handle logout command
|
|
53
|
+
if (args[0] === 'logout') {
|
|
54
|
+
console.log(LOGO);
|
|
55
|
+
await logout();
|
|
56
|
+
console.log(chalk.green('Logged out successfully'));
|
|
57
|
+
process.exit(0);
|
|
58
|
+
}
|
|
59
|
+
// Handle status command
|
|
60
|
+
if (args[0] === 'status') {
|
|
61
|
+
console.log(LOGO);
|
|
62
|
+
const isAuthed = await checkGCloudAuth();
|
|
63
|
+
if (isAuthed) {
|
|
64
|
+
const email = await getGCloudEmail();
|
|
65
|
+
console.log(chalk.green(`Authenticated as: ${email}`));
|
|
66
|
+
}
|
|
67
|
+
else {
|
|
68
|
+
console.log(chalk.yellow('Not authenticated'));
|
|
69
|
+
console.log(chalk.gray('Run: precise-coder login'));
|
|
70
|
+
}
|
|
71
|
+
process.exit(0);
|
|
72
|
+
}
|
|
28
73
|
console.log(LOGO);
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
74
|
+
// Check authentication
|
|
75
|
+
const spinner = ora('Checking authentication...').start();
|
|
76
|
+
const isAuthed = await checkGCloudAuth();
|
|
77
|
+
if (!isAuthed) {
|
|
78
|
+
spinner.fail('Not authenticated');
|
|
79
|
+
console.log(chalk.yellow('\nYou must login first.'));
|
|
80
|
+
console.log(chalk.gray('Run: precise-coder login\n'));
|
|
33
81
|
process.exit(1);
|
|
34
82
|
}
|
|
83
|
+
spinner.text = 'Fetching API credentials...';
|
|
84
|
+
let apiKey;
|
|
85
|
+
try {
|
|
86
|
+
apiKey = await getOpenAIKey();
|
|
87
|
+
spinner.succeed('Authenticated');
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
spinner.fail('Failed to fetch API key');
|
|
91
|
+
console.error(chalk.red(`\nError: ${error.message}`));
|
|
92
|
+
console.log(chalk.gray('Make sure you have access to the secret in GCP'));
|
|
93
|
+
process.exit(1);
|
|
94
|
+
}
|
|
95
|
+
const email = await getGCloudEmail();
|
|
96
|
+
console.log(chalk.gray(`Logged in as: ${email}`));
|
|
35
97
|
const model = process.env.GPT_MODEL || DEFAULT_MODEL;
|
|
36
98
|
console.log(chalk.gray(`Using model: ${model}`));
|
|
37
99
|
console.log(chalk.gray('Type "help" for available commands\n'));
|
|
@@ -47,10 +109,10 @@ async function main() {
|
|
|
47
109
|
prompt();
|
|
48
110
|
return;
|
|
49
111
|
}
|
|
50
|
-
const [command, ...
|
|
51
|
-
const argument =
|
|
112
|
+
const [command, ...cmdArgs] = trimmed.split(' ');
|
|
113
|
+
const argument = cmdArgs.join(' ');
|
|
52
114
|
try {
|
|
53
|
-
await handleCommand(coder, command.toLowerCase(), argument);
|
|
115
|
+
await handleCommand(coder, command.toLowerCase(), argument, rl);
|
|
54
116
|
}
|
|
55
117
|
catch (error) {
|
|
56
118
|
console.error(chalk.red(`Error: ${error.message}`));
|
|
@@ -64,7 +126,7 @@ async function main() {
|
|
|
64
126
|
});
|
|
65
127
|
prompt();
|
|
66
128
|
}
|
|
67
|
-
async function handleCommand(coder, command, argument) {
|
|
129
|
+
async function handleCommand(coder, command, argument, rl) {
|
|
68
130
|
switch (command) {
|
|
69
131
|
case 'help':
|
|
70
132
|
showHelp();
|
|
@@ -85,7 +147,6 @@ async function handleCommand(coder, command, argument) {
|
|
|
85
147
|
break;
|
|
86
148
|
case 'refactor':
|
|
87
149
|
console.log(chalk.yellow('Enter code to refactor, then instructions'));
|
|
88
|
-
// Simplified for CLI - in practice would use multi-line input
|
|
89
150
|
break;
|
|
90
151
|
case 'debug':
|
|
91
152
|
console.log(chalk.yellow('Enter code and error message'));
|
|
@@ -104,11 +165,16 @@ async function handleCommand(coder, command, argument) {
|
|
|
104
165
|
case 'tokens':
|
|
105
166
|
console.log(chalk.cyan(`Tokens used: ${coder.getTokensUsed()}`));
|
|
106
167
|
break;
|
|
168
|
+
case 'logout':
|
|
169
|
+
await logout();
|
|
170
|
+
console.log(chalk.green('Logged out. Goodbye!'));
|
|
171
|
+
rl.close();
|
|
172
|
+
process.exit(0);
|
|
107
173
|
case 'exit':
|
|
108
174
|
case 'quit':
|
|
175
|
+
rl.close();
|
|
109
176
|
process.exit(0);
|
|
110
177
|
default:
|
|
111
|
-
// Treat as general chat/code request
|
|
112
178
|
await streamResponse(coder, `${command} ${argument}`.trim());
|
|
113
179
|
}
|
|
114
180
|
}
|
|
@@ -162,6 +228,10 @@ function showHelp() {
|
|
|
162
228
|
for (const [cmd, desc] of Object.entries(COMMANDS)) {
|
|
163
229
|
console.log(` ${chalk.yellow(cmd.padEnd(12))} ${chalk.gray(desc)}`);
|
|
164
230
|
}
|
|
231
|
+
console.log(chalk.cyan('\nCLI Commands:\n'));
|
|
232
|
+
console.log(` ${chalk.yellow('login'.padEnd(12))} ${chalk.gray('Authenticate with Google Cloud')}`);
|
|
233
|
+
console.log(` ${chalk.yellow('logout'.padEnd(12))} ${chalk.gray('Revoke credentials')}`);
|
|
234
|
+
console.log(` ${chalk.yellow('status'.padEnd(12))} ${chalk.gray('Check authentication status')}`);
|
|
165
235
|
console.log();
|
|
166
236
|
}
|
|
167
237
|
main().catch(console.error);
|
package/dist/cli.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":";AAEA
|
|
1
|
+
{"version":3,"file":"cli.js","sourceRoot":"","sources":["../src/cli.ts"],"names":[],"mappings":"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"}
|
package/dist/index.d.ts
CHANGED
|
@@ -4,4 +4,5 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export { GPTCoder, createCoder } from './client.js';
|
|
6
6
|
export { GPTCoderConfig, CodeRequest, CodeResponse, ChatMessage, StreamCallbacks, ConversationContext, DEFAULT_MODEL, GPT5_MODEL, DEFAULT_SYSTEM_PROMPT, } from './types.js';
|
|
7
|
+
export { checkGCloudAuth, getGCloudEmail, login, logout, getOpenAIKey, ensureAuthenticated, } from './auth.js';
|
|
7
8
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,EACZ,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EACL,cAAc,EACd,WAAW,EACX,YAAY,EACZ,WAAW,EACX,eAAe,EACf,mBAAmB,EACnB,aAAa,EACb,UAAU,EACV,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,cAAc,EACd,KAAK,EACL,MAAM,EACN,YAAY,EACZ,mBAAmB,GACpB,MAAM,WAAW,CAAC"}
|
package/dist/index.js
CHANGED
|
@@ -4,4 +4,5 @@
|
|
|
4
4
|
*/
|
|
5
5
|
export { GPTCoder, createCoder } from './client.js';
|
|
6
6
|
export { DEFAULT_MODEL, GPT5_MODEL, DEFAULT_SYSTEM_PROMPT, } from './types.js';
|
|
7
|
+
export { checkGCloudAuth, getGCloudEmail, login, logout, getOpenAIKey, ensureAuthenticated, } from './auth.js';
|
|
7
8
|
//# sourceMappingURL=index.js.map
|
package/dist/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAOL,aAAa,EACb,UAAU,EACV,qBAAqB,GACtB,MAAM,YAAY,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAAA;;;GAGG;AAEH,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACpD,OAAO,EAOL,aAAa,EACb,UAAU,EACV,qBAAqB,GACtB,MAAM,YAAY,CAAC;AACpB,OAAO,EACL,eAAe,EACf,cAAc,EACd,KAAK,EACL,MAAM,EACN,YAAY,EACZ,mBAAmB,GACpB,MAAM,WAAW,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "openai-precise-coder",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.1.0",
|
|
4
4
|
"description": "GPT-5.2 Precision Coder - Advanced AI-powered coding assistant using OpenAI's latest models",
|
|
5
5
|
"main": "dist/index.js",
|
|
6
6
|
"type": "module",
|
|
@@ -41,8 +41,9 @@
|
|
|
41
41
|
"node": ">=20.0.0"
|
|
42
42
|
},
|
|
43
43
|
"dependencies": {
|
|
44
|
-
"
|
|
44
|
+
"@google-cloud/secret-manager": "^6.1.1",
|
|
45
45
|
"chalk": "^5.6.2",
|
|
46
|
+
"openai": "^4.77.0",
|
|
46
47
|
"ora": "^8.1.1"
|
|
47
48
|
},
|
|
48
49
|
"devDependencies": {
|