跳到正文
cccskills
免费在 GitHub 公开

csharp-conventions

Kern project C# conventions, namespace rules, DI/VContainer patterns, and assembly layer boundaries. Use when writing, editing, or reviewing any C# file — MonoBehaviours, ScriptableObjects, services, contracts, factories, or editor scripts. Triggers on: namespace, nullable, asmdef, VContainer, RegisterComponent, IObjectResolver, composition root, Kern.Contracts, primary constructor, record struct, SA1513, _camelCase, PascalCase, asmref, MonoScript.GetClass.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop星标 4(GitHub 4 + cccskills 0)

实测评分 未实测

查看安装方法

包含的文件(1)

  • SKILL.md3.5 KB

SKILL.md(原文)

安装前可以查看交给 AI 代理的指令内容。

C# and structure

Language and nullable

  • #nullable enable is enabled; annotate reference types explicitly as nullable or non-null.
  • Use C# 12 features (primary constructors, readonly record struct, collection expressions) where appropriate.

Namespaces

  • Regular types use file-scoped namespaces.
  • Types deriving from MonoBehaviour, ScriptableObject, ScriptableRendererFeature, or VolumeComponent use block namespaces — otherwise MonoScript.GetClass() may return null.

Style

  • Allman braces, mandatory {}, SA1513/SA1508.
  • Trailing comma in multi-line initializers.
  • Non-public instance fields — _camelCase; non-public static fields — s_camelCase; constants (including local constants), public fields, types, namespaces, methods, properties, events, enum members, delegates, and local functions — PascalCase.
  • Interfaces — I + PascalCase; generic type parameters — T + PascalCase; locals and parameters — camelCase.
  • Use Is/Has/Can for boolean meaning, Count for quantities, Index for positions, and Id for identity. Use meaningful plural collection names and ById for identity lookup.
  • Async operations use the Async suffix; event handlers use Handle + event name. Use Id, Uv, and Ms; keep CPU, LUT, FPS, M3G, GPU, LRU, and RLE uppercase in compound identifiers; retain names required by external APIs and contracts.
  • Use Credits rather than Creds for project-owned currency identifiers. Keep immutable external packet/API names at the integration boundary.
  • Include units when otherwise ambiguous (durationSeconds, gpuTimeMs, radiusPixels, distanceMeters).
  • Prefer private [SerializeField] fields with public properties. Preserve Unity callback names and shader parameter contracts exactly. When renaming serialized fields, preserve values with [FormerlySerializedAs]; migrate existing symbols by subsystem rather than mass replacement.
  • .editorconfig enforces naming at warning severity. Shader and asset names follow their domain contracts; C# naming rules do not rename shader bindings or assets.
  • Unity script file name must match the class name.

DI / VContainer

  • Do not create managers via AddComponent in Configure.
  • Register scene components via RegisterComponent; create prefabs/entities via ISceneObjectFactory.
  • IObjectResolver is permitted only in composition roots and factories.
  • RegisterInstance does not inject manually created objects.
  • Do not resolve the container in Awake, OnEnable, or Start.

Assembly layers

  • Kern.Contracts is the bottom layer: it does not reference any Kern.* assembly.
  • Module contracts live next to the module in a Contracts/ folder with Kern.Contracts.asmref; without it the type lands in the module assembly and breaks everyone below.
  • Do not place types that depend on implementation details in Contracts/.
  • Guarded by ContractsAssemblyBoundaryTests.

Documents

  • Files in docs/ must be self-contained HTML with inline <style>, no Markdown, no external dependencies.

评价

还没有评价。欢迎分享你的使用感受。

评论

无需登录即可发表。欢迎分享使用感受、提问,或说明在哪些环境下无法运行。

还没有评论。来写第一条吧。

提交后会立即公开。请勿填写邮箱、电话等个人信息。URL 最多 2 个。

0 / 1000 字

此表单受 reCAPTCHA 保护,适用 Google 的隐私权政策和服务条款。

同一仓库的技能

Refactor bloated AGENTS.md, CLAUDE.md, or similar agent instruction files to follow progressive disclosure principles. Splits monolithic files into organized, linked documentation.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

Build and operate a live game using Unity Services. Use when the user needs to implement, connect, or debug backend-driven features — battle passes, achievements, player progression, cloud saves, leaderboards, matchmaking, virtual economies, server-authoritative logic, anti-cheat, player accounts and authentication, remote configuration, feature flags, A/B testing, analytics, or cloud resource deployment. Triggers on live-ops, live service, backend, server authority, cloud code, cloud save, remote config, player data, retention, monetization loop, season pass, ranking, multiplayer sessions, lobbies, or any Unity Services integration.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

Kern engine critical invariants: coordinate system, UI Toolkit positioning, RenderTexture blit, LifetimeScope/scene structure, VolumeProfile editor API, camera pixel-grid alignment, performance analysis rules, profiler interpretation, and the no-fallback policy. Use when touching coordinates, WorldToScreen, UI element anchoring, RenderTexture, LifetimeScope, VolumeProfile, camera, FPS analysis, Profiler markers, or any code near an "invariant" comment. Triggers on: CoordinateUtils, MapManager.WorldHeight, RuntimePanelUtils, CameraTransformWorldToPanel, WorldToLocal, PositionWriteEpsilon, CameraPixelGridAligner, LifetimeScope, RegisterComponent, VolumeProfile, AssetDatabase.AddObjectToAsset, EditorLoop, VSync, fallback, paper white, FPS, frame time.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

fmod-sync

免费

Synchronize and compile FMOD Studio banks into StreamingAssets

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

Kern HDR/color pipeline contract: scene-referred linear working space, paper white units, radiance format rules, URP output transform ownership, DisplayFinal perceptual/linear space, UI brightness, HDR calibration screen, safe-start HDR switch, and HDROutputController usage. Use when touching lighting shaders, glow, bloom, tonemapping, post-processing, color grading, LUT, display output, UI colors, calibration, or any code with DisplaySettings / HDROutput / PaperWhite / Tonemapping / CompositeFinal / DisplayFinal / VisualTuning. Triggers on: saturate on radiance, clamp color, sRGB in shader, UNorm light buffer, ARGBHalf, paper white, HDROutputReconciler, VisualTuning, BT2390, detectPaperWhite, HDRCalibrationScreen, HDRSwitchPending, HDROutputSettings.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

Implement, configure, and debug Unity In-App Purchases (IAP) — store connection, product catalog, consumable/non-consumable/subscription purchases, two-step pending-confirm flow, receipt validation, entitlement checking, restore transactions, Apple extensions (promotional purchases, Ask-to-Buy, code redemption), and Google Play extensions (subscription upgrade/downgrade), D2C Capabilities(direct to customer), 3rd party payment provider (Stripe/Coda) via Unity IAP/Unity Cloud. Use when the user needs to add, modify, debug, or migrate from native Android/iOS billing, 3rd party packages(RevenueCat/Adapty/Essential Kit/Unipay supported) to IAP. Triggers on microtransactions (MTX), monetization, real-money purchases, store purchases, buying items, support D2C, purchase via Stripe/Coda, migrate from native billing(Google's BillingClient or Apple's StoreKit/SKPaymentQueue/SKProduct)/RevenueCat/Adapty/EssentialKit/Unipay.

中文简介正在准备中。当前显示原文说明。

MinesReborn/Fodislop42026年10月26日 更新

查看 MinesReborn 的全部技能

报告此技能的问题