Skip to content

fix: correct SOURCE_KIRO path in Kiro installer#1025

Merged
affaan-m merged 1 commit into
affaan-m:mainfrom
jayll1303:fix/kiro-install-source-path
Mar 31, 2026
Merged

fix: correct SOURCE_KIRO path in Kiro installer#1025
affaan-m merged 1 commit into
affaan-m:mainfrom
jayll1303:fix/kiro-install-source-path

Conversation

@jayll1303

@jayll1303 jayll1303 commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

Problem

Running .kiro/install.sh from inside the .kiro/ directory produces an incorrect source path.

SCRIPT_DIR resolves to the .kiro/ directory, then SOURCE_KIRO="$SCRIPT_DIR/.kiro" appends /.kiro again, resulting in .kiro/.kiro which does not exist. The installer silently copies nothing.

Fix

Change SOURCE_KIRO="$SCRIPT_DIR/.kiro" to SOURCE_KIRO="$SCRIPT_DIR" since the script already lives inside .kiro/.

Testing

Verified the installer correctly resolves the source path when invoked as:

  • ./install.sh (from inside .kiro/)
  • bash .kiro/install.sh (from repo root)
  • .kiro/install.sh /path/to/target (with explicit target)

Summary by cubic

Fix incorrect source path resolution in .kiro/install.sh. The installer now uses the script’s directory as the source, avoiding .kiro/.kiro and copying files as expected.

  • Bug Fixes
    • Set SOURCE_KIRO="$SCRIPT_DIR" since the installer runs from .kiro/.
    • Verified correct behavior when run from .kiro/, from repo root, and with an explicit target.

Written for commit 6a4bbd5. Summary will update on new commits.

Summary by CodeRabbit

  • Chores
    • Updated installer script source directory resolution to improve file copy logic during installation process.

The script lives inside .kiro/, so SCRIPT_DIR already resolves to the .kiro directory. Appending /.kiro again produced an invalid path (.kiro/.kiro) causing the installer to find no source files to copy.
@coderabbitai

coderabbitai Bot commented Mar 30, 2026

Copy link
Copy Markdown
Contributor
📝 Walkthrough

Walkthrough

The installer script source directory resolution was updated from SCRIPT_DIR/.kiro to SCRIPT_DIR, with corresponding comment adjustments to reflect that the script's directory is already the source location. The control flow logic remains unchanged.

Changes

Cohort / File(s) Summary
Installer Path Resolution
.kiro/install.sh
Updated SOURCE_KIRO variable from SCRIPT_DIR/.kiro to SCRIPT_DIR to adjust the source directory for file copying operations. Inline comments modified to clarify that the script directory already represents the .kiro source.

Estimated code review effort

🎯 1 (Trivial) | ⏱️ ~5 minutes

Poem

🐰 A hop through the paths, so neat and so clean,
No more double-dotting where directories have been!
From .kiro to root, the source takes its place,
Simpler installations, with elegant grace!

🚥 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 summarizes the main change: correcting the SOURCE_KIRO path in the Kiro installer, which is the core fix addressing the .kiro/.kiro path resolution issue.
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.

✨ Finishing Touches
🧪 Generate unit tests (beta)
  • Create PR with unit tests

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.

@cubic-dev-ai cubic-dev-ai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

No issues found across 1 file

@greptile-apps

greptile-apps Bot commented Mar 30, 2026

Copy link
Copy Markdown
Contributor

Greptile Summary

This PR fixes a one-line path bug in .kiro/install.sh where SOURCE_KIRO was constructed by appending /.kiro to SCRIPT_DIR, but since the script already lives inside .kiro/, SCRIPT_DIR already points to that directory — making the appended suffix produce the non-existent path .kiro/.kiro and causing the installer to copy nothing silently.

Key changes:

  • Removes the /.kiro suffix: SOURCE_KIRO=\"$SCRIPT_DIR/.kiro\"SOURCE_KIRO=\"$SCRIPT_DIR\"
  • Fixes the stale comment that incorrectly described SCRIPT_DIR as "the repo root" (it resolves to the .kiro/ directory itself)
  • No functional logic beyond path resolution is changed; all copy loops, counters, and output messages remain identical

The fix is correct for all three invocation forms documented in the script header and PR description (./install.sh, bash .kiro/install.sh, and with an explicit target path).

Confidence Score: 5/5

Safe to merge — the fix is minimal, correct, and well-tested across all documented invocation forms.

Single-line bug fix with a clear root cause and correct resolution. No logic, security, or data concerns. The path derivation is straightforward and the fix is consistent with every described usage pattern.

No files require special attention.

Important Files Changed

Filename Overview
.kiro/install.sh Fixes SOURCE_KIRO path by removing erroneous /.kiro suffix and updates the stale comment that incorrectly described SCRIPT_DIR as the repo root.

Flowchart

%%{init: {'theme': 'neutral'}}%%
flowchart TD
    A["install.sh invoked"] --> B["SCRIPT_DIR = cd dirname($0) && pwd"]
    B --> C{Invocation style}
    C -- "./install.sh (from .kiro/)" --> D["SCRIPT_DIR = /repo/.kiro"]
    C -- "bash .kiro/install.sh (from repo root)" --> E["SCRIPT_DIR = /repo/.kiro"]
    C -- ".kiro/install.sh /target (with explicit target)" --> F["SCRIPT_DIR = /repo/.kiro"]
    D --> G["SOURCE_KIRO = SCRIPT_DIR ✅"]
    E --> G
    F --> G
    G --> H["Copy agents/skills/steering/hooks/scripts/settings"]
    H --> I["TARGET/.kiro/subdir"]

    style G fill:#22c55e,color:#fff
Loading

Reviews (1): Last reviewed commit: "fix: correct SOURCE_KIRO path in Kiro in..." | Re-trigger Greptile

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against the current code and only fix it if needed.

Inline comments:
In @.kiro/install.sh:
- Around line 1-143: The install script .kiro/install.sh has CRLF line endings
(including the shebang) causing /bin/bash^M errors; convert the file to LF line
endings (preserve content like the shebang and variables such as SCRIPT_DIR and
SOURCE_KIRO) and commit the normalized file, and add a .gitattributes entry to
enforce LF for future commits (e.g. declare .kiro/*.sh as text with eol=lf) so
the installer and lines like the shebang are always written with LF.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro

Run ID: fc8e4e89-6e54-4b35-a835-d1232be88d1c

📥 Commits

Reviewing files that changed from the base of the PR and between 656cf4c and 6a4bbd5.

📒 Files selected for processing (1)
  • .kiro/install.sh

Comment thread .kiro/install.sh
Comment on lines +1 to +143
#!/bin/bash
#
# ECC Kiro Installer
# Installs Everything Claude Code workflows into a Kiro project.
#
# Usage:
# ./install.sh # Install to current directory
# ./install.sh /path/to/dir # Install to specific directory
# ./install.sh ~ # Install globally to ~/.kiro/
#

set -euo pipefail

# When globs match nothing, expand to empty list instead of the literal pattern
shopt -s nullglob

# Resolve the directory where this script lives
SCRIPT_DIR="$(cd "$(dirname "$0")" && pwd)"

# The script lives inside .kiro/, so SCRIPT_DIR *is* the source.
# If invoked from the repo root (e.g., .kiro/install.sh), SCRIPT_DIR already
# points to the .kiro directory — no need to append /.kiro again.
SOURCE_KIRO="$SCRIPT_DIR"

# Target directory: argument or current working directory
TARGET="${1:-.}"

# Expand ~ to $HOME
if [ "$TARGET" = "~" ] || [[ "$TARGET" == "~/"* ]]; then
TARGET="${TARGET/#\~/$HOME}"
fi

# Resolve to absolute path
TARGET="$(cd "$TARGET" 2>/dev/null && pwd || echo "$TARGET")"

echo "ECC Kiro Installer"
echo "=================="
echo ""
echo "Source: $SOURCE_KIRO"
echo "Target: $TARGET/.kiro/"
echo ""

# Subdirectories to create and populate
SUBDIRS="agents skills steering hooks scripts settings"

# Create all required .kiro/ subdirectories
for dir in $SUBDIRS; do
mkdir -p "$TARGET/.kiro/$dir"
done

# Counters for summary
agents=0; skills=0; steering=0; hooks=0; scripts=0; settings=0

# Copy agents (JSON for CLI, Markdown for IDE)
if [ -d "$SOURCE_KIRO/agents" ]; then
for f in "$SOURCE_KIRO/agents"/*.json "$SOURCE_KIRO/agents"/*.md; do
[ -f "$f" ] || continue
local_name=$(basename "$f")
if [ ! -f "$TARGET/.kiro/agents/$local_name" ]; then
cp "$f" "$TARGET/.kiro/agents/" 2>/dev/null || true
agents=$((agents + 1))
fi
done
fi

# Copy skills (directories with SKILL.md)
if [ -d "$SOURCE_KIRO/skills" ]; then
for d in "$SOURCE_KIRO/skills"/*/; do
[ -d "$d" ] || continue
skill_name="$(basename "$d")"
if [ ! -d "$TARGET/.kiro/skills/$skill_name" ]; then
mkdir -p "$TARGET/.kiro/skills/$skill_name"
cp "$d"* "$TARGET/.kiro/skills/$skill_name/" 2>/dev/null || true
skills=$((skills + 1))
fi
done
fi

# Copy steering files (markdown)
if [ -d "$SOURCE_KIRO/steering" ]; then
for f in "$SOURCE_KIRO/steering"/*.md; do
local_name=$(basename "$f")
if [ ! -f "$TARGET/.kiro/steering/$local_name" ]; then
cp "$f" "$TARGET/.kiro/steering/" 2>/dev/null || true
steering=$((steering + 1))
fi
done
fi

# Copy hooks (.kiro.hook files and README)
if [ -d "$SOURCE_KIRO/hooks" ]; then
for f in "$SOURCE_KIRO/hooks"/*.kiro.hook "$SOURCE_KIRO/hooks"/*.md; do
[ -f "$f" ] || continue
local_name=$(basename "$f")
if [ ! -f "$TARGET/.kiro/hooks/$local_name" ]; then
cp "$f" "$TARGET/.kiro/hooks/" 2>/dev/null || true
hooks=$((hooks + 1))
fi
done
fi

# Copy scripts (shell scripts) and make executable
if [ -d "$SOURCE_KIRO/scripts" ]; then
for f in "$SOURCE_KIRO/scripts"/*.sh; do
local_name=$(basename "$f")
if [ ! -f "$TARGET/.kiro/scripts/$local_name" ]; then
cp "$f" "$TARGET/.kiro/scripts/" 2>/dev/null || true
chmod +x "$TARGET/.kiro/scripts/$local_name" 2>/dev/null || true
scripts=$((scripts + 1))
fi
done
fi

# Copy settings (example files)
if [ -d "$SOURCE_KIRO/settings" ]; then
for f in "$SOURCE_KIRO/settings"/*; do
[ -f "$f" ] || continue
local_name=$(basename "$f")
if [ ! -f "$TARGET/.kiro/settings/$local_name" ]; then
cp "$f" "$TARGET/.kiro/settings/" 2>/dev/null || true
settings=$((settings + 1))
fi
done
fi

# Installation summary
echo "Installation complete!"
echo ""
echo "Components installed:"
echo " Agents: $agents"
echo " Skills: $skills"
echo " Steering: $steering"
echo " Hooks: $hooks"
echo " Scripts: $scripts"
echo " Settings: $settings"
echo ""
echo "Next steps:"
echo " 1. Open your project in Kiro"
echo " 2. Agents: Automatic in IDE, /agent swap in CLI"
echo " 3. Skills: Available via / menu in chat"
echo " 4. Steering files with 'auto' inclusion load automatically"
echo " 5. Toggle hooks in the Agent Hooks panel"
echo " 6. Copy desired MCP servers from .kiro/settings/mcp.json.example to .kiro/settings/mcp.json"

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ Potential issue | 🔴 Critical

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
# Verify whether .kiro/install.sh contains CRLF (\r) bytes
python - <<'PY'
from pathlib import Path
p = Path(".kiro/install.sh")
b = p.read_bytes()
crlf = b.count(b"\r\n")
bare_cr = b.count(b"\r") - crlf
print(f"{p}: CRLF={crlf}, bare_CR={bare_cr}")
print("HAS_CR" if b"\r" in b else "LF_ONLY")
PY

Repository: affaan-m/everything-claude-code

Length of output: 119


Blocker: Script uses CRLF line endings and will fail on Unix systems.

The file contains 143 CRLF line endings (\r\n), including the shebang. On Unix, this causes /bin/bash^M: bad interpreter errors and will prevent the installer from running.

Fix:

  1. Convert .kiro/install.sh to LF line endings
  2. Add to .gitattributes to prevent future regressions:
    .kiro/*.sh text eol=lf
    
🧰 Tools
🪛 Shellcheck (0.11.0)

[error] 1-1: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 2-2: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 3-3: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 4-4: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 5-5: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 6-6: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 7-7: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 8-8: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 9-9: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 10-10: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 11-11: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 12-12: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 13-13: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 14-14: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 15-15: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 16-16: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 17-17: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 18-18: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 19-19: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 20-20: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 21-21: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 22-22: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 23-23: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 24-24: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 25-25: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 26-26: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 27-27: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 28-28: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[warning] 29-29: Tilde does not expand in quotes. Use $HOME.

(SC2088)


[error] 29-29: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 30-30: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 31-31: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 32-32: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 33-33: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 34-34: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 35-35: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 36-36: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 37-37: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 38-38: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 39-39: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 40-40: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 41-41: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 42-42: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 43-43: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 44-44: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 45-45: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 46-46: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 47-47: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 48-48: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 49-49: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 50-50: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 51-51: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 52-52: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 53-53: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 54-54: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 55-55: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 56-56: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 57-57: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 58-58: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 59-59: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 60-60: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 61-61: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 62-62: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 63-63: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 64-64: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 65-65: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 66-66: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 67-67: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 68-68: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 69-69: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 70-70: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 71-71: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 72-72: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 73-73: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 74-74: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 75-75: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 76-76: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 77-77: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 78-78: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 79-79: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 80-80: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 81-81: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 82-82: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 83-83: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 84-84: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 85-85: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 86-86: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 87-87: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 88-88: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 89-89: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 90-90: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 91-91: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 92-92: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 93-93: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 94-94: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 95-95: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 96-96: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 97-97: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 98-98: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 99-99: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 100-100: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 101-101: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 102-102: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 103-103: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 104-104: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 105-105: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 106-106: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 107-107: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 108-108: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 109-109: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 110-110: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 111-111: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 112-112: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 113-113: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 114-114: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 115-115: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 116-116: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 117-117: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 118-118: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 119-119: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 120-120: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 121-121: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 122-122: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 123-123: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 124-124: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 125-125: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 126-126: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 127-127: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 128-128: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 129-129: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 130-130: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 131-131: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 132-132: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 133-133: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 134-134: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 135-135: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 136-136: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 137-137: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 138-138: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 139-139: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 140-140: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 141-141: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 142-142: Literal carriage return. Run script through tr -d '\r' .

(SC1017)


[error] 143-143: Literal carriage return. Run script through tr -d '\r' .

(SC1017)

🤖 Prompt for AI Agents
Verify each finding against the current code and only fix it if needed.

In @.kiro/install.sh around lines 1 - 143, The install script .kiro/install.sh
has CRLF line endings (including the shebang) causing /bin/bash^M errors;
convert the file to LF line endings (preserve content like the shebang and
variables such as SCRIPT_DIR and SOURCE_KIRO) and commit the normalized file,
and add a .gitattributes entry to enforce LF for future commits (e.g. declare
.kiro/*.sh as text with eol=lf) so the installer and lines like the shebang are
always written with LF.

@ain-soph ain-soph mentioned this pull request Mar 31, 2026
13 tasks
@affaan-m affaan-m merged commit a41a073 into affaan-m:main Mar 31, 2026
4 checks passed
peiking88 pushed a commit to peiking88/everything-claude-code that referenced this pull request Apr 4, 2026
The script lives inside .kiro/, so SCRIPT_DIR already resolves to the .kiro directory. Appending /.kiro again produced an invalid path (.kiro/.kiro) causing the installer to find no source files to copy.
FrancescoRosciano pushed a commit to FRosciano-Mambo/everything-claude-code that referenced this pull request Jun 1, 2026
The script lives inside .kiro/, so SCRIPT_DIR already resolves to the .kiro directory. Appending /.kiro again produced an invalid path (.kiro/.kiro) causing the installer to find no source files to copy.
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