Operating instructions cho Bột trên dự án @diepxuan/dsh-zero-trust. Xem SOUL.md cho bản sắc, IDENTITY.md cho chi tiết identity.
Mỗi session PHẢI đọc theo đúng thứ tự trong SOUL.md §4:
- SOUL.md → 2. USER.md → 3. IDENTITY.md → 4. TOOLS.md → 5.
memory/<hôm-nay>.md→ 6.memory/<hôm-qua>.md(nếu có) → 7. MEMORY.md (chỉ MAIN SESSION) → 8. README.md
KHÔNG chỉ đọc AGENTS.md rồi thao tác luôn. Nếu có xung đột, ưu tiên: chỉ dẫn mới nhất của Sếp → SOUL.md → USER.md → IDENTITY.md → AGENTS.md → tài liệu dự án còn lại.
Repo nhỏ — toàn bộ nguồn gồm 5 file:
| Ưu tiên | Vị trí | Ghi chú |
|---|---|---|
| Chính | lib/index.js, lib/patch.js |
host plugin + pure transforms |
| Hạn chế | package.json, cordis.patch.yml |
metadata/exports/bundle wiring — chỉ sửa khi task yêu cầu rõ |
| Hạn chế | README.md |
chỉ cập nhật khi cơ chế thật sự đổi |
- Transform là pure function, đặt ở
lib/patch.js;lib/index.jschỉ lo locate anchor, apply idempotent, report. - Chỉ neutralize đúng 4 nhóm gate đã mô tả trong README.md:
- Gate 1 (2 chỗ):
connection.isLoopback ? "host" : "memory"trong@deepseek-ai/dsh-client-ui-settings. - Gate 2:
connection.isLoopback ? new SettingsDocumentStore(…) : void 0trong@deepseek-ai/dsh-client-ui-settings-general. - Gate 3: fence
/apisoOriginvới Host — chấp nhậnOriginkhớp entrytrustedHosts, trong@deepseek-ai/dsh-client-connection/lib/index.js(phía server). - Gate 4: privileged plane (
PRIVILEGED_METHODS) cùng file — truyềntrustedHoststhay vì danh sách rỗng.
- Gate 1 (2 chỗ):
- Trước khi ghi file phải qua
needsPatch(); pattern KHÔNG còn match sau khi vá. - Plugin KHÔNG tạo file backup
.bak-*; rollback duy nhất = cài lại package DSH lấy nguồn gốc (README.md mục Rollback). - KHÔNG thêm behavior mới (network call, telemetry, logic khác) vào file bị vá.
- KHÔNG thêm anchor đường dẫn mới ngoài 3 anchor hiện có nếu chưa đọc chứng thực thực tế.
- Nguồn sự thật:
README.mdcủa dự án + mã thật của các package đích (dsh-client-ui-settings*,dsh-client-connection) trong checkout DSH:/root/.npm-global/lib/node_modules/@deepseek-ai/dsh/node_modules/@deepseek-ai/. KHÔNG bịa cấu trúc bên trong package DSH. - Sau mỗi lần nâng cấp DSH (
npm i -g @deepseek-ai/dsh@latest), gate gốc quay lại trong file mới — lần boot kế tiếp plugin tự vá lại. KHÔNG vá tay bằng sed/script thủ công. - Web runtime đọc file client từ đĩa theo từng request → gate 1–2 chỉ cần refresh trình duyệt (Ctrl+Shift+R); gate 3–4 thuộc code server, cần restart
dsh-webmột lần. - Plugin vá cả nửa client và fence Origin phía server. Nửa edge (Cloudflare) đi kèm: ingress
httpHostHeader: "127.0.0.1",dsh web --trusted-host dsh.diepxuan.io.vn(bắt buộc — bản vá nhận diện domain qua danh sách này), Access Bypass cho/manifest.webmanifest+/favicon.svg. Từ v0.2.0 KHÔNG còn cần Transform Rule Remove Origin. Chi tiết: README.md mục "Yêu cầu cấu hình edge". - KHÔNG đề xuất hay thực hiện xóa bỏ bất kỳ lớp bảo vệ nào khác (trust fence privileged RPC server-side, Cloudflare Access ở edge).
- Remote:
git@github.com:diepxuan/dsh-zero-trust.git, branch chínhmain(trackorigin/main)..gitignorehiện có:node_modules/,*.log. - Mỗi task = 1 branch = 1 PR; KHÔNG commit thẳng lên
main. - Không tự push / tạo PR / merge; chỉ khi Sếp nói "push đi" / "Em tạo PR đi".
- Merge PR dùng
gh pr merge <N> --squash --delete-branch, KHÔNGgit mergelocal (trừ khi Sếp nói rõ cherry-pick / gộp branch / rebase local).
Khi nhận task, phải đi hết vòng đời:
- Đọc task + source — README.md, mã trong
lib/ - Audit — xác định gate/anchor/target bị ảnh hưởng; đọc file thật trong profile nếu cần (read-only OK)
- Implement — đúng scope, không bịa pattern mới ngoài thực tế code
- Self-review — idempotency, backup, không đụng lớp bảo vệ khác
- Verification —
node --check lib/index.js lib/patch.js; thử transform trên bản sao trong/tmp(không ghi vào profile); đối chiếu report line kỳ vọng - Review loop — fix theo comment
- Documentation — cập nhật README.md/MEMORY.md khi cơ chế đổi
- Báo cáo cuối — bằng chứng cụ thể
- Nếu thiếu dữ kiện: đọc source trước; nếu vẫn thiếu thì hỏi Sếp
- Khi gặp lỗi: dừng, phân tích nguyên nhân, không vá mù
- KHÔNG tự chạy các lệnh nhóm "Ghi cần xin phép" trong TOOLS.md (
systemctl restart dsh-web,dsh plugin … add/remove, chạy patcher ghi vào profile) - Definition of Done: diff sạch, syntax check pass, bằng chứng kiểm chứng rõ ràng
- Workspace nằm ở
/data/dsh-zero-trust/— ngoài session workspace mặc định của runtime thì mọi thao tác ghi phải qua cơ chế escalation, xem TOOLS.md
- Gọi là đệ
- Mô tả rõ: mục tiêu, input, output, giới hạn quyền
- Đệ không được vượt quyền Bột, KHÔNG được tự thao tác ghi vào
/root/.dsh/hay restart service