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

E5052 Rmap Read Modify Write Command

ASecurity

Derive the merge, the sizing and the option bits of a SpaceWire RMAP read-modify-write command. Use when an ECSS-E-ST-50-52C clause 5.8.2.5 operation is built or reviewed: split the data field into an operand and an equal-width mask, confirm the length is even and permitted, check the option bits that pick this command out of the others, apply the merge taking masked bits from the operand, size the command against the half-length reply, and count the bits really flipped. Flags an empty mask, ...

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

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 e5052-rmap-read-modify-write-command --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E5052 Rmap Read Modify Write Command?

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

Security grade badge for E5052 Rmap Read Modify Write Command
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e5052-rmap-read-modify-write-command/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e5052-rmap-read-modify-write-command)

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

Download with Pro
Files
SKILL.md
---
name: e5052-rmap-read-modify-write-command
description: "Derive the merge, the sizing and the option bits of a SpaceWire RMAP read-modify-write command. Use when an ECSS-E-ST-50-52C clause 5.8.2.5 operation is built or reviewed: split the data field into an operand and an equal-width mask, confirm the length is even and permitted, check the option bits that pick this command out of the others, apply the merge taking masked bits from the operand, size the command against the half-length reply, and count the bits really flipped. Flags an empty mask, a full mask, operand bits the mask discards and an unaligned address. Trigger: ecss, e-st-50-52c, rmap-read-modify-write, rmap-operand-mask-pair, rmap-atomic-bit-merge, rmap-rmw-reply-length, rmap-rmw-address-alignment, rmap-rmw-option-bits."
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-52-rmap-scope, e5052-rmap-read-modify-write-command, rmap-operand-mask-pair, rmap-atomic-bit-merge, rmap-rmw-reply-length, rmap-rmw-address-alignment, rmap-rmw-option-bits]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS SpaceWire RMAP — Read-Modify-Write Command (space-systems/ecss/e5052-rmap-read-modify-write-command)

Use when the task is the read-modify-write command of ECSS-E-ST-50-52C
clause 5.8.2.5 — changing selected bits of one location without
disturbing the rest of it, in a single transaction the target performs
without releasing the location in between.

## Domain quick reference

- The data field of this command is two things side by side: an operand
  and a mask of exactly the same width. That is why its length is always
  even, and why the reply is exactly half as long as the command data —
  the reply returns the content found before the merge, not the operand
  and mask again.
- The merge is per bit. Every bit the mask selects is taken from the
  operand; every bit it does not select is left as the target found it.
  Bits set in the operand outside the mask are discarded, so an operand
  that carries them is either sloppy or aimed at a different mask.
- The whole value of the command is that the read and the write are not
  separable. A read followed by a write from the initiator leaves a
  window in which another initiator, or the target's own logic, can
  change the location; this command closes that window.
- The operand width is one, two, three or four bytes, which is why the
  data field runs from two to eight bytes in even steps. A wider update
  is not this command's job.
- An all-zero mask reads and rewrites the same content, which costs a
  full transaction and changes nothing. An all-ones mask replaces the
  whole location, which a plain write does with no read half at all.
  Both are legal encodings and both usually mean the mask was built
  wrong.
- The operation touches one address. Aligning that address to the
  operand width keeps the update inside one natural register and avoids
  a target implementation splitting it across two.

## Workflow

1. Normalise the specification and refuse the inputs that are errors:
   an empty data field, an odd length, a length outside the permitted
   even set, a byte outside its range, a declared length that disagrees
   with the supplied bytes, and a previous-content record whose width is
   not the operand width.
2. Split the data field at its midpoint into operand and mask, and take
   the operand width from that midpoint rather than from a separate
   declaration.
3. Pack the instruction byte from the fixed option-bit combination that
   identifies this command plus the reply-path length code, and reject a
   captured byte whose option bits are any other combination.
4. Size the command as header plus reply path plus operand and mask plus
   the payload check byte, and the reply as reply header plus the
   operand width plus its own check byte.
5. Apply the merge to the previous content when it is supplied, and
   count the bits that actually flip — a merge that changes nothing is
   worth knowing about before the transaction is scheduled.
6. Grade the mask: empty, full, or discarding operand bits; then grade
   the address against the operand width.
7. Report operand, mask, widths, instruction byte, both sizes, mask
   selectivity, findings and a single acceptable flag.

## Pitfalls

- Sizing the reply from the command data length. The reply returns the
  previous content only, so it is half the command payload; a buffer
  sized for the full data field will be half empty and a buffer sized
  from the reply will under-read the command.
- Building the mask from the bits you want to end up set rather than the
  bits you want to control. Clearing a bit needs it selected in the mask
  and clear in the operand; a mask built from the target value alone can
  never clear anything.
- Treating an all-ones mask as the safe default. It turns the command
  into a slower write and discards the atomicity argument that justified
  using the command in the first place.
- Splitting the operation into a read then a write when a target reports
  the command unimplemented. The two are not equivalent; the split
  reintroduces exactly the window the command exists to close.
- Ignoring the previous content the reply returns. It is the evidence
  that the merge started from the state the design assumed, and it is
  the only record of what was there before.

## Behavior contract (gate 3)

The specification validation, operand and mask split, option-bit packing
and rejection, command and reply sizing, masked merge, selected-bit and
changed-bit counts and the mask and alignment grading are exercised by
the gate 3 contract test:
scripts/test_e5052_rmap_read_modify_write_command.py against
scripts/e5052_rmap_read_modify_write_command_logic.py (stdlib unittest,
offline). Run:
python3 scripts/test_e5052_rmap_read_modify_write_command.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 →