Horse Providers
DevOps & Securityhorse-providersHorse Providers is an Agent Skill for devops & security published in the HashLoad/horse repository on GitHub: a SKILL.md instruction file an AI agent can load to do this task.
Guide to selecting and configuring Horse server adapters (Indy console, CGI, ISAPI, Daemon, HTTP.sys).
QUICK START
How to use this skill
Bring this guide into your coding agent with a prompt tailored to the tool you use.
- Open your project in Codex.
- Copy and paste the prompt below.
- Review files and risks before approving any action.
Prompt to paste
Inspect the Agent Skill at https://github.com/HashLoad/horse/blob/HEAD/doc/skills/horse-providers/SKILL.md and all supporting files. Report provenance, permissions, scripts, dependencies, and security risks. Propose an exact installation into .agents/skills/horse-providers, but wait for my approval before writing files or running scripts.
Copying this prompt does not install or run the skill. Review third-party files before use.
Horse Providers
Available Provedores (Server Adapters)
Horse supports multiple execution providers. To change the provider, simply include the corresponding unit in your .dpr uses clause.
Horse.Provider.Console(Default - Indy-based): Launches a standalone console application listening on a TCP port. Best for local development and microservices.Horse.Provider.Daemon: Integrates Horse with Windows Services or Linux Daemons.Horse.Provider.HTTPsys: Integrates with the native Windows HTTP Server API (HTTP.sys). Provides high performance and native SSL/HTTPS support on Windows without needing Apache/Nginx.Horse.Provider.CGI/Horse.Provider.ISAPI: For deployment inside IIS (Internet Information Services) or Apache on Windows.Horse.Provider.Apache: Native Apache web server module.
Configuration Example
program MyAPI;
{$APPTYPE CONSOLE}
uses
// Include the target provider unit. Only ONE provider should be active.
Horse,
Horse.Provider.HTTPsys;
begin
THorse.Get('/health',
procedure(Req: THorseRequest; Res: THorseResponse; Next: TProc)
begin
Res.Send('healthy');
end);
// Starts the HTTPsys server
THorse.Listen(8080);
end.