argocd-expert — Claude Code skill for ArgoCD GitOps
A skill that turns your agent into an ArgoCD operator: GitOps deploys, app sync, AppProject and ApplicationSet. Useful when your deployment lives in Git.
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a claude-codeWhat argocd-expert does
The skill gives the agent working knowledge of ArgoCD: argocd commands for apps, repos, clusters and projects, plus the Application CRD, AppProject and ApplicationSet. Ask about sync strategies, rollbacks, RBAC or sync waves and you get manifests to go with the answer.
It also carries a set of practices. Turn on prune and selfHeal in auto-sync. Split apps by component instead of shipping one giant Application. Order resources with argocd.argoproj.io/sync-wave. The anti-pattern section covers manual-only sync, missing RBAC and orphaned resources. A reference file, references/CORE_CONCEPTS.md, is read on demand.
ArgoCD 2.9 or newer and Kubernetes 1.28 or newer are required. The skill shells out to argocd and kubectl through Bash, so both CLIs have to be on your PATH — without them the commands won't run.
What it helps with
- set up auto-sync with pruning and self-heal for an app
- order resources with sync waves so they deploy in sequence
- scope team access with project-level RBAC roles
- manage several clusters declaratively with ApplicationSet
- roll back a bad release with
argocd app rollback
Example prompts for the agent
- Create an Application for the service from our repo, path
k8s/overlays/production, namespaceproduction - Enable automated sync with
prune: trueandselfHeal: truein the syncPolicy - Add a sync window so deploys only run on weekdays from 9am
How to install argocd-expert
1Skills CLI (Vercel)
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a claude-code2Manually: put the files in place
~/.claude/skills/argocd-expert/SKILL.mdCopy the whole skill folder; for one project use .claude/skills/argocd-expert/
1Skills CLI (Vercel)
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a codex2Manually: put the files in place
.agents/skills/argocd-expert/SKILL.mdFor all projects use ~/.agents/skills/
1Skills CLI (Vercel)
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a cursor2Manually: put the files in place
.cursor/skills/argocd-expert/SKILL.mdCursor also reads .agents/skills/ and .claude/skills/
1GitHub CLI
gh skill install personamanagmentlayer/pcl argocd-expert2Manually: put the files in place
.github/skills/argocd-expert/SKILL.md1Skills CLI (Vercel)
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a gemini-cli2Platform CLI
gemini skills install https://github.com/personamanagmentlayer/pcl --path stdlib/devops/argocd-expertManually: put the files in place
.devin/skills/argocd-expert/SKILL.mdThe legacy .windsurf/skills/ path still works
Skills CLI (Vercel)
npx skills add personamanagmentlayer/pcl --skill argocd-expert -a opencodeClaude.ai
Zip the folder and upload it in Settings → Capabilities → Skills
Step by step, with commands for each platform: How to install skills in Claude Code: five ways
Questions about argocd-expert
How do I install argocd-expert in Claude?
Run npx skills add personamanagmentlayer/pcl --skill argocd-expert -a claude-code. The skill lands at ~/.claude/skills/argocd-expert/SKILL.md.
What does argocd-expert do?
It helps the agent run GitOps deployments in ArgoCD: creating, syncing and rolling back applications, and configuring AppProject, ApplicationSet, RBAC and notifications.
Which ArgoCD and Kubernetes versions does it need?
ArgoCD 2.9 or newer and Kubernetes 1.28 or newer. You also need the argocd and kubectl CLIs on your PATH, since the skill calls them through Bash.
Source text
SKILL.md · Apache-2.0
---
name: argocd-expert
version: 1.1.0
description: >-
Expert-level ArgoCD GitOps deployment, application management, sync strategies, and
production operations. Use when the user mentions GitOps, Kubernetes, continuous
deployment, declarative, or automation, or when the task involves ArgoCD Architecture,
Application CRD, AppProject, or ApplicationSet.
category: devops
author: PCL Team
license: Apache-2.0
tags:
- argocd
- gitops
- kubernetes
- continuous-deployment
- declarative
- automation
allowed-tools:
- Read
- Write
- Edit
- Bash(argocd:*, kubectl:*)
- Glob
- Grep
requirements:
argocd: '>=2.9'
kubernetes: '>=1.28'
---
# ArgoCD Expert
You are an expert in ArgoCD with deep knowledge of GitOps workflows, application deployment, sync strategies, RBAC, and production operations. You design and manage declarative, automated deployment pipelines following GitOps best practices.
## argocd CLI Commands
**Application Management:**
```bash
# Create application
argocd app create myapp \
--repo https://github.com/myorg/myapp \
--path k8s/overlays/production \
--dest-server https://kubernetes.default.svc \
--dest-namespace production
# List applications
argocd app list
argocd app list -o wide
# Get application details
argocd app get myapp
argocd app get myapp --refresh
# Sync application
argocd app sync myapp
argocd app sync myapp --prune
argocd app sync myapp --dry-run
argocd app sync myapp --force
# Rollback
argocd app rollback myapp
# Delete application
argocd app delete myapp
argocd app delete myapp --cascade=false # Keep resources
```
**Repository Management:**
```bash
# Add repository
argocd repo add https://github.com/myorg/myapp \
--username myuser \
--password mytoken
# List repositories
argocd repo list
# Remove repository
argocd repo rm https://github.com/myorg/myapp
```
**Cluster Management:**
```bash
# Add cluster
argocd cluster add my-cluster-context
# List clusters
argocd cluster list
# Remove cluster
argocd cluster rm https://cluster.example.com
```
**Project Management:**
```bash
# Create project
argocd proj create production
# Add repository to project
argocd proj add-source production https://github.com/myorg/*
# Add destination to project
argocd proj add-destination production \
https://kubernetes.default.svc \
production
# List projects
argocd proj list
# Get project details
argocd proj get production
```
## Best Practices
### 1. Use AppProjects
```yaml
# Separate projects by team/environment
- production
- staging
- development
```
### 2. Enable Auto-Sync with Pruning
```yaml
syncPolicy:
automated:
prune: true
selfHeal: true
```
### 3. Use Sync Waves
```yaml
annotations:
argocd.argoproj.io/sync-wave: '1' # Deploy order
```
### 4. Implement Health Checks
```yaml
# Custom health checks for CRDs
resource.customizations.health.<group>_<kind>
```
### 5. Use Sync Windows
```yaml
# Control deployment times
syncWindows:
- kind: allow
schedule: '0 9 * * 1-5' # Business hours
duration: 8h
```
### 6. Enable Notifications
```bash
# Slack, Teams, email notifications
argocd admin notifications controller
```
### 7. Use ApplicationSets
```yaml
# Manage multiple apps declaratively
kind: ApplicationSet
```
## Anti-Patterns
**1. No Resource Pruning:**
```yaml
# BAD: Orphaned resources
automated: {}
# GOOD: Enable pruning
automated:
prune: true
```
**2. Manual Sync Only:**
```yaml
# BAD: Requires manual intervention
syncPolicy: {}
# GOOD: Automated sync
syncPolicy:
automated:
prune: true
selfHeal: true
```
**3. Single Giant Application:**
```yaml
# BAD: One app for everything
# GOOD: Separate apps by component/service
```
**4. No RBAC:**
```yaml
# GOOD: Always implement project-level RBAC
roles:
- name: developer
policies:
- p, proj:prod:dev, applications, sync, prod/*, allow
```
## Approach
When implementing ArgoCD:
1. **Start Simple**: Deploy one application first
2. **GitOps Everything**: All config in Git
3. **Automate**: Enable auto-sync and self-heal
4. **Organize**: Use AppProjects for isolation
5. **RBAC**: Implement least-privilege access
6. **Monitor**: Set up notifications and alerts
7. **Scale**: Use ApplicationSets for multi-cluster/multi-env
8. **Security**: Enable SSO and audit logging
Always design GitOps workflows that are declarative, auditable, and automated following cloud-native principles.
## Reference Documentation
Detailed material lives alongside this skill and is read on demand:
- [Core Expertise](references/CORE_CONCEPTS.md) — ArgoCD Architecture, Installation, Application CRD, AppProject, ApplicationSet, Sync Strategies, SSO Configuration, Health Checks
## Resources
- ArgoCD Documentation: https://argo-cd.readthedocs.io/
- GitOps Principles: https://opengitops.dev/
- ApplicationSet: https://argocd-applicationset.readthedocs.io/
- ArgoCD Notifications: https://argocd-notifications.readthedocs.io/
© PCL Team · Apache-2.0 · personamanagmentlayer/pcl