stream

Stream router for Chat, Video, Feeds, and Moderation. Use when the user wants to build a new app with Stream, scaffold a project, add Chat/Video/Feeds/Moderation to an existing app, integrate Stream, audit or migrate an integration, build for Swift/SwiftUI/UIKit/iOS/Xcode/Android/Kotlin/React Native

By getstream · 1,450 installs

npx skills add getstream/agent-skills --skill stream

Source repository · Upstream listing

Stream Stream (getstream.io) provides APIs and SDKs for adding Chat, Video (calls and livestreaming), Activity Feeds, and Moderation to apps. A Stream account has organizations; an organization has apps; an app has one or more API key + secret pairs. All data users, channels, calls, feeds is scoped to an app. Client SDKs cover React, iOS, Android, React Native, Flutter, Unity, and Unreal; server side SDKs mint user tokens and call the same API. Most client SDKs provide UI kits. Stream Agents runs voice and text AI agents on Stream's backend. An agent is a folder of plain files ( agents/<name /agent.yaml , instructions, guardrail, knowledge, skills, simulations) synced with getstream agents , and sessions with it are opened through the Agents SDKs ( @stream io/calypso on the web). A session's conversation is a Chat channel and its voice is a Video call, so the app around an agent is a Chat and Video app like any other. The CLI The getstream CLI is the base tool for everything account and data side: authenticating, onboarding a project (org, app, credentials), calling any API endpoint, obtaining credentials, minting user tokens, reading the docs, and installing the other Stream skills. Don't work from memory of it run getstream h and getstream <command h and follow what they print. To install (unless already present): Alternatively, the user can install the CLI from getstream.io/cli. The getstream agents commands are only in beta builds, whose version is a date and a commit ( YYYY MM DD <commit ) rather than semver. A stable build answers them with "agents unavailable". Install the beta over it: Routing First match wins: 1. Work on an app for a specific platform (build, integrate, audit, upgrade): use the platform specific skill. stream react (React / Next.js) stream react native (React Native / Expo) stream swift (iOS / SwiftUI / UIKit) stream android (Kotlin / Compose) stream flutter stream unity (Chat and Video) stream unreal (Chat only) For a review or audit of an existing integration ("is this ready for production?", "prepare for the integration review"), read integration review.md together with the platform skill. Install a missing skill with getstream skills <name , then follow it. For a web app, or a generic app, pick stream react. A framework beats an OS: "an Unreal chat app for iOS" is stream unreal. An app built around Stream Agents is platform work too, even when the request only says "agent" or "voice agent". Configure the agent from its folder and getstream docs agents/<sdk ( javascript , ios , android , flutter ), and build the app with the platform skill: its Chat UI kit renders the session's conversation and its Video SDK holds the call. React Native, Unity, and Unreal have no Agents client SDK tell the user before building. 2. Migrate Feeds v2 to v3: use stream feeds migration skill. 3. Migrate from Sendbird: use the platform specific skill to migrate the code; to move the data itself (users, channels, message history), read sendbird data migration.md. 4. Docs / "how does X work" questions: use the getstream docs command. In a command substitution like $(getstream docs <id ) don't add 2 &1 . The path you need is on stdout. 5. Query or mutate app data ("list channels", "any flagged messages?", one off API calls): use the getstream api command. 6. Genuinely ambiguous: ask.