heymark 1.0.2 → 1.1.0
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.
- package/README.md +226 -226
- package/package.json +57 -57
- package/scripts/lib/config.js +73 -71
- package/scripts/lib/parser.js +82 -82
- package/scripts/lib/repo.js +80 -76
- package/scripts/sync.js +239 -237
- package/scripts/tools/claude.js +42 -42
- package/scripts/tools/codex.js +41 -24
- package/scripts/tools/copilot.js +41 -48
- package/scripts/tools/cursor.js +41 -41
package/README.md
CHANGED
|
@@ -1,226 +1,226 @@
|
|
|
1
|
-
# Heymark
|
|
2
|
-
|
|
3
|
-
AI 코딩 도구의 컨벤션을 중앙에서 관리하고, 각 도구 형식으로 자동 변환하는 시스템.
|
|
4
|
-
|
|
5
|
-
1. [Overview](#overview)
|
|
6
|
-
2. [Features](#features)
|
|
7
|
-
3. [Tech Stack](#tech-stack)
|
|
8
|
-
4. [Publishing](#publishing)
|
|
9
|
-
5. [Integration](#integration)
|
|
10
|
-
6. [Getting Started](#getting-started)
|
|
11
|
-
7. [Tool Support](#tool-support)
|
|
12
|
-
|
|
13
|
-
## Overview
|
|
14
|
-
|
|
15
|
-
프로젝트마다 AI 도구별 규칙 파일을 따로 작성하면 관리가 파편화된다.
|
|
16
|
-
이 시스템은 단일 진실 공급원(Single Source of Truth) 원칙에 따라, 한 곳에서 작성한 규칙을 여러 AI 도구 형식으로 자동 변환한다.
|
|
17
|
-
규칙을 한 번만 작성하면 Cursor, Claude Code, GitHub Copilot, OpenAI Codex 등에서 즉시 사용할 수 있다.
|
|
18
|
-
|
|
19
|
-
## Features
|
|
20
|
-
|
|
21
|
-
- **단일 소스 관리**: 마크다운 파일 하나로 모든 AI 도구의 규칙 통합 관리
|
|
22
|
-
- **자동 형식 변환**: 4종 AI 도구의 네이티브 형식으로 자동 변환 (YAML frontmatter, AGENTS.md 등)
|
|
23
|
-
- **선택적 변환**: 특정 도구만 선택하여 변환 가능
|
|
24
|
-
- **NPM 패키지 배포**: NPM registry를 통한 public 배포로 간편한 설치 및 버전 관리
|
|
25
|
-
- **플러그인 구조**: 변환 모듈 추가만으로 새 도구 지원 확장
|
|
26
|
-
|
|
27
|
-
## Tech Stack
|
|
28
|
-
|
|
29
|
-
- **Runtime**: Node.js
|
|
30
|
-
- **Language**: JavaScript
|
|
31
|
-
- **Core**: File system API, YAML frontmatter parsing
|
|
32
|
-
|
|
33
|
-
## Publishing
|
|
34
|
-
|
|
35
|
-
패키지 관리자용 가이드 (일반 사용자는 [Integration](#integration) 참고).
|
|
36
|
-
|
|
37
|
-
### 초기 설정 (한 번만)
|
|
38
|
-
|
|
39
|
-
```bash
|
|
40
|
-
# NPM 로그인
|
|
41
|
-
npm login
|
|
42
|
-
# Username: your-npm-username
|
|
43
|
-
# Email: your-email@example.com
|
|
44
|
-
```
|
|
45
|
-
|
|
46
|
-
### 배포 프로세스
|
|
47
|
-
|
|
48
|
-
```bash
|
|
49
|
-
# 1. 규칙 수정 후 테스트
|
|
50
|
-
node scripts/sync.js --preview
|
|
51
|
-
|
|
52
|
-
# 2. 버전 업데이트 (자동으로 Git 태그 생성)
|
|
53
|
-
npm version patch # 또는 minor, major
|
|
54
|
-
|
|
55
|
-
# 3. GitHub에 푸시
|
|
56
|
-
git push --follow-tags # 커밋과 태그를 함께 푸시
|
|
57
|
-
|
|
58
|
-
# 4. NPM에 배포
|
|
59
|
-
npm publish
|
|
60
|
-
```
|
|
61
|
-
|
|
62
|
-
**버전 관리:**
|
|
63
|
-
|
|
64
|
-
- `patch` (1.0.0 → 1.0.1): 버그 수정, 오타 수정
|
|
65
|
-
- `minor` (1.0.0 → 1.1.0): 새 규칙 추가, 기능 개선
|
|
66
|
-
- `major` (1.0.0 → 2.0.0): 호환성 깨지는 변경
|
|
67
|
-
|
|
68
|
-
**Git 태그 설명:**
|
|
69
|
-
|
|
70
|
-
- `npm version` 명령어는 자동으로 Git 태그를 생성합니다
|
|
71
|
-
- `git push --follow-tags`: 일반 커밋과 태그를 함께 푸시 (추천)
|
|
72
|
-
- 또는 `git push && git push --tags`: 커밋 푸시 후 모든 태그 푸시
|
|
73
|
-
|
|
74
|
-
## Integration
|
|
75
|
-
|
|
76
|
-
### Installation
|
|
77
|
-
|
|
78
|
-
```bash
|
|
79
|
-
# 패키지 설치
|
|
80
|
-
npm install --save-dev heymark
|
|
81
|
-
```
|
|
82
|
-
|
|
83
|
-
### 초기 설정 (규칙 소스 = 원격 GitHub 저장소)
|
|
84
|
-
|
|
85
|
-
규칙은 **원격 GitHub 저장소(Public/Private)** 에서 읽습니다.
|
|
86
|
-
최초 1회만 설정하면 됩니다.
|
|
87
|
-
|
|
88
|
-
```bash
|
|
89
|
-
# 규칙 소스 설정 (.heymark/config.json 생성)
|
|
90
|
-
npx heymark init <GitHub-저장소-URL>
|
|
91
|
-
```
|
|
92
|
-
|
|
93
|
-
예시:
|
|
94
|
-
|
|
95
|
-
```bash
|
|
96
|
-
# HTTPS (Private이면 Git credential/토큰 설정 필요)
|
|
97
|
-
npx heymark init https://github.com/org/my-rules.git
|
|
98
|
-
|
|
99
|
-
# SSH (Private 저장소 권장)
|
|
100
|
-
npx heymark init git@github.com:org/my-rules.git
|
|
101
|
-
|
|
102
|
-
# 저장소 안에서 .md가 하위 폴더에 있을 때
|
|
103
|
-
npx heymark init https://github.com/org/my-rules.git --dir rules --branch main
|
|
104
|
-
```
|
|
105
|
-
|
|
106
|
-
설정은 **`.heymark/config.json`**에, 캐시(클론된 저장소)는 `.heymark/cache/`에 생성됩니다.
|
|
107
|
-
|
|
108
|
-
```gitignore
|
|
109
|
-
.heymark/
|
|
110
|
-
```
|
|
111
|
-
|
|
112
|
-
이후 `heymark` 실행 시 해당 저장소를 clone/pull 한 뒤 `.md` 파일들을 변환합니다.
|
|
113
|
-
|
|
114
|
-
### Usage with npx
|
|
115
|
-
|
|
116
|
-
설치 없이 바로 실행하거나, 설치 후 npx로 실행할 수 있습니다.
|
|
117
|
-
규칙은 **원격 GitHub 저장소**에서 가져오며, 해당 저장소 안의 마크다운 파일을 각 AI 도구 형식으로 변환해 현재 프로젝트에 생성합니다.
|
|
118
|
-
|
|
119
|
-
```bash
|
|
120
|
-
# .heymark/config.json에 설정된 외부 규칙 저장소에서 가져와 모든 도구 형식으로 변환 (기존 생성 파일 삭제 후 새로 생성)
|
|
121
|
-
npx heymark
|
|
122
|
-
|
|
123
|
-
# 이번에만 다른 외부 저장소 사용 (.heymark/config.json 무시)
|
|
124
|
-
npx heymark --source https://github.com/org/other-rules.git
|
|
125
|
-
|
|
126
|
-
# 특정 도구만 변환
|
|
127
|
-
npx heymark -t cursor,claude
|
|
128
|
-
|
|
129
|
-
# 미리보기 (파일 생성 없이 변환 결과만 확인)
|
|
130
|
-
npx heymark --preview
|
|
131
|
-
|
|
132
|
-
# 이전에 생성된 도구별 파일 삭제
|
|
133
|
-
npx heymark --clean
|
|
134
|
-
|
|
135
|
-
# 도움말
|
|
136
|
-
npx heymark --help
|
|
137
|
-
```
|
|
138
|
-
|
|
139
|
-
**설치 없이 바로 사용:**
|
|
140
|
-
|
|
141
|
-
```bash
|
|
142
|
-
# 설치 없이 최신 버전으로 실행
|
|
143
|
-
npx heymark@latest
|
|
144
|
-
```
|
|
145
|
-
|
|
146
|
-
**패키지 업데이트:**
|
|
147
|
-
|
|
148
|
-
```bash
|
|
149
|
-
npm update heymark
|
|
150
|
-
npx heymark
|
|
151
|
-
```
|
|
152
|
-
|
|
153
|
-
**동작 방식:**
|
|
154
|
-
|
|
155
|
-
- 기본적으로 기존 생성된 파일을 삭제한 후 새로 생성합니다
|
|
156
|
-
- 이를 통해 이전 버전의 파일이 남지 않고 깔끔하게 동기화됩니다
|
|
157
|
-
|
|
158
|
-
## Getting Started
|
|
159
|
-
|
|
160
|
-
규칙을 작성하고 로컬에서 테스트하는 방법.
|
|
161
|
-
|
|
162
|
-
### Writing Rules
|
|
163
|
-
|
|
164
|
-
규칙 소스 디렉터리(외부 레포)에 마크다운 파일 작성. YAML frontmatter로 메타데이터 정의:
|
|
165
|
-
|
|
166
|
-
```markdown
|
|
167
|
-
---
|
|
168
|
-
description: "AI assistant behavior guidelines"
|
|
169
|
-
globs: "**/*.ts,**/*.tsx"
|
|
170
|
-
alwaysApply: true
|
|
171
|
-
---
|
|
172
|
-
|
|
173
|
-
# Rule Title
|
|
174
|
-
|
|
175
|
-
Rule content...
|
|
176
|
-
```
|
|
177
|
-
|
|
178
|
-
### Local Testing
|
|
179
|
-
|
|
180
|
-
```bash
|
|
181
|
-
# 규칙 소스 설정 (최초 1회, GitHub 저장소 URL)
|
|
182
|
-
node scripts/sync.js init https://github.com/org/my-rules.git
|
|
183
|
-
|
|
184
|
-
# 모든 도구 형식으로 변환
|
|
185
|
-
node scripts/sync.js
|
|
186
|
-
|
|
187
|
-
# 이번에만 다른 저장소 사용
|
|
188
|
-
node scripts/sync.js --source https://github.com/org/other-rules.git
|
|
189
|
-
|
|
190
|
-
# 특정 도구만 변환
|
|
191
|
-
node scripts/sync.js -t cursor,claude
|
|
192
|
-
|
|
193
|
-
# 미리보기 (파일 생성 없이 확인)
|
|
194
|
-
node scripts/sync.js --preview
|
|
195
|
-
|
|
196
|
-
# 생성된 파일 삭제
|
|
197
|
-
node scripts/sync.js --clean
|
|
198
|
-
```
|
|
199
|
-
|
|
200
|
-
## Tool Support
|
|
201
|
-
|
|
202
|
-
### Supported Tools
|
|
203
|
-
|
|
204
|
-
| Tool | Output Format | Key Features |
|
|
205
|
-
| :------------- | :-------------------------- | :------------------------------ |
|
|
206
|
-
| Cursor | `.cursor/rules/*.mdc` | YAML frontmatter, glob 매칭 |
|
|
207
|
-
| Claude Code | `.claude/skills/*/SKILL.md` | 스킬 디렉토리 구조 |
|
|
208
|
-
| GitHub Copilot | `.github/instructions/*.md` | applyTo 패턴 매칭 |
|
|
209
|
-
| OpenAI Codex | `AGENTS.md` | 단일 파일 병합 (Agent Rules v1) |
|
|
210
|
-
|
|
211
|
-
### Adding New Tools
|
|
212
|
-
|
|
213
|
-
변환 모듈을 추가하면 자동 인식된다. 필수 export 인터페이스:
|
|
214
|
-
|
|
215
|
-
```javascript
|
|
216
|
-
module.exports = {
|
|
217
|
-
name: "Tool Name",
|
|
218
|
-
output: "output/path/pattern",
|
|
219
|
-
generate(rules, projectRoot) {
|
|
220
|
-
/* ... */
|
|
221
|
-
},
|
|
222
|
-
clean(ruleNames, projectRoot) {
|
|
223
|
-
/* ... */
|
|
224
|
-
},
|
|
225
|
-
};
|
|
226
|
-
```
|
|
1
|
+
# Heymark
|
|
2
|
+
|
|
3
|
+
AI 코딩 도구의 컨벤션을 중앙에서 관리하고, 각 도구 형식으로 자동 변환하는 시스템.
|
|
4
|
+
|
|
5
|
+
1. [Overview](#overview)
|
|
6
|
+
2. [Features](#features)
|
|
7
|
+
3. [Tech Stack](#tech-stack)
|
|
8
|
+
4. [Publishing](#publishing)
|
|
9
|
+
5. [Integration](#integration)
|
|
10
|
+
6. [Getting Started](#getting-started)
|
|
11
|
+
7. [Tool Support](#tool-support)
|
|
12
|
+
|
|
13
|
+
## Overview
|
|
14
|
+
|
|
15
|
+
프로젝트마다 AI 도구별 규칙 파일을 따로 작성하면 관리가 파편화된다.
|
|
16
|
+
이 시스템은 단일 진실 공급원(Single Source of Truth) 원칙에 따라, 한 곳에서 작성한 규칙을 여러 AI 도구 형식으로 자동 변환한다.
|
|
17
|
+
규칙을 한 번만 작성하면 Cursor, Claude Code, GitHub Copilot, OpenAI Codex 등에서 즉시 사용할 수 있다.
|
|
18
|
+
|
|
19
|
+
## Features
|
|
20
|
+
|
|
21
|
+
- **단일 소스 관리**: 마크다운 파일 하나로 모든 AI 도구의 규칙 통합 관리
|
|
22
|
+
- **자동 형식 변환**: 4종 AI 도구의 네이티브 형식으로 자동 변환 (YAML frontmatter, AGENTS.md 등)
|
|
23
|
+
- **선택적 변환**: 특정 도구만 선택하여 변환 가능
|
|
24
|
+
- **NPM 패키지 배포**: NPM registry를 통한 public 배포로 간편한 설치 및 버전 관리
|
|
25
|
+
- **플러그인 구조**: 변환 모듈 추가만으로 새 도구 지원 확장
|
|
26
|
+
|
|
27
|
+
## Tech Stack
|
|
28
|
+
|
|
29
|
+
- **Runtime**: Node.js
|
|
30
|
+
- **Language**: JavaScript
|
|
31
|
+
- **Core**: File system API, YAML frontmatter parsing
|
|
32
|
+
|
|
33
|
+
## Publishing
|
|
34
|
+
|
|
35
|
+
패키지 관리자용 가이드 (일반 사용자는 [Integration](#integration) 참고).
|
|
36
|
+
|
|
37
|
+
### 초기 설정 (한 번만)
|
|
38
|
+
|
|
39
|
+
```bash
|
|
40
|
+
# NPM 로그인
|
|
41
|
+
npm login
|
|
42
|
+
# Username: your-npm-username
|
|
43
|
+
# Email: your-email@example.com
|
|
44
|
+
```
|
|
45
|
+
|
|
46
|
+
### 배포 프로세스
|
|
47
|
+
|
|
48
|
+
```bash
|
|
49
|
+
# 1. 규칙 수정 후 테스트
|
|
50
|
+
node scripts/sync.js --preview
|
|
51
|
+
|
|
52
|
+
# 2. 버전 업데이트 (자동으로 Git 태그 생성)
|
|
53
|
+
npm version patch # 또는 minor, major
|
|
54
|
+
|
|
55
|
+
# 3. GitHub에 푸시
|
|
56
|
+
git push --follow-tags # 커밋과 태그를 함께 푸시
|
|
57
|
+
|
|
58
|
+
# 4. NPM에 배포
|
|
59
|
+
npm publish
|
|
60
|
+
```
|
|
61
|
+
|
|
62
|
+
**버전 관리:**
|
|
63
|
+
|
|
64
|
+
- `patch` (1.0.0 → 1.0.1): 버그 수정, 오타 수정
|
|
65
|
+
- `minor` (1.0.0 → 1.1.0): 새 규칙 추가, 기능 개선
|
|
66
|
+
- `major` (1.0.0 → 2.0.0): 호환성 깨지는 변경
|
|
67
|
+
|
|
68
|
+
**Git 태그 설명:**
|
|
69
|
+
|
|
70
|
+
- `npm version` 명령어는 자동으로 Git 태그를 생성합니다
|
|
71
|
+
- `git push --follow-tags`: 일반 커밋과 태그를 함께 푸시 (추천)
|
|
72
|
+
- 또는 `git push && git push --tags`: 커밋 푸시 후 모든 태그 푸시
|
|
73
|
+
|
|
74
|
+
## Integration
|
|
75
|
+
|
|
76
|
+
### Installation
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
# 패키지 설치
|
|
80
|
+
npm install --save-dev heymark
|
|
81
|
+
```
|
|
82
|
+
|
|
83
|
+
### 초기 설정 (규칙 소스 = 원격 GitHub 저장소)
|
|
84
|
+
|
|
85
|
+
규칙은 **원격 GitHub 저장소(Public/Private)** 에서 읽습니다.
|
|
86
|
+
최초 1회만 설정하면 됩니다.
|
|
87
|
+
|
|
88
|
+
```bash
|
|
89
|
+
# 규칙 소스 설정 (.heymark/config.json 생성)
|
|
90
|
+
npx heymark init <GitHub-저장소-URL>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
예시:
|
|
94
|
+
|
|
95
|
+
```bash
|
|
96
|
+
# HTTPS (Private이면 Git credential/토큰 설정 필요)
|
|
97
|
+
npx heymark init https://github.com/org/my-rules.git
|
|
98
|
+
|
|
99
|
+
# SSH (Private 저장소 권장)
|
|
100
|
+
npx heymark init git@github.com:org/my-rules.git
|
|
101
|
+
|
|
102
|
+
# 저장소 안에서 .md가 하위 폴더에 있을 때
|
|
103
|
+
npx heymark init https://github.com/org/my-rules.git --dir rules --branch main
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
설정은 **`.heymark/config.json`**에, 캐시(클론된 저장소)는 `.heymark/cache/`에 생성됩니다.
|
|
107
|
+
|
|
108
|
+
```gitignore
|
|
109
|
+
.heymark/
|
|
110
|
+
```
|
|
111
|
+
|
|
112
|
+
이후 `heymark` 실행 시 해당 저장소를 clone/pull 한 뒤 `.md` 파일들을 변환합니다.
|
|
113
|
+
|
|
114
|
+
### Usage with npx
|
|
115
|
+
|
|
116
|
+
설치 없이 바로 실행하거나, 설치 후 npx로 실행할 수 있습니다.
|
|
117
|
+
규칙은 **원격 GitHub 저장소**에서 가져오며, 해당 저장소 안의 마크다운 파일을 각 AI 도구 형식으로 변환해 현재 프로젝트에 생성합니다.
|
|
118
|
+
|
|
119
|
+
```bash
|
|
120
|
+
# .heymark/config.json에 설정된 외부 규칙 저장소에서 가져와 모든 도구 형식으로 변환 (기존 생성 파일 삭제 후 새로 생성)
|
|
121
|
+
npx heymark
|
|
122
|
+
|
|
123
|
+
# 이번에만 다른 외부 저장소 사용 (.heymark/config.json 무시)
|
|
124
|
+
npx heymark --source https://github.com/org/other-rules.git
|
|
125
|
+
|
|
126
|
+
# 특정 도구만 변환
|
|
127
|
+
npx heymark -t cursor,claude
|
|
128
|
+
|
|
129
|
+
# 미리보기 (파일 생성 없이 변환 결과만 확인)
|
|
130
|
+
npx heymark --preview
|
|
131
|
+
|
|
132
|
+
# 이전에 생성된 도구별 파일 삭제
|
|
133
|
+
npx heymark --clean
|
|
134
|
+
|
|
135
|
+
# 도움말
|
|
136
|
+
npx heymark --help
|
|
137
|
+
```
|
|
138
|
+
|
|
139
|
+
**설치 없이 바로 사용:**
|
|
140
|
+
|
|
141
|
+
```bash
|
|
142
|
+
# 설치 없이 최신 버전으로 실행
|
|
143
|
+
npx heymark@latest
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
**패키지 업데이트:**
|
|
147
|
+
|
|
148
|
+
```bash
|
|
149
|
+
npm update heymark
|
|
150
|
+
npx heymark
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
**동작 방식:**
|
|
154
|
+
|
|
155
|
+
- 기본적으로 기존 생성된 파일을 삭제한 후 새로 생성합니다
|
|
156
|
+
- 이를 통해 이전 버전의 파일이 남지 않고 깔끔하게 동기화됩니다
|
|
157
|
+
|
|
158
|
+
## Getting Started
|
|
159
|
+
|
|
160
|
+
규칙을 작성하고 로컬에서 테스트하는 방법.
|
|
161
|
+
|
|
162
|
+
### Writing Rules
|
|
163
|
+
|
|
164
|
+
규칙 소스 디렉터리(외부 레포)에 마크다운 파일 작성. YAML frontmatter로 메타데이터 정의:
|
|
165
|
+
|
|
166
|
+
```markdown
|
|
167
|
+
---
|
|
168
|
+
description: "AI assistant behavior guidelines"
|
|
169
|
+
globs: "**/*.ts,**/*.tsx"
|
|
170
|
+
alwaysApply: true
|
|
171
|
+
---
|
|
172
|
+
|
|
173
|
+
# Rule Title
|
|
174
|
+
|
|
175
|
+
Rule content...
|
|
176
|
+
```
|
|
177
|
+
|
|
178
|
+
### Local Testing
|
|
179
|
+
|
|
180
|
+
```bash
|
|
181
|
+
# 규칙 소스 설정 (최초 1회, GitHub 저장소 URL)
|
|
182
|
+
node scripts/sync.js init https://github.com/org/my-rules.git
|
|
183
|
+
|
|
184
|
+
# 모든 도구 형식으로 변환
|
|
185
|
+
node scripts/sync.js
|
|
186
|
+
|
|
187
|
+
# 이번에만 다른 저장소 사용
|
|
188
|
+
node scripts/sync.js --source https://github.com/org/other-rules.git
|
|
189
|
+
|
|
190
|
+
# 특정 도구만 변환
|
|
191
|
+
node scripts/sync.js -t cursor,claude
|
|
192
|
+
|
|
193
|
+
# 미리보기 (파일 생성 없이 확인)
|
|
194
|
+
node scripts/sync.js --preview
|
|
195
|
+
|
|
196
|
+
# 생성된 파일 삭제
|
|
197
|
+
node scripts/sync.js --clean
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
## Tool Support
|
|
201
|
+
|
|
202
|
+
### Supported Tools
|
|
203
|
+
|
|
204
|
+
| Tool | Output Format | Key Features |
|
|
205
|
+
| :------------- | :-------------------------- | :------------------------------ |
|
|
206
|
+
| Cursor | `.cursor/rules/*.mdc` | YAML frontmatter, glob 매칭 |
|
|
207
|
+
| Claude Code | `.claude/skills/*/SKILL.md` | 스킬 디렉토리 구조 |
|
|
208
|
+
| GitHub Copilot | `.github/instructions/*.md` | applyTo 패턴 매칭 |
|
|
209
|
+
| OpenAI Codex | `AGENTS.md` | 단일 파일 병합 (Agent Rules v1) |
|
|
210
|
+
|
|
211
|
+
### Adding New Tools
|
|
212
|
+
|
|
213
|
+
변환 모듈을 추가하면 자동 인식된다. 필수 export 인터페이스:
|
|
214
|
+
|
|
215
|
+
```javascript
|
|
216
|
+
module.exports = {
|
|
217
|
+
name: "Tool Name",
|
|
218
|
+
output: "output/path/pattern",
|
|
219
|
+
generate(rules, projectRoot) {
|
|
220
|
+
/* ... */
|
|
221
|
+
},
|
|
222
|
+
clean(ruleNames, projectRoot) {
|
|
223
|
+
/* ... */
|
|
224
|
+
},
|
|
225
|
+
};
|
|
226
|
+
```
|
package/package.json
CHANGED
|
@@ -1,57 +1,57 @@
|
|
|
1
|
-
{
|
|
2
|
-
"name": "heymark",
|
|
3
|
-
"version": "1.0
|
|
4
|
-
"description": "Centralized AI coding tool conventions with auto-conversion to multiple formats",
|
|
5
|
-
"main": "scripts/sync.js",
|
|
6
|
-
"bin": {
|
|
7
|
-
"heymark": "scripts/sync.js"
|
|
8
|
-
},
|
|
9
|
-
"scripts": {
|
|
10
|
-
"sync": "node scripts/sync.js",
|
|
11
|
-
"init": "node scripts/sync.js init",
|
|
12
|
-
"test": "echo \"Error: no test specified\" && exit 1"
|
|
13
|
-
},
|
|
14
|
-
"keywords": [
|
|
15
|
-
"ai",
|
|
16
|
-
"coding",
|
|
17
|
-
"conventions",
|
|
18
|
-
"cursor",
|
|
19
|
-
"claude",
|
|
20
|
-
"copilot",
|
|
21
|
-
"codex",
|
|
22
|
-
"rules"
|
|
23
|
-
],
|
|
24
|
-
"author": {
|
|
25
|
-
"name": "i2na",
|
|
26
|
-
"email": "yena.e121@gmail.com",
|
|
27
|
-
"url": "https://github.com/i2na"
|
|
28
|
-
},
|
|
29
|
-
"contributors": [
|
|
30
|
-
{
|
|
31
|
-
"name": "i2na",
|
|
32
|
-
"email": "yena.e121@gmail.com",
|
|
33
|
-
"url": "https://github.com/i2na"
|
|
34
|
-
},
|
|
35
|
-
{
|
|
36
|
-
"name": "yezzero",
|
|
37
|
-
"email": "yeyeonggim06@gmail.com",
|
|
38
|
-
"url": "https://github.com/yezzero"
|
|
39
|
-
}
|
|
40
|
-
],
|
|
41
|
-
"license": "MIT",
|
|
42
|
-
"engines": {
|
|
43
|
-
"node": ">=14.0.0"
|
|
44
|
-
},
|
|
45
|
-
"files": [
|
|
46
|
-
"scripts/",
|
|
47
|
-
"rules/",
|
|
48
|
-
"README.md"
|
|
49
|
-
],
|
|
50
|
-
"repository": {
|
|
51
|
-
"type": "git",
|
|
52
|
-
"url": "git+https://github.com/MosslandOpenDevs/heymark.git"
|
|
53
|
-
},
|
|
54
|
-
"publishConfig": {
|
|
55
|
-
"access": "public"
|
|
56
|
-
}
|
|
57
|
-
}
|
|
1
|
+
{
|
|
2
|
+
"name": "heymark",
|
|
3
|
+
"version": "1.1.0",
|
|
4
|
+
"description": "Centralized AI coding tool conventions with auto-conversion to multiple formats",
|
|
5
|
+
"main": "scripts/sync.js",
|
|
6
|
+
"bin": {
|
|
7
|
+
"heymark": "scripts/sync.js"
|
|
8
|
+
},
|
|
9
|
+
"scripts": {
|
|
10
|
+
"sync": "node scripts/sync.js",
|
|
11
|
+
"init": "node scripts/sync.js init",
|
|
12
|
+
"test": "echo \"Error: no test specified\" && exit 1"
|
|
13
|
+
},
|
|
14
|
+
"keywords": [
|
|
15
|
+
"ai",
|
|
16
|
+
"coding",
|
|
17
|
+
"conventions",
|
|
18
|
+
"cursor",
|
|
19
|
+
"claude",
|
|
20
|
+
"copilot",
|
|
21
|
+
"codex",
|
|
22
|
+
"rules"
|
|
23
|
+
],
|
|
24
|
+
"author": {
|
|
25
|
+
"name": "i2na",
|
|
26
|
+
"email": "yena.e121@gmail.com",
|
|
27
|
+
"url": "https://github.com/i2na"
|
|
28
|
+
},
|
|
29
|
+
"contributors": [
|
|
30
|
+
{
|
|
31
|
+
"name": "i2na",
|
|
32
|
+
"email": "yena.e121@gmail.com",
|
|
33
|
+
"url": "https://github.com/i2na"
|
|
34
|
+
},
|
|
35
|
+
{
|
|
36
|
+
"name": "yezzero",
|
|
37
|
+
"email": "yeyeonggim06@gmail.com",
|
|
38
|
+
"url": "https://github.com/yezzero"
|
|
39
|
+
}
|
|
40
|
+
],
|
|
41
|
+
"license": "MIT",
|
|
42
|
+
"engines": {
|
|
43
|
+
"node": ">=14.0.0"
|
|
44
|
+
},
|
|
45
|
+
"files": [
|
|
46
|
+
"scripts/",
|
|
47
|
+
"rules/",
|
|
48
|
+
"README.md"
|
|
49
|
+
],
|
|
50
|
+
"repository": {
|
|
51
|
+
"type": "git",
|
|
52
|
+
"url": "git+https://github.com/MosslandOpenDevs/heymark.git"
|
|
53
|
+
},
|
|
54
|
+
"publishConfig": {
|
|
55
|
+
"access": "public"
|
|
56
|
+
}
|
|
57
|
+
}
|