CtrlK
BlogDocsLog inGet started
Tessl Logo

dpearson2699/swift-ios-skills

Agent skills for iOS, iPadOS, Swift, SwiftUI, and modern Apple framework development.

71

Quality

89%

Does it follow best practices?

Impact

No eval scenarios have been run

SecuritybySnyk

Advisory

Suggest reviewing before use

Overview
Quality
Evals
Security
Files

rule-reference.mdskills/swiftlint/references/

Bundled Rule Index

This file is an exhaustive local index of SwiftLint rule identifiers grouped by the official rule-directory categories. Use it to avoid leaving a rule out when working offline or scanning the repo quickly.

Treat the official rule directory and swiftlint rules <identifier> as the source of truth for current descriptions, configuration keys, autocorrect support, and future rule additions or reclassifications.

Contents

  • Default Rules
  • Opt-in Rules
  • Analyzer Rules

Default Rules

These rules are enabled automatically. Disable specific ones via disabled_rules in .swiftlint.yml.

attribute_name_spacing, blanket_disable_command, block_based_kvo, class_delegate_protocol, closing_brace, closure_parameter_position, colon, comma, comment_spacing, compiler_protocol_init, computed_accessors_order, control_statement, custom_rules, cyclomatic_complexity, deployment_target, discouraged_direct_init, duplicate_conditions, duplicate_enum_cases, duplicate_imports, duplicated_key_in_dictionary_literal, dynamic_inline, empty_enum_arguments, empty_parameters, empty_parentheses_with_trailing_closure, file_length, for_where, force_cast, force_try, function_body_length, function_name_whitespace, function_parameter_count, generic_type_name, identifier_name, implicit_getter, implicit_optional_initialization, inclusive_language, invalid_swiftlint_command, invisible_character, is_disjoint, large_tuple, leading_whitespace, legacy_cggeometry_functions, legacy_constant, legacy_constructor, legacy_hashing, legacy_nsgeometry_functions, legacy_random, line_length, mark, multiple_closures_with_trailing_closure, nesting, no_fallthrough_only, no_space_in_method_call, non_optional_string_data_conversion, notification_center_detachment, ns_number_init_as_function_reference, nsobject_prefer_isequal, opening_brace, optional_data_string_conversion, orphaned_doc_comment, prefer_type_checking, private_over_fileprivate, private_unit_test, protocol_property_accessors_order, reduce_boolean, redundant_discardable_let, redundant_objc_attribute, redundant_sendable, redundant_set_access_control, redundant_string_enum_value, redundant_void_return, return_arrow_whitespace, self_in_property_initialization, shorthand_operator, statement_position, static_over_final_class, superfluous_disable_command, switch_case_alignment, syntactic_sugar, todo, trailing_comma, trailing_newline, trailing_semicolon, trailing_whitespace, type_body_length, type_name, unavailable_condition, unneeded_break_in_switch, unneeded_override, unneeded_synthesized_initializer, unused_closure_parameter, unused_control_flow_label, unused_enumerated, unused_optional_binding, unused_setter_value, valid_ibinspectable, vertical_parameter_alignment, vertical_whitespace, void_function_in_ternary, void_return, xctfail_message


Opt-in Rules

These rules are disabled by default. Enable selectively via opt_in_rules in .swiftlint.yml.

accessibility_label_for_image, accessibility_trait_for_button, anonymous_argument_in_multiline_closure, array_init, async_without_await, attributes, balanced_xctest_lifecycle, closure_body_length, closure_end_indentation, closure_spacing, collection_alignment, comma_inheritance, conditional_returns_on_newline, contains_over_filter_count, contains_over_filter_is_empty, contains_over_first_not_nil, contains_over_range_nil_comparison, contrasted_opening_brace, convenience_type, direct_return, discarded_notification_center_observer, discouraged_assert, discouraged_default_parameter, discouraged_none_name, discouraged_object_literal, discouraged_optional_boolean, discouraged_optional_collection, empty_collection_literal, empty_count, empty_string, empty_xctest_method, enum_case_associated_values_count, expiring_todo, explicit_acl, explicit_enum_raw_value, explicit_init, explicit_top_level_acl, explicit_type_interface, extension_access_modifier, fallthrough, fatal_error_message, file_header, file_name, file_name_no_space, file_types_order, final_test_case, first_where, flatmap_over_map_reduce, force_unwrapping, function_default_parameter_at_end, ibinspectable_in_extension, identical_operands, implicit_return, implicitly_unwrapped_optional, incompatible_concurrency_annotation, indentation_width, joined_default_parameter, last_where, legacy_multiple, legacy_objc_type, legacy_uigraphics_function, let_var_whitespace, literal_expression_end_indentation, local_doc_comment, lower_acl_than_parent, missing_docs, modifier_order, multiline_arguments, multiline_arguments_brackets, multiline_call_arguments, multiline_function_chains, multiline_literal_brackets, multiline_parameters, multiline_parameters_brackets, nimble_operator, no_empty_block, no_extension_access_modifier, no_grouping_extension, no_magic_numbers, non_overridable_class_declaration, nslocalizedstring_key, nslocalizedstring_require_bundle, number_separator, object_literal, one_declaration_per_file, operator_usage_whitespace, optional_enum_case_matching, overridden_super_call, override_in_extension, pattern_matching_keywords, period_spacing, prefer_asset_symbols, prefer_condition_list, prefer_key_path, prefer_nimble, prefer_self_in_static_references, prefer_self_type_over_type_of_self, prefer_zero_over_explicit_init, prefixed_toplevel_constant, private_action, private_outlet, private_subject, private_swiftui_state, prohibited_interface_builder, prohibited_super_call, quick_discouraged_call, quick_discouraged_focused_test, quick_discouraged_pending_test, raw_value_for_camel_cased_codable_enum, reduce_into, redundant_final, redundant_nil_coalescing, redundant_self, redundant_type_annotation, required_deinit, required_enum_case, return_value_from_void_function, self_binding, shorthand_argument, shorthand_optional_binding, single_test_class, sorted_enum_cases, sorted_first_last, sorted_imports, static_operator, strict_fileprivate, strong_iboutlet, superfluous_else, switch_case_on_newline, test_case_accessibility, toggle_bool, trailing_closure, type_contents_order, unavailable_function, unhandled_throwing_task, unneeded_escaping, unneeded_parentheses_in_closure_argument, unneeded_throws_rethrows, unowned_variable_capture, untyped_error_in_catch, unused_parameter, variable_shadowing, vertical_parameter_alignment_on_call, vertical_whitespace_between_cases, vertical_whitespace_closing_braces, vertical_whitespace_opening_braces, weak_delegate, xct_specific_matcher, yoda_condition


Analyzer Rules

These rules require the Swift compiler's type-checked AST. Run via swiftlint analyze --compiler-log-path <log>. See the custom rules and analyze reference for the full workflow.

capture_variable, explicit_self, typesafe_array_init, unused_declaration, unused_import

skills

CHANGELOG.md

README.md

tile.json