certd-online-dns-provider-dev

Generates Certd online DNS provider plugins as YAML with an AbstractDnsProvider class.

5.0k|586|Updated Dec 13, 2020
One-click install
npx skills add https://github.com/certd/certd --skill certd-online-dns-provider-dev
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: certd-online-dns-provider-dev
Source: https://github.com/certd/certd/tree/main/.trae/skills/certd-online-plugin-dev/skills/dns-provider-dev
Command: npx skills add https://github.com/certd/certd --skill certd-online-dns-provider-dev

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill requires @certd/pipeline.

What problem does it solve?

Developing DNS provider plugins for the Certd certificate automation platform requires knowing the online plugin YAML format and the AbstractDnsProvider API; this Skill produces compliant plugin code without digging through framework internals.

Core Features & Use Cases

  • Online YAML Plugin Output: Produces a complete plugin definition with pluginType set to dnsProvider, including input configuration for authorization and domain parameters.
  • AbstractDnsProvider Implementation: Generates a content class implementing createRecord and removeRecord for DNS-01 challenge record management.
  • Module Loading Conventions: Enforces await _ctx.import(...) for dependencies and /@ absolute paths for server/src modules, replacing the deprecated @IsDnsProvider decorator approach.
  • Use Case: A developer adding support for a new DNS provider (e.g., a regional registrar API) to Certd can generate the full plugin skeleton with correct record creation, deletion, logging, and error handling.

Quick Start

Generate a Certd online DNS provider plugin for my DNS service using its REST API endpoint for creating and deleting TXT records.

Frequently Asked Questions about certd-online-dns-provider-dev

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I create a DNS provider plugin for Certd?

Create an online YAML plugin with pluginType set to dnsProvider and a content class extending AbstractDnsProvider. Implement createRecord and removeRecord methods that call your DNS provider's API, loading dependencies with await _ctx.import.

What is the AbstractDnsProvider class in Certd plugin development?

AbstractDnsProvider is the base class from @certd/pipeline that DNS provider plugins extend. It provides hooks like onInstance for access initialization and requires createRecord and removeRecord implementations for DNS-01 challenge handling.

How do I load modules inside a Certd online plugin?

Use await _ctx.import with the package name for npm modules, or the /@ prefix for absolute paths under server/src. The deprecated @IsDnsProvider decorator and standalone TypeScript files should not be used.

What must createRecord return in a Certd DNS provider?

createRecord must return the record information needed later for deletion. removeRecord then receives this data through options.recordReq and options.recordRes to delete the correct DNS record.

How should errors be handled in a Certd DNS provider plugin?

Creation failures must throw an exception so the pipeline stops, while deletion failures should log a warning without blocking unrelated flows. Network, authorization, and API business errors each need distinct log messages.