crestapps-core-chat

crestapps-core-chat is a skill for Claude Code from CrestApps/CrestApps.AgentSkills. It costs 188 tokens per session (2,187 once invoked), scanned A, original, MIT.

A coding guide for building CrestApps.Core chat-completion and streaming loops, including deployments, providers, and agent orchestration. Streaming shows an answer as it is produced instead of waiting for the complete response.

In plain words
What is it for?
Use it to implement one-response or streaming chat, configure AI deployments, pass completion settings, and build requests that need planning, tools, or iterative agent steps.
Why use it?
It helps developers use CrestApps.Core’s intended services and deployment management without constructing provider clients directly in application code.

Skill for Claude Code

Written for Claude Code: shipped in a Claude Code plugin.

Part of the crestapps-core plugin — 47 skills shipped together

Good fit Use it to implement one-response or streaming chat, configure AI deployments, pass completion settings, and build requests that need planning, tools, or iterative agent steps.

Compare 6 skills from other repositories ↓
Install with agentmods
npx agentmods add skills/crestapps/crestapps.agentskills/crestapps-core-chat
Install

Getting it into your agent

One page per mod, every tool's command on it. A separate URL per tool would split the same page into five that compete with each other.

Any agent
npx skills add CrestApps/CrestApps.AgentSkills --skill crestapps-core-chat
Clone the repo
git clone --depth 1 https://github.com/CrestApps/CrestApps.AgentSkills

Made for: Claude Code.

Or install crestapps-core, the plugin that ships this one along with the rest of its 47 skills.

Wrote this? Show the measurements

A badge with what this costs and how it scanned, read live from this page, so it follows the numbers instead of freezing them. Markdown for a README, HTML for a documentation site or a project page.

agentmods badge for crestapps-core-chat

README.md
[![agentmods](https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-chat/github.svg)](https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-chat)
Your own site
<a href="https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-chat"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-chat/github.svg" alt="Measured on agentmods" height="20"></a>

Or the 80×15 button, for a site that already has a row of RSS and ATOM ones. Only the verdict fits; the numbers stay here.

agentmods 80×15 button for crestapps-core-chat

Your own site · 80×15
<a href="https://agentmods.dev/skills/crestapps/crestapps.agentskills/crestapps-core-chat"><img src="https://agentmods.dev/badge/skills/crestapps/crestapps.agentskills/crestapps-core-chat.svg" alt="Reviewed on agentmods" width="80" height="20"></a>
Per session 188 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 2,187 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. A grade says what 26 rules found in the file — not that it is safe. Third-party audits
  • NVIDIA SkillSpector pass 7 Sept 2026
How audits are shown
Origin original No closer match found in the catalogue.
Token cost

What it costs to keep this loaded

Counted locally with the o200k_base tokenizer, which is exact for GPT models; Claude uses its own tokenizer and its counts differ. Treat this as one consistent yardstick across the catalogue rather than a bill. Prices are per million input tokens.

ModelPer sessionOnce invoked
Fable 5.1 $0.00188 $0.02187
Opus 5.5 $0.00075 $0.00875
Sonnet 5.5 $0.00038 $0.00437
Haiku 4.5 $0.00019 $0.00219

Measured yesterday against content hash bdc263059990, method: parsed. Prices are Anthropic first-party input rates as of 2026-10-07, from the pricing page.

Security

Grade A, and why

crestapps-core-chat scanned grade A with 0 findings against 26 rules in 11 categories — prompt injection, anti-refusal, data exfiltration, privilege escalation, supply chain, agent snooping, system-prompt leakage, SSRF and excessive agency — measured yesterday.

A static scan of the body, not an audit. Every finding is printed with the line that produced it so you can judge whether it matters here. A mod is markdown that instructs an agent; that is exactly why what it instructs is worth reading.

Nothing flagged

None of the 26 patterns this scan looks for appear in this file: no shell pipes, no recursive deletes, no credential paths, no hidden text, no instruction-override or anti-refusal phrasing, no agent-config snooping. That is not a guarantee, it is the absence of the things that are checkable.

plugins/crestapps-core/skills/crestapps-core-chat/SKILL.md · 217 lines

How it starts

The opening of the file, as written. The whole thing — 217 lines — stays where its author put it; the contents beside it link to each section on GitHub.

CrestApps.Core Chat Completions

This skill is the server-side completion and orchestration surface. Persisted conversations, hubs, chat UI and response handlers are covered by crestapps-core-chat-interactions; voice sessions by crestapps-core-realtime-voice; providers by crestapps-core-openai, crestapps-core-azure-openai, crestapps-core-ollama and crestapps-core-azure-ai-inference.

Guidelines

  • CrestApps.Core exposes IAICompletionService (namespace CrestApps.Core.AI.Completions), not IChatCompletionService. It returns Microsoft.Extensions.AI ChatResponse and ChatResponseUpdate.
  • Resolve the AIDeployment first, through a slot: ResolveSlotAsync(AIDeploymentSlotNames.Chat, ...) for answers and ResolveUtilityOrDefaultAsync(...) for background work. Do not construct provider clients in application code.
  • Pass an AICompletionContext for the system message, sampling, tool selection, data source, and model parameters.
  • Use IOrchestrator.ExecuteStreamingAsync(...) when the request needs a profile's tools, agents, RAG, MCP connections, or progressive tool scoping.
  • The deployment's declared capabilities are enforced on every request. Tools, a JSON response format, reasoning options and streaming are removed or downgraded when the deployment does not declare toolCalling, structuredOutputs, reasoning or streaming.

Registration

using CrestApps.Core.AI.OpenAI;

builder.Services.AddCrestAppsCore(crestApps => crestApps
    .AddAISuite(ai => ai
        .AddOpenAI()
    )
);

Configure a connection and at least one deployment that declares textGeneration (plus toolCalling and streaming for chat). See the provider skills for the configuration shape.

Stream a Completion

using System.Runtime.CompilerServices;
using CrestApps.Core.AI.Completions;
using CrestApps.Core.AI.Deployments;
using CrestApps.Core.AI.Models;
using Microsoft.Extensions.AI;

namespace MyApp.Services;

public sealed class SupportAnswerService
{
    private readonly IAICompletionService _completionService;
    private readonly IAIDeploymentManager _deploymentManager;

    public SupportAnswerService(
        IAICompletionService completionService,
        IAIDeploymentManager deploymentManager)
    {
        _completionService = completionService;
        _deploymentManager = deploymentManager;
    }

    public async IAsyncEnumerable<string> StreamAsync(
        string prompt,
        string deploymentName = null,
        [EnumeratorCancellation] CancellationToken cancellationToken = default)
    {
        var deployment = await _deploymentManager.ResolveSlotAsync(
            AIDeploymentSlotNames.Chat,
            deploymentName,
            cancellationToken: cancellationToken)
            ?? throw new InvalidOperationException("No deployment can fill the chat slot.");

        var context = new AICompletionContext
        {
            SystemMessage = "You are a concise support assistant.",
            Temperature = 0.2f,
            MaxTokens = 800,
        };

        // Applied only when the deployment declares the reasoning feature and the reasoningEffort parameter.
        context.ModelParameters[AIDeploymentParameterNames.ReasoningEffort] = "Low";

        await foreach (var update in _completionService.CompleteStreamingAsync(
            deployment,
            [new ChatMessage(ChatRole.User, prompt)],
            context,
            cancellationToken))
        {
            if (!string.IsNullOrEmpty(update.Text))
            {
                yield return update.Text;
            }
        }
    }
}

Read the full file on GitHub · 217 lines

Changes

What this file has done since we first saw it

Hashed on every crawl. A supply-chain change to an agent config is a question of when, not whether, so the history is kept rather than the latest state alone.

  1. yesterday Changed · +126 lines · +168 tokens per session bdc263059990
  2. 1mo ago First seen · 91 lines · 20 tokens per session scan A 1245f6cb97f3

Subscribe to this mod's changes

crestapps-core-chat is a skill published in the GitHub repository CrestApps/CrestApps.AgentSkills (13 stars, last pushed yesterday), licensed MIT. It adds 188 tokens to every session and 2,187 once invoked, about $0.0008 per session on Opus 5.5. A static security scan graded it A with 0 findings. No closer match exists in the catalogue, so it is treated as the original; first seen 2026-08-30.

Related

Other skills, from other repositories

tech-specs

To define clear, testable tech specs from requirements — target-state architecture, contracts, interfaces.

griddynamics/rosetta · 23 tokens

sast-idor

Detect Insecure Direct Object Reference (IDOR) vulnerabilities in a codebase using a three-phase approach: recon (find candidates), batched verify (check authorization in parallel subagents, 3 candidates each), and merge (consolidate batch results). Checks endpoints for missing ownership or authorization checks on…

capture0x/YeepForge · 103 tokens

api-mirror

Stand up a persistent, self-refreshing local mirror of a bulk upstream dataset with the MirrorService (@cyanheads/mcp-ts-core/mirror). Use when a server wraps a large or slow API and should query a synced local index (embedded SQLite + FTS5) instead of paginating the live API per request.

cyanheads/pubchem-mcp-server · 68 tokens

add-service

Scaffold a new service integration. Use when the user asks to add a service, integrate an external API, or create a reusable domain module with its own initialization and state.

cyanheads/nhtsa-vehicle-safety-mcp-server · 38 tokens

api-utils

API reference for all utilities exported from @cyanheads/mcp-ts-core/utils. Use when looking up utility method signatures, options, peer dependencies, or usage patterns.

cyanheads/openfda-mcp-server · 37 tokens

api-workers

Cloudflare Workers deployment using createWorkerHandler from @cyanheads/mcp-ts-core/worker. Covers the full handler signature, binding types, CloudflareBindings extensibility, runtime compatibility guards, and wrangler.toml requirements.

cyanheads/musicbrainz-mcp-server · 51 tokens