From ocaml-dev
Fetches IETF RFCs as plain text, stores in spec/ directory, and generates OCamldoc citations for OCaml modules, functions, and types. Use for implementing standards and protocol compliance docs.
npx claudepluginhub avsm/ocaml-claude-marketplace --plugin ocaml-devThis skill uses the workspace's default tool permissions.
Invoke this skill when:
Searches, retrieves, and installs Agent Skills from prompts.chat registry using MCP tools like search_skills and get_skill. Activates for finding skills, browsing catalogs, or extending Claude.
Searches prompts.chat for AI prompt templates by keyword or category, retrieves by ID with variable handling, and improves prompts via AI. Use for discovering or enhancing prompts.
Checks Next.js compilation errors using a running Turbopack dev server after code edits. Fixes actionable issues before reporting complete. Replaces `next build`.
Invoke this skill when:
Always fetch RFCs in plain text format from:
https://datatracker.ietf.org/doc/html/rfcXXXX.txt
Important: Use .txt extension, not .html.
Save RFC files to spec/ directory in project root:
spec/rfc6265.txt
spec/rfc3492.txt
Create spec/ directory if it doesn't exist.
{{:https://datatracker.ietf.org/doc/html/rfcXXXX}RFC XXXX}
{{:https://datatracker.ietf.org/doc/html/rfcXXXX#section-N.M}RFC XXXX Section N.M}
#section-N - Main numbered section#section-N.M - Subsection#appendix-X - Appendix (A, B, C, etc.)(** RFC 3492 Punycode: A Bootstring encoding of Unicode for IDNA.
This module implements the Punycode algorithm as specified in
{{:https://datatracker.ietf.org/doc/html/rfc3492}RFC 3492}.
{2 References}
{ul
{- {{:https://datatracker.ietf.org/doc/html/rfc3492}RFC 3492} - Punycode}
{- {{:https://datatracker.ietf.org/doc/html/rfc5891}RFC 5891} - IDNA}} *)
val adapt : delta:int -> numpoints:int -> firsttime:bool -> int
(** [adapt ~delta ~numpoints ~firsttime] computes the new bias value.
Implements the bias adaptation algorithm from
{{:https://datatracker.ietf.org/doc/html/rfc3492#section-6.1}RFC 3492 Section 6.1}. *)
type error =
| Overflow of position
(** Arithmetic overflow. See
{{:https://datatracker.ietf.org/doc/html/rfc3492#section-6.4}
RFC 3492 Section 6.4}. *)
| Invalid_digit of position * char
(** Invalid Punycode digit. See
{{:https://datatracker.ietf.org/doc/html/rfc3492#section-5}
RFC 3492 Section 5}. *)
val base : int
(** The base value (36) for Punycode encoding.
See {{:https://datatracker.ietf.org/doc/html/rfc3492#section-5}
RFC 3492 Section 5}. *)
spec/ directoryspec/When an RFC obsoletes another:
(** Implements {{:https://datatracker.ietf.org/doc/html/rfc6265}RFC 6265}
which obsoletes {{:https://datatracker.ietf.org/doc/html/rfc2965}RFC 2965}. *)
(** IDNA-compatible encoding combining
{{:https://datatracker.ietf.org/doc/html/rfc5891}RFC 5891} (IDNA Protocol)
with {{:https://datatracker.ietf.org/doc/html/rfc3492}RFC 3492} (Punycode). *)