| created | "2025-12-22T00:00:00.000Z" |
| modified | "2026-05-09T00:00:00.000Z" |
| reviewed | "2026-05-04T00:00:00.000Z" |
| description | Move generated artifact to custom layer to preserve manual edits. Use when promoting a generated rule, preserving .claude/rules/ changes, or stopping sync warnings. |
| args | [skill-name|command-name] |
| allowed-tools | Read, Write, Bash, AskUserQuestion |
| argument-hint | Name of the skill or command to promote |
| name | blueprint-promote |
Copy a generated rule to the custom rules layer for preservation.
When to Use This Skill
| Use this skill when... | Use blueprint-sync instead when... |
|---|
| You want to preserve manual edits to a single generated rule | You want to scan all generated content for drift first |
| You want to stop sync warnings on a modified auto-generated file | You want regenerate/keep options across many files at once |
| You say "promote from proposed to custom" or "acknowledge modifications" | Use blueprint-generate-rules instead to regenerate from PRDs |
Steps
Purpose:
- Copy generated content from
.claude/rules/ to preserve modifications
- Mark as acknowledged in manifest to prevent overwrite warnings
- Generated rules in
.claude/rules/ are the standard location (v3.0)
Usage: /blueprint:promote [name]
Examples:
/blueprint:promote testing-strategies - Acknowledge a rule's modifications
-
Parse argument:
- Extract
name from arguments
- If no name provided, list available generated rules and ask user to choose
-
Locate the rule:
test -f .claude/rules/{name}.md
If not found:
Rule '{name}' not found in generated content.
Available rules:
- architecture-patterns
- testing-strategies
- implementation-guides
- quality-standards
-
Check if already acknowledged:
- Read manifest for
custom_overrides.rules
- If already in list, report "Already acknowledged"
-
Confirm acknowledgment:
question: "Acknowledge modifications to {name}?"
description: |
This will:
1. Mark {name} as user-modified in manifest
2. Prevent overwrite warnings during sync
3. Keep the rule in .claude/rules/
options:
- label: "Yes, acknowledge"
description: "Mark as user-modified and preserve changes"
- label: "No, keep as generated"
description: "Leave as regeneratable (may show warnings)"
-
Update manifest:
- Add to
custom_overrides.rules
- Update
updated_at timestamp
Example manifest update:
{
"generated": {
"rules": {
}
},
"custom_overrides": {
"rules": ["testing-strategies"]
Architecture note (v3.0):
Generated content now goes directly to .claude/rules/ instead of a separate generated layer.
The manifest tracks which rules are user-modified vs auto-generated.
Tips:
- Acknowledge rules you want to customize
- Unacknowledged modified rules will show warnings in /blueprint:sync
- You can regenerate by removing from custom_overrides and running
/blueprint:generate-rules