@elyun/bylane 1.35.0 → 1.38.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/commands/bylane-code-agent.md +22 -0
- package/commands/bylane-commit-agent.md +20 -0
- package/commands/bylane-issue-agent.md +22 -0
- package/commands/bylane-pr-agent.md +20 -0
- package/commands/bylane-respond-agent.md +20 -0
- package/commands/bylane-review-agent.md +20 -0
- package/commands/bylane-test-agent.md +32 -0
- package/package.json +1 -1
|
@@ -217,6 +217,28 @@ npx @elyun/bylane state write code-agent '{
|
|
|
217
217
|
|
|
218
218
|
---
|
|
219
219
|
|
|
220
|
+
## Slack 완료 알림
|
|
221
|
+
|
|
222
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
223
|
+
|
|
224
|
+
```bash
|
|
225
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
226
|
+
|
|
227
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
228
|
+
-H "Content-Type: application/json" \
|
|
229
|
+
-d "{
|
|
230
|
+
\"title\": \"[code-agent] #ISSUE_NUMBER 구현 완료\",
|
|
231
|
+
\"status\": \"completed\",
|
|
232
|
+
\"url\": \"ISSUE_URL\",
|
|
233
|
+
\"elapsed\": \"ELAPSED\",
|
|
234
|
+
\"reason\": \"\"
|
|
235
|
+
}"
|
|
236
|
+
```
|
|
237
|
+
|
|
238
|
+
`ISSUE_URL`은 `.bylane/state/issue-agent.json`의 `issueUrl`.
|
|
239
|
+
|
|
240
|
+
---
|
|
241
|
+
|
|
220
242
|
## issueMemory 기록
|
|
221
243
|
|
|
222
244
|
```bash
|
|
@@ -66,6 +66,26 @@ ls .gitmessage .github/commit-template.txt .github/COMMIT_TEMPLATE.md 2>/dev/nul
|
|
|
66
66
|
npx @elyun/bylane state write commit-agent '{"status":"completed","progress":100,"branchName":"BRANCH_NAME","commitSha":"COMMIT_SHA"}'
|
|
67
67
|
```
|
|
68
68
|
|
|
69
|
+
## Slack 완료 알림
|
|
70
|
+
|
|
71
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
72
|
+
|
|
73
|
+
```bash
|
|
74
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
75
|
+
|
|
76
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
77
|
+
-H "Content-Type: application/json" \
|
|
78
|
+
-d "{
|
|
79
|
+
\"title\": \"[commit-agent] 커밋 완료 (BRANCH_NAME)\",
|
|
80
|
+
\"status\": \"completed\",
|
|
81
|
+
\"url\": \"\",
|
|
82
|
+
\"elapsed\": \"ELAPSED\",
|
|
83
|
+
\"reason\": \"\"
|
|
84
|
+
}"
|
|
85
|
+
```
|
|
86
|
+
|
|
87
|
+
---
|
|
88
|
+
|
|
69
89
|
## 출력
|
|
70
90
|
|
|
71
91
|
`.bylane/state/commit-agent.json`:
|
|
@@ -296,6 +296,28 @@ npx @elyun/bylane memory append ISSUE_NUMBER issue-agent "유형: ISSUE_TYPE
|
|
|
296
296
|
|
|
297
297
|
---
|
|
298
298
|
|
|
299
|
+
## Slack 완료 알림
|
|
300
|
+
|
|
301
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
302
|
+
|
|
303
|
+
```bash
|
|
304
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
305
|
+
|
|
306
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
307
|
+
-H "Content-Type: application/json" \
|
|
308
|
+
-d "{
|
|
309
|
+
\"title\": \"[issue-agent] #ISSUE_NUMBER SPEC_TITLE\",
|
|
310
|
+
\"status\": \"completed\",
|
|
311
|
+
\"url\": \"ISSUE_URL\",
|
|
312
|
+
\"elapsed\": \"ELAPSED\",
|
|
313
|
+
\"reason\": \"\"
|
|
314
|
+
}"
|
|
315
|
+
```
|
|
316
|
+
|
|
317
|
+
`ELAPSED`는 `startedAt`부터 현재까지의 소요 시간(예: `1m 23s`).
|
|
318
|
+
|
|
319
|
+
---
|
|
320
|
+
|
|
299
321
|
## 수동 실행
|
|
300
322
|
|
|
301
323
|
`/bylane issue #123` 또는 `/bylane issue 다크모드 토글 추가해줘`
|
|
@@ -93,6 +93,26 @@ npx @elyun/bylane state write pr-agent '{"status":"in_progress","startedAt":"'$(
|
|
|
93
93
|
npx @elyun/bylane state write pr-agent '{"status":"completed","progress":100,"prNumber":PR_NUMBER,"prUrl":"PR_URL"}'
|
|
94
94
|
```
|
|
95
95
|
|
|
96
|
+
## Slack 완료 알림
|
|
97
|
+
|
|
98
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
102
|
+
|
|
103
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
104
|
+
-H "Content-Type: application/json" \
|
|
105
|
+
-d "{
|
|
106
|
+
\"title\": \"[pr-agent] PR #PR_NUMBER 생성\",
|
|
107
|
+
\"status\": \"completed\",
|
|
108
|
+
\"url\": \"PR_URL\",
|
|
109
|
+
\"elapsed\": \"ELAPSED\",
|
|
110
|
+
\"reason\": \"\"
|
|
111
|
+
}"
|
|
112
|
+
```
|
|
113
|
+
|
|
114
|
+
---
|
|
115
|
+
|
|
96
116
|
## 출력
|
|
97
117
|
|
|
98
118
|
`.bylane/state/pr-agent.json`:
|
|
@@ -129,6 +129,26 @@ curl -s \
|
|
|
129
129
|
}
|
|
130
130
|
```
|
|
131
131
|
|
|
132
|
+
## Slack 완료 알림
|
|
133
|
+
|
|
134
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
135
|
+
|
|
136
|
+
```bash
|
|
137
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
138
|
+
|
|
139
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
140
|
+
-H "Content-Type: application/json" \
|
|
141
|
+
-d "{
|
|
142
|
+
\"title\": \"[respond-agent] PR #PR_NUMBER 리뷰 대응 완료 (RESOLVED_COUNT건)\",
|
|
143
|
+
\"status\": \"completed\",
|
|
144
|
+
\"url\": \"PR_URL\",
|
|
145
|
+
\"elapsed\": \"ELAPSED\",
|
|
146
|
+
\"reason\": \"\"
|
|
147
|
+
}"
|
|
148
|
+
```
|
|
149
|
+
|
|
150
|
+
---
|
|
151
|
+
|
|
132
152
|
## 수동 실행
|
|
133
153
|
|
|
134
154
|
`/bylane respond #45`
|
|
@@ -200,6 +200,26 @@ curl -s -X POST \
|
|
|
200
200
|
npx @elyun/bylane state write review-agent '{"status":"completed","progress":100,"approved":APPROVED_BOOL,"commentCount":COMMENT_COUNT}'
|
|
201
201
|
```
|
|
202
202
|
|
|
203
|
+
## Slack 완료 알림
|
|
204
|
+
|
|
205
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
206
|
+
|
|
207
|
+
```bash
|
|
208
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
209
|
+
|
|
210
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
211
|
+
-H "Content-Type: application/json" \
|
|
212
|
+
-d "{
|
|
213
|
+
\"title\": \"[review-agent] PR #PR_NUMBER 리뷰 완료 (COMMENT_COUNT건)\",
|
|
214
|
+
\"status\": \"completed\",
|
|
215
|
+
\"url\": \"PR_URL\",
|
|
216
|
+
\"elapsed\": \"ELAPSED\",
|
|
217
|
+
\"reason\": \"\"
|
|
218
|
+
}"
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
203
223
|
## 출력
|
|
204
224
|
|
|
205
225
|
`.bylane/state/review-agent.json`:
|
|
@@ -58,6 +58,38 @@ npx @elyun/bylane state write test-agent '{"status":"in_progress","startedAt":"'
|
|
|
58
58
|
}
|
|
59
59
|
```
|
|
60
60
|
|
|
61
|
+
## Slack 완료 알림
|
|
62
|
+
|
|
63
|
+
`.bylane/bylane.json`의 `notifications.slack.enabled: true`이고 `webhookUrl`이 있으면 전송:
|
|
64
|
+
|
|
65
|
+
```bash
|
|
66
|
+
SLACK_WEBHOOK_URL=$(node -e "try{const c=JSON.parse(require('fs').readFileSync('.bylane/bylane.json','utf8'));const s=c.notifications?.slack;process.stdout.write(s?.enabled&&s?.webhookUrl?s.webhookUrl:'')}catch(e){}" 2>/dev/null)
|
|
67
|
+
|
|
68
|
+
# 통과 시
|
|
69
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
70
|
+
-H "Content-Type: application/json" \
|
|
71
|
+
-d "{
|
|
72
|
+
\"title\": \"[test-agent] 테스트 통과 (PASSED/TOTAL)\",
|
|
73
|
+
\"status\": \"completed\",
|
|
74
|
+
\"url\": \"\",
|
|
75
|
+
\"elapsed\": \"ELAPSED\",
|
|
76
|
+
\"reason\": \"\"
|
|
77
|
+
}"
|
|
78
|
+
|
|
79
|
+
# 실패 시 — status를 escalated로
|
|
80
|
+
[ -n "$SLACK_WEBHOOK_URL" ] && curl -s -X POST "$SLACK_WEBHOOK_URL" \
|
|
81
|
+
-H "Content-Type: application/json" \
|
|
82
|
+
-d "{
|
|
83
|
+
\"title\": \"[test-agent] 테스트 실패 (FAILED/TOTAL)\",
|
|
84
|
+
\"status\": \"escalated\",
|
|
85
|
+
\"url\": \"\",
|
|
86
|
+
\"elapsed\": \"\",
|
|
87
|
+
\"reason\": \"FAILURE_SUMMARY\"
|
|
88
|
+
}"
|
|
89
|
+
```
|
|
90
|
+
|
|
91
|
+
---
|
|
92
|
+
|
|
61
93
|
## 수동 실행
|
|
62
94
|
|
|
63
95
|
`/bylane test`
|