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

E20 Battery Charge Discharge Management

ASecurity

Use when verify that a spacecraft battery charger can bring a deeply discharged pack, including one taken all the way to zero volts, back into service under ECSS-E-ST-20C clause 5.7.3: categorize the cell terminal state from its measured voltage, select the charge stage that state permits, derive each stage current limit from the rated capacity, time the recovery trickle against its budget, and report a commanded current, cell voltage, charge temperature, depth of discharge or end-of-discharg...

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

Works with

claude codeterminal

Security Analysis

A100/100

Scanned 9/27/2026

Install to Claude Code

$npx -y skills add ashfordeOU/aero-agent-skills --skill e20-battery-charge-discharge-management --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of E20 Battery Charge Discharge Management?

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

Security grade badge for E20 Battery Charge Discharge Management
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/ashfordeou-e20-battery-charge-discharge-management/badge)](https://www.skillsdirectory.com/skills/ashfordeou-e20-battery-charge-discharge-management)

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

Download with Pro
Files
SKILL.md
---
name: e20-battery-charge-discharge-management
description: "Use when verify that a spacecraft battery charger can bring a deeply discharged pack, including one taken all the way to zero volts, back into service under ECSS-E-ST-20C clause 5.7.3: categorize the cell terminal state from its measured voltage, select the charge stage that state permits, derive each stage current limit from the rated capacity, time the recovery trickle against its budget, and report a commanded current, cell voltage, charge temperature, depth of discharge or end-of-discharge voltage outside the permitted window. Trigger: ecss, e-st-20-electrical-scope, battery-charge-management, zero-volt-battery-recovery, deep-discharge-recovery, recovery-trickle-charge, charge-stage-selection, depth-of-discharge-limit, charge-temperature-window."
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-20-electrical-scope, e20-battery-charge-discharge-management, battery-charge-management, zero-volt-battery-recovery, deep-discharge-recovery, recovery-trickle-charge, charge-stage-selection, depth-of-discharge-limit]
  version: 0.1.0
  author: Aero Agent Skills
---

# ECSS Electrical Engineering -- Battery Charge and Discharge Management (space-systems/ecss/e20-battery-charge-discharge-management)

Use when the task is the clause 5.7.3 charger-behaviour demonstration
of ECSS-E-ST-20C -- showing that the charge and discharge management
keeps the battery inside its permitted window in normal operation and,
crucially, that the charger can still reanimate a pack that has been
driven deep, down to and including zero volts.

## Domain quick reference

- A cell is categorized once, from its measured terminal voltage, into
  one of four states: zero volt (at or under the reanimation ceiling),
  deep discharge (above that ceiling but under the normal operating
  floor), operating (inside the normal band), or overvoltage (above
  the maximum charge voltage). Every threshold is a design figure the
  caller supplies; the clause fixes the behaviour, not the numbers.
- Each state permits exactly one charge stage. Zero volt permits only
  a reduced recovery trickle, deep discharge a somewhat larger
  precharge, the operating band full bulk constant current, and
  overvoltage no charge at all. Commanding a stage the state does not
  permit is a finding in its own right, separate from whether the
  current happens to be small.
- The current limit of a stage is its C-rate times the rated capacity,
  so the same charger yields different limits for different packs.
  The recovery trickle exists because a cell taken to zero volts can
  be damaged by a full-rate restart; charging it gently until it
  reaches the bulk entry point is the behaviour the clause is after.
- How long that takes is the recovered fraction of rated capacity
  divided by the trickle current. A charger that can technically
  restart from zero volts but needs longer than the operational
  recovery budget has not satisfied the requirement, so the timing is
  checked alongside the capability flag.
- Charge temperature is a two-sided window. The cold side is not
  symmetric with the hot side in consequence -- charging a cell below
  its lower bound plates metal inside it -- so the two edges are
  reported as separate findings rather than a single out-of-range.
- The discharge side carries two limits: depth of discharge as a
  fraction of rated capacity, and a floor on the end-of-discharge
  voltage. A pack can sit inside one and outside the other, so both
  are evaluated and both are reported.
- Limits are met when the measured value sits at or inside them. A
  measured figure that arrives as a sum of samples or a ratio can land
  a few units in the last place past an exactly compliant boundary, so
  the comparisons absorb that representation error rather than moving
  the limit.

## Workflow

1. Categorize the cell terminal state from its measured voltage
   against the zero-volt, deep-discharge and maximum-charge
   thresholds; reject a negative voltage and a threshold set that does
   not increase strictly.
2. Derive the charge stage the state permits and compare it with the
   stage actually commanded; report a mismatch.
3. Derive the commanded stage's current limit from its C-rate and the
   rated capacity, and report a commanded current above it, a charge
   current present while the stage is inhibit, and a commanded cell
   voltage above the maximum charge voltage.
4. Check the cell temperature against the permitted charge window and
   report the cold and hot breaches separately.
5. For a zero-volt or deep-discharge state, confirm the charger
   declares it can restart from there, compute the recovery-trickle
   time from the recovered capacity fraction and the stage current,
   and report a time beyond the recovery budget.
6. Compute the depth of discharge and compare it and the
   end-of-discharge voltage against their limits.
7. Aggregate the stage, charge, thermal, recovery and discharge
   findings; the management is compliant only when all five lists are
   empty.

## Pitfalls

- Reading "the charger works" from a normal-band charge test and
  declaring clause 5.7.3 satisfied -- the clause is specifically about
  the deep case, and a charger that refuses to start into a pack below
  its undervoltage lockout passes every nominal test and still fails.
- Applying the bulk current limit to a recovery restart because the
  commanded value is below the bulk rating -- the limit that applies
  is the one belonging to the stage the cell state permits, which is
  far smaller.
- Treating a declared zero-volt recovery capability as sufficient
  without timing it; a trickle that needs longer than the operational
  budget leaves the battery unusable for the window that matters.
- Reporting a cold charge and a hot charge as the same out-of-range
  condition -- the failure mechanisms differ, and collapsing them
  hides the plating case that has to be inhibited rather than merely
  derated.
- Checking depth of discharge alone and letting the end-of-discharge
  voltage float; an aged pack reaches its voltage floor well before
  the nominal depth limit, and only the voltage check catches it.
- Comparing a measured sum or ratio against a limit with a bare
  inequality -- an exactly compliant discharge can report a breach of
  a few units in the last place, so the comparison must absorb
  representation error without loosening the limit.

## Behavior contract (gate 3)

The cell-state categorization, stage selection, stage current limit,
recovery timing, charge-temperature window, depth-of-discharge and
end-of-discharge logic is exercised by the gate 3 contract test:
scripts/test_e20_battery_charge_discharge_management.py against
scripts/e20_battery_charge_discharge_management_logic.py (stdlib
unittest, offline). Run:
python3 scripts/test_e20_battery_charge_discharge_management.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 →