IM

Improve existing code quality and features through TDD.

Install

mkdir -p .claude/skills/improvement && curl -L -o skill.zip "https://agentskills.codes/api/skills/download/3155" && unzip -o skill.zip -d .claude/skills/improvement && rm skill.zip

Installs to .claude/skills/improvement

Activation

This is the description your AI agent reads to decide when to run this skill — the better it matches your request, the more reliably it fires.

Guide for making improvements to existing ClaudeBar functionality using TDD. Use this skill when:
(1) Enhancing existing features (not adding new ones)
(2) Improving UX, performance, or code quality
(3) User asks "improve X", "make Y better", or "enhance Z"
(4) Small enhancements that don't require full architecture design
For NEW features, use implement-feature skill instead.
379 chars · catalog description✓ has a “when” triggerlonger than Claude Code's old 250-char listing cap (fine on current versions)
Intermediate

Key capabilities

  • Refactor existing feature logic
  • Improve UI/UX components
  • Optimize performance via caching or lazy loading
  • Enhance domain model behavior
  • Verify improvements with TDD

How it works

The skill follows a TDD cycle where a failing test is written to describe the improved behavior, followed by implementation and verification against existing tests.

Inputs & outputs

You give it
Existing code and improvement goal
You get back
Refactored code with passing tests

When to use improvement

  • Improve performance of existing code
  • Refactor UI for better user experience
  • Enhance existing feature logic
  • Apply quality improvements via tests

About this skill

Improve ClaudeBar Feature

Make improvements to existing functionality using TDD and rich domain design.

When to Use This vs Other Skills

ScenarioSkill to Use
Enhance existing behaviorimprovement (this skill)
Fix broken behaviorfix-bug
Add new featureimplement-feature
Add new AI provideradd-provider

Workflow

┌─────────────────────────────────────────────────────────────┐
│  1. UNDERSTAND CURRENT STATE                                 │
├─────────────────────────────────────────────────────────────┤
│  • Read existing code                                        │
│  • Understand current behavior                               │
│  • Identify what to improve                                  │
└─────────────────────────────────────────────────────────────┘
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  2. WRITE TEST FOR IMPROVED BEHAVIOR (Red)                   │
├─────────────────────────────────────────────────────────────┤
│  • Test describes the IMPROVED behavior                      │
│  • Test should FAIL initially                                │
│  • Keep existing tests passing                               │
└─────────────────────────────────────────────────────────────┘
                            │
                            ▼
┌─────────────────────────────────────────────────────────────┐
│  3. IMPLEMENT & VERIFY (Green)                               │
├─────────────────────────────────────────────────────────────┤
│  • Implement the improvement                                 │
│  • New test PASSES                                           │
│  • All existing tests still pass                             │
└─────────────────────────────────────────────────────────────┘

Types of Improvements

1. UX Improvements

Enhance user experience without changing core logic:

Examples:
- Settings view scrolls on small screens
- Better loading indicators
- Improved accessibility
- Cleaner visual layout

Test approach: UI behavior tests or manual verification

2. Domain Improvements

Enhance domain model behavior:

Examples:
- Add computed property for common queries
- Improve status calculation
- Add convenience methods
- Better encapsulation

Test approach: State-based domain tests

@Test func `model provides convenient access to lowest quota`() {
    // Given
    let snapshot = UsageSnapshot(quotas: [quota1, quota2, quota3])

    // Then - new convenience property
    #expect(snapshot.lowestQuota == quota2)
}

3. Infrastructure Improvements

Enhance probes, storage, or adapters:

Examples:
- Better error messages
- More robust parsing
- Improved timeout handling
- Caching support

Test approach: Behavior tests with mocked dependencies

4. Performance Improvements

Optimize existing functionality:

Examples:
- Reduce redundant API calls
- Lazy loading
- Parallel execution
- Caching

Test approach: Behavior tests (same results, better performance)

TDD Pattern (Chicago School)

Write Test for Improved Behavior

@Suite
struct {Component}Tests {

    @Test func `{describes improved behavior}`() {
        // Given - standard setup
        let component = Component(...)

        // When - action
        let result = component.improvedMethod()

        // Then - verify improved behavior
        #expect(result.hasImprovedProperty)
    }
}

Keep Existing Tests

Improvements should NOT break existing behavior:

# Run all tests to ensure no regressions
swift test

Architecture Reference

Full documentation: docs/ARCHITECTURE.md

LayerLocationImprovement Examples
DomainSources/Domain/New computed properties, convenience methods
InfrastructureSources/Infrastructure/Better parsing, error handling
AppSources/App/UI enhancements, accessibility

Guidelines

Do

  • Keep changes focused and minimal
  • Maintain existing behavior
  • Add tests for new behavior
  • Follow existing code patterns
  • Update CHANGELOG

Don't

  • Over-engineer simple improvements
  • Change unrelated code
  • Break existing tests
  • Add features (use implement-feature)
  • Skip tests for "small" changes

Checklist

  • Current behavior understood
  • Improvement scope defined (minimal)
  • Test for improved behavior written
  • Test FAILS before implementation
  • Improvement implemented
  • New test PASSES
  • All existing tests still pass (swift test)
  • CHANGELOG updated with improvement

When not to use it

  • Adding entirely new features
  • Fixing broken functionality
  • Large-scale architectural redesigns

Limitations

  • Scope must be minimal and focused
  • Requires existing test suite for regression verification

How it compares

It enforces a strict TDD workflow to ensure improvements do not introduce regressions in existing functionality.

Compared to similar skills

improvement side by side with the closest alternatives in the catalog.

SkillInstallsUpdatedSafetyDifficulty
improvement (this skill)17moReviewIntermediate
qlty-check57moReviewBeginner
solid56moNo flagsAdvanced
code-refactor37moReviewIntermediate

Try saying

Example prompts that trigger this skill in your AI assistant.

Search skills

Search the agent skills registry