pm-orchestrator-runner 1.0.4 → 1.0.5
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/config/global-config.d.ts +69 -0
- package/dist/config/global-config.d.ts.map +1 -0
- package/dist/config/global-config.js +168 -0
- package/dist/config/global-config.js.map +1 -0
- package/dist/repl/commands/keys.d.ts +17 -0
- package/dist/repl/commands/keys.d.ts.map +1 -1
- package/dist/repl/commands/keys.js +68 -5
- package/dist/repl/commands/keys.js.map +1 -1
- package/dist/repl/repl-interface.d.ts +19 -0
- package/dist/repl/repl-interface.d.ts.map +1 -1
- package/dist/repl/repl-interface.js +136 -9
- package/dist/repl/repl-interface.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Global Configuration Manager
|
|
3
|
+
*
|
|
4
|
+
* Manages user-level global settings stored in ~/.pm-orchestrator-runner/config.json
|
|
5
|
+
* This is NOT environment variables - it's a persistent config file.
|
|
6
|
+
*/
|
|
7
|
+
/**
|
|
8
|
+
* Global config structure
|
|
9
|
+
*/
|
|
10
|
+
export interface GlobalConfig {
|
|
11
|
+
/** API keys for different providers */
|
|
12
|
+
apiKeys?: {
|
|
13
|
+
openai?: string;
|
|
14
|
+
anthropic?: string;
|
|
15
|
+
};
|
|
16
|
+
/** Default provider (openai, anthropic) */
|
|
17
|
+
defaultProvider?: string;
|
|
18
|
+
/** Default model for each provider */
|
|
19
|
+
defaultModels?: {
|
|
20
|
+
openai?: string;
|
|
21
|
+
anthropic?: string;
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* Load global config
|
|
26
|
+
* @returns Global config object (empty object if file doesn't exist)
|
|
27
|
+
*/
|
|
28
|
+
export declare function loadGlobalConfig(): GlobalConfig;
|
|
29
|
+
/**
|
|
30
|
+
* Save global config
|
|
31
|
+
* @param config - Config object to save
|
|
32
|
+
*/
|
|
33
|
+
export declare function saveGlobalConfig(config: GlobalConfig): void;
|
|
34
|
+
/**
|
|
35
|
+
* Get API key for a provider
|
|
36
|
+
* @param provider - Provider name (openai, anthropic)
|
|
37
|
+
* @returns API key or undefined
|
|
38
|
+
*/
|
|
39
|
+
export declare function getApiKey(provider: string): string | undefined;
|
|
40
|
+
/**
|
|
41
|
+
* Set API key for a provider
|
|
42
|
+
* @param provider - Provider name (openai, anthropic)
|
|
43
|
+
* @param key - API key to set
|
|
44
|
+
*/
|
|
45
|
+
export declare function setApiKey(provider: string, key: string): void;
|
|
46
|
+
/**
|
|
47
|
+
* Check if any API key is configured
|
|
48
|
+
* @returns true if at least one API key is set
|
|
49
|
+
*/
|
|
50
|
+
export declare function hasAnyApiKey(): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Get default provider
|
|
53
|
+
* @returns Default provider name or 'openai'
|
|
54
|
+
*/
|
|
55
|
+
export declare function getDefaultProvider(): string;
|
|
56
|
+
/**
|
|
57
|
+
* Set default provider
|
|
58
|
+
* @param provider - Provider name
|
|
59
|
+
*/
|
|
60
|
+
export declare function setDefaultProvider(provider: string): void;
|
|
61
|
+
/**
|
|
62
|
+
* Get config file path (for display purposes)
|
|
63
|
+
*/
|
|
64
|
+
export declare function getConfigFilePath(): string;
|
|
65
|
+
/**
|
|
66
|
+
* Get config directory path
|
|
67
|
+
*/
|
|
68
|
+
export declare function getConfigDirPath(): string;
|
|
69
|
+
//# sourceMappingURL=global-config.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.d.ts","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH;;GAEG;AACH,MAAM,WAAW,YAAY;IAC3B,uCAAuC;IACvC,OAAO,CAAC,EAAE;QACR,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;IACF,2CAA2C;IAC3C,eAAe,CAAC,EAAE,MAAM,CAAC;IACzB,sCAAsC;IACtC,aAAa,CAAC,EAAE;QACd,MAAM,CAAC,EAAE,MAAM,CAAC;QAChB,SAAS,CAAC,EAAE,MAAM,CAAC;KACpB,CAAC;CACH;AAqBD;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,CAU/C;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAO3D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,GAAG,SAAS,CAQ9D;AAED;;;;GAIG;AACH,wBAAgB,SAAS,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,IAAI,CAW7D;AAED;;;GAGG;AACH,wBAAgB,YAAY,IAAI,OAAO,CAGtC;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAG3C;AAED;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAIzD;AAED;;GAEG;AACH,wBAAgB,iBAAiB,IAAI,MAAM,CAE1C;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,MAAM,CAEzC"}
|
|
@@ -0,0 +1,168 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
/**
|
|
3
|
+
* Global Configuration Manager
|
|
4
|
+
*
|
|
5
|
+
* Manages user-level global settings stored in ~/.pm-orchestrator-runner/config.json
|
|
6
|
+
* This is NOT environment variables - it's a persistent config file.
|
|
7
|
+
*/
|
|
8
|
+
var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
|
|
9
|
+
if (k2 === undefined) k2 = k;
|
|
10
|
+
var desc = Object.getOwnPropertyDescriptor(m, k);
|
|
11
|
+
if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
|
|
12
|
+
desc = { enumerable: true, get: function() { return m[k]; } };
|
|
13
|
+
}
|
|
14
|
+
Object.defineProperty(o, k2, desc);
|
|
15
|
+
}) : (function(o, m, k, k2) {
|
|
16
|
+
if (k2 === undefined) k2 = k;
|
|
17
|
+
o[k2] = m[k];
|
|
18
|
+
}));
|
|
19
|
+
var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
|
|
20
|
+
Object.defineProperty(o, "default", { enumerable: true, value: v });
|
|
21
|
+
}) : function(o, v) {
|
|
22
|
+
o["default"] = v;
|
|
23
|
+
});
|
|
24
|
+
var __importStar = (this && this.__importStar) || (function () {
|
|
25
|
+
var ownKeys = function(o) {
|
|
26
|
+
ownKeys = Object.getOwnPropertyNames || function (o) {
|
|
27
|
+
var ar = [];
|
|
28
|
+
for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
|
|
29
|
+
return ar;
|
|
30
|
+
};
|
|
31
|
+
return ownKeys(o);
|
|
32
|
+
};
|
|
33
|
+
return function (mod) {
|
|
34
|
+
if (mod && mod.__esModule) return mod;
|
|
35
|
+
var result = {};
|
|
36
|
+
if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
|
|
37
|
+
__setModuleDefault(result, mod);
|
|
38
|
+
return result;
|
|
39
|
+
};
|
|
40
|
+
})();
|
|
41
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
42
|
+
exports.loadGlobalConfig = loadGlobalConfig;
|
|
43
|
+
exports.saveGlobalConfig = saveGlobalConfig;
|
|
44
|
+
exports.getApiKey = getApiKey;
|
|
45
|
+
exports.setApiKey = setApiKey;
|
|
46
|
+
exports.hasAnyApiKey = hasAnyApiKey;
|
|
47
|
+
exports.getDefaultProvider = getDefaultProvider;
|
|
48
|
+
exports.setDefaultProvider = setDefaultProvider;
|
|
49
|
+
exports.getConfigFilePath = getConfigFilePath;
|
|
50
|
+
exports.getConfigDirPath = getConfigDirPath;
|
|
51
|
+
const fs = __importStar(require("fs"));
|
|
52
|
+
const path = __importStar(require("path"));
|
|
53
|
+
const os = __importStar(require("os"));
|
|
54
|
+
/**
|
|
55
|
+
* Global config directory path
|
|
56
|
+
*/
|
|
57
|
+
const CONFIG_DIR = path.join(os.homedir(), '.pm-orchestrator-runner');
|
|
58
|
+
/**
|
|
59
|
+
* Global config file path
|
|
60
|
+
*/
|
|
61
|
+
const CONFIG_FILE = path.join(CONFIG_DIR, 'config.json');
|
|
62
|
+
/**
|
|
63
|
+
* Ensure config directory exists
|
|
64
|
+
*/
|
|
65
|
+
function ensureConfigDir() {
|
|
66
|
+
if (!fs.existsSync(CONFIG_DIR)) {
|
|
67
|
+
fs.mkdirSync(CONFIG_DIR, { recursive: true, mode: 0o700 });
|
|
68
|
+
}
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Load global config
|
|
72
|
+
* @returns Global config object (empty object if file doesn't exist)
|
|
73
|
+
*/
|
|
74
|
+
function loadGlobalConfig() {
|
|
75
|
+
try {
|
|
76
|
+
if (fs.existsSync(CONFIG_FILE)) {
|
|
77
|
+
const content = fs.readFileSync(CONFIG_FILE, 'utf-8');
|
|
78
|
+
return JSON.parse(content);
|
|
79
|
+
}
|
|
80
|
+
}
|
|
81
|
+
catch (err) {
|
|
82
|
+
console.error('Warning: Failed to load global config:', err.message);
|
|
83
|
+
}
|
|
84
|
+
return {};
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Save global config
|
|
88
|
+
* @param config - Config object to save
|
|
89
|
+
*/
|
|
90
|
+
function saveGlobalConfig(config) {
|
|
91
|
+
ensureConfigDir();
|
|
92
|
+
// Write with restricted permissions (owner read/write only)
|
|
93
|
+
fs.writeFileSync(CONFIG_FILE, JSON.stringify(config, null, 2), {
|
|
94
|
+
encoding: 'utf-8',
|
|
95
|
+
mode: 0o600,
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
/**
|
|
99
|
+
* Get API key for a provider
|
|
100
|
+
* @param provider - Provider name (openai, anthropic)
|
|
101
|
+
* @returns API key or undefined
|
|
102
|
+
*/
|
|
103
|
+
function getApiKey(provider) {
|
|
104
|
+
const config = loadGlobalConfig();
|
|
105
|
+
if (provider === 'openai') {
|
|
106
|
+
return config.apiKeys?.openai;
|
|
107
|
+
}
|
|
108
|
+
else if (provider === 'anthropic') {
|
|
109
|
+
return config.apiKeys?.anthropic;
|
|
110
|
+
}
|
|
111
|
+
return undefined;
|
|
112
|
+
}
|
|
113
|
+
/**
|
|
114
|
+
* Set API key for a provider
|
|
115
|
+
* @param provider - Provider name (openai, anthropic)
|
|
116
|
+
* @param key - API key to set
|
|
117
|
+
*/
|
|
118
|
+
function setApiKey(provider, key) {
|
|
119
|
+
const config = loadGlobalConfig();
|
|
120
|
+
if (!config.apiKeys) {
|
|
121
|
+
config.apiKeys = {};
|
|
122
|
+
}
|
|
123
|
+
if (provider === 'openai') {
|
|
124
|
+
config.apiKeys.openai = key;
|
|
125
|
+
}
|
|
126
|
+
else if (provider === 'anthropic') {
|
|
127
|
+
config.apiKeys.anthropic = key;
|
|
128
|
+
}
|
|
129
|
+
saveGlobalConfig(config);
|
|
130
|
+
}
|
|
131
|
+
/**
|
|
132
|
+
* Check if any API key is configured
|
|
133
|
+
* @returns true if at least one API key is set
|
|
134
|
+
*/
|
|
135
|
+
function hasAnyApiKey() {
|
|
136
|
+
const config = loadGlobalConfig();
|
|
137
|
+
return !!(config.apiKeys?.openai || config.apiKeys?.anthropic);
|
|
138
|
+
}
|
|
139
|
+
/**
|
|
140
|
+
* Get default provider
|
|
141
|
+
* @returns Default provider name or 'openai'
|
|
142
|
+
*/
|
|
143
|
+
function getDefaultProvider() {
|
|
144
|
+
const config = loadGlobalConfig();
|
|
145
|
+
return config.defaultProvider || 'openai';
|
|
146
|
+
}
|
|
147
|
+
/**
|
|
148
|
+
* Set default provider
|
|
149
|
+
* @param provider - Provider name
|
|
150
|
+
*/
|
|
151
|
+
function setDefaultProvider(provider) {
|
|
152
|
+
const config = loadGlobalConfig();
|
|
153
|
+
config.defaultProvider = provider;
|
|
154
|
+
saveGlobalConfig(config);
|
|
155
|
+
}
|
|
156
|
+
/**
|
|
157
|
+
* Get config file path (for display purposes)
|
|
158
|
+
*/
|
|
159
|
+
function getConfigFilePath() {
|
|
160
|
+
return CONFIG_FILE;
|
|
161
|
+
}
|
|
162
|
+
/**
|
|
163
|
+
* Get config directory path
|
|
164
|
+
*/
|
|
165
|
+
function getConfigDirPath() {
|
|
166
|
+
return CONFIG_DIR;
|
|
167
|
+
}
|
|
168
|
+
//# sourceMappingURL=global-config.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"global-config.js","sourceRoot":"","sources":["../../src/config/global-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,11 +3,14 @@
|
|
|
3
3
|
*
|
|
4
4
|
* Per spec 10_REPL_UX.md Section 2.3:
|
|
5
5
|
* - /keys: show status of all API keys (SET/NOT SET)
|
|
6
|
+
* - /keys set <provider> <key>: set API key in global config
|
|
6
7
|
* - /keys check: validate API key format
|
|
7
8
|
*
|
|
8
9
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
9
10
|
* - API keys must NEVER appear in logs or evidence
|
|
10
11
|
* - Only "SET" or "NOT SET" status is allowed
|
|
12
|
+
*
|
|
13
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
11
14
|
*/
|
|
12
15
|
/**
|
|
13
16
|
* Key status result
|
|
@@ -39,9 +42,23 @@ export declare class KeysCommand {
|
|
|
39
42
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
40
43
|
* - Only show SET/NOT SET, never the actual key value
|
|
41
44
|
*
|
|
45
|
+
* Checks both:
|
|
46
|
+
* - Global config file (~/.pm-orchestrator-runner/config.json)
|
|
47
|
+
* - Environment variables (legacy support)
|
|
48
|
+
*
|
|
42
49
|
* @returns Keys result
|
|
43
50
|
*/
|
|
44
51
|
getKeyStatus(): Promise<KeysResult>;
|
|
52
|
+
/**
|
|
53
|
+
* Set API key in global config
|
|
54
|
+
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
55
|
+
* - API key value is stored but NEVER displayed
|
|
56
|
+
*
|
|
57
|
+
* @param provider - Provider ID (openai or anthropic)
|
|
58
|
+
* @param key - API key value
|
|
59
|
+
* @returns Keys result
|
|
60
|
+
*/
|
|
61
|
+
setKey(provider: string, key: string): Promise<KeysResult>;
|
|
45
62
|
/**
|
|
46
63
|
* Check if a specific provider's API key is configured
|
|
47
64
|
*
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"keys.d.ts","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAeH;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,QAAQ,EAAE,MAAM,CAAC;IACjB,MAAM,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,EAAE,KAAK,GAAG,SAAS,GAAG,cAAc,CAAC;CAC5C;AAED;;GAEG;AACH,MAAM,WAAW,UAAU;IACzB,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,IAAI,CAAC,EAAE,SAAS,EAAE,CAAC;IACnB,KAAK,CAAC,EAAE;QACN,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;KACjB,CAAC;CACH;AAED;;GAEG;AACH,qBAAa,WAAW;IACtB;;;;;;;;;;OAUG;IACG,YAAY,IAAI,OAAO,CAAC,UAAU,CAAC;IA4BzC;;;;;;;;OAQG;IACG,MAAM,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAyChE;;;;;OAKG;IACG,gBAAgB,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAAC,UAAU,CAAC;IAgC/D;;;;;;;;OAQG;IACH,eAAe,CAAC,IAAI,EAAE,SAAS,EAAE,GAAG,MAAM;CA+B3C"}
|
|
@@ -4,17 +4,21 @@
|
|
|
4
4
|
*
|
|
5
5
|
* Per spec 10_REPL_UX.md Section 2.3:
|
|
6
6
|
* - /keys: show status of all API keys (SET/NOT SET)
|
|
7
|
+
* - /keys set <provider> <key>: set API key in global config
|
|
7
8
|
* - /keys check: validate API key format
|
|
8
9
|
*
|
|
9
10
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
10
11
|
* - API keys must NEVER appear in logs or evidence
|
|
11
12
|
* - Only "SET" or "NOT SET" status is allowed
|
|
13
|
+
*
|
|
14
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
12
15
|
*/
|
|
13
16
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
14
17
|
exports.KeysCommand = void 0;
|
|
15
18
|
const sensitive_data_masker_1 = require("../../logging/sensitive-data-masker");
|
|
16
19
|
const repl_1 = require("../../models/repl");
|
|
17
20
|
const model_registry_1 = require("../../models/repl/model-registry");
|
|
21
|
+
const global_config_1 = require("../../config/global-config");
|
|
18
22
|
/**
|
|
19
23
|
* Keys Command class
|
|
20
24
|
*/
|
|
@@ -24,18 +28,27 @@ class KeysCommand {
|
|
|
24
28
|
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
25
29
|
* - Only show SET/NOT SET, never the actual key value
|
|
26
30
|
*
|
|
31
|
+
* Checks both:
|
|
32
|
+
* - Global config file (~/.pm-orchestrator-runner/config.json)
|
|
33
|
+
* - Environment variables (legacy support)
|
|
34
|
+
*
|
|
27
35
|
* @returns Keys result
|
|
28
36
|
*/
|
|
29
37
|
async getKeyStatus() {
|
|
30
38
|
const providers = (0, model_registry_1.getAllProviders)();
|
|
31
39
|
const keys = [];
|
|
32
40
|
for (const provider of providers) {
|
|
41
|
+
// Check global config first
|
|
42
|
+
const globalKey = (0, global_config_1.getApiKey)(provider.id);
|
|
43
|
+
// Then check environment variables (legacy)
|
|
33
44
|
const keyCheck = (0, sensitive_data_masker_1.checkApiKeyForProvider)(provider.id);
|
|
45
|
+
// Use global config if set, otherwise fall back to env var
|
|
46
|
+
const isSet = !!globalKey || keyCheck.status === 'SET';
|
|
34
47
|
keys.push({
|
|
35
48
|
provider: provider.displayName,
|
|
36
49
|
envVar: keyCheck.envVar,
|
|
37
50
|
required: keyCheck.required,
|
|
38
|
-
status:
|
|
51
|
+
status: isSet ? 'SET' : 'NOT SET',
|
|
39
52
|
});
|
|
40
53
|
}
|
|
41
54
|
return {
|
|
@@ -44,6 +57,52 @@ class KeysCommand {
|
|
|
44
57
|
keys,
|
|
45
58
|
};
|
|
46
59
|
}
|
|
60
|
+
/**
|
|
61
|
+
* Set API key in global config
|
|
62
|
+
* Per spec 06_CORRECTNESS_PROPERTIES.md Property 24:
|
|
63
|
+
* - API key value is stored but NEVER displayed
|
|
64
|
+
*
|
|
65
|
+
* @param provider - Provider ID (openai or anthropic)
|
|
66
|
+
* @param key - API key value
|
|
67
|
+
* @returns Keys result
|
|
68
|
+
*/
|
|
69
|
+
async setKey(provider, key) {
|
|
70
|
+
// Validate provider
|
|
71
|
+
const validProviders = ['openai', 'anthropic'];
|
|
72
|
+
if (!validProviders.includes(provider.toLowerCase())) {
|
|
73
|
+
return {
|
|
74
|
+
success: false,
|
|
75
|
+
message: 'Invalid provider',
|
|
76
|
+
error: {
|
|
77
|
+
code: 'E102',
|
|
78
|
+
message: 'Invalid provider: ' + provider + '. Valid providers: openai, anthropic',
|
|
79
|
+
},
|
|
80
|
+
};
|
|
81
|
+
}
|
|
82
|
+
// Validate key format
|
|
83
|
+
if (!key || key.length < 10) {
|
|
84
|
+
return {
|
|
85
|
+
success: false,
|
|
86
|
+
message: 'Invalid API key',
|
|
87
|
+
error: {
|
|
88
|
+
code: 'E108',
|
|
89
|
+
message: 'API key appears to be invalid (too short)',
|
|
90
|
+
},
|
|
91
|
+
};
|
|
92
|
+
}
|
|
93
|
+
// Set the key in global config
|
|
94
|
+
(0, global_config_1.setApiKey)(provider.toLowerCase(), key);
|
|
95
|
+
return {
|
|
96
|
+
success: true,
|
|
97
|
+
message: 'API key set successfully for ' + provider,
|
|
98
|
+
keys: [{
|
|
99
|
+
provider: provider,
|
|
100
|
+
envVar: null,
|
|
101
|
+
required: true,
|
|
102
|
+
status: 'SET',
|
|
103
|
+
}],
|
|
104
|
+
};
|
|
105
|
+
}
|
|
47
106
|
/**
|
|
48
107
|
* Check if a specific provider's API key is configured
|
|
49
108
|
*
|
|
@@ -97,14 +156,18 @@ class KeysCommand {
|
|
|
97
156
|
else {
|
|
98
157
|
const statusIcon = key.status === 'SET' ? '[OK]' : '[MISSING]';
|
|
99
158
|
output += ' Status: ' + statusIcon + ' ' + key.status + '\n';
|
|
100
|
-
|
|
159
|
+
if (key.envVar) {
|
|
160
|
+
output += ' Legacy Env Var: ' + key.envVar + '\n';
|
|
161
|
+
}
|
|
101
162
|
}
|
|
102
163
|
output += '\n';
|
|
103
164
|
}
|
|
165
|
+
// Add config file info
|
|
166
|
+
output += 'Config file: ' + (0, global_config_1.getConfigFilePath)() + '\n\n';
|
|
104
167
|
// Add help text
|
|
105
|
-
output += 'To set an API key
|
|
106
|
-
output += '
|
|
107
|
-
output += '
|
|
168
|
+
output += 'To set an API key:\n';
|
|
169
|
+
output += ' /keys set openai <your-api-key>\n';
|
|
170
|
+
output += ' /keys set anthropic <your-api-key>\n';
|
|
108
171
|
output += '\n';
|
|
109
172
|
output += 'Note: API keys are NEVER displayed for security reasons.';
|
|
110
173
|
return output;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":";AAAA
|
|
1
|
+
{"version":3,"file":"keys.js","sourceRoot":"","sources":["../../../src/repl/commands/keys.ts"],"names":[],"mappings":"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"}
|
|
@@ -126,6 +126,7 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
126
126
|
private initOnlyMode;
|
|
127
127
|
private inputQueue;
|
|
128
128
|
private isProcessingInput;
|
|
129
|
+
private multiLineBuffer;
|
|
129
130
|
private executionMode;
|
|
130
131
|
private exitCode;
|
|
131
132
|
private hasError;
|
|
@@ -182,12 +183,21 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
182
183
|
* Per spec Property 32: temp mode directories may be cleaned up
|
|
183
184
|
*/
|
|
184
185
|
cleanup(): Promise<void>;
|
|
186
|
+
/**
|
|
187
|
+
* Check API key status and show warning if not configured
|
|
188
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
189
|
+
*/
|
|
190
|
+
private checkApiKeyStatus;
|
|
185
191
|
/**
|
|
186
192
|
* Start the REPL
|
|
187
193
|
* Per spec 10_REPL_UX.md L45: validate project structure on startup
|
|
188
194
|
*
|
|
189
195
|
* If .claude is missing, enter init-only mode instead of throwing.
|
|
190
196
|
* In init-only mode, only /help, /init, /exit are available.
|
|
197
|
+
*
|
|
198
|
+
* API Key Check:
|
|
199
|
+
* - In api-key mode, check for API keys in global config
|
|
200
|
+
* - Show warning if not configured, with instructions to set up
|
|
191
201
|
*/
|
|
192
202
|
start(): Promise<void>;
|
|
193
203
|
/**
|
|
@@ -197,6 +207,11 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
197
207
|
/**
|
|
198
208
|
* Enqueue input for sequential processing
|
|
199
209
|
* This prevents race conditions when piped input arrives faster than processing
|
|
210
|
+
*
|
|
211
|
+
* Multi-line input support (for voice input like SuperWhisper):
|
|
212
|
+
* - Non-empty lines are accumulated in multiLineBuffer
|
|
213
|
+
* - Empty line triggers submission of accumulated content
|
|
214
|
+
* - This allows long messages with newlines to be sent together
|
|
200
215
|
*/
|
|
201
216
|
private enqueueInput;
|
|
202
217
|
/**
|
|
@@ -261,6 +276,10 @@ export declare class REPLInterface extends EventEmitter {
|
|
|
261
276
|
/**
|
|
262
277
|
* Handle /keys command
|
|
263
278
|
* Per spec 10_REPL_UX.md Section 2.3
|
|
279
|
+
*
|
|
280
|
+
* /keys - Show status of all API keys
|
|
281
|
+
* /keys set <p> <k> - Set API key for provider
|
|
282
|
+
* /keys <provider> - Check specific provider
|
|
264
283
|
*/
|
|
265
284
|
private handleKeys;
|
|
266
285
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl-interface.d.ts","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAMH,OAAO,EAAE,YAAY,EAAE,MAAM,QAAQ,CAAC;AACtC,OAAO,EAAE,UAAU,EAAE,MAAM,qBAAqB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAoB,MAAM,mCAAmC,CAAC;
|
|
1
|
+
{"version":3,"file":"repl-interface.d.ts","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"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"}
|
|
@@ -66,6 +66,7 @@ const provider_1 = require("./commands/provider");
|
|
|
66
66
|
const models_1 = require("./commands/models");
|
|
67
67
|
const keys_1 = require("./commands/keys");
|
|
68
68
|
const logs_1 = require("./commands/logs");
|
|
69
|
+
const global_config_1 = require("../config/global-config");
|
|
69
70
|
/**
|
|
70
71
|
* Exit codes for non-interactive mode - per spec 10_REPL_UX.md
|
|
71
72
|
* These are deterministic based on session state
|
|
@@ -107,6 +108,8 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
107
108
|
// Sequential input processing (prevents race conditions with piped input)
|
|
108
109
|
inputQueue = [];
|
|
109
110
|
isProcessingInput = false;
|
|
111
|
+
// Multi-line input buffer (for voice input support - submit on empty line)
|
|
112
|
+
multiLineBuffer = [];
|
|
110
113
|
// Non-interactive mode support (per spec 10_REPL_UX.md)
|
|
111
114
|
executionMode;
|
|
112
115
|
exitCode = exports.EXIT_CODES.COMPLETE;
|
|
@@ -172,7 +175,9 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
172
175
|
projectPath: resolvedProjectPath,
|
|
173
176
|
evidenceDir: config.evidenceDir || path.join(resolvedProjectPath, '.claude', 'evidence'),
|
|
174
177
|
prompt: config.prompt || 'pm> ',
|
|
175
|
-
|
|
178
|
+
// Default to 'api-key' mode - wrapper is the main use case
|
|
179
|
+
// 'claude-code' mode is for advanced users who want to use Claude Code CLI directly
|
|
180
|
+
authMode: config.authMode || 'api-key',
|
|
176
181
|
timeout: config.timeout || 120000,
|
|
177
182
|
forceNonInteractive: config.forceNonInteractive,
|
|
178
183
|
projectMode: config.projectMode,
|
|
@@ -303,16 +308,63 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
303
308
|
// The OS will clean it up eventually, and leaving it allows for debugging
|
|
304
309
|
// In fixed mode, the directory persists as expected
|
|
305
310
|
}
|
|
311
|
+
/**
|
|
312
|
+
* Check API key status and show warning if not configured
|
|
313
|
+
* API keys are stored in global config file (~/.pm-orchestrator-runner/config.json)
|
|
314
|
+
*/
|
|
315
|
+
async checkApiKeyStatus() {
|
|
316
|
+
// Check global config for API keys
|
|
317
|
+
const hasKey = (0, global_config_1.hasAnyApiKey)();
|
|
318
|
+
if (!hasKey) {
|
|
319
|
+
// Show prominent warning
|
|
320
|
+
console.log('');
|
|
321
|
+
console.log('============================================================');
|
|
322
|
+
console.log(' WARNING: No API key configured!');
|
|
323
|
+
console.log('============================================================');
|
|
324
|
+
console.log('');
|
|
325
|
+
console.log('This application requires an API key to function.');
|
|
326
|
+
console.log('');
|
|
327
|
+
console.log('To set up your API key, use one of these commands:');
|
|
328
|
+
console.log('');
|
|
329
|
+
console.log(' /keys set openai <your-openai-api-key>');
|
|
330
|
+
console.log(' /keys set anthropic <your-anthropic-api-key>');
|
|
331
|
+
console.log('');
|
|
332
|
+
console.log('API keys are stored securely in:');
|
|
333
|
+
console.log(' ' + (0, global_config_1.getConfigFilePath)());
|
|
334
|
+
console.log('');
|
|
335
|
+
console.log('You can also check current key status with: /keys');
|
|
336
|
+
console.log('============================================================');
|
|
337
|
+
console.log('');
|
|
338
|
+
}
|
|
339
|
+
else {
|
|
340
|
+
// Check which keys are set and show status
|
|
341
|
+
const openaiKey = (0, global_config_1.getApiKey)('openai');
|
|
342
|
+
const anthropicKey = (0, global_config_1.getApiKey)('anthropic');
|
|
343
|
+
console.log('');
|
|
344
|
+
console.log('API Key Status:');
|
|
345
|
+
console.log(' OpenAI: ' + (openaiKey ? 'Configured' : 'Not set'));
|
|
346
|
+
console.log(' Anthropic: ' + (anthropicKey ? 'Configured' : 'Not set'));
|
|
347
|
+
console.log('');
|
|
348
|
+
}
|
|
349
|
+
}
|
|
306
350
|
/**
|
|
307
351
|
* Start the REPL
|
|
308
352
|
* Per spec 10_REPL_UX.md L45: validate project structure on startup
|
|
309
353
|
*
|
|
310
354
|
* If .claude is missing, enter init-only mode instead of throwing.
|
|
311
355
|
* In init-only mode, only /help, /init, /exit are available.
|
|
356
|
+
*
|
|
357
|
+
* API Key Check:
|
|
358
|
+
* - In api-key mode, check for API keys in global config
|
|
359
|
+
* - Show warning if not configured, with instructions to set up
|
|
312
360
|
*/
|
|
313
361
|
async start() {
|
|
314
362
|
// Initialize project root
|
|
315
363
|
await this.initialize();
|
|
364
|
+
// Check API keys for api-key mode
|
|
365
|
+
if (this.config.authMode === 'api-key') {
|
|
366
|
+
await this.checkApiKeyStatus();
|
|
367
|
+
}
|
|
316
368
|
// Validate project structure per spec 10_REPL_UX.md L45
|
|
317
369
|
const validation = await this.validateProjectStructure();
|
|
318
370
|
if (!validation.valid) {
|
|
@@ -390,19 +442,60 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
390
442
|
/**
|
|
391
443
|
* Enqueue input for sequential processing
|
|
392
444
|
* This prevents race conditions when piped input arrives faster than processing
|
|
445
|
+
*
|
|
446
|
+
* Multi-line input support (for voice input like SuperWhisper):
|
|
447
|
+
* - Non-empty lines are accumulated in multiLineBuffer
|
|
448
|
+
* - Empty line triggers submission of accumulated content
|
|
449
|
+
* - This allows long messages with newlines to be sent together
|
|
393
450
|
*/
|
|
394
451
|
enqueueInput(line) {
|
|
395
452
|
const trimmed = line.trim();
|
|
396
453
|
if (!trimmed) {
|
|
397
|
-
// Empty line -
|
|
398
|
-
if (
|
|
399
|
-
|
|
454
|
+
// Empty line - submit accumulated multi-line buffer
|
|
455
|
+
if (this.multiLineBuffer.length > 0) {
|
|
456
|
+
// Join accumulated lines and submit as single input
|
|
457
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
458
|
+
this.multiLineBuffer = [];
|
|
459
|
+
this.inputQueue.push(fullInput);
|
|
460
|
+
// Start processing if not already processing
|
|
461
|
+
this.processQueue();
|
|
462
|
+
}
|
|
463
|
+
else {
|
|
464
|
+
// No buffered content - just show prompt if not processing
|
|
465
|
+
if (!this.isProcessingInput && this.running) {
|
|
466
|
+
this.rl?.prompt();
|
|
467
|
+
}
|
|
468
|
+
}
|
|
469
|
+
return;
|
|
470
|
+
}
|
|
471
|
+
// Slash commands are processed immediately (no multi-line buffering)
|
|
472
|
+
if (trimmed.startsWith('/')) {
|
|
473
|
+
// Flush any pending multi-line buffer first
|
|
474
|
+
if (this.multiLineBuffer.length > 0) {
|
|
475
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
476
|
+
this.multiLineBuffer = [];
|
|
477
|
+
this.inputQueue.push(fullInput);
|
|
400
478
|
}
|
|
479
|
+
// Process slash command immediately
|
|
480
|
+
this.inputQueue.push(trimmed);
|
|
481
|
+
this.processQueue();
|
|
482
|
+
return;
|
|
483
|
+
}
|
|
484
|
+
// Non-empty line without slash - accumulate in multi-line buffer
|
|
485
|
+
this.multiLineBuffer.push(trimmed);
|
|
486
|
+
// In non-interactive mode, no empty line expected - process immediately
|
|
487
|
+
if (this.executionMode === 'non_interactive') {
|
|
488
|
+
const fullInput = this.multiLineBuffer.join('\n');
|
|
489
|
+
this.multiLineBuffer = [];
|
|
490
|
+
this.inputQueue.push(fullInput);
|
|
491
|
+
this.processQueue();
|
|
401
492
|
return;
|
|
402
493
|
}
|
|
403
|
-
|
|
404
|
-
|
|
405
|
-
|
|
494
|
+
// In interactive mode, show continuation indicator
|
|
495
|
+
if (this.running && !this.isProcessingInput) {
|
|
496
|
+
// Show continuation prompt to indicate multi-line mode
|
|
497
|
+
process.stdout.write('... ');
|
|
498
|
+
}
|
|
406
499
|
}
|
|
407
500
|
/**
|
|
408
501
|
* Process queued inputs sequentially
|
|
@@ -691,6 +784,7 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
691
784
|
this.print(' /model Show current model configuration');
|
|
692
785
|
this.print(' /model <name> Set model (saves to .claude/repl.json)');
|
|
693
786
|
this.print(' /keys Show API key status (SET/NOT SET)');
|
|
787
|
+
this.print(' /keys set <p> <key> Set API key (openai or anthropic)');
|
|
694
788
|
this.print('');
|
|
695
789
|
this.print('Session Management:');
|
|
696
790
|
this.print(' /start [path] Start a new session (optional project path)');
|
|
@@ -854,15 +948,48 @@ class REPLInterface extends events_1.EventEmitter {
|
|
|
854
948
|
/**
|
|
855
949
|
* Handle /keys command
|
|
856
950
|
* Per spec 10_REPL_UX.md Section 2.3
|
|
951
|
+
*
|
|
952
|
+
* /keys - Show status of all API keys
|
|
953
|
+
* /keys set <p> <k> - Set API key for provider
|
|
954
|
+
* /keys <provider> - Check specific provider
|
|
857
955
|
*/
|
|
858
956
|
async handleKeys(args) {
|
|
859
957
|
let result;
|
|
860
|
-
|
|
958
|
+
// /keys set <provider> <key>
|
|
959
|
+
if (args.length >= 3 && args[0] === 'set') {
|
|
960
|
+
const provider = args[1];
|
|
961
|
+
const key = args[2];
|
|
962
|
+
result = await this.keysCommand.setKey(provider, key);
|
|
963
|
+
if (result.success) {
|
|
964
|
+
this.print('API key set successfully for ' + provider);
|
|
965
|
+
this.print('Saved to: ' + (0, global_config_1.getConfigFilePath)());
|
|
966
|
+
return { success: true };
|
|
967
|
+
}
|
|
968
|
+
else {
|
|
969
|
+
this.print('Error [' + result.error?.code + ']: ' + (result.error?.message || result.message));
|
|
970
|
+
return { success: false, error: result.error };
|
|
971
|
+
}
|
|
972
|
+
}
|
|
973
|
+
// /keys <provider> - check specific provider
|
|
974
|
+
if (args.length > 0 && args[0] !== 'set') {
|
|
861
975
|
result = await this.keysCommand.checkProviderKey(args[0]);
|
|
862
976
|
}
|
|
863
|
-
else {
|
|
977
|
+
else if (args.length === 0) {
|
|
978
|
+
// /keys - show all
|
|
864
979
|
result = await this.keysCommand.getKeyStatus();
|
|
865
980
|
}
|
|
981
|
+
else {
|
|
982
|
+
// /keys set without enough args
|
|
983
|
+
this.print('Usage: /keys set <provider> <api-key>');
|
|
984
|
+
this.print(' provider: openai or anthropic');
|
|
985
|
+
return {
|
|
986
|
+
success: false,
|
|
987
|
+
error: {
|
|
988
|
+
code: 'E107',
|
|
989
|
+
message: 'Invalid arguments. Usage: /keys set <provider> <api-key>',
|
|
990
|
+
},
|
|
991
|
+
};
|
|
992
|
+
}
|
|
866
993
|
if (result.success) {
|
|
867
994
|
const output = this.keysCommand.formatKeyStatus(result.keys || []);
|
|
868
995
|
this.print(output);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repl-interface.js","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"repl-interface.js","sourceRoot":"","sources":["../../src/repl/repl-interface.ts"],"names":[],"mappings":"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"}
|