Skills DirectorySkills Directory
SkillsLearnSecurityCategoriesDocsCommunityBlog
Sign InSubmit Skill
Skills Directory

Security-tested agent skills for Claude, coding agents, and AI workflows.

Directory

  • Browse Skills
  • All Skills A–Z
  • Claude Skills
  • Claude Code Skills
  • Agent Skills
  • Categories
  • Authors
  • Submit a Skill

Learn

  • Learn Hub
  • Install Claude Skills
  • Write SKILL.md
  • Skills vs MCP
  • Directories Compared

Security

  • Security
  • Methodology
  • Secure Claude Skills
  • Security Badges

Company

  • About
  • Community
  • Blog
  • API Docs
  • Advertise

2026 Skills Directory. All rights reserved.

ProTermsPrivacyRefunds
Back to skills

E4008 Assembly Instance

ASecurity

Validate an assembly Instance against the two normative items of ECSS-E-ST-40-08C clause 4.2.2.3. Use when a composite instance in a simulation assembly is reviewed: walking the containment tree to confirm the assembly actually declares the children it contains, that every child name is a legal identifier used once inside the containment, and that the nesting does not close on itself; then resolving both ends of every declared link onto a child the assembly contains or an interface it explici...

2 stars
0 votes
0 copies
0 views
Added 9/27/2026
ai-agentspythonnodegit

Works with

claude code

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add ashfordeOU/aero-agent-skills --skill e4008-assembly-instance --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E4008 Assembly Instance?

Add the live security badge to your README — it updates automatically with every re-scan.

Security grade badge for E4008 Assembly Instance
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e4008-assembly-instance/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e4008-assembly-instance)

More formats (shields.io, HTML) on the badges page.

Download with Pro
Files
SKILL.md
---
name: e4008-assembly-instance
description: "Validate an assembly Instance against the two normative items of ECSS-E-ST-40-08C clause 4.2.2.3. Use when a composite instance in a simulation assembly is reviewed: walking the containment tree to confirm the assembly actually declares the children it contains, that every child name is a legal identifier used once inside the containment, and that the nesting does not close on itself; then resolving both ends of every declared link onto a child the assembly contains or an interface it explicitly exports. Reports dangling endpoints, containment cycles and children no link reaches. Trigger: ecss, e-st-40-08c, simulation-assembly-instance, assembly-containment-tree, assembly-child-name-uniqueness, assembly-internal-link-resolution, assembly-exported-interface, assembly-containment-cycle."
license: Apache-2.0
compliance: STANDARDS-REF
standards:
  - id: ecss
    reference-only: true
gated: false
domain: space-systems
pack: space-systems
compatibility: "agentskills.io SKILL.md; any SKILL.md host (Claude Code, Hermes, OpenClaw)"
metadata:
  domain: space-systems
  subdomain: ecss
  tags: [ecss, e-st-40-08-simulation-modelling-scope, e4008-assembly-instance, simulation-assembly-instance, assembly-containment-tree, assembly-child-name-uniqueness, assembly-internal-link-resolution, assembly-exported-interface, assembly-containment-cycle]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Simulation Modelling Platform — Assembly Instance (space-systems/ecss/e4008-assembly-instance)

Use when the task is the assembly Instance requirements of
ECSS-E-ST-40-08C clause 4.2.2.3 -- grading a composite, an instance
that contains other instances, against the two items the clause
carries: what it contains, and whether its internal wiring resolves.

## Domain quick reference

- An assembly Instance is judged on containment, not on its own fields.
  The fields, references and path of the composite itself are the
  ordinary instance requirements; this clause adds the two questions a
  composite raises and a leaf instance does not.
- Item one is the containment declaration. The assembly has to say what
  it contains, each child name has to be a legal identifier, each name
  has to be used once inside the containment, and the nesting has to
  terminate. A composite that declares nothing is not an assembly, and
  a definition that appears inside its own containment chain describes
  an infinitely deep tree that no build can finish.
- Item two is link resolution, and it is where composites actually
  fail. A link has two endpoints, each written as an owner and a port.
  A resolvable endpoint names either a child the assembly contains or
  an interface the assembly explicitly exports; anything else is a
  reference into a scope the composite has no access to.
- The export list is what makes a link out of the assembly legitimate.
  Reaching a sibling directly, without an export to carry the signal,
  couples two composites through a path neither of them declares, and
  the coupling then breaks the first time either is reused elsewhere.
- An endpoint that reaches through more than one level is refused
  rather than followed. A composite wires its own children; a link that
  addresses a grandchild bypasses the intermediate assembly's
  interface, which is the one thing the containment was meant to fix.
- A child that no link touches is worth listing but is not a defect.
  Spares, monitors and instances driven only by the schedule are all
  legitimately unwired, so the review reports them and moves on.

## Workflow

1. Walk the containment tree from the assembly down, building the path
   of every contained node. Refuse a duplicate child name inside one
   containment and refuse a definition that reappears in its own
   chain.
2. Take the direct child names -- those are the only owners a link of
   this assembly may address -- and the declared export list, refusing
   a repeated export.
3. Parse each link endpoint into an owner and a port. Refuse an
   endpoint with no port and one that reaches through more than one
   level.
4. Resolve each endpoint: an owner naming a direct child resolves, the
   reserved self owner resolves when its port is a declared export, and
   everything else is a finding naming the end that failed.
5. Grade the two items separately, so a clean containment with broken
   wiring reports exactly that, and roll them into one verdict.
6. List the children no link reaches as information alongside the
   verdict, not as a failure.

## Pitfalls

- Grading a composite with the leaf-instance checks alone. Fields and
  paths say nothing about whether the thing inside is wired, and a
  composite passes every leaf check while delivering no signal at all.
- Following a multi-level endpoint because it happens to resolve. It
  may well address a real grandchild, and it still violates the
  containment: the intermediate assembly's interface is bypassed, and
  the grandchild can then never be replaced without editing a link that
  does not belong to its parent.
- Treating a direct reach into a sibling composite as equivalent to an
  export. The export is the declaration that the signal is part of the
  assembly's interface; without it the coupling is undocumented and
  survives only as long as both composites stay where they are.
- Reporting a containment cycle as a deep tree. The recursion does not
  terminate, so a walk that tries to enumerate it never returns a
  result to report; the cycle has to be detected on the definition
  chain rather than on a depth counter.
- Calling an unwired child a defect. A spare or a schedule-driven
  instance is legitimately unlinked, and failing the assembly for it
  buries the endpoints that genuinely did not resolve.
- Letting two links share a name. The name is how a finding is reported
  and how a later edit addresses the link, so a duplicate makes both
  ambiguous and is rejected outright rather than graded.

## Behavior contract (gate 3)

The identifier rule, path construction, endpoint parsing, containment
walk with its duplicate and cycle refusals, export declaration, link
resolution against children and exports, the two-item grading and the
unlinked-child report are exercised by the gate 3 contract test:
scripts/test_e4008_assembly_instance.py against
scripts/e4008_assembly_instance_logic.py (stdlib unittest, offline).
Run:
python3 scripts/test_e4008_assembly_instance.py

## Compliance

- ECSS standards are freely downloadable (ESA); cite the source and
  paraphrase per standards-map.yaml.
- compliance: STANDARDS-REF, gated: false.

Attribution

ashfordeOUashfordeOU
View sourceMore from ashfordeOU →
SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Is this your skill, or is something wrong with this listing? Request removal or report an issue. Author removals are honored within 72 hours.

Comments (0)

No comments yet. Be the first to comment!

SSkills DirectorySkills Directory

Know which skills are safe — weekly.

Best new skills + every skill we flagged as malicious. From the team that scanned 103,619.

Join free

Related Skills

Caveman

Ultra-compressed communication mode that cuts output tokens while keeping technical accuracy. Levels: lite, full, ultra and the wenyan variants. Use for /caveman, "caveman mode", "talk like caveman", "be brief" or "less tokens".

1074701 votes

Hyperplan

Adversarial multi-agent planning skill. Self-orchestrates 5 hostile category members (unspecified-low, unspecified-high, deep, ultrabrain, artistry) via team-mode for ruthless cross-critique debate, distills only the defensible insights, then MANDATORILY hands the distilled insight bundle to the `plan` agent for executable plan formalization. Use when planning needs maximum rigor and surfacing of weak assumptions, blind spots, and over-engineering. Triggers: 'hyperplan', 'hpp', '/hyperplan', ...

694821 votes

Mcp Code Execution

Routes multi-tool workflows through MCP servers for large datasets and pipelines. Use when Bash tool overhead is limiting throughput on data-heavy tasks.

3351 votes

catchup

Recovers the conversation and failed tool calls of a previous Codex, Claude Code, Antigravity, Cline, Copilot CLI, Cursor, DeepSeek Harness, Kimi, OpenCode, Pi Agent, or ZCode session. Use when the user says "catch up", "what did the last session do", "get me up to speed", "I switched agents", asks to recover/summarize a previous session before continuing, or asks to diagnose or report a catchup failure. Do NOT use for the current conversation, git history, or any non-agent log.

691 votes

math-skill

A comprehensive mathematical reasoning skill for AI assistants — handles arithmetic to research-level problems with rigorous step-by-step reasoning, systematic verification, and transparent uncertainty handling

381 votes
View all in ai-agents →