<p align="center">
<img width="250" src="https://raw.githubusercontent.com/lubusIN/frappe-skills/HEAD/.github/assets/logo.svg" alt="Frappe Agent Skills" />
</p>
Frappe Skills
프레임워크(Framework)를 위한 구조화된 지식으로, AI 코딩 어시스턴트가 활용할 수 있는 DocType, API, 테스트 및 모범 사례를 제공합니다.
[!NOTE]
AI 작성자 고지:
공식 문서를 기반으로 GPT-5.3 Codex를 사용하여 초안을 작성했으며, 이후 인간이 검토, 다듬기 및 검증했습니다. AI 어시스턴트로 테스트하고 실질적인 반복(iteration)을 통해 개선되었습니다.
Frappe Agent Skills가 필요한 이유?
AI 코딩 어시스턴트는 강력하지만 종종 다음의 문제점을 보입니다:
- 구식 프레임워크 패턴을 생성합니다 (v13 이전, Query Builder 이전)
- API 핸들러에서 중요한 권한 확인(permission checks)을 누락합니다
- 적절한 DocType 컨트롤러 패턴을 건너뜁니다
- 프로젝트에 존재하는 기존 도구(tooling)를 무시합니다
이 Agent Skills는 AI 어시스턴트가 사용할 수 있는 구조화된 형식으로 깊이 있는 프레임워크 지식을 제공함으로써 이러한 문제를 해결합니다.
사용 가능한 Skills
Core Skills
| Skill | Description |
|---|
router | 작업에 따라 적절한 스킬로 진입하는 경로(Entry point-routes) |
project-triage | 프로젝트 유형, 설치된 앱, 버전 및 도구(tooling) 감지 |
Development Skills
| Skill | Description |
|---|
app-development | 훅(hooks), 백그라운드 작업(background jobs), 서비스 계층을 갖춘 사용자 정의 Frappe 앱 스캐폴딩 및 아키텍처링 |
| ... | |
UI & Frontend Skills
| Skill | Description |
|---|
desk-customization | 폼 스크립트(form scripts), 리스트 뷰, 다이얼로그를 사용하여 Frappe Desk UI 사용자 정의 |
| ... | |
Testing & Infrastructure
| Skill | Description |
|---|
testing | 단위 테스트(unit), 통합 테스트(integration) 및 UI 테스트 작성 및 실행 |
frappe-manager | Frappe Manager를 사용한 Docker 기반 개발 환경 |
Patterns & Best Practices
| Skill | Description |
|---|
enterprise-patterns | CRM/Helpdesk 스타일 앱을 위한 프로덕션 패턴(Production patterns) |
설치
Skills CLI 사용하기 (권장)
npx skills add lubusIN/frappe-skills
...
수동 설치(Manual Installation)
git clone https://github.com/lubusIN/frappe-skills.git
cd frappe-skills
...
작동 방식(How It Works)
각 스킬은 다음을 포함합니다:
doctype-development/
├── SKILL.md # 주요 지침 (사용 시점, 절차, 검증)
└── references/ # 특정 주제에 대한 심층 문서
...
사용자가 AI 어시스턴트에게 Frappe 코드를 작업하도록 요청하면, 이는 추측하는 대신 이 스킬들을 읽고 문서화된 절차를 따릅니다.
스킬 구조(Skill Structure)
각 SKILL.md는 표준 형식을 따릅니다:
- 사용 시점 (When to use) — 해당 스킬의 트리거 조건
- 필수 입력 정보 (Inputs required) — 에이전트가 시작하기 전에 필요한 정보
- 절차 (Procedure) — 단계별 지침
- 검증 (Verification) — 성공을 확인하는 체크리스트
- 실패 모드 (Failure modes) — 일반적인 문제 및 해결 방법
- 에스컬레이션 (Escalation) — 문서를 참조하거나 사용자에게 질문해야 하는 경우
호환성(Compatibility)
- Agent Skills를 지원하는 모든 AI 어시스턴트와 호환됩니다.
기여하기(Contributing)
기여 환영합니다! 스킬을 추가하거나 개선하려면:
- 이 레포지토리를 포크(Fork)하세요.
<주제> 내에 스킬을 생성하거나 수정하세요.
- SKILL.md에 모든 필수 섹션이 포함되어 있는지 확인하세요.
- AI 어시스턴트로 테스트하세요.
- 풀 리퀘스트(pull request)를 제출하세요.
스킬 작성 지침(Skill Authoring Guidelines)
SKILL.md는 간결하고 절차적이어야 합니다.
- 상세 내용은
references/에 넣으십시오.
- 검증 단계를 포함하십시오.
- 실패 모드를 문서화하십시오.
- 적절할 때 공식 문서를 연결하십시오.
새 스킬 추가하기(Adding a New Skill)
<주제> 디렉토리를 생성합니다.
- 주제별 문서를 담은
<주제>/README.md를 추가합니다.
- 에이전트 스킬 사양에 따라 개별 디렉토리를 만듭니다.
- 메인 README.md를 업데이트하여 새 주제를 나열합니다.
크레딧(Credits)
Frappe 생태계를 위해 개발 중인 더 많은 오픈 소스 도구를 탐색해 보세요.
<table
<tr>
<td width="50%" valign="top">
<a href="https://github.com/lubusIN/frappe-local">
<img src="https://raw.githubusercontent.com/lubusIN/frappe-local/main/.github/assets/logo.svg" alt="Frappe Local" height="60">
</a>
<br>
Frappe 벤치와 사이트를 시각적으로 관리합니다.
</td>
<td width="50%" valign="top">
<a href="https://github.com/lubusIN/frappe-playground">
<img src="https://raw.githubusercontent.com/lubusIN/frappe-playground/main/.github/logo.svg" alt="Frappe Playground" height="60">
</a>
<br>
브라우저에서 Frappe를 완전히 실행할 수 있습니다.
</td>
</tr>
<tr>
<td width="50%" valign="top">
<a href="https://github.com/lubusIN/frappe-vault">
<img src="https://raw.githubusercontent.com/lubusIN/frappe-vault/main/.github/assets/logo.svg" alt="Frappe Vault" height="60">
</a>
<br>
Frappe로 비밀 정보(secrets)와 암호를 관리합니다.
</td>
<td width="50%" valign="top">
<a href="https://github.com/lubusIN/wp-frappe-data-store">
<img src="https://raw.githubusercontent.com/lubusIN/wp-frappe-data-store/main/.github/assets/logo.svg" alt="WP Frappe Data Store" height="60">
</a>
<br>
WordPress용 React 데이터 저장소입니다.
</td>
</tr>
</table>
모든 LUBUS 프로젝트 탐색하기 →
제작자 소개 (Meet Your Artisans)
LUBUS는 뭄바이에 기반을 둔 웹 디자인 에이전시입니다.
<a href="https://cal.com/lubus">
<img src="https://raw.githubusercontent.com/lubusIN/.github/refs/heads/main/profile/banner.png" />
</a>
라이선스 (License)
Frappe Skills는 [MIT 라이선스]에 따라 오픈 소스로 공개되었습니다.