本文へ移動
cccskills
無料GitHub で公開

maestro-guard

Manage editing boundary restrictions

インストール方法を見る

含まれるファイル(1)

  • SKILL.md5.0 KB

SKILL.md(原文)

インストールする前に、エージェントに与えられる指示の中身を確認できます。

<purpose> Configure directory-level write boundaries enforced by the workflow-guard PreToolUse hook. Subcommands: on, off, status, allow `<path>`, deny `<path>`, remove `<path>`, clear. </purpose> <context> $ARGUMENTS — Parse subcommand and optional path argument.

Config location: .workflow/config.json → guard section

{
  "guard": {
    "enabled": false,
    "mode": "allow",
    "paths": []
  }
}

Enforcement: The workflow-guard hook (PreToolUse on Write/Edit) reads this config and blocks operations targeting files outside boundaries. Requires hooks level >= full.

Output boundary: ALL file writes MUST target .workflow/config.json (guard section) only. NEVER modify hook files, .claude/settings.json, or source code. </context>

<invariants> 1. **Config-only mutation** — guard MUST only modify the `guard` section of `.workflow/config.json`; NEVER touch other config sections or files 2. **Non-destructive** — `off` MUST preserve existing paths and mode; NEVER clear the path list when disabling 3. **Mode switch confirmation** — switching between allow/deny mode MUST require request_user_input confirmation when existing paths will be cleared 4. **Hook dependency** — guard MUST warn when enabled but `workflow-guard` hook is not active (hooks level < full) 5. **Path normalization** — all paths MUST use forward slashes with trailing slash for directories; NEVER store raw backslash paths </invariants> <execution>

Phase Gates (MANDATORY, BLOCKING)

GATE 1: Parse → Config Read

  • REQUIRED: Subcommand parsed (on/off/status/allow/deny/remove/clear) or defaulted to status.
  • BLOCKED if: invalid subcommand provided.

GATE 2: Config Read → Execute

  • REQUIRED: .workflow/config.json read successfully or initialized with empty guard section.
  • BLOCKED if: file unreadable and cannot be created (E001).

GATE 3: Execute → Confirm

  • REQUIRED: Config mutation applied (for on/off/allow/deny) or status displayed (for status).
  • REQUIRED: Mode-switch request_user_input answered (for allow↔deny transitions with existing paths).
  • BLOCKED if: user declines mode switch.

Step 1: Parse subcommand

Extract from $ARGUMENTS:

  • on / off / status / allow <path> / deny <path>
  • If no subcommand, default to status

Step 2: Read config

Read .workflow/config.json. If file missing, initialize with empty guard section.

Step 3: Execute subcommand

status:

  • Display: enabled/disabled, mode (allow/deny), paths list
  • Check if workflow-guard hook is active (read .claude/settings.json for hook presence)
  • If guard enabled but hook not active, warn: "⚠ PathGuard enabled but workflow-guard hook not installed. Run maestro hooks level full to activate."

on:

  • Set guard.enabled = true
  • If guard.paths is empty, set default: ["src/", "tests/", ".workflow/"]
  • Check hook level, warn if < full
  • Write config

off:

  • Set guard.enabled = false
  • Preserve existing paths and mode
  • Write config

allow <path>:

  • Normalize path to forward slashes, ensure trailing slash for directories
  • If guard.mode is deny, request_user_input: "Switching from deny to allow mode will clear existing paths ({N} paths). Continue?" — abort if user declines. Clear guard.paths (mode switch invalidates previous path list).
  • Set guard.mode = "allow"
  • Add path to guard.paths (deduplicate)
  • Set guard.enabled = true if not already
  • Write config

deny <path>:

  • Normalize path to forward slashes, ensure trailing slash for directories
  • If guard.mode is allow, request_user_input: "Switching from allow to deny mode will clear existing paths ({N} paths). Continue?" — abort if user declines. Clear guard.paths (mode switch invalidates previous path list).
  • Set guard.mode = "deny"
  • Add path to guard.paths (deduplicate)
  • Set guard.enabled = true if not already (symmetric with allow: adding a deny path auto-enables the guard)
  • Write config

remove <path>:

  • Normalize path
  • Remove from guard.paths (if present)
  • Write config

clear:

  • Set guard.paths = []
  • Write config

Step 4: Confirm

Display updated guard configuration.

</execution>

<error_codes>

  • E001: .workflow/config.json not found and cannot be created (not a maestro project)
  • W001: PathGuard enabled but workflow-guard hook not installed </error_codes>

<success_criteria>

  • Config read/written correctly
  • Hook level warning displayed when applicable
  • Updated configuration shown after changes </success_criteria>
<completion> ### Next-step routing | Condition | Suggestion | |-----------|-----------| | Guard enabled, hook not installed | `maestro hooks level full` | | Want to verify guard works | Edit a file outside allowed paths | </completion>

レビュー

まだレビューはありません。使ってみた感想をお寄せください。

同じリポジトリのスキル

概要と使いどころ

maestro

無料

Intent-to-chain planner over the canonical Session/Run lifecycle

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

Quick execution for small tasks — minimal run lifecycle (start + done) with evidence recording. Full LLM capability, scoped to mechanically clear tasks.

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

Create or sync session worktree for parallel dev

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

Maestro Flow 命令帮助系统。搜索命令、浏览技能、工作流推荐、新手引导。Triggers on "maestro-help", "帮助", "命令", "怎么用", "skill", "workflow", "maestro 怎么用".

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

Use when designing, reviewing, refining, fixing, or codifying frontend UI with Maestro's self-contained Impeccable core

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

Use when the user wants to design, redesign, shape, critique, audit, polish, clarify, distill, harden, optimize, adapt, animate, colorize, extract, or otherwise improve a frontend interface. Covers websites, landing pages, dashboards, product UI, app shells, components, forms, settings, onboarding, and empty states. Handles UX review, visual hierarchy, information architecture, cognitive load, accessibility, performance, responsive behavior, theming, anti-patterns, typography, fonts, spacing, layout, alignment, color, motion, micro-interactions, UX copy, error states, edge cases, i18n, and reusable design systems or tokens. Also use for bland designs that need to become bolder or more delightful, loud designs that should become quieter, live browser iteration on UI elements, or ambitious visual effects that should feel technically extraordinary. Not for backend-only or non-UI tasks.

日本語の概要は準備中です。原文の説明を表示しています。

catlog22/maestro-flow5672026年10月8日 更新

catlog22 のスキルをすべて見る

このスキルの問題を報告する