CtrlK
BlogDocsLog inGet started
Tessl Logo

agui-dotnet-streaming-chat

Get started with the AG-UI .NET SDK: bootstrap and run your first streaming-chat app (client + server) with the AG-UI .NET NuGet packages (AGUI.Client, AGUI.Server, AGUI.Formatting, AGUI.Abstractions). USE FOR: which packages to install and how to wire them; constructing an AGUIChatClient against an endpoint and streaming the reply as Microsoft.Extensions.AI IChatClient / ChatResponseUpdate; hosting an AG-UI POST endpoint yourself over any IChatClient; running a single- or multi-turn conversation; STATELESS agents (client owns history, resends it every turn) vs HOSTED / conversation-holding agents (server keeps the session, client pins a thread id). DO NOT USE FOR: changing the AG-UI .NET SDK itself (use the agui-dotnet-* contributor skills); server tools (agui-dotnet-server-tools); client tools (agui-dotnet-client-tools); interrupts / human-in-the-loop; shared state; generative UI; multimodal; or protobuf transport.

74

Quality

91%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

SKILL.md
Quality
Evals
Security

Quality

Content

90%Weight 40%Scale 1-5

Reviews the quality of instructions and guidance provided to agents. Good implementation is clear, handles edge cases, and produces reliable results.

A tight, code-first getting-started guide that delivers executable client and server programs with an explicit definition of done and smoke tests. Its only structural trade-off is that everything lives inline in SKILL.md (no references/ bundle exists), which keeps it self-contained but pushes advanced hosted-agent detail into the overview file.

DimensionReasoningScore

Conciseness

Lean and efficient throughout: every section is code or direct instruction ('Construct it from an AGUIChatClientOptions', 'Register your chat client. Any Microsoft.Extensions.AI provider works'), with zero time spent explaining SSE, HttpClient, or DI concepts Claude already knows. Even asides earn their place ('issue #4869' explains a real API trap). Matches the level-5 anchor; nothing to trim down to level 4's 'minor instances of over-explanation'.

5 / 5

Actionability

Fully executable, copy-paste-ready guidance covering the common cases: `dotnet add package` install commands with version-pinning variants, a complete client program, a complete minimal API server program, a runnable curl smoke test with a literal JSON body, and full multi-turn and hosted-agent code. The only placeholders (endpoint, deploymentName) are in the provider-specific section where flexibility is explicitly justified ('Any Microsoft.Extensions.AI provider works... Azure OpenAI is shown here'), so this is the level-5 anchor, not level 4's 'minor gaps'.

5 / 5

Workflow Clarity

A clear sequence (install → client → server → multi-turn → run) culminating in a 'Run it (definition of done)' section with explicit checkpoints: 'It works when the client prints the reply incrementally (multiple non-empty update.Text chunks, not one blob at the end)' and expected SSE frames 'RUN_STARTED … TEXT_MESSAGE_CONTENT … RUN_FINISHED'. It sits between anchors: more explicit validation than level 4, but lacks the error-recovery feedback loops ('if errors: fix and re-validate') of the level-5 anchor, so 4 fits.

4 / 5

Progressive Disclosure

Good structure with well-organized, clearly headed sections (two agent types, install, stateless client/server, run, hosted, anti-patterns) and no buried or nested references — trivially navigable. It does not reach level 5 ('content appropriately split' with well-signaled references) because the skill is entirely monolithic at ~225 lines: the hosted-agents and advanced RawRepresentationFactory material is arguably detail that could live in a one-level-deep reference file for a getting-started skill.

4 / 5

Total

18

/

20

Passed

Description

92%Weight 40%Scale 1-5

Based on the skill's description, can an agent find and select it at the right time? Clear, specific descriptions lead to better discovery.

An exemplary description: concrete capabilities, explicit USE FOR / DO NOT USE FOR trigger guidance, and explicit disambiguation from neighboring skills in the same family. The only minor weakness is trigger phrasing that is more SDK-jargon-heavy than user-language-heavy, costing one point on trigger term quality.

DimensionReasoningScore

Specificity

The description lists multiple specific concrete actions with comprehensive coverage: 'bootstrap and run your first streaming-chat app (client + server)', the exact NuGet packages (AGUI.Client, AGUI.Server, AGUI.Formatting, AGUI.Abstractions), 'constructing an AGUIChatClient against an endpoint', 'hosting an AG-UI POST endpoint yourself over any IChatClient', and 'running a single- or multi-turn conversation'. It matches the level-5 anchor ('multiple specific concrete actions; comprehensive coverage') and exceeds level 4, which allows coverage gaps.

5 / 5

Completeness

It clearly and explicitly answers both 'what' (bootstrap and run a streaming-chat app with the AG-UI .NET packages) and 'when' via an explicit 'USE FOR:' clause enumerating concrete trigger scenarios, plus a 'DO NOT USE FOR:' clause. This matches the level-5 anchor exactly; level 4 ('when could be more explicit') is too weak given the enumerated USE FOR list.

5 / 5

Trigger Term Quality

Good keyword coverage with natural terms users would say: 'streaming chat', 'AG-UI .NET', 'multi-turn conversation', 'hosting an endpoint', plus synonyms like 'STATELESS agents (client owns history)' vs 'HOSTED / conversation-holding agents'. It falls short of the level-5 anchor ('comprehensive coverage of natural terms including synonyms and file extensions') because a few natural user phrasings (e.g. 'chat app', 'SSE', 'wire up a chat server in .NET') are missing while the phrasing leans technical.

4 / 5

Distinctiveness Conflict Risk

A clear niche (AG-UI .NET streaming chat) with explicit disambiguation from sibling skills: 'DO NOT USE FOR: ... the agui-dotnet-* contributor skills; server tools (agui-dotnet-server-tools); client tools (agui-dotnet-client-tools); interrupts / human-in-the-loop; shared state; generative UI'. Minimal conflict risk, matching the level-5 anchor.

5 / 5

Total

19

/

20

Passed

Validation

100%

Checks the skill against the spec for correct structure and formatting. All validation checks must pass before discovery and implementation can be scored.

Validation — 16 / 16 Passed

Validation for skill structure

No warnings or errors.

Repository
ag-ui-protocol/ag-ui
Reviewed

Table of Contents

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.