From 29eb082e2a19f99701397f33f1bc9859959b1ae4 Mon Sep 17 00:00:00 2001 From: Yuji Yaginuma Date: Sun, 7 Sep 2025 15:18:08 +0900 Subject: [PATCH] Use `/usr/bin/env bash` instead of `/bin/bash` for shebang Some systems like NixOS don't have `/bin/bash`. Ref: https://discourse.nixos.org/t/add-bin-bash-to-avoid-unnecessary-pain/5673 This changes allow to run scripts in those systems. Fixes #43. --- README.md | 2 +- scripts/check-task-prerequisites.sh | 2 +- scripts/common.sh | 2 +- scripts/create-new-feature.sh | 2 +- scripts/get-feature-paths.sh | 2 +- scripts/setup-plan.sh | 2 +- scripts/update-agent-context.sh | 2 +- 7 files changed, 7 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index 4f7a7a26e..40f3cee7d 100644 --- a/README.md +++ b/README.md @@ -348,7 +348,7 @@ Once the implementation step is done, ask Claude Code to try to run the applicat If you're having issues with Git authentication on Linux, you can install Git Credential Manager: ```bash -#!/bin/bash +#!/usr/bin/env bash set -e echo "Downloading Git Credential Manager v2.6.1..." wget https://github.com/git-ecosystem/git-credential-manager/releases/download/v2.6.1/gcm-linux_amd64.2.6.1.deb diff --git a/scripts/check-task-prerequisites.sh b/scripts/check-task-prerequisites.sh index 87fca37d0..b692fcde7 100755 --- a/scripts/check-task-prerequisites.sh +++ b/scripts/check-task-prerequisites.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Check that implementation plan exists and find optional design documents # Usage: ./check-task-prerequisites.sh [--json] diff --git a/scripts/common.sh b/scripts/common.sh index d63649159..310ce4e1a 100755 --- a/scripts/common.sh +++ b/scripts/common.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Common functions and variables for all scripts # Get repository root diff --git a/scripts/create-new-feature.sh b/scripts/create-new-feature.sh index 69ea3c40d..3cd43b9f1 100755 --- a/scripts/create-new-feature.sh +++ b/scripts/create-new-feature.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Create a new feature with branch, directory structure, and template # Usage: ./create-new-feature.sh "feature description" # ./create-new-feature.sh --json "feature description" diff --git a/scripts/get-feature-paths.sh b/scripts/get-feature-paths.sh index bfe508763..b1e1fbceb 100755 --- a/scripts/get-feature-paths.sh +++ b/scripts/get-feature-paths.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Get paths for current feature branch without creating anything # Used by commands that need to find existing feature files diff --git a/scripts/setup-plan.sh b/scripts/setup-plan.sh index 28bd056bb..ea0e02377 100755 --- a/scripts/setup-plan.sh +++ b/scripts/setup-plan.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Setup implementation plan structure for current branch # Returns paths needed for implementation plan generation # Usage: ./setup-plan.sh [--json] diff --git a/scripts/update-agent-context.sh b/scripts/update-agent-context.sh index 51fa640b6..21b77aaa0 100755 --- a/scripts/update-agent-context.sh +++ b/scripts/update-agent-context.sh @@ -1,4 +1,4 @@ -#!/bin/bash +#!/usr/bin/env bash # Incrementally update agent context files based on new feature plan # Supports: CLAUDE.md, GEMINI.md, and .github/copilot-instructions.md # O(1) operation - only reads current context file and new plan.md