Agent skill

Coordinator Lifecycle

by FutureTense in FutureTense/keymaster

Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations.

MITAuto-check passed

Install Coordinator Lifecycle

skills CLI
$ npx skills add FutureTense/keymaster --skill coordinator-lifecycle -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install FutureTense/keymaster coordinator-lifecycle --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/FutureTense/keymaster.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/coordinator-lifecycle .claude/skills/coordinator-lifecycle && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
coordinator-lifecycle
GitHub stars
349
Token cost
~857 tokens
SKILL.md length
289 words
Files
1
Skills in repo
7
Repo updated
First seen
Licence
MIT

At a glance

Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations.

  • Works in 4 steps: State Synchronization (Synced Enum) → Scheduling Notifications → Autolock Integration → …
  • SKILL.md covers Coordinator Architecture &… and Guidelines for Modifying…
  • Instructions only: no scripts, shell commands, URLs or credentials in SKILL.md

What it does

Coordinator Lifecycle is an agent skill from FutureTense/keymaster. Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations.

Its SKILL.md is about 860 tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Home Assistant integration for managing Z-Wave enabled locks. The licence is MIT.

Example prompts

  • “/coordinator-lifecycle”

Requirements

  • A credential in STORAGE_KEY

Workflow steps

4 steps, taken from the first numbered list in SKILL.md.

  1. State Synchronization (Synced Enum)
  2. Scheduling Notifications
  3. Autolock Integration
  4. Storage & Migrations

What it can do on your machine

Read from SKILL.md and the folder at commit b6a1ea8. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    No scripts in the folder and no shell commands in SKILL.md.

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Coordinator Lifecycle loads about 857 tokens when it runs. Until then it costs about 52 tokens; SKILL.md has 289 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~52
When it runs · the whole SKILL.md, loaded when a task matches
~857

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from FutureTense/keymaster at commit b6a1ea8, republished under its MIT licence (© FutureTense). 289 words, ~857 tokens.

Download SKILL.mdSave it as .claude/skills/coordinator-lifecycle/SKILL.md (or your agent's skills folder).
name
coordinator-lifecycle
description
Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations.

Keymaster Coordinator & Entity Lifecycle Guide

This skill guides modifications to KeymasterCoordinator, KeymasterLockCoordinator (custom_components/keymaster/coordinator.py), entity platforms, and migration logic (migrate.py). For full design details, refer to docs/keymaster-fanout-architecture.md.

Coordinator Architecture & Fan-out Design

Keymaster separates durable storage and refresh ownership from entity-facing runtime notifications to prevent event loop exhaustion on large installations:

ComponentLifetimeRoleTarget
KeymasterCoordinatorRuntimeOwns locks, storage, refreshKeepalive
KeymasterLockCoordinatorPer lockMirrors one lock entryEntities
  • Entity Binding:

    • Entities bind to KeymasterLockCoordinator (CoordinatorEntity[KeymasterLockCoordinator]), resolved via manager.async_get_lock_coordinator(config_entry.entry_id).
    • Entities do NOT listen directly to KeymasterCoordinator.
  • Notification Dispatch:

    • Manager state changes call async_schedule_keymaster_notifications(entry_ids, *, all_entry_ids=False).
    • Flushes are deferred with hass.loop.call_soon to coalesce updates and prevent nested event-queue overflow.
    • Updates are pushed to per-lock coordinators via lock_coordinator.async_set_updated_data(lock).
  • Parent-to-Child Sync:

    • Batched inside async with self._parent_sync_transaction(): so multi-slot child sync operations emit a single coalesced notification flush upon outermost exit.
  • Child Entity Platforms:

    • switch.py: Slot enable/disable, notifications, schedule toggles.
    • text.py / number.py: PIN configuration, slot count, autolock parameters.
    • datetime.py / time.py: Access schedule date and time limits.
    • sensor.py / binary_sensor.py: Active PIN status, connection state, slot status sensors.
    • button.py: Manual sync/clear/reset triggers.
    • event.py: Doorbell/unlock event logging.

Guidelines for Modifying Coordinator Logic

  1. State Synchronization (Synced Enum):

    • Use the canonical states defined in custom_components/keymaster/const.py:
      • Synced.ADDING ("Adding")
      • Synced.DELETING ("Deleting")
      • Synced.DISCONNECTED ("Disconnected")
      • Synced.OUT_OF_SYNC ("Out of Sync")
      • Synced.SYNCED ("Synced")
  2. Scheduling Notifications:

    • Always route updates through async_schedule_keymaster_notifications([entry_id]) rather than calling entity callbacks or async_set_updated_data directly on the manager.
  3. Autolock Integration:

    • autolock/ logic interacts with lock state changes and door sensors. Ensure timer cancellations and rescheduled locks are clean upon entity removal or coordinator unload.
  4. Storage & Migrations:

    • Runtime storage is coordinator-owned via Store(hass, STORAGE_VERSION, STORAGE_KEY).
    • migrate.py handles schema migrations only when loading legacy storage formats.
    • When modifying storage schemas, bump the version and ensure backward compatibility for prior schema revisions.

© FutureTense, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in .agents/skills/coordinator-lifecycle of FutureTense/keymaster.

Open the folder on GitHubat commit b6a1ea8

Compare with similar skills

Coordinator Lifecycle next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Coordinator Lifecycle compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Coordinator Lifecycle this skillFutureTense/keymaster349—~857Automated safety check: PassMIT
Architecture Patternswshobson/agents40k—~2kAutomated safety check: PassMIT
Android Clean Architectureaffaan-m/ECC274k4 repos~2.2kAutomated safety check: PassMIT
Architecture Patternsdavila7/claude-code-templates32k4 repos~483Automated safety check: PassMIT
Architecture Docs Writerprisma/orm48k—~1.6kAutomated safety check: PassApache-2.0
Architecture Decision Recordsaffaan-m/ECC274k4 repos~1.8kAutomated safety check: PassMIT

Similar skills

  • Architecture Patterns

    wshobson/agents

    Implement proven backend architecture patterns including Clean Architecture, Hexagonal Architecture, and Domain-Driven Design.

    40k GitHub stars~2k tokensUpdated 2 days ago
    DevelopmentAuto-check passed
  • Applies Clean Architecture to Android and Kotlin Multiplatform projects: module layout, dependency rules, UseCases, Repositories and data layer patterns.

    274k GitHub starsUsed in 4 repos~2.2k tokens
    DevelopmentAuto-check passed
  • Architecture Patterns

    davila7/claude-code-templates

    Master proven backend architecture patterns including Clean Architecture, Hexagonal Architecture, and Domain-Driven Design to build maintainable, testable, and scalable systems.

    32k GitHub starsUsed in 4 repos~483 tokens
    DevelopmentAuto-check passed
  • Official

    Guides writing and rewriting architecture subsystem docs, ADRs and reference pages so they make sense to a developer with no prior project context.

    48k GitHub stars~1.6k tokensUpdated today
    DevelopmentAuto-check passed
  • Capture architectural decisions as numbered ADR markdown files in docs/adr/ with context, alternatives considered, consequences, and an index README.

    274k GitHub starsUsed in 4 repos~1.8k tokens
    DevelopmentAuto-check passed
  • Architecture

    JanDeDobbeleer/oh-my-posh

    Cross-language architecture and clean-code principles for this project: Clean Code, Object Calisthenics, SOLID, guard clauses, hot-path cost, and the code review checklist.

    24k GitHub stars~1.5k tokensUpdated today
    DevelopmentAuto-check passed

More from FutureTense/keymaster

  • Ha Code Quality

    FutureTense/keymaster

    Standards and commands for linting, code formatting, typing validation (Ruff, MyPy, Codespell, ESLint, Pre-commit/Prek, Tox), and adherence to Home Assistant Python 3.14 standards in Keymaster.

    349 GitHub stars~462 tokensUpdated 5 days ago
    Auto-check passed
  • Ha Integration Testing

    FutureTense/keymaster

    Workflows, conventions, and commands for writing and running async Home Assistant unit and integration tests using pytest, tox, pytest-homeassistant-custom-component, and coverage tools.

    349 GitHub stars~522 tokensUpdated 5 days ago
    Auto-check passed
  • Ha Lock Provider

    FutureTense/keymaster

    Guide for developing, testing, and maintaining lock platform providers (e.g., zwavejs, zigbee2mqtt, zha, schlage, akuvox) implementing BaseLockProvider in Keymaster.

    349 GitHub stars~829 tokensUpdated 5 days ago
    Auto-check passed
  • Patch Coverage

    FutureTense/keymaster

    Procedure and guidelines for verifying and maintaining 100% patch test coverage on all modified and added lines across Keymaster PRs and branches.

    349 GitHub stars~1.1k tokensUpdated 5 days ago
    Auto-check passed
  • Submit PR

    FutureTense/keymaster

    Procedure for preparing and submitting pull requests in keymaster, enforcing the required PR template (.github/PULLREQUESTTEMPLATE.md), checklist validation, and quality gates.

    349 GitHub stars~830 tokensUpdated 5 days ago
    Auto-check passed
  • Lovelace Strategy

    FutureTense/keymaster

    Workflows for developing, building, bundling, and testing the TypeScript / Lit Lovelace dashboard strategy in lovelacestrategy/.

    349 GitHub stars~345 tokensUpdated 5 days ago
    Auto-check passed

Questions about Coordinator Lifecycle

What does Coordinator Lifecycle do?

Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations. Coordinator Lifecycle is an agent skill from FutureTense/keymaster. Architectural patterns and lifecycle instructions for KeymasterCoordinator, KeymasterLockCoordinator, fan-out notification architecture, child entity platforms, and storage migrations.

How do I install Coordinator Lifecycle in Claude Code?

Run `npx skills add FutureTense/keymaster --skill coordinator-lifecycle -a claude-code`. Or copy the skill folder (.agents/skills/coordinator-lifecycle in FutureTense/keymaster) into .claude/skills/coordinator-lifecycle in your project. Claude Code loads it when a task matches its description.

How do I install Coordinator Lifecycle in Codex?

Run `npx skills add FutureTense/keymaster --skill coordinator-lifecycle -a codex`. Or copy the skill folder (.agents/skills/coordinator-lifecycle in FutureTense/keymaster) into .agents/skills/coordinator-lifecycle in your project. Codex loads it when a task matches its description.

Can I use Coordinator Lifecycle in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add FutureTense/keymaster --skill coordinator-lifecycle -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/coordinator-lifecycle, .gemini/skills/coordinator-lifecycle, .github/skills/coordinator-lifecycle and .opencode/skills/coordinator-lifecycle in your project.

What does Coordinator Lifecycle need to run?

SKILL.md names no scripts, command-line tools or credentials: Coordinator Lifecycle is instructions for the agent only. Our summary lists: A credential in STORAGE_KEY.

Does Coordinator Lifecycle access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is Coordinator Lifecycle safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Coordinator Lifecycle use?

Coordinator Lifecycle is published under the MIT licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Coordinator Lifecycle use?

About 857 tokens (SKILL.md is roughly 3.4k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Coordinator Lifecycle?

Skills that share tags, products or a category with Coordinator Lifecycle: Architecture Patterns (wshobson/agents, 40k stars), Android Clean Architecture (affaan-m/ECC, 274k stars), Architecture Patterns (davila7/claude-code-templates, 32k stars) and Architecture Docs Writer (prisma/orm, 48k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Coordinator Lifecycle?

FutureTense (a GitHub user) maintains it in FutureTense/keymaster, which has 349 GitHub stars. The repository holds 7 skills in this directory. The repository was last updated on October 1, 2026.

Source: FutureTense/keymaster on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.