Slack ์ฐ๋ ์จ๋ณด๋ฉ ๊ฐ์ด๋
์ ํ๋ก์ ํธ๋ฅผ GIIP์ ๋ํํ Slack ๋ด(giipclaude)๊ณผ ์ฐ๊ฒฐํ๋ ์ ์ฒด ์ ์ฐจ๋ฅผ 7๋จ๊ณ๋ก ์๋ดํฉ๋๋ค. ๊ฐ
๋จ๊ณ๋ฅผ ์์๋๋ก ๋ฐ๋ผ๊ฐ๋ฉด ๋์์ Slack ์ฑ๋์ @giipclaude๋ฅผ ๋ฉ์
ํด giip issue๋ฅผ ๋ฑ๋ก/์กฐํํ ์
์๊ฒ ๋ฉ๋๋ค.
๋ชฉ์ฐจ
- ํ๋ก์ ํธ(csn) ํ์ธ
- ์๋น์ค ๊ทธ๋ฃน ์์ฑ
- SK(Secret Key) ๋ฐ๊ธ
- giip-fde-agent ๋ก์ปฌ ์ค์น
- Slack App ์์ฑ ๋ฐ ์ฐ๋
- Slack ์ฑ๋ ์ค๋น
- GIIP ์ฐ๋ ๋ง๋ฌด๋ฆฌ
1. ํ๋ก์ ํธ(csn) ํ์ธ
Slack ๋ด์ ์ฐ๊ฒฐํ๋ ค๋ฉด ๋จผ์ ์ด ๋ด์ด ์ํ GIIP ํ๋ก์ ํธ(csn)๊ฐ ์์ด์ผ ํฉ๋๋ค. ์ด๋ฏธ ๊ฐ์ /์จ๋ณด๋ฉ๋ ํ์ฌ๊ฐ ์๋ค๋ฉด ์ด ๋จ๊ณ๋ ๊ฑด๋๋ฐ๊ณ 2๋จ๊ณ๋ก ์ด๋ํ์ธ์. ์ ๊ท ๊ฐ์ ์ด ํ์ํ๋ฉด:
โก๏ธ ํ์๊ฐ์ ๊ฐ์ด๋ ๋ฅผ ๋จผ์ ์งํํ์ธ์.
๋ค์ ๋จ๊ณ: 2. ์๋น์ค ๊ทธ๋ฃน ์์ฑ
2. ์๋น์ค ๊ทธ๋ฃน ์์ฑ
GIIP์์ SK(Secret Key)๋ "์๋น์ค ๊ทธ๋ฃน" ๋จ์๋ก ๋ฐ๊ธ๋ฉ๋๋ค. ์์ง ์ด Slack ๋ด ์ ์ฉ ๊ทธ๋ฃน์ด ์๋ค๋ฉด ์๋ก ๋ง๋์ธ์.
- ํ๋ก์ ํธ ๊ทธ๋ฃน ๋ชฉ๋ก ํ์ด์ง๋ก ์ด๋ํฉ๋๋ค.
- [+ ๊ทธ๋ฃน ์ถ๊ฐ] ๋ฒํผ์ผ๋ก ์ ๊ทธ๋ฃน์ ๋ง๋ญ๋๋ค(์:
slack-bot์ฒ๋ผ ์ฉ๋๋ฅผ ์ ์ ์๋ ์ด๋ฆ ๊ถ์ฅ).
๋ค์ ๋จ๊ณ: 3. SK(Secret Key) ๋ฐ๊ธ
3. SK(Secret Key) ๋ฐ๊ธ
๊ฐ์ ํ๋ก์ ํธ ๊ทธ๋ฃน ๋ชฉ๋ก ํ์ด์ง์์, ๋ฐฉ๊ธ ๋ง๋ (๋๋ ๊ธฐ์กด) ๊ทธ๋ฃน ์์ [Generate Secret Key] ๋ฒํผ์ ํด๋ฆญํฉ๋๋ค. ๋ฐ๊ธ๋ SK ๋ฌธ์์ด์ ์์ ํ ๊ณณ์ ๋ณต์ฌํด ๋์ธ์ โ 7๋จ๊ณ์์ ๊ทธ๋๋ก ์ฌ์ฉํฉ๋๋ค.
๋ค์ ๋จ๊ณ: 4. giip-fde-agent ๋ก์ปฌ ์ค์น
4. giip-fde-agent ๋ก์ปฌ ์ค์น
Slack ๋ด์ ์ฌ๋ฌ๋ถ์ PC(๋๋ ๋ด์ ์์ ๋์๋ ์๋ฒ)์์ ๋ก์ปฌ๋ก ์คํ๋ฉ๋๋ค. ์ ๋ณธ ํ ํ๋ฆฟ ์ ์ฅ์๋ฅผ ํด๋ก ํด์ ์ค์นํ์ธ์.
git clone https://github.com/LowyShin/giip-fde-agent.git
cd giip-fde-agent/slack-bot
npm install
๋ค์ ๋จ๊ณ: 5. Slack App ์์ฑ ๋ฐ ์ฐ๋
5. Slack App ์์ฑ ๋ฐ ์ฐ๋
slack-bot/SLACK_APP_SETUP.md(์ ์ฅ์ ์์ ์ด๋ฏธ ์์)์ ์ ์ฒด ์ ์ฐจ๋ฅผ ๋ฐ๋ฅด์ธ์. ํต์ฌ๋ง ์์ฝํ๋ฉด:
- api.slack.com/apps โ Create New App โ From scratch
- OAuth & Permissions โ Bot Token Scopes ์ถ๊ฐ:
chat:write,app_mentions:read,channels:history,channels:read,groups:history,groups:read,im:history,im:read,im:write(์ ํ:users:read) - Socket Mode ํ์ฑํ โ App-Level Token ๋ฐ๊ธ(
connections:write์ค์ฝํ) โxapp-...๋ณต์ฌ - Event Subscriptions ํ์ฑํ โ
app_mention,message.im,message.channels,message.groups๊ตฌ๋ - Install to Workspace โ Bot User OAuth Token(
xoxb-...) ๋ณต์ฌ slack-bot/.env.example์.env๋ก ๋ณต์ฌํ๊ณSLACK_BOT_TOKEN(xoxb-),SLACK_APP_TOKEN(xapp-),WORKSPACE_DIR์ฑ์ฐ๊ธฐnode index.js(๋๋pm2 start index.js --name giipclaude-bot)๋ก ์คํ
๋ฌธ์ ๊ฐ ์๊ธฐ๋ฉด SLACK_APP_SETUP.md ํ๋จ "Troubleshooting" ํ๋ฅผ ๋จผ์ ํ์ธํ์ธ์.
๋ค์ ๋จ๊ณ: 6. Slack ์ฑ๋ ์ค๋น
6. Slack ์ฑ๋ ์ค๋น
- ๋ด์ด ์๋ตํ Slack ์ฑ๋์ ๋ง๋ค๊ฑฐ๋ ๊ธฐ์กด ์ฑ๋์ ์ ํฉ๋๋ค.
- ๊ทธ ์ฑ๋์์
/invite @<๋ด ์ด๋ฆ>์ผ๋ก ๋ด์ ์ด๋ํฉ๋๋ค. - ์ฑ๋ ID๋ฅผ ํ์ธํฉ๋๋ค: ์ฑ๋๋ช
์ฐํด๋ฆญ โ ์ฑ๋ ์ธ๋ถ ์ ๋ณด ๋ณด๊ธฐ โ ํ๋จ์
C0XXXXXXXXXํ์ ID.
๋ค์ ๋จ๊ณ: 7. GIIP ์ฐ๋ ๋ง๋ฌด๋ฆฌ
7. GIIP ์ฐ๋ ๋ง๋ฌด๋ฆฌ
๋ด์ด Slack์์ ์ด์์๋ ๊ฒ์ ํ์ธํ์ผ๋ฉด, ์ด์ ๊ทธ ์ฑ๋์ 3๋จ๊ณ์์ ๋ฐ๊ธ๋ฐ์ SK/csn๊ณผ ์ฐ๊ฒฐํฉ๋๋ค. ๋ด์๊ฒ DM์ผ๋ก(๋๋ ์ฐ๊ฒฐํ ์ฑ๋์์) ์๋ ๋ช ๋ น์ ์์๋๋ก ์ ๋ ฅํ์ธ์.
giip account set <login_id> <SK> <csn>
giip channel set <ํ๋ก์ ํธ๋ช
> <์ฑ๋ID>
giip project set <ํ๋ก์ ํธ๋ช
> <csn>
<login_id>: ์ด ๊ณ์ ์ผ๋ก ์๋ณ๋ ์ด๋ฉ์ผ ๋ฑ(ํ์์ฉ, ์:you@example.com)<SK>: 3๋จ๊ณ์์ ๋ฐ๊ธ๋ฐ์ ๊ฐ<csn>: 1๋จ๊ณ์์ ํ์ธํ ํ๋ก์ ํธ ๋ฒํธ<ํ๋ก์ ํธ๋ช >: ์์ ๋กญ๊ฒ ์ ํ๋ ์๋ฌธ์ ์๋ณ์(giip issue ๋ฑ๋ก ์ ์ด ์ด๋ฆ์ผ๋ก ๋ผ์ฐํ ๋จ)
๋ช
๋ น์ด ๋ชจ๋ ์ฑ๊ณตํ๋ฉด ๊ทธ ์ฑ๋์์ @<๋ด ์ด๋ฆ> issue ๋ฑ๋ก <๋ด์ฉ>์ฒ๋ผ ๋งํด์ ๋ฐ๋ก giip issue๋ฅผ ๋ฑ๋กํ
์ ์์ต๋๋ค.
โ ๏ธ ์ ๊ท ํ๋ก์ ํธ๋ผ๋ฉด:
giip project set์ด ์๋์ผ๋ก ๋ด์ DB ์ ๊ทผ ๊ถํ(tUserPerCorp)์ ๋ถ์ฌํ๋ ค ์๋ํ๋๋ฐ, ์์ ํ ์๋ก์ด csn์ ๋ณด์ ๊ฒ์ดํธ๋ก ์ด ์๋ ๋ถ์ฌ๊ฐ ์คํจํฉ๋๋ค(์๋๋ ๋์). ์ด ๊ฒฝ์ฐ ๋ช ๋ น ์๋ต์ ๊ฒฝ๊ณ ๊ฐ ๋จ๊ณ , ์๋์ผ๋ก ํ์ ์กฐ์น giip issue๊ฐ csn 47์ ๋ฑ๋ก๋ฉ๋๋ค โ GIIP ๊ด๋ฆฌ์๊ฐ ๊ทธ ์ด์๋ฅผ ๋ณด๊ณgiipdb/data/seed_tUserPerCorp_botuser.sql์ ํ ์ค์ ์ถ๊ฐํด ์๋์ผ๋ก ๊ถํ์ ๋ถ์ฌํด์ผ ์์ ํ ์ฐ๋๋ฉ๋๋ค. ์ด ๋จ๊ณ๋ง ๊ด๋ฆฌ์ ๊ฐ์ ์ด ํ์ํ๊ณ , ๋๋จธ์ง๋ ์ ๋ถ ์ ํ์๋น์ค์ ๋๋ค.
๋ฒ์ : 2.0 (giip-fde-agent ๊ธฐ๋ฐ ๋ํํ ๋ด ์จ๋ณด๋ฉ์ผ๋ก ์ ๋ฉด ๊ฐ์ )
์ต์ข
์
๋ฐ์ดํธ: 2026-09-10
์์ค ํ์ผ: giipv3/public/help/slack-bot-setup.ko.md