aiag-cli 2.10.1 → 2.10.2
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.
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Credentials 관리 모듈
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* 인증 정보 우선순위:
|
|
5
|
+
* 1. 환경변수 (AIAG_ACCESS_TOKEN, AIAG_SERVER_URL) - E2B, CI/CD 환경용
|
|
6
|
+
* 2. ~/.aiag/credentials 파일 - 로컬 개발 환경용
|
|
5
7
|
*
|
|
6
|
-
*
|
|
8
|
+
* 환경변수 인증:
|
|
9
|
+
* - AIAG_SERVER_URL: 서버 URL (필수)
|
|
10
|
+
* - AIAG_ACCESS_TOKEN: 액세스 토큰 (필수)
|
|
11
|
+
* - AIAG_USER_ID: 사용자 ID (선택, 기본값: 'e2b-agent')
|
|
12
|
+
* - AIAG_USER_EMAIL: 사용자 이메일 (선택, 기본값: 'agent@e2b.dev')
|
|
13
|
+
*
|
|
14
|
+
* 파일 저장 형식 (JSON):
|
|
7
15
|
* {
|
|
8
16
|
* "serverUrl": "https://aiag-adp.example.com",
|
|
9
17
|
* "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
|
|
@@ -19,8 +27,14 @@ import type { Credentials } from '../types.js';
|
|
|
19
27
|
* @returns ~/.aiag/credentials
|
|
20
28
|
*/
|
|
21
29
|
export declare function getCredentialsPath(): string;
|
|
30
|
+
/**
|
|
31
|
+
* 환경변수 기반 인증 여부 확인
|
|
32
|
+
* @returns 환경변수로 인증된 경우 true
|
|
33
|
+
*/
|
|
34
|
+
export declare function isEnvBasedAuth(): boolean;
|
|
22
35
|
/**
|
|
23
36
|
* 저장된 credentials 로드
|
|
37
|
+
* 환경변수가 설정되어 있으면 우선 사용 (E2B, CI/CD 환경)
|
|
24
38
|
* @returns Credentials 또는 null (없거나 유효하지 않은 경우)
|
|
25
39
|
*/
|
|
26
40
|
export declare function loadCredentials(): Credentials | null;
|
|
@@ -40,6 +54,7 @@ export declare function clearCredentials(): void;
|
|
|
40
54
|
export declare function isLoggedIn(): boolean;
|
|
41
55
|
/**
|
|
42
56
|
* 토큰 만료 여부 확인
|
|
57
|
+
* 환경변수 기반 인증은 만료되지 않음 (매번 새로 전달)
|
|
43
58
|
* @param credentials 인증 정보
|
|
44
59
|
* @returns 만료되었으면 true
|
|
45
60
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/auth/credentials.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"credentials.d.ts","sourceRoot":"","sources":["../../src/auth/credentials.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;GAsBG;AAIH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAG/C;;;GAGG;AACH,wBAAgB,kBAAkB,IAAI,MAAM,CAE3C;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,OAAO,CAExC;AAED;;;;GAIG;AACH,wBAAgB,eAAe,IAAI,WAAW,GAAG,IAAI,CAuCpD;AAED;;;GAGG;AACH,wBAAgB,eAAe,CAAC,WAAW,EAAE,WAAW,GAAG,IAAI,CAO9D;AAED;;GAEG;AACH,wBAAgB,gBAAgB,IAAI,IAAI,CAMvC;AAED;;;GAGG;AACH,wBAAgB,UAAU,IAAI,OAAO,CAQpC;AAED;;;;;GAKG;AACH,wBAAgB,cAAc,CAAC,WAAW,EAAE,WAAW,GAAG,OAAO,CAYhE;AAED;;;;GAIG;AACH,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,WAAW,GAAG,MAAM,CAKtE;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAGnD;AAED;;;GAGG;AACH,wBAAgB,mBAAmB,IAAI,MAAM,GAAG,IAAI,CAGnD;AAED;;;GAGG;AACH,wBAAgB,cAAc,IAAI,MAAM,GAAG,IAAI,CAM9C;AAED;;;GAGG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,OAAO,CAAC,WAAW,CAAC,GAAG,OAAO,CAaxE"}
|
package/dist/auth/credentials.js
CHANGED
|
@@ -1,9 +1,17 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Credentials 관리 모듈
|
|
3
3
|
*
|
|
4
|
-
*
|
|
4
|
+
* 인증 정보 우선순위:
|
|
5
|
+
* 1. 환경변수 (AIAG_ACCESS_TOKEN, AIAG_SERVER_URL) - E2B, CI/CD 환경용
|
|
6
|
+
* 2. ~/.aiag/credentials 파일 - 로컬 개발 환경용
|
|
5
7
|
*
|
|
6
|
-
*
|
|
8
|
+
* 환경변수 인증:
|
|
9
|
+
* - AIAG_SERVER_URL: 서버 URL (필수)
|
|
10
|
+
* - AIAG_ACCESS_TOKEN: 액세스 토큰 (필수)
|
|
11
|
+
* - AIAG_USER_ID: 사용자 ID (선택, 기본값: 'e2b-agent')
|
|
12
|
+
* - AIAG_USER_EMAIL: 사용자 이메일 (선택, 기본값: 'agent@e2b.dev')
|
|
13
|
+
*
|
|
14
|
+
* 파일 저장 형식 (JSON):
|
|
7
15
|
* {
|
|
8
16
|
* "serverUrl": "https://aiag-adp.example.com",
|
|
9
17
|
* "accessToken": "eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...",
|
|
@@ -23,11 +31,31 @@ import { ensureGlobalConfigDir, getGlobalConfigDir } from '../config/global.js';
|
|
|
23
31
|
export function getCredentialsPath() {
|
|
24
32
|
return join(getGlobalConfigDir(), 'credentials');
|
|
25
33
|
}
|
|
34
|
+
/**
|
|
35
|
+
* 환경변수 기반 인증 여부 확인
|
|
36
|
+
* @returns 환경변수로 인증된 경우 true
|
|
37
|
+
*/
|
|
38
|
+
export function isEnvBasedAuth() {
|
|
39
|
+
return !!(process.env.AIAG_ACCESS_TOKEN && process.env.AIAG_SERVER_URL);
|
|
40
|
+
}
|
|
26
41
|
/**
|
|
27
42
|
* 저장된 credentials 로드
|
|
43
|
+
* 환경변수가 설정되어 있으면 우선 사용 (E2B, CI/CD 환경)
|
|
28
44
|
* @returns Credentials 또는 null (없거나 유효하지 않은 경우)
|
|
29
45
|
*/
|
|
30
46
|
export function loadCredentials() {
|
|
47
|
+
// 1. 환경변수로 토큰이 전달된 경우 우선 사용 (E2B, CI/CD 등)
|
|
48
|
+
if (process.env.AIAG_ACCESS_TOKEN && process.env.AIAG_SERVER_URL) {
|
|
49
|
+
return {
|
|
50
|
+
serverUrl: process.env.AIAG_SERVER_URL,
|
|
51
|
+
accessToken: process.env.AIAG_ACCESS_TOKEN,
|
|
52
|
+
// 환경변수 인증은 만료 개념 없음 (24시간 후로 설정)
|
|
53
|
+
expiresAt: new Date(Date.now() + 24 * 60 * 60 * 1000).toISOString(),
|
|
54
|
+
userId: process.env.AIAG_USER_ID || 'e2b-agent',
|
|
55
|
+
email: process.env.AIAG_USER_EMAIL || 'agent@e2b.dev',
|
|
56
|
+
};
|
|
57
|
+
}
|
|
58
|
+
// 2. 파일 기반 credentials 로드
|
|
31
59
|
const credentialsPath = getCredentialsPath();
|
|
32
60
|
if (!existsSync(credentialsPath)) {
|
|
33
61
|
return null;
|
|
@@ -83,10 +111,15 @@ export function isLoggedIn() {
|
|
|
83
111
|
}
|
|
84
112
|
/**
|
|
85
113
|
* 토큰 만료 여부 확인
|
|
114
|
+
* 환경변수 기반 인증은 만료되지 않음 (매번 새로 전달)
|
|
86
115
|
* @param credentials 인증 정보
|
|
87
116
|
* @returns 만료되었으면 true
|
|
88
117
|
*/
|
|
89
118
|
export function isTokenExpired(credentials) {
|
|
119
|
+
// 환경변수 기반 인증은 만료 개념 없음
|
|
120
|
+
if (isEnvBasedAuth()) {
|
|
121
|
+
return false;
|
|
122
|
+
}
|
|
90
123
|
const expiresAt = new Date(credentials.expiresAt);
|
|
91
124
|
const now = new Date();
|
|
92
125
|
// 5분 여유를 두고 만료 판정 (갱신 시간 확보)
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/auth/credentials.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"credentials.js","sourceRoot":"","sources":["../../src/auth/credentials.ts"],"names":[],"mappings":"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"}
|