- name
- openclaw-workflow-architect
- description
- >
OpenClaw Workflow Architect
Nguyên tắc phân tầng cốt lõi
Mọi quyết định thiết kế đều bắt đầu từ hai câu hỏi này:
**"Bước này đang *nói chuyện với AI* để lý luận, hiểu ngữ cảnh, ra quyết định?" → Đó là việc của OpenProse "Bước này đang xác định *điều gì xảy ra sau khi AI đã quyết định*?" → Đó là việc của Lobster**
| Lobster làm tốt | OpenProse làm tốt |
|---|---|
| Chạy chuỗi CLI theo thứ tự xác định | Đọc kỹ năng, lý luận về ngữ cảnh |
| Cổng phê duyệt trước side effects | Tạo và điều phối nhiều tác nhân AI |
| Truyền JSON giữa các bước | Vòng lặp qua danh sách với AI xử lý |
| Resume với token sau khi approve | Chạy song song nhiều phiên AI |
| Kiểm tra schema, lưu file | Quản lý trạng thái giữa các phiên |
Đọc references/layering-guide.md để có bảng phân tích chi tiết và danh sách anti-patterns.
Phần 1 — Nhận diện input
Xác định loại input trước khi làm bất cứ điều gì:
- Mô tả bằng lời (người dùng mô tả yêu cầu chưa có code) → đến Phần 2 (Phỏng vấn)
- File có sẵn (người dùng cung cấp
.lobster,.prose, hoặc code Python/script) → đến Phần 3 (Phân tích) - Hỗn hợp → chạy Phần 3 trước, sau đó Phần 2 với thông tin đã phân tích
Phần 2 — Phỏng vấn thiết kế mới
Hỏi lần lượt các câu sau (chỉ hỏi những câu chưa rõ từ ngữ cảnh):
Q1. Quy trình có bao nhiêu bước chính? Bước nào cần con người phê duyệt trước khi tiếp tục?
Q2. Có bước nào cần chạy song song không? (ví dụ: xử lý nhiều bài học cùng lúc, nhiều tác nhân nghiên cứu độc lập)
Q3. Có vòng lặp qua danh sách không? (ví dụ: lặp qua từng bài học, từng file, từng khách hàng)
Q4. Với mỗi bước: đây là bước AI lý luận (cần hiểu ngữ cảnh, ra quyết định) hay bước thực thi xác định (lưu file, gọi CLI, kiểm tra schema)?
Q5. Model đang dùng là gì? Có phải một trong các Prose Complete systems không?
- Prose Complete: Claude Code + Opus, OpenCode + Opus, Amp + Opus
- Nếu không (ví dụ: Gemini 3 Flash Preview) → xem cảnh báo tương thích bên dưới
Sau phỏng vấn: Vẽ sơ đồ tầng dạng text, xác nhận với người dùng trước khi chọn mode và sinh file.
Cảnh báo tương thích model
Nếu model không phải Prose Complete system:
⚠️ CẢNH BÁO TƯƠNG THÍCH
Model [tên model] chưa được xác nhận là Prose Complete system.
- File .lobster: hoạt động đầy đủ ✓
- File .prose: có thể không chạy đúng — OpenProse cần model đủ
năng lực mô phỏng VM khi đọc spec.
Các lựa chọn:
A. Lobster only — chạy được ngay, AI reasoning qua llm-task
B. OpenProse only — tiếp tục nhưng cần test thực tế
C. Auto (mixed) — sinh cả hai, bạn chọn dùng cái nào sau khi testChờ người dùng xác nhận mode trước khi tiếp tục.
Phần 3 — Phân tích file có sẵn
Chạy checklist này với mỗi file được cung cấp:
Checklist anti-patterns
- [ ] Có file Python/script làm cầu nối để đưa context vào LLM?
→ *Triệu chứng:* prepare_prompt.py, build_context.py, script đọc SKILL.md rồi nhét vào prompt → *Vấn đề:* Lobster đang làm việc của OpenProse → *Fix:* Chuyển sang OpenProse session — nó đọc skill file trực tiếp
- [ ] Có workaround cho vòng lặp (script Python riêng vì "Lobster không có for-loop")?
→ *Vấn đề:* Đang ở sai tầng → *Fix:* OpenProse có for item in list: native
- [ ] Có tự build logic spawn sub-agent thủ công (inject vào AGENTS.md, tự quản lý state)?
→ *Vấn đề:* Đang tái tạo thứ OpenProse đã có sẵn → *Fix:* OpenProse parallel: block + session isolation
- [ ]
approval: requiredcó đặt trước bước có side effect không?
→ *Nếu không:* lỗi thiết kế nghiêm trọng — side effect có thể chạy mà không có kiểm soát
- [ ] Dùng
tools.allow: ["lobster"]thay vìtools.alsoAllow?
→ *Cảnh báo:* allow là allowlist thuần — có thể vô tình block các core tools khác → *Fix:* Dùng alsoAllow trừ khi chủ ý chạy restrictive mode
- [ ] Context của phiên chính bị phình to do sub-agent không có isolation?
→ *Fix:* Mỗi OpenProse sub-session có context riêng
Đầu ra phân tích: Trình bày báo cáo ngắn theo cấu trúc:
VẤN ĐỀ: [mô tả]
NGUYÊN NHÂN: [giải thích tại sao đây là anti-pattern]
ĐỀ XUẤT: [cách sửa cụ thể]Xác nhận người dùng đồng ý với đề xuất trước khi sinh file mới.
Phần 4 — Chọn mode sinh file
Sau phỏng vấn hoặc phân tích, hỏi người dùng chọn một trong ba mode:
Mode A — Lobster only
Khi nào phù hợp:
- Model không phải Prose Complete
- Quy trình chủ yếu là thực thi xác định, ít AI orchestration phức tạp
- Cần chạy được ngay, không muốn phụ thuộc vào OpenProse runtime
Cách sinh:
- Một file
.lobsterchính làm orchestrator - Các bước AI reasoning → dùng
llm-taskvới schema rõ ràng - Vòng lặp → Python/CLI script nhỏ emit JSON list, Lobster xử lý
- Multi-step → nhiều file
.lobstergọi nhau có cấu trúc
Mode B — OpenProse only
Khi nào phù hợp:
- Model là Prose Complete system
- Quy trình nặng về AI orchestration, multi-agent, parallel execution
- Không có side effects phức tạp cần approval gate Lobster
Cách sinh:
- Một file
.prosechính - Các bước thực thi đơn giản xử lý trực tiếp trong session
- Ghi chú
# COMPATIBILITY:ở đầu file nếu model chưa được xác nhận
Mode C — Auto (mixed)
Khi nào phù hợp:
- Quy trình phức tạp có cả AI orchestration lẫn side effects cần kiểm soát
- Muốn tận dụng điểm mạnh của cả hai
Cách sinh (thứ tự bắt buộc):
- Sinh
.proselàm tầng điều phối trước - Xác định các điểm gọi Lobster trong
.prose - Sinh từng
.lobstertương ứng sau - Sinh thêm
fallback-orchestrator.lobsternếu model không phải Prose Complete
Phần 5 — Sinh file vào workspace
Cấu trúc thư mục chuẩn
workflows/
├── [tên-quy-trình].prose # Mode B hoặc C
├── [tên-quy-trình].lobster # Mode A hoặc C
├── gates/
│ └── [tên-gate].lobster # Các cổng phê duyệt tái sử dụng
└── workers/
└── [tên-worker].lobster # Các worker conQuy trình sinh file
1. Kiểm tra thư mục workflows/ — tạo nếu chưa có
2. [Mode A] Sinh .lobster chính → sinh workers/ nếu cần
3. [Mode B] Sinh .prose → thêm ghi chú tương thích nếu cần
4. [Mode C] Sinh .prose → sinh .lobster được gọi bởi .prose → sinh workers/
5. Báo cáo danh sách file đã tạo
6. Hướng dẫn lệnh chạy cụ thểTemplate ghi chú tương thích (dùng cho Mode B/C với non-Prose Complete)
# ============================================================
# COMPATIBILITY NOTE
# Model: [tên model] — chưa xác nhận là Prose Complete system
# .lobster files: hoạt động đầy đủ ✓
# .prose files: cần test thực tế — xem fallback-orchestrator.lobster
# nếu .prose không chạy đúng
# Prose Complete systems: Claude Code + Opus, OpenCode + Opus, Amp + Opus
# ============================================================Checklist trước khi lưu file
- [ ]
approval: requiredđặt trước mọi bước có side effect - [ ] Dùng
alsoAllowthay vìallow - [ ] Có
timeoutMsvàmaxStdoutBytescho mọi Lobster call - [ ] Mọi bước Lobster có
idduy nhất - [ ] File
.prosecórequires:vàensures:rõ ràng (Mode B/C) - [ ] Worker files nhận đủ context cần thiết qua
argshoặcstdin
Tham chiếu nhanh
| Cần tra cứu | Đọc file |
|---|---|
Cú pháp đầy đủ .lobster, tham số runtime, approval flow | references/lobster-spec.md |
Cú pháp .prose, state modes, slash commands | references/openprose-spec.md |
| Bảng phân tầng chi tiết, danh sách anti-patterns | references/layering-guide.md |
| Ví dụ hoàn chỉnh curriculum pipeline | references/examples/ |