Official agent skill

New Entity Requirements

by elastic in elastic/terraform-provider-elasticstack

Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then…

OfficialApache-2.0Auto-check passedDevOps & Cloud

Install New Entity Requirements

skills CLI
$ npx skills add elastic/terraform-provider-elasticstack --skill new-entity-requirements -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install elastic/terraform-provider-elasticstack new-entity-requirements --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/new-entity-requirements .claude/skills/new-entity-requirements && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
new-entity-requirements
GitHub stars
210
Token cost
~1.9k tokens
SKILL.md length
832 words
Files
2
Skills in repo
21
Repo updated
First seen
Licence
Apache-2.0

At a glance

Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then…

  • Works in 5 steps: Resolve API surface → Examine Elastic API docs → Create the OpenSpec proposal (change +… → …
  • Designing a new entity
  • SKILL.md covers Input, Workflow, Output and Reference
  • Calls make

What it does

New Entity Requirements is an agent skill from elastic/terraform-provider-elasticstack, published by the product's own GitHub organization. Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then interviewing the user for gaps. Produces an OpenSpec proposal (change with proposal, design, tasks, and delta specs)—not a hand-written spec under openspec/specs/ alone. Use when designing a new entity, drafting requirements from an API, or before implementing a new resource/data source.

Its SKILL.md is about 1.9k tokens, which your agent loads only when the skill is triggered. The skill folder holds 1 other file (for example `reference.md`).

It sits in DevOps & Cloud, covering Search implementation, Infrastructure as code and Technical documentation. It works with Elasticsearch, Terraform and Model Context Protocol. The repository describes itself as: Terraform provider for Elastic Stack. The licence is Apache-2.0.

When your agent uses it

  • Designing a new entity
  • Drafting requirements from an API
  • Before implementing a new resource/data source

Example prompts

  • “Use the new-entity-requirements skill to gather initial requirements for a new Terraform resource or data source by examining API clients…”
  • “/new-entity-requirements”

Workflow steps

5 steps, taken from the step headings in SKILL.md.

  1. Resolve API surface
  2. Examine Elastic API docs
  3. Create the OpenSpec proposal (change + artifacts)
  4. Interview the user
  5. Finalize

What it can do on your machine

Read from SKILL.md and the folder at commit ab9d355. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • make

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

New Entity Requirements loads about 1.9k tokens when it runs. Until then it costs about 127 tokens; SKILL.md has 832 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~127
When it runs · the whole SKILL.md, loaded when a task matches
~1.9k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from elastic/terraform-provider-elasticstack at commit ab9d355, republished under its Apache-2.0 licence (© elastic). 832 words, ~1,874 tokens.

Download SKILL.mdSave it as .claude/skills/new-entity-requirements/SKILL.md (or your agent's skills folder). This skill also uses 1 other file; get the full folder from GitHub.
name
new-entity-requirements
description
Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then interviewing the user for gaps. Produces an OpenSpec proposal (change with proposal, design, tasks, and delta specs)—not a hand-written spec under openspec/specs/ alone. Use when designing a new entity, drafting requirements from an API, or before implementing a new resource/data source.

New Entity Requirements

Gather initial requirements for an entirely new Terraform resource or data source, then materialize them as an OpenSpec proposal: a change under openspec/changes/<name>/ with proposal.md, design.md, tasks.md, and delta capability specs. Sources: repo API client code, Elastic API documentation (via the Elastic docs MCP server when available, otherwise web fetch/search), and user input for decisions the code and docs cannot answer.

For the CLI sequence (create change, resolve artifact order, run openspec instructions, write files), follow openspec-propose. This skill adds what to research and what to put in each artifact for a new Terraform entity.

Input

  • Entity concept: User specifies the target (e.g. “Elasticsearch API key”, “Kibana SLO”, “Fleet integration”). Optionally: resource vs data source, proposed type name.
  • API scope: Which backend (Elasticsearch vs Kibana/Fleet) and, if known, API name or doc URL.
  • Change name (optional): Kebab-case id for openspec new change (e.g. add-elasticsearch-security-api-key-resource). If missing, derive one from the entity and confirm with the user if ambiguous.

Workflow

1. Resolve API surface
  • Elasticsearch: Wrappers live in internal/clients/elasticsearch/ (e.g. security.go, cluster.go). They call apiClient.GetESClient() and use the go-elasticsearch client (e.g. esClient.Security.PutUser). Shared models: internal/models/. If no wrapper exists yet, search the go-elasticsearch API (dependency github.com/elastic/go-elasticsearch/v8) for the relevant namespace (e.g. Security, Watcher, Transform).
  • Kibana and Fleet: OpenAPI-generated client: generated/kbapi/kibana.gen.go. Higher-level wrappers: internal/clients/kibanaoapi/ and internal/clients/fleet/ (e.g. alerting_rule.go, connector.go). Use kbapi types and ClientWithResponses methods for the target API.

Identify: create/update (PUT/POST), read (GET), delete (DELETE), request/response shapes, identifiers (name, id, composite id). Note any version or feature flags in the client or API.

2. Examine Elastic API docs
  • Preferred: Use the Elastic docs MCP server when available. Call its tools to search or fetch Elastic documentation (e.g. by API name, topic, or URL). See reference.md for how to use the MCP server.
  • Fallback: If the MCP server is not configured or does not return the needed content, fetch docs via web (e.g. mcp_web_fetch for a known URL, or web search for the API name).
  • URL patterns: See reference.md for elastic.co/guide and elastic.co/docs URL patterns when constructing or citing links.
  • Extract: Endpoint names, required vs optional fields, validation rules, version requirements, error semantics (e.g. 404 = not found), and whether create/update are the same or separate.
  • If the user provided a doc URL, use it (via MCP if the server supports fetch-by-URL, or via web fetch); otherwise search by API name (e.g. “Elasticsearch security API create API key”, “Kibana SLO API”).
3. Create the OpenSpec proposal (change + artifacts)

Do not write directly to canonical openspec/specs/<capability>/spec.md as the primary deliverable. Instead:

  1. Create the change
    Run openspec new change "<name>" (requires OpenSpec CLI; make setup installs it). This creates openspec/changes/<name>/ with .openspec.yaml.

  2. Build all apply-ready artifacts
    Follow openspec-propose steps 3–4: openspec status --change "<name>" --json, then for each artifact in dependency order use openspec instructions <artifact-id> --change "<name>" --json, read dependencies, write to outputPath using template and instruction, re-run status until every id in applyRequires is done.

  3. Entity-specific content

    • proposal.md: What & why for this resource/data source; problem, scope, non-goals if useful; link to Elastic docs URLs gathered in step 2.
    • design.md: How the provider will map API ↔ Terraform (client package, identity, import id shape, version gates, error handling). Reference client paths from step 1.
    • tasks.md: Concrete implementation steps (schema, CRUD, acceptance tests, docs)—aligned with repo conventions in dev-docs/high-level/.
    • Delta spec(s) (openspec/changes/<name>/specs/.../spec.md): Normative requirements per dev-docs/high-level/openspec-requirements.md: ## Purpose, optional ## Schema, ## Requirements with ### Requirement: / #### Scenario:; bodies MUST include SHALL or MUST (for openspec validate). Draft HCL-style schema, API/identity/import/connection/compatibility requirements from steps 1–2. Mark unknowns as “TBD” or “(to confirm)”.

Use TodoWrite to track artifact creation, as in openspec-propose.

Show full SKILL.md (236 more words)Show less
4. Interview the user
  • Collect unanswered questions from the draft artifacts (schema ambiguities, id format, import support, lifecycle, version support). Use the question bank in reference.md.
  • Prefer the AskQuestion tool when available (one question per call, clear options). Otherwise ask conversationally and list options.
  • Record answers by updating the delta spec and, where relevant, proposal or design—replace TBDs, refine requirements, add Lifecycle, Plan/State, or StateUpgrade if the user specifies them.
  • If the user defers a decision, leave TBD in the delta spec and add a short “Open point” note.
5. Finalize
  • Ensure every requirement is either derived from the API/client/docs or from user answers. Remove or rewrite speculative claims.
  • Add a short “Sources” note in design.md or the delta spec if helpful: API client paths, doc URLs, and whether Elastic docs came from the MCP server or web.
  • Run openspec status --change "<name>" and confirm the change is apply-ready. Validate per project docs (make check-openspec / openspec validate as appropriate for specs in the change).

Output

  • Deliverable: A complete OpenSpec change at openspec/changes/<name>/ with all artifacts required for implementation (applyRequires), including delta capability specs—not a standalone file only under openspec/specs/.
  • Traceability: Requirements in delta specs tied to API docs (links) or user decisions; no invented behavior.

Reference

  • Proposal workflow (CLI): openspec-propose
  • Authoring: dev-docs/high-level/openspec-requirements.md
  • Example canonical spec (style reference): openspec/specs/elasticsearch-security-role/spec.md
  • Example archived change layout: openspec/changes/archive/ (proposal, design, tasks, specs/…/spec.md)
  • API client locations, doc URLs, interview question bank: reference.md

© elastic, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

SKILL.md and 1 other file in .agents/skills/new-entity-requirements of elastic/terraform-provider-elasticstack.

  • SKILL.md
  • reference.md

Open the folder on GitHubat commit ab9d355

Compare with similar skills

New Entity Requirements next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

New Entity Requirements compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
New Entity Requirements this skillelastic/terraform-provider-elasticstack210—~1.9kAutomated safety check: PassApache-2.0
Terravision Cloud Diagramspatrickchugh/terravision1.6k—~5.6kAutomated safety check: NotesAGPL-3.0-only
Infra Syncagentic-community/mcp-gateway-registry967—~2.7kAutomated safety check: PassApache-2.0
Eks Best Practicesaws-samples/appmod-blueprints115—~5kAutomated safety check: PassMIT-0
Kibana Alerting Rulesaspectrr/deer405—~1.8kAutomated safety check: PassMIT
Avm Tf DocumentationAzure/terraform-azurerm-avm-ptn-alz135—~1.1kAutomated safety check: PassMIT

Similar skills

  • Terravision Cloud Diagrams

    patrickchugh/terravision

    Draw cloud architecture diagrams for AWS, Azure or GCP with the official provider icon sets, using TerraVision.

    1.6k GitHub stars~5.6k tokensUpdated 3 days ago
    DevOps & CloudAuto-check: notes
  • Infra Sync

    agentic-community/mcp-gateway-registry

    Keep Terraform and CDK infrastructure in sync. An agent skill from agentic-community/mcp-gateway-registry.

    967 GitHub stars~2.7k tokensUpdated 3 days ago
    DevOps & CloudAuto-check passed
  • Eks Best Practices

    aws-samples/appmod-blueprints

    Official

    Advisory guidance for Amazon EKS architecture and configuration decisions — compute strategy, networking, security, reliability, cost, autoscaling, observability, multi-tenancy, and upgrade planning.

    115 GitHub stars~5k tokensUpdated yesterday
    DevOps & CloudAuto-check passed
  • Create and manage Kibana alerting rules via REST API or Terraform.

    405 GitHub stars~1.8k tokensUpdated 5 mo ago
    DevOps & CloudAuto-check passed
  • Avm Tf Documentation

    Azure/terraform-azurerm-avm-ptn-alz

    Official

    A skill your agent uses for AVM Terraform generated README content, header.md, footer.md, examples documentation, terraform-docs inputs, and Avm.Authoring documentation checks.

    135 GitHub stars~1.1k tokensUpdated 4 days ago
    DevOps & CloudAuto-check passed
  • AWS Sst Development

    zxkane/aws-skills

    SST v4 (Ion) expert for managing AWS resources as code with the Pulumi-backed framework.

    367 GitHub stars~2.7k tokensUpdated 3 mo ago
    DevOps & CloudAuto-check: warnings

More from elastic/terraform-provider-elasticstack

All 21 skills in this repo
  • Openspec Explore

    elastic/terraform-provider-elasticstack

    Official

    Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements.

    210 GitHub starsUsed in 86 repos~4.6k tokens
    Auto-check passed
  • Openspec Apply Change

    elastic/terraform-provider-elasticstack

    Official

    Implement tasks from an OpenSpec change. An agent skill from elastic/terraform-provider-elasticstack.

    210 GitHub starsUsed in 92 repos~2.1k tokens
    Auto-check passed
  • Openspec Archive Change

    elastic/terraform-provider-elasticstack

    Official

    Archive a completed change in the experimental workflow. An agent skill from elastic/terraform-provider-elasticstack.

    210 GitHub starsUsed in 86 repos~2.7k tokens
    Auto-check passed
  • PR Monitoring Loop

    elastic/terraform-provider-elasticstack

    Official

    Monitor GitHub pull requests through a subagent-based loop that watches CI checks, review comments, PR comments, review state, merge conflicts, and branch freshness.

    210 GitHub stars~4.1k tokensUpdated today
    Auto-check passed
  • Openspec Plus Proposal

    elastic/terraform-provider-elasticstack

    Official

    MANDATORY skill that activates whenever the OpenSpec proposal phase begins.

    210 GitHub starsUsed in 1 repo~3.2k tokens
    Auto-check passed
  • Openspec Propose

    elastic/terraform-provider-elasticstack

    Official

    Propose a new change with all artifacts generated in one step.

    210 GitHub starsUsed in 78 repos~3.1k tokens
    Auto-check passed

Categories

Questions about New Entity Requirements

What does New Entity Requirements do?

Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then…. New Entity Requirements is an agent skill from elastic/terraform-provider-elasticstack, published by the product's own GitHub organization. Gathers initial requirements for a new Terraform resource or data source by examining API clients (go-elasticsearch, generated kbapi), Elastic API docs (Elastic docs MCP server and/or web), then interviewing the user for gaps.

When should I use New Entity Requirements?

New Entity Requirements fits situations like: designing a new entity; drafting requirements from an API; before implementing a new resource/data source.

How do I install New Entity Requirements in Claude Code?

Run `npx skills add elastic/terraform-provider-elasticstack --skill new-entity-requirements -a claude-code`. Or copy the skill folder (.agents/skills/new-entity-requirements in elastic/terraform-provider-elasticstack) into .claude/skills/new-entity-requirements in your project. Claude Code loads it when a task matches its description.

How do I install New Entity Requirements in Codex?

Run `npx skills add elastic/terraform-provider-elasticstack --skill new-entity-requirements -a codex`. Or copy the skill folder (.agents/skills/new-entity-requirements in elastic/terraform-provider-elasticstack) into .agents/skills/new-entity-requirements in your project. Codex loads it when a task matches its description.

Can I use New Entity Requirements in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add elastic/terraform-provider-elasticstack --skill new-entity-requirements -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/new-entity-requirements, .gemini/skills/new-entity-requirements, .github/skills/new-entity-requirements and .opencode/skills/new-entity-requirements in your project.

What does New Entity Requirements need to run?

Going by SKILL.md and its folder, New Entity Requirements needs the command-line tools its instructions call (make).

Does New Entity Requirements access the network?

SKILL.md contains no URLs. Any network use would come from the scripts or tools the agent runs. This is read from the text; nothing was executed.

Is New Entity Requirements safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does New Entity Requirements use?

New Entity Requirements is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does New Entity Requirements use?

About 1.9k tokens (SKILL.md is roughly 7.5k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to New Entity Requirements?

Skills that share tags, products or a category with New Entity Requirements: Terravision Cloud Diagrams (patrickchugh/terravision, 1.6k stars), Infra Sync (agentic-community/mcp-gateway-registry, 967 stars), Eks Best Practices (aws-samples/appmod-blueprints, 115 stars) and Kibana Alerting Rules (aspectrr/deer, 405 stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains New Entity Requirements?

elastic (a GitHub organization, an official publisher) maintains it in elastic/terraform-provider-elasticstack, which has 210 GitHub stars. The repository holds 21 skills in this directory. The repository was last updated on October 9, 2026.

Source: elastic/terraform-provider-elasticstack on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.