# itsm **Repository Path**: RaYong8080/itsm ## Basic Information - **Project Name**: itsm - **Description**: No description available - **Primary Language**: Go - **License**: Apache-2.0 - **Default Branch**: main - **Homepage**: None - **GVP Project**: No ## Statistics - **Stars**: 0 - **Forks**: 0 - **Created**: 2026-05-02 - **Last Updated**: 2026-05-02 ## Categories & Tags **Categories**: Uncategorized **Tags**: None ## README
# ๐Ÿค– AI-Driven ITSM ## ไผไธš็บงITๆœๅŠก็ฎก็†ๅนณๅฐ [![Go](https://img.shields.io/badge/Go-1.25+-00ADD8?style=flat&logo=go)](https://golang.org) [![Next.js](https://img.shields.io/badge/Next.js-15.5-000000?style=flat&logo=nextdotjs)](https://nextjs.org) [![TypeScript](https://img.shields.io/badge/TypeScript-5.7-3178C6?style=flat&logo=typescript)](https://typescriptlang.org) [![PostgreSQL](https://img.shields.io/badge/PostgreSQL-17-336791?style=flat&logo=postgresql)](https://postgresql.org) [![License](https://img.shields.io/badge/License-Apache_2.0-yellowgreen?style=flat)](LICENSE) [![AI Powered](https://img.shields.io/badge/AI-Powered-FF6B6B?style=flat&logo=openai)](https://openai.com) **๐Ÿš€ ๅŸบไบŽ ITIL ๆœ€ไฝณๅฎž่ทต | AI ๆ™บ่ƒฝ้ฉฑๅŠจ | ๅผ€ๆบๅ…่ดน** **[๐ŸŒ ๅฎ˜็ฝ‘](https://cloudmesh.top/)** [English](./README_EN.md) ยท [ๅฟซ้€Ÿๅผ€ๅง‹](#ๅฟซ้€Ÿๅผ€ๅง‹) ยท [ๅŠŸ่ƒฝ็‰นๆ€ง](#ๆ ธๅฟƒๅŠŸ่ƒฝ) ยท [AI ๆ™บ่ƒฝ](#ai-ๆ™บ่ƒฝๅŠŸ่ƒฝ) ยท [่ดก็Œฎไปฃ็ ](#ๅ‚ไธŽ่ดก็Œฎ)
--- ## โญ ้กน็›ฎ็ฎ€ไป‹ > ไผไธš็บง IT ๆœๅŠก็ฎก็†ๅนณๅฐ็š„ๅ…จๆ–ฐๅฎšไน‰ - ่ฎฉ AI ๆˆไธบๆ‚จ็š„ๆ™บ่ƒฝ IT ๅŠฉๆ‰‹ ITSM ๆ˜ฏไธ€ไธช็ŽฐไปฃๅŒ–็š„ **AI ้ฉฑๅŠจ**ไผไธš็บง IT ๆœๅŠก็ฎก็†ๅนณๅฐ๏ผŒ้‡‡็”จ Go/Gin ๅŽ็ซฏ + Next.js/React ๅ‰็ซฏๆžถๆž„๏ผŒๆทฑๅบฆ้›†ๆˆ AI ่ƒฝๅŠ›๏ผŒๅŠฉๅŠ›ไผไธšๅฎž็Žฐ IT ๆœๅŠก็š„ๆ™บ่ƒฝๅŒ–่ฝฌๅž‹ใ€‚ ### ๆ ธๅฟƒไผ˜ๅŠฟ
| ๐Ÿค– AI ๆ™บ่ƒฝ | โšก ่‡ชๅŠจๅŒ– | ๐ŸŒ ๅคš็งŸๆˆท | ๐Ÿ“ˆ ไผไธš็บง | |:---:|:---:|:---:|:---:| | ๆ™บ่ƒฝๅˆ†็ฑป ยท RAG ็Ÿฅ่ฏ†ๅบ“ ยท ่‡ชๅŠจๆ‘˜่ฆ | BPMN ๅทฅไฝœๆต ยท ๆ™บ่ƒฝๅˆ†้… ยท ่‡ชๅŠจๅ‘Š่ญฆ | MSP ๆจกๅผ ยท ็งŸๆˆท้š”็ฆป ยท ่ต„ๆบ้…้ข | ้ซ˜ๅฏ็”จ ยท ๅฏๆ‰ฉๅฑ• ยท ๅฎ‰ๅ…จๅˆ่ง„ |
--- ## ๐Ÿš€ ๅฟซ้€Ÿๅผ€ๅง‹ ### Docker ไธ€้”ฎๅฏๅŠจ๏ผˆๆŽจ่๏ผ‰ ```bash # ๅ…‹้š†้กน็›ฎ git clone https://github.com/heidsoft/itsm.git cd itsm # ๅฏๅŠจๆ‰€ๆœ‰ๆœๅŠก make dev-up # ่ฎฟ้—ฎๅบ”็”จ # ๐ŸŒ ๅ‰็ซฏ: http://localhost:3000 # ๐Ÿ”ง ๅŽ็ซฏ: http://localhost:8080 # ๐Ÿ“š APIๆ–‡ๆกฃ: http://localhost:8080/swagger ``` > **๐Ÿ‘ค ้ฆ–ๆฌก็™ปๅฝ•**: ็”จๆˆทๅ `admin`๏ผŒๅฏ†็  `admin123` ### ๆœฌๅœฐๅผ€ๅ‘ ```bash # ๅ‰็ฝฎ่ฆๆฑ‚: Go 1.25+ | Node.js 22+ | PostgreSQL 14+ | Redis 7+ # 1. ๅฏๅŠจๆ•ฐๆฎๅบ“ docker compose up -d postgres redis # 2. ๅฏๅŠจๅŽ็ซฏ cd itsm-backend cp .env.example .env go run main.go # 3. ๅฏๅŠจๅ‰็ซฏ (ๆ–ฐ็ปˆ็ซฏ) cd itsm-frontend cp .env.example .env.local npm run dev ``` --- ## ๐Ÿ“ธ ไบงๅ“ๆˆชๅ›พ ### ๆ ธๅฟƒ็ฎก็†็•Œ้ข | ไปช่กจ็›˜ | ๅทฅๅ•็ฎก็† | |:---:|:---:| | ![ไปช่กจ็›˜](docs/images/01-ไปช่กจ็›˜.png) | ![ๅทฅๅ•็ฎก็†](docs/images/02-ๅทฅๅ•็ฎก็†.png) | | ไบ‹ไปถ็ฎก็† | ้—ฎ้ข˜็ฎก็† | |:---:|:---:| | ![ไบ‹ไปถ็ฎก็†](docs/images/03-ไบ‹ไปถ็ฎก็†.png) | ![้—ฎ้ข˜็ฎก็†](docs/images/04-้—ฎ้ข˜็ฎก็†.png) | | ๅ˜ๆ›ด็ฎก็† | CMDB ้…็ฝฎ็ฎก็† | |:---:|:---:| | ![ๅ˜ๆ›ด็ฎก็†](docs/images/06-ๅ˜ๆ›ด็ฎก็†.png) | ![CMDB](docs/images/08-cmdb.png) | | ๆœๅŠก็›ฎๅฝ• | ็Ÿฅ่ฏ†ๅบ“ | |:---:|:---:| | ![ๆœๅŠก็›ฎๅฝ•](docs/images/09-ๆœๅŠก็›ฎๅฝ•.png) | ![็Ÿฅ่ฏ†ๅบ“](docs/images/10-็Ÿฅ่ฏ†ๅบ“.png) | | ๅทฅไฝœๆตๅผ•ๆ“Ž | ่ง’่‰ฒ็ฎก็† | |:---:|:---:| | ![ๅทฅไฝœๆต](docs/images/11-ๅทฅไฝœๆต.png) | ![่ง’่‰ฒ็ฎก็†](docs/images/12-่ง’่‰ฒ็ฎก็†.png) | ### ็™ปๅฝ•็•Œ้ข ![็™ปๅฝ•](docs/images/login.png) --- ## โœจ ๆ ธๅฟƒๅŠŸ่ƒฝ ### ๐ŸŽซ ๆœๅŠก็ฎก็†
| ๅทฅๅ•็ฎก็† | ไบ‹ไปถ็ฎก็† | ้—ฎ้ข˜็ฎก็† | ๅ˜ๆ›ด็ฎก็† | |:---:|:---:|:---:|:---:| | ๆ™บ่ƒฝๅˆ†้…
SLA ไฟ้šœ
่‡ชๅŠจๅŒ–ๆต่ฝฌ | ๅฎžๆ—ถ็›‘ๆŽง
ๆ™บ่ƒฝๅ‘Š่ญฆ
ๅ‡็บง็ญ–็•ฅ | ๆ นๅ› ๅˆ†ๆž
RFC ๅ…ณ่”
็Ÿฅ่ฏ†ๆฒ‰ๆท€ | ้ฃŽ้™ฉ่ฏ„ไผฐ
ๅคš็บงๅฎกๆ‰น
ๅ›žๆปšๆ–นๆกˆ | | ๅ‘ๅธƒ็ฎก็† | ๆœๅŠก่ฏทๆฑ‚ | ๆœๅŠก็›ฎๅฝ• | ็Ÿฅ่ฏ†ๅบ“ | |:---:|:---:|:---:|:---:| | ๅ‘ๅธƒ่ฎกๅˆ’
้˜ถๆฎตๆŽงๅˆถ
ๅ›žๆปšๆ”ฏๆŒ | ่‡ชๅŠฉ้—จๆˆท
ๅฎกๆ‰นๆต็จ‹
่ฟ›ๅบฆ่ฟฝ่ธช | ๆœๅŠกOffering
SLA ๅฎšไน‰
่‡ชๅŠฉ็”ณ่ฏท | RAG ๆฃ€็ดข
ๆ™บ่ƒฝ้—ฎ็ญ”
็Ÿฅ่ฏ†ๆŽจ่ |
### ๐Ÿ”€ BPMN ๅทฅไฝœๆตๅผ•ๆ“Ž ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿ—๏ธ ๅฏ่ง†ๅŒ–่ฎพ่ฎกๅ™จ โ”‚ ๐Ÿ“Š ๆต็จ‹็›‘ๆŽง โ”‚ ๐Ÿ”’ ๆƒ้™ๆŽงๅˆถ โ”‚ ๐Ÿ“ ๅฎก่ฎกๆ—ฅๅฟ— โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ ๆ‹–ๆ‹ฝๅผๆต็จ‹่ฎพ่ฎก โ”‚ ๅฎžๆ—ถ่ฟฝ่ธช โ”‚ ็ฒพ็ป†ๆƒ้™ โ”‚ ๅ…จ็จ‹่ฎฐๅฝ• โ”‚ โ”‚ BPMN 2.0 ๆ ‡ๅ‡† โ”‚ ๆ€ง่ƒฝๅˆ†ๆž โ”‚ ่ง’่‰ฒ็ป‘ๅฎš โ”‚ ๅˆ่ง„่ฟฝๆบฏ โ”‚ โ”‚ ็‰ˆๆœฌ็ฎก็† โ”‚ SLA ้›†ๆˆ โ”‚ ๆ•ฐๆฎ้š”็ฆป โ”‚ ๆŠฅ่กจๅฏผๅ‡บ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### ๐Ÿค– AI ๆ™บ่ƒฝๆ ธๅฟƒ | ๅŠŸ่ƒฝ | ่ฏดๆ˜Ž | ๆ•ˆๆžœ | |:---|:---|:---| | ๐ŸŽฏ **ๆ™บ่ƒฝๅˆ†็ฑป** | ML ่‡ชๅŠจ่ฏ†ๅˆซๅทฅๅ•็ฑปๅž‹ใ€ไผ˜ๅ…ˆ็บง | ๅˆ†็ฑปๅ‡†็กฎ็އ 95%+ | | ๐Ÿ“ **่‡ชๅŠจๆ‘˜่ฆ** | LLM ็”Ÿๆˆๅทฅๅ•/ไบ‹ไปถๆ‘˜่ฆ | ่Š‚็œ 70% ้˜…่ฏปๆ—ถ้—ด | | ๐Ÿ” **RAG ็Ÿฅ่ฏ†ๅบ“** | ๅ‘้‡ๆฃ€็ดข + ๅคงๆจกๅž‹้—ฎ็ญ” | ็Ÿฅ่ฏ†ๆŸฅๆ‰พ็ง’็บงๅ“ๅบ” | | ๐Ÿ’ก **ๆ™บ่ƒฝๆŽจ่** | ๆŽจ่่งฃๅ†ณๆ–นๆกˆใ€็›ธไผผๅทฅๅ• | ๆๅ‡่งฃๅ†ณๆ•ˆ็އ 50%+ | | ๐Ÿ‘ท **ๆ™บ่ƒฝๅˆ†้…** | ๅŸบไบŽๆŠ€่ƒฝ/่ดŸ่ฝฝ็š„่‡ชๅŠจๆดพๅ• | ๆดพๅ•ๅ‡†็กฎ็އ 90%+ | | ๐Ÿ“Š **่ถ‹ๅŠฟ้ข„ๆต‹** | ๆ—ถๅบ้ข„ๆต‹ไบ‹ไปถ่ถ‹ๅŠฟ | ๆๅ‰้ข„่ญฆๅฎน้‡้ฃŽ้™ฉ | ### ๐ŸŒ MSP ๅคš็งŸๆˆท
``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿข MSP ๆœๅŠกๅ•† โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ฌโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ ๐Ÿข ็งŸๆˆท A โ”‚ ๐Ÿข ็งŸๆˆท B โ”‚ ๐Ÿข ็งŸๆˆท C โ”‚ ... โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ค โ”‚ ๐Ÿ“Š ่ต„ๆบ้…้ข โ”‚ ๐Ÿ’ฐ ่ฎก่ดน็ฎก็† โ”‚ ๐Ÿ” ็›‘ๆŽงๅ‘Š่ญฆ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ```
- ๆœๅŠกๅ•† (MSP) ่ง†่ง’็š„ๅ…จๅฑ€็ฎก็† - ็งŸๆˆท่ต„ๆบๅˆ†้…ไธŽ้…้ขๆŽงๅˆถ - ่ทจ็งŸๆˆทๆœๅŠก็›ฎๅฝ• - ็ปŸไธ€็›‘ๆŽงไธŽๆŠฅ่กจ ### ๐Ÿ“Š SLA ็›‘ๆŽงไฝ“็ณป - ๅคš็บงๅˆซ SLA ็ญ–็•ฅ้…็ฝฎ - ๅฎžๆ—ถๅˆ่ง„็އ็›‘ๆŽง้ขๆฟ - ่ฟ็บฆ้ข„่ญฆไธŽ่‡ชๅŠจๅ‡็บง - ๅฎŒๆ•ด็š„ SLA ๆŠฅ่กจๅˆ†ๆž --- ## ๐Ÿ— ๆŠ€ๆœฏๆžถๆž„ ### ๆŠ€ๆœฏๆ ˆ
**ๅŽ็ซฏ** | Go 1.25+ | Gin | Ent ORM | PostgreSQL | Redis | BPMN Engine **ๅ‰็ซฏ** | Next.js 15 | React 19 | TypeScript | Ant Design 6 | Tailwind CSS | Zustand
### ็ณป็ปŸๆžถๆž„ๅ›พ ``` โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿ–ฅ๏ธ ๅฎขๆˆท็ซฏๅฑ‚ โ”‚ โ”‚ Web (Next.js) โ”‚ ็งปๅŠจ็ซฏ PWA โ”‚ API โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐ŸŒ ๆŽฅๅ…ฅๅฑ‚ (Nginx) โ”‚ โ”‚ ่ดŸ่ฝฝๅ‡่กก / SSL ็ปˆๆญข / ้™ๆ€่ต„ๆบ็ผ“ๅญ˜ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”ดโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ–ผ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐ŸŒ Next.js ๅ‰็ซฏ โ”‚ โ”‚ โš™๏ธ Go ๅŽ็ซฏ API โ”‚ โ”‚ ็ซฏๅฃ: 3000 โ”‚ โ”‚ ็ซฏๅฃ: 8090 โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ”œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ–ผ โ–ผ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ PostgreSQL โ”‚ โ”‚ Redis โ”‚ โ”‚ โ”‚ ็ซฏๅฃ:5432 โ”‚ โ”‚ 6379 โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ”‚ โ”‚ โ”‚ โ–ผ โ”‚ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ โ”‚ ๐Ÿค– AI ๆœๅŠกๅฑ‚ โ”‚ โ”‚ โ”‚ RAG / ๅˆ†็ฑป / ๆ‘˜่ฆ โ”‚ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ โ–ผ โ”Œโ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ” โ”‚ ๐Ÿ’พ ๅญ˜ๅ‚จๅฑ‚ โ”‚ โ”‚ ๆ–‡ไปถๅญ˜ๅ‚จ (MinIO/S3) โ”‚ ๅ‘้‡ๅญ˜ๅ‚จ (Chroma) โ”‚ ๅฏน่ฑกๅญ˜ๅ‚จ โ”‚ โ””โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”˜ ``` ### ๆ•ฐๆฎๆจกๅž‹ (100+ ๅฎžไฝ“) ``` ๆ ธๅฟƒๆจกๅ— ๆ‰ฉๅฑ•ๆจกๅ— BPMN ๅทฅไฝœๆต MSP ๅคš็งŸๆˆท โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€โ”€ โ”œโ”€ ๅทฅๅ• โ”œโ”€ ๆœๅŠก็›ฎๅฝ• โ”œโ”€ ๆต็จ‹ๅฎšไน‰ โ”œโ”€ ็งŸๆˆท โ”œโ”€ ไบ‹ไปถ โ”œโ”€ ็Ÿฅ่ฏ†ๅบ“ โ”œโ”€ ๆต็จ‹ๅฎžไพ‹ โ”œโ”€ ้ƒจ้—จ โ”œโ”€ ้—ฎ้ข˜ โ”œโ”€ SLA โ”œโ”€ ๆต็จ‹ไปปๅŠก โ”œโ”€ ๅ›ข้˜Ÿ โ”œโ”€ ๅ˜ๆ›ด โ”œโ”€ ๅฎกๆ‰น้“พ โ”œโ”€ ๆต็จ‹ๅ˜้‡ โ”œโ”€ ้กน็›ฎ โ”œโ”€ ๅ‘ๅธƒ โ”œโ”€ ้€š็Ÿฅ โ”œโ”€ ๅฎก่ฎกๆ—ฅๅฟ— โ””โ”€ ่ต„ๆบๅˆ†้… โ”œโ”€ ่ต„ไบง โ””โ”€ ๆŠฅ่กจ โ””โ”€ ๆƒ้™ๆŽงๅˆถ โ””โ”€ ่ฎธๅฏ่ฏ ``` --- ## ๐Ÿ“š ๆ–‡ๆกฃๅฏผ่ˆช | ๐Ÿ“– [ๅผ€ๅ‘ๆŒ‡ๅ—](./docs/DEVELOPMENT.md) | ๐Ÿš€ [้ƒจ็ฝฒๆŒ‡ๅ—](./DEPLOYMENT.md) | โš™๏ธ [้…็ฝฎๅ‚่€ƒ](./docs/CONFIGURATION.md) | |:---:|:---:|:---:| | ๅผ€ๅ‘็Žฏๅขƒๆญๅปบ | Docker/K8s ้ƒจ็ฝฒ | ็Žฏๅขƒๅ˜้‡่ฏฆ่งฃ | | ๐Ÿ—„๏ธ [ๆ•ฐๆฎๅบ“](./docs/DATABASE.md) | ๐Ÿ”ง [่ฟ็ปดๆ‰‹ๅ†Œ](./docs/OPERATIONS.md) | ๐Ÿ” [ๅฎ‰ๅ…จๆŒ‡ๅ—](./docs/SECURITY.md) | |:---:|:---:|:---:| | ่ฟ็งปไธŽๅค‡ไปฝ | ๆ—ฅๅฟ—ไธŽ็›‘ๆŽง | ๆƒ้™ไธŽๅฎก่ฎก | | ๐Ÿ› ๏ธ [่‡ชๅŠจๅŒ–ๆต‹่ฏ•](./itsm-frontend/tests/e2e) | |:---:| | E2E ๆต‹่ฏ• | --- ## ๐Ÿ› ๏ธ ๅธธ็”จๅ‘ฝไปค ```bash # Docker ๅผ€ๅ‘็Žฏๅขƒ make dev-up # ๅฏๅŠจๆ‰€ๆœ‰ๆœๅŠก (ๅ‰็ซฏ:3000 | ๅŽ็ซฏ:8080) make dev-down # ๅœๆญขๆœๅŠก make dev-logs # ๆŸฅ็œ‹ๆ—ฅๅฟ— # ๆต‹่ฏ• cd itsm-frontend && npm run test:e2e # E2E ๆต‹่ฏ• cd itsm-backend && go test ./... # ๅŽ็ซฏๆต‹่ฏ• ``` --- ## ๐Ÿค ๅ‚ไธŽ่ดก็Œฎ ๆฌข่ฟŽๆไบค Pull Request๏ผ่ฏท้˜…่ฏป [CONTRIBUTING.md](./CONTRIBUTING.md) ไบ†่งฃ่ฏฆๆƒ…ใ€‚ ```bash # 1. Fork ้กน็›ฎ # 2. ๅˆ›ๅปบๅˆ†ๆ”ฏ git checkout -b feature/amazing-feature # 3. ๆไบคๆ›ดๆ”น git commit -m "feat: add amazing feature" # 4. ๆŽจ้€ๅˆ†ๆ”ฏ git push origin feature/amazing-feature ``` ### ไปฃ็ ่ง„่Œƒ - โœ… Go: ไฝฟ็”จ `gofumpt` ๆ ผๅผๅŒ– - โœ… TypeScript: ESLint + Prettier - โœ… ๆไบคไฟกๆฏ: [Conventional Commits](https://www.conventionalcommits.org/) - โœ… ๆต‹่ฏ•: ๆ–ฐๅขžๅŠŸ่ƒฝ้œ€้…ๅฅ—ๆต‹่ฏ• --- ## ๐Ÿ“„ ่ฎธๅฏ่ฏ Apache License 2.0 - ๅผ€ๆบๅ…่ดน๏ผŒไผไธš็บงๅ•†็”จ้ฆ–้€‰ > **ๅ•†ไธšๅŒ–ๆŽˆๆƒๅฃฐๆ˜Ž**: ๅฆ‚้œ€ๅฐ†ๆœฌ้กน็›ฎ็”จไบŽๅ•†ไธšไบงๅ“๏ผŒ่ฏท่ฎฟ้—ฎ [ๅฎ˜็ฝ‘](https://cloudmesh.top/) ่Žทๅ–ๅ•†ไธšๆŽˆๆƒใ€‚ๆœช็ปๆŽˆๆƒ็š„ๅ•†ไธšไฝฟ็”จๅฐ†่ง†ไธบไพตๆƒ่กŒไธบใ€‚ --- ## ๐Ÿ“ž ่”็ณปๆˆ‘ไปฌ
๐Ÿ™ **GitHub**: [heidsoft/itsm](https://github.com/heidsoft/itsm) ๐Ÿ’ฌ **่ฎจ่ฎบ**: [Discussions](https://github.com/heidsoft/itsm/discussions) ๐Ÿ› **้—ฎ้ข˜**: [Issues](https://github.com/heidsoft/itsm/issues) ๐Ÿ“ง **Email**: heidsoft@qq.com
---
**โญ ๅฆ‚ๆžœ่ฟ™ไธช้กน็›ฎๅฏนๆ‚จๆœ‰ๅธฎๅŠฉ๏ผŒ่ฏท Star ๆ”ฏๆŒ๏ผ** Made with โค๏ธ by ITSM Team