Skip to content

Use HEREDOC syntax for safe bead description handling#227

Merged
subsy merged 2 commits intomainfrom
claude/investigate-issue-151-KyQs2
Jan 26, 2026
Merged

Use HEREDOC syntax for safe bead description handling#227
subsy merged 2 commits intomainfrom
claude/investigate-issue-151-KyQs2

Conversation

@subsy
Copy link
Copy Markdown
Owner

@subsy subsy commented Jan 26, 2026

Summary

Updated bead creation documentation to use HEREDOC syntax (<<'EOF') for the --description parameter. This prevents shell interpretation of special characters (backticks, $variables, parentheses) that may appear in story descriptions and acceptance criteria.

Changes

  • Updated command syntax: Changed from inline quoted strings to $(cat <<'EOF'...'EOF') pattern for all --description parameters in both br create (Rust) and bd create (base) skill documentation
  • Added critical warning: Included explicit guidance to always use single-quoted <<'EOF' delimiter to prevent unintended shell expansion
  • Applied consistently: Updated both the generic command examples and all concrete examples in the "Friends Outreach Track" walkthrough (epic + 3 user stories)

Implementation Details

  • The HEREDOC syntax safely handles multi-line descriptions with special characters
  • Single quotes around the delimiter (<<'EOF' not <<"EOF") prevent variable and command substitution
  • This is a documentation-only change affecting two skill files with identical updates
  • No functional code changes; purely improves shell command safety and reliability

Why This Matters

Story descriptions often contain special characters like pipes (|), parentheses, and backticks in acceptance criteria. Without HEREDOC syntax, these can cause shell interpretation errors or unexpected behavior. This change ensures robust bead creation regardless of description content.

Summary by CodeRabbit

  • Documentation
    • Updated bead creation command documentation to use HEREDOC syntax for multi-line descriptions
    • Added critical guidance emphasising single-quoted HEREDOC delimiters (<<'EOF') to prevent shell interpretation of special characters
    • Refreshed example commands for Epic and Story creation with improved formatting standards

✏️ Tip: You can customize this high-level summary in your review settings.

When PRD content contains shell metacharacters (backticks, $variables,
parentheses), the generated bash commands would fail with parse errors.

Updates both ralph-tui-create-beads and ralph-tui-create-beads-rust
skills to use HEREDOC syntax with single-quoted delimiter (<<'EOF')
which prevents all shell expansion inside the description content.

Fixes #151
@vercel
Copy link
Copy Markdown

vercel bot commented Jan 26, 2026

The latest updates on your projects. Learn more about Vercel for GitHub.

1 Skipped Deployment
Project Deployment Review Updated (UTC)
ralph-tui Ignored Ignored Preview Jan 26, 2026 9:24pm

Request Review

@coderabbitai
Copy link
Copy Markdown
Contributor

coderabbitai bot commented Jan 26, 2026

Walkthrough

Updated documentation in two skill files for Ralph TUI bead creation tools to mandate HEREDOC syntax (<<'EOF') for multi-line descriptions in command examples. Added critical guidance emphasizing single-quoted delimiters to prevent shell interpretation of special characters. Changes are purely documentation-focused with no underlying logic modifications.

Changes

Cohort / File(s) Summary
Ralph TUI Bead Creation Documentation
skills/ralph-tui-create-beads/SKILL.md, skills/ralph-tui-create-beads-rust/SKILL.md
Updated Output Format sections to require HEREDOC syntax for multi-line descriptions. Replaced inline description strings with cat <<'EOF' wrapped content blocks. Added CRITICAL notices highlighting single-quoted delimiter usage to prevent shell interpretation of backticks, variables, and parentheses. Updated multiple example commands (US-001, US-002, US-003) across Epic and Story bead creation samples.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 Beads now dressed in HEREDOC's embrace,
No backticks dancing out of place!
Single quotes guard the multi-line way,
Ralph's descriptions now safely play.
A documentation hop, skip, and delight! 🌿

🚥 Pre-merge checks | ✅ 3
✅ Passed checks (3 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title clearly and accurately summarizes the main change: introducing HEREDOC syntax for handling bead descriptions safely, which is the primary focus of both modified skill files.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.

✏️ Tip: You can configure your own custom pre-merge checks in the settings.


Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands and usage tips.

@subsy subsy merged commit c64bd43 into main Jan 26, 2026
7 checks passed
@subsy subsy deleted the claude/investigate-issue-151-KyQs2 branch January 26, 2026 21:25
sakaman pushed a commit to sakaman/ralph-tui that referenced this pull request Feb 15, 2026
…KyQs2

Use HEREDOC syntax for safe bead description handling
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants