jun-claude-code 0.0.6 → 0.0.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -6,6 +6,8 @@
6
6
 
7
7
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
8
  CLAUDE_DIR="$(dirname "$SCRIPT_DIR")"
9
+ GLOBAL_CLAUDE_DIR="$HOME/.claude"
10
+ PROJECT_CLAUDE_DIR="$(pwd)/.claude"
9
11
 
10
12
  echo "✅ [Hook] Skill/Agent 평가 프로토콜 실행됨"
11
13
 
@@ -90,22 +92,38 @@ Step 2 - Skill 활성화: YES로 표시된 모든 Skill의 SKILL.md를 읽으세
90
92
  EOF
91
93
 
92
94
  # skills 폴더에서 SKILL.md 파일들의 frontmatter 자동 탐색
93
- if [ -d "$CLAUDE_DIR/skills" ]; then
94
- for skill_dir in "$CLAUDE_DIR/skills"/*/; do
95
- if [ -d "$skill_dir" ]; then
96
- skill_name=$(basename "$skill_dir")
97
- skill_file="$skill_dir/SKILL.md"
98
-
99
- if [ -f "$skill_file" ]; then
100
- echo "**[$skill_name]** \`.claude/skills/$skill_name/SKILL.md\`"
101
- echo '```yaml'
102
- head -6 "$skill_file"
103
- echo '```'
104
- echo ""
95
+ # 프로젝트 .claude/ 와 ~/.claude/ 양쪽에서 탐색 (프로젝트 우선, 중복 제거)
96
+ SEEN_SKILLS=""
97
+ for search_dir in "$PROJECT_CLAUDE_DIR" "$GLOBAL_CLAUDE_DIR"; do
98
+ if [ -d "$search_dir/skills" ]; then
99
+ for skill_dir in "$search_dir/skills"/*/; do
100
+ if [ -d "$skill_dir" ]; then
101
+ skill_name=$(basename "$skill_dir")
102
+ skill_file="$skill_dir/SKILL.md"
103
+
104
+ # 이미 탐색된 Skill은 건너뜀
105
+ case "$SEEN_SKILLS" in
106
+ *"|${skill_name}|"*) continue ;;
107
+ esac
108
+ SEEN_SKILLS="${SEEN_SKILLS}|${skill_name}|"
109
+
110
+ if [ -f "$skill_file" ]; then
111
+ # 출처 표시
112
+ if [ "$search_dir" = "$PROJECT_CLAUDE_DIR" ]; then
113
+ display_path=".claude/skills/$skill_name/SKILL.md"
114
+ else
115
+ display_path="~/.claude/skills/$skill_name/SKILL.md"
116
+ fi
117
+ echo "**[$skill_name]** \`$display_path\`"
118
+ echo '```yaml'
119
+ head -6 "$skill_file"
120
+ echo '```'
121
+ echo ""
122
+ fi
105
123
  fi
106
- fi
107
- done
108
- fi
124
+ done
125
+ fi
126
+ done
109
127
 
110
128
  cat << 'EOF'
111
129
 
@@ -139,22 +157,40 @@ Step 4 - Agent 활용: YES로 표시된 Agent는 Task 도구로 호출하세요.
139
157
  EOF
140
158
 
141
159
  # agents 폴더에서 agent 파일들의 frontmatter 자동 탐색
142
- if [ -d "$CLAUDE_DIR/agents" ]; then
143
- for agent_file in "$CLAUDE_DIR/agents"/*.md; do
144
- if [ -f "$agent_file" ]; then
145
- agent_name=$(basename "$agent_file" .md)
146
-
147
- # CLAUDE.md는 제외
148
- if [ "$agent_name" != "CLAUDE" ]; then
149
- echo "**[$agent_name]** \`.claude/agents/$agent_name.md\`"
160
+ # 프로젝트 .claude/ 와 ~/.claude/ 양쪽에서 탐색 (프로젝트 우선, 중복 제거)
161
+ SEEN_AGENTS=""
162
+ for search_dir in "$PROJECT_CLAUDE_DIR" "$GLOBAL_CLAUDE_DIR"; do
163
+ if [ -d "$search_dir/agents" ]; then
164
+ for agent_file in "$search_dir/agents"/*.md; do
165
+ if [ -f "$agent_file" ]; then
166
+ agent_name=$(basename "$agent_file" .md)
167
+
168
+ # CLAUDE.md는 제외
169
+ if [ "$agent_name" = "CLAUDE" ]; then
170
+ continue
171
+ fi
172
+
173
+ # 이미 탐색된 Agent는 건너뜀
174
+ case "$SEEN_AGENTS" in
175
+ *"|${agent_name}|"*) continue ;;
176
+ esac
177
+ SEEN_AGENTS="${SEEN_AGENTS}|${agent_name}|"
178
+
179
+ # 출처 표시
180
+ if [ "$search_dir" = "$PROJECT_CLAUDE_DIR" ]; then
181
+ display_path=".claude/agents/$agent_name.md"
182
+ else
183
+ display_path="~/.claude/agents/$agent_name.md"
184
+ fi
185
+ echo "**[$agent_name]** \`$display_path\`"
150
186
  echo '```yaml'
151
187
  head -6 "$agent_file"
152
188
  echo '```'
153
189
  echo ""
154
190
  fi
155
- fi
156
- done
157
- fi
191
+ done
192
+ fi
193
+ done
158
194
 
159
195
  cat << 'EOF'
160
196
 
@@ -6,6 +6,8 @@
6
6
 
7
7
  SCRIPT_DIR="$(cd "$(dirname "${BASH_SOURCE[0]}")" && pwd)"
8
8
  CLAUDE_DIR="$(dirname "$SCRIPT_DIR")"
9
+ GLOBAL_CLAUDE_DIR="$HOME/.claude"
10
+ PROJECT_CLAUDE_DIR="$(pwd)/.claude"
9
11
 
10
12
  echo "✅ [Hook] 워크플로우 순서 강제 프로토콜 실행됨"
11
13
 
@@ -132,22 +134,38 @@ PHASE 4: 리뷰 (Review) - 구현 후 필수
132
134
  EOF
133
135
 
134
136
  # skills 폴더에서 SKILL.md 파일들의 frontmatter 자동 탐색
135
- if [ -d "$CLAUDE_DIR/skills" ]; then
136
- for skill_dir in "$CLAUDE_DIR/skills"/*/; do
137
- if [ -d "$skill_dir" ]; then
138
- skill_name=$(basename "$skill_dir")
139
- skill_file="$skill_dir/SKILL.md"
140
-
141
- if [ -f "$skill_file" ]; then
142
- echo "**[$skill_name]** \`.claude/skills/$skill_name/SKILL.md\`"
143
- echo '```yaml'
144
- head -6 "$skill_file"
145
- echo '```'
146
- echo ""
137
+ # 프로젝트 .claude/ 와 ~/.claude/ 양쪽에서 탐색 (프로젝트 우선, 중복 제거)
138
+ SEEN_SKILLS=""
139
+ for search_dir in "$PROJECT_CLAUDE_DIR" "$GLOBAL_CLAUDE_DIR"; do
140
+ if [ -d "$search_dir/skills" ]; then
141
+ for skill_dir in "$search_dir/skills"/*/; do
142
+ if [ -d "$skill_dir" ]; then
143
+ skill_name=$(basename "$skill_dir")
144
+ skill_file="$skill_dir/SKILL.md"
145
+
146
+ # 이미 탐색된 Skill은 건너뜀
147
+ case "$SEEN_SKILLS" in
148
+ *"|${skill_name}|"*) continue ;;
149
+ esac
150
+ SEEN_SKILLS="${SEEN_SKILLS}|${skill_name}|"
151
+
152
+ if [ -f "$skill_file" ]; then
153
+ # 출처 표시
154
+ if [ "$search_dir" = "$PROJECT_CLAUDE_DIR" ]; then
155
+ display_path=".claude/skills/$skill_name/SKILL.md"
156
+ else
157
+ display_path="~/.claude/skills/$skill_name/SKILL.md"
158
+ fi
159
+ echo "**[$skill_name]** \`$display_path\`"
160
+ echo '```yaml'
161
+ head -6 "$skill_file"
162
+ echo '```'
163
+ echo ""
164
+ fi
147
165
  fi
148
- fi
149
- done
150
- fi
166
+ done
167
+ fi
168
+ done
151
169
 
152
170
  cat << 'EOF'
153
171
 
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "jun-claude-code",
3
- "version": "0.0.6",
3
+ "version": "0.0.7",
4
4
  "description": "Claude Code configuration template - copy .claude settings to your project",
5
5
  "main": "dist/index.js",
6
6
  "bin": "dist/cli.js",