horse: Skill for Claude Code

.agents/skills/horse-grpc/SKILL.md

horse-grpc is a skill for Claude Code, Codex from HashLoad/horse. It costs 33 tokens per session (790 once invoked), scanned A, original, MIT.

A development guide for building and maintaining gRPC services, HTTP/2 connections, and Protobuf message serialization in the Horse framework.

In plain words
What is it for?
Use it when defining Protobuf messages, generating message classes, implementing gRPC services, or configuring HTTP/2 and h2c transport in Horse.
Why use it?
It records framework-specific rules that can affect whether generated messages and services work correctly. Following it helps avoid protocol and metadata errors in Delphi or Lazarus projects.

Skill for Claude CodeCodex

Written for no agent in particular: nothing here depends on one. Also seen: installed under .agents/ (shared by several agents).

This is HashLoad/horse's own configuration. It tells Claude Code and Codex how to work on horse itself, so it is not a mod to install elsewhere. Copy it as a starting point and replace the rules that are about this project. Everything horse configures →

About the project

Horse is a lightweight web framework for Delphi and Lazarus programs, providing tools for building HTTP servers and APIs. It is for developers who need routing, request handling, middleware, streaming, WebSockets, and related server features in those languages. Its catalogue skills support working with the framework.

HashLoad/horse · 1,374 stars · on GitHub

Reuse

Borrowing it

Nothing to install: this file belongs to HashLoad/horse. Take a copy, put it at the same path in your own repository, and replace the rules that are about this project with yours.

Copy the file
curl -O https://raw.githubusercontent.com/HashLoad/horse/master/.agents/skills/horse-grpc/SKILL.md
Clone the repo
git clone --depth 1 https://github.com/HashLoad/horse

Made for: Claude Code, Codex.

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 horse-grpc

README.md
[![agentmods](https://agentmods.dev/badge/skills/hashload/horse/horse-grpc.svg)](https://agentmods.dev/skills/hashload/horse/horse-grpc)
Your own site
<a href="https://agentmods.dev/skills/hashload/horse/horse-grpc"><img src="https://agentmods.dev/badge/skills/hashload/horse/horse-grpc.svg" alt="Measured on agentmods" height="20"></a>
Per session 33 Skills are progressive disclosure: only the name and description are preloaded; the body loads when the skill is used.
When invoked 790 The whole file, excluding the scripts and references it only reads on demand.
Security scan A 0 findings. Scan, not verified.
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.00033 $0.00790
Opus 5 $0.00016 $0.00395
Sonnet 5 $0.00007 $0.00158
Haiku 4.5 $0.00003 $0.00079

Measured 6d ago against content hash d594fd17ce90, method: parsed. Prices are Anthropic first-party input rates as of 2026-09-06, from the pricing page.

Security

Grade A, and why

horse-grpc 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 6d ago.

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.

.agents/skills/horse-grpc/SKILL.md · 85 lines

How it starts

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

Desenvolvimento gRPC no Horse

Este guia estabelece os padrões e instruções recomendadas para projetar, depurar e estender serviços gRPC usando o provedor nativo de transporte HTTP/2 do Horse.

🟢 Definição de Mensagens e Serviços

Ao gerar ou criar classes de mensagens a partir de arquivos .proto (usando o horse-pb-compiler), garanta que:

  1. Habilitação de RTTI ({$M+}): O arquivo contendo as classes geradas deve ter a diretiva {$M+} habilitada para o Delphi e Lazarus.
  2. Propriedades Publicadas: Todas as propriedades anotadas com [ProtoMember(Tag)] devem residir na seção published para a geração correta de metadados de offsets.

Exemplo de Mensagem:

unit users;

{$M+}

interface

uses
  System.SysUtils,
  Horse.Grpc.Attributes;

type
  [GrpcMessage]
  TUserRequest = class
  private
    Fid: Integer;
  published
    [ProtoMember(1)]
    property id: Integer read Fid write Fid;
  end;

🟢 Implementação de Serviços gRPC

Ao implementar uma interface de serviço gRPC (ex: IUserService), atente-se às seguintes regras de conformidade arquitetural:

  1. Desativação de ARC (Contagem de Referências): Sobrescreva os métodos _AddRef e _Release para retornarem -1. Isso previne que a RTTI interna do compilador destrua acidentalmente a instância do objeto durante uma chamada dinâmica ao método Invoke.
  2. Retorno Síncrono de Instâncias: Métodos de serviço devem instanciar e retornar os objetos de Response. O provedor gRPC é responsável por liberá-los após a serialização do frame DATA.

Exemplo de Serviço:

type
  TUserServiceImpl = class(TInterfacedObject, IUserService)
  protected
    function _AddRef: Integer; stdcall;
    function _Release: Integer; stdcall;
  public
    function GetUser(const ARequest: TUserRequest): TUserResponse;
  end;

function TUserServiceImpl._AddRef: Integer;
begin
  Result := -1;
end;

function TUserServiceImpl._Release: Integer;
begin
  Result := -1;
end;

function TUserServiceImpl.GetUser(const ARequest: TUserRequest): TUserResponse;
begin
  Result := TUserResponse.Create;
  Result.id := ARequest.id;
  Result.name := 'Nome do Usuário';
end;

Read the full file on GitHub · 85 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. 6d ago First seen · 85 lines · 33 tokens per session scan A d594fd17ce90

Subscribe to this mod's changes

horse-grpc is a skill published in the GitHub repository HashLoad/horse (1,374 stars, last pushed yesterday), licensed MIT. It adds 33 tokens to every session and 790 once invoked, about $0.0002 per session on Opus 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.