Skip to content

NailAgent/backend

Folders and files

NameName
Last commit message
Last commit date

Latest commit

ย 

History

133 Commits
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

๐Ÿ’… Reservia

๊ณ ๊ฐ์˜ ๋น„์ •ํ˜• ์˜ˆ์•ฝ ๋ฉ”์‹œ์ง€๋ฅผ ๊ตฌ์กฐํ™”ํ•˜์—ฌ
์˜ˆ์•ฝ ๋ฌธ์˜, ๋ณ€๊ฒฝ, ์ทจ์†Œ, ๊ฒฐ์ œ ํ™•์ธ, ์ผ์ • ๋“ฑ๋ก๊นŒ์ง€ ์ž๋™ ์ฒ˜๋ฆฌํ•˜๋Š”
๋„ค์ผ์ƒต ์‚ฌ์žฅ๋‹˜์„ ์œ„ํ•œ AI ์˜ˆ์•ฝ ์‘๋Œ€ ๋งค๋‹ˆ์ €


Java Spring Boot MySQL AWS GitHub Actions


Team Nailgent

26-1 ๋ฐ์ดํ„ฐ์ข…ํ•ฉ๋ถ„์„ ์บก์Šคํ†ค ํ”„๋กœ์ ํŠธ ย ยทย  ๐Ÿ† 2026 Low-Code AI Challenge Hackathon 3rd place



ํ”„๋กœ์ ํŠธ ์†Œ๊ฐœ

1์ธ ๋„ค์ผ์ƒต ์‚ฌ์žฅ๋‹˜์€ ์‹œ์ˆ  ์ค‘์—๋„ ์นด์นด์˜คํ†ก์œผ๋กœ ์Ÿ์•„์ง€๋Š” ์˜ˆ์•ฝ ๋ฌธ์˜๋ฅผ ์ผ์ผ์ด ํ™•์ธํ•˜๊ณ  ๋‹ตํ•ด์•ผ ํ•ฉ๋‹ˆ๋‹ค.

๊ณ ๊ฐ: ๋‚ด์ผ ์˜คํ›„ 3์‹œ์— ์ ค ์ œ๊ฑฐํ•˜๊ณ  ์ ค๋„ค์ผ ๊ฐ€๋Šฅํ•ด์š”? ์ฒซ๋ฐฉ๋ฌธ์ด๊ณ  ์ด๋ฆ„์€ ๊น€์ง€์ˆ˜์˜ˆ์š”.

Reservia๋Š” ์ด๋Ÿฐ ์ž์œ ๋กœ์šด ์ž์—ฐ์–ด ๋ฉ”์‹œ์ง€์—์„œ ์˜ˆ์•ฝ์— ํ•„์š”ํ•œ ์ •๋ณด๋ฅผ ์ถ”์ถœํ•˜๊ณ ,
์˜ˆ์•ฝ ๊ฐ€๋Šฅ ์—ฌ๋ถ€ ํ™•์ธ โ†’ ๋ˆ„๋ฝ ์ •๋ณด ์žฌ์งˆ๋ฌธ โ†’ ์˜ˆ์•ฝ๊ธˆ ๊ฒฐ์ œ โ†’ Google Calendar ๋“ฑ๋ก๊นŒ์ง€ ์‚ฌ์žฅ๋‹˜ ๊ฐœ์ž… ์—†์ด ์ž๋™์œผ๋กœ ์ฒ˜๋ฆฌํ•ฉ๋‹ˆ๋‹ค.

์ด ๋ ˆํฌ์ง€ํ† ๋ฆฌ๋Š” Reservia์˜ ๋ฐฑ์—”๋“œ ์„œ๋ฒ„์ž…๋‹ˆ๋‹ค.
AI ์—์ด์ „ํŠธ(n8n / LangGraph)์™€ ์‚ฌ์žฅ๋‹˜ ๊ด€๋ฆฌ ๋Œ€์‹œ๋ณด๋“œ(Frontend) ์‚ฌ์ด์—์„œ ์˜ˆ์•ฝยท๊ณ ๊ฐยท๊ฒฐ์ œยท์ƒต ์„ค์ • ๊ด€๋ฆฌ๋ฅผ ์œ„ํ•œ REST API๋ฅผ ์ œ๊ณตํ•ฉ๋‹ˆ๋‹ค.



์ธํ”„๋ผ ์•„ํ‚คํ…์ฒ˜

AWS ์œ„์— 3-Tier Architecture ๊ธฐ๋ฐ˜์œผ๋กœ ๊ตฌ์„ฑ๋˜์–ด ์žˆ์Šต๋‹ˆ๋‹ค.

Tier ๊ตฌ์„ฑ ์„ค๋ช…
Presentation Nginx (Public Subnet) ํด๋ผ์ด์–ธํŠธ ์š”์ฒญ์„ ๋ฐ›์•„ ๋‚ด๋ถ€ ์„œ๋ฒ„๋กœ ์ „๋‹ฌํ•˜๋Š” ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ
Application EC2 Backend + EC2 Agent (Private Subnet) ๋น„์ฆˆ๋‹ˆ์Šค ๋กœ์ง ์ฒ˜๋ฆฌ โ€” Spring Boot ๋ฐฑ์—”๋“œ ๋ฐ AI ์—์ด์ „ํŠธ ์„œ๋ฒ„
Data RDS MySQL + S3 (Private Subnet) ๋ฐ์ดํ„ฐ ์ €์žฅ โ€” ์˜ˆ์•ฝยท๊ณ ๊ฐยท๊ฒฐ์ œ DB ๋ฐ ์ด๋ฏธ์ง€ ์Šคํ† ๋ฆฌ์ง€

3-Tier Architecture


๊ตฌ์„ฑ ์š”์†Œ ์—ญํ• 
Nginx (Public Subnet) ๋ฆฌ๋ฒ„์Šค ํ”„๋ก์‹œ, HTTPS ์ฒ˜๋ฆฌ
EC2 โ€” Backend (Private Subnet) Spring Boot ๋ฐฑ์—”๋“œ ์„œ๋ฒ„
EC2 โ€” Agent (Private Subnet) n8n / LangGraph ๊ธฐ๋ฐ˜ AI ์—์ด์ „ํŠธ ์„œ๋ฒ„
RDS (Private Subnet) MySQL ๋ฐ์ดํ„ฐ๋ฒ ์ด์Šค
S3 ๊ณ ๊ฐ ๋””์ž์ธ ๋ ˆํผ๋Ÿฐ์Šค ์ด๋ฏธ์ง€ ์ €์žฅ
NAT Gateway Private Subnet โ†’ ์™ธ๋ถ€ API ์•„์›ƒ๋ฐ”์šด๋“œ ํ†ต์‹ 
GitHub Actions main ๋ธŒ๋žœ์น˜ ํ‘ธ์‹œ ์‹œ ์ž๋™ ๋ฐฐํฌ (CI/CD)

์•„ํ‚คํ…์ฒ˜ ์ตœ์ ํ™” โ€” VPC Endpoint ๋„์ž…

๊ธฐ์กด์—๋Š” S3 ์ ‘๊ทผ ํŠธ๋ž˜ํ”ฝ์ด NAT Gateway โ†’ ์ธํ„ฐ๋„ท์„ ๊ฑฐ์ณ ๋‚˜๊ฐ”์ง€๋งŒ, ์ด ๊ฒฝ๋กœ๋ฅผ VPC Endpoint๋กœ ์ „ํ™˜ํ–ˆ์Šต๋‹ˆ๋‹ค.
AWS ๋‚ด๋ถ€๋ง์œผ๋กœ S3์— ์ง์ ‘ ์—ฐ๊ฒฐ๋˜๋„๋ก ํ•˜์—ฌ ๋ณด์•ˆยท๋น„์šฉยท์†๋„๋ฅผ ๋™์‹œ์— ๊ฐœ์„ ํ–ˆ์Šต๋‹ˆ๋‹ค.

Architecture Optimization


๊ฒ€์ฆ โ€” ์•„์›ƒ๋ฐ”์šด๋“œ ํŠธ๋ž˜ํ”ฝ ์ถœ๊ตฌ ํ™•์ธ

์„ค๊ณ„ ๊ฒ€ํ†  ๊ณผ์ •์—์„œ ์„ค๊ณ„์™€ ์‹ค์ œ ์„ค์ •์˜ ๋ถˆ์ผ์น˜๋ฅผ ๋ฐœ๊ฒฌํ•˜๊ณ , AWS ์ฝ˜์†”๋กœ ์ง์ ‘ ๊ฒ€์ฆํ–ˆ์Šต๋‹ˆ๋‹ค.
NAT Gateway๋Š” Public Subnet์— ์†ํ•œ ๋ฆฌ์†Œ์Šค์ด๋ฏ€๋กœ, ์ž์‹ ์ด ์†ํ•œ ์„œ๋ธŒ๋„ท์˜ ๋ผ์šฐํŒ… ํ…Œ์ด๋ธ”(NailAgent-public-rt)์„ ๋”ฐ๋ผ๊ฐ‘๋‹ˆ๋‹ค.
์ฆ‰, ์•„์›ƒ๋ฐ”์šด๋“œ ํŠธ๋ž˜ํ”ฝ์˜ ์ตœ์ข… ์ถœ๊ตฌ๋Š” NAT์ด ์•„๋‹Œ IGW(Internet Gateway) ์ž„์„ ์ฝ˜์†” ๊ฒ€์ฆ์„ ํ†ตํ•ด ํ™•์ธํ–ˆ์Šต๋‹ˆ๋‹ค.

Verification



ํŠธ๋Ÿฌ๋ธ”์ŠˆํŒ…

๐Ÿ’ณ ๊ฒฐ์ œ ์‹คํŒจ โ€” RESERVATION_NOT_FOUND (ORDERID ์ค‘๋ณต)

๋ฌธ์ œ ์ƒํ™ฉ
๊ฒฐ์ œ ์‹œ RESERVATION_NOT_FOUND๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค. ๊ฒฐ์ œ์ฐฝ ์ธ์ฆ์€ ํ†ต๊ณผํ–ˆ์ง€๋งŒ ์„œ๋ฒ„์—์„œ ์˜ˆ์•ฝ์„ ์ฐพ์ง€ ๋ชปํ•ด ๊ฒฐ์ œ ์Šน์ธ์— ์‹คํŒจํ–ˆ์Šต๋‹ˆ๋‹ค.

๊ทผ๋ณธ ์›์ธ โ€” DB ์ดˆ๊ธฐํ™” ํ›„ ORDERID ์ค‘๋ณต
๊ฐœ๋ฐœ ์ค‘ ํ…Œ์ŠคํŠธ ๋ชฉ์ ์œผ๋กœ DB๋ฅผ ์ง์ ‘ ์ดˆ๊ธฐํ™”ํ•˜๋ฉด ์šฐ๋ฆฌ ์ชฝ AUTO_INCREMENT๋Š” 1๋กœ ๋ฆฌ์…‹๋˜์ง€๋งŒ, Toss๋Š” ์ด๋ฏธ ์ฒ˜๋ฆฌํ•œ ORDERID๋ฅผ ๊ธฐ์–ตํ•˜๊ณ  ์žˆ์Šต๋‹ˆ๋‹ค.
๊ฐ™์€ ORDERID๋กœ ์žฌ์š”์ฒญ ์‹œ Toss๊ฐ€ ์ด๋ฅผ ๊ฑฐ์ ˆํ•˜๊ฑฐ๋‚˜ ์ด์ „ ์˜ˆ์•ฝ๊ณผ ๋งคํ•‘ ์˜ค๋ฅ˜๊ฐ€ ๋ฐœ์ƒํ–ˆ์Šต๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• โ€” ORDERID์— ํƒ€์ž„์Šคํƒฌํ”„ ์ถ”๊ฐ€
ORDERID๋ฅผ booking_{id}_{timestamp} ํ˜•์‹์œผ๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ, DB๊ฐ€ ์ดˆ๊ธฐํ™”๋˜๋”๋ผ๋„ ํƒ€์ž„์Šคํƒฌํ”„๊ฐ€ ๋‹ฌ๋ผ ํ•ญ์ƒ ์œ ์ผํ•œ ORDERID๋ฅผ ๋ณด์žฅํ•˜๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค.

Troubleshooting - Payment ORDERID


๐Ÿ—‚๏ธ DB ์Šคํ‚ค๋งˆ ์„ค๊ณ„ โ€” ๊ณ ๊ฐ ์ค‘๋ณต ์ƒ์„ฑ (UNIQUE ์ œ์•ฝ ์žฌ์„ค๊ณ„)

๋ฌธ์ œ ์ƒํ™ฉ
์˜ˆ์•ฝ ์ง„ํ–‰ ์‹œ ๋ฐฑ์—”๋“œ๋Š” ์ด๋ฆ„ + ์ „ํ™”๋ฒˆํ˜ธ๋กœ ๊ธฐ์กด ๊ณ ๊ฐ ์กด์žฌ ์—ฌ๋ถ€๋ฅผ ํ™•์ธํ•˜๊ณ , ์—†์œผ๋ฉด ์‹ ๊ทœ ๊ณ ๊ฐ์„ ์ž๋™ ๋“ฑ๋กํ•˜๋„๋ก ์„ค๊ณ„๋˜์–ด ์žˆ์—ˆ์Šต๋‹ˆ๋‹ค.
๊ทธ๋Ÿฐ๋ฐ ๊ณ ๊ฐ์ด ์ด๋ฆ„์ด๋‚˜ ์ „ํ™”๋ฒˆํ˜ธ๋ฅผ ์ž˜๋ชป ์ž…๋ ฅํ•œ ๋’ค ์ด๋ฅผ ์ธ์ง€ํ•˜์ง€ ๋ชปํ•œ ์ฑ„ ์ •์ •ํ•˜๋ฉด, ๊ฐ™์€ ์นด์นด์˜คํ†ก ํ”Œ๋Ÿฌ์Šค์นœ๊ตฌ ID ํ•˜๋‚˜์— ์„œ๋กœ ๋‹ค๋ฅธ ๊ณ ๊ฐ ๋ ˆ์ฝ”๋“œ๊ฐ€ 2๊ฑด ์ƒ์„ฑ๋˜์—ˆ์Šต๋‹ˆ๋‹ค.
์ด๋ ‡๊ฒŒ ์ค‘๋ณต ์ƒ์„ฑ๋œ ๊ณ ๊ฐ์€ ์ดํ›„ ๋‹ค๋ฅธ ์—…๋กœ๋“œ ๋กœ์ง์—์„œ ์ถฉ๋Œ์„ ์ผ์œผ์ผฐ์Šต๋‹ˆ๋‹ค.

๊ทผ๋ณธ ์›์ธ โ€” UNIQUE ์ œ์•ฝ์„ ๊ณ ๊ฐ์˜ ์ž…๋ ฅ ์ž์œจ์„ฑ์— ๋งก๊น€
์ด๋ฆ„ยท์ „ํ™”๋ฒˆํ˜ธ๋Š” ๊ณ ๊ฐ์ด ์ž์œ ๋กญ๊ฒŒ ์ž…๋ ฅํ•˜๋Š” ๊ฐ’์ด๋ผ ์˜คํƒ€ยท๋ณ€๊ฒฝ์ด ์–ธ์ œ๋“  ๋ฐœ์ƒํ•  ์ˆ˜ ์žˆ์Šต๋‹ˆ๋‹ค.
์ด๋Ÿฐ ๊ฐ€๋ณ€์ ์ธ ๊ฐ’์„ ์‹๋ณ„ ๊ธฐ์ค€(UNIQUE)์œผ๋กœ ์‚ผ์€ ๊ฒƒ์ด ์ค‘๋ณต์˜ ์ง์ ‘ ์›์ธ์ด์—ˆ์Šต๋‹ˆ๋‹ค.

ํ•ด๊ฒฐ ๋ฐฉ๋ฒ• โ€” ์‹๋ณ„ ๊ธฐ์ค€์„ ๋ถˆ๋ณ€๊ฐ’์ธ ํ”Œ๋Ÿฌ์Šค์นœ๊ตฌ ID๋กœ ์ „ํ™˜
UNIQUE ์ œ์•ฝ์„ (์ด๋ฆ„, ์ „ํ™”๋ฒˆํ˜ธ)์—์„œ ์‹œ์Šคํ…œ์ด ๋ณด์žฅํ•˜๋Š” ๋ถˆ๋ณ€๊ฐ’์ธ ์นด์นด์˜คํ†ก ํ”Œ๋Ÿฌ์Šค์นœ๊ตฌ ID๋กœ ๋ณ€๊ฒฝํ•˜์—ฌ ๊ณ ๊ฐ์„ ์‹๋ณ„ํ•˜๋„๋ก ํ–ˆ์Šต๋‹ˆ๋‹ค.
์ด๋ฅผ ํ†ตํ•ด UNIQUE ์ œ์•ฝ์€ ์‚ฌ์šฉ์ž ์ž…๋ ฅ ์ž์œจ์„ฑ์— ๋งก๊ธฐ๋ฉด ์•ˆ ๋˜๋ฉฐ, ์‹œ์Šคํ…œ์ด ํ†ต์ œ ๊ฐ€๋Šฅํ•œ ๋ถˆ๋ณ€ ์‹๋ณ„์ž์— ๋ถ€์—ฌํ•ด์•ผ ํ•œ๋‹ค๋Š” ์ ์„ ์ฒด๊ฐํ–ˆ์Šต๋‹ˆ๋‹ค.



์ฃผ์š” ๊ธฐ๋Šฅ

๐Ÿ“… ์˜ˆ์•ฝ ๊ด€๋ฆฌ

  • AI ์—์ด์ „ํŠธ๊ฐ€ ๊ณ ๊ฐ๊ณผ ์นด์นด์˜คํ†ก์œผ๋กœ ๋Œ€ํ™” โ†’ ์˜ˆ์•ฝ ์ž๋™ ์ƒ์„ฑ
  • ์˜ˆ์•ฝ ์ƒ์„ฑยท์ˆ˜์ •ยท์‚ญ์ œ ์‹œ Google Calendar ์ผ์ • ์ž๋™ ๋™๊ธฐํ™”
  • ์˜ˆ์•ฝ ์ƒํƒœ ํ๋ฆ„: PENDING โ†’ CONFIRMED โ†’ VISITED / NO_SHOW / CANCELLED
  • ๊ฒฐ์ œ ๋ฏธ์™„๋ฃŒ ์˜ˆ์•ฝ 5๋ถ„ ํ›„ ์ž๋™ ์ทจ์†Œ (์Šค์ผ€์ค„๋Ÿฌ)
  • ๊ณ ๊ฐ์ด ์—…๋กœ๋“œํ•œ ๋””์ž์ธ ๋ ˆํผ๋Ÿฐ์Šค ์ด๋ฏธ์ง€ S3 ์ €์žฅ ๋ฐ ์กฐํšŒ
  • ๋‚ ์งœ๋ณ„ ์˜ˆ์•ฝ ์Šฌ๋กฏ ์กฐํšŒ (์—์ด์ „ํŠธ๊ฐ€ ๊ฐ€๋Šฅ ์‹œ๊ฐ„๋Œ€ ํŒ๋‹จ์— ์‚ฌ์šฉ)

๐Ÿ‘ค ๊ณ ๊ฐ ๊ด€๋ฆฌ

  • ์นด์นด์˜ค plusfriendUserKey ๊ธฐ์ค€ ๊ณ ๊ฐ ์ž๋™ ์‹๋ณ„ ๋ฐ ์ค‘๋ณต ์ƒ์„ฑ ๋ฐฉ์ง€
  • ์žฌ๋ฐฉ๋ฌธ ๊ณ ๊ฐ ์ •๋ณด(์ด๋ฆ„ยท์ „ํ™”๋ฒˆํ˜ธ) ์ž๋™ ์—…๋ฐ์ดํŠธ
  • ๋…ธ์‡ผ ํšŸ์ˆ˜ ๋ˆ„์  ๊ด€๋ฆฌ

๐Ÿ’ณ ๊ฒฐ์ œ ์ฒ˜๋ฆฌ

  • Toss Payments ์—ฐ๋™ โ€” ์˜ˆ์•ฝ๊ธˆ ๊ฒฐ์ œ ์ตœ์ข… ์Šน์ธ
  • ๊ฒฐ์ œ ์™„๋ฃŒ ์‹œ ์˜ˆ์•ฝ ์ƒํƒœ CONFIRMED ์ž๋™ ์ „ํ™˜
  • ํ™˜๋ถˆ ์ฒ˜๋ฆฌ

๐Ÿช ์ƒต ์„ค์ • ๊ด€๋ฆฌ

  • ์˜์—…์‹œ๊ฐ„, ํœด๋ฌด์ผ, ์˜ˆ์•ฝ๊ธˆ ์ •์ฑ… ๊ด€๋ฆฌ
  • ์„œ๋น„์Šค ๋ฉ”๋‰ด ๋ฐ ์†Œ์š” ์‹œ๊ฐ„ (AI ์—์ด์ „ํŠธ๊ฐ€ ์ฐธ์กฐ)
  • ์˜ˆ์•ฝ ์•ˆ๋‚ด ๋ฉ”์‹œ์ง€, ์ด์šฉ ์•ฝ๊ด€ ํ…์ŠคํŠธ

๐Ÿ”” ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ (SSE)

  • AI๊ฐ€ ์ž๋™ ์‘๋‹ต ๋ถˆ๊ฐ€ํ•œ ์ƒํ™ฉ ๋ฐœ์ƒ ์‹œ โ†’ ์‚ฌ์žฅ๋‹˜ ๋Œ€์‹œ๋ณด๋“œ์— ์‹ค์‹œ๊ฐ„ push
  • CopyOnWriteArrayList ๊ธฐ๋ฐ˜ ๋‹ค์ค‘ ์—ฐ๊ฒฐ ์ง€์›์œผ๋กœ ์žฌ์—ฐ๊ฒฐ ์‹œ ๋Š๊น€ ๋ฐฉ์ง€


API ์—”๋“œํฌ์ธํŠธ

๐Ÿ“‹ ์ „์ฒด API ๋ชฉ๋ก ๋ณด๊ธฐ

์˜ˆ์•ฝ

Method Path ์„ค๋ช…
GET /api/v1/bookings/schedule ๋‚ ์งœ๋ณ„ ์˜ˆ์•ฝ ๊ฐ€๋Šฅ ์Šฌ๋กฏ ์กฐํšŒ
GET /api/v1/bookings ์ „์ฒด ์˜ˆ์•ฝ ๋ชฉ๋ก (ํŽ˜์ด์ง€๋„ค์ด์…˜)
POST /api/v1/bookings ์˜ˆ์•ฝ ์ƒ์„ฑ
PATCH /api/v1/bookings/{id} ์˜ˆ์•ฝ ์ˆ˜์ •
DELETE /api/v1/bookings/{id} ์˜ˆ์•ฝ ์‚ญ์ œ
PATCH /api/v1/bookings/image ๋””์ž์ธ ๋ ˆํผ๋Ÿฐ์Šค ์ด๋ฏธ์ง€ ์—…๋กœ๋“œ

๊ณ ๊ฐ

Method Path ์„ค๋ช…
POST /api/v1/kakao-customers ์นด์นด์˜ค ๊ณ ๊ฐ ์กฐํšŒ (AI ์—์ด์ „ํŠธ ์ „์šฉ)
GET /api/v1/customers ๊ณ ๊ฐ ๋ชฉ๋ก ์กฐํšŒ

์ƒต ์„ค์ •

Method Path ์„ค๋ช…
GET /api/v1/shopinfo ์ƒต ์„ค์ • ์กฐํšŒ
PATCH /api/v1/shopinfo ์ƒต ์„ค์ • ์ˆ˜์ •

๊ฒฐ์ œ

Method Path ์„ค๋ช…
POST /api/v1/payments/confirm Toss Payments ๊ฒฐ์ œ ์ตœ์ข… ์Šน์ธ
PATCH /api/v1/payments/{id} ๊ฒฐ์ œ ์ƒํƒœ ์—…๋ฐ์ดํŠธ
POST /api/v1/payments/{id}/refund ๊ฒฐ์ œ ํ™˜๋ถˆ

์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ

Method Path ์„ค๋ช…
GET /api/v1/sse/connect SSE ์—ฐ๊ฒฐ (๋Œ€์‹œ๋ณด๋“œ ์ „์šฉ)
POST /api/v1/sse/notify ์‹ค์‹œ๊ฐ„ ์•Œ๋ฆผ ์ „์†ก (AI ์—์ด์ „ํŠธ ์ „์šฉ)

API ๋ฌธ์„œ: /swagger-ui/index.html



๊ด€๋ จ ๋ ˆํฌ์ง€ํ† ๋ฆฌ

๋ ˆํฌ ์„ค๋ช…
NailAgent/agent LangGraph ๊ธฐ๋ฐ˜ AI ์—์ด์ „ํŠธ
NailAgent/n8n n8n ๊ธฐ๋ฐ˜ AI ์—์ด์ „ํŠธ
NailAgent/frontend ์‚ฌ์žฅ๋‹˜ ๊ด€๋ฆฌ ๋Œ€์‹œ๋ณด๋“œ (Vercel ๋ฐฐํฌ)


Team Nailgent

Role Name GitHub
AI / Agent ๊น€๋ฏธ์ง€ @miji0
AI / Agent ๊น€์ง€์ˆ˜ @sallysooo
Backend / Infra ๋‚จ๋ฏผ์„œ @minseo0313
Frontend / Design ์ •๊ต์€ @kyooonnnggg

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

No releases published

Packages

 
 
 

Contributors