Ctrl K
ComunidadGuías…

slack-app-manifest.json

Rama main · réplica de lectura del repositorio original.

Archivo original ↗Preguntar a KiBot
{
  "display_information": {
    "name": "ChannelGate",
    "description": "ChannelGate \u2014 run Claude Code or Codex in your Slack, sandboxed per channel.",
    "background_color": "#171a23",
    "long_description": "ChannelGate brings Claude Code into Slack. Mention the bot in a channel (or just DM it) and it runs a headless Claude session inside a per-conversation sandboxed folder, with each user's own Composio token injected only into their own messages. Admins configure per-channel access, MCP servers, and skills from a local admin UI. Runs over Socket Mode against a self-hosted gateway daemon."
  },
  "features": {
    "app_home": {
      "home_tab_enabled": true,
      "messages_tab_enabled": true,
      "messages_tab_read_only_enabled": false
    },
    "bot_user": {
      "display_name": "channelgate",
      "always_online": true
    },
    "agent_view": {
      "agent_description": "Chat with Claude Code in threads and DMs \u2014 sandboxed per channel."
    },
    "slash_commands": [
      {
        "command": "/menu",
        "description": "Show the Files, Variables, and Settings buttons",
        "should_escape": false
      },
      {
        "command": "/stop",
        "description": "Stop the bot's in-progress answer in this conversation",
        "should_escape": false
      },
      {
        "command": "/status",
        "description": "Show what this channel is working on (jobs, schedules, sessions)",
        "should_escape": false
      },
      {
        "command": "/secrets",
        "description": "See and set this channel's environment secrets (values are never shown)",
        "should_escape": false
      },
      {
        "command": "/model",
        "description": "Pick the harness, model and effort for this channel or just this thread",
        "should_escape": false
      }
    ],
    "shortcuts": [
      {
        "name": "Browse channel files",
        "type": "message",
        "callback_id": "cg_browse_channel_files",
        "description": "Browse files and share one in this message's thread"
      },
      {
        "name": "Channel secrets",
        "type": "message",
        "callback_id": "cg_manage_channel_secrets",
        "description": "See and set this channel's environment secrets"
      }
    ]
  },
  "oauth_config": {
    "scopes": {
      "bot": [
        "app_mentions:read",
        "assistant:write",
        "channels:history",
        "channels:read",
        "chat:write",
        "chat:write.customize",
        "commands",
        "files:read",
        "files:write",
        "groups:history",
        "groups:read",
        "im:history",
        "im:read",
        "im:write",
        "lists:read",
        "lists:write",
        "mpim:history",
        "mpim:read",
        "reactions:read",
        "remote_files:read",
        "search:read.files",
        "users:read"
      ]
    }
  },
  "settings": {
    "event_subscriptions": {
      "bot_events": [
        "agent_session_stopped",
        "agent_session_title_changed",
        "app_context_changed",
        "app_home_opened",
        "app_mention",
        "member_joined_channel",
        "member_left_channel",
        "message.channels",
        "message.groups",
        "message.im",
        "message.mpim",
        "reaction_added",
        "reaction_removed"
      ]
    },
    "interactivity": {
      "is_enabled": true
    },
    "org_deploy_enabled": false,
    "socket_mode_enabled": true,
    "token_rotation_enabled": false
  }
}