harness-skills
Copilot instructions2 starsChanged 7 months agoApache-2.0Archived repositoryView on GitHub
This repository contains Claude Code skills for working with Harness.io CI/CD platform. All skills use the Harness MCP v2 server's consolidated tool interface. All skills use the Harness MCP v2 server which provides 10 generic tools operating across 119+ resource types: Tools accept a resourcetype parameter (e.g., pipeline, secret, template) to target specific Harness resources. Tools also support Harness UI URL auto-extraction for orgid, projectid, resourcetype, and resource_id. Skills live in skills/<skill-name>/SKILL.md. Each skill folder may contain references/, scripts/, and…
We split this copilot-instructions.md into the rules it gives an agent
9 rules. About 0 are common, 7 are distinctive, and 2 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈7
Distinctive · estimate
This author's own choices. Worth a look.
2
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 7
All skills use the Harness MCP v2 server which provides 10 generic tools operating across 119+ resource types:
- Distinctive: line 91
When users need end-to-end setup, follow these dependency chains.
- Distinctive: line 95
Use when a user wants to deploy a new service to Harness.
- Distinctive: line 107
Use when a user is setting up a brand new Harness project from scratch:
- Distinctive: line 118
Key rule: Always check if a referenced resource (connector, secret, environment) exists before creating something that depends on it.
- Distinctive: line 122
Before making any MCP API call that creates or modifies resources, always establish the user's scope:
- Distinctive: line 124
Ask for org and project: if not already known. Most Harness resources are scoped to an org + project.
- Very specific: line 131
When creating resources via harness_create, the Harness API validates the payload and returns specific error messages for malformed …
- Very specific: line 142
When creating or modifying skills, run scripts/validate-skills.sh to check compliance.
≈ “Common” is an estimate: at least 1 in 5 of the 3,669 Copilot instructions files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Harness Skills
This repository contains Claude Code skills for working with Harness.io CI/CD platform. All skills use the Harness MCP v2 server's consolidated tool interface.
MCP v2 Server
All skills use the Harness MCP v2 server which provides 10 generic tools operating across 119+ resource types:
| Tool | Purpose |
harness_list | List resources with filters and pagination |
harness_get | Get a single resource by ID |
harness_create | Create a resource (requires confirmation) |
harness_update | Update a resource (requires confirmation) |
harness_delete | Delete a resource (requires confirmation) |
harness_execute | Run, retry, interrupt, sync, toggle, approve, reject, test_connection |
harness_search | Cross-resource keyword search |
harness_describe | Local metadata/schema lookup (no API call) |
harness_diagnose | Pipeline failure analysis |
harness_status | Project health overview |
Tools accept a resource_type parameter (e.g., pipeline, secret, template) to target specific Harness resources. Tools also support Harness UI URL auto-extraction for org_id, project_id, resource_type, and resource_id.
Skill Directory
Skills live in skills/<skill-name>/SKILL.md. Each skill folder may contain references/, scripts/, and assets/ subdirectories.
Pipeline & Execution
| Skill | Description |
/create-pipeline | Generate v0 pipeline YAML (CI, CD, combined, approvals) |
/create-pipeline-v1 | Generate v1 simplified pipeline YAML |
/create-trigger | Create webhook, scheduled, and artifact triggers |
/create-template | Create reusable step, stage, pipeline, and step group templates |
/run-pipeline | Execute and monitor pipeline runs |
/debug-pipeline | Diagnose pipeline execution failures |
/migrate-pipeline | Convert v0 pipelines to v1 format |
Infrastructure & Resources
| Skill | Description |
/create-service | Define services (Kubernetes, Helm, ECS) with artifact sources |
/create-environment | Create environments (PreProduction, Production) with overrides |
/create-infrastructure | Define infrastructure (K8s, ECS, Serverless) |
/create-connector | Create connectors (GitHub, AWS, GCP, Azure, Docker, K8s) |
/create-secret | Manage secrets (SecretText, SecretFile, SSHKey, WinRM) |
Access Control & Users
| Skill | Description |
/manage-users | Manage users, user groups, and service accounts |
/manage-roles | RBAC roles, assignments, permissions, and resource groups |
Feature Flags
| Skill | Description |
/manage-feature-flags | Create, list, toggle, and delete feature flags |
Platform Operations
| Skill | Description |
/manage-delegates | Monitor delegate health and manage registration tokens |
Observability & Governance
| Skill | Description |
/analyze-costs | Cloud cost analysis, recommendations, and anomaly detection |
/security-report | Security vulnerabilities, SBOMs, and compliance reports |
/dora-metrics | DORA metrics and engineering performance reports |
/gitops-status | GitOps application health, sync status, and pod logs |
/chaos-experiment | Create and run chaos engineering experiments |
/scorecard-review | IDP scorecards and service maturity review |
/audit-report | Audit trails and compliance evidence (SOC2, GDPR, HIPAA) |
/template-usage | Template dependency tracking, impact analysis, and adoption |
/create-policy | Create OPA governance policies for supply chain security |
Agents
| Skill | Description |
/create-agent-template | Generate AI agent templates (metadata.json, pipeline.yaml, wiki.MD) |
Cross-Skill Workflows
When users need end-to-end setup, follow these dependency chains. Each step depends on the previous -- do not skip steps or create resources that reference connectors/secrets that don't exist yet.
New Microservice Setup
Use when a user wants to deploy a new service to Harness. Follow this exact order:
- Create connectors (
/create-connector) -- GitHub connector for source code and manifests, Docker/ECR/GCR connector for container images, K8s/cloud connector for target infrastructure - Create secrets (
/create-secret) -- Authentication tokens, SSH keys, or credentials referenced by connectors - Create service (
/create-service) -- Reference the Git connector for manifests, reference the Docker connector for artifact source - Create environment (
/create-environment) -- PreProduction and/or Production with environment-specific variables - Create infrastructure (
/create-infrastructure) -- Reference the K8s/cloud connector for the target cluster. If no connector exists for the target, create one first - Create pipeline (
/create-pipeline) -- Build pipeline based on source code language and manifest type. Reference the service, environment, and infrastructure from previous steps - Create trigger (
/create-trigger) -- Automate the pipeline with webhook (PR/push) or artifact triggers
New Project Onboarding
Use when a user is setting up a brand new Harness project from scratch:
- Create project -- Use
harness_createwithresource_type: "project"and the targetorg_id - Create connectors (
/create-connector) -- All connectors needed for the project (Git, cloud, registry, cluster) - Create secrets (
/create-secret) -- All secret references for connector auth - Create service (
/create-service) -- Service definitions for each microservice - Create environment (
/create-environment) -- Dev, staging, production environments - Create infrastructure (
/create-infrastructure) -- Infrastructure definitions per environment - Create pipeline (
/create-pipeline) -- CI/CD pipelines for each service - Create trigger (
/create-trigger) -- Automate all pipelines
Key rule: Always check if a referenced resource (connector, secret, environment) exists before creating something that depends on it. If it doesn't exist, create it first. Ask the user for the org and project context before starting.
Scope & Context Convention
Before making any MCP API call that creates or modifies resources, always establish the user's scope:
- Ask for org and project if not already known. Most Harness resources are scoped to an org + project.
- Use
harness_listto verify referenced resources exist before creating dependents (e.g., confirm a connector exists before referencing it in a service). - Account-level resources (no org/project) are visible to all orgs and projects. Org-level resources are visible to all projects in that org. Project-level resources are only visible within that project.
- If the user provides a Harness UI URL, extract
org_id,project_id, andresource_idfrom it -- MCP tools support URL auto-extraction.
Schema Validation Convention
When creating resources via harness_create, the Harness API validates the payload and returns specific error messages for malformed requests. Skills do NOT need to embed full API schemas. Instead:
- Each skill lists required fields in its Instructions section (identifier, name, type, yaml, etc.)
- Use
harness_describeto discover the full schema for any resource type at runtime -- this is a local lookup with no API call:harness_describe(resource_type="service") - On validation errors, read the API error message to identify the missing or invalid field, then fix and retry
Skill Standards
When creating or modifying skills, run scripts/validate-skills.sh to check compliance. See CONTRIBUTING.md for the full structure guide. Skills must have: frontmatter (name, description, metadata, license, compatibility), ## Instructions, ## Examples, ## Performance Notes, and ## Troubleshooting sections.
Schema References
- v0 Pipelines/Templates/Triggers: https://github.com/harness/harness-schema/tree/main/v0
- v1 Pipelines: https://github.com/thisrohangupta/spec
- Agent Templates: https://github.com/thisrohangupta/agents
- MCP v2 Server: https://github.com/thisrohangupta/harness-mcp-v2
Where files are headingNew Copilot instructions files have more rules about branches and pull requests, and fewer about code style.
Of the Copilot instructions files we read, the 2,297 first seen in the last six months, against the older ones: the kind of rule that gained most share, and the kind that lost most. About files like this in general, not this one, and an estimate, since a kind is a pattern in the words.
In this repository30 other files it gives its agents.
- AGENTS.mdAGENTS.md
- CLAUDE.mdCLAUDE.md
- .cursor/rules/harness.mdcCursor rule
- analyze-costsSkill
- audit-reportSkill
- chaos-experimentSkill
- create-agentSkill
- create-agent-templateSkill
- create-connectorSkill
- create-environmentSkill
- create-infrastructureSkill
- create-pipelineSkill
- create-pipeline-v1Skill
- create-policySkill
- create-secretSkill
- create-serviceSkill
- create-templateSkill
- create-triggerSkill
- debug-pipelineSkill
- dora-metricsSkill
- gitops-statusSkill
- manage-delegatesSkill
- manage-feature-flagsSkill
- manage-rolesSkill
- manage-usersSkill
- migrate-pipelineSkill
- run-pipelineSkill
- scorecard-reviewSkill
- security-reportSkill
- template-usageSkill
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

