@bifos/dooray-cli 0.14.0 → 0.15.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/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@bifos/dooray-cli",
3
- "version": "0.14.0",
3
+ "version": "0.15.0",
4
4
  "description": "CLI tool for Dooray project management — AI agent & terminal friendly",
5
5
  "keywords": [
6
6
  "dooray",
@@ -33,7 +33,8 @@
33
33
  "build": "tsup",
34
34
  "dev": "tsup --watch",
35
35
  "test": "vitest run",
36
- "test:watch": "vitest"
36
+ "test:watch": "vitest",
37
+ "verify:package": "node scripts/verify-package.mjs"
37
38
  },
38
39
  "license": "MIT",
39
40
  "dependencies": {
@@ -17,7 +17,7 @@ NHN Dooray REST API를 래핑한 CLI 도구다.
17
17
  | 설치, 초기 설정, 출력 모드, API 제약사항, 피드백 등록, 에러 핸들링, 캐시 | [common.md](references/common.md) |
18
18
  | 업무(post) 식별·생성·수정, 참조자/담당자 변경, 본문 attachment 보호, 부모 지정, 태그 자동화 | [post.md](references/post.md) |
19
19
  | 업무 댓글 추가/필터/단일 조회 | [comment.md](references/comment.md) |
20
- | 위키 페이지 조회(트리 포함), 첨부파일, 인라인 이미지, 위키 댓글 | [wiki.md](references/wiki.md) |
20
+ | 위키 페이지 조회(트리 포함), 삭제, 첨부파일, 인라인 이미지, 위키 댓글 | [wiki.md](references/wiki.md) |
21
21
  | 그룹 멘션/cc 판단, 멘션·링크 자동 삽입, Dooray 마크다운 링크 형식 | [mention-link.md](references/mention-link.md) |
22
22
  | 워크플로우 판단 기준, 정형 task 자동화, 체이닝 시나리오 | [workflow.md](references/workflow.md) |
23
23
 
@@ -35,9 +35,15 @@ NHN Dooray REST API를 래핑한 CLI 도구다.
35
35
  ```bash
36
36
  npm install -g @bifos/dooray-cli
37
37
  dooray setup # API endpoint, API key, 메일 설정까지 대화형 진행
38
+ dooray skill status
39
+ dooray skill install
38
40
  dooray post list <project> --json
39
41
  ```
40
42
 
43
+ 전역 npm 패키지를 갱신한 뒤에는 `dooray skill update`를 실행해 Claude Code 스킬을 현재 CLI 버전으로 맞춘다.
44
+ 스킬 활성 링크는 Node 설치 경로가 아니라 dooray-cli 관리 저장소를 가리킨다.
45
+ `modified`, `corrupt`, `unmanaged` 상태는 내용을 확인한 뒤 `dooray skill update --force`로 백업 후 복구한다.
46
+
41
47
  ## 안전한 탐색 순서
42
48
 
43
49
  1. [common.md](references/common.md)에서 설치·설정·출력 모드를 확인한다.
@@ -24,6 +24,39 @@ dooray config set api-key <YOUR_API_TOKEN> # https://{org}.dooray.com/setting/
24
24
  dooray doctor # 설정 검증
25
25
  ```
26
26
 
27
+ ## Claude Code 스킬 관리
28
+
29
+ ```bash
30
+ dooray skill status # 설치 상태 확인
31
+ dooray skill install # 최초 설치
32
+ dooray skill update # 현재 CLI 버전의 스킬로 갱신
33
+ dooray skill status --json # SkillStatus 객체 출력
34
+ dooray skill status --quiet # 상태 토큰만 출력
35
+ ```
36
+
37
+ 상태 토큰:
38
+
39
+ | 상태 | 의미 | 복구 |
40
+ |---|---|---|
41
+ | `missing` | 설치 경로가 없음 | `dooray skill install` |
42
+ | `current` | 현재 CLI 버전의 스킬 링크 | 조치 없음 |
43
+ | `outdated` | 다른 버전의 dooray-cli 스킬 링크 | `dooray skill update` |
44
+ | `broken` | 링크 대상이 사라짐 | `dooray skill update` |
45
+ | `corrupt` | 관리 저장소 manifest가 없거나 형식·경로·해시가 맞지 않음 | 내용 확인 후 `dooray skill update --force` |
46
+ | `unmanaged` | 직접 만든 파일·디렉터리 또는 알 수 없는 링크 | 내용 확인 후 `dooray skill update --force` |
47
+ | `modified` | 관리형 저장소 전환 뒤 사용자 수정이 감지된 상태 | 내용 확인 후 `dooray skill update --force` |
48
+
49
+ `install`과 `update`는 같은 안전한 전환 로직을 사용한다.
50
+ 스킬은 npm 패키지 경로를 직접 가리키지 않고 관리 저장소를 거쳐 연결된다.
51
+ 절대 경로 `XDG_DATA_HOME`이 있으면 `$XDG_DATA_HOME/dooray-cli/skills/`를 사용하고, 없거나 상대 경로이면 `~/.local/share/dooray-cli/skills/`를 사용한다.
52
+ Node 버전 관리자로 전역 npm 설치 경로가 바뀌어도 활성 링크는 관리 저장소를 계속 가리킨다.
53
+ 관리되지 않는 기존 항목, 수정된 관리 저장소, 손상된 manifest는 기본적으로 덮어쓰지 않는다.
54
+ `--force`를 사용하면 기존 활성 항목을 `.backup-<timestamp>` 경로로 옮긴 뒤 현재 CLI 스킬 링크로 교체한다.
55
+ 같은 관리 저장소 경로가 수정되었거나 손상되었으면 별도 격리 백업을 만든 뒤 새 저장소로 복구한다.
56
+
57
+ Node 버전 관리자를 사용하면 전역 npm 설치 경로가 Node 버전별로 달라질 수 있다.
58
+ CLI를 최신 버전으로 다시 설치한 뒤에는 `dooray skill update`를 명시적으로 실행해 새 스킬 파일을 반영한다.
59
+
27
60
  ## 출력 모드
28
61
 
29
62
  | 플래그 | 설명 | 용도 |
@@ -75,3 +75,21 @@ dooray wiki page comment list <project> <page-id> --latest 20
75
75
  dooray wiki page comment latest <project> <page-id>
76
76
  ```
77
77
 
78
+ ### 위키 페이지 삭제 — 잘못 만든/중복 페이지 정리
79
+
80
+ **비공식 endpoint 주의**: `wiki page delete` 는 Dooray 가 공식 문서화하지 않은 endpoint 를 쓴다. 동작은 확인됐으나 향후 API 변경에 깨질 수 있으니, 자동화에서 대량 삭제 전 한 건으로 먼저 검증한다. `soft delete`(빈 제목·본문) 우회는 하지 않는다 — 페이지가 트리에 남아 혼란을 준다.
81
+
82
+ ```bash
83
+ # project + page-id (positional 2개)
84
+ dooray wiki page delete <project> <page-id>
85
+
86
+ # Dooray Wiki URL 을 첫 인자로
87
+ dooray wiki page delete https://<tenant>.dooray.com/wiki/...
88
+
89
+ # --id 모드 (--project 로 wikiId 해석)
90
+ dooray wiki page delete --id <pageId> --project <project>
91
+
92
+ # 자동화 — 확인 프롬프트 없이 삭제
93
+ dooray wiki page delete <project> <page-id> -y
94
+ ```
95
+