MCPInstall

stream-unreal

Build, integrate, and answer how-to questions for Stream Chat in Unreal Engine games and apps. Use for Unreal Engine / UE5 / C++ / Blueprint / UMG project work - plugin install per engine version, StreamChatClientComponent wiring on the HUD, ConnectUser and tokens, channels and messages, the shipped WBP chat widgets, theming, cooking, and iOS / Android / desktop packaging. Triggers on unreal, unreal engine, ue5, ue 5.7, ue 5.8, .uproject, .uplugin, Build.cs, umg, blueprint, widget blueprint, StreamChat plugin, UStreamChatClientComponent, UChatChannel, FChannelProperties, WBPTeamChat, in-game chat, game chat. Chat only - there is no Stream Video or Feeds SDK for Unreal.

Installs
72
Last 24h
—
Trending rank
—
Security
Not audited

Install

Works with every agent the skills CLI supports.

npx skills add https://github.com/getstream/agent-skills --skill stream-unreal
  1. 01

    Install

    Run the command in your project. The CLI asks which agents to install for.

  2. 02

    Describe the task

    Ask your agent for something this skill covers. It loads stream-unreal automatically when relevant.

  3. 03

    Review the result

    The agent follows the SKILL.md steps, scripts and references bundled with the skill.

SKILL.md

The instructions your agent reads when the skill is triggered.

Stream Unreal - docs orchestrator for Unreal Engine

Chat only. There is no Stream Video or Stream Feeds SDK for Unreal (/video/docs/unreal and the Feeds Unreal index both 404). If the user asks for calling or feeds in Unreal, say so up front and offer the alternatives (a platform SDK on a companion mobile app, or the REST/server API) rather than inventing an API.

The SDK is in beta. IsBetaVersion: true in the .uplugin; the surface can change between releases, and C++ and Blueprint coverage differ per operation. State this whenever the user pins a version or plans an upgrade.

This skill orchestrates: it gates the request against engine support and feature support, routes to the exact docs page, fetches it live, and applies it - while carrying the curated Unreal-specific knowledge the docs do not have (the ApiKey/BeginPlay ordering trap, the UMG widget layer, cooking, and the per-platform config that decides whether a packaged build is usable).

Rules (read once per session): RULES.md - non-negotiable rules + Unreal pitfalls. Read before writing any code.


Step 0: Three gates, before any code

Resolve all three from the user's words plus a read-only probe. Each one can change the answer from "here is the code" to "that is not possible" - so none of them is optional, and none of them belongs in a compile error later.

Gate 1: engine version (picks the release asset, or stops the task)

Target engineWhat to do
5.7 or 5.8Supported. Download the matching release asset - see setup.md 2.
4.27 / 5.0 / 5.1Only v1.3.0 (Dec 2022) covers these. Say so: the API predates v2.0.0, BlockUser/UnblockUser/GetBlockedUsers do not exist, and none of this skill's v2 guidance is guaranteed to apply.
5.2 through 5.6Hard stop - no release supports these. Say it immediately. The options are: upgrade the project to 5.7/5.8, or build the plugin from source against an unsupported engine (unverified, not recommended). Do not download an asset and hope.

Detect the version from the .uproject rather than asking:

find . -maxdepth 2 -name "*.uproject" -exec sh -c 'echo "== $1"; grep -m1 EngineAssociation "$1"' _ {} \;

There is one release archive per engine version (StreamChat-5.7.zip, StreamChat-5.8.zip) and picking the wrong one is a silent mismatch, not a clean error. Resolve the version first, then download.

Gate 2: feature support (say no in the plan, not in a compile error)

Not implemented in the Unreal SDK as of v2.0.0. If the request needs one of these, say so before writing code:

  • Attachments and file/image uploads
  • Sending threaded replies, and the thread list
  • Quoted messages, mentions, pinning messages
  • Offline persistence and optimistic sending
  • Channel archiving and channel pinning
  • Polls, draft messages, message reminders, location sharing

Implemented: messaging (send / edit / fetch / full-text search / soft delete, hard delete from C++, C++ pagination both directions), channels (query / watch / create / update / truncate / hide+show / freeze / members), reactions (score + enforce-unique, remove, C++ pagination), read state and unread counts, typing indicators, moderation (ban, shadow ban, mute users, mute channels, block and unblock users, flag messages and users, query banned users), slow mode, push device registration, presence + watchers + own-capabilities, real-time events, and preview UI widgets.

The docs contradict the SDK here. The Unreal introduction page still lists "User blocking" as not implemented, but BlockUser, UnblockUser, and GetBlockedUsers all ship on UStreamChatClientComponent in v2.0.0. Trust the SDK. The repo README feature list is the accurate one.

Gate 3: C++ or Blueprint

Ask only if genuinely unclear; otherwise infer (a Source/ dir with a .Build.cs means C++ is available).

  • C++ is the full surface. Callback-based (TFunction<void(...)>), TOptional<> parameters, and all pagination.
  • Blueprint covers the common operations as latent nodes, with ...BP-suffixed variants where the C++ signature takes TOptional (SendMessageBP, BanUserBP, ShadowBanUserBP, MuteUserBP, BanMemberBP).
  • Pagination and the lower-level APIs are C++ only. If the user wants a Blueprint-only integration, say up front which parts will need C++ - and note the naming trap: BanUserBP(User, FTimespan, FString, bool) takes required args where BanUser(User, TOptional<FTimespan>, TOptional<FString>, bool) takes optional ones. A zero FTimespan means "unlimited", not "already expired".

The docs convention - and the coverage caveat that matters here

Every Stream docs page has a Markdown twin: take the page URL, drop the trailing /, add .md.

https://getstream.io/chat/docs/unreal/query-channels/   ->   https://getstream.io/chat/docs/unreal/query-channels.md

Always fetch the .md variant - clean Markdown, verbatim code, no page chrome. The live index that lists every Unreal page: https://getstream.io/cli/docs/chat-unreal.md.

Now the caveat, and it is the single most important thing about this docs tree. The /chat/docs/unreal/ tree is largely the shared cross-SDK prose. Only about 26 of its 61 pages carry an Unreal code tab; the rest show JavaScript, Node, Kotlin - even a C#/Unity sample on the rate-limits page. Several pages document features the Unreal SDK does not have at all (file-uploads, threads, pinned-messages, polls-api, drafts, message-reminders, location-sharing, archiving-channels, pinning-channels) with working JavaScript and no per-page warning. And some pages for features the SDK does have carry no Unreal code (send-reaction, moderation, search, message-delivery-and-read-status, freezing-channels).

So:

  1. Never translate a JavaScript snippet into C++. channel.sendReaction(...) does not tell you the shape of UChatChannel::SendReaction. A JS-only page is a page whose concepts apply and whose code does not.
  2. When the page has no Unreal tab, get the API from the source of truth ladder below instead, and say where you got it.
  3. docs-map.md marks per-page Unreal coverage. Use it - it saves a wasted fetch and a wrong signature.

Source-of-truth ladder

Walk it in order. Stop at the first rung that answers the question, and cite which rung you used.

RungSourceUse for
1The page's Unreal code tab (docs-map.md says which pages have one)Anything covered. Copy verbatim.
2Plugin headers - Plugins/StreamChat/Source/StreamChat*/Public/**.h in the user's project, else raw.githubusercontent.com/GetStream/stream-chat-unreal/<tag>/...Exact signatures, defaults, UFUNCTION metadata, Blueprint availability. The final authority.
3Doxygen C++ reference - https://getstream.github.io/stream-chat-unreal/Browsing the class surface when you do not know the header name.
4The sample project - the repo root is the sample: Source/StreamChatSample/, Source/DocsSamples/Real wiring end to end. StreamChatSampleHud.cpp is a working connect + query + show-UI in 40 lines.

Read the headers from the version the project actually vendors (the plugin is copied into Plugins/, so it is right there - prefer it over GitHub main).

URL grounding: only fetch a page URL you got from docs-map.md or from a live index fetch in this conversation. Do not invent doc paths from memory.


Step 1: Classify the request

With the gates passed, pick the mode:

  • How-to / reference ("how do I query channels?", "what does EChannelFlags::Watch do?") -> go straight to Docs lookup. No setup, no credentials.
  • Integrate ("add chat to my game", "wire Stream into this project") -> run setup.md, then Docs lookup per feature.
  • New project ("build me an Unreal chat app") -> setup.md then Docs lookup, scoped to the requested screens. If there is no Unreal project, tell the user to create it in the Epic launcher / Unreal Editor first - do not try to scaffold a .uproject by hand.
  • Chat UI ("show a channel list", "put chat on the HUD", "style the message bubbles") -> run widgets.md. This layer has no official documentation at all, so the runbook is the source: the WBP_* inventory, the LoadClass-by-path pattern, the Setup()-before-AddToViewport() rule, the context-ancestor model, theming, and the cook directive that path-loading requires.
  • Package / ship / run on device ("build for iOS", "why is it frozen on my phone?", "package for Android") -> run platforms.md. The per-platform config there is load-bearing, not polish: without it a packaged mobile build is variously unreadably small, frozen a few frames in, or deaf to touch.

If the user asks for a chat UI and has not said which, prefer the shipped WBP_* widgets over hand-built UMG for a first integration - they carry the safe-area handling, theming, and list pagination that is tedious to reproduce.


Step 2: Docs lookup (every request ends here)

  1. Open docs-map.md. Find the row for the feature; it gives the exact .md URL and whether that page has Unreal code.
  2. If the feature is not in the map, fetch the live index (https://getstream.io/cli/docs/chat-unreal.md) and pick from it.
  3. Fetch the .md page(s) with WebFetch. At most 3 per request; beyond that, hand the user the index URL.
  4. If the page has an Unreal tab, use its code verbatim, adapting only to the project's actor/lifecycle shape. If it does not, drop to rung 2 of the ladder and read the header.
  5. Cite what you used: Source: [Title](https://getstream.io/...), or Source: Plugins/StreamChat/Source/StreamChat/Public/Channel/ChatChannel.h for a header. Never answer SDK specifics from training data - if you did not read it this conversation, read it now or say you could not find it.
  6. Apply best practices - one QueryChannels with a filter, then Watch plus WebSocket events; no per-tick queries; connect once. See RULES.md "Mindful API usage".

What this skill carries

The official docs cover the low-level client well where they have Unreal tabs, so this skill does not restate them. The curated, non-doc content is:

FileWhat it is
RULES.mdNon-negotiable rules + the Unreal pitfalls that break builds or fail silently. Every rule is stated once, here.
setup.mdEngine-version-aware plugin install, Build.cs module deps, CLI credentials, and the verified minimal client wiring.
widgets.mdThe UMG widget layer - undocumented upstream. Inventory, path-loading, Setup ordering, contexts, theming, cooking.
platforms.mdiOS / Android / desktop config, signing, and the build-vs-package distinction. Includes deploy + log-reading commands.
docs-map.mdIntent -> exact docs page, annotated with per-page Unreal-code coverage, plus the source-code fallback.

Support

If the user asks for support or how to contact someone, direct them to getstream.io/contact. SDK gaps and feature requests go to the repo issues.

FAQ

What does the stream-unreal skill do?

Build, integrate, and answer how-to questions for Stream Chat in Unreal Engine games and apps. Use for Unreal Engine / UE5 / C++ / Blueprint / UMG project work - plugin install per engine version, StreamChatClientComponent wiring on the HUD, ConnectUser and tokens, channels and messages, the shipped WBP chat widgets, theming, cooking, and iOS / Android / desktop packaging. Triggers on unreal, unreal engine, ue5, ue 5.7, ue 5.8, .uproject, .uplugin, Build.cs, umg, blueprint, widget blueprint, StreamChat plugin, UStreamChatClientComponent, UChatChannel, FChannelProperties, WBPTeamChat, in-game chat, game chat. Chat only - there is no Stream Video or Feeds SDK for Unreal.

How do I install stream-unreal?

Run npx skills add https://github.com/getstream/agent-skills --skill stream-unreal in your project. The skills CLI detects the agents you use and copies the skill into the right folder. For Claude Code you can also place the skill folder at ~/.claude/skills/stream-unreal/ (personal) or .claude/skills/stream-unreal/ (project).

Which AI agents can use stream-unreal?

Any agent that supports the open Agent Skills format (a folder with a SKILL.md file), including Claude Code, Codex, Cursor, GitHub Copilot, Gemini CLI, Windsurf, Cline, OpenCode and more.

Is stream-unreal safe to install?

No partner security audit is available yet. Skills can run commands and scripts, so read the SKILL.md and any bundled files before installing.

Who maintains stream-unreal?

It is published by getstream in getstream/agent-skills. It has 72 recorded installs.

More from getstream/agent-skills

View all →

stream

getstream/agent-skills

Stream overview, CLI, and router for Chat, Video, Feeds, Moderation, and Agents. Use for any Stream task: building or integrating Stream into web, iOS, Android, React Native, Flutter, Unity, or Unreal apps, building voice or text AI agents with Stream Agents, querying Stream data, running getstream CLI commands, looking up Stream SDK docs, or migrating (from Sendbird, or Feeds v2 to v3). Routes to the right skill.

Mobile1.6K installs

stream-docs

getstream/agent-skills

Compatibility entrypoint for requests naming stream-docs. Uses getstream docs for SDK documentation lookups.

Docs & Writing785 installs

stream-builder

getstream/agent-skills

Compatibility entrypoint for requests naming stream-builder. Routes app work to the appropriate platform skill.

AI & Agents725 installs

stream-react-native

getstream/agent-skills

Builds, integrates, migrates, audits Stream Chat, Video, and Feeds in React Native CLI and Expo apps. Use when scaffolding an RN/Expo app, adding Stream to an existing app, upgrading a Stream SDK (Chat v8-v9, Feeds v2-v3), migrating from Sendbird (@sendbird/chat, @sendbird/uikit-react-native), building AI assistants / LLM chat (streaming, stop generating) with @stream-io/chat-react-native-ai, answering RN/Expo how-to questions, or customizing Stream RN UI. Triggers on React Native, Expo, Expo Router, stream-chat-react-native, stream-chat-expo, @stream-io/video-react-native-sdk, @stream-io/feeds-react-native-sdk, ChatGPT clone, channel list, message list, MessageComposer, threads, attachment picker, audio messages, offline support, push notifications, video call, livestream, audio room, ringing, CallContent, ParticipantView, activity/timeline/notification feed, StreamFeeds, comments, reactions, follows, and theming. React Native and Expo only - not web React (use stream-react), not Mo

Mobile707 installs

stream-android

getstream/agent-skills

Build and integrate Stream Chat, Video, and Feeds in Android apps. Use for Jetpack Compose, Android Studio, and Gradle project work - including Stream package setup, auth and token wiring, screen blueprints, AI assistants and LLM chat (ChatGPT-style apps, streaming replies, thinking indicators, stop generating) with stream-chat-android-ai-compose, and any follow-up Stream UI work such as adding screens, navigating between channel list and channel/message screens, channel tap handling, deep links, push routing, theming, custom channel/message UI, video calling flows (joining/starting calls, ringing, custom call controls and participant tiles), and Feeds surfaces (timeline, activity composer, threaded comments, follow graph / profile, notification feed, stories).

Mobile492 installs

stream-swift

getstream/agent-skills

Build, integrate, migrate to, and answer how-to questions for Stream Chat, Video, and Feeds in Swift / SwiftUI / UIKit / iOS apps - including AI assistants and agentic experiences (ChatGPT-style apps, LLM bots in chat, streaming responses, thinking indicators, reasoning and tool-call steps, tool approvals, device-side tools, a voice agent's transcript shown as a conversation) with the StreamChatAI components. Routes each request to the exact official iOS docs page, fetches it live, and applies it - with a curated setup flow, an AI integration runbook, a Sendbird - Stream Chat migration runbook, and iOS-specific pitfalls.

Mobile464 installs

Popular media & creative skills

View category →

hyperframes

heygen-com/hyperframes

Read first to make, edit, animate or render any video with HyperFrames (HTML rendered to video), including launch films, explainers, music videos, charts, maps, vertical clips, title cards, captions and overlays. Holds the render contract, the work loop and what each kind of video needs.

Media & Creative1.2M installs

media-use

heygen-com/hyperframes

Get or make any media for a HyperFrames video - music, sound effects, images, icons, logos, voiceover, avatar and generated video, transcripts, cutouts, colour grades and looks - with HeyGen or free local tools, and mix placed audio. Also for footage that looks dark, flat or dull, or should be stylized or hidden.

Media & Creative1.1M installs

hyperframes-registry

heygen-com/hyperframes

About 450 ready-made HyperFrames blocks and components installed as editable source - transitions, overlays, titles, kinetic type, captions, charts, map overlays, 3D, camera moves. Use it before hand-building any named visual (CRT scanlines, glitch, film grain, a chart); also for hyperframes add and catalog.

Media & Creative1M installs

hyperframes-creative

heygen-com/hyperframes

Non-animation creative direction for HyperFrames videos. Use for design spec (frame.md / design.md) handling, palettes, typography, narration, beat planning, audio-reactive visuals, composition patterns, and brand / style decisions. For atomic motion patterns and scene blueprints, use hyperframes-animation.

Media & Creative916.5K installs

ai-video-generation

101-skills/superpowers

Generate AI videos with Google Veo, Seedance 2.0, HappyHorse, Wan, Grok and 40+ models via inference.sh CLI. Models: Veo 3.1, Veo 3, Seedance 2.0, HappyHorse 1.0, Wan 2.5, Grok Imagine Video, OmniHuman, Fabric, HunyuanVideo. Capabilities: text-to-video, image-to-video, reference-to-video, video editing, lipsync, avatar animation, video upscaling, foley sound. Use for: social media videos, marketing content, explainer videos, product demos, AI avatars. Triggers: video generation, ai video, text to video, image to video, veo, animate image, video from image, ai animation, video generator, generate video, t2v, i2v, ai video maker, create video with ai, runway alternative, pika alternative, sora alternative, kling alternative, seedance, happyhorse

Media & Creative881.5K installs

ai-image-generation

101-skills/superpowers

Generate AI images with GPT-Image-2, FLUX, Gemini, Grok, Seedream, Reve and 50+ models via inference.sh CLI. Models: GPT-Image-2, FLUX Dev LoRA, FLUX.2 Klein LoRA, Gemini 3 Pro Image, Grok Imagine, Seedream 4.5, Reve, ImagineArt. Capabilities: text-to-image, image-to-image, inpainting, LoRA, image editing, upscaling, text rendering. Use for: AI art, product mockups, concept art, social media graphics, marketing visuals, illustrations. Triggers: flux, image generation, ai image, text to image, stable diffusion, generate image, ai art, midjourney alternative, dall-e alternative, text2img, t2i, image generator, ai picture, create image with ai, generative ai, ai illustration, grok image, gemini image, gpt image, openai image, chatgpt image

Media & Creative880.3K installs