/update-dart-doc
Systematically manage Dart DartDoc comments. Trigger with "update DartDoc", "manage Dart documentation", "add DartDoc".
$ npx -y skills add wasabeef/claude-code-cookbook --skill update-dart-doc --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
- Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition โ
- You can call itInvoke it directly when you want it.
- Slash command
/update-dart-doc
Context preview
The summary Claude sees to decide when to auto-load this skill.
Systematically manage Dart DartDoc comments. Trigger with "update DartDoc", "manage Dart documentation", "add DartDoc".
SKILL.md
update-dart-doc.SKILL.mddescription: 'Systematically manage Dart DartDoc comments. Trigger with "update DartDoc", "manage Dart documentation", "add DartDoc".'
allowed-tools:
- Read
- Edit
- Grep
- Glob
Systematically manage Dart DartDoc comments
Systematically manages DartDoc comments in Dart files and maintains high-quality Japanese documentation.
Usage
# Perform new additions and updates simultaneously
"Add DartDoc comments to classes without them and update comments that don't meet standards"
# Check changed files in PR
"Check if there are Claude markers in the DartDoc of files changed in PR #4308"
# Maintain documentation for specific directories
"Add DartDoc to Widget classes under packages/app/lib/ui/screen/"
# Execute without markers
/update-dart-doc --marker false
"Improve DartDoc in existing project (without Claude markers)"
Options
- `--marker <true|false>` : Whether to add Claude markers (default: true)
Basic Examples
# 1. Analyze target files
find . -name "*.dart" -not -path "*/.*" | grep -v "_test.dart" | grep -v "_vrt.dart"
"Identify classes with insufficient DartDoc (0 lines or less than 30 characters)"
# 2. Add documentation
"Add DartDoc comments containing required elements to the identified classes"
# 3. Check markers
"Ensure all added/updated DartDoc have Claude markers"
Execution Procedure
1. Priority of Target Elements
1. ๐ด **Highest priority**: Elements without DartDoc comments (0 comment lines) 2. ๐ก **Next priority**: Elements not meeting standards (less than 30 characters or missing required elements) 3. ๐ข **Verification target**: Existing comments without Claude markers
**Target elements**:
- Classes (all class definitions)
- Enums
- Extensions
- Important functions (top-level functions, optional)
2. DartDoc Writing Rules
**Basic structure**:
/// {Element summary} (30-60 characters, required)
///
/// {Detailed description} (must include role, usage context, and notes, 50-200 characters)
///
/// Generated by Claude ๐ค
@annotation // Do not change existing annotations
class ClassName {**Text style**:
- Polite language (desu/masu form): "displays", "is a class that manages"
- Use Japanese punctuation: ใใใใใใ
- Add half-width space between Japanese and alphanumeric characters
- Use English for technical terms: "Authentication state"
- Keep each line within 80 characters
3. Writing Examples by Class Category
**State management class (Riverpod)**:
/// State that manages the disabled state of horizontal swipe gestures.
///
/// Used when horizontal swipes need to be disabled during specific screens or operations,
/// such as during carousel displays or specific inputs.
///
/// Generated by Claude ๐ค
@Riverpod(keepAlive: true, dependencies: [])
class HorizontalDragGestureIgnoreState extends _$HorizontalDragGestureIgnoreState {**Widget class**:
/// Widget that displays a user profile.
///
/// Vertically arranges avatar image, username, and status information,
/// and navigates to the profile detail screen when tapped.
///
/// Generated by Claude ๐ค
class UserProfileWidget extends HookConsumerWidget {4. Rules for Preserving Existing Content
1. **If existing comment meets standards**: Keep as is (do not add new comment)
- Standards: 30+ characters and includes required elements (summary, details, marker)
2. **If existing comment does not meet standards**: Completely replace (no duplication) 3. **If no existing comment**: Add new comment
**Important information to preserve**:
- URLs and links: References starting with `See also:`
- TODO comments: In the format `TODO(user_name):`
- Notes: Warnings like `Note:` or `Warning:`
- Usage examples: Code starting with `Example:` or `Usage:`
- Technical constraints: Descriptions of performance or limitations
Claude Marker Management
# Marker format
/// Generated by Claude ๐ค
# Check markers in PR changed files
gh pr diff 4308 --name-only | grep "\.dart$" | xargs grep -l "Generated by Claude"
"Add markers to files that don't have them"
Quality Check List
- โ
**Character count**: Strictly adhere to 30-60 characters for summary, 50-200 for details
- โ
**Required elements**: Always include 3 elements - summary, detailed explanation, and Claude marker
- โ
**Completeness**: Describe role, usage context, and notes
- โ
**Consistency**: Unify style with polite language (desu/masu form)
- โ
**Format**: Add half-width space between Japanese and English
- โ
**Accuracy**: Analyze implementation and only include fact-based descriptions
- โ
**Structure**: Preserve annotations, place comments above
- โ
**Length**: Keep each line within 80 characters
- โ
**Marker**: Always add marker for changes by Claude
Notes
**๐ด Absolute prohibitions**:
- โ Code changes other than documentation comments
- โ Speculation about implementation details (only factual descriptions)
- โ Unnatural mixing of English and Japanese
- โ Deletion or modification of existing annotations
- โ Duplication with existing comments
- โ Comments under character count standards in test files (`*_test.dart`)
- โ Comments under character count standards in VRT files (`*_vrt.dart`)
**Static analysis and commit**:
# Record execution results
ADDED_COMMENTS=0
UPDATED_COMMENTS=0
ERRORS=0
# Check after changes
melos analyze
if [ $? -ne 0 ]; then
echo "๐ด Error: Static analysis failed"
exit 1
fi
# Output execution summary
echo "๐ Execution results:"
echo "- Added comments: $ADDED_COMMENTS"
echo "- Updated comments: $UPDATED_COMMENTS"
echo "- Errors: $ERRORS"
# Example commit
git commit -m "docs: Add and update DartDoc comments
- Add DartDoc to classes, enums, and extensions that don't meet standards
- Update comments under 30 characters to meet standards
- Uniformly add Claude markers
Execution results:
- Added: $ADDED_COMMENTS
- Updated: $UPDATED_COMMENTS
Generated by Claude ๐ค"
Execution Success Criteria
1. **Complet
Read more
description: 'Systematically manage Dart DartDoc comments. Trigger with "update DartDoc", "manage Dart documentation", "add DartDoc".' allowed-tools: - Read - Edit - Grep - Glob
Systematically manage Dart DartDoc comments
Systematically manages DartDoc comments in Dart files and maintains high-quality Japanese documentation.
Usage
# Perform new additions and updates simultaneously "Add DartDoc comments to classes without them and update comments that don't meet standards" # Check changed files in PR "Check if there are Claude markers in the DartDoc of files changed in PR #4308" # Maintain documentation for specific directories "Add DartDoc to Widget classes under packages/app/lib/ui/screen/" # Execute without markers /update-dart-doc --marker false "Improve DartDoc in existing project (without Claude markers)"
Options
- `--marker <true|false>` : Whether to add Claude markers (default: true)
Basic Examples
# 1. Analyze target files find . -name "*.dart" -not -path "*/.*" | grep -v "_test.dart" | grep -v "_vrt.dart" "Identify classes with insufficient DartDoc (0 lines or less than 30 characters)" # 2. Add documentation "Add DartDoc comments containing required elements to the identified classes" # 3. Check markers "Ensure all added/updated DartDoc have Claude markers"
Execution Procedure
1. Priority of Target Elements
1. ๐ด **Highest priority**: Elements without DartDoc comments (0 comment lines) 2. ๐ก **Next priority**: Elements not meeting standards (less than 30 characters or missing required elements) 3. ๐ข **Verification target**: Existing comments without Claude markers
**Target elements**:
- Classes (all class definitions)
- Enums
- Extensions
- Important functions (top-level functions, optional)
2. DartDoc Writing Rules
**Basic structure**:
/// {Element summary} (30-60 characters, required)
///
/// {Detailed description} (must include role, usage context, and notes, 50-200 characters)
///
/// Generated by Claude ๐ค
@annotation // Do not change existing annotations
class ClassName {**Text style**:
- Polite language (desu/masu form): "displays", "is a class that manages"
- Use Japanese punctuation: ใใใใใใ
- Add half-width space between Japanese and alphanumeric characters
- Use English for technical terms: "Authentication state"
- Keep each line within 80 characters
3. Writing Examples by Class Category
**State management class (Riverpod)**:
/// State that manages the disabled state of horizontal swipe gestures.
///
/// Used when horizontal swipes need to be disabled during specific screens or operations,
/// such as during carousel displays or specific inputs.
///
/// Generated by Claude ๐ค
@Riverpod(keepAlive: true, dependencies: [])
class HorizontalDragGestureIgnoreState extends _$HorizontalDragGestureIgnoreState {**Widget class**:
/// Widget that displays a user profile.
///
/// Vertically arranges avatar image, username, and status information,
/// and navigates to the profile detail screen when tapped.
///
/// Generated by Claude ๐ค
class UserProfileWidget extends HookConsumerWidget {4. Rules for Preserving Existing Content
1. **If existing comment meets standards**: Keep as is (do not add new comment)
- Standards: 30+ characters and includes required elements (summary, details, marker)
2. **If existing comment does not meet standards**: Completely replace (no duplication) 3. **If no existing comment**: Add new comment
**Important information to preserve**:
- URLs and links: References starting with `See also:`
- TODO comments: In the format `TODO(user_name):`
- Notes: Warnings like `Note:` or `Warning:`
- Usage examples: Code starting with `Example:` or `Usage:`
- Technical constraints: Descriptions of performance or limitations
Claude Marker Management
# Marker format /// Generated by Claude ๐ค # Check markers in PR changed files gh pr diff 4308 --name-only | grep "\.dart$" | xargs grep -l "Generated by Claude" "Add markers to files that don't have them"
Quality Check List
- โ **Character count**: Strictly adhere to 30-60 characters for summary, 50-200 for details
- โ **Required elements**: Always include 3 elements - summary, detailed explanation, and Claude marker
- โ **Completeness**: Describe role, usage context, and notes
- โ **Consistency**: Unify style with polite language (desu/masu form)
- โ **Format**: Add half-width space between Japanese and English
- โ **Accuracy**: Analyze implementation and only include fact-based descriptions
- โ **Structure**: Preserve annotations, place comments above
- โ **Length**: Keep each line within 80 characters
- โ **Marker**: Always add marker for changes by Claude
Notes
**๐ด Absolute prohibitions**:
- โ Code changes other than documentation comments
- โ Speculation about implementation details (only factual descriptions)
- โ Unnatural mixing of English and Japanese
- โ Deletion or modification of existing annotations
- โ Duplication with existing comments
- โ Comments under character count standards in test files (`*_test.dart`)
- โ Comments under character count standards in VRT files (`*_vrt.dart`)
**Static analysis and commit**:
# Record execution results ADDED_COMMENTS=0 UPDATED_COMMENTS=0 ERRORS=0 # Check after changes melos analyze if [ $? -ne 0 ]; then echo "๐ด Error: Static analysis failed" exit 1 fi # Output execution summary echo "๐ Execution results:" echo "- Added comments: $ADDED_COMMENTS" echo "- Updated comments: $UPDATED_COMMENTS" echo "- Errors: $ERRORS" # Example commit git commit -m "docs: Add and update DartDoc comments - Add DartDoc to classes, enums, and extensions that don't meet standards - Update comments under 30 characters to meet standards - Uniformly add Claude markers Execution results: - Added: $ADDED_COMMENTS - Updated: $UPDATED_COMMENTS Generated by Claude ๐ค"
Execution Success Criteria
1. **Complet
A collection of commands, roles, and automation scripts for Claude Code. Automate your workflow without unnecessary confirmations, allowing you to focus on what matters.
Repo: wasabeef/claude-code-cookbook
Other skills on claude-code-cookbook.
- /analyze-dependencies
Analyze project dependencies and evaluate architectural health. Trigger with "analyze dependencies", "detect circular dependencies", "architecture issues?", "check module coupling", "find layer violations". Generates dependency matrix, fan-in/fan-out analysis, and prioritized
Open skill - /analyze-performance
Performance analysis based on Core Web Vitals with UX scoring. Trigger with "analyze performance", "improve speed", "check Core Web Vitals", "page speed", "improve LCP", "identify performance issues".
Open skill - /check-fact
Verify information accuracy against codebase and documentation. Trigger with "is this correct?", "fact check", "verify this", "is this accurate?".
Open skill - /check-prompt
Evaluate and improve AI prompt quality. Trigger with "check this prompt", "evaluate prompt quality", "improve this prompt".
Open skill - /commit-message
Generate commit messages from staged changes. Trigger with "suggest commit message", "generate commit message", "what should the commit say?", "write commit message".
Open skill - /context7
Search technical documentation via Context7 MCP. Trigger with "check the docs", "look up documentation", "how to use this library?", "API reference".
Open skill

