SECURITY REVIEW
Not yet assessed
Review the original instructions and requested permissions before installing.
No security review is available for this catalog entry yet.
Apply coding standards for architecture, reuse, imports, and maintainability, with specific React and Next.js rules.
Use when enforcing Axel's coding standards across any language for architecture, reuse, imports, and maintainability, plus React/Next.js-specific rules only where explicitly stated (for example useEffect and JSX handlers).
Review the original instructions and requested permissions before installing.
No security review is available for this catalog entry yet.
How clearly the skill guides your agent, how complete its workflow is, and how you can check the outcome.
No quality assessment is available for this catalog entry yet.
Original instructions from the publisher’s SKILL.md
# Axel Code Forge ## Purpose Enforce Axel's coding conventions with focus on consistency, reuse, and maintainability. Apply React/Next.js rules only where explicitly marked. ## Scope - **General (any language)**: architecture, modularity, imports, constants, null safety, decomposition, reuse. - **React/Next.js only**: rules tied to React/Next APIs or JSX semantics, explicitly tagged. ## When to Use - Any feature or bugfix where code quality matters - Refactors and file organization - Code review and quality hardening - UI implementation with design tokens ## Non-Negotiable Rules 1. [General] Use absolute imports only. Avoid relative imports in app code. 2. [General] Avoid hardcoded values. Use constants, shared config, design tokens, or enums. 3. [React/Next] Avoid inline functions in JSX handlers (`onClick`, `onChange`). Define stable handlers. 4. [General] Never assume values exist. Guard nullable/optional values before use. 5. [React/Next] Keep hooks focused. Avoid long `useEffect` and large state blobs. 6. [General] No God components. Split large components into atomic, reusable units. 7. [General/UI] Prefer project theme/color tokens over raw Tailwind palette classes. 8. [General] Avoid comments by default. One concise English comment only for critical context. 9. [General/UI] Keep SVGs outside feature pages. Place in icons folder or shared components. 10. [General] Prioritize reusable components and utility functions. 11. [General] Use feature-based separation (atomic split by concern). 12. [General] Follow existing project patterns for shared primitives. 13. [React/Next] Follow existing patterns for Redux and custom hooks. ## Implementation Checklist - [ ] Imports are absolute and aligned with aliases - [ ] Literals extracted to constants when reused - [ ] JSX handlers reference named functions (React only) - [ ] Optional values guarded before dereference - [ ] Effects are single-purpose with clear deps (React only) - [ ] Component size controlled - [ ] Theme tokens used before generic colors - [ ] No unnecessary comments - [ ] SVGs externalized to icon system - [ ] Logic duplication reduced - [ ] Existing patterns respected ## Preferred Refactor Direction When touching complex files: 1. Extract constants and mappings 2. Extract row/item subcomponents 3. Extract pure helper functions 4. Reduce inline object/function creation in render 5. Keep behavior identical unless requirements demand change --- ## Auto-Update Protocol > HEFESTO manages this skill. User preferences evolve. ### Detection Triggers Detect when user teaches a preference: - **Explicit**: "siempre", "nunca", "preferimos", "regla:", "acordate" - **Implicit**: Correcting code with a pattern, repeating a preference - **Review**: "esto esta mal porque...", "mejor asi..." ### Update Flow ``` 1. HEFESTO detects preference pattern 2. Ask: "Agrego esto a axel-code-forge?" 3. If approved: a) Check for conflicts with existing rules b) If conflict: "Esto choca con regla X. Cual priorizamos?" c) If clear: Add to Non-Negotiable Rules d) Confirm: "Agregado: [rule summary]" 4. If rejected: Note in session, don't persist ``` ### Conflict Resolution When new rule conflicts with existing: ``` HEFESTO: "La regla nueva 'always use ternaries' choca con la existente 'avoid nested ternaries'. Cual priorizamos? 1. Keep existing, reject new 2. Replace existing with new 3. Merge: allow simple ternaries, avoid nested" User: "3" HEFESTO: "Actualizado: - [General] Use simple ternaries. Avoid nested ternaries (use if/else)." ``` ### Rule Format for New Additions ```markdown X. [Scope] Rule description in imperative form. ``` Where: - X = next number in sequence - Scope = General | React/Next | General/UI - Description = clear, actionable statement ### Example Updates **User says**: "Nunca uses `any`, siempre `unknown`" ``` HEFESTO: "Agrego a axel-code-forge: 14. [General] Never use `any`. Prefer `unknown` with type guards. Dale?" ``` **User corrects code**: Changes `arr.map(x => x.id)` to `arr.map((item) => item.id)` ``` HEFESTO: "Noto que preferis parametros descriptivos en callbacks. Agrego? 15. [General] Use descriptive parameter names in callbacks (item, user, not x, i). Dale?" ``` ### Validation Before adding rule, HEFESTO checks: 1. Not redundant with existing rule 2. Not contradictory to existing rule 3. Follows existing rule format 4. Is actionable (not vague) If validation fails, explain why and suggest alternative wording.