firebase-firestore-standard
프로비저닝, 보안 규칙, SDK 사용법 등을 포함한 Firestore Standard Edition에 대한 종합 가이드입니다. 사용자가 Firestore를 설정하거나, 보안 규칙을 작성하거나, 애플리케이션에서 Firestore SDK를 사용하는 데 도움이 필요할 때 이 스킬을 활용하세요.
SKILL DIRECTORY
설치 수와 최근 흐름을 기준으로 필요한 Agent Skill을 찾아보세요.
skills.sh API 기준방금 확인
프로비저닝, 보안 규칙, SDK 사용법 등을 포함한 Firestore Standard Edition에 대한 종합 가이드입니다. 사용자가 Firestore를 설정하거나, 보안 규칙을 작성하거나, 애플리케이션에서 Firestore SDK를 사용하는 데 도움이 필요할 때 이 스킬을 활용하세요.
Go 언어 프로젝트의 의존성 관리 — go.mod 및 go.sum, `go get` 설치 및 업그레이드 흐름, 최소 버전 선택, replace/exclude/retract을 활용한 충돌 해결, 모듈 트리에 대한 `govulncheck` 스캔, 구형 의존성 및 바이너리 크기 감사, 벤더링, `tool` 지시문, go.work 작업 공간. Go 의존성을 추가, 제거 또는 업그레이드할 때, 패키지 도입 여부를 결정할 때, 버전 충돌을 해결할 때, 또는 모듈이 불러오는 요소를 감사할 때 사용합니다. 이 문서는 의존성 버전의 선택 및 업그레이드를 다루며, 관련 툴링은 다루지 않습니다. 코드 내 악용 가능한 취약점을 수정하는 데는 사용하지 마십시오(→ `samber/cc-skills-golang@golang-security` 스킬 참조)나 Dependabot/Renovate 업데이트 봇을 CI 워크플로에 연동하는 데는 사용하지 마십시오(→ `samber/cc-skills-golang@golang-continuous-integration` 스킬 참조).
Go 언어의 구조체(struct) 및 인터페이스 설계 패턴 — 조합, 임베딩, 타입 어설션, 타입 스위치, 인터페이스 분리, 인터페이스를 통한 의존성 주입, 구조체 필드 태그, 포인터 리시버와 값 리시버의 비교. Go 타입을 설계하거나, 인터페이스를 정의 또는 구현하거나, 구조체나 인터페이스를 임베딩하거나, 타입 어설션이나 타입 스위치를 작성하거나, JSON/YAML/DB 직렬화를 위해 구조체 필드 태그를 추가하거나, 포인터 리시버와 값 리시버 중 하나를 선택할 때 이 기술을 활용하세요. 또한 사용자가 “인터페이스를 받아 구조체를 반환하는 방법”, 컴파일 시점 인터페이스 검사, 또는 작은 인터페이스를 더 큰 인터페이스로 조합하는 방법에 대해 문의할 때에도 이 기술을 활용하십시오.
Go 언어 라이브러리 및 프레임워크 선택 — 카테고리별(웹, 데이터베이스, 테스트, 로깅, 메시징) 검증된 운영 환경용 옵션, 신규 및 실험적 표준 라이브러리 패키지, ‘표준 라이브러리 우선’ 접근 방식의 장단점, 성숙도 지표(유지보수, 라이선스, 임포터 수). 사용자가 라이브러리 추천을 요청하거나, 대안을 비교하고자 하거나, 특정 작업을 위한 라이브러리를 선택해야 할 때, 또는 프로젝트에 새로운 의존성이 추가될 때 적용합니다. 일단 선택된 특정 라이브러리의 API에 대해서는 적용되지 않습니다(→ 해당 라이브러리의 전용 스킬 참조, 예: `samber/cc-skills-golang@golang-samber-lo`)이나, go.mod 관리 방식, 업그레이드, 취약점 감사에 대해서는 적용되지 않습니다(→ `samber/cc-skills-golang@golang-dependency-management` 스킬 참조).
Go 언어의 의존성 주입(DI)에 대한 종합 가이드입니다. DI가 중요한 이유(테스트 용이성, 느슨한 결합, 관심사 분리, 라이프사이클 관리), 수동 생성자 주입, DI 라이브러리 비교(google/wire, uber-go/dig, uber-go/fx, samber/do)를 다룹니다. 서비스 아키텍처 설계, 의존성 주입 설정, 밀접하게 결합된 코드 리팩토링, 싱글톤 또는 서비스 팩토리 관리 시, 혹은 사용자가 Go 언어에서의 제어 반전(Inversion of Control), 서비스 컨테이너, 의존성 연결에 대해 문의할 때 이 기술을 활용하세요. 특정 DI 라이브러리에 대해서는 → `samber/cc-skills-golang@golang-google-wire`, `samber/cc-skills-golang@golang-uber-dig`, `samber/cc-skills-golang@golang-uber-fx` 또는 `samber/cc-skills-golang@golang-samber-do` 스킬을 참조하세요.
Go 언어 벤치마킹, 프로파일링 및 성능 측정. Go 벤치마크를 작성, 실행 또는 비교할 때, pprof를 사용하여 핫 패스를 프로파일링할 때, CPU/메모리/추적 프로파일을 해석할 때, benchstat을 사용하여 결과를 분석할 때, CI 벤치마크 회귀 검출을 설정할 때, 또는 Prometheus 런타임 메트릭을 사용하여 운영 환경의 성능을 조사할 때 활용하세요. 또한 개발자가 특정 성능 지표에 대한 심층 분석이 필요할 때도 활용합니다. 이 기술은 측정 방법론을 제공하며, `samber/cc-skills-golang@golang-performance`는 최적화 패턴을 제공합니다.
Go CLI 애플리케이션 개발. Go CLI 도구를 구축, 수정 또는 검토할 때 사용하십시오. 특히 명령어 구조, 플래그 처리, 구성 계층화, 버전 임베딩, 종료 코드, I/O 패턴, 신호 처리, 셸 자동 완성, 인자 유효성 검사 및 CLI 단위 테스트에 유용합니다. 또한 코드에서 cobra, viper 또는 urfave/cli를 사용할 때도 트리거됩니다. cobra 전용 API의 경우 → `samber/cc-skills-golang@golang-spf13-cobra` 스킬을 참조하십시오. viper 구성 계층화의 경우 → `samber/cc-skills-golang@golang-spf13-viper` 스킬을 참조하십시오.
Go 언어 테스트를 위한 stretchr/testify 종합 가이드입니다. assert, require, mock, suite 패키지를 심도 있게 다룹니다. testify를 사용하여 테스트를 작성하거나, 모크를 생성하거나, 테스트 스위트를 설정하거나, assert와 require 중 하나를 선택해야 할 때 참고하세요. 이 가이드는 testify 어설션, 모크 기대값, 인자 매처, 호출 검증, 테스트 스위트 수명 주기, 그리고 Eventually, JSONEq, 사용자 정의 매처와 같은 고급 패턴을 다룹니다. 코드베이스에서 github.com/stretchr/testify를 임포트할 때 적용하십시오.
사용자가 실제로 판매하는 상품인 ‘오퍼’를 기획, 구성 또는 개선하고자 할 때 — 여기에는 가치 프레임 설정, 보너스 스태킹, 보증 설계, 희소성/긴급성, 명명, 결제 구조 등이 포함됩니다. 또한 사용자가 ‘오퍼’, ‘오퍼 설계’, ‘오퍼 구축’, ‘그랜드슬램 오퍼’, ‘거절할 수 없는 오퍼’, ‘가치 스택’, ‘보너스 스택’, ‘보증’, ‘리스크 리버설’, ‘환불 보증’, ‘희소성’, ‘긴급성’, '고가 오퍼', '서비스 상품화', '오퍼 명명', '결제 계획', '다운셀', '업셀 오퍼', 또는 '왜 내 오퍼가 전환되지 않는가'와 같은 용어를 언급할 때도 사용하세요. 서비스, 대행사, 강좌, 코칭, 정보 상품, 고가 B2B, 직접 반응형 마케팅에 가장 적합합니다. 순수한 셀프 서비스형 SaaS를 운영한다면 먼저 ‘가격 책정’을 읽어보세요. 그 분야에서는 요금제와 패키징이 더 큰 역할을 합니다. 가격 수준 자체(티어, 프리미엄, 가치 지표)에 대해서는 ‘가격 책정’ 항목을 참조하세요. 제안을 소개하는 페이지에 대해서는 ‘카피라이팅’ 항목을, 출시 시점에 대해서는 ‘출시’ 항목을, 영업 자료에 대해서는 ‘영업 지원’ 항목을 참조하세요.
Golang 프로젝트를 위한 GitHub Actions CI/CD 파이프라인 구성 — 테스트, 린트, SAST, 커버리지 및 취약점 스캔 작업용 워크플로 파일, Dependabot 및 Renovate 구성 파일, GoReleaser 릴리스 파이프라인, Docker 빌드/푸시, 리포지토리 보안 설정, AI 기반 PR 검토. Go 프로젝트의 CI를 설정하거나 개선할 때, `.github/workflows/*.yml` 파일을 작성하거나 수정할 때, 파이프라인 작업으로 린터나 보안 스캐너를 추가할 때, 자동 의존성 업데이트 봇을 연동할 때, 또는 품질 게이트를 추가할 때 사용하십시오. 이 문서는 도구를 파이프라인에 연동하는 방법을 다루며, 도구가 수행하는 분석 자체에 대해서는 다루지 않습니다: 보안 발견 사항을 선택하거나 해석하는 용도(→ `samber/cc-skills-golang@golang-security` 스킬 참조)나, 의존성 버전을 선택, 업그레이드 또는 감사하는 용도(→ `samber/cc-skills-golang@golang-dependency-management` 스킬 참조)로는 사용하지 마십시오.
Go 언어 기반 마이크로서비스를 위한 gRPC 사용 지침, protobuf 구성 방식 및 실제 운영 환경에 적용 가능한 패턴을 제공합니다. gRPC 서버/클라이언트 구현, 검토 또는 디버깅, proto 파일 작성, 인터셉터 설정, 상태 코드를 활용한 gRPC 오류 처리, TLS/mTLS 구성, bufconn을 이용한 테스트, 스트리밍 RPC 작업 시 활용하십시오.
>- 관련 작업을 지원합니다.
Go 생태계 주목 목록 — 공식 소스(go.dev/blog, pkg.go.dev, tour.golang.org, golang-nuts), 뉴스레터(Golang Weekly, Awesome Go Newsletter), 커뮤니티(r/golang, gophers.slack.com, Go Forum, go.dev/wiki), 블로그(Dave Cheney, Ardan Labs, Rob Pike), 유튜브 채널(Gopher Academy, GopherCon EU/UK), 컨퍼런스, 그리고 GitHub, X, Bluesky에서 팔로우할 만한 Go 기여자들. Go 언어 학습 자료를 찾거나, 새로운 라이브러리나 도구를 발견하거나, 커뮤니티 채널이나 모임 정보를 찾거나, 팔로우할 Go 개발자를 선정하거나, Go 언어의 변경 사항 및 릴리스 소식을 파악할 때 사용하세요. CLI를 통해 특정 모듈의 버전, 문서 또는 취약점을 조회하는 용도로는 적합하지 않습니다(→ `samber/cc-skills-golang@golang-pkg-go-dev` 스킬 참조).
Google 양식을 읽고 작성합니다.
samber/lo를 활용한 Go용 함수형 프로그래밍 헬퍼 — 슬라이스, 맵, 채널, 문자열, 수학 연산, 튜플 및 동시성을 위한 500개 이상의 타입 안전 제네릭 함수(Map, Filter, Reduce, GroupBy, Chunk, Flatten, Find, Uniq 등). 핵심 불변 패키지(lo), 동시성 변형(lo/parallel, 일명 lop), 인플레이스 변형(lo/mutable, 일명 lom), 지연 반복자(lo/it, Go 1.23 이상에서는 loi), 실험용 SIMD(lo/exp/simd). samber/lo를 사용하거나 도입할 때, 코드베이스에서 github.com/samber/lo를 임포트할 때, 또는 Go에서 함수형 스타일의 데이터 변환을 구현할 때 적용합니다. 스트리밍 파이프라인에는 적합하지 않습니다(→ `samber/cc-skills-golang@golang-samber-ro` 스킬 참조).
samber/do를 사용한 Go 언어의 의존성 주입 — 서비스 컨테이너, 라이프사이클 관리, 범위, 상태 점검, 점진적 종료 및 모듈 구성. samber/do를 사용하거나 도입할 때, 코드베이스에서 github.com/samber/do 또는 github.com/samber/do/v2를 임포트할 때, 또는 수동 생성자 주입을 DI 컨테이너로 리팩토링할 때 적용하십시오.
samber/slog-**** 패키지를 사용한 Go용 구조화된 로깅 확장 기능 — 멀티 핸들러 파이프라인 (slog-multi), 로그 샘플링 (slog-sampling), 속성 서식 지정 (slog-formatter), HTTP 미들웨어(slog-fiber, slog-gin, slog-chi, slog-echo) 및 백엔드 라우팅(slog-datadog, slog-sentry, slog-loki, slog-syslog, slog-logstash, slog-graylog...). slog를 사용하거나 도입할 때, 또는 코드베이스에서 이미 github.com/samber/slog-* 패키지를 임포트하고 있는 경우에 적용하십시오.
프로비저닝, 데이터 모델, 보안 규칙, SDK 사용법 등을 포함한 Firestore Enterprise 네이티브에 대한 종합 가이드입니다. 사용자가 Firestore Enterprise를 네이티브 모드로 설정하거나, 보안 규칙을 작성하거나, 애플리케이션에서 Firestore SDK를 사용하는 데 도움이 필요할 때 이 스킬을 활용하세요.
samber/oops를 활용한 Go 언어의 구조화된 오류 처리 — 오류 생성기, 스택 트레이스, 오류 코드, 오류 컨텍스트, 오류 래핑, 오류 속성, 사용자용 메시지와 개발자용 메시지, 패닉 복구, 로거 통합. samber/oops를 사용하거나 도입할 때, 또는 코드베이스에서 이미 github.com/samber/oops를 임포트하고 있는 경우에 적용하십시오.
Clerk 앱에 대한 E2E 테스트. 인증 흐름을 테스트할 때는 Playwright 또는 Cypress와 함께 사용하세요.