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

E50 Spacecraft And Link Identification

ASecurity

Validate that every spacecraft and every space link in a communications design is identified unambiguously, under ECSS-E-ST-50C clause 5.6.13.1. Check each spacecraft identifier fits the field width the chosen transfer frame version provides, is not the reserved all-ones pattern meaning no spacecraft, and collides with nothing else in its own namespace; check each link identity of spacecraft, direction and physical channel is unique; and report namespace headroom and the next assignable ident...

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

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 e50-spacecraft-and-link-identification --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E50 Spacecraft And Link Identification?

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

Security grade badge for E50 Spacecraft And Link Identification
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e50-spacecraft-and-link-identification/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e50-spacecraft-and-link-identification)

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

Download with Pro
Files
SKILL.md
---
name: e50-spacecraft-and-link-identification
description: "Validate that every spacecraft and every space link in a communications design is identified unambiguously, under ECSS-E-ST-50C clause 5.6.13.1. Check each spacecraft identifier fits the field width the chosen transfer frame version provides, is not the reserved all-ones pattern meaning no spacecraft, and collides with nothing else in its own namespace; check each link identity of spacecraft, direction and physical channel is unique; and report namespace headroom and the next assignable identifier. Use when assigning or reviewing spacecraft and link identifiers. Trigger: ecss, e-st-50-communications, spacecraft-identifier-assignment, space-link-identity-uniqueness, transfer-frame-version-identifier-width, reserved-all-ones-spacecraft-identifier, spacecraft-identifier-namespace-headroom."
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)"
clauses:
  - standard: ECSS-E-ST-50C Rev.2
    clause: 5.6.13.1
    items: [a]
    relation: implements
metadata:
  domain: space-systems
  subdomain: ecss
  tags: [ecss, e-st-50-communications, e50-spacecraft-and-link-identification, spacecraft-identifier-assignment, space-link-identity-uniqueness, transfer-frame-version-identifier-width, reserved-all-ones-spacecraft-identifier, spacecraft-identifier-namespace-headroom]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Communications — Spacecraft and Link Identification (space-systems/ecss/e50-spacecraft-and-link-identification)

Use when spacecraft and space link identifiers are being assigned or reviewed,
per ECSS-E-ST-50C clause 5.6.13.1 — whether a receiving entity can say whose
data it holds and which link delivered it.

## Domain quick reference

- Unambiguous means three separate things, and a design can fail any one
  of them alone. The identifier fits the field it is carried in, it is
  not the reserved pattern, and nothing else in the same namespace has
  it.
- The field width comes from the transfer frame version, not from the
  mission. The same number is a legal identifier under one version and
  does not fit at all under another, so the version has to be settled
  before the numbers are handed out.
- The all-ones pattern is not an identifier. It means no spacecraft is
  identified, so a namespace planned against the raw field capacity runs
  out one spacecraft earlier than the plan says.
- A namespace is per frame version. Two spacecraft carrying the same
  number under different frame versions are distinguishable, and calling
  that a collision blocks an assignment that was fine.
- A link is not identified by its name. It is identified by the
  spacecraft it serves, the direction it runs in and the physical channel
  it occupies, and two links matching on all three cannot be told apart
  no matter what the schedule calls them.
- Headroom is part of the answer. A namespace with two identifiers left
  is a constraint on the next mission phase, and it is invisible unless
  the assessment reports it.

## Workflow

1. Settle the transfer frame version for each spacecraft first. It
   determines the field width, and every identifier check depends on it.
2. Declare each spacecraft with its name, frame version and identifier.
   Reject a float or a boolean rather than coercing it — a bit field
   holds integers, and a coerced value hides where it came from.
3. Check each identifier against the field: not negative, inside the
   width, and not the reserved all-ones pattern.
4. Group the identifiers by frame version and look for collisions inside
   each group only. A cross-namespace match is not a collision.
5. Declare each link with the spacecraft it serves, its direction and its
   physical channel, build the identity from those three, and name the
   frame field that carries it alongside the spacecraft identifier, so
   that a frame taken off a space-ground exchange on its own says which
   spacecraft it came from and which link brought it.
6. Report a link naming an undeclared spacecraft separately from a link
   identity collision. One is a missing declaration, the other is two
   links that cannot be told apart.
7. Report the remaining assignable identifiers per namespace, and give
   the lowest free one when a new assignment is needed. Raise on an
   exhausted namespace rather than returning the reserved pattern.

## Obligations

| Item | Step |
|---|---|
| ECSS-E-ST-50C Rev.2 5.6.13.1a | 5 |

## Pitfalls

- Planning a namespace against two to the width. The reserved all-ones
  pattern is not assignable, and the plan is one identifier optimistic
  from the start.
- Assigning identifiers before the frame version is fixed. A change of
  version narrows the field and silently invalidates part of the set.
- Treating the same number under two frame versions as a clash. They sit
  in different namespaces and are distinguishable.
- Identifying a link by the name on the schedule. Two links with
  different names and the same spacecraft, direction and channel are the
  same link as far as a receiver is concerned.
- Accepting a link that names a spacecraft nobody declared. It reads as a
  typo and is usually a segment that never got into the identifier plan.
- Returning something when the namespace is exhausted. A reserved pattern
  or an out-of-field value handed back as an assignment is worse than the
  error it replaced.

## Behavior contract (gate 3)

Frame version validation and field widths, capacity with the reserved
all-ones pattern excluded, identifier range and type checking, direction
and link normalisation, the three-part link identity, per-namespace
collision detection, undeclared-spacecraft links, duplicate names,
namespace headroom and the next assignable identifier with exhaustion
raising are exercised by the gate 3 contract test:
scripts/test_e50_spacecraft_and_link_identification.py against
scripts/e50_spacecraft_and_link_identification_logic.py (stdlib unittest,
offline).
Run:
python3 scripts/test_e50_spacecraft_and_link_identification.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 →