Token导航 LogoToken导航TokenDH.com
前端设计只读github未标认证来源可访问许可证需确认审计通过

csharp-xml-docscsharp XML 文档

Agent Skill

用于辅助文档、README、Markdown、说明文和内容稿件的整理与改写。它适合让 Agent 提炼结构、补齐章节、统一术语、检查链接或把零散材料整理成可读文档。使用时应保留项目已有事实、命令和路径,不要把未确认的信息写成确定结论;涉及对外文案时,还需要控制语气,避免过度营销或夸大能力。

总安装

220

周安装

9

GitHub Stars

8

下载量

71
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

2

许可证

unknown

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:csharp-xml-docs(csharp XML 文档)
来源仓库:https://github.com/creator-hian/claude-code-plugins
仓库路径:skills/csharp-xml-docs
安装命令:
npx skills add https://github.com/creator-hian/claude-code-plugins --skill csharp-xml-docs
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。该命令会通过 npx skills 从第三方来源获取 Skill;本站只展示命令,不托管安装包,也不自动执行。

skills.shnpx skills
npx skills add https://github.com/creator-hian/claude-code-plugins --skill csharp-xml-docs

简介

生成符合规范的 C# XML 代码文档。

  • 覆盖属性、方法、枚举等元素的标准化注释。
  • 通过 GitHub 安装,适用宿主包括 Codex、Claude、Cursor、Gemini CLI,接入前应确认版本、权限和运行环境要求。
  • 建议遵循三步审核流程确保准确性。
  • csharp-xml-docs 属于前端设计类 Skill,可作为该场景下的辅助能力补充。

SKILL.md

C# XML Documentation Guide

Comprehensive XML documentation standards for Unity C# projects with flexible language choice.

Overview

Foundation Required: csharp-code-style (mPascalCase, Async 접미사 금지, var 금지)

Core Principle: XML documentation samples with flexible language choice

  • All XML comments (<summary>, <remarks>, etc.) can be written in Korean or English
  • Provides universal reference for documentation standards
  • Choose the language that best serves your team and project needs

Quick Start

public class ActionResult
{
    // Simple property - English
    /// <summary>
    /// Indicates whether the action executed successfully
    /// </summary>
    public bool Success { get; set; }

    // Simple property - Korean
    /// <summary>
    /// 액션 실행 성공 여부
    /// </summary>
    public bool Success { get; set; }

    // Complex concept with remarks
    /// <summary>
    /// Indicates whether the action was skipped
    /// </summary>
    /// <remarks>
    /// Set to true when skipped due to unmet conditions.
    /// If true, the action was not executed regardless of Success value.
    /// </remarks>
    public bool Skipped { get; set; }
}

Language Choice Guidelines

Acceptable Options

  1. Pure Korean (한글 전용)
  2. Pure English (영문 전용)
  3. Mixed Korean + English (혼용)

Context-Based Recommendations

ContextRecommended LanguageRationale
Internal team projectKorean or Team preferenceMaximum clarity for team members
Open source / InternationalEnglish or MixedBroader accessibility
Company standard existsFollow company policyConsistency across projects
Mixed teamEnglish or BothAccommodate all members
Legacy codebaseMatch existing styleMaintain consistency

Consistency Rules

Within a single file:

  • Consistent: All Korean OR All English OR All Mixed
  • Inconsistent: Random switching between languages

Across the project:

  • Maintain similar language strategy across similar components
  • Document language choice in project README or CLAUDE.md
  • Use consistent language for related interfaces and implementations

Quick Decision Matrix

ScenarioSummaryRemarksAdditional TagsExample
Simple propertyYesNoNobool Success
Complex conceptYesYesNobool Skipped with conditions
Property with side effectsYesOptional<value>CurrentMode
Public class/structYesYesNoclass ActionResult
Factory methodYesOnly if special caseNoCreateSuccess()
Method with exceptionsYesOptional<exception> per exceptionLoadVRM()
Internal methodOptionalNoNoinitializeDefaults()
Enum typeYesOptionalNoEAnimationMode
Enum valuesYes (each)NoNoVRMAnimation, AnimatorController
Extension methodYesOptionalDocument this paramActivateWithConfigAsset()
Interface methodYes (full)YesAll applicableIActionHandler.Execute()
Implementation method<inheritdoc/>Implementation details onlyOverride if neededPlayerPrefsActionHandler.Execute()

On-Demand Documentation Workflow

Critical Principle: XML documentation is NOT auto-applied. Only generated when explicitly requested.

3-Step Review Process

  1. Claude-Haiku (Draft Generation)

- Fast, efficient initial documentation draft - Follows established patterns from Pattern Library - Sets foundation for review

  1. Gemini or Codex CLI (Expert Review)

- Professional review and refinement - Cross-validates patterns and consistency - Improves clarity and completeness

  1. Final Approval

- Manual confirmation of reviewed documentation - Integration into codebase

See XML Documentation Workflow for detailed process.

Reference Documentation

Pattern Library

Complete examples for all common scenarios:

  • Simple properties and fields
  • Complex concepts requiring remarks
  • Classes and structs
  • Methods (simple, complex, multi-step)
  • Factory methods
  • Enums and bit flags
  • Exception documentation
  • Extension methods
  • Interface vs Implementation patterns

Formatting Guidelines

When to use various XML tags:

  • <br/> vs <list> for structured content
  • <value> for properties with side effects
  • <exception> for documented exceptions
  • <para> for multi-paragraph remarks

Best Practices

Essential principles for effective documentation:

  • Keep it simple for straightforward elements
  • Add context where needed
  • Be consistent with language choice
  • Avoid redundancy
  • Document special cases

XML Documentation Workflow

3-step documentation process using Claude-Haiku, Gemini/Codex review, and final approval

Critical Pattern: Interface vs Implementation

Interface: Full Documentation

/// <summary>
/// Interface dedicated to VTuber Animation control (ISP compliance)
/// </summary>
/// <remarks>
/// Interface for clients that only control animation playback.<br/>
/// State Query and Observable features are separated into distinct interfaces.
/// </remarks>
public interface IVTuberAnimationController
{
    /// <summary>
    /// Plays animation asynchronously
    /// </summary>
    /// <param name="animationPath">Animation path</param>
    /// <param name="wrapMode">Playback mode (Loop/Once/PingPong)</param>
    /// <returns>
    /// true: Playback start succeeded<br/>
    /// false: Playback start failed
    /// </returns>
    /// <remarks>
    /// <strong>Preconditions:</strong><br/>
    /// - Context must be ready (IsReady = true)<br/>
    /// - animationPath must not be null
    /// </remarks>
    UniTask<bool> PlayAnimation(string animationPath, WrapMode wrapMode);
}

Implementation: Use <inheritdoc/> + Implementation Details

public partial class VRMController : IVTuberAnimationController
{
    private IAnimationSystem mCurrentSystem;
    private readonly Dictionary<string, Animation> mAnimations;

    /// <inheritdoc/>
    /// <remarks>
    /// <strong>Implementation:</strong> Path prefix-based auto-routing ("VRMA/" -> VRMAnimation, "State/{Layer}/{Identifier}" -> AnimatorController)<br/>
    /// <strong>Main Failures:</strong> Unknown prefix, System activation failure, invalid Layer/Identifier<br/>
    /// <strong>Note:</strong> wrapMode ignored when using AnimatorController
    /// </remarks>
    public async UniTask<bool> PlayAnimation(string animationPath, WrapMode wrapMode)
    {
        Debug.Assert(animationPath != null);
        // Implementation...
    }
}

Key Principles

  1. On-Demand Only: XML documentation is NEVER auto-applied. Only generate when explicitly requested
  2. Keep it simple: Concise summaries for straightforward elements
  3. Add context where needed: Complex concepts deserve detailed explanations in remarks
  4. Think about your audience: Choose language (Korean/English/Mixed) that serves your team best
  5. Be consistent: Follow established patterns and use consistent language throughout
  6. Dual-Review Process: Claude-Haiku draft → Expert Review (Gemini/Codex) → Final Approval
  7. Interface vs Implementation: Full docs in interface, <inheritdoc/> + implementation specifics in class
  8. Document exceptions: Use <exception> for exceptions that are part of the method's contract
  9. Property side effects: Use <value> tag when getter/setter have non-obvious behavior
  10. POCU Naming: Use mPascalCase for private fields, camelCase for private methods

IDE Experience

IntelliSense Display:

Simple Property:

Success (bool)
Indicates whether the action executed successfully

Complex Property with Remarks:

Skipped (bool)
Indicates whether the action was skipped

[Show more...] <- Click to expand remarks

Common Examples

Simple Property:

/// <summary>Number of retry attempts</summary>
public int RetryCount { get; set; }

Method with Parameters (POCU Style):

public class DataService
{
    private readonly Dictionary<string, object> mOutputData;

    /// <summary>
    /// Retrieves output data
    /// </summary>
    /// <typeparam name="T">Data type to return</typeparam>
    /// <param name="key">Key to retrieve</param>
    /// <param name="defaultValue">Default value if key not found</param>
    /// <returns>Retrieved data or default value</returns>
    public T GetOutputData<T>(string key, T defaultValue = default(T))
    {
        Debug.Assert(key != null);

        object value;
        if (mOutputData == null || !mOutputData.TryGetValue(key, out value))
        {
            return defaultValue;
        }

        return convertValue<T>(value, defaultValue);
    }

    private T convertValue<T>(object value, T defaultValue)
    {
        try
        {
            if (value is T directValue)
            {
                return directValue;
            }

            return (T)Convert.ChangeType(value, typeof(T));
        }
        catch
        {
            return defaultValue;
        }
    }
}

Multi-Step Process:

public class EventExecutor
{
    private readonly IEventRepository mRepository;
    private readonly IActionProcessor mProcessor;

    /// <summary>
    /// Executes event
    /// </summary>
    /// <remarks>
    /// <para>
    /// <strong>Execution Process:</strong><br/>
    /// 1. Event definition lookup<br/>
    /// 2. Event-level condition evaluation<br/>
    /// 3. Direct action list processing<br/>
    /// 4. Execution time and metadata configuration
    /// </para>
    /// </remarks>
    public async UniTask<EventActionResult> ExecuteEvent(
        string systemId, string eventId, object contextDataOrNull = null)
    {
        Debug.Assert(systemId != null);
        Debug.Assert(eventId != null);

        EventDefinition definition = await mRepository.GetDefinition(systemId, eventId);
        return await processEvent(definition, contextDataOrNull);
    }

    private async UniTask<EventActionResult> processEvent(
        EventDefinition definition, object contextDataOrNull)
    {
        Debug.Assert(definition != null);
        // Implementation...
    }
}

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Codex

34.48%
按下载量换算24

Claude

32.29%
按下载量换算23

Cursor

20.27%
按下载量换算14

Gemini CLI

9.83%
按下载量换算7

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

只读

该 Skill 主要提供规则、说明或参考内容,本身偏只读;真正读写文件、联网或执行命令仍取决于宿主 Agent 的任务。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。当前只有一个来源,正式发布前建议补源仓库或其他目录站核验。

来源信息

继续浏览同类 Skills