pinglet-cli 0.1.0 → 0.1.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 +11 -1
- package/dist/config.js +6 -2
- package/dist/postinstall.js +22 -0
- package/package.json +3 -2
package/README.md
CHANGED
|
@@ -9,7 +9,17 @@ AI가 생각하는 동안 다른 개발자의 Ping을 만나는 메시지 네트
|
|
|
9
9
|
|
|
10
10
|
```bash
|
|
11
11
|
npm install -g pinglet-cli # 설치 후 명령어는 `pinglet`
|
|
12
|
-
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
npm 글로벌 설치 시 postinstall이 `pinglet install`까지 자동 수행한다.
|
|
15
|
+
(pnpm/bun처럼 postinstall을 차단하는 매니저에서는 `pinglet install`을 직접 실행)
|
|
16
|
+
|
|
17
|
+
제거할 때는 반드시 integration 정리를 먼저 한다 — npm은 uninstall 시
|
|
18
|
+
스크립트를 실행하지 않으므로 순서가 바뀌면 설정이 남는다:
|
|
19
|
+
|
|
20
|
+
```bash
|
|
21
|
+
pinglet uninstall
|
|
22
|
+
npm uninstall -g pinglet-cli
|
|
13
23
|
```
|
|
14
24
|
|
|
15
25
|
개발 시에는 로컬 백엔드에 연결한다:
|
package/dist/config.js
CHANGED
|
@@ -86,7 +86,11 @@ function loadConfig() {
|
|
|
86
86
|
function saveConfig(config) {
|
|
87
87
|
writeJsonFile(exports.CONFIG_PATH, config);
|
|
88
88
|
}
|
|
89
|
-
/**
|
|
89
|
+
/**
|
|
90
|
+
* CLI 엔트리(dist/cli.js)의 절대 경로. adapter command에 박아 넣는다.
|
|
91
|
+
* argv[1] 대신 __dirname 기준으로 계산해 postinstall 등 다른 엔트리에서
|
|
92
|
+
* 호출돼도 항상 cli.js를 가리킨다.
|
|
93
|
+
*/
|
|
90
94
|
function cliPath() {
|
|
91
|
-
return
|
|
95
|
+
return path.join(__dirname, "cli.js");
|
|
92
96
|
}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
3
|
+
const install_1 = require("./commands/install");
|
|
4
|
+
/**
|
|
5
|
+
* npm install -g pinglet-cli 직후 자동으로 `pinglet install`을 수행한다.
|
|
6
|
+
* - 글로벌 설치(npm_config_global=true)일 때만 동작 — 개발용 npm install,
|
|
7
|
+
* 의존성 설치, CI에서는 아무것도 하지 않는다.
|
|
8
|
+
* - 어떤 경우에도 실패로 npm install 자체를 깨뜨리지 않는다 (항상 exit 0).
|
|
9
|
+
* - pnpm/bun처럼 postinstall을 기본 차단하는 매니저에서는 실행되지 않으며,
|
|
10
|
+
* 그 경우 사용자가 `pinglet install`을 직접 실행하면 된다.
|
|
11
|
+
*/
|
|
12
|
+
async function main() {
|
|
13
|
+
if (process.env.npm_config_global !== "true")
|
|
14
|
+
return;
|
|
15
|
+
console.log("\npinglet: 첫 설정을 자동으로 진행합니다 (`pinglet install`)");
|
|
16
|
+
await (0, install_1.runInstall)([]);
|
|
17
|
+
}
|
|
18
|
+
main()
|
|
19
|
+
.catch(() => {
|
|
20
|
+
console.log("pinglet: 자동 설정에 실패했습니다. `pinglet install`을 직접 실행해 주세요.");
|
|
21
|
+
})
|
|
22
|
+
.finally(() => process.exit(0));
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "pinglet-cli",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.1",
|
|
4
4
|
"description": "AI가 생각하는 동안 다른 개발자의 Ping을 만나는 메시지 네트워크 — Claude Code / Codex integration",
|
|
5
5
|
"license": "MIT",
|
|
6
6
|
"repository": {
|
|
@@ -28,7 +28,8 @@
|
|
|
28
28
|
"scripts": {
|
|
29
29
|
"build": "tsc",
|
|
30
30
|
"dev": "tsc --watch",
|
|
31
|
-
"prepare": "npm run build"
|
|
31
|
+
"prepare": "npm run build",
|
|
32
|
+
"postinstall": "node dist/postinstall.js || exit 0"
|
|
32
33
|
},
|
|
33
34
|
"engines": {
|
|
34
35
|
"node": ">=18"
|