hld — independently scanned and version-tracked by SaferSkills.
SaferSkills independently audited hld (Agent Skill) and scored it 100/100 (green). The audit ran 55 deterministic rules across Security, Supply Chain, Maintenance, Transparency, and Community; it found 0 high-severity and 0 lower-severity findings. The full rule-by-rule trace and per-finding evidence are below. Free, methodology-open.
Findings & checks · 0 flagged
Every scanned point with the score it earned and what moved between them.
First recorded scan — no prior version to compare against.
The primary manifest — the file an agent reads to learn what this artifact does.
Generate a High Level Design (HLD) document from a freeform description and write it to a markdown file.
$ARGUMENTS may include:
--mode living|strict — sets the doc's Mode. Defaults to strict if omitted (no behavior change from before this flag existed).--amend [path] <change description> — targeted edit to an existing doc's ## Requirements section only. <path> may be omitted if it's already clear from this conversation — see the Amend Mode steps below, which are skipped entirely when this flag isn't present.If $ARGUMENTS is empty, ask the user to provide a description and stop.
hld- (e.g. /hld user auth service → hld-user-auth-service.md).design/<slug>.md already exists.REQ-* rows and their checked/unchecked state exactly.Mode, Last Reconciled, and Last Amended values unless --mode was explicitly passed on this run.REQ-N) or update non-Requirements sections as directed by the new input — do not regenerate sections that aren't affected by it._TODO: describe the external systems this component interacts with._).Output structure:
# HLD: <title derived from the description>**Date:** <today's date in YYYY-MM-DD format>**Status:** Draft**Author:** <!-- your name -->**Mode:** Living | Strict — from --mode, or Strict if not passed.**Last Reconciled:** <date> @ <short-sha> — leave blank until the first /reconcile run.**Last Amended:** <date> — leave blank until the first --amend run.## Overview — 2-4 sentences describing what this system or feature does and why it exists. Write as if the reader has no prior context.## Goals — what this design must achieve, as bullet points.## Non-Goals — what is explicitly out of scope. At least one item.## System Context — where this component fits in the broader system. What calls it? What does it call? List known external dependencies.## Proposed Design — the core design in plain English. Include key decisions and reasoning, how the main flow works end to end, and any important constraints or assumptions. In Living mode, tag genuinely uncertain low-level detail inline with [PENDING SPIKE VALIDATION] instead of inventing content — high-level system boundaries, goals, and data contracts must still be fully populated.## Components — a two-column markdown table with Component and Responsibility columns.## Data Flow — the flow of data through the system as a numbered list.## Alternatives Considered — each alternative as a bullet with 1-2 sentences on the trade-off that led to it being rejected.## Requirements — one row per requirement:- [ ] **REQ-1** — <requirement statement> _(optional: Blocked/In Progress/Needs Review/Needs Spike — reason)_ IDs are assigned sequentially and are permanent — never renumber or reuse an ID, even after a row is struck through. New requirements always get the next unused sequential ID.
## Open Questions — unchecked checkboxes for questions that need answers before implementation begins.design/ directory in the current working directory if it does not already exist. Write the document to design/<slug>.md.design/<slug>.md) and confirm it was written. List any sections that were left as stubs. If ## Open Questions has any unchecked items, mention that /resolve-open-questions design/<slug>.md can walk through them.--amend [path] <change description>)<path>:--amend, use it./hld, or referenced by an earlier /lld --amend, /add-spike, /resolve-open-questions, or /reconcile call in this session). If exactly one is found, confirm it with the user before proceeding rather than silently assuming. If more than one is found, list them and ask which to use. If none is found, ask the user to provide a path and stop.<path> exists. If it does not, tell the user and stop.## Requirements section only — do not touch any other section of the HLD itself.REQ-3 → new REQ-3.1): ~~- [ ] REQ-3 — old requirement text~~ _(superseded by REQ-3.1, <date>)_
- [ ] **REQ-3.1** — new requirement text ~~- [ ] REQ-2 — old requirement text~~ _(Descoped <date>: reason)_**HLD:** link in their Overview, or REQ-N.x sub-IDs matching this doc's REQ-N IDs). Cascade into each one found, still touching only its ## Requirements section:REQ-N, mark it _(Needs Review — parent REQ changed <date>)_ rather than assuming it's still valid. Never touch the row's existing design content — only the annotation._(Needs Review — new parent REQ-N, flowed from HLD amend <date>; needs LLD design)_. This row stays out of /implement-lld's scope until a human resolves it — normally by running /lld (not /lld --amend, since that's also Requirements-only) against the LLD to fill in the actual API/Data Model design for it, which clears the annotation.**Last Amended:** <date> in the frontmatter of every doc touched (the HLD, and any LLDs cascaded into).Needs Review (parent-changed) versus newly stubbed in (needs-design) — these need different follow-up, so don't merge them in the report.Rules:
$ARGUMENTS
~30 seconds. Free. No account. Every finding cites a rule and a line of evidence.