Analyze GitHub Action Logs
withastro/astro
Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements.
Official agent skill
Orchestrates an end-to-end implementation loop for a single OpenSpec change: select a change, ask commit-only vs PR delivery, triage the change to determine an execution strategy (inline…
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a claude-codeProject install by default; add -g for ~/.claude/skills/.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loop --agent claude-codeProject scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .claude/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .claude/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.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/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .claude/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.Claude Code copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$skill-installer install https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loopType this inside Codex. $skill-installer <name> installs a curated skill from openai/skills. The installer writes to $CODEX_HOME/skills (default ~/.codex/skills). Restart Codex if the skill does not show up.
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a codexProject install goes to .agents/skills/; add -g for ~/.codex/skills/.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loop --agent codexProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .agents/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .agents/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.agents/skills/ instead of .agents/skills for a personal install.
Codex skills documentation · loads skills from .agents/skills/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .agents/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.Codex copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a cursorProject install goes to .agents/skills/; add -g for ~/.cursor/skills/.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loop --agent cursorProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .cursor/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .cursor/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.cursor/skills/ instead of .cursor/skills for a personal install.
Cursor skills documentation · loads skills from .cursor/skills/, .agents/skills/, .claude/skills/, .codex/skills/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .cursor/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.Cursor copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gemini skills install https://github.com/elastic/terraform-provider-elasticstack.git --path .agents/skills/openspec-implementation-loop--scope user (default) or --scope workspace; --path is the subfolder of the repo that holds the skill; --consent skips the security confirmation prompt.
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a gemini-cliProject install goes to .agents/skills/; add -g for ~/.gemini/skills/.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loop --agent gemini-cliProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .gemini/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .gemini/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.gemini/skills/ instead of .gemini/skills for a personal install, then run /skills reload.
Gemini CLI skills documentation · loads skills from .gemini/skills/, .agents/skills/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .gemini/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.Gemini CLI copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loopInstalls for Copilot at project scope by default; add --scope user for a personal install. Preview a skill first with gh skill preview. Needs GitHub CLI 2.90.0 or later (public preview).
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a github-copilotProject install goes to .agents/skills/; add -g for ~/.copilot/skills/.
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .github/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .github/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.copilot/skills/ instead of .github/skills for a personal install. Commit .github/skills so cloud agent and code review can use it.
GitHub Copilot skills documentation · loads skills from .github/skills/, .claude/skills/, .agents/skills/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .github/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.GitHub Copilot copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
$ npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a opencodeOpenCode documents no install command of its own. Project install goes to .agents/skills/; add -g for ~/.config/opencode/skills/.
$ gh skill install elastic/terraform-provider-elasticstack openspec-implementation-loop --agent opencodeProject scope by default (.agents/skills/); add --scope user for a personal install.
$ git clone --depth 1 https://github.com/elastic/terraform-provider-elasticstack.git skills-src && mkdir -p .opencode/skills && cp -r skills-src/.agents/skills/openspec-implementation-loop .opencode/skills/openspec-implementation-loop && rm -rf skills-srcUse ~/.config/opencode/skills/ instead of .opencode/skills for a personal install.
OpenCode skills documentation · loads skills from .opencode/skills/, .claude/skills/, .agents/skills/
Install the "openspec-implementation-loop" agent skill from https://github.com/elastic/terraform-provider-elasticstack/tree/main/.agents/skills/openspec-implementation-loop into .opencode/skills/openspec-implementation-loop/ in this project. Copy the whole folder (SKILL.md and every file beside it), keep the folder name "openspec-implementation-loop", then confirm the skill loads.OpenCode copies the folder itself, the same result as the manual copy. Check what it changed before you commit it.
openspec-implementation-loopOrchestrates an end-to-end implementation loop for a single OpenSpec change: select a change, ask commit-only vs PR delivery, triage the change to determine an execution strategy (inline…
Openspec Implementation Loop is an agent skill from elastic/terraform-provider-elasticstack, published by the product's own GitHub organization. Orchestrates an end-to-end implementation loop for a single OpenSpec change: select a change, ask commit-only vs PR delivery, triage the change to determine an execution strategy (inline, single-implementor, or per-task) based on change size and complexity, implement tasks using the chosen strategy, run review and validation, feed findings back for fixes, push to origin, then either watch GitHub Actions on the branch (commit mode) or create a PR and delegate PR monitoring to the pr-monitoring-loop skill (PR…
Its SKILL.md is about 5.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts. Compatibility notes: Requires openspec CLI, git, and GitHub CLI.
It sits in DevOps & Cloud, covering CI/CD. It works with GitHub Actions. The repository describes itself as: Terraform provider for Elastic Stack. The licence is MIT.
11 steps, taken from the first numbered list in SKILL.md.
Read from SKILL.md and the folder at commit 2a6096e. It shows what the files ask for, not the result of running them.
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.
Shell commands in SKILL.md call:
makeghgogitFrom the folder's file list and the shell code blocks in SKILL.md.
No URLs in SKILL.md. Its commands use gh and git, which can reach the network depending on how they are called.
From URLs in SKILL.md, links to its own repository left out.
Names these keys or tokens, usually read from environment variables:
ELASTICSEARCH_PASSWORDFrom names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.
Requires openspec CLI, git, and GitHub CLI.
From compatibility in the SKILL.md frontmatter.
Openspec Implementation Loop loads about 5.7k tokens when it runs. Until then it costs about 165 tokens; SKILL.md has 2,966 words of instructions outside code blocks.
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.
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.
The full file from elastic/terraform-provider-elasticstack at commit 2a6096e, republished under its MIT licence (© elastic). 2,966 words, ~5,703 tokens.
.claude/skills/openspec-implementation-loop/SKILL.md (or your agent's skills folder).Orchestrate an implementation loop around a single OpenSpec change.
Input: Optionally specify a change name. If omitted, you MUST ask the user which change to implement.
High-level flow
originpr-monitoring-loop skill to monitor CI, reviews, comments, mergeability, and verify-openspec approval through watcher and delegate subagentsSteps
Select exactly one change
If a name is provided, use it.
Otherwise:
openspec list --jsonIMPORTANT:
Always announce: Using change: <name>.
Choose delivery mode (ask immediately - before loading context or starting the implementor)
Use AskUserQuestion (or an equivalent explicit user prompt) right after step 1. Do not defer this until after implementation or push.
Offer two options:
origin on the current branch. After each push, monitor GitHub Actions for the branch / commits you pushed (same behavior as the historical workflow).gh pr create). Then monitor PR workflow runs (checks on the PR), and actively handle PR reviews as described in step 11.Record the user's choice and refer to it from push onward (steps 9–11).
Load OpenSpec status and context
Run:
openspec status --change "<name>" --json
openspec instructions apply --change "<name>" --jsonParse the outputs to determine:
schemaNamestatecontextFiles1, 2, 3) and which of them are still incompleteRead every file listed in contextFiles.
Handle states:
state: "blocked": stop and explain what artifact is missing; suggest continuing the change artifacts firststate: "all_done": skip directly to the push / CI stage because all top-level tasks are already completeTriage: determine execution strategy
Evaluate the change to choose an execution strategy that balances implementation quality with subagent overhead. The goal is to avoid spawning unnecessary subagents for small changes while preserving full rigor for large ones.
Signals to evaluate:
| Signal | Source |
|---|---|
| Top-level task count | Count ## N. headings in tasks |
| Total subtask count | Count - [ ] / - [x] items |
| File scope | Infer from task descriptions - single package/area vs. cross-cutting |
| Inter-task coupling | Do later tasks build directly on earlier ones? |
| Complexity | Do tasks involve non-trivial logic (custom types, plan modifiers, complex CRUD) or are they straightforward (config, docs, Makefile, CI, specs)? |
Choose one of three strategies:
| Strategy | When to use | Implementation | Review |
|---|---|---|---|
| Inline | ≤2 top-level tasks AND ≤~10 subtasks AND single area AND straightforward changes | Orchestrator implements directly, no implementor subagent | Run validation commands directly; spawn review subagents only if the change touches non-trivial logic |
| Single-implementor | ≤4 top-level tasks OR ≤~15 subtasks, with coherent scope | One implementor subagent handles all remaining tasks | One round of parallel review after all tasks complete |
| Per-task | >4 top-level tasks, OR >15 subtasks, OR multi-area scope, OR tasks are largely independent across different packages | Fresh implementor per top-level task | Full parallel review after each top-level task |
These thresholds are guidelines, not rigid rules. Use judgment:
Announce the chosen strategy and reasoning. The user can override.
Determine the remaining top-level tasks
Build an ordered queue of incomplete top-level tasks from the OpenSpec task list.
Interpret a top-level task as the parent task number such as 1, 2, or 3. Each top-level task includes all of its nested subtasks such as 1.1, 1.2, 1.3.
For each incomplete top-level task:
Implement tasks using the chosen strategy
Inline strategy:
The orchestrator implements all tasks directly without spawning an implementor subagent:
openspec-apply-change skill/process for the changeverify-openspec is responsible for archiving when it is satisfiedSingle-implementor strategy:
Launch one write-capable subagent for all remaining tasks:
openspec-apply-change skill/process for the changeverify-openspec is responsible for archiving when it is satisfiedAsk the implementor to report back with:
Per-task strategy:
Launch a dedicated fresh write-capable subagent for the current top-level task only. Do not reuse the prior task's implementor for later top-level tasks.
The implementor prompt should instruct it to:
openspec-apply-change skill/process for the changeverify-openspec is responsible for archiving when it is satisfiedAsk the implementor to report back with:
For all strategies: if the implementor (or the orchestrator in inline mode) is blocked, stop and surface the blocker to the user.
Run validation and review
The validation and review cadence depends on the execution strategy.
7a. Determine the review type
Inspect the change artifacts and implementation to decide whether this is a Terraform entity change.
Treat it as a Terraform entity change when the change is centered on a Terraform resource or data source, for example:
Resource implementation: or Data source implementation:7b. Validation requirements (all strategies)
Required baseline commands:
make lintmake buildRequired acceptance-test validation:
go test -v [-run 'filter'] <package>TF_ACC=1dev-docs/high-level/testing.md when needed: ELASTICSEARCH_ENDPOINTS, ELASTICSEARCH_USERNAME, ELASTICSEARCH_PASSWORD, and KIBANA_ENDPOINTdev-docs/high-level/testing.mdmake testacc when the user explicitly instructs you to run the full acceptance suiteIf the change does not affect code that has relevant acceptance tests, say so explicitly and explain why targeted acceptance coverage is not applicable.
7c. Inline strategy: lightweight review
The orchestrator runs validation commands (make lint, make build, relevant acceptance tests) directly rather than spawning a validation subagent.
For straightforward changes (config, docs, Makefile, CI, spec-only), a self-review by the orchestrator is sufficient. Do not spawn review subagents.
For changes that touch non-trivial logic (custom types, plan modifiers, complex CRUD, error handling), spawn a minimal set of review subagents:
openspec-verify-change skill/process7d. Single-implementor strategy: one review round
After all tasks are complete, launch the full parallel review battery once:
a. Validation runner - launch a dedicated validation subagent to run the validation requirements from step 7b. Use a subagent so these checks do not consume the orchestrator's working context.
b. Critical code review - review for coding standards, idiomatic Go/Terraform provider patterns, obvious logic issues, error handling gaps, and risky regressions. Return prioritized findings only.
c. Proposal compliance review - run the openspec-verify-change skill/process for the same change. Return only actionable mismatches, missing work, or notable warnings.
d. Coverage review for Terraform entities - if this is a Terraform entity change, run the schema-coverage skill/process. Focus on untested or weakly tested high-risk attributes and behaviors.
e. Coverage review for non-entity changes - if this is not a Terraform entity change, run a thorough test analysis instead. Prefer explicit coverage tooling where possible, for example go test -cover. Identify high-risk code paths that lack direct test coverage.
Run the validation runner in parallel with the other review subagents, not as a separate serial phase.
7e. Per-task strategy: review after each top-level task
After each top-level task's implementor reports completion, launch the same full parallel review battery described in 7d (validation runner, critical code review, proposal compliance review, and the appropriate coverage review).
Run the validation runner in parallel with the other review subagents for the same top-level task.
For all review subagents, ask them to return:
Aggregate findings and decide whether to loop
Combine the validation results and review outputs into a single actionable list.
If there are no actionable findings:
If there are actionable findings:
After fixes, rerun validation and relevant reviews before advancing:
Repeat until:
If the loop stalls, pause and ask the user how to proceed.
Push the branch
After every incomplete top-level task has been implemented and passed local review:
originExample:
git push -u origin HEADGuardrails:
Commit-only mode: watch GitHub Actions (branch / commits)
If the user chose commit-only in step 2:
After pushing:
gh run list filtered by branch, or gh against the latest commit SHA)If CI succeeds:
If CI fails:
Repeat until:
PR mode: create PR, watch PR checks, poll reviews, address feedback
If the user chose pull request in step 2:
Create the PR after the initial push (step 9), if it does not already exist:
gh pr create (or equivalent) with an appropriate title and body tied to the OpenSpec changeState file:
.agents/skills/pr-monitoring-loop/scripts/state/.pr-monitor-<pr>.json (gitignored), so subagents can simply invoke check-pr-state.py <pr> and lastPolledAt / seen IDs persist across watcher restarts without any explicit path management--state-file <path> only when you need isolation (e.g., parallel watchers on different branches that share a PR number, or tests). When you do override, pass the same path to every subagent in this loop.git/ - this repo uses git worktrees, where .git is a file that points at a worktree-specific git dir, which would fragment state across worktrees watching the same PRDelegate PR monitoring to pr-monitoring-loop:
pr-monitoring-loop skill for the entire PR monitoring phase.agents/skills/pr-monitoring-loop/scripts/check-pr-state.py <pr> on every cadence tick (or use --watch with the cadence guidance documented in pr-monitoring-loop) so CI (commit-pinned), reviews, PR comments, review comments, unresolved threads, merge conflicts, and stale branch state are checked together. Append --state-file <path> only if you decided to override the default path above.resolveReviewThread), and continue watching the new PR headdelegate, launch a fresh delegate subagent scoped only to the reported failure or feedback (with the same --state-file); after the delegate commits, pushes, replies, and resolves addressed threads, restart the watch cycle for the new head commit with a new delegateWhen monitoring in PR mode, tell the PR watcher to opt in to verify-openspec behavior per the pr-monitoring-loop skill. The pr-monitoring-loop skill defines when to apply the verify-openspec label (via requiresOpenspecVerification) and when the PR is considered verified (runState == "approved"). Do not restate those rules here.
Report final outcome
Summarize:
make lint, make build, and relevant acceptance tests or an explicit explanation when acceptance tests were not applicable)verify-openspec approved the PR or timed out)Recommended subagent responsibilities
Subagent usage scales with the chosen strategy:
make lint, make build, and relevant acceptance tests, then reports a concise validation summary. Use a subagent so validation does not consume the orchestrator's context.pr-monitoring-loop to poll PR state, directly fix simple actionable issues, and return non-simple work to the main agent for delegation to a fresh subagentFor the inline strategy, the orchestrator fills the implementor and validation runner roles directly. Review subagents are spawned only when the change touches non-trivial logic.
Guardrails
verify-openspec will archive the change when it is happymake lint, make build, and relevant acceptance tests run according to dev-docs/high-level/testing.md (or an explicit explanation when acceptance tests are not applicable)pr-monitoring-loop; do not spend main-agent context on repeated PR polling© elastic, MIT. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file
Just SKILL.md in .agents/skills/openspec-implementation-loop of elastic/terraform-provider-elasticstack.
Open the folder on GitHubat commit 2a6096e
Openspec Implementation Loop 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.
| Skill | Stars | Used in | Tokens | Auto-check | Licence | Repo updated |
|---|---|---|---|---|---|---|
| Openspec Implementation Loop this skillelastic/terraform-provider-elasticstack | 210 | — | ~5.7k | Automated safety check: Pass | MIT | |
| Analyze GitHub Action Logswithastro/astro | 63k | 1 repos | ~1.3k | Automated safety check: Pass | Custom licence | |
| GitHub Actions Templatesbartstc/vite-ts-react-template | 122 | 13 repos | ~1.9k | Automated safety check: Pass | MIT | |
| Nushellccusage/ccusage | 19k | — | ~938 | Automated safety check: Pass | Custom licence | |
| Repo Hygiene Scan and FixQwenLM/qwen-code | 28k | — | ~1.7k | Automated safety check: Pass | Apache-2.0 | |
| Senior DevOps Toolkitmaslennikov-ig/claude-code-orchestrator-kit | 259 | 6 repos | ~1.1k | Automated safety check: Notes | Custom licence |
withastro/astro
Analyze recent GitHub Actions workflow runs to identify patterns, mistakes, and improvements.
bartstc/vite-ts-react-template
Create production-ready GitHub Actions workflows for automated testing, building, and deploying applications.
ccusage/ccusage
Guides ccusage Nushell scripts. An agent skill from ccusage/ccusage.
QwenLM/qwen-code
Scheduled CI skill that scans a repository for small, certain docs, test and code hygiene issues and fixes them on one branch with a commit per finding.
maslennikov-ig/claude-code-orchestrator-kit
Comprehensive DevOps skill for CI/CD, infrastructure automation, containerization, and cloud platforms (AWS, GCP, Azure). Includes pipeline setup…
Chachamaru127/claude-code-harness
Diagnoses failing CI pipelines and tests, deciding first whether the test or the implementation is at fault, and hands hard cases to a dedicated fixer subagent.
elastic/terraform-provider-elasticstack
Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements.
elastic/terraform-provider-elasticstack
Implement tasks from an OpenSpec change. An agent skill from elastic/terraform-provider-elasticstack.
elastic/terraform-provider-elasticstack
Archive a completed change in the experimental workflow. An agent skill from elastic/terraform-provider-elasticstack.
elastic/terraform-provider-elasticstack
Monitor GitHub pull requests through a subagent-based loop that watches CI checks, review comments, PR comments, review state, merge conflicts, and branch freshness.
elastic/terraform-provider-elasticstack
MANDATORY skill that activates whenever the OpenSpec proposal phase begins.
elastic/terraform-provider-elasticstack
Propose a new change with all artifacts generated in one step.
Works with
Categories
Orchestrates an end-to-end implementation loop for a single OpenSpec change: select a change, ask commit-only vs PR delivery, triage the change to determine an execution strategy (inline…. Openspec Implementation Loop is an agent skill from elastic/terraform-provider-elasticstack, published by the product's own GitHub organization.
Openspec Implementation Loop fits situations like: the user wants to implement an approved OpenSpec proposal/change with iterative review and CI feedback; tasks that involve CI/CD.
Run `npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a claude-code`. Or copy the skill folder (.agents/skills/openspec-implementation-loop in elastic/terraform-provider-elasticstack) into .claude/skills/openspec-implementation-loop in your project. Claude Code loads it when a task matches its description.
Run `npx skills add elastic/terraform-provider-elasticstack --skill openspec-implementation-loop -a codex`. Or copy the skill folder (.agents/skills/openspec-implementation-loop in elastic/terraform-provider-elasticstack) into .agents/skills/openspec-implementation-loop in your project. Codex loads it when a task matches its description.
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 openspec-implementation-loop -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/openspec-implementation-loop, .gemini/skills/openspec-implementation-loop, .github/skills/openspec-implementation-loop and .opencode/skills/openspec-implementation-loop in your project.
Going by SKILL.md and its folder, Openspec Implementation Loop needs the command-line tools its instructions call (make, gh, go and git) and credentials named ELASTICSEARCH_PASSWORD. Compatibility (from SKILL.md): Requires openspec CLI, git, and GitHub CLI..
SKILL.md contains no URLs. Its commands use gh and git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.
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.
Openspec Implementation Loop is published under the MIT licence (declared in SKILL.md). It allows redistribution, so the full SKILL.md is shown on this page.
About 5.7k tokens (SKILL.md is roughly 23k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.
Skills that share tags, products or a category with Openspec Implementation Loop: Analyze GitHub Action Logs (withastro/astro, 63k stars), GitHub Actions Templates (bartstc/vite-ts-react-template, 122 stars), Nushell (ccusage/ccusage, 19k stars) and Repo Hygiene Scan and Fix (QwenLM/qwen-code, 28k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.
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 7, 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.