@yeongjaeyou/claude-code-config 0.20.0 → 0.21.1

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,12 @@ description: Resolve GitHub Issue
6
6
 
7
7
  Act as an expert developer who systematically analyzes and resolves GitHub issues. Receive a GitHub issue number as argument and resolve the issue. Follow project guidelines in `@CLAUDE.md`.
8
8
 
9
+ ## Prerequisites
10
+
11
+ Before starting the workflow:
12
+ - **Serena MCP**: If not already active, run `activate_project` to enable semantic code analysis tools
13
+ - **Clean state**: Ensure no uncommitted changes that could conflict with the new branch
14
+
9
15
  ## Workflow
10
16
 
11
17
  1. **Analyze Issue**:
@@ -44,18 +50,30 @@ Act as an expert developer who systematically analyzes and resolves GitHub issue
44
50
  ```
45
51
  - Skip if Status field does not exist
46
52
 
47
- 5. **Analyze Codebase (MANDATORY)**: Before writing any code, spawn multiple Explorer agents in parallel to preserve main context:
53
+ 5. **Analyze Codebase (MANDATORY)**: Before writing any code, understand the affected areas:
54
+
55
+ **Tool Selection by Scope:**
56
+ | Scope | Approach |
57
+ |-------|----------|
58
+ | **Narrow** (1-2 files, specific function) | Serena: `get_symbols_overview` → `find_symbol` → `find_referencing_symbols` |
59
+ | **Broad** (multiple modules, architecture) | Explorer agents in parallel (preserves main context) |
60
+
61
+ **For broad changes**, spawn 2-3 Explorer agents simultaneously:
48
62
  - **Structure agent**: Overall architecture and file relationships
49
63
  - **Pattern agent**: Similar implementations in codebase
50
64
  - **Dependency agent**: Affected modules and consumers
51
65
 
52
- ```
53
- Task tool with subagent_type=Explore (launch 2-3 agents simultaneously)
54
- ```
66
+ **For narrow changes**, use Serena directly:
67
+ 1. `get_symbols_overview` on target file(s)
68
+ 2. `find_symbol` with `include_body=True` for specific functions
69
+ 3. `find_referencing_symbols` for impact analysis
55
70
 
56
71
  6. **Plan Resolution**: Based on analysis results, develop a concrete resolution plan and define work steps.
57
72
 
58
- 7. **Resolve Issue**: Spawn sub-agents to modify code and implement features according to the plan.
73
+ 7. **Resolve Issue**: Implement the solution using appropriate tools:
74
+ - **Symbolic edits** (Serena): `replace_symbol_body`, `insert_after_symbol` for precise modifications
75
+ - **File edits**: For non-code files or complex multi-line changes
76
+ - **Sub-agents**: For large-scale parallel modifications
59
77
  - **If TDD enabled** (marker detected in Step 1):
60
78
  - **Reference**: See `feature-planner` skill for detailed TDD methodology
61
79
  1. 🔴 RED: Write failing tests first based on requirements
@@ -0,0 +1,57 @@
1
+ # ML Guidelines
2
+
3
+ Best practices for Machine Learning and Computer Vision tasks.
4
+
5
+ ## Batch Inference Efficiency
6
+
7
+ Maximize GPU utilization with batch processing during validation/evaluation.
8
+
9
+ ### Do's
10
+ - DataLoader + batch processing required for large-scale inference
11
+ - batch_size based on GPU memory (24GB -> 64, 12GB -> 32)
12
+ - Optimize memory with torch.no_grad() + autocast combination
13
+
14
+ ### Don'ts
15
+ - Calling predict_file() repeatedly in file-by-file loop (GPU utilization < 10%)
16
+ - Using single-file API for large-scale inference
17
+
18
+ ### Pattern
19
+
20
+ ```python
21
+ # Good: Batch inference (GPU utilization 90%+)
22
+ loader = DataLoader(dataset, batch_size=64, num_workers=8)
23
+ with torch.no_grad():
24
+ for batch in loader:
25
+ outputs = model(batch["image"].cuda())
26
+
27
+ # Bad: File-by-file (only for demo/interactive use)
28
+ for f in files:
29
+ predictor.predict_file(f) # Excessive GPU idle time
30
+ ```
31
+
32
+ ## BGR vs RGB Color Format
33
+
34
+ OpenCV uses BGR, matplotlib uses RGB. Keep BGR during annotation, convert to RGB only before display.
35
+
36
+ ```python
37
+ # Correct pattern
38
+ img = cv2.imread(path) # BGR
39
+ img = annotator.annotate(img, detections) # Keep BGR
40
+ img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # Convert just before display
41
+ plt.imshow(img)
42
+
43
+ # Wrong pattern (causes color inversion)
44
+ img = cv2.imread(path)
45
+ img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # Too early
46
+ img = annotator.annotate(img, detections) # BGR colors on RGB image -> inverted
47
+ plt.imshow(img)
48
+ ```
49
+
50
+ ## Ultralytics WandB Integration
51
+
52
+ Ultralytics YOLO has WandB disabled by default.
53
+
54
+ ```bash
55
+ yolo settings wandb=True # Enable
56
+ yolo settings wandb=False # Disable
57
+ ```
@@ -279,5 +279,5 @@ When translating into Korean:
279
279
  ## Related Guidelines
280
280
 
281
281
  - [ID Reference](./id-reference.md) - GitHub/TaskMaster ID conventions
282
- - [CV Guidelines](./cv-guidelines.md) - Computer vision specific guidelines
282
+ - [ML Guidelines](./ml-guidelines.md) - ML/CV batch inference, color formats, Ultralytics
283
283
  - [PRD Guide](./prd-guide.md) - PRD template for TaskMaster
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@yeongjaeyou/claude-code-config",
3
- "version": "0.20.0",
3
+ "version": "0.21.1",
4
4
  "description": "Claude Code CLI custom commands, agents, and skills",
5
5
  "bin": {
6
6
  "claude-code-config": "./bin/cli.js"
@@ -1,30 +0,0 @@
1
- # CV Guidelines
2
-
3
- Best practices for Computer Vision tasks.
4
-
5
- ## BGR vs RGB Color Format
6
-
7
- **Key Point**: OpenCV uses BGR, matplotlib uses RGB. When annotating with OpenCV-based libraries like supervision, keep the image in BGR format and convert to RGB only right before displaying with matplotlib.
8
-
9
- ```python
10
- # Correct pattern
11
- img = cv2.imread(path) # BGR
12
- img = annotator.annotate(img, detections) # Keep BGR
13
- img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # Convert just before display
14
- plt.imshow(img)
15
-
16
- # Wrong pattern (causes color inversion)
17
- img = cv2.imread(path)
18
- img = cv2.cvtColor(img, cv2.COLOR_BGR2RGB) # Too early
19
- img = annotator.annotate(img, detections) # BGR colors on RGB image -> inverted
20
- plt.imshow(img)
21
- ```
22
-
23
- ## Ultralytics WandB Integration
24
-
25
- Ultralytics YOLO has WandB disabled by default.
26
-
27
- ```bash
28
- yolo settings wandb=True # Enable
29
- yolo settings wandb=False # Disable
30
- ```