Files
CASAN/docs/casan/CASAN_PROMPT_ENFORCEMENT.md
T

84 lines
2.4 KiB
Markdown
Raw Blame History

This file contains ambiguous Unicode characters
This file contains Unicode characters that might be confused with other characters. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.
# CASAN Prompt Enforcement
CASAN thực thi governance qua integration native của từng client và một Core
runtime đã pin theo project. Không dùng `bin/casan-chat` làm entrypoint bắt buộc
cho project adoption mới.
## Luồng production
1. Developer gửi prompt trong client đã được project enable.
2. Hook project gọi `.casan/casan-hook.py`.
3. Bootstrap đọc `.casan/config.json` và `.casan/version.lock`.
4. Core runtime được resolve theo mode `managed` hoặc `vendored`.
5. Live hash phải khớp project pin trước khi adapter/gate được dispatch.
6. Trace/evidence được ghi vào `.specify` của đúng project.
## Runtime mode
Managed Core, khuyến nghị mặc định:
```bash
casan init --project my-project --client claude,codex
```
Core nằm trong `$CASAN_HOME`, còn project commit config/lock/bootstrap/hooks.
Vendored Core cho offline/air-gapped:
```bash
casan init --runtime vendored --project my-project --client claude,codex
```
Core production-only nằm tại `.casan/runtime/casan-core`. Nếu folder này bị
thiếu hoặc sai hash, CASAN fail closed; không fallback âm thầm sang global Core.
## Boundary theo client
### Claude Code
CASAN merge handler vào `.claude/settings.json`. Hook khác, agent, skill và key
không thuộc CASAN được giữ nguyên.
### Codex
CASAN merge handler vào `.codex/hooks.json`. Người dùng phải mở `/hooks`, review
và trust đúng hook hash của project.
### VS Code / GitHub Copilot
Route được chứng nhận là explicit `@casan`. CASAN không quảng bá rằng built-in
Copilot Chat hoặc mọi prompt bên ngoài route này đều được intercept.
### Ngoài project
Prompt gửi trực tiếp vào website AI bên ngoài project/runtime không nằm trong
boundary chứng nhận của CASAN. Kiểm soát website/proxy/identity ở cấp tổ chức là
lớp bổ sung, không phải chức năng của repository hook.
## Kiểm tra
```bash
casan doctor
casan verify-harness
casan level show
```
CI phải verify runtime pin trước gate:
```bash
casan verify-harness
casan gate
```
Chỉ coi output là certified khi runtime integrity hợp lệ và trace H1–H7 tương
ứng vượt qua policy.
## Gỡ integration
```bash
casan uninstall
```
Lệnh xóa CASAN hook/config và vendored Core nếu có, nhưng giữ hook/workflow/file
project. Dùng `--purge` để xóa thêm `.specify` logs/state.