922a57fe34
Self-hosted 開源:WASM 零件 + recipe + cypher-executor,跑在你自己的 Cloudflare。 此為重建的乾淨歷史起點(移除曾誤 commit 的 GCP SA 金鑰,舊歷史保留在 richblack/arcrun 與本地 backup 分支)。含: - acr init --self-hosted installer(建 KV/R2 + codeload 拉預編譯 wasm + wrangler deploy + seed recipe) - recipe push 把關(資料外流提醒 + 打通檢查) - 19 個正當零件預編譯 wasm(claude_api/km_writer/kbdb_upsert_block 排除:違反 DECISIONS §1) - CLI / cypher-executor / registry / 完整 SDD Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
34 lines
1.5 KiB
Markdown
34 lines
1.5 KiB
Markdown
# github-issue-bot
|
||
|
||
## 解決什麼問題
|
||
開源專案維護苦:每天好幾個 issue 進來,要先看 → 分流 → 引導用戶補資訊。
|
||
這個 bot 自動做第一輪:分類 / 評估嚴重度 / 留有意義的 comment / 加 label。
|
||
|
||
## 前置
|
||
1. 在 GitHub repo settings → Webhooks → 加 webhook:
|
||
- URL: `https://cypher.arcrun.dev/webhooks/named/github_issue_bot/trigger`
|
||
- Content type: `application/json`
|
||
- Events: `Issues (opened)`
|
||
- 加 secret header `X-Arcrun-API-Key: ak_xxx`
|
||
2. 設 credential `GITHUB_BOT_TOKEN`(一支 PAT 或 GitHub App token)
|
||
|
||
## 預期結果
|
||
新 issue 開出來 30 秒後,bot 就 comment + 加標籤了。
|
||
|
||
## 改成你自己的
|
||
- prompt 改為你的專案 conventions(用詞、語氣)
|
||
- severity / category enum 改為你的分類
|
||
- 加 conditional:critical 自動 telegram 通知 maintainer
|
||
- 加 KBDB 存歷史 issue + claude 分析 → 用 RAG 找重複 issue
|
||
- 加 `if_control`:若 issue body 有 `traceback` 自動 reproduce
|
||
|
||
## 為什麼這 pattern 重要
|
||
- LLM 做「結構化判斷」比寫 if-else 強:能讀人類自然語言、抓上下文、判斷模糊邊界
|
||
- GitHub webhook → workflow 是最常見「外部 event → 處理」場景,所有 SaaS webhook 都類似
|
||
|
||
## 學到什麼
|
||
- 多步串聯(analyze → comment → label)每步都有 next,ON_SUCCESS 串
|
||
- `{{analyze.X}}` 從 claude_api JSON 自動展開到下游
|
||
- 同一個 API(GitHub)多次 call 共享 `Authorization` header
|
||
- 嚴重度 / 類別這類 LLM 判斷,用 enum + required_fields 確保結構穩定
|