본문으로 건너뛰기
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>

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

maestro

무료

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

catlog22/maestro-flow5662026년 10월 15일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

catlog22/maestro-flow5662026년 10월 15일 업데이트

Create or sync session worktree for parallel dev

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

catlog22/maestro-flow5662026년 10월 15일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

catlog22/maestro-flow5662026년 10월 15일 업데이트

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

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

catlog22/maestro-flow5662026년 10월 15일 업데이트

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-flow5662026년 10월 15일 업데이트

catlog22의 스킬 모두 보기

이 스킬의 문제 신고