--- name: crypto-curve description: Use when implementing or debugging code that uses @suaveplan/crypto-curve: Elliptic-curve primitives with per-primitive selector layout: secp256k1, ed25519, x25519, p256. --- # @suaveplan/crypto-curve Low-level elliptic-curve building blocks for the `@suaveplan/crypto` stack. Exposes four curves — secp256k1, Ed25519, X25519, and NIST P-256 — each as a standalone subpath export so bundlers only ship the primitives actually used. Every curve provides key generation, signing/verification (or key agreement), and raw byte operations. Implementation flavour (`'noble'` vs `'native'`) is selected at build time via the repo-root `crypto.config.ts`; all Phase 0 implementations route to `@noble/curves`. Use this package when you need raw curve operations; for high-level AEAD, signing, or sealed-box use `@suaveplan/crypto` instead. ## When to use this skill - Implementing or debugging code that imports `@suaveplan/crypto-curve`. - The task touches: see package README. - You need API guidance for this package's exports. ## Quick reference ```ts import { /* see API Reference below */ } from "@suaveplan/crypto-curve"; ``` ## Dependencies Workspace dependencies: `@suaveplan/crypto-hash`, `@suaveplan/crypto-utils`, `@suaveplan/error`, `@suaveplan/types` ## Where to read more This skill is intentionally short. The package's own documentation is the authoritative source — read these in order: 1. **`packages/crypto/crypto-curve/README.md`** — overview, install, quick-start, module index 2. **`packages/crypto/crypto-curve/src/**/*.md`** — co-located docs per implementation file (Purpose, Features, Basic + Advanced examples, full API reference, Implementation notes — all packages ship ≥200 words per module) 3. **`packages/crypto/crypto-curve/package.json`** `exports` map — every subpath you can import from When the user asks an API question, read the relevant co-located `.md` first; do not answer from training-data memory. ## See also - `@suaveplan/crypto-hash` - `@suaveplan/crypto-utils` - `@suaveplan/error` - `@suaveplan/types` --- _This SKILL.md is auto-generated by `suaveplan-skills/scripts/generate-skills.ts` from the package's README. Do not edit by hand — re-run the generator after the README changes._