service-registry

Register external services using a three-layer model of type, adapter, and instance.

9|25|Updated Jan 16, 2024
One-click install
npx skills add https://github.com/uncefact/tests-untp --skill service-registry-uncefact
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: service-registry
Source: https://github.com/uncefact/tests-untp/tree/main/.claude/skills/service-registry
Command: npx skills add https://github.com/uncefact/tests-untp --skill service-registry-uncefact

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill provides a repeatable pattern for adding new external services by clearly separating the service type (capability), the adapter (implementation), and the instance (configured deployment), enabling multi-tenant scalability and predictable integrations.

Core Features & Use Cases

  • Three-layer model enables multi-tenancy and runtime swapping of service implementations.
  • Consistent naming, config schemas, and resolver functions to reduce integration risk.
  • Facilitates adding adapters for new providers, seeding instances, and registering registry entries across tenants.

Quick Start

Follow the three-layer pattern to register a new service: define a service type, implement an adapter, and configure an instance.

Frequently Asked Questions about service-registry

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

FAQPage Schema
How do I structure multi-tenant service integrations to support runtime swapping of providers?

Multi-tenant service integrations can be structured using a three-layer model that separates service type, adapter, and instance. This separation enables runtime swapping of service implementations and ensures per-tenant isolation through a registry-driven resolution process.

What is the best way to register a new external service across tenants?

To register a new external service across tenants, define a service type for the capability, implement an adapter for the provider, and configure a deployment instance. This pattern ensures consistent naming, schema validation, and predictable integrations.

How do resolver functions work in a service registry?

Resolver functions in a service registry modify the service resolution flow to dynamically route requests to the correct adapter and instance. They ensure per-tenant isolation by validating configuration schemas against registered registry entries during the lookup process.

Does this multi-tenant integration pattern require specific dependencies or components?

No specific external dependencies or components are required to implement this multi-tenant integration pattern. The model relies entirely on defining internal config schemas, resolver functions, and adapter implementations within your existing platform environment.

When should I separate service type, adapter, and instance in my integration architecture?

You should separate service type, adapter, and instance when you need to scale cross-tenant integrations and add new providers dynamically. This architecture clearly distinguishes between capability, implementation, and configured deployment to reduce integration risk.

Why use a registry-driven resolution process for external services?

A registry-driven resolution process is used to enforce consistent naming conventions and schema validation across multiple tenants. It provides a repeatable pattern for managing the lifecycle of external services and seeding new instances predictably.