@bifos/dooray-cli 0.15.1 → 0.16.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.
@@ -1,95 +1,63 @@
1
1
  # wiki
2
2
 
3
- 위키 페이지 조회(트리 포함), 첨부파일 다운로드/공유, 인라인 이미지 업로드, 댓글 누적 시나리오를 다룬다.
3
+ ## 페이지 계층 훑기
4
4
 
5
- ## 체이닝 예시 위키
6
-
7
- ### 위키 페이지 조회
5
+ `wiki tree --json` flat 배열이고 `wiki pages --json` 과 같은 스키마다.
6
+ `parentPageId` 로 계층을 조립하므로 두 명령의 파싱 코드를 공유할 수 있다.
7
+ `wiki pages` root 만 주고, 전체 계층이 필요하면 `wiki tree` 를 쓴다.
8
8
 
9
9
  ```bash
10
- # 1. 위키 페이지 목록
11
- dooray wiki pages <project> --json
12
- # → [{ "id": "<pageId>", "subject": "설계 문서", ... }]
13
-
14
- # 2. 페이지 내용 조회
15
- dooray wiki page get <project> <pageId> --json
16
-
17
- # 3. 전체 계층을 트리로 훑기 (--json 은 flat 배열 — wiki pages 와 동일 스키마로 파싱)
18
10
  dooray wiki tree <project> --json
11
+ dooray wiki tree <project> --depth 2 # 깊이 상한
19
12
  ```
20
13
 
14
+ ## 인라인 이미지는 본문에 자동 삽입되지 않는다
21
15
 
22
- ### 위키 페이지 첨부파일 스킬 파일 팀 공유
23
-
24
- **스킬 파일 팀 공유**: 팀 위키에 스킬 파일 (예: `SKILL.md`) 을 `wiki page file upload` 로 첨부 → 팀원이 `wiki page file download-all` 로 일괄 받아 `~/.claude/skills/` 에 그대로 설치.
16
+ `--type inline_image` 올려도 본문은 바뀌지 않는다.
17
+ `--json` 의 `markdownSnippet` 을 받아 본문에 직접 넣어야 화면에 보인다.
25
18
 
26
19
  ```bash
27
- # 업로드 (일반 첨부)
28
- dooray wiki page file upload <project> <page-id> --file ~/.claude/skills/my-skill/SKILL.md
29
-
30
- # 팀원 쪽에서 일괄 다운로드
31
- dooray wiki page file download-all <project> <page-id> -o ~/.claude/skills/my-skill/
32
-
33
- # 첨부 목록 확인 (type 컬럼: general / inline_image)
34
- dooray wiki page file list <project> <page-id>
35
- ```
36
-
37
-
38
- ### 위키 페이지 인라인 이미지 업로드 후 본문 자동 삽입
39
-
40
- `--type inline_image` 로 업로드 시 `--json` 응답에 `markdownSnippet` 필드가 포함됩니다.
41
- jq 로 추출해 본문에 바로 삽입하는 자동화가 가능합니다.
42
-
43
- ```bash
44
- # 1. 인라인 이미지 업로드 — --json 으로 markdownSnippet 추출
45
20
  SNIPPET=$(dooray wiki page file upload <project> <page-id> \
46
- --file ./diagram.png --type inline_image --json \
47
- | jq -r '.markdownSnippet')
48
- # SNIPPET = "![diagram.png](/wikis/<wikiId>/files/<attachFileId>)"
21
+ --file ./diagram.png --type inline_image --json | jq -r '.markdownSnippet')
22
+ # "![diagram.png](/wikis/<wikiId>/files/<attachFileId>)"
49
23
 
50
- # 2. 기존 본문 조회
51
24
  CURRENT_BODY=$(dooray wiki page get <project> <page-id> --json | jq -r '.body.content')
52
-
53
- # 3. snippet 을 본문 끝에 추가해 업데이트
54
- NEW_BODY="${CURRENT_BODY}
25
+ dooray wiki page edit <project> <page-id> --body "${CURRENT_BODY}
55
26
 
56
27
  ${SNIPPET}"
57
- dooray wiki page edit <project> <page-id> --body "$NEW_BODY"
58
28
  ```
59
29
 
60
- **참고**: `general` 타입은 `markdownSnippet` 없음. `--quiet` id출력 (snippet 미포함).
30
+ 기존 본문을 먼저 받아 뒤에 이어 붙인다 — `--body` 전체 교체이므로 snippet 넣으면 본문이 사라진다.
61
31
 
32
+ ## 첨부 일괄 내려받기
62
33
 
63
- ### 위키 페이지 댓글 — 회의록 결정사항 자동 누적
34
+ ```bash
35
+ dooray wiki page file download-all <project> <page-id> -o <dir>
36
+ dooray wiki page file list <project> <page-id> # type 컬럼으로 general 과 inline_image 구분
37
+ ```
64
38
 
65
- **회의록 결정사항 자동 누적**: 회의록 위키 페이지에 자동화 봇이 `wiki page comment add` 결정사항을 댓글로 누적, `wiki page comment list --latest 20` 으로 최근 토론 흐름 추적.
39
+ `list` general 첨부와 inline 이미지를 합쳐 보여준다.
66
40
 
67
- ```bash
68
- # 결정사항 댓글 추가
69
- dooray wiki page comment add <project> <page-id> --body "결정: 배포일 2026-06-01 확정"
41
+ ## 삭제 안전 확인
70
42
 
71
- # 최근 20개 토론 흐름 조회
72
- dooray wiki page comment list <project> <page-id> --latest 20
43
+ 다음 위키 삭제 명령은 같은 안전 확인 정책을 따른다.
73
44
 
74
- # 최신 댓글 1건 shortcut
75
- dooray wiki page comment latest <project> <page-id>
76
- ```
45
+ - `dooray wiki page delete`
46
+ - `dooray wiki page file delete`
47
+ - `dooray wiki page comment delete`
77
48
 
78
- ### 위키 페이지 삭제 잘못 만든/중복 페이지 정리
49
+ TTY 확인, non-TTY 실행, `-y`와 `--yes` 사용법은 [SKILL.md](../SKILL.md#삭제-명령의-확인-동작)를 따른다.
79
50
 
80
- **비공식 endpoint 주의**: `wiki page delete` 는 Dooray 가 공식 문서화하지 않은 endpoint 를 쓴다. 동작은 확인됐으나 향후 API 변경에 깨질 수 있으니, 자동화에서 대량 삭제 전 한 건으로 먼저 검증한다. `soft delete`(빈 제목·본문) 우회는 하지 않는다 — 페이지가 트리에 남아 혼란을 준다.
51
+ ## 페이지 삭제
81
52
 
82
- ```bash
83
- # project + page-id (positional 2개)
84
- dooray wiki page delete <project> <page-id>
53
+ `wiki page delete` 는 Dooray 가 공식 문서화하지 않은 endpoint 를 쓴다.
54
+ 동작은 확인했지만 서버 정책이 바뀌면 깨질 수 있으니, 대량 삭제 전에 한 건으로 먼저 확인한다.
85
55
 
86
- # Dooray Wiki URL 인자로
87
- dooray wiki page delete https://<tenant>.dooray.com/wiki/...
56
+ 제목·본문으로 덮는 soft delete 우회는 쓰지 않는다 — 페이지가 트리에 남아 혼란을 준다.
88
57
 
89
- # --id 모드 (--project wikiId 해석)
90
- dooray wiki page delete --id <pageId> --project <project>
58
+ 하위 페이지가 있는 페이지를 지우면 하위는 삭제한 페이지의 부모 아래로 재부착된다. orphan 은 생기지 않는다.
91
59
 
92
- # 자동화 확인 프롬프트 없이 삭제
93
- dooray wiki page delete <project> <page-id> -y
94
- ```
60
+ ## 위키 페이지 이동은 불가능하다
95
61
 
62
+ `parentPageId` 를 바꾸는 이동은 API 로 할 수 없다. 수정 요청이 `parentPageId` 를 무시하고 전용 endpoint 도 없다.
63
+ 사용자가 이동을 요청하면 웹 UI 를 안내한다.
@@ -1,99 +1,61 @@
1
1
  # workflow
2
2
 
3
- 워크플로우 판단 기준, 정형 task 자동화, 위키 이외 체이닝 시나리오(업무 완료 처리 / 업무 생성 / 댓글 추가 / 스크린샷 첨부 / 메신저 알림)를 다룬다.
3
+ ## 모르는 값을 먼저 찾는 순서
4
4
 
5
- ## 워크플로우 판단 기준
5
+ | 모르는 | 먼저 실행 |
6
+ | --- | --- |
7
+ | 개인 프로젝트 ("내 프로젝트" 언급) | `dooray project list --type private --json` |
8
+ | 프로젝트 코드 | `dooray project list --search <keyword>` |
9
+ | 업무 번호 | `dooray post search <project> "<keyword>"` |
10
+ | 워크플로우 이름 | `dooray project workflows <project>` |
11
+ | 프로젝트 안의 멤버 이름 | `dooray member list <project>` 또는 `dooray project members <project>` |
12
+ | organization 전체 멤버 | `dooray member search <keyword>` — 옵션은 [common.md](common.md) |
6
13
 
7
- 1. **"내 프로젝트", "개인 프로젝트" 언급 시** → `dooray project list --type private --json` 으로 개인 프로젝트 먼저 조회
8
- 2. **프로젝트 코드를 모르면** → `dooray project list --search <keyword>` 로 먼저 찾기
9
- 3. **업무 번호를 모르면** → `dooray post search <project> "<keyword>"` 로 검색
10
- 4. **워크플로우 이름을 모르면** → `dooray project workflows <project>` 로 확인
11
- 5. **멤버 이름을 모르면** → `dooray member list <project>` (또는 `dooray project members <project>`) 로 확인
12
- 6. **org 전체 멤버를 찾으려면** → `dooray member search <keyword>` (이름), `--email <addr>`, `--user-code <code>` 중 하나 사용
13
- 7. **결과를 다음 액션에 사용하려면** → `--json` 플래그로 구조화된 데이터 획득
14
+ ## 체이닝
14
15
 
15
- ---
16
-
17
-
18
- ## 체이닝 예시
19
-
20
- ### 업무 찾아서 완료 처리
21
-
22
- ```bash
23
- # 1. 업무 검색으로 번호 확인
24
- dooray post search <project> "graceful shutdown" --json
25
- # → [{ "number": 42, "subject": "graceful shutdown 구현", ... }]
26
-
27
- # 2. 완료 처리
28
- dooray post done <project> 42
29
- ```
30
-
31
-
32
- ### 프로젝트 찾아서 업무 생성
16
+ ### 프로젝트를 찾아 업무 생성
33
17
 
34
18
  ```bash
35
- # 1. 프로젝트 코드 확인
36
19
  dooray project list --search "AI서비스" --json
37
- # → [{ "code": "ai-service-dev", ... }]
20
+ # → [{ "code": "<project>", ... }]
38
21
 
39
- # 2. 업무 생성
40
- dooray post create ai-service-dev \
22
+ dooray post create <project> \
41
23
  --title "주간보고 2026-W14" \
42
24
  --body "## 이번 주 성과\n- 항목1\n- 항목2" \
43
25
  --to "김철수"
44
26
  ```
45
27
 
28
+ ### 댓글에 스크린샷 첨부
46
29
 
47
- ### 업무 상세 조회 댓글 추가
48
-
49
- ```bash
50
- # 1. 업무 조회
51
- dooray post get <project> 42 --json
52
-
53
- # 2. 댓글 추가
54
- dooray post comment add <project> 42 --body "진행 상황 업데이트: 80% 완료"
55
- ```
56
-
57
-
58
- ### 시나리오 — 댓글에 스크린샷 자동 첨부
59
-
60
- 스크립트가 스크린샷을 댓글에 삽입하거나, 에이전트가 결과 파일을 첨부 댓글로 보고할 때 사용.
61
- Dooray REST API 가 댓글 전용 attachment endpoint 를 미지원하므로 내부적으로 post-level files API + 댓글 본문 PUT 합성으로 동작한다.
30
+ 댓글 첨부는 단계로 나뉜다 댓글을 먼저 만들고 그 ID 로 파일을 올린다.
62
31
 
63
32
  ```bash
64
- # 1. 댓글을 먼저 만든다 (텍스트만, --json 으로 commentId 획득)
65
33
  COMMENT_ID=$(dooray post comment add <project> <post-num> --body "스크린샷 보고:" --json | jq -r '.id')
66
-
67
- # 2. 그 댓글에 파일을 첨부 (post-level 업로드 + 댓글 본문 markdown 자동 추가)
68
34
  dooray post comment file upload <project> <post-num> "$COMMENT_ID" ./screenshot.png
69
35
  ```
70
36
 
37
+ 업로드하면 이미지 확장자는 이미지 마크다운으로, 그 외 파일은 일반 링크로 댓글 본문에 붙는다.
71
38
 
72
- ### 시나리오 — 배포 알림 메신저 자동 전송
39
+ ### 배포 알림 메신저 전송
73
40
 
74
- CI/배포 스크립트가 완료 알림을 담당자 DM 또는 대화방에 자동으로 보낼 때 사용.
75
- 전송은 API 토큰 소유자 명의로 나가며, 본문은 plain text 만 지원한다.
41
+ 전송은 API 토큰 소유자 명의로 나가고 본문은 plain text 된다.
76
42
 
77
43
  ```bash
78
- # 담당자 DM (id 또는 이메일만 가능 이름 검색 미지원)
44
+ # DM --to 는 ID 나 이메일만 받는다 (이름 불가)
79
45
  dooray messenger send --to "user@example.com" --body "배포가 완료되었습니다 (v1.2.3)."
80
46
 
81
- # 대화방 (channelId 또는 자신이 속한 대화방 이름)
47
+ # 대화방 channelId 또는 자신이 속한 이름
82
48
  dooray messenger channel-send --channel "배포 알림방" --body-file ./release-note.md
83
49
 
84
- # --json 으로 log-id 확인 (자동화 파이프라인에서 후속 처리 시)
50
+ # 후속 처리에 log id 필요하면
85
51
  dooray messenger send --to <memberId> --body "..." --json
86
52
  ```
87
53
 
88
-
89
- ---
90
-
91
54
  ## 정형 task 자동화
92
55
 
93
- 매주 같은 형식의 task 만드는 자동화는 템플릿 + override 패턴이 효율적:
56
+ 매주 같은 형식의 업무를 만들 때는 템플릿에 제목만 덮어쓴다.
94
57
 
95
58
  ```bash
96
- # 매주 월요일 실행되는 cron — "주간 릴리스 체크" 템플릿으로 자동 생성
97
59
  TODAY=$(date +%Y-%m-%d)
98
60
  POST_ID=$(dooray post create <project> \
99
61
  --template "주간 릴리스 체크" \
@@ -101,6 +63,5 @@ POST_ID=$(dooray post create <project> \
101
63
  --json | jq -r '.id')
102
64
  ```
103
65
 
104
- 템플릿 본문의 `${year}` / `${month}` 매크로는 Dooray 가 자동 치환 (`interpolation=true` 기본).
105
- 사용자 정의 변수는 미지원 필요 client string replace 로 처리.
106
-
66
+ 템플릿 본문의 `${year}`, `${month}` 같은 매크로는 Dooray 가 치환한다.
67
+ 사용자 정의 변수는 지원하지 않으므로 필요하면 받은 본문을 직접 치환한다.
@@ -1,92 +0,0 @@
1
- # intent-map
2
-
3
- 자연어 요청을 dooray-cli 커맨드로 변환할 때 참고하는 마스터 표.
4
-
5
- ## 의도 → 커맨드 매핑
6
-
7
- 자연어 요청을 커맨드로 변환할 때 아래 표를 참고한다.
8
-
9
- > **공통 (post 하위 16개 명령)**: 아래 명령은 `<project> <number>` 외에도 `--id <postId>`, `--url <url>`, 또는 첫 인자에 Dooray URL 을 직접 받는다.
10
- > `post get`/`edit`/`done`/`workflow`, `post comment list`/`add`/`edit`/`delete`, `post file list`/`upload`/`download`/`download-all`/`delete`, `post comment file list`/`upload`/`download`/`delete`.
11
- >
12
- > 지원 URL 형식 3종 (positional 첫 인자 / `--url` 공통):
13
- > - `https://*.dooray.com/task/to/<postId>`
14
- > - `https://*.dooray.com/task/<projectId>/<postId>` — 브라우저 주소창 복사본
15
- > - `https://*.dooray.com/project/tasks/<postId>` — 프로젝트 업무 목록 → 업무 열기
16
- >
17
- > **사용자가 URL을 줬으면 그대로 첫 인자로 전달**하는 것이 가장 빠른 경로 (resolve 단계 단축).
18
-
19
- | 의도 | 커맨드 |
20
- |------|--------|
21
- | 초기 설정 (대화형) | `dooray setup` |
22
- | 프로젝트 찾기 | `dooray project list --search <keyword>` |
23
- | 개인 프로젝트 목록 | `dooray project list --type private` |
24
- | 프로젝트 멤버 보기 | `dooray project members <project>` 또는 `dooray member list <project>` (이름·organizationMemberId) |
25
- | 프로젝트 멤버 그룹 목록 | `dooray project groups <project>` (ID / Code) |
26
- | 프로젝트 태그 목록 | `dooray project tags <project>` (ID / Color / Name / Group / Mandatory) |
27
- | 프로젝트 템플릿 목록 | `dooray project templates <project>` (id / templateName) |
28
- | 멤버 상세 (organizationMemberId) | `dooray member get <organizationMemberId>` (cache 우회) |
29
- | organization 전체 멤버 검색 | `dooray member search <keyword>` (이름 기본), `--email`(이메일 exact), `--user-code`(사번 like), `--user-code-exact`(사번 exact), `--page`/`--size` |
30
- | 업무 목록 조회 | `dooray post list <project>` |
31
- | 업무 검색 | `dooray post search <project|projectId> "<keyword>"` — projectId (15+자리 numeric) 직접 입력 시 cache 우회 |
32
- | 업무 상세 보기 | `dooray post get <project> <number>` (번호) / `dooray post get --id <postId>` (internal ID) |
33
- | 업무 생성 | `dooray post create <project> --title "..." [--body "..." \| --body-file <path>]` (`--tag`/`--parent`/`--workflow`/`--milestone` 지원) |
34
- | 템플릿 기반 업무 생성 | `dooray post create <project> --template <name\|id>` — body/users/tags 자동 채움 (사용자 옵션 우선 override) |
35
- | 업무 제목/본문 수정 | `dooray post edit <project> <number> --title "..." --body "..."` 또는 `--body-file <path>` |
36
- | 업무 완료 처리 | `dooray post done <project> <number>` |
37
- | 업무 워크플로우 변경 | `dooray post workflow <project> <number> <workflow>` |
38
- | 댓글 조회 | `dooray post comment list <project> <number>` (`--sort`, `--reverse`, `--latest`, `--since`, `--from-author` 필터. table: Creator 자동 채움, `--json`: raw) |
39
- | 최신 댓글 조회 | `dooray post comment latest <project> <number>` — 최신 댓글 1개 빠른 조회. `-n <N>`으로 N개 지정 |
40
- | 단일 댓글 조회 | `dooray post comment get <project> <number> <comment-id>` — 본문·메타·attachments 직접 fetch. `--id`/`--url` + `--comment-id` 모드 지원 |
41
- | 댓글 추가 | `dooray post comment add <project> <number> --body "..."` 또는 `--body-file <path>` |
42
- | 댓글 수정 | `dooray post comment edit <project> <number> <comment-id> --body "..."` 또는 `--body-file <path>` |
43
- | 댓글 삭제 | `dooray post comment delete <project> <number> <comment-id>` |
44
- | 위키 목록 | `dooray wiki list` |
45
- | 위키 페이지 목록 | `dooray wiki pages <project>` |
46
- | 위키 페이지 트리 | `dooray wiki tree <project>` (계층 트리, `--depth N` 상한, `--json` 은 flat) |
47
- | 위키 페이지 상세 | `dooray wiki page get <project> <page-id>` |
48
- | 위키 페이지 생성 | `dooray wiki page create <project> --title "..." [--parent <page-id>] [--body "..."]` (--parent 생략 시 위키 home 페이지 아래 생성) |
49
- | 위키 페이지 수정 (제목) | `dooray wiki page edit <project> <page-id> --title "..."` |
50
- | 위키 페이지 수정 (본문) | `dooray wiki page edit <project> <page-id> --body "..."` 또는 `--body-file ./new.md` |
51
- | 위키 페이지 수정 (에디터) | `dooray wiki page edit <project> <page-id>` (플래그 없으면 $EDITOR 열림) |
52
- | 위키 페이지 삭제 | `dooray wiki page delete <project> <page-id>` (y/N 확인 기본, `--yes`로 자동화 시 생략. 하위 페이지는 상위 페이지로 재부착) |
53
- | 위키 페이지 첨부 목록 | `dooray wiki page file list <project> <page-id>` (general + inline 합산, type 컬럼) |
54
- | 위키 페이지 첨부 업로드 | `dooray wiki page file upload <project> <page-id> --file <path> [--type inline_image]` (multipart `type` 필드를 `file` 앞에 전송) |
55
- | 위키 페이지 첨부 다운로드 | `dooray wiki page file download <project> <page-id> --file-id <id> -o <dir>` |
56
- | 위키 페이지 첨부 일괄 다운로드 | `dooray wiki page file download-all <project> <page-id> -o <dir>` (files + images 전부) |
57
- | 위키 페이지 첨부 삭제 | `dooray wiki page file delete <project> <page-id> --file-id <id>` (confirm 없음) |
58
- | 위키 페이지 댓글 목록 | `dooray wiki page comment list <project> <page-id> [--latest N]` (최신순) |
59
- | 위키 페이지 최신 댓글 | `dooray wiki page comment latest <project> <page-id>` |
60
- | 위키 페이지 댓글 조회 | `dooray wiki page comment get <project> <page-id> <comment-id>` |
61
- | 위키 페이지 댓글 추가 | `dooray wiki page comment add <project> <page-id> --body "..."` ($EDITOR fallback) |
62
- | 위키 페이지 댓글 수정 | `dooray wiki page comment edit <project> <page-id> <comment-id> --body "..."` |
63
- | 위키 페이지 댓글 삭제 | `dooray wiki page comment delete <project> <page-id> <comment-id>` (confirm 없음) |
64
- | 메일 목록 조회 | `dooray mail list` |
65
- | 안읽은 메일 | `dooray mail list --unread` |
66
- | 메일 제목 검색 | `dooray mail list --search "<keyword>"` |
67
- | 메일 상세 | `dooray mail get <uid>` |
68
- | 메일 발송 | `dooray mail send --to "..." --subject "..." --body "..."` |
69
- | 메일 답장 | `dooray mail reply <uid> --body "..."` |
70
- | 저장된 메일 인증정보 제거 | `dooray mail logout` (비대화형 환경: `--yes`) |
71
- | 메신저 1:1 다이렉트 메시지 | `dooray messenger send --to "<id\|email>" --body "..."` (`--to`는 id/이메일만, 이름 미지원) |
72
- | 메신저 대화방 메시지 | `dooray messenger channel-send --channel "<channelId\|이름>" --body "..."` (이름은 자신이 속한 방만 검색) |
73
- | 첨부파일 목록 | `dooray post file list <project> <number>` |
74
- | 첨부파일 다운로드 | `dooray post file download <project> <number> <file-id>` |
75
- | 전체 첨부파일 다운로드 | `dooray post file download-all <project> <number>` |
76
- | 첨부파일 업로드 | `dooray post file upload <project> <number> <file-path>` |
77
- | 첨부파일 삭제 | `dooray post file delete <project> <number> <file-id>` |
78
- | file 명령군 자동화 파싱 | `dooray post file <verb> ... --json` — `download` = `{outputPath,fileName,size}`, `download-all` = `{count,succeeded,failed}` (부분 실패 시 exit 1), `delete` = `{fileId,status}`, `upload` = `res.result` raw |
79
- | 댓글 첨부 목록 | `dooray post comment file list <project> <number> <comment-id>` |
80
- | 댓글 파일 업로드 | `dooray post comment file upload <project> <number> <comment-id> <path>` |
81
- | 댓글 파일 다운로드 | `dooray post comment file download <project> <number> <comment-id> <file-id>` |
82
- | 댓글 파일 삭제 | `dooray post comment file delete <project> <number> <comment-id> <file-id> --yes` |
83
- | 참조자(cc) 멤버/그룹 추가 | `dooray post edit <project> <number> --cc-group <code>` — 기존 참조자 유지 + 그룹 추가 (dedupe) |
84
- | 참조자 전체 교체 | `dooray post edit <project> <number> --cc-clear --cc <name>` — 기존 참조자 비우고 신규 멤버만 |
85
- | 신규 업무 + 그룹 cc | `dooray post create <project> --title "..." --cc-group <code>` — 생성 시 그룹 참조자 포함 |
86
- | `--cc-group <code\|id>` / `--mention-group <code\|id>` | 그룹 매칭 — 15+자리 numeric → id 직접 / 그 외 → code matchByName (부분일치) |
87
- | 상위 업무 설정/변경 | `dooray post edit <project> <number> --title "<원제목>" --parent <ref>` (`<ref>`: `<project>/<number>` 또는 raw postId. `--title` 필수, unset 미지원) |
88
- | `dooray post edit --id <postId> --tag <name>` | 태그 추가 (반복, dedupe) |
89
- | `dooray post edit --id <postId> --tag-clear --tag <name>` | 태그 전체 교체 |
90
- | `dooray post edit --id <postId> --tag-remove <name>` | 특정 태그 제거 |
91
-
92
- > **제목 옵션 네이밍**: `post` 와 `wiki page` 모두 `--title` 표준. `post`의 `--subject`는 deprecated alias로 당분간 동작하되, 새 코드에서는 `--title` 사용을 권장.