> ## Documentation Index
> Fetch the complete documentation index at: https://docs.siclaw.ai/llms.txt
> Use this file to discover all available pages before exploring further.

# Channels & Integrations

> Access Siclaw via Terminal, Web UI, Slack, Lark, webhooks, and scheduled patrols.

## Supported Channels

All channels share the same investigation engine — the interface differs but the diagnostic capability is identical.

| Channel            | Mode    | Status |
| ------------------ | ------- | ------ |
| **Terminal (TUI)** | CLI     | Stable |
| **Web UI**         | Gateway | Stable |
| **Slack**          | Gateway | Stable |
| **Lark (Feishu)**  | Gateway | Stable |
| **Discord**        | Gateway | Stable |
| **Telegram**       | Gateway | Stable |
| **Webhooks**       | Gateway | Stable |

## Web UI

Available in Local Server mode (`siclaw local`) and Kubernetes deployments:

```bash theme={null}
siclaw local
# Open http://localhost:3000
```

For development (running Runtime and Portal separately):

```bash theme={null}
npm run dev:portal    # Portal + Web UI
npm run dev:runtime   # Runtime control plane
```

The Web UI provides:

* Real-time investigation with streaming updates
* Session history and investigation reports
* Skill management (create, review, publish)
* Built-in metrics dashboard (token usage, cost, latency, sessions)
* MCP server configuration
* Cron job management

## Slack Integration

### Setup

1. Create a Slack App at [api.slack.com/apps](https://api.slack.com/apps)
2. Enable **Socket Mode** and **Event Subscriptions**
3. Subscribe to events: `app_mention`, `message.im`
4. Add bot scopes: `chat:write`, `app_mentions:read`, `im:history`
5. In Siclaw Web UI, open **Channels** and save the bot credentials for Slack:

   * `botToken`
   * `appToken`

### Usage

Mention the bot in any channel:

```
@siclaw Pod payment-service is CrashLoopBackOff in prod
```

Or send a direct message for private investigations.

## Lark (Feishu) Integration

Create a Lark bot app, enable message event subscriptions, then configure it in **Channels** with:

* `appId`
* `appSecret`

## Discord Integration

Configure a Discord bot in **Channels** with:

* `token`

## Telegram Integration

Configure a Telegram bot in **Channels** with:

* `botToken`

## Alert Webhooks

Create a Trigger in the **Triggers** page. Siclaw will generate:

* a unique webhook URL
* a bearer secret

Requests should be sent to the generated endpoint:

```bash theme={null}
curl -X POST https://siclaw.example.com/hooks/v1/<trigger-id> \
  -H "Authorization: Bearer <trigger-secret>" \
  -H "Content-Type: application/json" \
  -d '{
    "title": "High error rate on payment-service",
    "severity": "critical",
    "labels": {"namespace": "prod", "service": "payment"}
  }'
```

Compatible with: **Prometheus Alertmanager**, **Grafana**, **PagerDuty**, and any custom webhook (JSON format).

## Scheduled Patrols (Cron)

Schedule recurring health checks using natural language:

```
"Check GPU utilization across all training nodes every 6 hours"
"Verify pod health in the payments namespace every 30 minutes"
"Run full cluster health check at 9am every Monday"
```

### Creating a Patrol

**Via Web UI**: Go to **Cron** in the sidebar, click **New Patrol**, describe what to check and how often.

Each patrol run produces a status (success / warning / failure), output summary, and timestamp — all visible in the Web UI.

## MCP Servers

Siclaw supports the [Model Context Protocol (MCP)](https://modelcontextprotocol.io/) for connecting external data sources — Prometheus metrics, GitHub issues, custom APIs — as investigation tools. The agent discovers and uses them automatically.

See [MCP Servers](/configuration/mcp) for setup and examples.
