@simplysm/sd-claude 13.0.83 → 13.0.84

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.
@@ -1,12 +1,16 @@
1
- ## 요청 수행 규칙
1
+ ## Request Handling Rules
2
2
 
3
- - 사용자가 명시적으로 수정을 요청하지 않은 경우, 코드를 절대 수정하지 않는다. (질문등에 대해 자의적 판단 금지)
3
+ - Never modify code unless the user explicitly requests changes. (No autonomous decisions in response to questions, etc.)
4
4
 
5
- ## 코드 작성 규칙
5
+ ## Code Writing Rules
6
6
 
7
- - YAGNI 원칙 준수
7
+ - Follow the YAGNI principle.
8
8
 
9
- ## Playwright 규칙
9
+ ## Playwright Rules
10
10
 
11
- - Playwright 모든 output(스크린샷, PDF, 다운로드 ) `.tmp/playwright/` 디렉토리에 저장한다.
11
+ - All Playwright output (screenshots, PDFs, downloads, etc.) must be saved to the `.tmp/playwright/` directory.
12
+
13
+ ## Documentation Rules for LLMs
14
+
15
+ - Write in English. (including code comments)
12
16
 
@@ -1,7 +1,7 @@
1
- # @simplysm 패키지 문서
1
+ # @simplysm Package Documentation
2
2
 
3
- `@simplysm/*` 패키지의 API 상세 정보, 사용 예시, 컴포넌트 props 등이 필요할 때,
4
- 해당 패키지의 README.md를 읽는다.
3
+ When you need detailed API information, usage examples, or component props for `@simplysm/*` packages,
4
+ read the corresponding package's README.md.
5
5
 
6
- 1. 패키지의 README.md 읽기: `packages/{package-name}/README.md`
7
- 2. README.md `docs/` 인덱스(Documentation 테이블) 있으면, 필요한 카테고리의 `docs/*.md` 파일만 추가로 읽기
6
+ 1. Read the package's README.md: `packages/{package-name}/README.md`
7
+ 2. If the README.md contains a `docs/` index (Documentation table), read only the relevant category's `docs/*.md` files as needed
@@ -1,89 +1,89 @@
1
1
  ---
2
2
  name: sd-api-review
3
- description: "API 리뷰", "api-review", "sd-api-review", "API 개선", "공개 API 검토", "API 직관성" 등을 요청할 때 사용.
3
+ description: Used when requesting "API review", "api-review", "sd-api-review", "API improvement", "public API review", "API intuitiveness", etc.
4
4
  ---
5
5
 
6
- # SD API Review — Public API 직관성 리뷰 개선
6
+ # SD API Review — Public API Intuitiveness Review and Improvement
7
7
 
8
- 지정한 경로(패키지/폴더/파일)의 public API 추출하고, 관련 표준 유사 라이브러리와 비교하여 직관성 개선안을 도출한 뒤, `/sd-plan` 프로세스로 계획을 수립하여 구현한다. Breaking change를 허용하며 사용자 직관성을 최우선으로 한다.
8
+ Extracts the public API from the specified path (package/folder/file), compares it against relevant standards and similar libraries to derive intuitiveness improvements, then establishes an implementation plan via the `/sd-plan` process. Breaking changes are permitted, and user intuitiveness is the top priority.
9
9
 
10
- ARGUMENTS: 대상 경로 (필수). 예: `/sd-api-review packages/my-pkg`
10
+ ARGUMENTS: Target path (required). Example: `/sd-api-review packages/my-pkg`
11
11
 
12
12
  ---
13
13
 
14
- ## Step 1: 인자 확인
14
+ ## Step 1: Validate Arguments
15
15
 
16
- 1. ARGUMENTS에서 **대상 경로**를 추출하라. 경로가 없으면 "대상 경로를 지정해 주세요. 예: `/sd-api-review packages/my-pkg`"라고 안내하고 종료하라.
16
+ 1. Extract the **target path** from ARGUMENTS. If no path is provided, display "Please specify a target path. Example: `/sd-api-review packages/my-pkg`" and terminate.
17
17
 
18
- ## Step 2: Public API 추출
18
+ ## Step 2: Extract Public API
19
19
 
20
- 대상의 public API 수집하라.
21
- - **폴더/파일 대상**: 해당 경로의 export를 직접 분석
22
- - **깊이**: export된 심볼(클래스, 함수, 인터페이스, 타입, 상수) + export된 클래스의 public 메서드/프로퍼티
20
+ Collect the public API of the target.
21
+ - **Folder/file target**: Directly analyze exports from the given path
22
+ - **Depth**: Exported symbols (classes, functions, interfaces, types, constants) + public methods/properties of exported classes
23
23
 
24
- export가 없으면 "대상에 export된 API가 없습니다."라고 안내하고 종료하라.
24
+ If there are no exports, display "The target has no exported API." and terminate.
25
25
 
26
- ## Step 3: 비교 분석 개선안 도출
26
+ ## Step 3: Comparative Analysis and Improvement Derivation
27
27
 
28
- ### 3-1. 비교 대상 결정
28
+ ### 3-1. Determine Comparison Targets
29
29
 
30
- - 패키지 메타데이터와 코드 내용을 분석하여 도메인을 추론하고, 해당 도메인에서 가장 널리 사용되는 다수의 라이브러리 자동 선정하라.
31
- - 관련 표준(HTML, WAI-ARIA, Web API, TC39, Javascript, CSS ) 도메인에 따라 자동으로 포함하라.
30
+ - Analyze package metadata and code contents to infer the domain, then automatically select multiple widely-used libraries in that domain.
31
+ - Automatically include relevant standards (HTML, WAI-ARIA, Web API, TC39, JavaScript, CSS, etc.) based on the domain.
32
32
 
33
- ### 3-2. 외부 API 조사
33
+ ### 3-2. External API Research
34
34
 
35
- WebSearch WebFetch 사용하여 아래 축을 **동등한 비중**으로 조사하라.
36
- **카테고리/패턴 단위**로 비교하라 (개별 심볼마다 검색하지 않음).
35
+ Use WebSearch and WebFetch to research the following two axes with **equal weight**.
36
+ Compare at the **category/pattern level** (do not search for each individual symbol).
37
37
 
38
- 1. **표준**: 도메인 관련 표준의 공식 사양에서 네이밍, 속성, 패턴을 조사하라.
39
- 2. **라이브러리**: 선정된 라이브러리들의 공식 문서에서 API를 조사하라.
38
+ 1. **Standards**: Research naming, attributes, and patterns from official specifications of domain-related standards.
39
+ 2. **Libraries**: Research APIs from official documentation of the selected libraries.
40
40
 
41
- ### 3-3. 개선안 도출
41
+ ### 3-3. Derive Improvements
42
42
 
43
- Step 2 API 카탈로그와 외부 API를 비교하여 개선점을 도출하라. 네이밍, 구조, 일관성, 패턴, 사용 편의성, 타입 품질 관점에서 검토하라.
43
+ Compare the API catalog from Step 2 against external APIs to derive improvements. Review from the perspectives of naming, structure, consistency, patterns, usability, and type quality.
44
44
 
45
- 주의사항:
46
- - Breaking change는 고려대상이 아니다. 완전히 허용된다.
47
- - input/output/목적이 다를경우 동작이 다른경우, 제안이 잘못될 있음을 반드시 인지해야함. (자주하는 실수)
45
+ Precautions:
46
+ - Breaking changes are not a concern. They are fully permitted.
47
+ - When input/output/purpose differs or behavior differs, proposals may be incorrect this must always be recognized. (A common mistake)
48
48
 
49
- 개선안은 아래를 포함하라:
50
- - **현재**: 현재 API 상태 (코드 예시)
51
- - **제안**: 개선된 API (코드 예시)
52
- - **전환이유**: 변경해야 하는 근거 (표준/라이브러리 비교 포함)
53
- - **비전환이유**: 현재 상태를 유지해도 되는 근거
49
+ Each improvement must include the following:
50
+ - **Current**: Current API state (code example)
51
+ - **Proposed**: Improved API (code example)
52
+ - **Reasons to change**: Rationale for the change (including standard/library comparisons)
53
+ - **Reasons not to change**: Rationale for maintaining the current state
54
54
 
55
- ## Step 4: sd-plan으로 구현 계획 수립
55
+ ## Step 4: Establish Implementation Plan via sd-plan
56
56
 
57
- Step 3에서 도출된 개선안을 작업 설명으로 하여, Skill 도구로 `sd-plan`을 호출하라. args에 아래를 전달하라:
57
+ Using the improvements derived in Step 3 as the task description, invoke `sd-plan` via the Skill tool. Pass the following in args:
58
58
 
59
59
  ```
60
- 아래는 **LLM이 분석하여 제안한** API 개선안이다.
61
- 개선안은 사용자가 명시적으로 요청한 수정이 아니므로, 불명확한 것으로 취급하라.
60
+ The following are API improvements **proposed by LLM analysis**.
61
+ Since the improvements are not explicitly requested modifications by the user, treat them as unclear.
62
62
 
63
- ## 대상
64
- <대상 경로>
63
+ ## Target
64
+ <target path>
65
65
 
66
- ## LLM 제안 개선안 비교 분석
67
- 불명확한 개선안을 사용자에게 질문할 때, 아래 내용을 **반드시 먼저** 제시하여 사용자가 맥락을 파악할 있도록 하라.
66
+ ## LLM-Proposed ImprovementsComparative Analysis Table
67
+ When asking the user about unclear improvements, **always present** the following content first so the user can understand the context.
68
68
 
69
69
  ```
70
- 개선안:
71
- - 현재:
72
- - 제안:
73
- - 전환이유:
74
- - 비전환이유:
70
+ Improvement:
71
+ - Current:
72
+ - Proposed:
73
+ - Reasons to change:
74
+ - Reasons not to change:
75
75
  ```
76
76
 
77
- ## 구현 필수 고려사항
78
- 1. Breaking change는 고려 대상이 아니다. 완전히 허용된다.
79
- 2. 모노레포 전체에서 변경된 API 사용처를 Grep으로 검색하여 함께 수정하라.
80
- 3. deprecated 래퍼를 남기지 않는다 (clean break).
77
+ ## Required Considerations for Implementation
78
+ 1. Breaking changes are not a concern. They are fully permitted.
79
+ 2. Use Grep to search for usages of the changed API across the entire monorepo and update them together.
80
+ 3. Do not leave deprecated wrappers (clean break).
81
81
  ```
82
82
 
83
- ## Step 5: 계획 실행
83
+ ## Step 5: Execute the Plan
84
84
 
85
- sd-plan 완료되어 확정된 계획서가 나오면, 계획서에 따라 코드를 수정하라.
85
+ Once sd-plan is complete and a finalized plan is produced, modify the code according to that plan.
86
86
 
87
- ## Step 6: README 업데이트 추천
87
+ ## Step 6: Recommend README Update
88
88
 
89
- 코드 수정이 발생한 경우, 사용자에게 `/sd-readme` 수행을 추천하라.
89
+ If code modifications were made, recommend the user to run `/sd-readme`.
@@ -1,69 +1,69 @@
1
1
  ---
2
2
  name: sd-check
3
- description: "체크", "check", "sd-check", "타입체크+린트+테스트", "전체 검사" 등을 요청할 때 사용.
3
+ description: Used when requesting "check", "sd-check", "typecheck+lint+test", "full check", etc.
4
4
  ---
5
5
 
6
- # SD Check — 자동 검사 오류 수정 루프
6
+ # SD Check — Automated Check and Error Fix Loop
7
7
 
8
- 패키지 매니저를 감지하고 check 스크립트를 실행하여 결과를 확인한 뒤, 코드 오류가 있으면 sd-debug 근본 원인을 분석·수정하고 재검사하는 과정을 오류가 없을 때까지 반복한다.
8
+ Detects the package manager, runs the check script, reviews the results, and if there are code errors, invokes sd-debug to analyze the root cause, applies fixes, and re-runs the check. This loop repeats until all errors are resolved.
9
9
 
10
- ARGUMENTS: 타겟 경로 (선택, 복수 가능). 미지정 대화 컨텍스트에서 파악하며, 특정 타겟이 없거나 "전체/all"이면 타겟 없이 실행.
10
+ ARGUMENTS: Target paths (optional, multiple allowed). If not specified, determined from the conversation context. If no specific target exists or "all" is specified, run without targets.
11
11
 
12
12
  ---
13
13
 
14
- ## Step 1: 준비 (PM 감지 + 스크립트 확인 + 타겟 결정)
14
+ ## Step 1: Preparation (PM Detection + Script Verification + Target Resolution)
15
15
 
16
- 1. **PM 감지**: 프로젝트 루트의 파일로 판별하라.
17
- - `pnpm-lock.yaml` 존재 → `pnpm`
18
- - `yarn.lock` 존재 → `yarn`
19
- - `package-lock.json` 존재 → `npm`
20
- - 모두 없으면 → `npm` (기본값)
21
- 2. **스크립트 확인**: `package.json`의 `scripts.check` 존재 여부를 확인하라. 없으면 `"check 스크립트가 package.json에 정의되어 있지 않습니다."` 안내 후 **종료**.
22
- 3. **타겟 결정**: 아래 우선순위로 결정하라.
23
- 1. ARGUMENTS에 명시된 타겟
24
- 2. 현재 대화 컨텍스트에서 파악 (사용자가 특정 패키지 작업 중인 경우)
25
- 3. 모두 해당 없거나 "전체/all" → 타겟 없이 실행 (전체)
16
+ 1. **PM Detection**: Determine the package manager from the lock file in the project root.
17
+ - `pnpm-lock.yaml` exists → `pnpm`
18
+ - `yarn.lock` exists → `yarn`
19
+ - `package-lock.json` exists → `npm`
20
+ - None found → `npm` (default)
21
+ 2. **Script Verification**: Check whether `scripts.check` exists in `package.json`. If not, inform the user with `"The check script is not defined in package.json."` and **stop**.
22
+ 3. **Target Resolution**: Determine targets in the following priority order.
23
+ 1. Targets explicitly specified in ARGUMENTS
24
+ 2. Inferred from the current conversation context (e.g., user is working on a specific package)
25
+ 3. If neither applies or "all" is specified run without targets (full check)
26
26
 
27
- ## Step 2: 검사 실행
27
+ ## Step 2: Run Check
28
28
 
29
29
  1. `mkdir -p .tmp/check` (Bash)
30
- 2. Bash로 아래 명령을 실행하라:
30
+ 2. Run the following command via Bash:
31
31
  ```
32
- $PM check [targets...] > .tmp/check/{yyMMddHHmmss}.txt 2>&1; echo "EXIT_CODE:$?" >> .tmp/check/{yyMMddHHmmss}.txt
32
+ TS=$(date +%y%m%d%H%M%S); $PM check [targets...] > .tmp/check/${TS}.txt 2>&1; echo "EXIT_CODE:$?" >> .tmp/check/${TS}.txt
33
33
  ```
34
- - `$PM` = Step 1에서 감지한 패키지 매니저
35
- - `{yyMMddHHmmss}` = 연월일시분초
36
- - 타겟이 있으면 명령에 포함, 없으면 생략
37
- 3. Read 도구로 결과 파일(`.tmp/check/{yyMMddHHmmss}.txt`) 읽어라.
34
+ - `$PM` = the package manager detected in Step 1
35
+ - `$TS` = timestamp variable (e.g., `260312143025`)
36
+ - Include targets in the command if present; omit otherwise
37
+ 3. Read the result file (`.tmp/check/${TS}.txt`) using the Read tool.
38
38
 
39
- ## Step 3: 결과 분석
39
+ ## Step 3: Analyze Results
40
40
 
41
- 결과 파일 내용을 읽고 아래 가지 하나로 분류하라:
41
+ Read the result file content and classify it into one of the following three categories:
42
42
 
43
- - **성공**: 오류 없이 모든 검사를 통과한 경우 → **Step 5(완료)**로 이동
44
- - **환경 오류**: 코드 문제가 아닌 환경/인프라 문제로 판단되는 경우 (예: 의존성 미설치, 메모리 부족, 명령어 없음, 네트워크 문제 ) → 사용자에게 해당 오류 내용을 보여주고 **즉시 종료**. 코드 수정을 시도하지 않는다.
45
- - **코드 오류**: 소스 코드의 타입 에러, 린트 위반, 테스트 실패 등으로 판단되는 경우 → **Step 4**로 이동
43
+ - **Success**: All checks passed without errorsproceed to **Step 5 (Completion)**
44
+ - **Environment Error**: The issue is an environment/infrastructure problem rather than a code problem (e.g., missing dependencies, out of memory, command not found, network issues, etc.) → show the error details to the user and **stop immediately**. Do not attempt code fixes.
45
+ - **Code Error**: The issue is a source code problem such as type errors, lint violations, or test failures proceed to **Step 4**
46
46
 
47
- > 분류는 하드코딩된 패턴 매칭이 아닌, 결과 내용을 읽고 자유롭게 판단한다.
47
+ > The classification above should be determined by reading and interpreting the result content freely, not by hardcoded pattern matching.
48
48
 
49
- **반복 제한**: 현재 반복 횟수가 5회를 초과하면, 잔여 오류를 사용자에게 보고하고 `"5회 반복 후에도 오류가 남아 있습니다. 남은 오류를 확인해 주세요."` 안내 후 **종료**.
49
+ **Iteration Limit**: If the current iteration count exceeds 5, report the remaining errors to the user, inform them with `"Errors remain after 5 iterations. Please review the remaining errors."`, and **stop**.
50
50
 
51
- ## Step 4: 오류 분석 수정 (sd-debug 활용)
51
+ ## Step 4: Error Analysis and Fix (Using sd-debug)
52
52
 
53
- Skill 도구로 `sd-debug`를 호출하라. args에 아래 내용을 전달하라:
53
+ Invoke `sd-debug` via the Skill tool. Pass the following content as args:
54
54
 
55
55
  ```
56
- 아래 check 결과의 코드 오류를 분석하라.
57
- **중요: Step 2(코드베이스 심층 분석) 완료 Step 3~5 건너뛰고, 분석 결과를 바탕으로 바로 코드를 수정하라. 진단 보고서 출력, 사용자 확인, sd-plan 호출 없이 즉시 수정한다.**
56
+ Analyze the code errors from the check results below.
57
+ **Important: After completing Step 2 (in-depth codebase analysis), skip Steps 3-5 and immediately fix the code based on the analysis results. Do not output a diagnostic report, do not wait for user confirmation, and do not invoke sd-plan apply fixes directly.**
58
58
 
59
- <.tmp/check/{yyMMddHHmmss}.txt 오류 내용을 여기에 포함>
59
+ <Include the error content from the check result file here>
60
60
  ```
61
61
 
62
- sd-debug 완료 → **Step 2**로 복귀 (새로운 txt 재검사)
62
+ After sd-debug completesreturn to **Step 2** (re-run check with a new txt file)
63
63
 
64
- ## Step 5: 완료 보고
64
+ ## Step 5: Completion Report
65
65
 
66
- 모든 검사 통과 아래를 출력하라:
67
- - 반복 횟수
68
- - 반복에서 수정한 내용 요약
69
- - 형식: `" 체크 완료: {N} 만에 모든 검사를 통과했습니다."` + 수정 내역 bullet list
66
+ When all checks pass, output the following:
67
+ - Total number of iterations
68
+ - Summary of fixes made in each iteration
69
+ - Format: `"Check complete: all checks passed after {N} iteration(s)."` + bullet list of fix details
@@ -1,63 +1,63 @@
1
1
  ---
2
2
  name: sd-commit
3
- description: "커밋", "commit", "sd-commit" 등을 요청할 때 사용.
3
+ description: Used when requesting "commit", "sd-commit", etc.
4
4
  ---
5
5
 
6
- # SD Commit — 변경사항 분석 커밋
6
+ # SD Commit — Analyze Changes and Commit
7
7
 
8
- 변경사항을 스테이징하고, 변경 내용을 분석하여 커밋 메시지를 생성한 커밋한다.
8
+ Stage changes, analyze the diff to generate a commit message, and commit.
9
9
 
10
- ARGUMENTS: `all` (선택). 지정하면 모든 변경사항 대상, 미지정 대화 수정 파일만 대상.
10
+ ARGUMENTS: `all` (optional). If specified, target all changes; if omitted, target only files modified during the current conversation.
11
11
 
12
12
  ---
13
13
 
14
- ## Step 1: 인자 파싱 스테이징
14
+ ## Step 1: Parse Arguments and Stage
15
15
 
16
- ARGUMENTS에서 `all` 여부를 확인하라.
16
+ Check whether `all` is present in ARGUMENTS.
17
17
 
18
- - **`all`**: 워킹 트리의 모든 변경사항(수정, 삭제, 신규)을 스테이징하라.
19
- - **`all`이 아니거나 인자 없음**: 현재 대화에서 Edit 또는 Write 도구로 수정하거나 생성한 파일들만 스테이징하라. 대화 컨텍스트를 되돌아보며 해당 파일 목록을 추출하라.
18
+ - **`all`**: Stage all changes in the working tree (modified, deleted, and new files).
19
+ - **Not `all` or no arguments**: Stage only files that were modified or created via the Edit or Write tools during the current conversation. Review the conversation context and extract the list of those files.
20
20
 
21
- ## Step 2: 변경사항 확인
21
+ ## Step 2: Check for Changes
22
22
 
23
- 스테이징된 변경사항이 없으면 "커밋할 변경사항이 없습니다."라고 안내하고 **종료**하라.
23
+ If there are no staged changes, inform the user "No changes to commit." and **stop**.
24
24
 
25
- ## Step 3: 커밋 메시지 생성 커밋
25
+ ## Step 3: Generate Commit Message and Commit
26
26
 
27
- 스테이징된 diff 분석하여 아래 규칙에 따라 커밋 메시지를 생성하고 커밋하라.
27
+ Analyze the staged diff and generate a commit message according to the rules below, then commit.
28
28
 
29
- ### 커밋 메시지 규칙
29
+ ### Commit Message Rules
30
30
 
31
- - **Conventional Commits** 형식: prefix + 설명
32
- - prefix 예: `feat`, `fix`, `refactor`, `chore`, `docs`, `style`, `test`, `perf`, `ci`, `build`
33
- - **subject** ( ): 변경 요약. 70 이내.
34
- - **body**: 주요 변경 내용을 나열. 여러 주제의 변경이 섞여 있으면 주제별로 `[prefix]` 태그를 붙여 그룹화하라.
35
- - 마지막에 `Co-Authored-By: Claude <noreply@anthropic.com>` 포함.
31
+ - **Conventional Commits** format: prefix + description
32
+ - prefix examples: `feat`, `fix`, `refactor`, `chore`, `docs`, `style`, `test`, `perf`, `ci`, `build`
33
+ - **subject** (first line): Summary of changes. 70 characters or fewer.
34
+ - **body**: After a blank line, list the key changes. If changes span multiple topics, group them with `[prefix]` tags per topic.
35
+ - Include `Co-Authored-By: Claude <noreply@anthropic.com>` at the end.
36
36
 
37
- 단일 주제 예시:
37
+ Single-topic example:
38
38
  ```
39
- feat: 사용자 인증 로직 추가
39
+ feat: Add user authentication logic
40
40
 
41
- - AuthService에 JWT 토큰 검증 로직 구현
42
- - 로그인 페이지에 유효성 검사 추가
41
+ - Implement JWT token verification in AuthService
42
+ - Add form validation to the login page
43
43
 
44
44
  Co-Authored-By: Claude <noreply@anthropic.com>
45
45
  ```
46
46
 
47
- 여러 주제 예시:
47
+ Multi-topic example:
48
48
  ```
49
- chore: 인증 기능 추가 결제 오류 수정
49
+ chore: Add authentication feature and fix payment error
50
50
 
51
- [feat] 사용자 인증
52
- - AuthService에 JWT 토큰 검증 로직 구현
53
- - 로그인 페이지에 유효성 검사 추가
51
+ [feat] User authentication
52
+ - Implement JWT token verification in AuthService
53
+ - Add form validation to the login page
54
54
 
55
- [fix] 결제 모듈
56
- - 결제 실패 재시도 로직 수정
55
+ [fix] Payment module
56
+ - Fix retry logic on payment failure
57
57
 
58
58
  Co-Authored-By: Claude <noreply@anthropic.com>
59
59
  ```
60
60
 
61
- ## Step 4: 결과 출력
61
+ ## Step 4: Output Result
62
62
 
63
- 커밋 완료 커밋 메시지 전문을 사용자에게 보여줘라.
63
+ After the commit is complete, show the full commit message to the user.