All authors

Claude Skills by Amey-Thakur
github.com/Amey-Thakur1,001 skills16 installs1,473 views
- Feature Flags HygieneShip code behind flags without accumulating flag rot, through disciplined naming, expiry, and cleanup sweeps. Use when adding a feature flag or auditing the flags already live in a codebase.Votes: 0GitHub stars: 7
- Function SizeSize functions to one clear job, extracting when they blur and leaving them long when the logic is linear. Use when a function grows hard to name or scan.Votes: 0GitHub stars: 7
- Guard ClausesFlatten nested conditionals into early returns that handle edge cases up front and keep the main path unindented. Use when logic marches rightward into deep nesting.Votes: 0GitHub stars: 7
- Immutability DefaultsMake immutability the default so aliasing bugs turn into compile errors or no-ops instead of action at a distance. Use when designing data structures, state updates, or any value shared across threads or call sites.Votes: 0GitHub stars: 7
- Legacy Code ChangesChange untested legacy code safely using characterization tests, seams, and the sprout method. Use when you must modify code that has no tests and you cannot prove your change is harmless.Votes: 0GitHub stars: 7
- Linting SetupTriage lint rules so bug-catchers are errors, style is left to the formatter, and every suppression carries a reason. Use when configuring a linter, taming warning noise, or setting a suppressions policy.Votes: 0GitHub stars: 7
- Magic NumbersReplace unexplained literal values with named constants that carry their meaning, without over-formalizing the obvious. Use when a bare number or string encodes a rule.Votes: 0GitHub stars: 7
- Module BoundariesSplit modules along axes of change so things that change together live together and dependencies point one way. Use when a codebase groups by technical layer and every feature edit spans many folders.Votes: 0GitHub stars: 7
- Naming ThingsChoose names that carry meaning so readers grasp intent without chasing definitions. Use when naming variables, functions, types, or files, or when a name reads as vague.Votes: 0GitHub stars: 7
- Null HandlingMake absence explicit in the type and resolve it at the edges so the interior never dereferences a surprise null. Use when designing return types, parsing external input, or chasing null-reference crashes.Votes: 0GitHub stars: 7
- Pr AuthoringShape pull requests a reviewer can actually hold in their head, through small size, a why-first description, and a self-review pass. Use when opening a pull request or preparing a change for review.Votes: 0GitHub stars: 7
- Premature AbstractionResist extracting shared code until a third real use reveals the true axis of variation. Use when tempted to add a helper, base class, config object, or generic layer on one or two examples.Votes: 0GitHub stars: 7
- RefactoringImprove code structure in small, always-green steps without changing behavior. Use when asked to clean up, simplify, restructure, or de-duplicate working code.Votes: 0GitHub stars: 7
- Rewrite Vs RefactorDecide whether to refactor code in place or rewrite it from scratch using risk math, not frustration. Use when a component feels beyond repair and someone proposes starting over.Votes: 0GitHub stars: 7
- Strangler FigReplace a legacy system incrementally behind a routing facade, moving one slice at a time instead of a big-bang rewrite. Use when retiring or rewriting a system that must keep running throughout.Votes: 0GitHub stars: 7
- Style GuidesWrite a code style guide people actually follow by deciding once, automating enforcement, and logging exceptions. Use when style debates recur in review or a new guide is being drafted.Votes: 0GitHub stars: 7
- Tech Debt RegisterTrack technical debt deliberately by framing each item as interest owed and budgeting steady paydown. Use when debt is piling up as vague complaints and you need to make it fundable work.Votes: 0GitHub stars: 7
- Todo HygieneKeep TODO comments actionable by requiring an owner, a ticket, and an expiry, or deleting them. Use when writing, reviewing, or sweeping in-code TODO, FIXME, and HACK markers.Votes: 0GitHub stars: 7
- Type SafetyModel data so illegal states will not compile, then turn the checker to strict and let it prove correctness for free. Use when designing types, modeling state machines, or hardening a loosely typed module.Votes: 0GitHub stars: 7
- Algorithmic ComplexityReason about how running time and memory grow with input size, and know when the asymptotic answer is the wrong one. Use when choosing an approach, reviewing code that loops over data, or explaining why something slows at scale.Votes: 0GitHub stars: 7
- Binary Data RepresentationWork with bytes, endianness, alignment, and binary formats so data written by one system is read correctly by another. Use when parsing binary protocols, file formats, or debugging corrupted data.Votes: 0GitHub stars: 7
- Compilers And ToolchainsUnderstand what happens between source and running program, so build errors, linking failures, and optimisation surprises become tractable. Use when builds fail obscurely or behaviour differs between debug and release.Votes: 0GitHub stars: 7
- Concurrency PrimitivesUse locks, atomics, channels, and barriers correctly, and know which class of bug each prevents. Use when writing code that shares state between threads.Votes: 0GitHub stars: 7
- Cpu ArchitectureUnderstand caches, branches, and pipelines well enough to explain why equivalent code differs in speed by an order of magnitude. Use when optimising hot code or when performance does not match operation counts.Votes: 0GitHub stars: 7
- Data Structure SelectionChoose the structure whose operations match how the data will actually be used, rather than defaulting to a list or a map. Use when designing anything that stores and queries data in memory.Votes: 0GitHub stars: 7
- File SystemsUnderstand how files, directories, and durability actually work, so data written is data that survives a crash. Use when writing files that matter or debugging corruption and permission problems.Votes: 0GitHub stars: 7
- Floating Point BehaviorReason about rounding, precision limits, and comparison in floating point so numerical results are predictable. Use when money, physics, aggregation, or any comparison of computed values is involved.Votes: 0GitHub stars: 7
- Networking StackUnderstand the layers between a request and its response, so latency, connection failures, and timeouts can be attributed to the right layer. Use when network behaviour is unexplained or performance varies by geography.Votes: 0GitHub stars: 7
- Operating System BasicsUnderstand what the kernel does for your process, so system-level behaviour such as scheduling, file descriptors, and signals stops being mysterious. Use when debugging behaviour that application-level reasoning cannot explain.Votes: 0GitHub stars: 7
- Process And ThreadsChoose between processes, threads, and asynchronous concurrency based on isolation, memory sharing, and failure behaviour. Use when deciding how to run work concurrently.Votes: 0GitHub stars: 7
- Virtual MemoryUnderstand address translation, paging, and the memory hierarchy well enough to explain swap thrashing, page faults, and why memory usage numbers disagree. Use when memory behaviour is confusing or a process is slower than its CPU usage suggests.Votes: 0GitHub stars: 7
- Css AnimationsAnimate with compositor-friendly properties, honest durations, and reduced-motion fallbacks. Use when adding UI motion or fixing janky, battery-hungry animations.Votes: 0GitHub stars: 7
- Css ArchitectureOrganize stylesheets with scoping, co-location, and layer order so CSS stays deletable as the codebase grows. Use when structuring styles for a growing app or auditing a stylesheet nobody dares touch.Votes: 0GitHub stars: 7
- Css CascadeManage specificity with layers, :where, and low-specificity selectors so overrides stay predictable. Use when styles fight each other, !important spreads, or you are setting selector conventions for a codebase.Votes: 0GitHub stars: 7
- Css DebuggingDiagnose layout, stacking, and overflow bugs by isolating the failing rule with devtools instead of guessing. Use when an element is misplaced, invisible, unscrollable, or styled by something you cannot find.Votes: 0GitHub stars: 7
- Css LayoutChoose between flexbox and grid by content shape and build layouts that survive real content. Use when structuring a page or component layout, or fixing overflow and alignment bugs.Votes: 0GitHub stars: 7
- Css ThemingBuild a custom-property token system with primitive and semantic tiers that supports runtime theme switching. Use when setting up design tokens, adding themes, or refactoring hardcoded colors.Votes: 0GitHub stars: 7
- Dark ModeImplement dark mode that honors system preference, allows manual override, and never flashes the wrong theme. Use when adding dark mode or fixing its flash, contrast, or image problems.Votes: 0GitHub stars: 7
- Responsive DesignBuild layouts that adapt through fluid sizing, container queries, and content-driven breakpoints. Use when making a design work across screen sizes or replacing a brittle pile of media queries.Votes: 0GitHub stars: 7
- Utility CssUse Tailwind-style utilities with discipline, extracting components at the right threshold and keeping class lists readable. Use when working in a utility-first codebase or deciding whether and how to adopt one.Votes: 0GitHub stars: 7
- Web TypographySet a type scale, measure, and loading strategy that make text readable and stable across devices. Use when establishing typography for a site or fixing cramped, shifting, or slow-loading text.Votes: 0GitHub stars: 7
- Community SupportRun a public forum where users help each other, with seeding, moderation, and staff presence that keeps answers accurate. Use when support volume exceeds staffing and questions are broadly shareable.Votes: 0GitHub stars: 7
- Customer Feedback LoopTurn support conversations into product change through structured tagging, aggregation, and a route into the roadmap. Use when support hears the same complaints and nothing changes.Votes: 0GitHub stars: 7
- Difficult Customer ConversationsHandle angry, distressed, or unreasonable customers without escalating the conflict or capitulating on things you cannot give. Use when a conversation has become emotional rather than transactional.Votes: 0GitHub stars: 7
- Knowledge Base DesignBuild self-serve documentation that answers questions before they become tickets, organised by what people search for. Use when the same questions arrive repeatedly.Votes: 0GitHub stars: 7
- Proactive SupportReach customers before they contact you, when telemetry or a known issue means they are about to have a problem. Use when failures are detectable before the customer notices or writes in.Votes: 0GitHub stars: 7
- Support AnalyticsMeasure support with metrics that reflect customer outcomes rather than agent activity, and use them to reduce ticket volume. Use when support is measured by throughput and quality is drifting.Votes: 0GitHub stars: 7
- Support EscalationMove a ticket to engineering or management with the context needed to act, and set expectations with the customer while it moves. Use when a ticket cannot be resolved at the current level.Votes: 0GitHub stars: 7
- Support HandoffTransfer a ticket between agents, shifts, or teams without the customer repeating themselves. Use when work crosses people and context is being lost.Votes: 0GitHub stars: 7
- Support MacrosBuild reusable reply templates that speed common answers without making replies feel automated. Use when agents retype the same explanations daily.Votes: 0GitHub stars: 7