Agent skill

Horse Multi Instance

by HashLoad in HashLoad/horse

Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports.

MITAuto-check passed

Install Horse Multi Instance

skills CLI
$ npx skills add HashLoad/horse --skill horse-multi-instance -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install HashLoad/horse horse-multi-instance --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/HashLoad/horse.git skills-src && mkdir -p .claude/skills && cp -r skills-src/doc/skills/horse-multi-instance .claude/skills/horse-multi-instance && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
horse-multi-instance
GitHub stars
1.4k
Token cost
~653 tokens
SKILL.md length
201 words
Files
1
Skills in repo
23
Repo updated
First seen
Licence
MIT

At a glance

Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports.

  • Works in 3 steps: Never write static vars inside local… → Backward Compatibility: If the project… → FPC/Lazarus Compatibility: When writing…
  • SKILL.md covers Decoupled Server Contexts, Declaring and Configuring…, Starting Listeners Concurrently and Stopping Servers and Freeing…, plus 1 more section
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Horse Multi Instance is an agent skill from HashLoad/horse. Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports.

Its SKILL.md is about 650 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Fast, opinionated, minimalist web framework for Delphi. The licence is MIT.

Example prompts

  • “Use the horse-multi-instance skill to guideline for instantiating and configuring independent Horse server instances (THorseInstance) running…”
  • “/horse-multi-instance”

Workflow steps

3 steps, taken from the first numbered list in SKILL.md.

  1. Never write static vars inside local middlewares: Ensure any middleware used inside a THorseInstance relies on instance-specific…
  2. Backward Compatibility: If the project does not require multiple instances, continue using the static THorse facade class. It is…
  3. FPC/Lazarus Compatibility: When writing samples or libraries for Lazarus, avoid Delphi anonymous procedures inline (procedure begin end)…

What it can do on your machine

Read from SKILL.md and the folder at commit d4351a5. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md (its code samples are pascal).

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Horse Multi Instance loads about 653 tokens when it runs. Until then it costs about 40 tokens; SKILL.md has 201 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~40
When it runs · the whole SKILL.md, loaded when a task matches
~653

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from HashLoad/horse at commit d4351a5, republished under its MIT licence (© HashLoad). 201 words, ~653 tokens.

Download SKILL.mdSave it as .claude/skills/horse-multi-instance/SKILL.md (or your agent's skills folder).
name
horse-multi-instance
description
Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports.

Horse Multi-Instance

Decoupled Server Contexts

Use THorseInstance when your application needs to expose multiple separate HTTP interfaces (e.g., a public REST API on port 8080 and an admin/telemetry dashboard on port 9090) within the same process.

Each THorseInstance allocates its own isolated:

  • Routing tables
  • Middleware pipelines
  • Active requests telemetry counters
  • Lifecycle hooks (onRequest, preParsing, preValidation, onSend, onResponse)

Declaring and Configuring Instances

Always create and configure THorseInstance explicitly, registering endpoints and middlewares directly on the instance:

pascal
var
  FPublicApi: THorseInstance;
  FAdminPanel: THorseInstance;
begin
  // 1. Public API configuration
  FPublicApi := THorseInstance.Create;
  FPublicApi.Use(Jhonson); // Middleware registered only for FPublicApi
  FPublicApi.Get('/api/v1/ping', DoPingHandler);

  // 2. Admin Panel configuration
  FAdminPanel := THorseInstance.Create;
  FAdminPanel.Get('/admin/metrics', DoMetricsHandler);
end;

Starting Listeners Concurrently

Since listeners enter blocking execution loops (depending on the provider and application shape), you must start the physical socket listening in separate threads:

pascal
// Start Instance 1 in a background thread
TThread.CreateAnonymousThread(
  procedure
  begin
    FPublicApi.Listen(9001);
  end).Start;

// Start Instance 2 in a background thread
TThread.CreateAnonymousThread(
  procedure
  begin
    FAdminPanel.Listen(9002);
  end).Start;

Stopping Servers and Freeing Resources

When shutting down, stop listening on each instance before freeing the objects:

pascal
FPublicApi.StopListen;
FAdminPanel.StopListen;

FPublicApi.Free;
FAdminPanel.Free;

Design Safeguards & AI Best Practices

  1. Never write static vars inside local middlewares: Ensure any middleware used inside a THorseInstance relies on instance-specific configuration or request-scoped services (Req.Services).
  2. Backward Compatibility: If the project does not require multiple instances, continue using the static THorse facade class. It is automatically routed to a default instance under the hood.
  3. FPC/Lazarus Compatibility: When writing samples or libraries for Lazarus, avoid Delphi anonymous procedures inline (procedure begin end) for route handlers. Use standard global procedures instead.

© HashLoad, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in doc/skills/horse-multi-instance of HashLoad/horse.

Open the folder on GitHubat commit d4351a5

Compare with similar skills

Horse Multi Instance next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Horse Multi Instance compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Horse Multi Instance this skillHashLoad/horse1.4k—~653Automated safety check: PassMIT
Configure Channelopenclaw/openclaw392k—~946Automated safety check: PassMIT
Instance Awarenessn8n-io/n8n207k—~1.4kAutomated safety check: PassCustom licence
ConfigurationBuilderIO/agent-native7.1k—~2.1kAutomated safety check: PassNone
Configure Eccaffaan-m/ECC275k—~1.3kAutomated safety check: PassMIT
Configure Eccaffaan-m/ECC275k—~1.1kAutomated safety check: PassMIT

Similar skills

  • Configure Channel

    openclaw/openclaw

    Configure and prove a chat channel with non-interactive one-liners; secrets only as SecretRefs.

    392k GitHub stars~946 tokensUpdated today
    Auto-check passed
  • Official

    Load when the request depends on what is already on this instance rather than on what the user just typed: a short or ambiguous opener ("fix it", "carry on", "what should I look at"), a reference to…

    207k GitHub stars~1.4k tokensUpdated today
    Productivity & AutomationAuto-check passed
  • Configuration

    BuilderIO/agent-native

    Where a configuration value belongs — app config schema, agent-native.config.ts, or an environment variable — and how the layers resolve.

    7.1k GitHub stars~2.1k tokensUpdated today
    DevOps & CloudAuto-check passed
  • Configure Ecc

    affaan-m/ECC

    Claude Code、Codex、Kimi 内で ECC のインストール、更新、再設定を案内し、各ハーネスが実際に備えるプラグイン、スコープ、フック機能を守ります。

    275k GitHub stars~1.3k tokensUpdated 3 days ago
    Auto-check passed
  • Configure Ecc

    affaan-m/ECC

    在 Claude Code、Codex 或 Kimi 内引导 ECC 安装、更新或重新配置,同时严格遵守各家工具真实的插件、范围和 Hook 能力。

    275k GitHub stars~1.1k tokensUpdated 3 days ago
    Auto-check passed
  • Writing Guidelines

    sickn33/agentic-awesome-skills

    Curated upstream guidance for Writing Guidelines; use when the workflow matches the user goal.

    47k GitHub starsUsed in 1 repo~438 tokens
    Writing & ContentAuto-check passed

More from HashLoad/horse

All 23 skills in this repo
  • Horse App Structure

    HashLoad/horse

    Guide for setting up Horse applications, bootstrap program (.dpr), basic console initialization, and registering modules.

    1.4k GitHub stars~716 tokensUpdated yesterday
    Auto-check passed
  • Guide for setting up thread-safe database connection pooling (FireDAC / UniDAC) in multithreaded Horse applications.

    1.4k GitHub stars~1.4k tokensUpdated yesterday
    Auto-check passed
  • Guide for managing request-scoped contextual services and IoC (dependency injection) in Delphi and Lazarus.

    1.4k GitHub stars~985 tokensUpdated yesterday
    Auto-check passed
  • Horse Files Streams

    HashLoad/horse

    Guide to handling file uploads (multipart), downloads, and stream lifetime management in the Horse framework.

    1.4k GitHub stars~601 tokensUpdated yesterday
    Auto-check passed
  • Horse Grpc

    HashLoad/horse

    Guidelines and workflows for developing and maintaining gRPC services, HTTP/2 h2c transport, and Protobuf serialization within the Horse framework.

    1.4k GitHub stars~776 tokensUpdated yesterday
    Auto-check passed
  • Guide for writing automated integration tests for Horse endpoints using DUnit/DUnitX and THTTPClient.

    1.4k GitHub stars~964 tokensUpdated yesterday
    Auto-check passed

Questions about Horse Multi Instance

What does Horse Multi Instance do?

Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports. Horse Multi Instance is an agent skill from HashLoad/horse. Guidelines for instantiating and configuring independent Horse server instances (THorseInstance) running concurrently on different ports.

How do I install Horse Multi Instance in Claude Code?

Run `npx skills add HashLoad/horse --skill horse-multi-instance -a claude-code`. Or copy the skill folder (doc/skills/horse-multi-instance in HashLoad/horse) into .claude/skills/horse-multi-instance in your project. Claude Code loads it when a task matches its description.

How do I install Horse Multi Instance in Codex?

Run `npx skills add HashLoad/horse --skill horse-multi-instance -a codex`. Or copy the skill folder (doc/skills/horse-multi-instance in HashLoad/horse) into .agents/skills/horse-multi-instance in your project. Codex loads it when a task matches its description.

Can I use Horse Multi Instance in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add HashLoad/horse --skill horse-multi-instance -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/horse-multi-instance, .gemini/skills/horse-multi-instance, .github/skills/horse-multi-instance and .opencode/skills/horse-multi-instance in your project.

What does Horse Multi Instance need to run?

SKILL.md names no scripts, command-line tools or credentials: Horse Multi Instance is instructions for the agent only.

Does Horse Multi Instance access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Horse Multi Instance safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Horse Multi Instance use?

Horse Multi Instance is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Horse Multi Instance use?

About 653 tokens (SKILL.md is roughly 2.6k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Horse Multi Instance?

Skills that share tags, products or a category with Horse Multi Instance: Configure Channel (openclaw/openclaw, 392k stars), Instance Awareness (n8n-io/n8n, 207k stars), Configuration (BuilderIO/agent-native, 7.1k stars) and Configure Ecc (affaan-m/ECC, 275k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Horse Multi Instance?

HashLoad (a GitHub organization) maintains it in HashLoad/horse, which has 1,377 GitHub stars. The repository holds 23 skills in this directory. The repository was last updated on October 7, 2026.

Source: HashLoad/horse on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.