gh-issues-zsh-safe

Standardize temporary file usage for multi-line Markdown bodies in GitHub CLI.

3|Updated Dec 14, 2025
One-click install
npx skills add https://github.com/plocher/jBOM --skill gh-issues-zsh-safe
Or copy as Structured Prompt for Agent
Please help me install this Agent Skill.
Skill: gh-issues-zsh-safe
Source: https://github.com/plocher/jBOM/tree/main/.agents/skills/gh-issues-zsh-safe
Command: npx skills add https://github.com/plocher/jBOM --skill gh-issues-zsh-safe

SYSTEM DOCUMENTATION & REQUIREMENTS

What problem does it solve?

This skill resolves shell-quoting hazards when passing multi-line Markdown content to the GitHub CLI, preventing mangled text, variable expansion, and command substitution errors in zsh.

Core Features & Use Cases

  • Shell-Safe PR/Issue Authoring: Provides robust patterns for creating or editing GitHub issues, PRs, and comments using temporary files.
  • Character Escaping: Eliminates issues with backticks, dollar signs, exclamation marks, and backslashes in automated workflows.
  • Use Case: When you need to programmatically create a complex PR description containing code blocks and issue references, this skill ensures the content is rendered exactly as intended on GitHub.

Quick Start

Use the gh-issues-zsh-safe skill to generate a temporary file and pass it to the GitHub CLI for creating a new pull request with multi-line content.

Frequently Asked Questions about gh-issues-zsh-safe

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I pass multi-line Markdown to the GitHub CLI without shell-quoting errors in zsh?

To pass multi-line Markdown to the GitHub CLI safely in zsh, write the content to a temporary file and use the `--body-file` flag. This prevents shell-quoting vulnerabilities like mangled text and variable expansion errors.

Why does my GitHub CLI issue description mangle backticks and dollar signs in zsh?

GitHub CLI issue descriptions mangle backticks and dollar signs in zsh due to shell-quoting hazards during variable expansion. Using heredoc patterns and temporary files eliminates these character escaping issues for complex text inputs.

What is the best way to automate creating GitHub pull requests with complex Markdown content?

The best way to automate creating GitHub pull requests with complex Markdown is to enforce the use of temporary files and the `--body-file` parameter. This ensures code blocks and issue references render exactly as intended without shell interference.

Does the GitHub CLI support heredoc patterns for adding comments containing code blocks?

The GitHub CLI supports adding comments containing code blocks by passing the content via a temporary file using `--body-file`. This approach standardizes heredoc patterns to ensure reliable execution in zsh environments.

When do I need to use temporary files instead of inline strings for GitHub CLI commands?

You need to use temporary files instead of inline strings for GitHub CLI commands when your input contains complex multi-line Markdown. This prevents command substitution errors and ensures safe execution when creating or editing issues, pull requests, and comments.