API Fetch Wrapper

Reference TypeScript-mønster til indpakning af en ekstern HTTP API: env secrets, bounded retry

Af ChronoAIProject · ChronoAIProject/Ornn

Testet · Virker ★ 8.8/10

API Fetch Wrapper — Reference TypeScript-mønster til indpakning af en ekstern HTTP API: env secrets, bounded retry

Hvad det gør

Et kørbart TypeScript-eksempel, der indkapsler en offentlig HTTP API (nøglefri Open-Meteo demo) med env-baseret legitimationshåndtering, et begrænset genforsøg ved midlertidige fejl og fejlnormalisering, der aldrig gentager upstream-body. Udløses, når du beder om at bygge en færdighed eller klient, der kalder en ekstern tjeneste med korrekt genforsøg og hemmelig hygiejne. Genbrug retry/error-skelettet og udskift URL'en plus process.env-nøglen for en autentificeret API.

Testrapport

Kørte den medfølgende kode live mod det reelle Open-Meteo-endepunkt: happy path returnerede 16.5C / 17.4 km/h, fejlformuleret input producerede en struktureret {error} med exit 1, og en utilgængelig host udløste genforsøget (en 500ms forsinkelse blev observeret i vægtid) og returnerede derefter {error,cause} uden at upstream-body lækkede. Mod en naiv baseline-wrapper tilføjer den tre ikke-indlysende detaljer, en gennemsnitlig implementering springer over: no-leak-on-failure fejlmapping, tømning af response-body for socket-genbrug og et bevidst transient-only (408/429/5xx) retry-filter. Eksemplet er lille, men alle påstande i dets frontmatter holdt under eksekvering.

Testet: 2026-07-20 · Claude Code 2.x (agent harness)

Installation

git clone https://github.com/ChronoAIProject/Ornn
mkdir -p ~/.claude/skills
cd Ornn && cp -r examples/api-fetch-wrapper ~/.claude/skills/api-fetch-wrapper

Kommandoer og eksempelprompter

  • /api-fetch-wrapperReference TypeScript-mønster til indpakning af en ekstern HTTP API: env secrets, bounded retry

Skills udløses af almindelige forespørgsler — ingen kommandoer at huske. Efter installationen aktiverer prompter som disse skillen (på engelsk):

  • Show me a TypeScript pattern for wrapping an external API safely
  • Build a fetch wrapper with bounded retry and no leaked error bodies
  • Wrap this authed API client with env secrets and retry logic