AI-native ๆบ่ฝ่ฟ็ปดๅนณๅฐ โ ๅฐ LLM ่ฝๅๆทฑๅบฆ้ๆๅฐๆๅกๅจ่ฟ็ปดๅ จ้พ่ทฏ
ๅฟซ้ๅผๅง ยท ๆ ธๅฟ็นๆง ยท ๆถๆ ยท ้จ็ฝฒ ยท ๅผๅ
AIOps Codex ๆฏไธไธช้ขๅ็ไบง็ฏๅข็ AI ่ฟ็ปดๅนณๅฐ๏ผ้่ฟ Chat / Workspace / Runner ไธ็งไบคไบๆจกๅผ๏ผ่ฎฉ่ฟ็ปดๅทฅ็จๅธไปฅ่ช็ถ่ฏญ่จ้ฉฑๅจๆๅกๅจๅทกๆฃใๆ ้่ฏๆญใๅๆดๆง่กๅ็ๆงๅๆใ
ๅนณๅฐ้ป่ฎค้่ฟ Bifrost LLM Gateway ่ฟๆฅๆจกๅๆไพๆน๏ผๆฏๆ OpenAIใAnthropicใOllama๏ผๅ้่ฟ Host Agent ๅฎๅ จๆฅๅ ฅ็ฎๆ ไธปๆบ๏ผๆๆๅๆดๆไฝ็ป่ฟ็ปไธๅฎกๆนๅฎก่ฎก๏ผ็กฎไฟ AI ่พ ๅฉ่ฟ็ปด็ๅฏๆงๆงๅๅฏ่ฟฝๆบฏๆงใ
- Chat ๆจกๅผ โ ่ช็ถ่ฏญ่จๅฏน่ฏ๏ผAI ่ชๅจ้ๆฉๅทฅๅ ทๆง่ก่ฟ็ปดๆไฝ
- Workspace ๅไฝ โ ๅคไธปๆบ็ผๆ๏ผๆฏๆ Planner โ Worker ไปปๅกๅ่งฃ
- Runner ่ๆฌ โ ๅฏๅค็จ็่ชๅจๅ่ๆฌ๏ผๅธฆๅๆฐ schema ๅ dry-run ้ข่ง
- ็ปไธๅฎกๆนๆต โ ๆๆๅๆดๅฝไปค็ปๅฎกๆนๅๆง่ก๏ผๆฏๆๆๅจๅฎกๆนๅ่ชๅจๆพ่ก
- ๅฎกๆ ธๆตๆฐด โ ็ปๆๅๅฎก่ฎกๆฅๅฟ๏ผๆฏๆๆๆถ้ด/ไธปๆบ/ๆไฝไบบ/ๅณ็ญๅค็ปด็ญ้
- ไธปๆบ็บงๆๆ็ฝๅๅ โ ๅทฒๆๆๅฝไปค่ชๅจ้่ฟ๏ผๆฏๆๆค้ใ็ฆ็จใTTL ่ฟๆ
- ้ซ้ฃ้ฉๅฝไปคๆฆๆช โ
rm -rf /ใsudo su็ญๅฑ้ฉๅฝไปคๅผบๅถ่ฆๆฑ TTL
| ๅฑ็บง | ่ฏดๆ | ๅฎกๆน็ญ็ฅ |
|---|---|---|
| Structured Read | 14 ไธชๆ ๅๅๅช่ฏปๆฅๅฃ (host.summary, host.process.top ็ญ) |
ๅ ๅฎกๆน |
| Controlled Mutation | 5 ไธชๅๆงๅๆดๆฅๅฃ (service.restart, config.apply ็ญ) |
ๅผบๅถๅฎกๆน |
| Raw Shell | ๅๅงๅฝไปคๆง่กๅ ๅบ | ๆ็ญ็ฅๅฎกๆน |
- ๆๅกๅฅๅบทๆป่ง โ ๅตๅ ฅ Coroot ๆๅก่งๅพ๏ผๅฎๆถๅฑ็คบๅฅๅบท/ๅ่ญฆ/ๅผๅธธ็ถๆ
- 7 ไธช MCP ๅจๆๅทฅๅ
ท โ
coroot.list_servicesใcoroot.service_metricsใcoroot.rca_report็ญ - ็ๆงๅ ๅต AI โ ๅจ็ๆง้กต้ข็ดๆฅ่ฐ็จ AI ๅๆ๏ผๆฏๆ้ขๆฟ่งฃ้ใๅผๅธธๅฝๅ ใไฟฎๅคๅปบ่ฎฎ
- ๅก็ๆ ๅฐ โ Coroot ๆฅ่ฏข็ปๆ่ชๅจๆ ๅฐไธบ็ปๆๅ UI ๅก็
- Skills ็ฎก็ โ ๅ ็ฝฎ + ่ชๅฎไนๆ่ฝ๏ผๆฏๆๅ็ฑปใ็ๆฌใๅฏ็จ/็ฆ็จ
- MCP Servers โ ็ปไธ็ฎก็ MCP ๅทฅๅ ทๆๅก๏ผๆฏๆๆขๆดปๅๆ้ๆงๅถ
- ่ฝๅ็ปๅฎ โ Skill/MCP ไธ Agent ProfileใWorkspace PresetใUI Card ็็ปๅฎๅ ณ็ณป
- 9 ็งๅ ็ฝฎๅก็ โ ๆ่ฆๅกใKPI ๆกใๆถๅบๅพใ็ถๆ่กจใๆงๅถ้ขๆฟใๆไฝ่กจๅใ็ๆง่ๅใไฟฎๅค่ๅ
- ๅก็็ฎก็ๅๅฐ โ ๅ ๆฐๆฎ็ผ่พใ่งฆๅ่ฐ่ฏๅจใๅฎๆถ้ข่ง
- Bundle ๆบๅถ โ Monitor Bundle ๅ Remediation Bundle ่ๅๅคๅก็
- Lab ็ฏๅข โ ๅๅปบ้็ฆป็ๆฒ็็ฏๅข๏ผๆจกๆๅค่็นๆๆ
- ๅบๆฏๆจกๆฟ โ ้ข็ฝฎๅๅฑๆถๆใไธๅฑๅพฎๆๅกใ็ผๅญๅฑ็ญๆๆๆจกๆฟ
- ๆ ้ๆณจๅ ฅ โ ๅฏน mock ่็นๆณจๅ ฅๆ ้๏ผ้ช่ฏๅ่ญฆๅๅบๅไฟฎๅคๆต็จ
- v1 Mock ๆจกๅผ โ ๅ็ซฏๅฏๆญฃๅธธๆธฒๆ bundle ๅ control panel๏ผๅฝไปค่ฟๅๆจกๆ็ปๆ
- ่ชๅจ็ๆ โ ไป MCP Tool โ Skill ่็จฟใScript Config โ UI Card ่็จฟใCoroot โ Bundle Preset ่็จฟ
- 4 ๆญฅๆต็จ โ Generate โ Lint โ Preview โ Publish Draft
- ่็จฟ้็ฆป โ ๆๆ็ๆ็ฉ้ป่ฎค draft ็ถๆ๏ผไธ่ชๅจไธ็บฟ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ Web Dashboard โ
โ Vue 3 + Pinia + Vue Router + Lucide Icons โ
โ Chat โ Workspace โ Terminal โ ็ๆง โ ็ฎก็ๅๅฐ โ
โโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ HTTP / WebSocket
โโโโโโโโโโโโโโโโโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โ AI Server (Go) โ
โ โ
โ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โ
โ โ Session โ โ Approval โ โ Dynamic โ โ Orchestrator โ โ
โ โ Manager โ โ & Audit โ โ Tools โ โ (Workspace) โ โ
โ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โ
โ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โ
โ โ Agent โ โ Coroot โ โ UI Card โ โ Generator โ โ
โ โ Profile โ โ Client โ โ Store โ โ Service โ โ
โ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโ โโโโโโโโโโโโโโโโโ โ
โ โ โ
โ Bifrost provider routing โ
โ โผ โ
โ Bifrost LLM Gateway (Go) โ
โ โ โ
โ OpenAI / Anthropic / Ollama / OpenAI-compatible โ
โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโค
โ HTTP :8080 gRPC :18090 Coroot Proxy :8080/coroot โ
โโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโโโฌโโโโโโโโโโโโโโโโโโโโโโโโ
โ gRPC ๅๅๆต โ HTTP Reverse Proxy
โโโโโโโโโโโโโโผโโโโโโโโโโโ โโโโโโโโโโโผโโโโโโโโโโโโโโโโโโโโโโโ
โ Host Agent (Go) โ โ Coroot Server (ๅค้จ) โ
โ ๆฏๅฐ็ฎๆ ไธปๆบไธไธชๅฎไพ โ โ ๆๅก็ๆง / ๆๆ / RCA โ
โ ็ป็ซฏ / ๆง่ก / ๆไปถ โ โโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโโ
โโโโโโโโโโโโโโโโโโโโโโโโโ
| ๅฑ็บง | ๆๆฏ |
|---|---|
| ๅ็ซฏ | Vue 3, Pinia, Vue Router, Lucide Icons, Monaco Editor, xterm.js |
| ๅ็ซฏ | Go 1.26, gRPC, net/http |
| AI ๅผๆ | Bifrost LLM Gateway, ๆฏๆ OpenAI / Anthropic / Ollama |
| ็ๆง้ๆ | Coroot (HTTP Client + Reverse Proxy) |
| ๆไน ๅ | JSON ๆไปถ (ๅ ๅญ + ๅผๆญฅๅ็, sync.RWMutex) |
| ๆต่ฏ | Vitest, Playwright, Go testing |
| ้จ็ฝฒ | Docker, Docker Compose, systemd |
aiops-codex/
โโโ cmd/
โ โโโ ai-server/ # AI Server ไธปๅ
ฅๅฃ
โ โโโ host-agent/ # Host Agent ไธปๅ
ฅๅฃ
โโโ internal/
โ โโโ bifrost/ # ๅค provider LLM Gateway
โ โโโ agentloop/ # Bifrost ReAct loop / context / workspace runtime
โ โโโ server/ # HTTP/gRPC ๆๅกใAPI ่ทฏ็ฑใๅฎกๆนๆต็จ
โ โโโ store/ # ๅ
ๅญๅญๅจ + JSON ๆไน
ๅ
โ โโโ model/ # ๆฐๆฎๆจกๅๅฎไน
โ โโโ config/ # ้
็ฝฎ็ฎก็
โ โโโ coroot/ # Coroot HTTP ๅฎขๆท็ซฏ
โ โโโ generator/ # Skill/Card/Bundle ่ชๅจ็ๆๆๅก
โ โโโ orchestrator/ # Workspace ็ผๆๅผๆ
โ โโโ agentrpc/ # gRPC ๅ่ฎฎๅฎไน
โโโ web/
โ โโโ src/
โ โ โโโ pages/ # 16 ไธช Vue ้กต้ข
โ โ โโโ components/ # ๅฏๅค็จ็ปไปถ (Coroot Embed, Monitor AI ็ญ)
โ โ โโโ lib/ # ๅทฅๅ
ทๅบ (MCP Bundle Resolver ็ญ)
โ โ โโโ store.js # Pinia ๅ
จๅฑ็ถๆ
โ โโโ tests/
โ โโโ *.spec.js # Vitest ็ปไปถๆต่ฏ (24 ไธชๆไปถ, 151 ๆต่ฏ)
โ โโโ e2e/ # Playwright E2E ๆต่ฏ (6 ไธชๆไปถ, 55 ๆต่ฏ)
โโโ deploy/docker/ # Docker ๆๅปบๅ็ผๆ
โโโ proto/ # Protobuf ๅฎไน
โโโ docs/ # ๆถๆๆๆกฃ
โโโ scripts/ # ่ฟ็ปด่ๆฌ
- Go 1.26+
- Node.js 22+
- Docker & Docker Compose (้จ็ฝฒ็จ)
- LLM provider ๅญ่ฏๆๆฌๅฐๆจกๅๆๅก
# ๅ
้ไปๅบ
git clone https://github.com/lizhongxuan/aiops-codex.git
cd aiops-codex
# ๅฏๅจๅ็ซฏ
export LLM_PROVIDER=openai
export LLM_API_KEY=sk-xxx
go run ./cmd/ai-server
# ๅฏๅจๅ็ซฏ (ๅฆไธไธช็ป็ซฏ)
cd web
npm install
npm run dev
# ่ฎฟ้ฎ http://localhost:5173cd deploy/docker
cp .env.example .env
# ็ผ่พ .env ๅกซๅ
ฅ LLM_PROVIDER / LLM_API_KEY / LLM_BASE_URL ๅ HOST_AGENT_BOOTSTRAP_TOKEN
# OpenAI-compatible ๆๅกๆ Ollama ๅฏ้่ฟ LLM_BASE_URL ๆๅฎ่ชๅฎไนๅฐๅ
docker compose build
docker compose up -d
# ่ฎฟ้ฎ http://localhost:18080่ฏฆ็ป้จ็ฝฒๆๆกฃ่ง deploy/docker/README.mdใ
ไธบ้ฟๅ prompt ่งๅๅๆฌกๆฃ่ฝๅฐๅคไธชๆไปถ๏ผๅฝๅไปๅบ้ตๅพช่ฟ็ป็บฆๆ๏ผ
BuildSystemPrompt()ๅช่ด่ดฃ้็จ่บซไปฝใๅฎๅ จ่พน็ใๅฎกๆนไธๆฒ็ฎฑ่ฏดๆ๏ผไธๆฟ่ฝฝๅ็ฑปไธๅก่งๅใ- tool ็่ฝๅใ่พๅ ฅ้ๅถใhost/path/shell/approval ็บฆๆๅชๅๅจ tool-owned prompt spec๏ผไธๅจ developer instructions ้้ๅคๅฑๅผใ
TurnPolicyๅชๆ่ฟฐ็ปๆๅๅๅ๏ผKnowledgeFreshnessEvidenceContractAnswerContractMinimumIndependentSourcesRequireSourceAttributionRequiredCitationKindsAllowEarlyStop
- ๅฝๅ/ๅค้จ factual query ็่ฆๆฑๆ้็จ freshness/evidence contract ๅคๆญ๏ผไธๅ ่ฎธๅ็ปดๆค่กไธๆๅธๅบไธ็จๅ ณ้ฎ่ฏ็ฝๅๅใ
- completion/final-gate repair ๅชๅ
่ฎธ่ฏดๆโ็ผบไบไปไนใไธไธๆญฅ่ฏฅ่ฐ็จไปไนๅทฅๅ
ทโ๏ผไธๅ
่ฎธๅๆณจๅ
ฅ market-specific answer style๏ผไพๅฆ๏ผ
compact snapshot1-2 sourcesanswer now
- ๆ็ดข็ฑปๆ็ปๅ็ญๅฆๅฝไธญ
sourced_snapshotๆexternal_factsๅๅ๏ผๅฟ ้กปๆปก่ถณ็ฌ็ซๆฅๆบๅๆฅๆบๅฝๅ ่ฆๆฑ๏ผ่ฟ็ฑป่ฆๆฑ็ฑTurnPolicyๅ final gate ไฟ่ฏ๏ผไธ้ tool prose ไธดๆถๅ ๅบใ
ๅฆๆๅ็ปญ้่ฆๆฐๅข prompt ่งๅ๏ผ่ฏทไผๅ ๅคๆญๅฎๅฑไบ๏ผ
- ้็จ system rule
- tool-owned contract
TurnPolicy็ปๆๅ็บฆๆ- ๆๅฐๆฐ runtime repair
ไธ่ฆๆๅไธๆก่งๅๅๆถๅ่ฟ system promptใdeveloper instructionsใtool description ๅ loop nudgeใ
| ็ซฏ็น | ๆนๆณ | ่ฏดๆ |
|---|---|---|
/api/v1/healthz |
GET | ๅฅๅบทๆฃๆฅ |
/api/v1/state |
GET | ๅ จๅฑ็ถๆๅฟซ็ ง |
/api/v1/chat/message |
POST | ๅ้่ๅคฉๆถๆฏ |
/api/v1/approvals/{id} |
POST | ๅฎกๆนๅณ็ญ |
| ็ซฏ็น | ๆนๆณ | ่ฏดๆ |
|---|---|---|
/api/v1/approval-audits |
GET | ๅฎกๆ ธๆตๆฐดๅ่กจ (ๆฏๆ็ญ้/ๅ้กต) |
/api/v1/approval-audits/{id} |
GET | ๅฎกๆ ธๆตๆฐด่ฏฆๆ |
/api/v1/approval-grants |
GET/POST | ๆๆ็ฝๅๅ็ฎก็ |
/api/v1/approval-grants/{id}/revoke |
POST | ๆค้ๆๆ |
/api/v1/approval-grants/{id}/disable |
POST | ็ฆ็จๆๆ |
/api/v1/approval-grants/{id}/enable |
POST | ๅฏ็จๆๆ |
| ็ซฏ็น | ๆนๆณ | ่ฏดๆ |
|---|---|---|
/api/v1/capability-bindings |
CRUD | ่ฝๅ็ปๅฎ็ฎก็ |
/api/v1/ui-cards |
CRUD | UI ๅก็ๅฎไน็ฎก็ |
/api/v1/ui-cards/{id}/preview |
POST | ๅก็้ข่ง |
/api/v1/script-configs |
CRUD | ่ๆฌ้ ็ฝฎ็ฎก็ |
/api/v1/script-configs/{id}/dry-run |
POST | ่ๆฌ Dry-Run |
/api/v1/lab-environments |
CRUD | ๆฒ็็ฏๅข็ฎก็ |
/api/v1/lab-environments/{id}/start |
POST | ๅฏๅจๆฒ็ |
/api/v1/lab-environments/{id}/inject |
POST | ๆ ้ๆณจๅ ฅ |
/api/v1/lab-environments/{id}/reset |
POST | ้็ฝฎๆฒ็ |
| ็ซฏ็น | ๆนๆณ | ่ฏดๆ |
|---|---|---|
/api/v1/coroot/* |
GET | Coroot ๅๅไปฃ็ (ๅช่ฏป) |
/api/v1/generator/generate |
POST | ็ๆ Skill/Card ่็จฟ |
/api/v1/generator/lint |
POST | ๆ ก้ช่็จฟ |
/api/v1/generator/preview |
POST | ้ข่ง่็จฟ |
/api/v1/generator/publish-draft |
POST | ๅๅธ่็จฟ |
# Go ๅ็ซฏๆต่ฏ
go test ./internal/... -count=1
# ๅ็ซฏ็ปไปถๆต่ฏ (Vitest)
cd web && npm test
# ๅ็ซฏ E2E ๆต่ฏ (Playwright)
cd web && npx playwright test| ็ฑปๅซ | ๆไปถๆฐ | ๆต่ฏๆฐ |
|---|---|---|
| Go ๅๅ ๆต่ฏ | 20+ | 80+ |
| Vitest ็ปไปถๆต่ฏ | 24 | 151 |
| Playwright E2E | 6 | 55 |
Agent Profile ๆงๅถ AI ็ๆ้่พน็๏ผๅไธบไธค็บง๏ผ
- main-agent โ ๅ จๅฑ็ญ็ฅ๏ผๆงๅถๆๆไผ่ฏ็ๅบ็บฟๆ้
- host-agent-default โ ่ฟ็จไธปๆบ้ป่ฎค็ญ็ฅ๏ผไธ main-agent ๅไบค้
็ญ็ฅ็ปดๅบฆ๏ผ
capabilityPermissions:
commandExecution: enabled | approval_required | disabled
fileRead: enabled
fileChange: approval_required
terminal: enabled
commandPermissions:
defaultMode: allow | approval_required | readonly_only | deny
allowSudo: false
categoryPolicies:
service_mutation: approval_required
package_mutation: deny- ๆๆๅๆดๅฝไปค็ป็ปไธๅฎกๆนๆต็จ
- Host Agent ้่ฟ Bootstrap Token + ๅฏ้ mTLS ่ฎค่ฏ
- ็ปๆๅๆฅๅฃๅๆฐๆ ก้ช๏ผๆ็ป shell ๆณจๅ
ฅ (
;,&&,`,$(็ญ) - ้ซ้ฃ้ฉๅฝไปค (
rm -rf /,sudo su,iptables -F) ็ฆๆญขๅๅปบๆ TTL ๆๆ - Coroot ไปฃ็ไป ๅ ่ฎธๅช่ฏป่ทฏๅพ๏ผGET ๆนๆณ
- ๆฒ็็ฏๅขไธ็ไบงๅฎๅ จ้็ฆป๏ผmock host Kind="lab"
- ๆๆ็ๆ็ฉ้ป่ฎค draft ็ถๆ๏ผไธ่ชๅจๅ ่ฝฝๆง่ก
MIT