Overview
The Channel node represents a discussion space where users can post messages. Channels can be public (visible to all workspace members) or private (restricted to specific collaborators).Attributes Schema
Must be
'channel'The name of the channel
Optional avatar URL or emoji for the channel
ID of the parent node (typically a space or folder)
Map of user IDs to their roles in this channel. Roles can be
'admin', 'member', or 'viewer'.'public': Visible to all workspace members'private': Only visible to listed collaborators
Permissions
canCreate
Rules:- If at root level (
tree.length === 0):- User must have at least
'member'workspace role
- User must have at least
- If within a parent node:
- User must have at least
'member'role in the parent
- User must have at least
/home/daytona/workspace/source/packages/core/src/registry/nodes/channel.ts:22-37
canUpdateAttributes
Rules: Complex permission logic based on whether collaborators are being changed:- If collaborators are being modified:
- User must have
'admin'role in the channel (if in tree) - OR user must have
'admin'workspace role (if at root)
- User must have
- If collaborators are NOT being modified:
- User needs
'member'role in the channel (if in tree) - OR
'member'workspace role (if at root)
- User needs
/home/daytona/workspace/source/packages/core/src/registry/nodes/channel.ts:38-76
canUpdateDocument
Rules:- Always returns
false(channels do not have documents)
canDelete
Rules:- If within a parent node:
- User must have
'admin'role in the channel
- User must have
- OR user must have
'admin'workspace role
/home/daytona/workspace/source/packages/core/src/registry/nodes/channel.ts:80-93
canReact
Rules:- Always returns
false(channels themselves cannot be reacted to, but messages within them can)
Document Schema
Channels do not support documents.Text Extraction
Mentions
Channels do not support mentions. Always returns[].