CtrlK
BlogDocsLog inGet started
Tessl Logo

agui-dotnet-client-tools

Expose client-side (frontend) tools to an AG-UI agent with the AG-UI .NET SDK — C# functions that run in the CLIENT app (read local state, GPS, UI, device APIs), where the client executes the call and returns the result so the run continues. USE FOR: declaring an AIFunction in the client and passing it via ChatOptions.Tools to AGUIChatClient; having the client execute a tool the model requested and feed the result back automatically; understanding why no UseFunctionInvocation is needed on the client (AGUIChatClient already invokes functions); what the server must do (UseFunctionInvocation + TerminateOnUnknownCalls) so it forwards an unknown/client tool instead of erroring. DO NOT USE FOR: tools that run on the server/backend (use agui-dotnet-server-tools); pausing for human approval/input before acting (interrupts / human-in-the-loop); plain chat (use agui-dotnet-streaming-chat); shared state, generative UI, multimodal, or protobuf.

80

Quality

100%

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

100%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.

The body is a tight, executable guide: goal, mechanism, install, runnable client and server code, anti-patterns, and a verification checklist with explicit checkpoints. It assumes Claude's competence and leaves nothing critical implicit.

DimensionReasoningScore

Conciseness

Lean throughout—no explanation of what AIFunction or streaming is, just the goal, the mechanism, an install line, executable code, server config, anti-patterns, and verification. Every token earns its place.

5 / 5

Actionability

Fully executable, copy-paste-ready C# for declaring and passing a tool, plus the exact server-side UseFunctionInvocation + TerminateOnUnknownCalls snippet; common cases are covered with specific, runnable code.

5 / 5

Workflow Clarity

The Verify section sequences validation clearly: run a tool-only prompt, confirm local execution via breakpoint/log, confirm the streamed answer reflects the return value and ends RUN_FINISHED in a single client call—an explicit checkpoint proving no manual result-send code is needed.

5 / 5

Progressive Disclosure

A compact, well-sectioned single-purpose skill under 50 lines with no external bundle files and no nested references; per the simple-skill exception, the clean section organization earns the top score.

5 / 5

Total

20

/

20

Passed

Description

100%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.

This is an exemplary description: third-person voice, concrete capabilities, and crisp USE FOR / DO NOT USE FOR guidance with named sibling-skill disambiguation. It maximizes all four dimensions with no padding.

DimensionReasoningScore

Specificity

Lists multiple concrete actions—declaring an AIFunction, passing it via ChatOptions.Tools, having the client execute and feed results back, and configuring the server with UseFunctionInvocation + TerminateOnUnknownCalls—covering the full client-tool lifecycle comprehensively.

5 / 5

Completeness

Explicitly answers both 'what' (client-side C# functions run in the client app, executed and returned so the run continues) and 'when' via dedicated USE FOR and DO NOT USE FOR clauses with concrete trigger phrases.

5 / 5

Trigger Term Quality

Provides strong natural trigger phrases ('declaring an AIFunction in the client', 'having the client execute a tool', 'read local state, GPS, UI, device APIs') plus explicit DO NOT USE FOR synonyms (interrupts / human-in-the-loop, plain chat, shared state, generative UI) matching how users describe these needs.

5 / 5

Distinctiveness Conflict Risk

Clearly carves a niche (client/frontend tools) and explicitly contrasts against sibling skills by name (agui-dotnet-server-tools, agui-dotnet-streaming-chat), minimizing overlap and wrong-skill triggering.

5 / 5

Total

20

/

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.

Validation16 / 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.