detect-ci-antipatterns

Detects CI/CD antipatterns in pipeline configurations. Identifies slow pipelines, security issues, maintenance problems, and provides remediation guidance.

59 stars

Best use case

detect-ci-antipatterns is best used when you need a repeatable AI agent workflow instead of a one-off prompt.

Detects CI/CD antipatterns in pipeline configurations. Identifies slow pipelines, security issues, maintenance problems, and provides remediation guidance.

Teams using detect-ci-antipatterns should expect a more consistent output, faster repeated execution, less prompt rewriting.

When to use this skill

  • You want a reusable workflow that can be run more than once with consistent structure.

When not to use this skill

  • You only need a quick one-off answer and do not need a reusable workflow.
  • You cannot install or maintain the underlying files, dependencies, or repository context.

Installation

Claude Code / Cursor / Codex

$curl -o ~/.claude/skills/detect-ci-antipatterns/SKILL.md --create-dirs "https://raw.githubusercontent.com/dykyi-roman/awesome-claude-code/main/skills/detect-ci-antipatterns/SKILL.md"

Manual Installation

  1. Download SKILL.md from GitHub
  2. Place it in .claude/skills/detect-ci-antipatterns/SKILL.md inside your project
  3. Restart your AI agent — it will auto-discover the skill

How detect-ci-antipatterns Compares

Feature / Agentdetect-ci-antipatternsStandard Approach
Platform SupportNot specifiedLimited / Varies
Context Awareness High Baseline
Installation ComplexityUnknownN/A

Frequently Asked Questions

What does this skill do?

Detects CI/CD antipatterns in pipeline configurations. Identifies slow pipelines, security issues, maintenance problems, and provides remediation guidance.

Where can I find the source code?

You can find the source code on GitHub using the link provided at the top of the page.

SKILL.md Source

# CI Antipattern Detector

Detects common CI/CD antipatterns and provides remediation guidance.

## When to Use

- Reviewing GitHub Actions workflow files
- Auditing CI pipeline performance (slow builds)
- Checking CI security configuration
- Reducing pipeline maintenance burden
- Improving build reliability

## Analysis Approach

1. Parse CI configuration files (`.github/workflows/*.yml`)
2. Apply detection rules by category (Performance, Security, Maintenance, Reliability)
3. Calculate impact per antipattern (time cost, risk level)
4. Generate prioritized fix recommendations

## Detection Rules

| ID | Antipattern | Detection | Category |
|----|-------------|-----------|----------|
| PERF-001 | Sequential jobs | `needs` on independent jobs | Performance |
| PERF-002 | No caching | Missing `actions/cache` | Performance |
| PERF-003 | Duplicate installs | Multiple `composer install` | Performance |
| SEC-001 | Secrets in logs | `echo.*secrets\.` | Security |
| SEC-002 | Mutable actions | `uses:.*@(main\|master\|v\d)$` | Security |
| SEC-003 | No permissions | Missing `permissions:` | Security |
| SEC-004 | Unsafe PR target | `pull_request_target` + untrusted checkout | Security |
| MAINT-001 | Duplicated config | Similar job definitions | Maintenance |
| MAINT-002 | Hardcoded values | Repeated version strings | Maintenance |
| MAINT-003 | No workflow reuse | Identical steps across workflows | Maintenance |
| REL-001 | No timeouts | Missing `timeout-minutes` | Reliability |
| REL-002 | No health checks | Services without `options:` | Reliability |
| REL-003 | No retry | Network ops without retry logic | Reliability |

## Severity Classification

| Category | Severity |
|----------|----------|
| Security (SEC-*) | Critical |
| Performance (PERF-*) | Major |
| Reliability (REL-*) | Major |
| Maintenance (MAINT-*) | Minor |

## Output Format

```markdown
# CI Antipattern Analysis

**File:** `.github/workflows/ci.yml`
**Total Antipatterns:** N

## Summary by Category

| Category | Count | Impact |
|----------|-------|--------|
| Performance | N | +X min/build |
| Security | N | Risk level |
| Maintenance | N | Technical debt |
| Reliability | N | Flaky builds |

## Detected Antipatterns

### [ID]: [Title]
**Severity:** Critical/Major/Minor
**Impact:** [Specific impact]
**Location:** Lines X-Y

**Current:**
[Problematic configuration]

**Fix:**
[Corrected configuration]

## Estimated Improvements

| Metric | Before | After | Improvement |
|--------|--------|-------|-------------|
| Build time | X min | Y min | -Z% |
| Security score | C | A | +N grades |

## Remediation Priority

1. **Immediate:** Security issues
2. **This sprint:** Performance issues
3. **Next sprint:** Maintenance issues
```

## Usage

Provide:
- Path to CI configuration
- Specific categories to focus on (optional)

The detector will:
1. Parse configuration
2. Apply detection rules
3. Calculate impact
4. Generate prioritized fixes

## References

- `references/patterns.md` — detailed antipattern examples with problematic and fixed YAML configurations for all categories (Performance, Security, Maintenance, Reliability)

Related Skills

detect-unnecessary-loops

59
from dykyi-roman/awesome-claude-code

Detects unnecessary loop patterns in PHP code. Finds nested loop inefficiency, redundant iterations, in-loop operations that could be batched, loop invariant code.

detect-test-smells

59
from dykyi-roman/awesome-claude-code

Detects test antipatterns and code smells in PHP test suites. Identifies 15 smells (Logic in Test, Mock Overuse, Fragile Tests, Mystery Guest, etc.) with fix recommendations and refactoring patterns for testability.

detect-docker-antipatterns

59
from dykyi-roman/awesome-claude-code

Detects Docker antipatterns in PHP projects. Identifies layer ordering issues, cache invalidation, bloated images, and configuration smells.

detect-code-smells

59
from dykyi-roman/awesome-claude-code

Detects code smells in PHP codebases. Identifies God Class, Feature Envy, Data Clumps, Long Parameter List, Long Method, Primitive Obsession, Message Chains, Inappropriate Intimacy. Generates actionable reports with refactoring recommendations.

detect-architecture-pattern

59
from dykyi-roman/awesome-claude-code

Detects architectural patterns (MVC, DDD, Hexagonal, CQRS, Layered, Event Sourcing, Microservice) from namespace structure, interface placement, and dependency direction. Outputs confidence score per pattern.

yii-knowledge

59
from dykyi-roman/awesome-claude-code

Yii framework knowledge base. Provides Yii3 modular architecture, DDD integration, PSR-7/PSR-15 compliance, persistence, DI, security (RBAC, auth), event system (PSR-14), queue/jobs, infrastructure components (cache, rate limiter, HTTP client), testing, and antipatterns for Yii PHP projects.

troubleshooting-template

59
from dykyi-roman/awesome-claude-code

Generates troubleshooting guides and FAQ sections for PHP projects. Creates problem-solution documentation.

trace-request-lifecycle

59
from dykyi-roman/awesome-claude-code

Traces full request lifecycle from Router through Middleware, Controller, UseCase, Repository to Response. Documents HTTP methods, routes, middleware stack, response codes, and error handling paths.

trace-data-transformation

59
from dykyi-roman/awesome-claude-code

Maps data transformation chains — Request DTO to Command to Entity to Response DTO. Identifies mappers, serializers, type conversions, and data loss points across layer boundaries.

testing-knowledge

59
from dykyi-roman/awesome-claude-code

Testing knowledge base for PHP 8.4 projects. Provides testing pyramid, AAA pattern, naming conventions, isolation principles, DDD testing guidelines, and PHPUnit patterns.

task-progress-knowledge

59
from dykyi-roman/awesome-claude-code

TaskCreate pattern guidelines for progress tracking in coordinator agents

symfony-knowledge

59
from dykyi-roman/awesome-claude-code

Symfony framework knowledge base. Provides architecture, DDD integration, persistence, DI, security, messenger, workflow, events, infrastructure components, testing, and antipatterns for Symfony PHP projects.