Python Script Runner
congchuanling-dot/Cohort
Runs a Python script with checks first: confirms the interpreter version, compiles it for syntax errors, verifies imports, then explains any traceback in plain language.
Diagnoses why a file write failed (permissions, disk space, path length, locks, read-only mounts) before retrying, instead of repeating the same call blindly.
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writer --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .claude/skills && cp -r skills-src/bundled/skills/smart-file-writer .claude/skills/smart-file-writer && rm -rf skills-srcUse ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.
Claude Code skills documentation · loads skills from .claude/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .claude/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writerType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writer --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .agents/skills && cp -r skills-src/bundled/skills/smart-file-writer .agents/skills/smart-file-writer && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .agents/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writer --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/bundled/skills/smart-file-writer .cursor/skills/smart-file-writer && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .cursor/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/foryourhealth111-pixel/Vibe-Skills.git --path bundled/skills/smart-file-writer--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writer --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/bundled/skills/smart-file-writer .gemini/skills/smart-file-writer && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .gemini/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writerInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .github/skills && cp -r skills-src/bundled/skills/smart-file-writer .github/skills/smart-file-writer && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .github/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install foryourhealth111-pixel/Vibe-Skills smart-file-writer --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/foryourhealth111-pixel/Vibe-Skills.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/bundled/skills/smart-file-writer .opencode/skills/smart-file-writer && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "smart-file-writer" agent skill from https://github.com/foryourhealth111-pixel/Vibe-Skills/tree/main/bundled/skills/smart-file-writer into .opencode/skills/smart-file-writer/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "smart-file-writer", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
smart-file-writerDiagnoses why a file write failed (permissions, disk space, path length, locks, read-only mounts) before retrying, instead of repeating the same call blindly.
When a write fails with permission denied, no space left on device, file exists, path too long or read-only file system, this skill has the agent investigate before it retries. The quick-reference checklist covers path validation (including the 260 character limit on Windows), directory write permission, free disk space, file lock detection and Windows-specific checks.
It then offers resolution patterns: creating missing directories, atomic writes through a temp file and rename, exponential backoff for transient problems, shortening long paths, suggesting permission fixes and detecting antivirus interference. It can also run proactively before critical writes. Stated limits: no deep network file system handling, no database writes, no changing system permissions without your confirmation and no bypassing security software. A validate.py script and reference notes ship with it.
5 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit ddcaa2a. It shows what the files ask for, not the result of running them.
Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.
From allowed-tools in the SKILL.md frontmatter.
Ships 1 file in scripts/ (Python), which the agent can run.
From the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md.
From URLs in SKILL.md, links to its own repository left out.
Names no API keys, tokens, secrets or passwords.
From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Smart File Writer loads about 2.6k tokens when it runs, and up to ~10k if it reads all its reference files. Until then it costs about 66 tokens; SKILL.md has 528 words of instructions outside code blocks.
Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.
The automated check found no risky patterns in SKILL.md.
Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); the scripts in this folder are not scanned.
The full file from foryourhealth111-pixel/Vibe-Skills at commit ddcaa2a, republished under its Apache-2.0 licence (© foryourhealth111-pixel). 528 words, ~2,625 tokens.
.claude/skills/smart-file-writer/SKILL.md (or your agent's skills folder). This skill also uses 7 other files; get the full folder from GitHub.Automatically diagnoses and resolves file write errors through systematic investigation rather than blind retries. Prevents common write failures proactively.
Use this skill when any of these occurs:
This skill does NOT:
Required inputs:
1. Path Validation
import os
# Check path length (Windows: 260 char limit)
if len(filepath) > 260 and os.name == 'nt':
print(f"Path too long: {len(filepath)} chars")
# Check parent directory exists
parent = os.path.dirname(filepath)
if not os.path.exists(parent):
print(f"Parent directory missing: {parent}")2. Permission Check
import os
# Check directory write permission
parent = os.path.dirname(filepath) or '.'
if not os.access(parent, os.W_OK):
print(f"No write permission: {parent}")
# Check file permissions if exists
if os.path.exists(filepath):
if not os.access(filepath, os.W_OK):
print(f"File not writable: {filepath}")3. Disk Space Check
import shutil
# Check available disk space
stat = shutil.disk_usage(os.path.dirname(filepath) or '.')
free_gb = stat.free / (1024**3)
if free_gb < 0.1: # Less than 100MB
print(f"Low disk space: {free_gb:.2f} GB free")4. File Lock Detection
import os
# Try to open with exclusive access
try:
with open(filepath, 'a') as f:
pass
except PermissionError:
print(f"File locked by another process: {filepath}")5. Windows-Specific Checks
# Check if file is in use (Windows)
handle.exe -a "filepath"
# Check file attributes
attrib "filepath"Pattern 1: Create Missing Directories
import os
os.makedirs(os.path.dirname(filepath), exist_ok=True)Pattern 2: Atomic Write (Temp + Rename)
import os
import tempfile
# Write to temp file first
temp_fd, temp_path = tempfile.mkstemp(dir=os.path.dirname(filepath))
try:
with os.fdopen(temp_fd, 'w') as f:
f.write(content)
# Atomic rename
os.replace(temp_path, filepath)
except Exception as e:
os.unlink(temp_path)
raisePattern 3: Exponential Backoff for Transient Issues
import time
def write_with_retry(filepath, content, max_retries=3):
for attempt in range(max_retries):
try:
with open(filepath, 'w') as f:
f.write(content)
return True
except (PermissionError, OSError) as e:
if attempt < max_retries - 1:
wait = 2 ** attempt # 1s, 2s, 4s
time.sleep(wait)
else:
raisePattern 4: Alternative Path (Shorten Long Paths)
import os
import hashlib
def shorten_path(long_path):
"""Use hash for long filenames"""
dir_path = os.path.dirname(long_path)
filename = os.path.basename(long_path)
if len(long_path) > 260:
# Hash the filename
name, ext = os.path.splitext(filename)
hash_name = hashlib.md5(name.encode()).hexdigest()[:16]
return os.path.join(dir_path, f"{hash_name}{ext}")
return long_pathPattern 5: Permission Fix Suggestions
# Linux/Mac: Add write permission
chmod u+w filepath
# Windows: Remove read-only attribute
attrib -r filepath
# Windows: Take ownership (admin required)
takeown /f filepath
icacls filepath /grant %username%:FPattern 6: Detect Antivirus Interference
import time
import os
def is_antivirus_blocking(filepath):
"""Detect if antivirus is scanning file"""
try:
# Try to open exclusively
with open(filepath, 'r+b') as f:
pass
return False
except PermissionError:
# Wait and retry
time.sleep(0.5)
try:
with open(filepath, 'r+b') as f:
pass
return True # Was temporarily blocked
except:
return False # Persistent blockBefore Any Critical Write
def validate_write_conditions(filepath):
"""Run before writing important files"""
issues = []
# 1. Path length
if len(filepath) > 260 and os.name == 'nt':
issues.append(f"Path too long: {len(filepath)} chars")
# 2. Parent directory
parent = os.path.dirname(filepath) or '.'
if not os.path.exists(parent):
issues.append(f"Parent missing: {parent}")
elif not os.access(parent, os.W_OK):
issues.append(f"No write permission: {parent}")
# 3. Disk space
stat = shutil.disk_usage(parent)
if stat.free < 100 * 1024 * 1024: # 100MB
issues.append(f"Low disk space: {stat.free / 1024**2:.1f} MB")
# 4. File exists and writable
if os.path.exists(filepath):
if not os.access(filepath, os.W_OK):
issues.append(f"File not writable: {filepath}")
return issuesWrap Write Tool
# Before using Write tool, validate:
issues = validate_write_conditions(target_path)
if issues:
print("Pre-write validation failed:")
for issue in issues:
print(f" - {issue}")
# Take corrective action
else:
# Proceed with Write toolWrap Edit Tool
# Before editing, check file is writable
if not os.access(filepath, os.W_OK):
print(f"Cannot edit: {filepath} is read-only")
# Suggest: chmod u+w or attrib -rWrap Bash File Operations
# Before redirecting output
if [ ! -w "$(dirname "$output_file")" ]; then
echo "Cannot write to directory"
exit 1
fiInput:
Steps:
os.makedirs('results', exist_ok=True)Expected output:
Diagnosis: Parent directory 'results' does not exist
Resolution: Created directory 'results'
Retry: torch.save() succeededInput:
D:\very\long\path\with\many\subdirectories\...\extremely_long_filename_that_exceeds_windows_limit.csvSteps:
Expected output:
Warning: Path length 285 chars exceeds Windows limit (260)
Alternative: D:\very\long\path\...\a3f5e8b2c1d4.csv
Mapping saved to: path_mappings.json
Write succeeded to alternative pathInput:
Steps:
attrib -r data.csvExpected output:
Diagnosis: File 'data.csv' has read-only attribute
Resolution: Run 'attrib -r data.csv' to remove read-only flag
[After user confirmation]
Attribute removed. Retry succeeded.Input:
Steps:
Expected output:
Diagnosis: File 'report.xlsx' is locked by another process
Likely cause: File is open in Microsoft Excel
Resolution options:
1. Close Excel and retry
2. Write to alternative: 'report_new.xlsx'
3. Use atomic write with temp file
Cannot proceed automatically. User action required.Input:
Steps:
Expected output:
Warning: Insufficient disk space
Required: ~2.0 GB
Available: 0.5 GB
Recommendations:
1. Clean up temporary files
2. Write to alternative drive: E:\
3. Compress checkpoint before saving
Write operation blocked to prevent failure.references/diagnostic-procedures.md: Detailed diagnostic workflowsreferences/platform-specific.md: Windows/Linux/Mac specific issuesreferences/integration-guide.md: Integrating with Claude Code toolsreferences/error-catalog.md: Common error messages and solutions© foryourhealth111-pixel, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
SKILL.md and 7 other files (scripts, references) in bundled/skills/smart-file-writer of foryourhealth111-pixel/Vibe-Skills.
Open the folder on GitHubat commit ddcaa2a
Smart File Writer next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Smart File Writer this skillforyourhealth111-pixel/Vibe-Skills | 3.6k | — | ~2.6k | Automated safety check: Pass | Apache-2.0 | |
| Python Script Runnercongchuanling-dot/Cohort | 182 | — | ~577 | Automated safety check: Notes | MIT | |
| Sentry Error Capturejeremylongshore/tons-of-skills-marketplace | 2.8k | — | ~3k | Automated safety check: Pass | MIT | |
| Code Execution Fallback and Path AnchoringHKUDS/OpenSpace | 7.8k | — | ~1.1k | Automated safety check: Pass | MIT | |
| Browser Harness Agentloomlinora-u/AgentLoom | 168 | — | ~1.3k | Automated safety check: Pass | None | |
| Native Data FetchingCherryHQ/cherry-studio-app | 4k | 6 repos | ~2.9k | Automated safety check: Notes | MIT |
congchuanling-dot/Cohort
Runs a Python script with checks first: confirms the interpreter version, compiles it for syntax errors, verifies imports, then explains any traceback in plain language.
jeremylongshore/tons-of-skills-marketplace
Implement advanced error capture and context enrichment with Sentry.
HKUDS/OpenSpace
Fallback ladder for failed sandboxed code runs, plus the habit of fixing the working directory first so generated files land in the right place.
linora-u/AgentLoom
A skill your agent uses when working on AgentLoom browser-harness integration or debugging applications/browserharnessprobe: creating or updating the probe Application, installing the external…
CherryHQ/cherry-studio-app
A skill your agent uses when implementing or debugging ANY network request, API call, or data fetching.
langbot-app/LangBot
Guides building, debugging and testing LangBot plugins: components, SDK calls, README and locale rules, SDK pitfalls and WebSocket-based testing.
foryourhealth111-pixel/Vibe-Skills
Produces long consulting-style market research and industry reports covering market sizing, competitive landscape, market entry and investment theses.
foryourhealth111-pixel/Vibe-Skills
Supplies venue-specific LaTeX templates and formatting rules for journals, conferences and posters, and checks a manuscript against page limits and submission requirements.
foryourhealth111-pixel/Vibe-Skills
This skill should be used when the user asks to "write a post", "check my voice", "look up contact", "prepare for meeting", "weekly review", "track goals", or mentions personal brand, content…
foryourhealth111-pixel/Vibe-Skills
Turns footage, audio and a storyboard plan into a finished short video with FFmpeg jump-cuts, subtitle burn-in and a final polish pass.
foryourhealth111-pixel/Vibe-Skills
Turns DOIs, PMIDs and arXiv IDs into clean BibTeX, searches Google Scholar and PubMed, and checks and deduplicates a reference list.
foryourhealth111-pixel/Vibe-Skills
Create analytical charts and plots from existing data. An agent skill from foryourhealth111-pixel/Vibe-Skills.
Works with
Categories
Diagnoses why a file write failed (permissions, disk space, path length, locks, read-only mounts) before retrying, instead of repeating the same call blindly. When a write fails with permission denied, no space left on device, file exists, path too long or read-only file system, this skill has the agent investigate before it retries. The quick-reference checklist covers path validation (including the 260 character limit on Windows), directory write permission, free disk space, file lock detection and Windows-specific checks.
Smart File Writer fits situations like: A script or agent hits Permission denied or Access denied while saving a file; writes fail with No space left on device; long Windows paths cause write errors; before a critical write that must not fail halfway.
Run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a claude-code`. Or copy the skill folder (bundled/skills/smart-file-writer in foryourhealth111-pixel/Vibe-Skills) into .claude/skills/smart-file-writer in your project. Claude Code loads it when a task matches its description.
Run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a codex`. Or copy the skill folder (bundled/skills/smart-file-writer in foryourhealth111-pixel/Vibe-Skills) into .agents/skills/smart-file-writer in your project. Codex loads it when a task matches its description.
Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add foryourhealth111-pixel/Vibe-Skills --skill smart-file-writer -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/smart-file-writer, .gemini/skills/smart-file-writer, .github/skills/smart-file-writer and .opencode/skills/smart-file-writer in your project.
Going by SKILL.md and its folder, Smart File Writer needs Python for the scripts in its folder. Our summary lists: Python for the diagnostic snippets and validate.py.
SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.
Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. The check reads SKILL.md only: the scripts in the folder are not scanned, so read them before running anything.
Smart File Writer is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.
About 2.6k tokens (SKILL.md is roughly 11k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full. Its references folder adds about 7.8k tokens, read only when the agent opens those files.
Skills that share tags, products or a category with Smart File Writer: Python Script Runner (congchuanling-dot/Cohort, 182 stars), Sentry Error Capture (jeremylongshore/tons-of-skills-marketplace, 2.8k stars), Code Execution Fallback and Path Anchoring (HKUDS/OpenSpace, 7.8k stars) and Browser Harness Agentloom (linora-u/AgentLoom, 168 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
foryourhealth111-pixel (a GitHub user) maintains it in foryourhealth111-pixel/Vibe-Skills, which has 3,627 GitHub stars. The repository holds 81 skills in this directory. The repository was last updated on August 31, 2026.
Source: foryourhealth111-pixel/Vibe-Skills on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.