kubesphere-devops-argocd
Use when configuring ArgoCD in KubeSphere DevOps, including GitOps deployments, application management, SSO setup, or troubleshooting ArgoCD issues
Install / Use
npx skills add kubesphere/kubesphere --skill kubesphere-devops-argocdInstalls into whichever agent you are using.
SKILL.md
Installable skill definition
Quality Score
Category
AutomationSupported Platforms
Our assessment of kubesphere-devops-argocd
kubesphere-devops-argocd scores 98/100 on our quality scale, 81st of 1,264 Automation skills we index (top 7%).
Its SKILL.md is 23 KB long, well organised into 106 sections with 39 code examples: a thorough specification that gives an agent plenty to work with.
With 17,059 GitHub stars, it is one of the more widely adopted skills in the catalogue.
Maintenance, license and trust
- The repository was last updated about 2 months ago, so kubesphere-devops-argocd is actively maintained.
- No license is declared. By default that means all rights are reserved: you can read it, but reusing or redistributing it is not clearly permitted. Ask the author before building on it commercially.
- Its trust signals score 88/100, with 1 caution from licensing, adoption, age or documentation. These come from repository metadata, not a code audit — read the skill file before letting an agent act on it.
Safety scan
No issues foundOur scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful.
AI review by kimi-k2.7-code on 2026-09-26. Automated pattern scan on 2026-09-26. It catches known dangerous patterns, not every risk — read a skill before letting an agent act on it.
kubesphere-devops-argocd compared with similar skills
All 4 of these similar skills score higher than kubesphere-devops-argocd; compare them before choosing.
| Skill | Score | Stars | Updated | Format |
|---|---|---|---|---|
| kubesphere-devops-argocd (this skill)by kubesphere | 98 | 17.1k | 2mo ago | SKILL.md |
| Agent-Reachby Panniantong | 100 | 85.5k | 10d ago | CLAUDE.md |
| rufloby ruvnet | 100 | 73.3k | 1d ago | CLAUDE.md |
| Scraplingby D4Vinci | 100 | 83.7k | today | MCP Server |
| algorithmic-artby anthropics | 100 | 177.9k | 3d ago | SKILL.md |
Frequently asked questions
- How do I install kubesphere-devops-argocd?
- Run
npx skills add kubesphere/kubesphere --skill kubesphere-devops-argocd. The install tabs above show the steps for each supported agent. - Which AI agents does kubesphere-devops-argocd work with?
- It is written for Universal, as a SKILL.md file. Other agents that read the same format can often use it too.
- Is kubesphere-devops-argocd safe to use?
- Our scan of the whole file found no instruction hijacking, hidden characters, credential access, data exfiltration or destructive commands. An AI review of the same text found nothing harmful. It declares no license and scores 88/100 on trust signals. Skills are instructions an agent will follow, so read the file before installing it and do not approve commands you do not understand.
- Is kubesphere-devops-argocd still maintained?
- The repository was last updated about 2 months ago, so kubesphere-devops-argocd is actively maintained.
Skill content
View source on GitHubname: kubesphere-devops-argocd description: Use when configuring ArgoCD in KubeSphere DevOps, including GitOps deployments, application management, SSO setup, or troubleshooting ArgoCD issues
KubeSphere DevOps ArgoCD Configuration
Overview
KubeSphere DevOps includes ArgoCD v2.11.7 as a bundled subchart for GitOps continuous deployment. ArgoCD follows the declarative GitOps pattern, automatically syncing application state with Git repositories.
When to Use
- Setting up GitOps continuous deployment
- Configuring ArgoCD applications and ApplicationSets
- Enabling SSO authentication via Dex
- Managing multi-cluster deployments
- Troubleshooting ArgoCD sync issues
- Configuring repository credentials
KubeSphere GitOps Integration
Two Ways to Create Applications
1. Direct ArgoCD Application (Admin Only)
- Created in
argocdnamespace - Requires access to ArgoCD namespace
- Full control over ArgoCD configuration
2. KubeSphere GitOps Application (Tenant-Friendly)
- Created via
/kapis/gitops.kubesphere.io/v1alpha1/ - Application CR created in tenant namespace
- KubeSphere automatically creates corresponding ArgoCD Application
- Tenant doesn't need direct ArgoCD access
Architecture
┌─────────────────────────────────────────────────────────────┐
│ Tenant Namespace │
│ ┌──────────────────────────────────────────────┐ │
│ │ Application (gitops.kubesphere.io/v1alpha1) │ │
│ │ - Created by tenant via KubeSphere API │ │
│ │ - Label: gitops.kubesphere.io/argocd-location: argocd │ │
│ └──────────────────┬───────────────────────────┘ │
└──────────────────────┼──────────────────────────────────────┘
│
│ KubeSphere Controller watches
│ and creates corresponding
▼
┌─────────────────────────────────────────────────────────────┐
│ argocd Namespace │
│ ┌──────────────────────────────────────────────┐ │
│ │ Application (argoproj.io/v1alpha1) │ │
│ │ - Created automatically by KubeSphere │ │
│ │ - References tenant namespace as target │ │
│ └──────────────────┬───────────────────────────┘ │
└──────────────────────┼──────────────────────────────────────┘
│
│ ArgoCD Controller reconciles
▼
┌─────────────────────────────────────────────────────────────┐
│ Tenant Namespace │
│ ┌──────────────────────────────────────────────┐ │
│ │ Deployed Resources (Pods, Services, etc.) │ │
│ │ - Created by ArgoCD │ │
│ │ - Managed via GitOps │ │
│ └──────────────────────────────────────────────┘ │
└─────────────────────────────────────────────────────────────┘
Key Differences
| Aspect | Direct ArgoCD | KubeSphere GitOps |
|--------|---------------|-------------------|
| Namespace | argocd | Tenant's namespace |
| Access Required | ArgoCD namespace | Tenant namespace only |
| API Endpoint | N/A (kubectl) | /kapis/gitops.kubesphere.io/v1alpha1/ |
| Tenant Can Create | ❌ No | ✅ Yes |
| ArgoCD UI Access | ✅ Yes | ❌ No (transparent) |
| Multi-tenancy | Shared | Isolated per tenant |
Architecture
ArgoCD Components
| Component | Pod Name Pattern | Purpose |
|-----------|------------------|---------|
| Application Controller | devops-agent-argocd-application-controller-* | Reconciles Application state |
| ApplicationSet Controller | devops-agent-argocd-applicationset-controller-* | Manages ApplicationSet CRDs |
| Dex Server | devops-agent-argocd-dex-server-* | SSO authentication proxy |
| Notifications Controller | devops-agent-argocd-notifications-controller-* | Event notifications |
| Redis | devops-agent-argocd-redis-* | Cache and state storage |
| Repo Server | devops-agent-argocd-repo-server-* | Git repository operations |
| ArgoCD Server | devops-agent-argocd-server-* | API and UI |
Namespace: argocd (configurable via argocd.namespace)
Installation & Verification
Check ArgoCD Status
# Verify ArgoCD namespace exists
kubectl get ns argocd
# Check all ArgoCD pods
kubectl get pods -n argocd
# Check ArgoCD services
kubectl get svc -n argocd
Access ArgoCD UI
# Get ArgoCD server service
kubectl get svc devops-agent-argocd-server -n argocd
# Port-forward for local access
kubectl port-forward svc/devops-agent-argocd-server -n argocd 8080:443
# Get initial admin password
kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -d
# Access via: https://localhost:8080
# Username: admin
# Password: (from command above)
Configuration
Enable/Disable ArgoCD
In DevOps InstallPlan:
apiVersion: kubesphere.io/v1alpha1
kind: InstallPlan
metadata:
name: devops
namespace: kubesphere-system
spec:
extension:
name: devops
version: 1.2.4
enabled: true
upgradeStrategy: Manual
config: |
agent:
argocd:
enabled: true # Enable ArgoCD
namespace: "argocd" # ArgoCD namespace
Custom ArgoCD Configuration
config: |
agent:
argocd:
enabled: true
namespace: "argocd"
# Full ArgoCD Helm values available
# See: kse-extensions/devops/charts/agent/charts/argo-cd/values.yaml
configs:
cm:
url: "https://argocd.example.com"
admin.enabled: "true"
Managing Applications
Create an Application
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
name: my-app
namespace: argocd
spec:
project: default
source:
repoURL: https://github.com/example/repo.git
targetRevision: HEAD
path: k8s/overlays/production
destination:
server: https://kubernetes.default.svc
namespace: my-app-namespace
syncPolicy:
automated:
prune: true
selfHeal: true
syncOptions:
- CreateNamespace=true
Create via KubeSphere GitOps API (Tenant Method)
For tenants who don't have access to the argocd namespace:
# Authenticate as tenant
export API_TOKEN="<tenant-kubesphere-token>"
export KUBESPHERE_API="https://kubesphere-api.example.com"
export DEVOPS_PROJECT="demo-project"
# Create GitOps Application via API
curl -s -X POST "${KUBESPHERE_API}/kapis/gitops.kubesphere.io/v1alpha1/namespaces/${DEVOPS_PROJECT}/applications" \
-H "Authorization: Bearer ${API_TOKEN}" \
-H "Content-Type: application/json" \
-d '{
"apiVersion": "gitops.kubesphere.io/v1alpha1",
"kind": "Application",
"metadata": {
"name": "guestbook",
"namespace": "'${DEVOPS_PROJECT}'",
"labels": {
"gitops.kubesphere.io/argocd-location": "argocd"
}
},
"spec": {
"argoApp": {
"spec": {
"project": "default",
"source": {
"repoURL": "https://github.com/stoneshi-yunify/argocd-example-apps",
"targetRevision": "HEAD",
"path": "guestbook"
},
"destination": {
"server": "https://kubernetes.default.svc",
"namespace": "'${DEVOPS_PROJECT}'"
},
"syncPolicy": {
"automated": {
"prune": true,
"selfHeal": true
},
"syncOptions": [
"CreateNamespace=true"
]
}
}
}
}
}'
What happens:
- Tenant creates
Application(gitops.kubesphere.io/v1alpha1) in their namespace - KubeSphere automatically adds label:
gitops.kubesphere.io/argocd-location: argocd - KubeSphere controller creates corresponding ArgoCD Application in
argocdnamespace - ArgoCD syncs the application to the tenant's namespace
Verify Application Status:
# Method 1: Check status labels (tenant accessible)
curl -s "${KUBESPHERE_API}/clusters/member-1/kapis/gitops.kubesphere.io/v1alpha1/namespaces/demo-project/applications/guestbook" \
-H "Authorization: Bearer ${API_TOKEN}" | jq -r '{
health: .metadata.labels["gitops.kubesphere.io/health-status"],
sync: .metadata.labels["gitops.kubesphere.io/sync-status"]
}'
# Expected output when healthy and synced:
# {
# "health": "Healthy",
# "sync": "Synced"
# }
# Method 2: Check detailed status via .status.argoApp (JSON string)
curl -s "${KUBESPHERE_API}/clusters/member-1/kapis/gitops.kubesphere.io/v1alpha1/namespaces/demo-project/applications/guestbook" \
-H "Authorization: Bearer ${API_TOKEN}" | jq -r '.status.argoApp' | jq -r '{
syncStatus: .sync.status,
healthStatus: .health.status,
resources: [.resources[] | {kind: .kind, name: .name, status: .status}]
}'
# Check ArgoCD Application (admin only)
kubectl get application -n argocd | grep guestbook
Note: When spec.argoApp.spec.destination.server is https://kubernetes.default.svc and destination.name is empty or in-cluster, the Application deploys to the cluster specified in the API path (e.g., /clusters/member-1 → member-1 cluster). Tenants should verify deployment via Application status labels as they may not have permissions to query the destination namespace directly.
Note: This method requires KubeSphere GitOps controller to be running.
⚠️ CRITICAL: Required Label
The Application MUST have the label gitops.kubesphere.io/argocd-location: argocd. Without this label:
- The controller will silently ignore the Application
- No ArgoCD Application will be created
- The Application status will remain Unknown
Evidence from controller logs:
Warning Invalid application/private-guestbook
Cannot find the namespace of the Argo CD instance from key: gitops.kubesphere.io/argocd-location
⚠️ WARNING: Don't Create ArgoCD Application Manually
When using KubeSphere GitOps Application, the controller automatically creates the corresponding ArgoCD Application. Do NOT create an ArgoCD Application manually with the same name or targeting the same resources - this will cause a resource conflict.
Resource Conflict Example:
Deployment/guestbook-ui is part of applications
argocd/private-guestbook and stone-devops-private-guestbook
This results in:
- SharedResourceWarning
- OutOfSync status
- Conflicting management
Create an ApplicationSet
apiVersion: argoproj.io/v1alpha1
kind: ApplicationSet
metadata:
name: my-appset
namespace: argocd
spec:
generators:
- git:
repoURL: https://github.com/example/repo.git
revision: HEAD
directories:
- path: apps/*
template:
metadata:
name: '{{path.basename}}'
spec:
project: default
source:
repoURL: https://github.com/example/repo.git
targetRevision: HEAD
path: '{{path}}'
destination:
server: https://kubernetes.default.svc
namespace: '{{path.basename}}'
syncPolicy:
automated:
prune: true
selfHeal: true
Repository Management
Add a Git Repository
Via CLI:
# Login to argocd CLI
argocd login localhost:8080 --username admin --password $(kubectl -n argocd get secret argocd-initial-admin-secret -o jsonpath='{.data.password}' | base64 -d)
# Add repository
argocd repo add https://github.com/example/repo.git \
--username <user> \
--password <token>
Via Secret:
apiVersion: v1
kind: Secret
metadata:
name: repo-github-example
namespace: argocd
labels:
argocd.argoproj.io/secret-type: repository
stringData:
type: git
url: https://github.com/example/repo.git
username: <username>
password: <personal-access-token>
Add a Helm Repository
apiVersion: v1
kind:
Truncated for display — read the full file on GitHub.
Related Skills
Agent-Reach
85.5kGive your AI agent eyes to see the entire internet. Read & search Twitter, Reddit, YouTube, GitHub, Bilibili, XiaoHongShu — one CLI, zero API fees.
ruflo
73.3k🌊 The original agent harness. Deploy intelligent multi-player swarms, coordinate autonomous workflows, and build conversational AI systems. Features adaptive memory, self-learning intelligence, federation, vector RAG integration, and native Claude Code / Codex / Hermes and many more Integrated
Scrapling
83.7k🕷️ An adaptive Web Scraping framework that handles everything from a single request to a full-scale crawl! Don't be shy, join here: https://discord.gg/EMgGbDceNQ and follow here for daily tips and tricks: https://x.com/Scrapling_dev
algorithmic-art
177.9kCreating algorithmic art using p5.js with seeded randomness and interactive parameter exploration. Use this when users request creating art using code, generative art, algorithmic art, flow fields, or particle systems.
Languages
Trust signals
From repository metadata: license, adoption, age and documentation. Not a code audit — see the Safety scan above for what the skill file itself contains.
