Skip to content
Back to skills

Card Generation

ASecurity

Internal skill for onboard's file-card emission pass. Defines how to write one file card from a mechanical structure summary (imports, top-level symbols) plus an optional bounded head snippet — NEVER the whole file. Drives the per-file (or batched) model turn in onboard-analyze.mjs with a versioned prompt_version hash. Not for the ticket delivery flow.

  • 2 stars
  • 0 votes
  • 0 copies
  • 5 views
  • Added September 5, 2026
ai-agentsgosqlexpressapi

Works with

  • cli
  • api

Security analysis

A100/100

Scanned September 5, 2026

npx -y skills add tmj-90/gaffer --skill card-generation --agent claude-code

Installs into .claude/skills of the current project.

Are you the author of Card Generation?

Add the live security badge to your README. It updates with every re-scan.

Security grade badge for Card Generation
[![Security: A — Skills Directory](https://www.skillsdirectory.com/api/skills/tmj-90-card-generation/badge)](https://www.skillsdirectory.com/skills/tmj-90-card-generation)

More formats (shields.io, HTML) on the badges page. Keep it an A: scan every change in CI with Pro.

Download with Pro
SKILL.md
---
name: card-generation
description: |
  Internal skill for onboard's file-card emission pass. Defines how to write one
  file card from a mechanical structure summary (imports, top-level symbols) plus
  an optional bounded head snippet — NEVER the whole file. Drives the per-file (or
  batched) model turn in onboard-analyze.mjs with a versioned prompt_version hash.
  Not for the ticket delivery flow.
stack: []
area: memory
---

# Write one file card

A card is a RETRIEVAL AID: it helps an agent pick WHAT TO READ. It is NEVER
authoritative source — the reader MUST open the file before editing. Say this
wherever a card is surfaced.

You get: a file's MECHANICAL STRUCTURE (imports, top-level symbol names) and
maybe a small HEAD SNIPPET. Nothing else — no full file, no language server, no
runtime. Produce: `tldr`, one `role_primary`, up to 4 `role_tags`.

## tldr (the key field)

Answers: what is this file's JOB and why does it EXIST?
- 1–2 sentences, ≤400 chars (hard cap 500 — stay clear).
- Concrete: name what it OWNS + its KEY responsibility.
- No filename/path restating. No vague verbs ("handles/manages/processes/deals
  with") without saying specifically what.
- Purpose unclear from the data? State what it STRUCTURALLY IS (e.g. "Zod schemas
  for the card record") instead of guessing intent.

GOOD: "Express router for `/api/cards` CRUD — owns the HTTP layer for card create/
read/search/delete. Read to trace request handling."
BAD: "Handles authentication" · "Utility functions" · "src/math.ts implementation"
· "Exports various helpers for working with the API".

## role_primary — pick exactly ONE (dominant role)

`entrypoint` (main/CLI/process start) · `route` (HTTP handlers/routers) ·
`service` (domain/business-logic orchestration) · `data-model` (interfaces/Zod/
type-only) · `migration` (DB schema migrations) · `config` (config/env loaders/
flags) · `test` · `util` (pure side-effect-free helpers) · `client` (HTTP clients/
SDK wrappers/connectors) · `middleware` (framework middleware/interceptors) ·
`store` (state/caches/registries) · `view` (UI components/templates/renderers) ·
`script` (one-shot scripts/CLI tools) · `types` (type/interface-only modules).

## role_tags — 0–4 secondary concerns

Short, lowercase, specific. e.g. `["auth","jwt"]`, `["fts","sqlite"]`.

## Never invent (hard rule)

NEVER name a symbol or behaviour not shown in that file's structure block. A
deterministic validator checks symbols against the real exports — invented ones
FAIL the card and poison retrieval. Unsure → omit; omission is safe, invention is
not. In batched prompts, use ONLY the file's own block (never another file's).

## Also

- Ground every claim in the shown structure + snippet.
- No secrets/tokens/credentials/PII in any field.
- No over-claiming scope, no guessing from filename, no false precision
  ("retries 3×" unless shown), no listing imports as capabilities.
- A card is a retrieval aid, never authoritative source.

Attribution

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

Loading comments…