Skip to content
CloudNookPublic

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

ย 

History

74 Commits

Folders and files

NameName
Last commit message
Last commit date
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 
ย 

Repository files navigation

AgentHub - ไผไธš็บงAIๆ™บ่ƒฝไฝ“็ฎก็†ๅนณๅฐ

Java Spring Boot Next.js React TypeScript PostgreSQL License

๐ŸŒŸ ้กน็›ฎๆฆ‚่ฟฐ

AgentHub ๆ˜ฏไธ€ไธชๅŸบไบŽ้ข†ๅŸŸ้ฉฑๅŠจ่ฎพ่ฎก๏ผˆDDD๏ผ‰ๆžถๆž„็š„ไผไธš็บงAIๆ™บ่ƒฝไฝ“็ฎก็†ๅนณๅฐ๏ผŒ้‡‡็”จSpring Boot + Next.jsๅ…จๆ ˆๆŠ€ๆœฏๆ ˆใ€‚ๅนณๅฐไธไป…ไป…ๆ˜ฏ็ฎ€ๅ•็š„่Šๅคฉๆœบๅ™จไบบ๏ผŒ่€Œๆ˜ฏๆไพ›ไบ†ๆ™บ่ƒฝไปปๅŠกๅˆ†่งฃใ€่‡ชๅŠจๅŒ–ๅทฅไฝœๆตใ€ๅคšๆจกๅž‹้›†ๆˆ็ญ‰ๅ…ˆ่ฟ›ๅŠŸ่ƒฝ็š„ๅฎŒๆ•ดAIๆ™บ่ƒฝไฝ“็”Ÿๅ‘ฝๅ‘จๆœŸ็ฎก็†็ณป็ปŸใ€‚

๐ŸŽฏ ๆ ธๅฟƒไปทๅ€ผไธปๅผ 

  • ๆ™บ่ƒฝไปปๅŠก่‡ชๅŠจๅŒ–๏ผšๅฐ†ๅคๆ‚็”จๆˆท่ฏทๆฑ‚่‡ชๅŠจๅˆ†่งฃไธบๅฏๆ‰ง่กŒ็š„ๅญไปปๅŠก
  • ไผไธš็บงๆžถๆž„๏ผšDDD่ฎพ่ฎกๆจกๅผ๏ผŒๆ”ฏๆŒ้ซ˜ๅนถๅ‘ๅ’Œๆฐดๅนณๆ‰ฉๅฑ•
  • ๅคšLLM้›†ๆˆ๏ผš็ปŸไธ€็ฎก็†ๅคš็งAIๆจกๅž‹ๆไพ›ๅ•†๏ผŒๆ”ฏๆŒ็ตๆดปๅˆ‡ๆข
  • ๅฏ่ง†ๅŒ–ๅทฅไฝœๆต๏ผšๅฎŒๆ•ด็š„ๆ™บ่ƒฝไฝ“ๅผ€ๅ‘ใ€ๆต‹่ฏ•ใ€ๅ‘ๅธƒๅทฅไฝœๆต
  • ็”Ÿไบงๅฐฑ็ปช๏ผšๅฎนๅ™จๅŒ–้ƒจ็ฝฒ๏ผŒCI/CD้›†ๆˆ๏ผŒไผไธš็บง็›‘ๆŽงๅ’Œๆ—ฅๅฟ—

๐Ÿš€ ๆ ธๅฟƒ็‰นๆ€ง

๐Ÿค– ๆ™บ่ƒฝไฝ“็ฎก็†ๅผ•ๆ“Ž

  • ็‰ˆๆœฌๆŽงๅˆถ๏ผšๅฎŒๆ•ด็š„ๆ™บ่ƒฝไฝ“็‰ˆๆœฌ็ฎก็†็ณป็ปŸ๏ผŒๆ”ฏๆŒๅ‘ๅธƒๅฎกๆ ธๆต็จ‹
  • ็ฑปๅž‹ๆ”ฏๆŒ๏ผš่ŠๅคฉๅŠฉๆ‰‹ๅ’ŒๅŠŸ่ƒฝๅž‹ๆ™บ่ƒฝไฝ“ไธค็ง็ฑปๅž‹
  • ๅทฅไฝœๅŒบ็ฎก็†๏ผš็”จๆˆท่‡ชๅฎšไน‰ๆ™บ่ƒฝไฝ“้…็ฝฎๅ’Œๆจกๅž‹่ฎพ็ฝฎ
  • ็”Ÿๅ‘ฝๅ‘จๆœŸ็ฎก็†๏ผš่‰็จฟ โ†’ ๅฎกๆ ธ โ†’ ๅ‘ๅธƒ็š„ๅฎŒๆ•ดๆต็จ‹

๐Ÿ”„ ๆ™บ่ƒฝๅทฅไฝœๆต็ณป็ปŸ

Agent Workflow

ๅนณๅฐๆ ธๅฟƒ็š„8้˜ถๆฎตๆ™บ่ƒฝๅทฅไฝœๆต๏ผš

ๅˆๅง‹ๅŒ– โ†’ ้—ฎ้ข˜ๅˆ†ๆž โ†’ ไปปๅŠกๅˆ†่งฃ โ†’ ๅˆ†่งฃๅฎŒๆˆ โ†’ ไปปๅŠกๆ‰ง่กŒ โ†’ ๆ‰ง่กŒๅฎŒๆˆ โ†’ ็ป“ๆžœๆฑ‡ๆ€ป โ†’ ๅฎŒๆˆ/ๅคฑ่ดฅ

ๅ…ณ้”ฎๅทฅไฝœๆต็ป„ไปถ๏ผš

  • ้—ฎ้ข˜ๅˆ†ๆžๅ™จ๏ผšๆ™บ่ƒฝๅˆคๆ–ญ็”จๆˆท่ฏทๆฑ‚ๆ˜ฏ็ฎ€ๅ•้—ฎ้ข˜่ฟ˜ๆ˜ฏๅคๆ‚ไปปๅŠก
  • ไปปๅŠกๅˆ†่งฃๅ™จ๏ผšๅฐ†ๅคๆ‚ไปปๅŠก่‡ชๅŠจๅˆ†่งฃไธบๅฏ็ฎก็†็š„ๅญไปปๅŠก
  • ไธŠไธ‹ๆ–‡ๅกซๅ……็ฎก็†ๅ™จ๏ผš่‡ชๅŠจๆฃ€ๆต‹ไฟกๆฏๅฎŒๆ•ดๆ€ง๏ผŒ่ฏข้—ฎ็ผบๅคฑไฟกๆฏ
  • ไบ‹ไปถ้ฉฑๅŠจๆžถๆž„๏ผšๅŸบไบŽAgentEventBus็š„ๅผ‚ๆญฅๅทฅไฝœๆตๅค„็†

๐Ÿ’ฌ ๅฏน่ฏไธŽไธŠไธ‹ๆ–‡็ฎก็†

  • ๆ™บ่ƒฝไธŠไธ‹ๆ–‡็ช—ๅฃ๏ผš่‡ชๅŠจๅฏน่ฏไธŠไธ‹ๆ–‡็ฎก็†ๅ’Œๆ™บ่ƒฝๆ€ป็ป“
  • ๅคš่ฝฎๅฏน่ฏๆ”ฏๆŒ๏ผšๅค„็†ๅคๆ‚็š„ๅคšๆญฅ้ชคไบคไบ’
  • ไฟกๆฏๅฎŒๆ•ดๆ€งๆฃ€ๆŸฅ๏ผš่‡ชๅŠจ่ฏ†ๅˆซๅนถ่ฏทๆฑ‚็ผบๅคฑ็š„ๅ…ณ้”ฎไฟกๆฏ
  • ไปค็‰Œ็ฎก็†๏ผš็ฒพ็กฎ็š„ๆถˆๆฏไปค็‰Œ่ฎกๆ•ฐๅ’ŒไธŠไธ‹ๆ–‡ไผ˜ๅŒ–

๐ŸŒ ๅคšLLMๆไพ›ๅ•†้›†ๆˆ

  • ็ปŸไธ€ๆŠฝ่ฑกๅฑ‚๏ผšๅฑ่”ฝไธๅŒLLMๆไพ›ๅ•†็š„ๅทฎๅผ‚
  • ็ƒญๆ’ๆ‹”ๆ”ฏๆŒ๏ผš่ฟ่กŒๆ—ถๅŠจๆ€ๅˆ‡ๆขๆจกๅž‹ๅ’Œๆไพ›ๅ•†
  • ้…็ฝฎ็ฎก็†๏ผš็ตๆดป็š„APIๅฏ†้’ฅๅ’Œๆจกๅž‹ๅ‚ๆ•ฐ้…็ฝฎ
  • ๆˆๆœฌไผ˜ๅŒ–๏ผšๆ™บ่ƒฝๆจกๅž‹้€‰ๆ‹ฉๅ’ŒๆˆๆœฌๆŽงๅˆถ

๐Ÿ› ๏ธ ไปปๅŠก็ฎก็†็ณป็ปŸ

  • ๅฑ‚ๆฌกๅŒ–ไปปๅŠก็ป“ๆž„๏ผšๆ”ฏๆŒ็ˆถๅญไปปๅŠกๅ…ณ็ณปๅ’Œไพ่ต–็ฎก็†
  • ่ฟ›ๅบฆ่ทŸ่ธช๏ผšๅฎŒๆ•ด็š„ไปปๅŠก็”Ÿๅ‘ฝๅ‘จๆœŸ็Šถๆ€่ฟฝ่ธช
  • ็ป“ๆžœ่šๅˆ๏ผš่‡ชๅŠจๆ”ถ้›†ๅ’Œๆฑ‡ๆ€ปๅญไปปๅŠกๆ‰ง่กŒ็ป“ๆžœ
  • ๅคฑ่ดฅๆขๅค๏ผšๆ™บ่ƒฝ้”™่ฏฏๅค„็†ๅ’ŒไปปๅŠก้‡่ฏ•ๆœบๅˆถ

๐Ÿ—๏ธ ๆŠ€ๆœฏๆžถๆž„

ๅŽ็ซฏๆžถๆž„ (Java 17 + Spring Boot 3.5.3)

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    Interface Layer (ๆŽฅๅฃๅฑ‚)                     โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             โ”‚
โ”‚  โ”‚ REST API    โ”‚ โ”‚   DTO       โ”‚ โ”‚Validation   โ”‚             โ”‚
โ”‚  โ”‚ Controllers โ”‚ โ”‚ Conversion  โ”‚ โ”‚   & Auth    โ”‚             โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                  Application Layer (ๅบ”็”จๅฑ‚)                    โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             โ”‚
โ”‚  โ”‚Agent Serviceโ”‚ โ”‚Conversation โ”‚ โ”‚   Workflow  โ”‚             โ”‚
โ”‚  โ”‚Management   โ”‚ โ”‚ Service     โ”‚ โ”‚  Service    โ”‚             โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    Domain Layer (้ข†ๅŸŸๅฑ‚)                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             โ”‚
โ”‚  โ”‚   Entities  โ”‚ โ”‚ Value Objectsโ”‚ โ”‚Domain Eventsโ”‚             โ”‚
โ”‚  โ”‚   & Aggregatesโ”‚             โ”‚ โ”‚             โ”‚             โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚               Infrastructure Layer (ๅŸบ็ก€่ฎพๆ–ฝๅฑ‚)                โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”             โ”‚
โ”‚  โ”‚ PostgreSQL  โ”‚ โ”‚LangChain4j  โ”‚ โ”‚   External  โ”‚             โ”‚
โ”‚  โ”‚   Database  โ”‚ โ”‚ Integration โ”‚ โ”‚  Services   โ”‚             โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜             โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

ๆ ธๅฟƒๆŠ€ๆœฏๆ ˆ

ๅŽ็ซฏๆŠ€ๆœฏ

  • Java 17 + Spring Boot 3.5.3 - ไผไธš็บงJavaๆก†ๆžถ
  • MyBatis-Plus 3.5.7 - ้ซ˜ๆ€ง่ƒฝORMๆก†ๆžถ
  • PostgreSQL 15 - ไผไธš็บงๅ…ณ็ณปๅž‹ๆ•ฐๆฎๅบ“
  • LangChain4j 1.3.0 - AIๆจกๅž‹้›†ๆˆๆก†ๆžถ
    • ๆ”ฏๆŒOpenAIใ€้˜ฟ้‡Œไบ‘็™พ็‚ผใ€ๆ™บ่ฐฑAI็ญ‰
    • ้›†ๆˆMCP (Model Context Protocol)
  • FastJSON2 - ้ซ˜ๆ€ง่ƒฝJSONๅค„็†
  • ไบ‹ไปถ้ฉฑๅŠจๆžถๆž„ - AgentEventBusๅผ‚ๆญฅๆถˆๆฏๅค„็†

ๅ‰็ซฏๆŠ€ๆœฏ

  • Next.js 15 + React 19 - ็ŽฐไปฃๅŒ–Reactๆก†ๆžถ
  • TypeScript 5 - ็ฑปๅž‹ๅฎ‰ๅ…จ็š„JavaScript
  • Tailwind CSS 4.1.9 - ๅŽŸๅญๅŒ–CSSๆก†ๆžถ
  • Ant Design 5.26.7 - ไผไธš็บงUI็ป„ไปถๅบ“
  • Radix UI - ๆ— ๅคด็ป„ไปถๅบ“
  • Zustand - ่ฝป้‡็บง็Šถๆ€็ฎก็†
  • React Hook Form + Zod - ้ซ˜ๆ€ง่ƒฝ่กจๅ•ๅค„็†
  • AI SDK - Vercel AIๅฏน่ฏ้›†ๆˆ
  • react-markdown - MarkdownๆธฒๆŸ“ๆ”ฏๆŒ

ๅผ€ๅ‘่ฟ็ปด

  • Docker + Docker Compose - ๅฎนๅ™จๅŒ–้ƒจ็ฝฒ
  • GitHub Actions - CI/CD่‡ชๅŠจๅŒ–
  • Maven - Javaไพ่ต–็ฎก็†
  • ESLint + Prettier - ไปฃ็ ่ดจ้‡ไฟ่ฏ

๐ŸŽจ ้กน็›ฎไผ˜ๅŠฟ

๐Ÿ† ๆŠ€ๆœฏไผ˜ๅŠฟ

  1. ไผไธš็บงๆžถๆž„่ฎพ่ฎก

    • DDD้ข†ๅŸŸ้ฉฑๅŠจ่ฎพ่ฎก๏ผŒๆธ…ๆ™ฐ็š„ๅˆ†ๅฑ‚ๆžถๆž„
    • ้ซ˜ๅ†…่šไฝŽ่€ฆๅˆ๏ผŒๆ˜“ไบŽ็ปดๆŠคๅ’Œๆ‰ฉๅฑ•
    • ๆ”ฏๆŒๆฐดๅนณๆ‰ฉๅฑ•ๅ’Œ้ซ˜ๅนถๅ‘่ฎฟ้—ฎ
  2. ๆ™บ่ƒฝๅŒ–ๅทฅไฝœๆตๅผ•ๆ“Ž

    • ไธš็•Œ้ข†ๅ…ˆ็š„8้˜ถๆฎตๆ™บ่ƒฝๅทฅไฝœๆต
    • ่‡ช้€‚ๅบ”ไปปๅŠกๅˆ†่งฃๅ’Œๆ‰ง่กŒ
    • ๅŸบไบŽไบ‹ไปถ้ฉฑๅŠจ็š„ๅผ‚ๆญฅๅค„็†
  3. ๅคšๆจกๅž‹็ปŸไธ€็ฎก็†

    • ๆ”ฏๆŒๅคš็งLLMๆไพ›ๅ•†็š„ๆ— ็ผ้›†ๆˆ
    • ็ปŸไธ€็š„ๆจกๅž‹็ฎก็†ๅ’Œ้…็ฝฎ็•Œ้ข
    • ๆ™บ่ƒฝ็š„ๆจกๅž‹้€‰ๆ‹ฉๅ’Œๆˆๆœฌไผ˜ๅŒ–
  4. ็”Ÿไบงๅฐฑ็ปช็‰นๆ€ง

    • ๅฎŒๆ•ด็š„้”™่ฏฏๅค„็†ๅ’Œๅผ‚ๅธธๆขๅค
    • ่ฏฆ็ป†็š„ๆ“ไฝœๆ—ฅๅฟ—ๅ’Œๅฎก่ฎก่ฟฝ่ธช
    • ๅฎนๅ™จๅŒ–้ƒจ็ฝฒๅ’Œ่‡ชๅŠจๅŒ–่ฟ็ปด

๐Ÿ’ผ ไธšๅŠกไปทๅ€ผ

  1. ๆๅ‡ๅผ€ๅ‘ๆ•ˆ็އ

    • ๅฏ่ง†ๅŒ–็š„ๆ™บ่ƒฝไฝ“ๅผ€ๅ‘ๅทฅๅ…ท
    • ้ข„ๆž„ๅปบ็š„ๅทฅไฝœๆตๆจกๆฟ
    • ๅฟซ้€Ÿ็š„ๆจกๅž‹ๆต‹่ฏ•ๅ’Œ้ƒจ็ฝฒ
  2. ้™ไฝŽAIไฝฟ็”จ้—จๆง›

    • ็ปŸไธ€็š„ๅคšๆจกๅž‹็ฎก็†็•Œ้ข
    • ๆ™บ่ƒฝ็š„ไปปๅŠก่‡ชๅŠจๅŒ–ๅค„็†
    • ๅ‹ๅฅฝ็š„็”จๆˆทไบคไบ’ไฝ“้ชŒ
  3. ไผไธš็บงๅฎ‰ๅ…จไฟ้šœ

    • ๅฎŒๆ•ด็š„ๆƒ้™็ฎก็†ไฝ“็ณป
    • ๅฎ‰ๅ…จ็š„APIๅฏ†้’ฅ็ฎก็†
    • ๆ•ฐๆฎๅŠ ๅฏ†ๅ’Œ้š็งไฟๆŠค
  4. ็ตๆดป็š„ๆ‰ฉๅฑ•ๆ€ง

    • ๆ’ไปถๅŒ–็š„ๅทฅๅ…ท้›†ๆˆ
    • ๅผ€ๆ”พ็š„APIๆŽฅๅฃ่ฎพ่ฎก
    • ไธฐๅฏŒ็š„่‡ชๅฎšไน‰้…็ฝฎ้€‰้กน

๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹

็ณป็ปŸ่ฆๆฑ‚

  • Docker 20.10+
  • Docker Compose 2.0+
  • ๅ†…ๅญ˜: ่‡ณๅฐ‘4GB
  • ๅญ˜ๅ‚จ: ่‡ณๅฐ‘2GB

ไธ€้”ฎๅฏๅŠจ

# 1. ๅ…‹้š†้กน็›ฎ
git clone https://github.com/the-wayee/AgentHub.git
cd AgentHub

# 2. ๅฏๅŠจๆ‰€ๆœ‰ๆœๅŠก
docker compose up -d --build

# 3. ่ฎฟ้—ฎๅบ”็”จ
echo "ๅ‰็ซฏ็•Œ้ข: http://localhost:3000"
echo "ๅŽ็ซฏAPI: http://localhost:8080/api"
echo "ๆ•ฐๆฎๅบ“: localhost:5432"

ๆœฌๅœฐๅผ€ๅ‘

ๅŽ็ซฏๅผ€ๅ‘

# ็กฎไฟPostgreSQL่ฟ่กŒๅœจlocalhost:5432
mvn spring-boot:run

ๅ‰็ซฏๅผ€ๅ‘

cd AgentHub-Front
npm install
npm run dev

๐Ÿ“Š ็ณป็ปŸๆžถๆž„ๅ›พ

โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                        ็”จๆˆท็•Œ้ขๅฑ‚ (Next.js)                      โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚  ่Šๅคฉ็•Œ้ข   โ”‚ โ”‚ ๆ™บ่ƒฝไฝ“็ฎก็†  โ”‚ โ”‚ ๅทฅไฝœๅŒบ็ฎก็†  โ”‚ โ”‚ ็ฎก็†ๅŽๅฐ    โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                        API็ฝ‘ๅ…ณๅฑ‚ (Spring Boot)                   โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ ่ฎค่ฏๆŽˆๆƒ     โ”‚ โ”‚ ้™ๆต็†”ๆ–ญ    โ”‚ โ”‚ ็›‘ๆŽงๆ—ฅๅฟ—    โ”‚ โ”‚ API่ทฏ็”ฑ     โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                      ไธšๅŠก้€ป่พ‘ๅฑ‚ (Application)                  โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ ๆ™บ่ƒฝไฝ“ๆœๅŠก   โ”‚ โ”‚ ๅฏน่ฏๆœๅŠก    โ”‚ โ”‚ ๅทฅไฝœๆตๅผ•ๆ“Ž  โ”‚ โ”‚ ไปปๅŠก็ฎก็†    โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                      ้ข†ๅŸŸๆจกๅž‹ๅฑ‚ (Domain)                        โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ ๆ™บ่ƒฝไฝ“่šๅˆ   โ”‚ โ”‚ ไผš่ฏ่šๅˆ    โ”‚ โ”‚ ไปปๅŠก่šๅˆ    โ”‚ โ”‚ ไบ‹ไปถๆ€ป็บฟ    โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜
                              โ”‚
โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”
โ”‚                    ๅŸบ็ก€่ฎพๆ–ฝๅฑ‚ (Infrastructure)                 โ”‚
โ”‚  โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚
โ”‚  โ”‚ PostgreSQL  โ”‚ โ”‚ LangChain4j โ”‚ โ”‚ ๆถˆๆฏ้˜Ÿๅˆ—    โ”‚ โ”‚ ็ผ“ๅญ˜็ณป็ปŸ    โ”‚ โ”‚
โ”‚  โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚
โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜

๐Ÿ”ง ้…็ฝฎ่ฏดๆ˜Ž

็Žฏๅขƒๅ˜้‡้…็ฝฎ

้กน็›ฎๆ”ฏๆŒ้€š่ฟ‡็Žฏๅขƒๅ˜้‡่ฟ›่กŒ็ตๆดป้…็ฝฎ๏ผš

ๆ•ฐๆฎๅบ“้…็ฝฎ

DB_HOST=localhost          # ๆ•ฐๆฎๅบ“ไธปๆœบ
DB_PORT=5432             # ๆ•ฐๆฎๅบ“็ซฏๅฃ
DB_NAME=agenthub         # ๆ•ฐๆฎๅบ“ๅ็งฐ
DB_USERNAME=postgres     # ๆ•ฐๆฎๅบ“็”จๆˆทๅ
DB_PASSWORD=postgres     # ๆ•ฐๆฎๅบ“ๅฏ†็ 

LLMๆœๅŠก้…็ฝฎ

# OpenAI้…็ฝฎ
OPENAI_API_KEY=your_openai_key
OPENAI_BASE_URL=https://api.openai.com/v1

# ้˜ฟ้‡Œไบ‘็™พ็‚ผ้…็ฝฎ
DASHSCOPE_API_KEY=your_dashscope_key

# ๆ™บ่ฐฑAI้…็ฝฎ
ZHIPUAI_API_KEY=your_zhipuai_key

# SiliconFlow้…็ฝฎ
SILICONFLOW_API_KEY=your_siliconflow_key
SILICONFLOW_MODEL=Qwen/Qwen3-32B

๐Ÿ“ˆ ๆ€ง่ƒฝ็‰น็‚น

๐Ÿš€ ้ซ˜ๆ€ง่ƒฝ่ฎพ่ฎก

  • ๅผ‚ๆญฅๅค„็†๏ผšๅŸบไบŽไบ‹ไปถ้ฉฑๅŠจ็š„้ž้˜ปๅกžๆžถๆž„
  • ่ฟžๆŽฅๆฑ ๏ผšๆ•ฐๆฎๅบ“่ฟžๆŽฅๆฑ ๅ’ŒHTTP่ฟžๆŽฅๆฑ ไผ˜ๅŒ–
  • ็ผ“ๅญ˜็ญ–็•ฅ๏ผšๅคš็บง็ผ“ๅญ˜ๆๅ‡ๅ“ๅบ”้€Ÿๅบฆ
  • ่ดŸ่ฝฝๅ‡่กก๏ผšๆ”ฏๆŒๅคšๅฎžไพ‹้ƒจ็ฝฒๅ’Œ่ดŸ่ฝฝๅ‡่กก

๐Ÿ“Š ๅฏ่ง‚ๆต‹ๆ€ง

  • ็ป“ๆž„ๅŒ–ๆ—ฅๅฟ—๏ผšๅฎŒๆ•ด็š„่ฏทๆฑ‚ๅ’Œๆ“ไฝœๆ—ฅๅฟ—
  • ๆ€ง่ƒฝ็›‘ๆŽง๏ผšAPIๅ“ๅบ”ๆ—ถ้—ดๅ’Œ็ณป็ปŸ่ต„ๆบ็›‘ๆŽง
  • ้”™่ฏฏ่ฟฝ่ธช๏ผšๅˆ†ๅธƒๅผ้”™่ฏฏ่ฟฝ่ธชๅ’ŒๆŠฅ่ญฆ
  • ไธšๅŠกๆŒ‡ๆ ‡๏ผš็”จๆˆท่กŒไธบๅ’ŒไธšๅŠกๆŒ‡ๆ ‡็ปŸ่ฎก

๐Ÿค ่ดก็ŒฎๆŒ‡ๅ—

ๅผ€ๅ‘ๆต็จ‹

  1. Fork้กน็›ฎๅˆฐไธชไบบไป“ๅบ“
  2. ๅˆ›ๅปบๅŠŸ่ƒฝๅˆ†ๆ”ฏ (git checkout -b feature/amazing-feature)
  3. ๆไบคๆ›ดๆ”น (้ตๅพชๆไบคไฟกๆฏ่ง„่Œƒ)
  4. ๆŽจ้€ๅˆ†ๆ”ฏ (git push origin feature/amazing-feature)
  5. ๅˆ›ๅปบPull Request

Gitๆไบคไฟกๆฏ่ง„่Œƒ

<type>(<scope>): <subject>

<body>

<footer>

็ฑปๅž‹่ฏดๆ˜Ž:

  • feat: ๆ–ฐๅŠŸ่ƒฝ
  • fix: Bugไฟฎๅค
  • docs: ๆ–‡ๆกฃๆ›ดๆ–ฐ
  • style: ไปฃ็ ๆ ผๅผ่ฐƒๆ•ด
  • refactor: ไปฃ็ ้‡ๆž„
  • perf: ๆ€ง่ƒฝไผ˜ๅŒ–
  • test: ๆต‹่ฏ•็›ธๅ…ณ
  • chore: ๆž„ๅปบๅทฅๅ…ทใ€ไพ่ต–็ฎก็†

็คบไพ‹:

feat(back): ๅผ€ๅ‘Agent้—ฎ้ข˜ๅˆ†ๆžๅค„็†ๅ™จ

- ๅฎž็Žฐ้—ฎ้ข˜ๅˆ†ๆžๅทฅไฝœๆต
- ๆทปๅŠ ้—ฎ้ข˜ๅˆ†็ฑปๅŠŸ่ƒฝ
- ้›†ๆˆLangChain4jๅค„็†้€ป่พ‘

๐Ÿค– Generated with [Claude Code](https://claude.ai/code)

Co-Authored-By: Claude <noreply@anthropic.com>

ไปฃ็ ่ง„่Œƒ

  • ๅŽ็ซฏ: ้ตๅพชJavaไปฃ็ ่ง„่Œƒ๏ผŒไฝฟ็”จMavenๆž„ๅปบๅ’Œๆฃ€ๆŸฅ
  • ๅ‰็ซฏ: ้ตๅพชTypeScript/React่ง„่Œƒ๏ผŒไฝฟ็”จESLintๅ’ŒPrettier
  • ๆต‹่ฏ•: ไฟๆŒ้ซ˜ๆต‹่ฏ•่ฆ†็›–็އ๏ผŒๅŒ…ๅซๅ•ๅ…ƒๆต‹่ฏ•ๅ’Œ้›†ๆˆๆต‹่ฏ•

๐Ÿ“„ ่ฎธๅฏ่ฏ

ๆœฌ้กน็›ฎ้‡‡็”จ MIT่ฎธๅฏ่ฏ - ๆŸฅ็œ‹ LICENSE ๆ–‡ไปถไบ†่งฃ่ฏฆๆƒ…ใ€‚


๐Ÿ“ž ๆ”ฏๆŒไธŽ่”็ณป


๐Ÿ™ ่‡ด่ฐข

ๆ„Ÿ่ฐขไปฅไธ‹ๅผ€ๆบ้กน็›ฎ็š„ๆ”ฏๆŒ๏ผš


โญ ๅฆ‚ๆžœ่ฟ™ไธช้กน็›ฎๅฏนไฝ ๆœ‰ๅธฎๅŠฉ๏ผŒ่ฏท็ป™ๆˆ‘ไปฌไธ€ไธชStar!

GitHub stars

Made with โค๏ธ by AgentHub Team

About

No description, website, or topics provided.

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages