unopim/agent-skills

unopim-standards

Use when writing or changing any UnoPim code — the canonical rules for Laravel 13 and PHP 8.4 idiom, security, performance, scale, extensibility, localization and comments.

소스 보기

사용 방법

  1. 설치 명령을 복사하고 자신의 에이전트 환경에 설치하기 전에 소스 패키지를 확인하세요.
  2. 필요한 도구, 인증 정보, 지원 환경은 원본 문서에서 확인하세요.
  3. 입력과 원하는 산출물을 설명하고 출처와 결과를 대조하세요.
npx skills add https://github.com/unopim/agent-skills --skill unopim-standards

시작 전 확인

  • 설치에는 모델 구독, API 한도, 파일 접근 권한이 포함되지 않습니다.
  • 별점 수와 설치 수는 활동 지표이며 독립적인 품질·보안 검증이 아닙니다.
원본 Skill 문서

원본 저장소의 제목, 예시, 코드, 표, 링크, 이미지를 유지해 표시합니다.

UnoPim Standards

The canonical, judgment-level rules for all UnoPim code. Every rule cites a real file under packages/Webkul/ in the UnoPim checkout ($UNOPIM) as the pattern to copy — follow the exemplar, never invent a generic-Laravel alternative. Mechanical rules (anything a regex can catch) are enforced by hooks and by unopim-verify; these files spend their words on the calls that need a model's judgment.

The installed checkout outranks these files: when the code in $UNOPIM disagrees with a reference file, follow the checkout and report the drift so the skill can be regenerated — these documents are a fallback snapshot, not the source of truth.

Comments

No comments inside method bodies, object/array literals, or Blade markup — not even a one-line "why". A genuinely non-obvious rationale belongs in the class or method PHPDoc, or in the commit message. No narration, no section dividers, no banners. Laravel framework internals do use narrative inline comments; that is framework style, not app/package style, and not this codebase's.

Reference files

FileCovers
laravel13.mdLaravel 13 / PHP 8.4 idiom: promoted constructors, explicit types, attribute-based models + casts(), enums in src/Enums/, FormRequest, API Resources, named routes, match(), first-party over custom
security.mdFail-open ACL and how to close it, also_authorizes, in-controller bouncer(), FormRequest authorize(), upload allowlists, DataGrid XSS, mass assignment, SSRF, CSV formula injection, secrets at rest, CSRF
performance.mdEager loading, no query in loops or Blade, Cache::remember, RequestMemo, the scoped() / singleton() / bind() decision table for Octane
scale.mdMillions-of-rows discipline: chunkById/lazyById, keyset cursors, chunked whereIn, queued jobs, streaming migrations, indexes, pagination — plus portability: DB prefix in raw SQL, MySQL+PostgreSQL, optional Elasticsearch, server-agnostic code
extensibility.mdReuse-first: base classes, core()/bouncer(), events + proxy models as the extension mechanism, rule-of-two extraction, BC-preserving additive change, migration folders
localization.mden_US canonical, 33 locales, natural translations, :placeholder preservation, unopim:translations:check
comments.mdThe absolute comment bar, the PHPDoc contract, and the measured core baseline

REQUIRED SUB-SKILL: Use unopim-verify before claiming any change is complete.

관련 작업