Initial commit to new repository
This commit is contained in:
152
dist/AxCopilot/skills/env-setup.skill.md
vendored
Normal file
152
dist/AxCopilot/skills/env-setup.skill.md
vendored
Normal file
@@ -0,0 +1,152 @@
|
||||
---
|
||||
name: env-setup
|
||||
label: 프로젝트 환경 설정
|
||||
description: .gitignore, requirements.txt, .editorconfig 등 프로젝트 환경 설정 파일을 자동 생성합니다.
|
||||
icon: \uE835
|
||||
tabs: code
|
||||
allowed-tools:
|
||||
- folder_map
|
||||
- file_read
|
||||
- file_write
|
||||
- process_run
|
||||
---
|
||||
|
||||
프로젝트 유형에 맞는 환경 설정 파일을 자동으로 생성하세요.
|
||||
|
||||
## 작업 절차
|
||||
|
||||
1. **프로젝트 분석**: folder_map으로 프로젝트 구조를 파악하고 유형 판별
|
||||
- `.py` 파일 → Python 프로젝트
|
||||
- `package.json` 또는 `.js/.ts` 파일 → Node.js 프로젝트
|
||||
- `.csproj` 또는 `.sln` 파일 → .NET 프로젝트
|
||||
- `pom.xml` 또는 `.java` 파일 → Java 프로젝트
|
||||
- 복합 프로젝트인 경우 모든 유형을 병합
|
||||
2. **기존 설정 확인**: 이미 존재하는 설정 파일이 있는지 확인
|
||||
- 있으면: 내용을 분석하여 누락된 항목만 추가 제안
|
||||
- 없으면: 새로 생성
|
||||
3. **생성할 파일 목록 제안**: 사용자에게 생성할 파일 목록을 보여주고 확인
|
||||
4. **파일 생성**: file_write로 각 설정 파일 생성
|
||||
5. **결과 안내**: 생성된 파일 목록과 주요 설정 내용 요약
|
||||
|
||||
## 프로젝트별 템플릿
|
||||
|
||||
### Python 프로젝트
|
||||
생성 파일: `.gitignore`, `requirements.txt`, `.editorconfig`, `setup.cfg`, `.flake8`
|
||||
|
||||
**.gitignore (Python)**:
|
||||
```
|
||||
__pycache__/
|
||||
*.py[cod]
|
||||
*$py.class
|
||||
*.so
|
||||
.Python
|
||||
env/
|
||||
venv/
|
||||
.venv/
|
||||
*.egg-info/
|
||||
dist/
|
||||
build/
|
||||
.eggs/
|
||||
*.egg
|
||||
.mypy_cache/
|
||||
.pytest_cache/
|
||||
.coverage
|
||||
htmlcov/
|
||||
.env
|
||||
.idea/
|
||||
.vscode/
|
||||
*.log
|
||||
```
|
||||
|
||||
**requirements.txt**: 프로젝트에서 import 문을 스캔하여 자동 생성
|
||||
|
||||
### Node.js 프로젝트
|
||||
생성 파일: `.gitignore`, `.editorconfig`, `.nvmrc`, `.prettierrc`
|
||||
|
||||
**.gitignore (Node)**:
|
||||
```
|
||||
node_modules/
|
||||
dist/
|
||||
build/
|
||||
.env
|
||||
.env.local
|
||||
*.log
|
||||
npm-debug.log*
|
||||
.DS_Store
|
||||
coverage/
|
||||
.nyc_output/
|
||||
.idea/
|
||||
.vscode/
|
||||
*.tgz
|
||||
```
|
||||
|
||||
### .NET 프로젝트
|
||||
생성 파일: `.gitignore`, `.editorconfig`, `Directory.Build.props`
|
||||
|
||||
**.gitignore (.NET)**:
|
||||
```
|
||||
bin/
|
||||
obj/
|
||||
.vs/
|
||||
*.user
|
||||
*.suo
|
||||
*.cache
|
||||
packages/
|
||||
*.nupkg
|
||||
TestResults/
|
||||
.idea/
|
||||
*.DotSettings.user
|
||||
```
|
||||
|
||||
### Java 프로젝트
|
||||
생성 파일: `.gitignore`, `.editorconfig`
|
||||
|
||||
**.gitignore (Java)**:
|
||||
```
|
||||
*.class
|
||||
*.jar
|
||||
*.war
|
||||
*.ear
|
||||
target/
|
||||
.gradle/
|
||||
build/
|
||||
.idea/
|
||||
*.iml
|
||||
.settings/
|
||||
.classpath
|
||||
.project
|
||||
out/
|
||||
```
|
||||
|
||||
## 공통 .editorconfig
|
||||
```ini
|
||||
root = true
|
||||
|
||||
[*]
|
||||
indent_style = space
|
||||
indent_size = 4
|
||||
end_of_line = lf
|
||||
charset = utf-8
|
||||
trim_trailing_whitespace = true
|
||||
insert_final_newline = true
|
||||
|
||||
[*.md]
|
||||
trim_trailing_whitespace = false
|
||||
|
||||
[*.{yml,yaml}]
|
||||
indent_size = 2
|
||||
|
||||
[*.{json,js,ts,jsx,tsx}]
|
||||
indent_size = 2
|
||||
|
||||
[Makefile]
|
||||
indent_style = tab
|
||||
```
|
||||
|
||||
## 규칙
|
||||
- 기존 설정 파일이 있으면 덮어쓰지 않고, 누락 항목만 제안
|
||||
- .env 파일은 생성하지 않음 (보안 — 사용자가 직접 생성)
|
||||
- 생성 전 파일 목록을 반드시 사용자에게 확인
|
||||
- 프로젝트 루트에 생성 (하위 폴더에 생성하지 않음)
|
||||
|
||||
한국어로 안내하세요.
|
||||
Reference in New Issue
Block a user