არქიტექტურის მიმოხილვა
პაიპლაინის არქიტექტურა
Section titled “პაიპლაინის არქიტექტურა”┌─────────────────────────────────────────────────────────────┐│ OpenPR (Plan) ││ Issues · Boards · Sprints · Governance · MCP · Webhooks │└──────────┬──────────────────────────────────┬───────────────┘ │ ამოცანის გაშვება │ შედეგის გამოძახება ▼ ▲┌──────────────────────┐ ┌────────────────────┐│ openpr-webhook │ │ AI აგენტი ││ მოვლენების მარშრუტიზაცია│── გაშვება ──│ Codex / Claude / ││ WSS ტუნელი │ │ OpenCode │└──────────┬───────────┘ └────────┬───────────┘ │ │ ▼ ▼┌──────────────────────────────────────────────────────────┐│ PRX (Think) ││ 19 არხი · 14 პროვაიდერი · როუტერი · ქვეაგენტები ││ თვითევოლუცია · უსაფრთხოების პოლიტიკა · MCP კლიენტი │└──────────┬──────────┬──────────┬──────────┬──────────────┘ │ │ │ │ ▼ ▼ ▼ ▼ prx-memory prx-email Fenfa WAF + SD (Build) (Build) (Ship) (Protect)კომუნიკაციის პროტოკოლები
Section titled “კომუნიკაციის პროტოკოლები”MCP (Model Context Protocol)
Section titled “MCP (Model Context Protocol)”ინტეგრაციის ძირითადი პროტოკოლი. OpenPR აქვეყნებს 34 MCP ინსტრუმენტს HTTP, stdio და SSE ტრანსპორტების საშუალებით. PRX უკავშირდება როგორც MCP კლიენტი.
ვებჰუკები
Section titled “ვებჰუკები”OpenPR ასხივებს 30 ტიპის მოვლენას HMAC-SHA256 ხელმოწერილი ვებჰუკების საშუალებით. openpr-webhook სერვისი იღებს ამ მოვლენებს და ანაწილებს სამუშაოს ხელოვნური ინტელექტის აგენტებზე.
WSS ტუნელი
Section titled “WSS ტუნელი”NAT/ფაიერვოლის უკან მყოფი აგენტებისთვის, openpr-webhook მხარს უჭერს გამავალ WebSocket ტუნელს OpenPR-ის სამართავ სიბრტყესთან. ამოცანები მიიღება, დასტურდება, შესრულდება და შედეგები ბრუნდება ტუნელის საშუალებით.
მონაცემთა ნაკადი
Section titled “მონაცემთა ნაკადი”ამოცანა → გამოსწორება → გაშვება
Section titled “ამოცანა → გამოსწორება → გაშვება”- ამოცანა შეიქმნა OpenPR-ში (ხელით ან API-ის საშუალებით)
- ბოტის ამოცანა მინიჭებული — OpenPR ასხივებს
issue.createdვებჰუკს ბოტის კონტექსტით - ვებჰუკის დისპეტჩერი იღებს მოვლენას, ადარებს აგენტის კონფიგურაციას
- CLI შემსრულებელი უშვებს კოდირების აგენტს (მაგ.,
claude-code) შაბლონური პრომპტით - აგენტი მუშაობს — კითხულობს კოდს, აკეთებს ცვლილებებს, უშვებს ტესტებს
- აგენტი იყენებს prx-memory-ს MCP-ის საშუალებით წარსული შაბლონების გასახსენებლად და ახალი ცოდნის შესანახად
- შედეგის გამოძახება — აგენტი აგზავნის შედეგებს OpenPR-ში MCP/API-ის საშუალებით
- მდგომარეობის გადასვლა — ამოცანა გადადის
in_progress-დანdone-ზე - CI აშენებს — სტანდარტული CI/CD პაიპლაინი აწარმოებს არტეფაქტებს
- Fenfa ანაწილებს — აშენებული არტეფაქტები აიტვირთება API-ის საშუალებით, ნაწილდება ყველა პლატფორმაზე
უსაფრთხოების ციკლი
Section titled “უსაფრთხოების ციკლი”- WAF აკონტროლებს შემავალ HTTP ტრაფიკს 17 გამოვლენის ფაზით
- SD სკანირებს ფაილებს ბოლო წერტილებზე ჰეშის შედარებით, YARA წესებით და ML დასკვნით
- საფრთხეები გამოვლენილია → ავტომატური რეაგირება (დაბლოკვა, კარანტინი, გამოსწორება)
- შეტყობინებები იგზავნება ვებჰუკის, ელფოსტის, Telegram-ის საშუალებით
- მომავალში: უსაფრთხოების მოვლენები ბრუნდება OpenPR-ში ამოცანების სახით ხელოვნური ინტელექტის მიერ მართული რეაგირებისთვის
გაშლის ტოპოლოგია
Section titled “გაშლის ტოპოლოგია”მინიმალური (ერთი მანქანა)
Section titled “მინიმალური (ერთი მანქანა)”┌─────────────────────────┐│ სერვერი ││ ├── OpenPR (Docker) ││ ├── PRX (ბინარი) ││ ├── prx-memory (ბინარი) ││ └── PostgreSQL │└─────────────────────────┘პროდაქშენი
Section titled “პროდაქშენი”┌──────────┐ ┌──────────┐ ┌──────────┐│ OpenPR │ │ PRX │ │ Fenfa ││ + Caddy │ │ დემონი │ │ + S3/R2 │└────┬─────┘ └────┬─────┘ └──────────┘ │ │ ▼ ▼┌──────────┐ ┌──────────┐│ WAF │ │ SD ││ კლასტერი │ │ დემონი │└──────────┘ └──────────┘