This plugin allows you to create a security system.
- Five preconfigured modes: Home, Away, Night, Vacation, Off.
- Five preconfigured setters: Home, Away, Night, Vacation, Off.
- Four preconfigured triggers: Home, Away, Night, 24h.
- Five preconfigured alerts: Home, Away, Night, 24h, Master.
The plugin requires matterbridge v.3.10.0.
| Mode | Use |
|---|---|
| Home | Standard mode when you are at home. |
| Away | Use when nobody is home (full protection). |
| Night | Use at night (typically perimeter/partial protection). |
| Vacation | Same as Away; useful for extended absences and light automations. |
| Off | Disables the security system. |
Each mode is exclusive: the other will revert their state.
Mode vacation works exactly like mode away. Is useful to create on the controller some automations that turn on and off internal lights when you are on vacation.
| Setter | Use |
|---|---|
| Home | Sets the system mode to Home. |
| Away | Sets the system mode to Away. |
| Night | Sets the system mode to Night. |
| Vacation | Sets the system mode to Vacation. |
| Off | Sets the system mode to Off. |
Setters will set the corresponding mode and will revert immediately their state.
Is usefull when the controller doesn't allow to lock unlock doors from presence automations. They are enabled by the useSetters config.
Triggers are momentary switches you can use in your controller automations to start an alarm.
| Trigger | Use |
|---|---|
| Home | Triggers the alarm associated with Home. |
| Away | Triggers the alarm associated with Away. |
| Night | Triggers the alarm associated with Night. |
| 24h | Triggers the alarm associated with 24h. |
Triggers will trigger the corresponding alarm and will revert immediately their state.
On your controller you need to create an automation that trigger each trigger.
Alerts are the alarm states exposed by the plugin; they stay active for the configured alertTimeout and then reset.
| Alert | Use |
|---|---|
| Home | Alert state for Home. |
| Away | Alert state for Away. |
| Night | Alert state for Night. |
| 24h | Alert state for 24h. |
| Master | General alert state (not tied to a specific mode). |
See also the Style Guide for JSDoc, naming, and logging conventions used in this repository.
Note: This repository uses a new toolchain. It replaces the traditional TypeScript / ESLint / Prettier / Jest stack with a faster and lighter setup.
- No
typescript 6.xpackage — replaced by TypeScript Native 7.x. - No ESLint, no Prettier — replaced by the oxc stack: oxlint for linting and oxfmt for formatting.
- No Jest — replaced by Vitest, which is much faster and natively supports ESM without extra configuration.
- Far fewer development dependencies — the number of installed packages drops from ~600 to ~75. A clean install is much faster.
- Much faster linting and formatting — oxlint and oxfmt run in a fraction of the time required by the ESLint / Prettier pipeline.
- Much faster builds — tsgo compiles the project in a fraction of the time required by the standard
tscbuild. - Editor support — use the VS Code extensions for tsgo and oxc to get the same experience in the editor.
| File | Notes |
|---|---|
.github/copilot-instructions.md |
Main project instructions — always loaded |
.github/instructions/chip-tests/chip-tests.instructions.md |
CHIP conformance test harness — scoped to CHIP test files |
.github/instructions/matterbridge/matterbridge.instructions.md |
Matterbridge endpoint guide — dedicated Copilot instruction file |
.github/instructions/plugin-frontend/plugin-frontend.instructions.md |
Plugin frontend SPA and custom REST API guide — scoped to frontend and plugin code |
.github/instructions/testing/unit-tests.instructions.md |
Testing standards — scoped to **/*.test.ts |
| File | Notes |
|---|---|
CLAUDE.md |
Main project instructions — always loaded |
.claude/rules/chip-tests/chip-tests.instructions.md |
CHIP conformance test harness — scoped to CHIP test files |
.claude/rules/matterbridge/matterbridge.instructions.md |
Matterbridge endpoint guide — loaded for all contexts |
.claude/rules/plugin-frontend/plugin-frontend.instructions.md |
Plugin frontend SPA and custom REST API guide — scoped to frontend and plugin code |
.claude/rules/testing/unit-tests.instructions.md |
Testing standards — scoped to **/*.test.ts |
| File | Notes |
|---|---|
AGENTS.md |
Main project instructions |
.agents/chip-tests.md |
CHIP conformance test harness |
.agents/matterbridge.md |
Matterbridge endpoint guide |
.agents/plugin-frontend.md |
Plugin frontend SPA and custom REST API guide |
.agents/testing.md |
Testing and validation expectations |
.codex/config.toml |
Codex project permissions, approvals, and profile |
.codex/rules/default.rules |
Codex command allow, prompt, and deny rules |
Refer to the Matterbridge Development guide for other guidelines.