OPENCLAW FORK TECHNICAL BLUEPRINT
DỰ ÁN: Xây VClaw như một product-fork trên nền OpenClaw
1. MỤC ĐÍCH TÀI LIỆU
Tài liệu này mô tả chi tiết cách VClaw sẽ được xây dựng bằng cách fork OpenClaw và dùng chính năng lực của OpenClaw để tiếp tục phát triển VClaw.
Mục tiêu của blueprint là trả lời rõ các câu hỏi sau:
- Vì sao chọn OpenClaw làm nền tảng kỹ thuật.
- Thành phần nào của OpenClaw sẽ được tái sử dụng gần như nguyên trạng.
- Thành phần nào cần tùy biến để biến OpenClaw thành VClaw.
- Khi nào nên mở rộng bằng plugin/tool/config, khi nào nên sửa core.
- Cách tổ chức quy trình phát triển "dùng OpenClaw để code OpenClaw thành VClaw".
- Dashboard quản trị cho non-technical users sẽ được xây như thế nào.
- Cách mở rộng từ nền vận hành kỹ thuật sang nền tảng hỗ trợ bán hàng cho SMB.
2. TÓM TẮT KẾT LUẬN KỸ THUẬT
VClaw nên được xây theo mô hình product-fork có kiểm soát:
- Không viết lại gateway từ đầu.
- Không tách khỏi kiến trúc session/channel/plugin của OpenClaw ở giai đoạn đầu.
- Tận dụng tối đa OpenClaw làm execution substrate cho Gateway, Control UI, session routing, plugin runtime, config system và agent prompt runtime.
- Tập trung nguồn lực tùy biến ở product layer: business workflows, onboarding, policy layer, dashboard UX, integrations Việt Nam và growth automation.
Mô hình này giúp VClaw:
- Ra MVP nhanh hơn.
- Kế thừa được khả năng multi-channel, agent-native và self-hosted của OpenClaw.
- Dùng chính OpenClaw như công cụ điều phối tác vụ phát triển.
- Giảm chi phí xây dựng hạ tầng nền tảng không tạo khác biệt sản phẩm.
Một hệ quả quan trọng của lựa chọn này là:
- OpenClaw core tiếp tục là lớp hạ tầng an toàn.
- VClaw phải đầu tư mạnh hơn vào
admin surfacesvàcommerce workflows. - Giá trị sản phẩm với SMB đến từ trải nghiệm quản trị và nghiệp vụ bán hàng, không chỉ từ việc "setup được một gateway".
3. NHỮNG GÌ OPENCLAW ĐÃ CUNG CẤP SẴN
Từ phân tích tài liệu OpenClaw, các trụ cột kỹ thuật quan trọng đã có sẵn gồm:
3.1 Gateway tập trung
OpenClaw vận hành như một single long-lived Gateway, đóng vai trò trung tâm cho:
- Channel connections.
- Session routing.
- Control plane qua WebSocket.
- HTTP surfaces như Control UI và canvas host.
Điều này rất phù hợp với VClaw vì sản phẩm cũng cần một single source of truth cho:
- Tin nhắn từ các kênh chat.
- Luồng bán hàng và vận hành.
- Trạng thái tác vụ như tạo QR, kiểm bill, tạo lịch, nhắc lịch.
3.2 Control UI sẵn có
OpenClaw đã có Control UI chạy trên chính gateway port, có thể:
- Chat với agent.
- Xem sessions và history.
- Sửa config.
- Quản lý channels, skills, cron jobs, nodes.
- Tail logs và kiểm tra trạng thái hệ thống.
VClaw không nên tái dùng gốc giao diện này vì nó mang đặc tính kỹ thuật DevOps (Mission Control) quá nặng. Thay vào đó, mô hình của VClaw là:
- Ẩn Control UI / Terminal kỹ thuật gốc đi đối với người dùng kinh doanh.
- Xây dựng một Operations Console độc lập (vd: Web App Next.js/React).
- Đọc dữ liệu từ state/workspace hoặc thông qua API của core, chuyển hóa thành dashboard CRM-lite (Số đơn, Doanh thu, Lịch hẹn, Task Inbox duyệt tự động).
- Phân phối dưới dạng 1-click installer.
3.2.1 Mô hình dashboard đề xuất cho VClaw
Dashboard của VClaw nên theo mô hình layered admin surfaces:
- Localhost Web Admin
- Là surface mặc định.
- Dùng cho onboarding, cấu hình kênh chat, thanh toán, giao vận, sản phẩm/dịch vụ và theo dõi đơn/tác vụ.
- Remote Web Access
- Là mode nâng cao.
- Tận dụng cơ chế remote access an toàn của OpenClaw như Tailnet/Tailscale Serve hoặc tunnel tương đương.
- Chat-native Admin Surfaces
- Là surface phụ cho tác vụ nhanh.
- Có thể đi qua Telegram bot menu, Zalo Web App hoặc menu tác vụ nhẹ theo channel.
Nguyên tắc:
- Dashboard web là nơi người bán hàng làm việc hằng ngày.
- Remote access là tùy chọn bật thêm, không phải mặc định.
- CLI giữ nguyên cho dev/ops, không phải entrypoint chính cho người bán hàng.
3.3 Config model và wizard
OpenClaw đã có config model rất mạnh với:
gateway.*channels.*agents.*tools.*plugins.*skills.*
VClaw nên tận dụng model này thay vì thiết kế config system mới. Tùy biến nên tập trung vào:
- Tạo defaults phù hợp với SMB.
- Đổi tên, labels và wizard copy.
- Thêm plugin schemas cho nghiệp vụ Việt Nam.
3.4 Plugin, tool, channel runtime
OpenClaw hỗ trợ plugins TypeScript chạy in-process, có thể đăng ký:
- Gateway RPC methods.
- HTTP handlers.
- Agent tools.
- CLI commands.
- Background services.
- Messaging channels.
- Skills.
Đây là extension point quan trọng nhất để phát triển VClaw mà chưa cần chỉnh sâu core.
3.5 Agent runtime và system prompt assembly
OpenClaw sở hữu system prompt runtime riêng, có thể inject:
- Tool list.
- Safety guidance.
- Skills.
- Workspace bootstrap files.
- Runtime metadata.
- Sandbox state.
VClaw có thể tận dụng cơ chế này để:
- Chuyển từ "coding assistant" sang "business operations assistant".
- Inject business policy, persona và instructions cho use case Việt Nam.
- Tạo agent chuyên cho vận hành, bán hàng, tăng trưởng hoặc R&D.
3.6 Năng lực Browser Automation (Playwright)
OpenClaw lõi đã tích hợp sẵn playwright-core và các module hỗ trợ điều khiển trình duyệt (nằm trong src/plugin-sdk/browser-*.ts). Đây là một "vũ khí" cực kỳ quan trọng cho VClaw khi đối mặt với thị trường Việt Nam:
- Vượt qua hạn chế API: Tích hợp các nền tảng không có API chính thức hoặc API bị hạn chế (Zalo cá nhân, Facebook cá nhân, Shopee Seller Web, TikTok Shop Seller Web).
- Human-in-the-loop Login: Cơ chế cho phép mở trình duyệt (Headful) để người dùng thực hiện các thao tác đòi hỏi bảo mật cao như quét mã QR đăng nhập, sau đó tự động chuyển sang chế độ chạy ngầm (Headless) để Agent xử lý tác vụ.
- Browser Profiles: Quản lý nhiều hồ sơ trình duyệt tách biệt, giúp chủ shop quản lý nhiều tài khoản trên cùng một thiết bị mà không bị chồng chéo dữ liệu/cookie.
VClaw sẽ xây dựng lớp Commerce Web Adapters dựa trên năng lực này để tự động hóa các thao tác như:
- Trực tin nhắn và đồng bộ hội thoại từ Zalo Web/Facebook Web.
- Tự động lấy danh sách đơn hàng mới từ các trang quản trị sàn TMĐT.
- Tự động hóa các thao tác thủ công lặp lại trên trình duyệt của chủ shop.
4. MÔ HÌNH KIẾN TRÚC KHUYẾN NGHỊ CHO VCLAW
4.1 Reusable OpenClaw Core
Phần nên giữ càng nguyên bản càng tốt:
- Gateway daemon.
- WebSocket protocol giữa gateway và clients/nodes.
- Session management và multi-agent routing.
- Control UI shell.
- Plugin/channel/tool runtime.
- Config loading, validation và persistence.
- System prompt assembly pipeline.
4.2 VClaw Product Layer
Phần tạo khác biệt sản phẩm nên đặt ở đây:
- Rebranding thành VClaw.
- Onboarding cho hộ kinh doanh nhỏ.
- Luồng cấu hình thanh toán, giao vận và lịch hẹn.
- Business workflows:
- VietQR generation
- Bill verification
- Address normalization
- Ship estimate
- Booking/reminder
- Content assistance
- Lead follow-up
- Campaign drafting
- Auto consultation có guardrail
- Policy/confirmation layer cho các hành động nhạy cảm.
- Simplified dashboard dành cho người dùng không kỹ thuật.
- Commerce admin console cho cấu hình và vận hành bán hàng.
4.3 VClaw Growth and Self-Improvement Layer
Lớp mở rộng sau MVP hoặc near-term growth:
- Market intelligence.
- Lead discovery.
- Campaign assistance.
- Sales automation guardrails.
- Trend analysis.
- Skill discovery engine.
- Sandbox prototyping.
- Approval-gated release pipeline.
5. QUYẾT ĐỊNH PLUGIN HAY CORE
5.1 Khi nên làm bằng plugin / tool / config
Ưu tiên extension nếu yêu cầu nằm trong các nhóm sau:
- Thêm tích hợp đối tác mới như QR provider, OCR provider, delivery provider.
- Thêm business tool mới cho agent.
- Thêm channel plugin hoặc tùy biến channel behavior đã có sẵn.
- Thêm command, hook, background service.
- Thêm business rules, skills hoặc templates.
- Thêm config schema mới cho module nghiệp vụ.
- Thêm admin quick actions cho Telegram/Zalo hoặc các chat-native surfaces.
- Thêm approval queue, rate limit policy hoặc outbound scheduler cho content/follow-up.
5.2 Khi nên sửa core OpenClaw
Chỉ sửa core khi yêu cầu nằm trong các nhóm sau:
- Cần thay đổi behavior của gateway control plane.
- Cần thêm semantics mới cho WebSocket/API protocol.
- Cần đổi sâu onboarding shell và lifecycle setup.
- Cần sửa session/routing model để phù hợp sản phẩm.
- Cần thay đổi Control UI shell chứ không chỉ thêm panel.
- Cần thay đổi cách system prompt được assemble ở mức framework, không chỉ nội dung injected.
5.3 Quy tắc ra quyết định
Mỗi yêu cầu mới cần được phân loại theo ma trận:
Can configureCan extend via pluginNeeds product-layer codeNeeds core fork
Chỉ khi rơi vào nhóm Needs core fork mới cho phép tăng divergence với upstream.
6. CÁCH DÙNG OPENCLAW ĐỂ XÂY OPENCLAW THÀNH VCLAW
6.1 Dev loop đề xuất
- Chạy gateway local của chính repo VClaw.
- Mở Control UI hoặc một kênh chat dev.
- Bind một agent chuyên phát triển vào workspace repo VClaw.
- Inject bootstrap files và tài liệu kỹ thuật vào context agent.
- Giao việc cho agent qua chat, Control UI hoặc CLI.
- Agent đọc mã nguồn, chỉnh tài liệu, tạo patch, chạy kiểm tra và ghi nhận kết quả.
6.1.1 Dùng dashboard để phát triển dashboard
VClaw nên dogfood ngay surface quản trị web của chính nó:
- Dùng Control UI/Web Admin để cấu hình môi trường phát triển.
- Dùng agent trong chính repo để sửa UI labels, panel logic và workflow nghiệp vụ.
- Kiểm tra tính dễ dùng của dashboard bằng cách xem liệu một non-technical operator có thể hoàn thành các task chính mà không cần CLI hay không.
6.2 Mô hình agent đề xuất
Nên tạo ít nhất ba agent profile:
vclaw-core- Chuyên cho gateway, routing, config, control UI shell, upstream sync.
vclaw-business- Chuyên cho business workflows, prompt, rules, tools, Việt hóa.
vclaw-rnd- Chuyên cho growth automation, market intelligence và self-improvement sandbox.
Điều này tận dụng trực tiếp multi-agent routing của OpenClaw thay vì trộn mọi trách nhiệm vào một agent duy nhất.
6.3 Workspace strategy
- Một workspace chính cho product fork.
- Có thể dùng session hoặc agent riêng cho từng nhánh việc.
- Với các thử nghiệm rủi ro cao, dùng sandbox hoặc worktree tách biệt.
6.4 Dogfooding strategy
VClaw nên được dùng để phục vụ chính đội phát triển ngay từ sớm:
- Chat với agent để yêu cầu chỉnh tài liệu.
- Dùng sessions để theo dõi task.
- Dùng Control UI để xem logs, config và trạng thái.
- Dùng plugin/hooks để tự động hóa các tác vụ nội bộ.
Nếu hệ thống không giúp đội dev làm việc nhanh hơn trên repo của chính nó, khả năng cao nó cũng chưa đủ tốt cho người dùng cuối.
7. TỔ CHỨC MÃ NGUỒN ĐỀ XUẤT
7.1 Phần nên giữ gần upstream
src/infrasrc/clisrc/channelssrc/terminal- Các phần control plane và gateway transport
Nguyên tắc:
- Hạn chế sửa khi chưa thật sự cần.
- Nếu sửa, ghi rõ lý do sản phẩm.
- Ưu tiên giữ tương thích với đường nâng cấp từ upstream.
7.2 Phần nên thêm hoặc mở rộng cho VClaw
src/vclawhoặc namespace tương đương cho business modules.extensions/*cho các plugin nghiệp vụ Việt Nam.docs/cho product docs và blueprint kỹ thuật.- UI panels hoặc flows mới trong control UI phục vụ onboarding và vận hành.
- Các module commerce chung cho lead, customer, order-like workflows và follow-up.
- Các module growth cho content draft, campaign queue, follow-up policy và outbound approvals.
7.3 Phần nên tách biệt khỏi core
- Market intelligence.
- Lead discovery.
- Campaign assistant.
- Skill discovery/sandbox.
- Các provider đặc thù địa phương.
- Outbound scheduling và policy engine nếu cần scale tăng trưởng đa kênh.
Những phần này nên tách càng nhiều càng tốt để không làm lõi OpenClaw bị biến thành một sản phẩm ngành dọc.
8. KẾ HOẠCH FORK THEO GIAI ĐOẠN
Giai đoạn A - Foundation Fork
Mục tiêu:
- Fork repo và làm rõ ranh giới reusable/custom.
- Rebrand cơ bản.
- Thiết lập agent/workspace để dùng OpenClaw phát triển VClaw.
Đầu ra:
- Repo VClaw chạy được.
- Gateway và Control UI hoạt động dưới product identity mới ở mức tối thiểu.
- Có blueprint và dev rules rõ ràng.
Giai đoạn B - Business Workflow Enablement
Mục tiêu:
- Thêm business modules P1.
- Tích hợp các provider Việt Nam.
- Đưa policy/confirmation vào mọi luồng nhạy cảm.
Đầu ra:
- VietQR, bill verification, ship estimate, booking/reminder chạy end-to-end.
Giai đoạn C - Productization
Mục tiêu:
- Đơn giản hóa onboarding thông qua cơ chế cài đặt phần mềm 1-click (installer gốc, .exe/.dmg).
- Tách biệt nhánh UI, ẩn giao diện kỹ thuật của OpenClaw, phát hành Operations Console như một app bán hàng độc lập đọc chung workspace.
- Biến VClaw thành sản phẩm dành cho người bán hàng, xoay quanh dữ liệu Khách hàng/Đơn thay vì Metrics máy chủ.
- Chốt layered admin surfaces: localhost web admin (surface mặc định bằng CRM-lite), remote web access và chat-native quick admin.
Giai đoạn D - Growth Automation
Mục tiêu:
- Thêm market intelligence, lead discovery, campaign assistance.
- Tạo sales automation có guardrail.
- Đưa content drafting, approval queue và follow-up orchestration vào product layer trước khi tăng độ tự động hóa.
Giai đoạn D.1 - Generic SMB Commerce
Trước khi đi sâu vào vertical cụ thể như ticketing, VClaw nên bổ sung một lớp commerce chung cho SMB:
- Lead intake và lead follow-up.
- Customer history và tagging.
- Catalog/service listing ở mức cơ bản.
- Order-like workflow hoặc booking-like workflow thống nhất.
- Các kết nối với nguồn bán hàng online ở mức cấu hình từng bước.
- Content assistance và campaign assistance ở mức draft + approval.
- Auto consultation có guardrail cho các intent đủ cấu trúc.
Giai đoạn E - Self-Improvement Sandbox
Mục tiêu:
- Tạo trend analysis và skill discovery proposals.
- Thử nghiệm workflow tự cải tiến trong môi trường sandbox.
- Giữ cơ chế approval-gated release.
9. RỦI RO KỸ THUẬT CHÍNH
9.1 Divergence quá sâu với upstream
Rủi ro:
- Khó cập nhật bug fixes từ OpenClaw.
- Tăng chi phí bảo trì.
- Mất khả năng reuse cộng đồng/plugin ecosystem.
Giảm thiểu:
- Plugin-first.
- Ghi sổ divergence bắt buộc.
- Review định kỳ các thay đổi core.
9.2 Product UX chưa đủ đơn giản
Rủi ro:
OpenClaw gốc hướng tới power users và developers, trong khi VClaw nhắm tới người dùng SMB ít kỹ thuật.
Giảm thiểu:
- Tối giản dashboard.
- Đổi ngôn ngữ hiển thị sang tác vụ kinh doanh.
- Đóng gói onboarding theo use case thay vì theo khái niệm kỹ thuật.
9.3 Plugin sprawl
Rủi ro:
Nếu mọi thứ đều đẩy vào plugin mà không có kiến trúc rõ, VClaw sẽ phân mảnh.
Giảm thiểu:
- Định nghĩa chuẩn module.
- Phân lớp rõ P1 business modules, growth modules, R&D modules.
- Quy định naming, ownership và config schema.
9.4 Tự cải tiến không kiểm soát
Rủi ro:
Các năng lực kiểu skill discovery hoặc auto-improvement dễ trượt sang vùng rủi ro nếu chạm production trực tiếp.
Giảm thiểu:
- Không tự merge.
- Không tự sửa runtime đang chạy.
- Tất cả proposal phải qua sandbox và phê duyệt.
10. DANH SÁCH QUYẾT ĐỊNH NÊN CHỐT SỚM
- Channel chính của MVP là gì.
- Có giữ tương thích config với OpenClaw bao lâu.
- Control UI sẽ rebrand một phần hay tách hẳn product shell.
- Business modules nào là plugin, module nội bộ hay core change.
- Có duy trì upstream sync định kỳ hay chấp nhận hard divergence ở một số vùng.
- Agent structure cho team dev sẽ theo domain hay theo technical layer.
- Remote access có bật mặc định hay chỉ bật theo nhu cầu.
- Chat-native admin surfaces nào sẽ được ưu tiên trước: Telegram, Zalo hay cả hai.
- Lớp commerce chung sẽ dùng data model riêng hay gắn trực tiếp vào session/activity model hiện có.
11. KẾT LUẬN
Phương án kỹ thuật phù hợp nhất hiện tại là:
- Dùng OpenClaw làm hạ tầng thực thi.
- Dùng product-fork để đóng gói lại thành VClaw.
- Dùng chính OpenClaw để phát triển VClaw mỗi ngày.
Đây là lựa chọn cân bằng nhất giữa tốc độ ra sản phẩm, khả năng tận dụng nền tảng đã có và mức độ kiểm soát cần thiết để tạo ra một sản phẩm dọc cho thị trường Việt Nam.