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

E5053 User Application Field

ASecurity

Allocate and resolve the user application octet of a packet transfer protocol data unit. Use when an ECSS-E-ST-50-53C clause 5.3.5 node has several users sharing one logical address: fix the octet offset from the path length, read the identifier a received unit carries, hand the packet to the application registered on it and drop a unit whose identifier nothing claims. On the build side, register applications into the node table, refuse an identifier already held and an application registered...

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 e5053-user-application-field --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E5053 User Application Field?

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

Security grade badge for E5053 User Application Field
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e5053-user-application-field/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e5053-user-application-field)

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

Download with Pro
Files
SKILL.md
---
name: e5053-user-application-field
description: "Allocate and resolve the user application octet of a packet transfer protocol data unit. Use when an ECSS-E-ST-50-53C clause 5.3.5 node has several users sharing one logical address: fix the octet offset from the path length, read the identifier a received unit carries, hand the packet to the application registered on it and drop a unit whose identifier nothing claims. On the build side, register applications into the node table, refuse an identifier already held and an application registered twice, take the lowest free identifier or honour a free preference, and report how much of the one-octet space is committed. Trigger: ecss, e-st-50-53c, spacewire-user-application-field, user-application-identifier-allocation, user-application-table-collision, user-application-demultiplexing, user-application-field-offset."
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-50-53-packet-transfer-scope, e5053-user-application-field, spacewire-user-application-field, user-application-identifier-allocation, user-application-table-collision, user-application-demultiplexing, user-application-field-offset, user-application-space-audit]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Packet Transfer — User Application Field (space-systems/ecss/e5053-user-application-field)

Use when the task is the user application octet of ECSS-E-ST-50-53C
clause 5.3.5 -- the field that gets a packet from a destination node to
the right user of the protocol inside it.

## Domain quick reference

- The target logical address delivers the unit to a node. It does not
  say which user of the protocol inside that node the packet is for, and
  the user application octet is the only field that does.
- That makes one logical address enough for several users. Without the
  field, every application behind an address would need its own address,
  and the address space is the scarcer of the two.
- The identifier space is one octet and it is administered per node, not
  per network. Two nodes may use the same identifier for different
  applications without any conflict at all.
- A collision behind one address is undetectable at run time. Both
  applications receive each other's packets, neither sees an error, and
  nothing in the unit distinguishes the two, so the collision has to be
  refused at registration.
- Registering one application on two identifiers is the mirror defect.
  It splits the application's packet stream across two demultiplex
  paths, and only one of them usually gets tested.
- An identifier no application claims is dropped, not handed to a
  neighbour. Delivering to the nearest registered user turns a
  configuration error into corrupt application data.
- Identifier zero is an identifier like any other. Treating it as absent
  or unset loses whichever application was allocated it.

## Workflow

1. Fix the user application octet offset from the number of path-address
   bytes, refusing a negative or non-integer path length.
2. On the build side, register each application into the node's table:
   refuse an identifier already held, and refuse an application that is
   already registered on another identifier.
3. Allocate a new identifier by taking the lowest free value, or honour
   a stated preference where it is free and refuse it where it is not.
4. Report how much of the one-octet space is committed and which value
   comes next, so a node approaching exhaustion is visible before it
   runs out.
5. On reception, check the unit is long enough, read the octet at the
   offset, and look it up in the node's table.
6. Deliver to the registered application, or drop the unit and record
   that the identifier named nothing behind this address.

## Pitfalls

- Giving two applications behind one address the same identifier. There
  is no run-time symptom: each simply receives the other's packets, so
  the check belongs at registration and nowhere else.
- Treating identifier zero as unallocated. It is a valid identifier, and
  a table that skips it loses every packet for the application holding
  it.
- Delivering an unregistered identifier to the nearest registered user.
  It converts a configuration error into application data that looks
  legitimate and is not.
- Allocating identifiers per network instead of per node. The space is
  administered behind each address, so network-wide allocation exhausts
  one octet far sooner than it needs to.
- Reading the octet at a fixed offset. Path-address bytes move it, so a
  hard-coded position reads the reserved octet or the first packet byte
  on every path-routed unit.

## Behavior contract (gate 3)

The offset computation, table registration with both collision refusals,
identifier allocation, space audit and receive-side resolution are
exercised by the gate 3 contract test:
scripts/test_e5053_user_application_field.py against
scripts/e5053_user_application_field_logic.py (stdlib unittest,
offline). Run:
python3 scripts/test_e5053_user_application_field.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 →