Feishu Permission Tool
Single tool feishu_perm for managing file/document permissions.
Actions
List Collaborators
{ "action": "list", "token": "ABC123", "type": "docx" }
Returns: members with member_type, member_id, perm, name.
Add Collaborator
{
"action": "add",
"token": "ABC123",
"type": "docx",
"member_type": "email",
"member_id": "user@example.com",
"perm": "edit"
}
Remove Collaborator
{
"action": "remove",
"token": "ABC123",
"type": "docx",
"member_type": "email",
"member_id": "user@example.com"
}
Token Types
| Type | Description |
|---|---|
doc |
Old format document |
docx |
New format document |
sheet |
Spreadsheet |
bitable |
Multi-dimensional table |
folder |
Folder |
file |
Uploaded file |
wiki |
Wiki node |
mindnote |
Mind map |
Member Types
| Type | Description |
|---|---|
email |
Email address |
openid |
User open_id |
userid |
User user_id |
unionid |
User union_id |
openchat |
Group chat open_id |
opendepartmentid |
Department open_id |
Permission Levels
| Perm | Description |
|---|---|
view |
View only |
edit |
Can edit |
full_access |
Full access (can manage permissions) |
Examples
Share document with email:
{
"action": "add",
"token": "doxcnXXX",
"type": "docx",
"member_type": "email",
"member_id": "alice@company.com",
"perm": "edit"
}
Share folder with group:
{
"action": "add",
"token": "fldcnXXX",
"type": "folder",
"member_type": "openchat",
"member_id": "oc_xxx",
"perm": "view"
}
X-OmniClaw Implementation
Tool Class: FeishuPermTools.kt
Available Tools:
feishu_perm_list- List collaboratorsfeishu_perm_add- Add collaboratorfeishu_perm_remove- Remove collaborator
Example Usage:
// List collaborators
val result = feishuPermTools.listCollaborators(
token = "doxcnXXX",
type = "docx"
)
// Add collaborator
val result = feishuPermTools.addCollaborator(
token = "doxcnXXX",
type = "docx",
memberType = "email",
memberId = "user@example.com",
perm = "edit"
)
Note: This tool is sensitive - use with caution. Always verify user intent before modifying permissions.
Permissions
Required: drive:permission