cloud-manage-project
Manages existing Elastic Cloud Serverless projects: list, get, update, delete, reset credentials, resume, and load saved credentials. Connects to existing projects by resolving endpoints and acquiring scoped Elasticsearch API keys. Use when performing day-2 operations on serverless projects, connecting to an existing project, loading or resetting project credentials, or looking up project details.
Security Assessment
Detected risks:
About cloud-manage-project
The cloud-manage-project skill manages existing Elastic Cloud Serverless projects, supporting day-2 operations such as list, get, update, delete, reset credentials, resume, and load saved credentials. It solves the problem of connecting to and operating existing serverless projects by resolving endpoints and acquiring scoped Elasticsearch API keys, using the Serverless REST API. It is intended for connecting to a project the agent did not create in the current session, loading or resetting credentials, or looking up project details. It applies only to Elastic Cloud Serverless projects, not to self-managed or Elastic Cloud Hosted instances.
Operations run through scripts/manage-project.py and require the EC_API_KEY environment variable (set by the cloud-setup skill or configured manually via a .env file with EC_API_KEY and optional EC_BASE_URL, which all cloud/* scripts auto-load). Every command requires both --type and --id except list, which needs only --type; project types are elasticsearch, observability, and security. A connect workflow resolves the project by name, loads saved credentials with load-credentials (evaluated to set endpoint and API key environment variables in one command), or fetches details via get and exports endpoint URLs such as ELASTICSEARCH_URL, KIBANA_URL, and, for observability and security projects, APM_URL and INGEST_URL. The skill enforces strict secret handling: never display secrets in chat, direct users to the .elastic-credentials file, confirm before destructive actions like delete or reset, and treat admin credentials as being solely for bootstrapping a scoped API key rather than direct Elasticsearch operations.
This skill targets engineers and operators managing Elastic Cloud Serverless projects. Compatibility requires Python 3.8+ and network access to the Elastic Cloud API (api.elastic-cloud.com) for API commands, while load-credentials works locally without network access. Updating project settings requires an Admin or Editor role, and the skill does not perform a separate role pre-check; it attempts the operation and asks the user to verify permissions if the API returns an authorization error such as 403 Forbidden. It distinguishes two key types: the Cloud API key (EC_API_KEY) for project management and a separate Elasticsearch API key (ELASTICSEARCH_API_KEY) for Elasticsearch operations, and defers scoped key creation to the elasticsearch-authn skill when only admin credentials are available.
FAQ
What environment variables and prerequisites are required?
It requires EC_API_KEY (set by cloud-setup or configured in a .env file, with optional EC_BASE_URL defaulting to https://api.elastic-cloud.com), plus Python 3.8+ and network access to api.elastic-cloud.com for API commands. The load-credentials command works locally without network access.
What operations does the skill support?
Day-2 operations on Elastic Cloud Serverless projects: list, get, update, delete, reset credentials, resume, and load saved credentials, all via scripts/manage-project.py.
How are commands scoped to a project?
Every command requires both --type and --id, except list, which only needs --type. Project types are elasticsearch, observability, and security, inferred from the user's request.
How does the skill handle secrets and credentials?
It never displays secrets in chat, directs users to the .elastic-credentials file (which holds reset passwords, redacted from stdout), confirms before destructive actions, and treats the admin password as solely for bootstrapping a scoped API key. It distinguishes the Cloud API key (EC_API_KEY) for project management from the Elasticsearch API key (ELASTICSEARCH_API_KEY) for Elasticsearch operations.
What permissions are needed and what if they're missing?
Updating project settings requires Admin or Editor role on the target project. The skill does not do a separate role pre-check; it attempts the operation and, if the API returns an authorization error such as 403 Forbidden, stops and asks the user to verify the API key permissions.
Install cloud-manage-project
Quick Setup:
- Copy the skill folder to
.claude/skills/ - Claude will automatically detect and use the skill
Repository
elastic/agent-skills