plugin-architecture

Create self-contained plugins with manifests and registration functions for CPAP Analyzer.

Updated Feb 11, 2026
One-click install
npx skills add https://github.com/kabaka/cpap-analyzer --skill plugin-architecture-kabaka
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: plugin-architecture
Source: https://github.com/kabaka/cpap-analyzer/tree/main/.github/skills/plugin-architecture
Command: npx skills add https://github.com/kabaka/cpap-analyzer --skill plugin-architecture-kabaka

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

CPAP Analyzer's plugin architecture enables rapid, isolated extension of the core product by adding support for new machines, analyses, visualizations, integrations, and export formats without modifying the main codebase.

Core Features & Use Cases

  • Self-contained plugins: Each plugin declares its type and capabilities, registers with the plugin system, and can depend on core APIs.
  • Lazy-loaded and discoverable: Plugins are loaded on demand and enumerated by the system to minimize initial bundle size and maximize flexibility.
  • Design-for-testability: Plugins expose a clear API, include unit tests, and can be validated in isolation before release.
  • Use Case: Add support for a new machine model or export format by creating a small, self-contained plugin following the guidelines, then register it in the manifest.

Quick Start

Create a new plugin directory, implement the required registration interface, and register the plugin with the manifest.

Frequently Asked Questions about plugin-architecture

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

FAQPage Schema
How do I add support for a new machine model in CPAP Analyzer?

To add a new machine model in CPAP Analyzer, create a modular plugin with a frontmatter-based discovery manifest and a registration function, then register it with the plugin system.

What is plugin architecture and how does it extend CPAP Analyzer?

Plugin architecture is a modular system that extends CPAP Analyzer with new machines, analyses, visualizations, and export formats without modifying the main codebase, using isolated, self-contained extensions.

How does lazy-loading work for CPAP Analyzer plugins?

Lazy-loading works by loading modular plugins on demand and enumerating them at runtime through a frontmatter-based discovery manifest, minimizing the initial bundle size of the CPAP Analyzer.

Do I need to include tests when developing a CPAP Analyzer plugin?

Yes, you need to include unit tests because plugins must be self-contained, typed, and testable, allowing validation in isolation before release within the CPAP Analyzer plugin architecture.

What's the best way to structure a modular plugin for CPAP Analyzer?

The best way to structure a modular plugin is to make it self-contained with a frontmatter-based discovery manifest, a registration function, and optional scripts, references, and assets directories.

Can I add new export formats to CPAP Analyzer without modifying the core codebase?

Yes, you can add new export formats by creating a small, self-contained plugin following the modular architecture guidelines, then registering it in the manifest to ensure runtime discovery.