dry-run
/dry-run
Symuluje wykonanie polecenia w trybie dry-run bez zmian w plikach, ustawiając flagę dry_run i ograniczenie tylko do odczytu, a potem ją resetując.
- Autor
- WaterplanAI ↗
- Repozytorium
- agentic-config ↗
- Licencja
- MIT
- Ostatnia zmiana repozytorium
- 23.07.2026
Ocena i bezpieczeństwo
- Pliki w paczce
- 1
- Skrypty
- 0
- Komentarze HTML
- 0
- Adresy URL w SKILL.md
- 0
Brak sygnałów. Repozytorium zmienione 23.07.2026, bez odwołań do wycofanych modeli i API.
MIT, otwarta: można używać i zmieniać, z zachowaniem informacji o autorze.
Co robi i kiedy
Symuluje wykonanie polecenia w trybie dry-run bez zmian w plikach, ustawiając flagę dry_run i ograniczenie tylko do odczytu, a potem ją resetując.
Oryginalny opis (EN)
Simulates command execution in dry-run mode without file modifications. Sets dry_run flag, executes command with read-only constraint, then resets flag. Useful for testing workflows safely. Triggers on keywords: dry run, simulate, test command, preview changes, safe mode, no write
Jak działa
- Usage
- Workflow
- Implementation Notes
- State Schema
Podgląd SKILL.md
---
name: dry-run
description: "Simulates command execution in dry-run mode without file modifications. Sets dry_run flag, executes command with read-only constraint, then resets flag. Useful for testing workflows safely. Triggers on keywords: dry run, simulate, test command, preview changes, safe mode, no write"
project-agnostic: true
allowed-tools:
- Bash
- Write
- Read
---
# Dry Run Skill
Executes any command or skill in simulation mode, preventing all file modifications except session state.
## Usage
```
/dry-run <any command or prompt>
```
Examples:
- `/dry-run /mux-ospec path/to/spec.md` - Preview full spec workflow
- `/dry-run /spec IMPLEMENT path/to/spec.md` - Test implementation without changes
- `/dry-run why did you implement X this way?` - Normal chat (no files affected)
## Workflow
### Step 1: Initialize Session Status
Resolve the Claude Code PID using process-tree tracing (same logic as the dry-run hook), then create the session directory:
```bash
CLAUDE_PID=$(python3 - <<'PY'
import os
import subprocess
pid = os.getpid()
for _ in range(10):
result = subprocess.run(
["ps", "-o", "pid=,ppid=,comm=", "-p", str(pid)],
capture_output=True,
text=True,
)
line = result.stdout.strip()
if not line:
break
parts = line.split()
if len(parts) >= 3:
current_pid, ppid, comm = int(parts[0]), int(parts[1]), parts[2]
if "claude" in comm.lower():
print(current_pid)
break
pid = ppid
else:
break
else:
print("shared")
PY
)
[ -n "$CLAUDE_PID" ] || CLAUDE_PID="shared"
mkdir -p "outputs/session/${CLAUDE_PID}"
```
Check if `outputs/session/<CLAUDE_PID>/status.yml` exists. If not, create with initial schema:
```yaml
dry_run: false
```
### Step 2: Set Dry-Run Mode
Update `outputs/session/<CLAUDE_PID>/status.yml`:
```yaml
dry_run: true
```
This signals to THIS session's file operations that writes are prohibited.
Other Claude sessions (different PIDs) are not affected.
### Step 3: Execute Delegated Command
Execute the provided command/prompt EXACTLY as given. All behavior remains normal EXCEPT:
CRITICAL CONSTRAINTS:
- NO file modifications allowed (Read, Grep, Glob, LSP, Bash read-only commands OK)
- ONLY exception: `outputs/session/<CLAUDE_PID>/status.yml` can be modified
- If command requires file writes, DESCRIBE what WOULD be changed instead
- For chat-only prompts (no file operations needed), respond normally
### Step 4: Reset Dry-Run Mode
After execution completes (success or failure), reset state in `outputs/session/<CLAUDE_PID>/status.yml`:
```yaml
dry_run: false
```
### Step 5: Report Results
Provide summary:
- What was executed
- What file changes WOULD have occurred (if any)
- Verification that dry_run mode is reset
## Implementation Notes
The skill acts as a wrapper:
1. It does NOT interpret or execute the delegated work itself
2. It sets the flag, then lets normal AI behavior handle the prompt
3. The dry_run flag is checked by pretooluse hook (hard enforcement at tool level)
4. After completion, it ensures cleanup
## State Schema
`outputs/session/<claude_pid>/status.yml`:
```yaml
dry_run: bool # true = prevent file writes, false = normal mode
```
Session isolation by Claude PID ensures parallel agents don't interfere with each other.
Future extensions may add additional session state fields.
Wersje
| Repozytorium | Wynik | Licencja |
|---|---|---|
| Ta strona · WaterplanAI/agentic-config | 100 | MIT |
| hamzafer/claude-routines | 100 | MIT |
Identyczna treść występuje jeszcze w 1 innych folderach na GitHubie. Tu pokazujemy jedną, najlepiej ocenioną kopię.
Migawka bazy z 28.10.2026 · wersja paczki 68af8f690afb (skrót SHA-256 całej paczki)
Zgłoś problem z tym skillem: szkodliwa treść, błędny opis albo prośba autora o usunięcie.
Podobne skille
- 100ac-tools-dry-run
Uruchamia delegowaną komendę albo prompt w trybie podglądu, zachowując zachowanie tylko do odczytu i resetując stan po wykonaniu. - 100iterate-pr
Naprawia błędy CI i odpowiada na uwagi z przeglądu w pull requeście bieżącej gałęzi, z opcją --dry-run do podglądu bez zmian. - 100mcp-cli
Prowadzi przez konfigurację i uruchamianie serwerów MCP Umbraco z CLI: ustawienia dla Claude Code, uwierzytelnianie, filtrowanie, tryb dry-run i tylko do odczytu oraz polecenia introspekcji. - 100mcp-cli
Prowadzi przez uruchamianie i debugowanie serwera MCP Umbraco z CLI: lista i wywołania narzędzi, filtrowanie, dry-run, tryb tylko do odczytu oraz diagnostyka konfiguracji. - 100mcp-cli
Prowadzi przez uruchamianie i debugowanie serwera MCP Umbraco z CLI: lista i wywołania narzędzi, filtrowanie, dry-run, tryb tylko do odczytu oraz diagnostyka konfiguracji. - 100dependency-update
Wykonuje okresową aktualizację zależności: czyta, co menedżer pakietów uznaje za nieaktualne, podnosi to, co bezpieczne, wprowadza potrzebne zmiany w kodzie, weryfikuje i otwiera jeden PR, także w trybie dry run.