codesyncer 2.2.3 → 2.3.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.ko.md +42 -9
- package/README.md +42 -9
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +78 -1
- package/dist/commands/init.js.map +1 -1
- package/dist/templates/en/setup_guide_single.md +324 -0
- package/dist/templates/ko/setup_guide_single.md +324 -0
- package/dist/utils/scanner.d.ts +9 -1
- package/dist/utils/scanner.d.ts.map +1 -1
- package/dist/utils/scanner.js +48 -33
- package/dist/utils/scanner.js.map +1 -1
- package/package.json +1 -1
- package/src/templates/en/setup_guide_single.md +324 -0
- package/src/templates/ko/setup_guide_single.md +324 -0
package/README.ko.md
CHANGED
|
@@ -68,7 +68,7 @@ CodeSyncer는 문서가 **어디에, 어떻게** 만들어져야 하는지 정
|
|
|
68
68
|
### 주요 기능
|
|
69
69
|
|
|
70
70
|
- 🤖 **AI 도구 독립적**: Claude Code, Cursor, GitHub Copilot 등 모두 지원
|
|
71
|
-
- 📁
|
|
71
|
+
- 📁 **단일 & 멀티 레포 지원**: 개별 레포지토리 또는 전체 워크스페이스 모두 지원
|
|
72
72
|
- 🏷️ **주석 태그 시스템**: `@codesyncer-*` 태그로 결정과 추론을 영구 기록
|
|
73
73
|
- 🤝 **자동 의논 시스템**: 중요한 결정(결제, 보안 등)에서 자동으로 일시 정지
|
|
74
74
|
- 🌐 **다국어 지원**: 한글/영문 완벽 지원
|
|
@@ -190,13 +190,23 @@ AI 코딩 어시스턴트를 실행하세요:
|
|
|
190
190
|
|
|
191
191
|
반드시 **활성화되어 실행 중**이어야 합니다.
|
|
192
192
|
|
|
193
|
-
### 3단계:
|
|
193
|
+
### 3단계: 프로젝트로 이동
|
|
194
194
|
|
|
195
195
|
```bash
|
|
196
|
-
cd /path/to/your/
|
|
196
|
+
cd /path/to/your/project
|
|
197
197
|
```
|
|
198
198
|
|
|
199
|
-
|
|
199
|
+
CodeSyncer는 **단일 레포지토리**와 **멀티 레포 워크스페이스** 모두 지원합니다:
|
|
200
|
+
|
|
201
|
+
**단일 레포지토리** (자동 감지):
|
|
202
|
+
```
|
|
203
|
+
my-project/
|
|
204
|
+
├── package.json
|
|
205
|
+
├── src/
|
|
206
|
+
└── ...
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
**멀티 레포 워크스페이스**:
|
|
200
210
|
```
|
|
201
211
|
workspace/
|
|
202
212
|
├── backend/
|
|
@@ -216,9 +226,11 @@ codesyncer init
|
|
|
216
226
|
- GitHub 사용자명
|
|
217
227
|
|
|
218
228
|
**실행 과정:**
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
229
|
+
|
|
230
|
+
| 모드 | 감지 조건 | 생성 결과 |
|
|
231
|
+
|------|-----------|-----------|
|
|
232
|
+
| **단일 레포** | 현재 폴더에 `package.json`, `.git` 등 존재 | `.claude/SETUP_GUIDE.md` 생성 |
|
|
233
|
+
| **멀티 레포** | 하위 폴더에 레포지토리들 존재 | `.codesyncer/SETUP_GUIDE.md` 생성 |
|
|
222
234
|
|
|
223
235
|
**CodeSyncer는 여기까지만 합니다!** 프레임워크와 규칙만 제공하고, 이제 AI가 직접 설정합니다.
|
|
224
236
|
|
|
@@ -230,6 +242,12 @@ codesyncer init
|
|
|
230
242
|
|
|
231
243
|
**Claude Code 실행** (또는 선호하는 AI 어시스턴트)하고 다음과 같이 말하세요:
|
|
232
244
|
|
|
245
|
+
**단일 레포지토리의 경우:**
|
|
246
|
+
```
|
|
247
|
+
".claude/SETUP_GUIDE.md 파일을 읽고 지시사항대로 설정해줘"
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**멀티 레포 워크스페이스의 경우:**
|
|
233
251
|
```
|
|
234
252
|
".codesyncer/SETUP_GUIDE.md 파일을 읽고 지시사항대로 설정해줘"
|
|
235
253
|
```
|
|
@@ -443,10 +461,25 @@ AI: ✅ 결정 사항 기록 중...
|
|
|
443
461
|
|
|
444
462
|
## 📁 프로젝트 구조
|
|
445
463
|
|
|
446
|
-
`codesyncer init` 실행 후
|
|
464
|
+
`codesyncer init` 실행 후 프로젝트 구조:
|
|
465
|
+
|
|
466
|
+
### 단일 레포지토리 모드
|
|
467
|
+
|
|
468
|
+
```
|
|
469
|
+
my-project/
|
|
470
|
+
├── CLAUDE.md # Claude가 먼저 읽는 파일
|
|
471
|
+
└── .claude/
|
|
472
|
+
├── CLAUDE.md # 코딩 가이드라인
|
|
473
|
+
├── COMMENT_GUIDE.md # 태그 사용 가이드
|
|
474
|
+
├── ARCHITECTURE.md # 프로젝트 구조
|
|
475
|
+
└── DECISIONS.md # 의사결정 기록
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
### 멀티 레포지토리 모드
|
|
447
479
|
|
|
448
480
|
```
|
|
449
481
|
workspace/
|
|
482
|
+
├── CLAUDE.md # Claude가 먼저 읽는 파일
|
|
450
483
|
├── .codesyncer/
|
|
451
484
|
│ └── MASTER_CODESYNCER.md # 멀티 레포 자동 전환 가이드
|
|
452
485
|
├── backend/
|
|
@@ -560,7 +593,7 @@ CodeSyncer가 모든 개발자에게 무료로 제공되면서도 상업적 착
|
|
|
560
593
|
A: 현재는 그렇습니다. 하지만 Cursor, GitHub Copilot 등 다른 도구 지원을 개발 중입니다. 기여 환영!
|
|
561
594
|
|
|
562
595
|
**Q: 단일 레포에서도 사용할 수 있나요?**
|
|
563
|
-
A: 네!
|
|
596
|
+
A: 네! CodeSyncer는 자동으로 단일 레포인지 감지합니다 (`package.json`, `.git` 등 존재 여부 확인). 단일 레포에서는 `.claude/SETUP_GUIDE.md`가 생성되고, 멀티 레포 구조 대신 간단한 구조로 설정됩니다.
|
|
564
597
|
|
|
565
598
|
**Q: AI 응답 속도가 느려지나요?**
|
|
566
599
|
A: 아니요. CodeSyncer는 AI가 세션당 한 번만 읽는 문서 파일만 추가합니다. 오히려 사전에 컨텍스트를 제공하여 AI를 더 효율적으로 만듭니다.
|
package/README.md
CHANGED
|
@@ -68,7 +68,7 @@ CodeSyncer defines **WHERE** and **HOW** documentation should be created. Your A
|
|
|
68
68
|
### Key Features
|
|
69
69
|
|
|
70
70
|
- 🤖 **AI-Agnostic**: Works with Claude Code, Cursor, GitHub Copilot, and more
|
|
71
|
-
- 📁 **Multi-Repository Support**:
|
|
71
|
+
- 📁 **Single & Multi-Repository Support**: Works with individual repos or entire workspaces
|
|
72
72
|
- 🏷️ **Comment Tag System**: `@codesyncer-*` tags to record decisions and inferences
|
|
73
73
|
- 🤝 **Discussion Auto-Pause**: Automatically stops for critical decisions (payment, security, etc.)
|
|
74
74
|
- 🌐 **Multi-Language**: Full Korean and English support
|
|
@@ -190,13 +190,23 @@ Open your AI coding assistant:
|
|
|
190
190
|
|
|
191
191
|
Make sure it's **active and running**.
|
|
192
192
|
|
|
193
|
-
### Step 3: Navigate to your
|
|
193
|
+
### Step 3: Navigate to your project
|
|
194
194
|
|
|
195
195
|
```bash
|
|
196
|
-
cd /path/to/your/
|
|
196
|
+
cd /path/to/your/project
|
|
197
197
|
```
|
|
198
198
|
|
|
199
|
-
|
|
199
|
+
CodeSyncer works with both **single repositories** and **multi-repo workspaces**:
|
|
200
|
+
|
|
201
|
+
**Single Repository** (auto-detected):
|
|
202
|
+
```
|
|
203
|
+
my-project/
|
|
204
|
+
├── package.json
|
|
205
|
+
├── src/
|
|
206
|
+
└── ...
|
|
207
|
+
```
|
|
208
|
+
|
|
209
|
+
**Multi-Repository Workspace**:
|
|
200
210
|
```
|
|
201
211
|
workspace/
|
|
202
212
|
├── backend/
|
|
@@ -216,9 +226,11 @@ You'll be asked:
|
|
|
216
226
|
- GitHub username
|
|
217
227
|
|
|
218
228
|
**What happens:**
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
|
|
229
|
+
|
|
230
|
+
| Mode | Detection | Output |
|
|
231
|
+
|------|-----------|--------|
|
|
232
|
+
| **Single Repo** | Current folder has `package.json`, `.git`, etc. | Creates `.claude/SETUP_GUIDE.md` |
|
|
233
|
+
| **Multi-Repo** | Subfolders contain repositories | Creates `.codesyncer/SETUP_GUIDE.md` |
|
|
222
234
|
|
|
223
235
|
**That's all CodeSyncer does!** It provides the framework and rules. Now your AI takes over.
|
|
224
236
|
|
|
@@ -230,6 +242,12 @@ You'll be asked:
|
|
|
230
242
|
|
|
231
243
|
**Launch Claude Code** (or your preferred AI assistant) and say:
|
|
232
244
|
|
|
245
|
+
**For Single Repository:**
|
|
246
|
+
```
|
|
247
|
+
"Read .claude/SETUP_GUIDE.md and follow the instructions to set up"
|
|
248
|
+
```
|
|
249
|
+
|
|
250
|
+
**For Multi-Repository Workspace:**
|
|
233
251
|
```
|
|
234
252
|
"Read .codesyncer/SETUP_GUIDE.md and follow the instructions to set up"
|
|
235
253
|
```
|
|
@@ -443,10 +461,25 @@ Want to add support for your favorite AI tool? [Contribute here!](https://github
|
|
|
443
461
|
|
|
444
462
|
## 📁 Project Structure
|
|
445
463
|
|
|
446
|
-
After running `codesyncer init`, your
|
|
464
|
+
After running `codesyncer init`, your project will look like:
|
|
465
|
+
|
|
466
|
+
### Single Repository Mode
|
|
467
|
+
|
|
468
|
+
```
|
|
469
|
+
my-project/
|
|
470
|
+
├── CLAUDE.md # Claude reads this first
|
|
471
|
+
└── .claude/
|
|
472
|
+
├── CLAUDE.md # Coding guidelines
|
|
473
|
+
├── COMMENT_GUIDE.md # Tag usage guide
|
|
474
|
+
├── ARCHITECTURE.md # Project structure
|
|
475
|
+
└── DECISIONS.md # Decision log
|
|
476
|
+
```
|
|
477
|
+
|
|
478
|
+
### Multi-Repository Mode
|
|
447
479
|
|
|
448
480
|
```
|
|
449
481
|
workspace/
|
|
482
|
+
├── CLAUDE.md # Claude reads this first
|
|
450
483
|
├── .codesyncer/
|
|
451
484
|
│ └── MASTER_CODESYNCER.md # Multi-repo auto-switching guide
|
|
452
485
|
├── backend/
|
|
@@ -560,7 +593,7 @@ We want CodeSyncer to remain free and accessible to all developers while prevent
|
|
|
560
593
|
A: Currently, yes. But we're building support for Cursor, GitHub Copilot, and other tools. Contributions welcome!
|
|
561
594
|
|
|
562
595
|
**Q: Can I use this on a single repository?**
|
|
563
|
-
A: Yes!
|
|
596
|
+
A: Yes! CodeSyncer automatically detects if you're in a single repo (has `package.json`, `.git`, etc.) and creates `.claude/SETUP_GUIDE.md` instead of the multi-repo structure.
|
|
564
597
|
|
|
565
598
|
**Q: Will this slow down AI responses?**
|
|
566
599
|
A: No. CodeSyncer only adds documentation files that AI reads once per session. It actually makes AI more efficient by providing context upfront.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAY,MAAM,UAAU,CAAC;AAIjD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,
|
|
1
|
+
{"version":3,"file":"init.d.ts","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"AAKA,OAAO,EAAE,WAAW,EAAY,MAAM,UAAU,CAAC;AAIjD,wBAAsB,WAAW,CAAC,OAAO,EAAE,WAAW,iBAyTrD"}
|
package/dist/commands/init.js
CHANGED
|
@@ -98,7 +98,9 @@ async function initCommand(options) {
|
|
|
98
98
|
// STEP 3: Scan repositories
|
|
99
99
|
const spinner = (0, ora_1.default)(lang === 'ko' ? '레포지토리 스캔 중...' : 'Scanning repositories...').start();
|
|
100
100
|
const foundRepos = await (0, scanner_1.scanForRepositories)(currentDir);
|
|
101
|
-
if (
|
|
101
|
+
// Check if current directory itself is a repository (single-repo mode)
|
|
102
|
+
const isSingleRepo = foundRepos.length === 0 && await (0, scanner_1.isCurrentDirRepository)(currentDir);
|
|
103
|
+
if (foundRepos.length === 0 && !isSingleRepo) {
|
|
102
104
|
spinner.fail(lang === 'ko' ? '레포지토리를 찾을 수 없습니다' : 'No repositories found');
|
|
103
105
|
console.log(chalk_1.default.yellow(lang === 'ko'
|
|
104
106
|
? '\n이 디렉토리에는 package.json, pom.xml, requirements.txt 등의 프로젝트 파일이 없습니다.'
|
|
@@ -108,6 +110,81 @@ async function initCommand(options) {
|
|
|
108
110
|
: 'Please run in a multi-repo workspace or individual project folder.\n'));
|
|
109
111
|
return;
|
|
110
112
|
}
|
|
113
|
+
// === SINGLE-REPO MODE ===
|
|
114
|
+
if (isSingleRepo) {
|
|
115
|
+
spinner.succeed(lang === 'ko'
|
|
116
|
+
? '단일 레포지토리 감지됨'
|
|
117
|
+
: 'Single repository detected');
|
|
118
|
+
console.log(chalk_1.default.bold.yellow(`\n${lang === 'ko' ? '📦 단일 레포지토리 모드' : '📦 Single Repository Mode'}\n`));
|
|
119
|
+
console.log(chalk_1.default.gray(lang === 'ko'
|
|
120
|
+
? `현재 디렉토리 "${path.basename(currentDir)}"를 단일 레포지토리로 설정합니다.`
|
|
121
|
+
: `Setting up "${path.basename(currentDir)}" as a single repository.`));
|
|
122
|
+
console.log();
|
|
123
|
+
// Check if single-repo setup already exists
|
|
124
|
+
if (await (0, scanner_1.hasSingleRepoSetup)(currentDir)) {
|
|
125
|
+
console.log(chalk_1.default.yellow(lang === 'ko'
|
|
126
|
+
? '⚠️ 이 레포지토리에는 이미 .claude/ 설정이 있습니다.'
|
|
127
|
+
: '⚠️ This repository already has .claude/ setup.'));
|
|
128
|
+
const { overwriteSingle } = await inquirer_1.default.prompt([
|
|
129
|
+
{
|
|
130
|
+
type: 'confirm',
|
|
131
|
+
name: 'overwriteSingle',
|
|
132
|
+
message: lang === 'ko' ? '기존 설정을 덮어쓰시겠습니까?' : 'Overwrite existing setup?',
|
|
133
|
+
default: false,
|
|
134
|
+
},
|
|
135
|
+
]);
|
|
136
|
+
if (!overwriteSingle) {
|
|
137
|
+
console.log(chalk_1.default.gray(lang === 'ko' ? '\n설정이 취소되었습니다.\n' : '\nSetup cancelled.\n'));
|
|
138
|
+
return;
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
// Generate single-repo SETUP_GUIDE.md
|
|
142
|
+
console.log(chalk_1.default.bold.cyan(lang === 'ko' ? '\n📝 설정 가이드 생성 중...\n' : '\n📝 Generating setup guide...\n'));
|
|
143
|
+
const claudeDir = path.join(currentDir, '.claude');
|
|
144
|
+
await fs.ensureDir(claudeDir);
|
|
145
|
+
// Load single-repo SETUP_GUIDE template
|
|
146
|
+
const setupGuideTemplate = await fs.readFile(path.join(__dirname, '..', 'templates', lang, 'setup_guide_single.md'), 'utf-8');
|
|
147
|
+
const today = new Date().toISOString().split('T')[0];
|
|
148
|
+
const setupGuide = setupGuideTemplate
|
|
149
|
+
.replace(/\[PROJECT_NAME\]/g, projectName)
|
|
150
|
+
.replace(/\[GITHUB_USERNAME\]/g, githubUsername)
|
|
151
|
+
.replace(/\[TODAY\]/g, today);
|
|
152
|
+
await fs.writeFile(path.join(claudeDir, 'SETUP_GUIDE.md'), setupGuide, 'utf-8');
|
|
153
|
+
console.log(chalk_1.default.green('✓') + ' .claude/SETUP_GUIDE.md');
|
|
154
|
+
// Success message for single-repo mode
|
|
155
|
+
console.log(chalk_1.default.bold.green(`\n✅ ${lang === 'ko' ? 'CodeSyncer 초기화 완료! (단일 레포 모드)' : 'CodeSyncer initialized! (Single Repo Mode)'}\n`));
|
|
156
|
+
console.log(chalk_1.default.bold(lang === 'ko' ? '📋 생성된 파일:' : '📋 Created files:'));
|
|
157
|
+
console.log(` ${chalk_1.default.cyan('.claude/SETUP_GUIDE.md')} ${chalk_1.default.gray('- AI setup instructions')}\n`);
|
|
158
|
+
console.log(chalk_1.default.bold(lang === 'ko' ? '🚀 다음 단계:' : '🚀 Next steps:'));
|
|
159
|
+
console.log();
|
|
160
|
+
console.log(chalk_1.default.cyan('1.') + ' ' + (lang === 'ko' ? 'AI 코딩 어시스턴트 실행 (Claude Code 권장)' : 'Launch your AI coding assistant (Claude Code recommended)'));
|
|
161
|
+
console.log();
|
|
162
|
+
console.log(chalk_1.default.cyan('2.') + ' ' + (lang === 'ko' ? 'AI에게 다음과 같이 요청:' : 'Ask your AI assistant:'));
|
|
163
|
+
console.log();
|
|
164
|
+
if (lang === 'ko') {
|
|
165
|
+
console.log(chalk_1.default.yellow(' ".claude/SETUP_GUIDE.md 파일을 읽고 지시사항대로 설정해줘"'));
|
|
166
|
+
}
|
|
167
|
+
else {
|
|
168
|
+
console.log(chalk_1.default.yellow(' "Read .claude/SETUP_GUIDE.md and follow the instructions to set up"'));
|
|
169
|
+
}
|
|
170
|
+
console.log();
|
|
171
|
+
console.log(chalk_1.default.cyan('3.') + ' ' + (lang === 'ko' ? 'AI가 레포지토리를 분석하고 문서를 생성합니다' : 'AI will analyze the repository and generate documentation'));
|
|
172
|
+
console.log();
|
|
173
|
+
console.log(chalk_1.default.gray('─'.repeat(60)));
|
|
174
|
+
console.log();
|
|
175
|
+
console.log(chalk_1.default.bold(lang === 'ko' ? '💡 단일 레포 모드 정보' : '💡 Single Repo Mode Info'));
|
|
176
|
+
console.log(chalk_1.default.gray(lang === 'ko'
|
|
177
|
+
? '• 모든 설정 파일이 .claude/ 폴더에 생성됩니다'
|
|
178
|
+
: '• All config files will be created in .claude/ folder'));
|
|
179
|
+
console.log(chalk_1.default.gray(lang === 'ko'
|
|
180
|
+
? '• 멀티 레포가 필요하면 상위 폴더에서 init을 실행하세요'
|
|
181
|
+
: '• For multi-repo, run init in a parent workspace folder'));
|
|
182
|
+
console.log();
|
|
183
|
+
console.log(chalk_1.default.gray('─'.repeat(60)));
|
|
184
|
+
console.log();
|
|
185
|
+
return;
|
|
186
|
+
}
|
|
187
|
+
// === MULTI-REPO MODE ===
|
|
111
188
|
spinner.succeed(lang === 'ko'
|
|
112
189
|
? `${foundRepos.length}개의 레포지토리 발견`
|
|
113
190
|
: `Found ${foundRepos.length} repositories`);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"init.js","sourceRoot":"","sources":["../../src/commands/init.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,324 @@
|
|
|
1
|
+
# 🤖 CodeSyncer Setup Guide for AI Assistants (Single Repository)
|
|
2
|
+
|
|
3
|
+
> **For AI Coding Assistants**: Read this document completely and follow the instructions to set up the CodeSyncer collaboration system.
|
|
4
|
+
>
|
|
5
|
+
> **Project**: [PROJECT_NAME]
|
|
6
|
+
> **GitHub**: https://github.com/[GITHUB_USERNAME]/[PROJECT_NAME]
|
|
7
|
+
> **Created**: [TODAY]
|
|
8
|
+
> **Mode**: Single Repository
|
|
9
|
+
|
|
10
|
+
---
|
|
11
|
+
|
|
12
|
+
## 📋 Your Mission
|
|
13
|
+
|
|
14
|
+
You are tasked with analyzing this repository and creating a comprehensive collaboration system. Follow these steps **interactively** - ask the user for confirmation at each major decision point.
|
|
15
|
+
|
|
16
|
+
---
|
|
17
|
+
|
|
18
|
+
## 🎯 Step 1: Analyze the Repository
|
|
19
|
+
|
|
20
|
+
### Your Task
|
|
21
|
+
1. **Analyze this repository** by examining:
|
|
22
|
+
- File structure and dependencies
|
|
23
|
+
- Tech stack and frameworks
|
|
24
|
+
- Project purpose and architecture
|
|
25
|
+
- Existing code patterns
|
|
26
|
+
|
|
27
|
+
2. **Determine the following**:
|
|
28
|
+
- Primary function (backend, frontend, mobile, fullstack)
|
|
29
|
+
- Main technologies used
|
|
30
|
+
- Key features and modules
|
|
31
|
+
- Development patterns
|
|
32
|
+
|
|
33
|
+
---
|
|
34
|
+
|
|
35
|
+
## 🔄 Step 2: Interactive Setup Process
|
|
36
|
+
|
|
37
|
+
### 2.1 Confirm Repository Analysis
|
|
38
|
+
Present your analysis to the user:
|
|
39
|
+
```
|
|
40
|
+
📁 Repository: [PROJECT_NAME]
|
|
41
|
+
|
|
42
|
+
My analysis:
|
|
43
|
+
- Type: [backend/frontend/mobile/fullstack]
|
|
44
|
+
- Tech Stack: [detected stack]
|
|
45
|
+
- Description: [your generated description]
|
|
46
|
+
- Key Features: [list main features]
|
|
47
|
+
|
|
48
|
+
Is this analysis correct? Any adjustments needed?
|
|
49
|
+
```
|
|
50
|
+
|
|
51
|
+
### 2.2 Ask Critical Questions
|
|
52
|
+
|
|
53
|
+
**⚠️ NEVER infer these - always ask:**
|
|
54
|
+
|
|
55
|
+
1. **API Endpoints** (for backend):
|
|
56
|
+
- "What is the main API base URL?"
|
|
57
|
+
- "Are there multiple API versions?"
|
|
58
|
+
|
|
59
|
+
2. **Business Logic**:
|
|
60
|
+
- "What are the key business rules I should know?"
|
|
61
|
+
- "Any specific pricing/payment policies?"
|
|
62
|
+
|
|
63
|
+
3. **Authentication**:
|
|
64
|
+
- "What authentication method is used?" (JWT, OAuth, Session, etc.)
|
|
65
|
+
- "Where are tokens stored?" (cookies, localStorage, etc.)
|
|
66
|
+
|
|
67
|
+
4. **Database**:
|
|
68
|
+
- "What database is used?"
|
|
69
|
+
- "Any critical schema information?"
|
|
70
|
+
|
|
71
|
+
5. **External Services**:
|
|
72
|
+
- "Which external APIs/services are integrated?"
|
|
73
|
+
- "Any API keys or credentials I should be aware of (without exposing them)?"
|
|
74
|
+
|
|
75
|
+
### 2.3 Identify Discussion Keywords
|
|
76
|
+
|
|
77
|
+
Ask the user:
|
|
78
|
+
```
|
|
79
|
+
For this project, which critical keywords should trigger automatic discussion pauses?
|
|
80
|
+
|
|
81
|
+
Suggested categories:
|
|
82
|
+
|
|
83
|
+
🔴 CRITICAL (Always pause):
|
|
84
|
+
- 💰 Payment/Billing: payment, billing, charge, refund, subscription, invoice, pricing, fee
|
|
85
|
+
- 🔐 Security/Auth: authentication, authorization, login, logout, session, token, jwt, password, encrypt, decrypt, hash, salt, oauth, permission, role, admin
|
|
86
|
+
- 🗑️ Data Deletion: delete, remove, drop, truncate, destroy, purge, erase
|
|
87
|
+
- 📜 Privacy/Legal: GDPR, CCPA, personal data, PII, privacy policy, terms of service, consent, compliance
|
|
88
|
+
|
|
89
|
+
🟡 IMPORTANT (Recommended pause):
|
|
90
|
+
- 🔌 External APIs: API integration, webhook, third-party, external service, API key, credentials
|
|
91
|
+
- 🗄️ Database Schema: migration, schema change, alter table, add column, drop column, index, constraint
|
|
92
|
+
- 🚀 Deployment/Infra: deploy, deployment, production, environment, server, hosting, domain, SSL, certificate
|
|
93
|
+
- 💾 Caching: cache strategy, redis, memcached, CDN, cache invalidation
|
|
94
|
+
- 📧 Email/Notifications: email sending, SMS, push notification, notification service
|
|
95
|
+
|
|
96
|
+
🟢 MINOR (Optional pause):
|
|
97
|
+
- ⚡ Performance: optimization, performance, caching, lazy loading, code splitting, bundle size
|
|
98
|
+
- 🧪 Testing: test strategy, testing framework, CI/CD, automated testing
|
|
99
|
+
- 📊 Logging/Monitoring: logging, monitoring, analytics, error tracking, APM
|
|
100
|
+
- 🎨 UI/UX: design system, theme, responsive, accessibility, internationalization
|
|
101
|
+
|
|
102
|
+
Which categories should I enable? (Recommend: CRITICAL + IMPORTANT)
|
|
103
|
+
Any custom keywords specific to your domain?
|
|
104
|
+
```
|
|
105
|
+
|
|
106
|
+
---
|
|
107
|
+
|
|
108
|
+
## 📝 Step 3: Generate Documentation Files
|
|
109
|
+
|
|
110
|
+
Create these files in `.claude/` folder:
|
|
111
|
+
|
|
112
|
+
### 3.1 CLAUDE.md
|
|
113
|
+
- Project information from your analysis
|
|
114
|
+
- Absolute rules (TypeScript strict mode, error handling, etc.)
|
|
115
|
+
- No-inference zones (business logic numbers, API URLs, security settings)
|
|
116
|
+
- Discussion-required keywords (from user's selection)
|
|
117
|
+
- Comment tag system (@codesyncer-* tags)
|
|
118
|
+
- Project-specific templates and patterns
|
|
119
|
+
|
|
120
|
+
Use template: `./templates/[lang]/claude.md`
|
|
121
|
+
- Replace [PROJECT_NAME], [PROJECT_TYPE], [TECH_STACK]
|
|
122
|
+
- Replace [KEYWORDS] with user-confirmed keywords
|
|
123
|
+
- Add project-specific rules discovered during analysis
|
|
124
|
+
|
|
125
|
+
### 3.2 ARCHITECTURE.md
|
|
126
|
+
- Complete folder structure (scan actual directories)
|
|
127
|
+
- File statistics
|
|
128
|
+
- Comment tag statistics (initial: all 0)
|
|
129
|
+
- Tech stack details
|
|
130
|
+
- Dependencies from package.json
|
|
131
|
+
|
|
132
|
+
Use template: `./templates/[lang]/architecture.md`
|
|
133
|
+
- Actually scan and list real folder structure
|
|
134
|
+
- List actual dependencies
|
|
135
|
+
|
|
136
|
+
### 3.3 COMMENT_GUIDE.md ⭐ **Core Document**
|
|
137
|
+
- **Manage all context with comments** (quality standards, coding standards, all decisions)
|
|
138
|
+
- 10 comment tag system (5 basic + 5 extended)
|
|
139
|
+
- Real examples: quality standards, performance optimization, security, error handling, etc.
|
|
140
|
+
- Principle: Record directly in code instead of separate docs
|
|
141
|
+
|
|
142
|
+
Use template: `./templates/[lang]/comment_guide.md`
|
|
143
|
+
- Use as-is (includes all context management examples)
|
|
144
|
+
- AI follows these patterns for writing comments
|
|
145
|
+
|
|
146
|
+
### 3.4 DECISIONS.md
|
|
147
|
+
- Decision log template
|
|
148
|
+
- Category definitions
|
|
149
|
+
- Empty decision records (to be filled during development)
|
|
150
|
+
|
|
151
|
+
Use template: `./templates/[lang]/decisions.md`
|
|
152
|
+
- Use as-is (decisions added during work)
|
|
153
|
+
|
|
154
|
+
---
|
|
155
|
+
|
|
156
|
+
## 🌐 Step 4: Generate Root CLAUDE.md
|
|
157
|
+
|
|
158
|
+
Create `CLAUDE.md` at the repository root (automatically discovered by Claude):
|
|
159
|
+
|
|
160
|
+
```markdown
|
|
161
|
+
# CLAUDE.md - [PROJECT_NAME]
|
|
162
|
+
|
|
163
|
+
> **Powered by CodeSyncer** - AI Collaboration System
|
|
164
|
+
> **Mode**: Single Repository
|
|
165
|
+
|
|
166
|
+
## 📋 Quick Start
|
|
167
|
+
|
|
168
|
+
Read `.claude/CLAUDE.md` for detailed coding guidelines.
|
|
169
|
+
|
|
170
|
+
## 🔗 Documentation
|
|
171
|
+
|
|
172
|
+
- **Coding Rules**: `.claude/CLAUDE.md`
|
|
173
|
+
- **Project Structure**: `.claude/ARCHITECTURE.md`
|
|
174
|
+
- **Comment Guide**: `.claude/COMMENT_GUIDE.md`
|
|
175
|
+
- **Decisions Log**: `.claude/DECISIONS.md`
|
|
176
|
+
|
|
177
|
+
## 🚀 Start Working
|
|
178
|
+
|
|
179
|
+
1. Read this file (done!)
|
|
180
|
+
2. Check `.claude/CLAUDE.md` for project rules
|
|
181
|
+
3. Ask questions if anything is unclear
|
|
182
|
+
4. Start coding!
|
|
183
|
+
|
|
184
|
+
---
|
|
185
|
+
|
|
186
|
+
**Project**: [PROJECT_NAME]
|
|
187
|
+
**Created**: [TODAY]
|
|
188
|
+
**Powered by**: CodeSyncer
|
|
189
|
+
```
|
|
190
|
+
|
|
191
|
+
**Important**: This file must exist for Claude to automatically load context at session start!
|
|
192
|
+
|
|
193
|
+
---
|
|
194
|
+
|
|
195
|
+
## ✅ Step 5: Final Confirmation
|
|
196
|
+
|
|
197
|
+
After generating all files, present a summary:
|
|
198
|
+
|
|
199
|
+
```
|
|
200
|
+
✅ CodeSyncer Setup Complete! (Single Repository Mode)
|
|
201
|
+
|
|
202
|
+
Created files:
|
|
203
|
+
📁 [PROJECT_NAME]/
|
|
204
|
+
├── CLAUDE.md ⭐ Claude reads this first
|
|
205
|
+
└── .claude/
|
|
206
|
+
├── CLAUDE.md (Coding rules)
|
|
207
|
+
├── ARCHITECTURE.md (Project structure)
|
|
208
|
+
├── COMMENT_GUIDE.md (Comment guide)
|
|
209
|
+
└── DECISIONS.md (Decision log)
|
|
210
|
+
|
|
211
|
+
Next Steps:
|
|
212
|
+
1. Review the generated files
|
|
213
|
+
2. Customize .claude/CLAUDE.md as needed
|
|
214
|
+
3. Start a new session or say "Read CLAUDE.md" to apply
|
|
215
|
+
|
|
216
|
+
💡 Claude automatically finds and reads root CLAUDE.md!
|
|
217
|
+
|
|
218
|
+
Ready to start using CodeSyncer!
|
|
219
|
+
```
|
|
220
|
+
|
|
221
|
+
---
|
|
222
|
+
|
|
223
|
+
## 🎨 Customization Guidelines
|
|
224
|
+
|
|
225
|
+
### For Backend Projects:
|
|
226
|
+
- Focus on API structure in ARCHITECTURE.md
|
|
227
|
+
- Add API endpoint documentation
|
|
228
|
+
- Emphasize security and data handling rules
|
|
229
|
+
- Include database schema if provided
|
|
230
|
+
|
|
231
|
+
### For Frontend Projects:
|
|
232
|
+
- Document component structure
|
|
233
|
+
- Include styling approach (CSS modules, Tailwind, etc.)
|
|
234
|
+
- Add state management patterns
|
|
235
|
+
- Document routing structure
|
|
236
|
+
|
|
237
|
+
### For Mobile Projects:
|
|
238
|
+
- Document screen navigation
|
|
239
|
+
- Include platform-specific notes (iOS/Android)
|
|
240
|
+
- Add native module integrations
|
|
241
|
+
- Document build/deployment process
|
|
242
|
+
|
|
243
|
+
### For Fullstack Projects:
|
|
244
|
+
- Combine backend + frontend guidelines
|
|
245
|
+
- Document API ↔ UI integration
|
|
246
|
+
- Include data flow patterns
|
|
247
|
+
- Add deployment strategy
|
|
248
|
+
|
|
249
|
+
---
|
|
250
|
+
|
|
251
|
+
## 🚨 Critical Rules for AI Assistants
|
|
252
|
+
|
|
253
|
+
1. **Always ask, never assume** for:
|
|
254
|
+
- Business logic numbers
|
|
255
|
+
- API endpoints
|
|
256
|
+
- Security configurations
|
|
257
|
+
- Database schemas
|
|
258
|
+
|
|
259
|
+
2. **Be thorough** in analysis:
|
|
260
|
+
- Read actual code, don't guess
|
|
261
|
+
- Check package.json dependencies
|
|
262
|
+
- Scan folder structure completely
|
|
263
|
+
- Identify code patterns
|
|
264
|
+
|
|
265
|
+
3. **Be interactive**:
|
|
266
|
+
- Ask for confirmation at each step
|
|
267
|
+
- Present your analysis before generating
|
|
268
|
+
- Allow user to correct your understanding
|
|
269
|
+
|
|
270
|
+
4. **Use @codesyncer-* tags** in all examples:
|
|
271
|
+
- All code comments use new format
|
|
272
|
+
- Explain @claude-* compatibility
|
|
273
|
+
- Show proper tag usage
|
|
274
|
+
|
|
275
|
+
---
|
|
276
|
+
|
|
277
|
+
## 📚 Template Placeholders
|
|
278
|
+
|
|
279
|
+
When generating files, replace these:
|
|
280
|
+
|
|
281
|
+
- `[PROJECT_NAME]` → User's project name
|
|
282
|
+
- `[PROJECT_TYPE]` → backend/frontend/mobile/fullstack
|
|
283
|
+
- `[TECH_STACK]` → Detected tech stack (comma-separated)
|
|
284
|
+
- `[TODAY]` → Current date (YYYY-MM-DD)
|
|
285
|
+
- `[GITHUB_USERNAME]` → User's GitHub username
|
|
286
|
+
- `[KEYWORDS]` → User-confirmed discussion keywords
|
|
287
|
+
- `[TEMPLATES]` → Project type-specific templates
|
|
288
|
+
|
|
289
|
+
---
|
|
290
|
+
|
|
291
|
+
## 🎯 Success Criteria
|
|
292
|
+
|
|
293
|
+
Setup is successful when:
|
|
294
|
+
- ✅ `.claude/` folder created with all 4 files
|
|
295
|
+
- ✅ Root CLAUDE.md created
|
|
296
|
+
- ✅ User confirmed all critical information
|
|
297
|
+
- ✅ No assumptions made about business logic or secrets
|
|
298
|
+
- ✅ All documentation uses @codesyncer-* tag format
|
|
299
|
+
- ✅ Project-specific patterns documented
|
|
300
|
+
|
|
301
|
+
---
|
|
302
|
+
|
|
303
|
+
## 🗑️ After Setup
|
|
304
|
+
|
|
305
|
+
Once setup is complete, you can delete this file:
|
|
306
|
+
|
|
307
|
+
```
|
|
308
|
+
"Delete .claude/SETUP_GUIDE.md"
|
|
309
|
+
```
|
|
310
|
+
|
|
311
|
+
Or manually:
|
|
312
|
+
```bash
|
|
313
|
+
rm .claude/SETUP_GUIDE.md
|
|
314
|
+
```
|
|
315
|
+
|
|
316
|
+
---
|
|
317
|
+
|
|
318
|
+
**Version**: 1.0.0 (Powered by CodeSyncer)
|
|
319
|
+
**Mode**: Single Repository
|
|
320
|
+
**AI Tools**: Optimized for Claude Code | Compatible with: Cursor, GitHub Copilot, Continue.dev
|
|
321
|
+
|
|
322
|
+
---
|
|
323
|
+
|
|
324
|
+
*This setup guide is generated by CodeSyncer CLI. For issues or improvements, visit: https://github.com/bitjaru/codesyncer*
|