companion-v1-api-compliance

Reviews Bitfocus Companion modules for @companion-module/base v1.x lifecycle and version-specific compliance.

Updated May 19, 2026
One-click install
npx skills add https://github.com/digitaldrummerj/bitfocus-companion-skills --skill companion-v1-api-compliance-digitaldrummerj
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: companion-v1-api-compliance
Source: https://github.com/digitaldrummerj/bitfocus-companion-skills/tree/main/plugins/companion-v1-api-compliance
Command: npx skills add https://github.com/digitaldrummerj/bitfocus-companion-skills --skill companion-v1-api-compliance-digitaldrummerj

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve? Bitfocus Companion modules built on @companion-module/base v1.x must satisfy lifecycle requirements and version-specific API rules that change from v1.5 through v1.14, and manually tracking deprecated patterns, required methods, and upgrade paths during code review is error-prone. ## Core Features & Use Cases - Required Lifecycle Checks: Verifies runEntrypoint placement, UpgradeScripts export, init, destroy, configUpdated, getConfigFields, yarn.lock usage, and dist/ gitignore rules for every v1.x module. - Per-Version Compliance Rules: Applies cumulative checks for API v1.5 through v1.14, including deprecated isVisible callbacks, redundant parseVariablesInString calls, Node.js permissions in the manifest, and config layout opt-outs. - Upgrade Recommendations: Maps a module's current API version to suggested upgrade targets, including guidance on when to consider the v2.0 migration. - Use Case: While reviewing a legacy Companion module pinned to @companion-module/base ^1.12.x, use this Skill to flag a missing filesystem permission in companion/manifest.json and an isVisible function that should be migrated to isVisibleExpression. ## Quick Start Review this Companion module for v1 API compliance and list any deprecated patterns or missing lifecycle methods.

Frequently Asked Questions about companion-v1-api-compliance

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

FAQPage Schema
How do I review a Bitfocus Companion module for v1 API compliance?▼

Check the @companion-module/base version in package.json to identify the API version, then apply the required lifecycle checks plus all per-version rules up to that version. This Skill provides the full checklist from v1.5 through v1.14.

What lifecycle methods are required in a Companion v1.x module?▼

Every v1.x module must call runEntrypoint at the bottom of the main file, export an UpgradeScripts array, and implement init, destroy, configUpdated, and getConfigFields. It must also use yarn.lock only and keep dist/ gitignored.

Which deprecated patterns should be flagged in Companion v1.x modules?▼

Flag isVisible function callbacks on option fields (deprecated in v1.12 for isVisibleExpression), self.parseVariablesInString on textinput fields with useVariables (no-op since v1.13), and custom feedback invert options duplicating Companion's built-in invert since v1.5.

Does this Skill cover @companion-module/base v2.0 modules?▼

No, this Skill covers only v1.5 through v1.14 for Companion 3.1 through 4.2. For v2.0 modules, which introduce breaking changes and require Node 22, use the companion-v2-api-compliance Skill instead.

Why does a Companion module fail to run in Companion 4.0?▼

As of API v1.12, modules run under the Node.js permissions model, so using worker_threads, child_process, native addons, or filesystem access without declaring the matching permission in companion/manifest.json causes runtime failure.