---
title: "Diagnostics channels"
description: "Every channel MainSDK publishes on node:diagnostics_channel, with its kind, version and publisher, and how a channel changes between versions."
section: "reference"
canonical: "https://mainsdk.dev/docs/reference/channels"
updated: "2026-10-28"
---

# Diagnostics channels

> Every channel MainSDK publishes on node:diagnostics_channel, with its kind, version and publisher, and how a channel changes between versions.

Canonical: https://mainsdk.dev/docs/reference/channels · Updated: 2026-10-28

Every channel below is published at version 1 under the name `mainsdk:<area>.<event>`. Subscribe with [`observe`](https://mainsdk.dev/docs/interfaces/observe); read a payload shape with `observe.schema(name)`. A channel is never changed in place: a new shape ships as `@2` beside `@1`, and both publish for one minor release.

| Channel | Kind | Version | Published by |
| --- | --- | --- | --- |
| `mainsdk:network.decision` | event | 1 | network |
| `mainsdk:network.attempt` | event | 1 | network |
| `mainsdk:network.breaker` | event | 1 | network |
| `mainsdk:permission.decision` | event | 1 | disk, system |
| `mainsdk:access.decision` | event | 1 | access |
| `mainsdk:agent.decision` | event | 1 | agents |
| `mainsdk:ai.call` | event | 1 | ai |
| `mainsdk:action.call` | event | 1 | action |
| `mainsdk:mcp.call` | event | 1 | mcp |
| `mainsdk:files.upload` | event | 1 | files |
| `mainsdk:files.access` | event | 1 | files |
| `mainsdk:pay.call` | event | 1 | pay |
| `mainsdk:share.create` | event | 1 | share |
| `mainsdk:config.push` | event | 1 | config |
| `mainsdk:tenant.system` | event | 1 | tenant |
| `mainsdk:device.telemetry` | event | 1 | device |
| `mainsdk:http.fetch` | span | 1 | network |
| `mainsdk:driver.call` | span | 1 | every interface |
| `mainsdk:action.run` | span | 1 | action |
| `mainsdk:system.run` | span | 1 | system |

Events carry the common envelope (id, time, app, tenant, user, trace and span ids, caller, data). Spans add a start and an end phase. Fields listed as detail appear only while debug detail is on.
