Context
GoClaw hiện chỉ có 3 mode phân quyền cơ bản: operator, writer, reader. Cơ chế này quá thô cho use case công ty/team, nơi cần phân quyền theo nhóm, theo leader, theo runtime commands, và theo phạm vi quản trị được uỷ quyền.
Problem
Khi phân quyền cho một team/company, chỉ chọn một trong 3 mode hiện tại không đủ để mô hình hoá các trường hợp như:
- Team leader được phép tạo/manage agent trong phạm vi team.
- Một agent/user chỉ được grant một subset commands cụ thể của GoClaw runtime package.
- Leader có thể tiếp tục phân quyền cho member/agent khác, nhưng chỉ trong quyền hạn được cấp.
- Cần UX dễ hiểu, không bắt admin phải cấu hình command-level ACL từ đầu.
Proposed direction / Brainstorm
Cần brainstorm thiết kế chi tiết cho advanced permission control. Một hướng đề xuất:
- Khi admin phân quyền cho một team, hệ thống tạo/provision một agent đại diện cho user leader của team.
- Agent này được grant các GoClaw runtime commands/package commands cụ thể theo policy.
- User leader dùng agent đó để:
- tạo thêm agent nếu được phép;
- grant/revoke quyền cho agent/member khác trong phạm vi được uỷ quyền;
- manage team permissions nhưng không vượt quá permission boundary ban đầu.
- Cần permission templates dựng sẵn cho UX tốt hơn, ví dụ:
- Company admin / department admin
- Team lead
- Developer / operator
- Content/editor team
- Read-only auditor
- Templates nên map xuống permission grants cụ thể, vẫn cho phép chỉnh advanced mode.
Acceptance criteria
- Có proposal/design doc cho advanced permission control.
- Làm rõ model quyền: subject, resource, action/command, scope, boundary, delegation.
- Có cơ chế grant command-level permissions cho GoClaw runtime package/commands.
- Có flow phân quyền team leader và delegated management trong phạm vi cho phép.
- Có UX permission templates cho company/team use cases.
- Backward compatible với 3 mode hiện tại (
operator, writer, reader) hoặc có migration path rõ ràng.
- Có security notes về privilege escalation, audit log, revoke/inheritance, và default-deny behavior.
Open questions
- Permission boundary nên gắn với user, agent, team, hay cả ba?
- Runtime commands nên được định danh/version như thế nào để tránh grant nhầm sau khi package thay đổi?
- Leader delegation nên cho phép grant ngang quyền hay chỉ grant subset?
- Templates nên lưu ở system-level hay org-level có thể customize?
Context
GoClaw hiện chỉ có 3 mode phân quyền cơ bản:
operator,writer,reader. Cơ chế này quá thô cho use case công ty/team, nơi cần phân quyền theo nhóm, theo leader, theo runtime commands, và theo phạm vi quản trị được uỷ quyền.Problem
Khi phân quyền cho một team/company, chỉ chọn một trong 3 mode hiện tại không đủ để mô hình hoá các trường hợp như:
Proposed direction / Brainstorm
Cần brainstorm thiết kế chi tiết cho advanced permission control. Một hướng đề xuất:
Acceptance criteria
operator,writer,reader) hoặc có migration path rõ ràng.Open questions