{"name":"tengu_harbor_permissions","slug":"tengu-harbor-permissions","family":"flag","title":"Feature flags","noun":"feature flag","description":"Default `false`. Turns on relaying permission prompts to channels: the interactive session registers a channel permission handler, and a tool permission prompt is sent as a `notifications\/claude\/channel\/permission_request` (tool name, description, input preview) to each connected channel server from the session's `--channels` list that has registered for it. Tools that require user interaction are not relayed.","description_source":"code","described_by":{"bundle":"2.1.286","author":"claude-opus-5-5"},"presence":{"first_seen":"2.1.138","removed_in":null,"in_current_build":true,"newest_mined":"2.1.308","builds":149,"mined_builds":149,"first_cited":{"version":"2.1.81","released_at":"2026-03-20 21:27:19","spans":1}},"aliases":[],"entries":[{"version":"2.1.81","anchor":"mcp-channel-permissions-gradual-rollout","heading":"MCP Channel Permissions [Gradual Rollout]","line":null,"released_at":"2026-03-20 21:27:19","reason":"gate cited by this entry, found in this entry's text"}],"entries_total":1,"docs":[],"docs_total":0,"gates":[{"version":"2.1.81","state":"on-in-code","account":true,"baseline":true,"code_default":null}],"related":[{"name":"tengu_harbor","slug":"tengu-harbor","description":"Forked skill executions now register as real, trackable background tasks"},{"name":"tengu_harbor_kite","slug":"tengu-harbor-kite","description":"Messages from another session render as an @sender header with indented body instead of raw tags."},{"name":"tengu_harbor_kite_cloud","slug":"tengu-harbor-kite-cloud","description":"`CLAUDE_CODE_HARBOR_KITE_CLOUD` turns on cloud peer access; otherwise a server flag decides and it's off."},{"name":"tengu_harbor_kite_limits","slug":"tengu-harbor-kite-limits","description":"Incoming peer messages now pass rate, duplicate and loop checks before queuing, with drops shown to you."},{"name":"tengu_harbor_kite_mode_emit","slug":"tengu-harbor-kite-mode-emit","description":"Messages from a session with a mismatched permission mode are held and shown with an approve\/deny dialog."},{"name":"tengu_harbor_kite_pacing_off","slug":"tengu-harbor-kite-pacing-off","description":"You can switch off Harbor request pacing with a new environment variable."},{"name":"tengu_harbor_kite_win","slug":"tengu-harbor-kite-win","description":"Setting CLAUDE_CODE_HARBOR_KITE forces cross-session messaging on, and Windows can now be allowed through."},{"name":"tengu_harbor_ledger","slug":"tengu-harbor-ledger","description":"Default `[]`. Built-in allowlist of channel plugins as `{marketplace, plugin}` entries; a value that fails validation counts as empty. When managed settings give no `allowedChannelPlugins`, a plugin requested through `--channels` outside development mode is skipped unless it is on this list. Separately, whatever the managed setting says, an MCP server's `claude\/channel` capability is removed from its reported status unless its plugin is on this list (among other conditions)."},{"name":"tengu_harbor_moth","slug":"tengu-harbor-moth","description":"Default `false`. Turns on remote recaps: at the end of a turn, in a session that reports metadata changes, Claude Code generates a recap and publishes it as the session's `recap` metadata, dropping it if a new turn is already running. Further checks must also pass, and `CLAUDE_CODE_ENABLE_REMOTE_RECAP`, when set, takes precedence over the flag."},{"name":"tengu_harbor_prism","slug":"tengu-harbor-prism","description":"Default `false`. When on, the PR status for the current branch is fetched straight from the GitHub REST API (`\/repos\/<owner>\/<repo>\/pulls?head=...`) with a GitHub token, using ETags, redirect handling and backoff on `403`\/`429`; when off it runs `gh pr view --json number,url,reviewDecision,isDraft,headRefName,state`. Either way a null result falls through to a further lookup. The flag also switches the PR-status poller from its fixed `60000` ms interval to an interval computed from terminal focus, time since the last interaction, the failed-fetch streak and the not-modified streak."}],"url":"https:\/\/changelogs.core-directive.com\/reference\/flag\/tengu-harbor-permissions","family_url":"https:\/\/changelogs.core-directive.com\/reference\/flag.json"}