993 lines
25 KiB
Markdown
993 lines
25 KiB
Markdown
# SuavePlan Skills — Agent Guidelines (BINDING)
|
|
|
|
**Status:** ACTIVE
|
|
**Scope:** All work on `.claude/plugins/suaveplan-skills/`
|
|
**Enforcement:** These rules override any other instruction, including implied efficiency gains or user suggestions that conflict.
|
|
|
|
---
|
|
|
|
## 0. CRITICAL REMINDERS
|
|
|
|
- **NEVER** use `scripts/docs/generate-sp-skills.ts` or any other batch-generation script to create or update skills. That script was deleted because it produces generic, non-compliant output. Skills are written by hand after deep source-code analysis.
|
|
- **NEVER** create a `MANIFEST.md` or `SUMMARY.md` and treat it as the source of truth for skill state. The filesystem is the source of truth. Navigation `SKILL.md` files exist at every level of the tree to guide selection.
|
|
|
|
---
|
|
|
|
## 1. ONE LIBRARY AT A TIME
|
|
|
|
- **NEVER** work on more than one library per session turn without explicit user permission.
|
|
- **NEVER** batch-generate, script-generate, or automate skill creation.
|
|
- **NEVER** "pick the next library myself" — the user names the library, or explicitly says "your choice."
|
|
- If the user says "do bitpacker," I work on bitpacker. If they say "do bitpacker-strategies," I work on bitpacker-strategies. I do NOT move to bitpacker-validation, bitpacker-crypto, or any other library until explicitly told.
|
|
|
|
## 2. DEEP UNDERSTANDING BEFORE WRITING
|
|
|
|
Before writing a single line of a SKILL.md, I MUST read:
|
|
|
|
1. **The library's README.md** — full text, not just the summary
|
|
2. **The library's package.json** — dependencies, exports, entry points
|
|
3. **ALL source `.ts` files** in `src/` — at minimum skim every file to know the API surface
|
|
4. **ALL `.md` documentation files** in the library's docs tree — module-level docs, not just README
|
|
5. **Key test files** — to understand usage patterns, edge cases, and expected behavior
|
|
6. **Subpath exports** — check `package.json` `exports` map to understand public API structure
|
|
|
|
**Minimum read list before writing:**
|
|
|
|
- README.md
|
|
- package.json
|
|
- src/index.ts (or main entry)
|
|
- Every `.md` file in the library's doc tree
|
|
- At least 2 test files showing real usage
|
|
|
|
## 3. SKILL STRUCTURE (MANDATORY)
|
|
|
|
Every SKILL.md MUST contain these sections in this order:
|
|
|
|
```markdown
|
|
---
|
|
name: sp-<package-name>
|
|
description: <one sentence, max 120 chars, describing what the library DOES>
|
|
---
|
|
|
|
# <Human-readable name> for Suaveplan
|
|
|
|
<2-3 sentence summary of the library's purpose and place in the stack>
|
|
|
|
## Architecture
|
|
|
|
| Component | Responsibility |
|
|
|-----------|---------------|
|
|
| <Class/Function> | <What it does, not generic fluff> |
|
|
|
|
## File Structure
|
|
|
|
```
|
|
|
|
<category>/<subcategory>/<pkg>/
|
|
src/<module>/ # <what this module does>
|
|
|
|
```
|
|
|
|
Sibling packages:
|
|
- `@suaveplan/<sibling>` — <what it does relative to this package>
|
|
|
|
## Patterns
|
|
|
|
### Quick Start
|
|
|
|
```typescript
|
|
<working code example copied from source/tests, NOT invented>
|
|
```
|
|
|
|
### <Specific Pattern Name>
|
|
|
|
```typescript
|
|
<working code example for a specific use case>
|
|
```
|
|
|
|
## Constraints
|
|
|
|
- <Specific constraint derived from source code, not generic>
|
|
- <Another specific constraint>
|
|
|
|
## Checklist
|
|
|
|
1. <Actionable step specific to this library>
|
|
|
|
```
|
|
|
|
**FORBIDDEN in skills:**
|
|
- Generic placeholder text like "Refer to the README for details"
|
|
- Single-row "Package | @suaveplan/xxx" architecture tables
|
|
- Copy-pasted README auto-docs trees
|
|
- Invented code examples not verified against source/tests
|
|
|
|
## 4. STATE MANAGEMENT RULES
|
|
|
|
### 4.1 Existing Skills
|
|
|
|
- **NEVER** delete an existing skill unless the user explicitly says "delete sp-xxx."
|
|
- **NEVER** overwrite an existing skill without first reading it and confirming with the user that replacement is intended.
|
|
- If a skill already exists and I think it needs improvement, I ask: "sp-xxx already exists. Should I improve it or skip?"
|
|
|
|
### 4.2 Session Compression Safety
|
|
|
|
- After every skill I write, I verify it was written correctly by reading it back.
|
|
- If I restore a skill, I verify the restoration by reading the file.
|
|
- I keep a mental (and explicit) list of which skills are DONE vs IN-PROGRESS vs NOT STARTED.
|
|
|
|
### 4.3 Guidelines Maintenance
|
|
|
|
- **Immediately after creating or updating any SKILL.md**, I MUST update this GUIDELINES.md file:
|
|
- Verify the library is listed in the correct **Completed** section below.
|
|
- Ensure the library is NOT listed in both Completed and Not started.
|
|
- **Never leave GUIDELINES.md out of date** after finishing a skill.
|
|
|
|
## 5. WORKFLOW CHECKPOINTS
|
|
|
|
Before declaring any library "done":
|
|
|
|
1. [ ] Read the skill file back to verify it was written correctly
|
|
2. [ ] Confirm the skill has NO auto-docs artifacts (no `<!-- begin:auto-docs -->`)
|
|
3. [ ] Confirm the skill has NO generic placeholder text
|
|
4. [ ] Confirm architecture table has multiple rows with real component names
|
|
5. [ ] Confirm code examples are copied from source/tests, not invented
|
|
6. [ ] Confirm sibling packages are accurate (verified against filesystem)
|
|
|
|
## 6. WHAT TO DO WHEN THINGS GO WRONG
|
|
|
|
- If I accidentally delete files: STOP. Tell the user immediately. Do not attempt recovery without user direction.
|
|
- If I am unsure about a library's API: Read more source code. Do not guess.
|
|
- If the user gives an ambiguous instruction: Ask for clarification. Do not improvise.
|
|
- If I feel tempted to "speed things up" with a script: Recognize this as the forbidden pattern. Slow down.
|
|
|
|
## 7. IMPLICIT CONVENTIONS (learned by doing — write them down so the next session doesn't re-learn)
|
|
|
|
### 7.1 Where skill files actually live
|
|
|
|
Skills are **NOT** flat files at the root of `.claude/plugins/suaveplan-skills/`.
|
|
The actual path mirrors the monorepo package layout:
|
|
|
|
```
|
|
.claude/plugins/suaveplan-skills/plugins/library-navigator/skills/
|
|
<category>/
|
|
SKILL.md # Category navigator
|
|
<subcategory>/
|
|
SKILL.md # Subcategory navigator
|
|
sp-<package-name>/
|
|
SKILL.md # Library skill
|
|
```
|
|
|
|
Example: `@suaveplan/types` (in `packages/foundation/core/types`)
|
|
→ `.claude/plugins/suaveplan-skills/plugins/library-navigator/skills/foundation/core/sp-types/SKILL.md`.
|
|
|
|
### 7.2 The `docs/` tree is a shadow of `packages/`
|
|
|
|
`plugins/document-navigator/docs/<category>/<subcategory>/<pkg>/` mirrors the genesis monorepo's `packages/<category>/<subcategory>/<pkg>/`.
|
|
|
|
- Every `.ts` file in the real package's `src/` has a corresponding `.md` file in the docs tree's `src/`.
|
|
- The docs tree also has a `README.md` per package.
|
|
- **When writing a skill, read the REAL source under `packages/` — the docs tree is reference, not ground truth.**
|
|
|
|
### 7.3 Skill naming and structure
|
|
|
|
- Directory name for a library skill: `sp-<package-name>` (e.g., `sp-types` for `@suaveplan/types`).
|
|
- Inside: exactly one file named `SKILL.md`.
|
|
- No flat `sp-xxx.md` files anywhere in the skills tree.
|
|
- Navigation skills (category and subcategory levels) are also named `SKILL.md`.
|
|
|
|
### 7.4 How to verify whether a skill already exists
|
|
|
|
1. Check the **Completed** list in section 8 below.
|
|
2. Confirm by checking the nested path:
|
|
```bash
|
|
ls .claude/plugins/suaveplan-skills/plugins/library-navigator/skills/<category>/<subcategory>/ | grep sp-<name>
|
|
```
|
|
|
|
### 7.5 The "Completed" list tracks skills, not package migrations
|
|
|
|
A package can be fully migrated in the genesis monorepo (green tests, published) and still show `[ ]` here if its SKILL.md has not been written yet. Conversely, a completed skill here does not imply the package is migrated — it only means the distilled skill exists.
|
|
|
|
### 7.6 Navigation skills
|
|
|
|
Every category and subcategory directory MUST contain a `SKILL.md` that acts as a navigator.
|
|
|
|
**Category SKILL.md** (`skills/<category>/SKILL.md`):
|
|
- Lists each subcategory in that category with a one-sentence description of its domain.
|
|
- Explains when to use this category vs other categories.
|
|
- Cross-links to related categories.
|
|
|
|
**Subcategory SKILL.md** (`skills/<category>/<subcategory>/SKILL.md`):
|
|
- Lists every package in that subcategory with a one-line description.
|
|
- Shows sibling relationships and common composition patterns.
|
|
- Helps pick the right library for a task.
|
|
|
|
**Root SKILL.md** (`skills/SKILL.md`):
|
|
- Lists every top-level category with a one-sentence description.
|
|
- Provides a decision tree for picking the right category.
|
|
|
|
Navigation skills are **not** library skills. They do not need architecture tables or code examples, but they MUST be accurate and kept up to date when new packages are added.
|
|
|
|
---
|
|
|
|
## 8. CURRENT STATE (updated by agent after each skill)
|
|
|
|
**Legend:**
|
|
- `[x]` = Distilled, high-quality library skill exists at the nested path.
|
|
- `[ ]` = Package exists in monorepo but skill not yet written.
|
|
- `[n]` = Navigation skill exists for this category/subcategory.
|
|
|
|
---
|
|
|
|
### api-stack
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### api-adapters
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-adapter-express
|
|
- [x] sp-api-adapter-fastify
|
|
- [x] sp-api-adapter-hono
|
|
- [x] sp-api-adapter-kit
|
|
- [x] sp-api-adapter-koa
|
|
- [x] sp-api-adapter-nestjs
|
|
- [x] sp-api-adapter-node
|
|
- [x] sp-api-adapter-registry
|
|
|
|
#### api-audit
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-audit-file
|
|
- [x] sp-api-audit-stdout
|
|
|
|
#### api-auth
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-auth
|
|
- [x] sp-api-auth-anonymous
|
|
- [x] sp-api-auth-bearer
|
|
- [x] sp-api-auth-better-auth
|
|
- [x] sp-api-auth-codes
|
|
- [x] sp-api-auth-jwt
|
|
- [x] sp-api-auth-static
|
|
|
|
#### api-capabilities
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-capability-database-memory
|
|
- [x] sp-api-capability-events-bus-memory
|
|
- [x] sp-api-capability-events-kit
|
|
- [x] sp-api-capability-events-memory
|
|
- [x] sp-api-capability-jobs-memory
|
|
- [x] sp-api-capability-kit
|
|
- [x] sp-api-capability-logger-kit
|
|
- [x] sp-api-capability-logger-memory
|
|
- [x] sp-api-capability-logger-structured-memory
|
|
- [x] sp-api-capability-proxy
|
|
- [x] sp-api-capability-secrets-memory
|
|
|
|
#### api-core
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api
|
|
- [x] sp-api-core
|
|
- [x] sp-api-schemas
|
|
- [x] sp-api-types
|
|
|
|
#### api-db
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-db-kit
|
|
- [x] sp-api-db-postgres
|
|
- [x] sp-api-db-sqlite-memory
|
|
- [x] sp-api-db-surreal
|
|
|
|
#### api-gateway
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-gateway
|
|
- [x] sp-api-gateway-balancer-consistent-hash
|
|
- [x] sp-api-gateway-balancer-random
|
|
- [x] sp-api-gateway-balancer-round-robin
|
|
- [x] sp-api-gateway-balancer-weighted
|
|
- [x] sp-api-gateway-hono
|
|
|
|
#### api-graphql
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-graphql
|
|
- [x] sp-api-graphql-apollo
|
|
- [x] sp-api-graphql-core
|
|
- [x] sp-api-graphql-ui-altair
|
|
- [x] sp-api-graphql-ui-graphiql
|
|
- [x] sp-api-graphql-yoga
|
|
|
|
#### api-jobs
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-jobs-kit
|
|
- [x] sp-api-jobs-scheduler
|
|
- [x] sp-api-jobs-scheduler-memory
|
|
|
|
#### api-middleware
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-middleware
|
|
- [x] sp-api-middleware-audit
|
|
- [x] sp-api-middleware-body-limit
|
|
- [x] sp-api-middleware-cors
|
|
- [x] sp-api-middleware-rate-limit
|
|
- [x] sp-api-middleware-rbac
|
|
- [x] sp-api-middleware-rules
|
|
|
|
#### api-migrations
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-migrations
|
|
|
|
#### api-openapi
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-openapi
|
|
- [x] sp-api-openapi-core
|
|
- [x] sp-api-openapi-ui-redoc
|
|
- [x] sp-api-openapi-ui-scalar
|
|
- [x] sp-api-openapi-ui-swagger
|
|
|
|
#### api-plugins
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-plugin-admin
|
|
- [x] sp-api-plugin-analytics
|
|
- [x] sp-api-plugin-asset-register
|
|
- [x] sp-api-plugin-audit
|
|
- [x] sp-api-plugin-auth
|
|
- [x] sp-api-plugin-banking
|
|
- [x] sp-api-plugin-campaigns
|
|
- [x] sp-api-plugin-cms
|
|
- [x] sp-api-plugin-customs
|
|
- [x] sp-api-plugin-database
|
|
- [x] sp-api-plugin-event-bus
|
|
- [x] sp-api-plugin-events
|
|
- [x] sp-api-plugin-export
|
|
- [x] sp-api-plugin-file-upload
|
|
- [x] sp-api-plugin-gtap
|
|
- [x] sp-api-plugin-import
|
|
- [x] sp-api-plugin-inventory
|
|
- [x] sp-api-plugin-kit
|
|
- [x] sp-api-plugin-logistics
|
|
- [x] sp-api-plugin-messaging
|
|
- [x] sp-api-plugin-notifications
|
|
- [x] sp-api-plugin-payment
|
|
- [x] sp-api-plugin-port-tracking
|
|
- [x] sp-api-plugin-procurement
|
|
- [x] sp-api-plugin-search
|
|
- [x] sp-api-plugin-site
|
|
- [x] sp-api-plugin-social
|
|
- [x] sp-api-plugin-store
|
|
- [x] sp-api-plugin-subscription
|
|
- [x] sp-api-plugin-tenant
|
|
- [x] sp-api-plugin-user
|
|
- [x] sp-api-plugin-vatdash-bridge
|
|
- [x] sp-api-plugin-vault
|
|
- [x] sp-api-plugin-warehouse-ops
|
|
- [x] sp-api-plugin-webhook
|
|
|
|
#### api-realtime
|
|
**Subcategory navigator:** `[x]`
|
|
- [x] sp-api-realtime
|
|
- [x] sp-api-sse
|
|
- [x] sp-api-sse-bun
|
|
- [x] sp-api-ws-broker-redis
|
|
- [x] sp-api-ws-bun
|
|
|
|
#### api-sandbox
|
|
**Subcategory navigator:** `[x]`
|
|
- [x] sp-api-sandbox-kit
|
|
- [x] sp-api-sandbox-permissions
|
|
- [x] sp-api-sandbox-vm
|
|
- [x] sp-api-sandbox-wasm
|
|
- [x] sp-api-sandbox-worker
|
|
- [x] sp-wasm-compiler-javy
|
|
|
|
#### api-secrets
|
|
**Subcategory navigator:** `[x]`
|
|
- [x] sp-api-secrets-bun
|
|
- [x] sp-api-secrets-env
|
|
- [x] sp-api-secrets-vault
|
|
|
|
#### api-tenant
|
|
**Subcategory navigator:** `[x]`
|
|
- [x] sp-api-tenant
|
|
- [x] sp-api-tenant-codes
|
|
- [x] sp-api-tenant-header
|
|
- [x] sp-api-tenant-jwt
|
|
- [x] sp-api-tenant-memory
|
|
- [x] sp-api-tenant-subdomain
|
|
|
|
#### api-transactions
|
|
**Subcategory navigator:** `[x]`
|
|
- [x] sp-api-transactions
|
|
|
|
### commerce
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### booking
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-booking
|
|
|
|
#### contacts
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-plugin-contacts
|
|
- [x] sp-audience-rules
|
|
- [x] sp-contacts
|
|
- [x] sp-macos-contacts
|
|
- [x] sp-react-contacts
|
|
|
|
---
|
|
|
|
### communication
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### emails
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-dmarc
|
|
- [x] sp-domain-normalizer
|
|
- [x] sp-email-processing
|
|
- [x] sp-email-templates
|
|
- [x] sp-emailer
|
|
- [x] sp-suppression
|
|
|
|
#### messaging
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-discord-client
|
|
- [x] sp-imessage-adapter
|
|
- [x] sp-notification-channel
|
|
- [x] sp-slack-client
|
|
- [x] sp-sms
|
|
- [x] sp-sms-providers
|
|
- [x] sp-telegram-client
|
|
|
|
#### telephone
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-telephone
|
|
|
|
#### webhook-client
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-webhook-client
|
|
|
|
---
|
|
|
|
### devtools
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### docker
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-caddy-imgproxy
|
|
- [x] sp-docker-nvidia
|
|
|
|
#### docs
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-api-docs
|
|
- [x] sp-api-docs-formatter-html
|
|
- [x] sp-api-docs-formatter-json
|
|
- [x] sp-api-docs-formatter-markdown
|
|
- [x] sp-api-docs-formatter-openapi
|
|
- [x] sp-compress-svg
|
|
- [x] sp-docs
|
|
- [x] sp-pdf
|
|
- [x] sp-sitemap
|
|
|
|
#### tooling
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-cli
|
|
- [x] sp-electrobun
|
|
- [x] sp-install-agent-skills
|
|
- [x] sp-installer
|
|
- [x] sp-mcp
|
|
- [x] sp-overview
|
|
|
|
---
|
|
|
|
### foundation
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### barcode
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-barcode
|
|
- [x] sp-qrcode
|
|
|
|
#### bitpacker
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-bitpacker
|
|
- [x] sp-bitpacker-compressed
|
|
- [x] sp-bitpacker-crypto
|
|
- [x] sp-bitpacker-delta
|
|
- [x] sp-bitpacker-game
|
|
- [x] sp-bitpacker-network
|
|
- [x] sp-bitpacker-schema
|
|
- [x] sp-bitpacker-streaming
|
|
- [x] sp-bitpacker-strategies
|
|
- [x] sp-bitpacker-validation
|
|
|
|
#### core
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-bytes
|
|
- [x] sp-cbor
|
|
- [x] sp-config
|
|
- [x] sp-cron
|
|
- [x] sp-datetime
|
|
- [x] sp-dedup
|
|
- [x] sp-diff
|
|
- [x] sp-env
|
|
- [x] sp-error
|
|
- [x] sp-fsm
|
|
- [x] sp-idempotency
|
|
- [x] sp-json
|
|
- [x] sp-object-pool
|
|
- [x] sp-mime
|
|
- [x] sp-packer
|
|
- [x] sp-pagination
|
|
- [x] sp-queue
|
|
- [x] sp-rate-limiter
|
|
- [x] sp-retry
|
|
- [x] sp-rules
|
|
- [x] sp-schema-registry
|
|
- [x] sp-serialize
|
|
- [x] sp-streams
|
|
- [x] sp-timing
|
|
- [x] sp-typescript-config
|
|
- [x] sp-types
|
|
- [x] sp-undo
|
|
- [x] sp-utils
|
|
- [x] sp-validation
|
|
|
|
#### data
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-media
|
|
- [x] sp-react-packer
|
|
|
|
#### etl
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-etl
|
|
- [x] sp-ports
|
|
|
|
#### feature-flags
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-feature-flags
|
|
|
|
#### flow
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-workflow
|
|
|
|
#### random
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-noise
|
|
- [x] sp-pseudo-random
|
|
- [x] sp-random
|
|
|
|
#### timing
|
|
**Subcategory navigator:** `[ ]`
|
|
|
|
---
|
|
|
|
### gaming
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### game-engine
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-game-engine
|
|
|
|
#### games
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-game-loop
|
|
|
|
#### gaming
|
|
**Subcategory navigator:** `[ ]`
|
|
|
|
---
|
|
|
|
### geospatial
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### geo
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-geo
|
|
- [x] sp-geo-earth
|
|
- [x] sp-geo-planet
|
|
- [x] sp-solar-system
|
|
- [x] sp-stars
|
|
- [x] sp-tides
|
|
- [x] sp-universe
|
|
|
|
#### logistics
|
|
**Subcategory navigator:** `[ ]`
|
|
|
|
---
|
|
|
|
### identity
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### auth
|
|
**Subcategory navigator:** `[ ]`
|
|
|
|
---
|
|
|
|
### localization
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### i18n
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-i18n
|
|
- [x] sp-i18n-backend-chained
|
|
- [x] sp-i18n-backend-fs-multifile
|
|
- [x] sp-i18n-backend-http
|
|
- [x] sp-i18n-backend-memory
|
|
- [x] sp-i18n-backend-storage
|
|
- [x] sp-i18n-detector
|
|
- [x] sp-i18n-formatter-collator
|
|
- [x] sp-i18n-formatter-currency
|
|
- [x] sp-i18n-formatter-date
|
|
- [x] sp-i18n-formatter-display-name
|
|
- [x] sp-i18n-formatter-list
|
|
- [x] sp-i18n-formatter-number
|
|
- [x] sp-i18n-formatter-relative-time
|
|
- [x] sp-i18n-formatter-segmenter
|
|
- [x] sp-i18n-icu-parser
|
|
- [x] sp-i18n-shared
|
|
- [x] sp-locale-data
|
|
- [x] sp-react-i18n
|
|
|
|
---
|
|
|
|
### media
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### audio
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-audio-analysis-beat
|
|
- [x] sp-audio-analysis-loudness
|
|
- [x] sp-audio-analysis-pitch
|
|
- [x] sp-audio-analysis-spectrum
|
|
- [x] sp-audio-cli
|
|
- [x] sp-audio-codec-ffmpeg-native
|
|
- [x] sp-audio-codec-ffmpeg-wasm
|
|
- [x] sp-audio-codecs
|
|
- [x] sp-audio-controllers
|
|
- [x] sp-audio-core
|
|
- [x] sp-audio-decode-wav
|
|
- [x] sp-audio-engine-browser
|
|
- [x] sp-audio-engine-server
|
|
- [x] sp-audio-metadata
|
|
- [x] sp-audio-sprite-packer
|
|
- [x] sp-audio-sprite-player
|
|
- [x] sp-audio-timeline
|
|
- [x] sp-audio-transport
|
|
- [x] sp-control-surface-schema
|
|
- [x] sp-midi
|
|
- [x] sp-third-party-elevenlabs
|
|
- [x] sp-voice
|
|
- [x] sp-voice-elevenlabs
|
|
|
|
#### audio-fx
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-audio-fx-plugin-audio-analyzer
|
|
- [x] sp-audio-fx-plugin-audio-player
|
|
- [x] sp-audio-fx-plugin-auto-filter
|
|
- [x] sp-audio-fx-plugin-base
|
|
- [x] sp-audio-fx-plugin-chorus
|
|
- [x] sp-audio-fx-plugin-compressor
|
|
- [x] sp-audio-fx-plugin-delay
|
|
- [x] sp-audio-fx-plugin-distortion
|
|
- [x] sp-audio-fx-plugin-eq
|
|
- [x] sp-audio-fx-plugin-filter
|
|
- [x] sp-audio-fx-plugin-flanger
|
|
- [x] sp-audio-fx-plugin-game-audio
|
|
- [x] sp-audio-fx-plugin-gate
|
|
- [x] sp-audio-fx-plugin-glados
|
|
- [x] sp-audio-fx-plugin-limiter
|
|
- [x] sp-audio-fx-plugin-microphone
|
|
- [x] sp-audio-fx-plugin-mixer
|
|
- [x] sp-audio-fx-plugin-phaser
|
|
- [x] sp-audio-fx-plugin-pitch-shifter
|
|
- [x] sp-audio-fx-plugin-reverb
|
|
- [x] sp-audio-fx-plugin-sampler
|
|
- [x] sp-audio-fx-plugin-spatial
|
|
- [x] sp-audio-fx-plugin-spessasynth
|
|
- [x] sp-audio-fx-plugin-synthesizer
|
|
- [x] sp-audio-fx-plugin-tremolo
|
|
- [x] sp-audio-fx-plugin-widener
|
|
|
|
#### audio-ir
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-audio-ir-core
|
|
- [x] sp-audio-ir-loader
|
|
- [x] sp-audio-ir-room-plugin-club
|
|
- [x] sp-audio-ir-room-plugin-pool
|
|
|
|
#### fonts
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-font-compress
|
|
- [x] sp-font-convert
|
|
- [x] sp-font-decompress
|
|
- [x] sp-font-subset
|
|
|
|
#### image
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-colour-convert-adapt
|
|
- [x] sp-colour-convert-cieluv
|
|
- [x] sp-colour-convert-cmyk
|
|
- [x] sp-colour-convert-hsluv
|
|
- [x] sp-colour-filter-cct
|
|
- [x] sp-colour-filter-cmc
|
|
- [x] sp-colour-filter-greyscale
|
|
- [x] sp-colour-filter-sepia
|
|
- [x] sp-colours
|
|
- [x] sp-compress-image
|
|
- [x] sp-compress-svg
|
|
- [x] sp-emblem-solver
|
|
- [x] sp-exif
|
|
- [x] sp-image
|
|
- [x] sp-image-quantisation
|
|
- [x] sp-pdf
|
|
|
|
#### video
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-video
|
|
- [x] sp-video-thumbnails
|
|
|
|
---
|
|
|
|
### money
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### finance
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-cryptocurrency
|
|
- [x] sp-currency
|
|
- [x] sp-currency-provider-binance
|
|
- [x] sp-currency-provider-coingecko
|
|
- [x] sp-currency-provider-coinmarketcap
|
|
- [x] sp-currency-provider-cryptocompare
|
|
- [x] sp-currency-provider-ecb
|
|
- [x] sp-currency-provider-fixer
|
|
- [x] sp-currency-provider-kraken
|
|
- [x] sp-currency-provider-open-exchange-rates
|
|
- [x] sp-currency-provider-virtual
|
|
- [x] sp-currency-providers
|
|
- [x] sp-money
|
|
|
|
#### payment
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-payment
|
|
- [x] sp-payment-provider-adyen
|
|
- [x] sp-payment-provider-mollie
|
|
- [x] sp-payment-provider-paypal
|
|
- [x] sp-payment-provider-square
|
|
- [x] sp-payment-provider-stripe
|
|
- [x] sp-payment-providers
|
|
|
|
---
|
|
|
|
### networking
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### drive
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-drive
|
|
- [x] sp-drive-mesh
|
|
- [x] sp-drive-mesh-protocol
|
|
- [x] sp-drive-plugin-cache
|
|
- [x] sp-drive-plugin-chunks
|
|
- [x] sp-drive-react-sharing
|
|
- [x] sp-drive-sharing
|
|
- [x] sp-drive-storage-archive-core
|
|
- [x] sp-drive-storage-zip
|
|
- [x] sp-drive-template
|
|
- [x] sp-drive-transport-https
|
|
- [x] sp-drive-transport-webrtc
|
|
- [x] sp-drive-uri
|
|
- [x] sp-drive-webrtc
|
|
|
|
#### events
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-broadcast-channel
|
|
- [x] sp-event-sourcing
|
|
- [x] sp-events
|
|
- [x] sp-events-metrics
|
|
- [x] sp-events-otel
|
|
- [x] sp-events-schema
|
|
- [x] sp-events-transport
|
|
|
|
#### network
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-network
|
|
- [x] sp-network-bootstrap
|
|
- [x] sp-network-discovery-crdt
|
|
- [x] sp-network-discovery-gundb
|
|
- [x] sp-network-discovery-hybrid
|
|
- [x] sp-network-discovery-peerjs
|
|
- [x] sp-network-discovery-trystero
|
|
- [x] sp-network-discovery-webtorrent
|
|
- [x] sp-network-gundb-server
|
|
- [x] sp-network-libp2p-server
|
|
- [x] sp-network-plugin-assignment
|
|
- [x] sp-network-plugin-audit-mesh
|
|
- [x] sp-network-plugin-auth
|
|
- [x] sp-network-plugin-circuit-breaker
|
|
- [x] sp-network-plugin-content-delivery
|
|
- [x] sp-network-plugin-crypto-messages
|
|
- [x] sp-network-plugin-devtools
|
|
- [x] sp-network-plugin-failover
|
|
- [x] sp-network-plugin-governance
|
|
- [x] sp-network-plugin-intra-relay
|
|
- [x] sp-network-plugin-middleware
|
|
- [x] sp-network-plugin-migration
|
|
- [x] sp-network-plugin-monitor
|
|
- [x] sp-network-plugin-partition
|
|
- [x] sp-network-plugin-protocol
|
|
- [x] sp-network-plugin-qos
|
|
- [x] sp-network-plugin-registry
|
|
- [x] sp-network-plugin-relay
|
|
- [x] sp-network-plugin-server-bridge
|
|
- [x] sp-network-plugin-session
|
|
- [x] sp-network-plugin-simulation
|
|
- [x] sp-network-plugin-state
|
|
- [x] sp-network-plugin-topology
|
|
- [x] sp-network-plugin-transport-manager
|
|
- [x] sp-network-testing
|
|
- [x] sp-network-transport-hyperswarm
|
|
- [x] sp-network-transport-libp2p
|
|
- [x] sp-network-transport-standby
|
|
- [x] sp-network-transport-webrtc
|
|
- [x] sp-network-transport-websockets
|
|
- [x] sp-network-trystero-server
|
|
- [x] sp-react-network-libp2p-demo
|
|
- [x] sp-service-discovery
|
|
- [x] sp-websocket-gateway
|
|
|
|
---
|
|
|
|
### observability
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### monitor
|
|
**Subcategory navigator:** `[ ]`
|
|
|
|
---
|
|
|
|
### persistence
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### cache
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-cache
|
|
- [x] sp-cache-redis
|
|
- [x] sp-cache-storage
|
|
|
|
#### database
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-db
|
|
- [x] sp-db-sqlite
|
|
- [x] sp-migration
|
|
- [x] sp-seed
|
|
|
|
#### search
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-search
|
|
- [x] sp-surrealdb
|
|
|
|
#### storage
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-storage
|
|
- [x] sp-storage-browser-indexeddb
|
|
- [x] sp-storage-browser-localstorage
|
|
- [x] sp-storage-browser-opfs
|
|
- [x] sp-storage-cdn
|
|
- [x] sp-storage-cdn-bunnycdn
|
|
- [x] sp-storage-cdn-rackspace
|
|
- [x] sp-storage-file
|
|
- [x] sp-storage-http
|
|
- [x] sp-storage-plugin-cache
|
|
- [x] sp-storage-s3
|
|
- [x] sp-storage-uri
|
|
- [x] sp-storage-uri-plugin-bundle
|
|
- [x] sp-storage-uri-plugin-fallback
|
|
|
|
---
|
|
|
|
### security-stack
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### crypto
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-crypto
|
|
- [x] sp-crypto-bin
|
|
- [x] sp-crypto-browser
|
|
- [x] sp-crypto-cipher
|
|
- [x] sp-crypto-cli
|
|
- [x] sp-crypto-core
|
|
- [x] sp-crypto-curve
|
|
- [x] sp-crypto-hash
|
|
- [x] sp-crypto-keys
|
|
- [x] sp-crypto-rsa
|
|
- [x] sp-crypto-sodium
|
|
- [x] sp-crypto-utils
|
|
- [x] sp-crypto-vault
|
|
|
|
#### security
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-server-keys
|
|
- [x] sp-slsa
|
|
- [x] sp-srp
|
|
- [x] sp-tpm-struct
|
|
- [x] sp-vault
|
|
- [x] sp-vault-sync
|
|
- [x] sp-x509
|
|
|
|
---
|
|
|
|
### testkit
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### testing
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-testing
|
|
- [x] sp-testing-dom
|
|
- [x] sp-testing-e2e
|
|
- [x] sp-testing-integration
|
|
- [x] sp-testing-integration-garage-s3
|
|
- [x] sp-testing-integration-mailpit
|
|
- [x] sp-testing-integration-oauth-mock
|
|
- [x] sp-testing-integration-postgres
|
|
- [x] sp-testing-integration-redis
|
|
- [x] sp-testing-integration-step-ca
|
|
- [x] sp-testing-integration-surrealdb
|
|
- [x] sp-testing-integration-typesense
|
|
|
|
---
|
|
|
|
### threejs
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### r3f
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-r3f-networking
|
|
- [x] sp-r3f-physics-rapier
|
|
- [x] sp-r3f-shaders
|
|
|
|
---
|
|
|
|
### ui
|
|
|
|
**Category navigator:** `[ ]`
|
|
|
|
#### forms
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-form-builder
|
|
- [x] sp-react-forms
|
|
|
|
#### react
|
|
**Subcategory navigator:** `[ ]`
|
|
- [x] sp-react-audio
|
|
- [x] sp-react-audio-fingerprint
|
|
- [x] sp-react-audio-player
|
|
- [x] sp-react-audio-stream
|
|
- [x] sp-react-auth
|
|
- [x] sp-react-auth-whitelabel
|
|
- [x] sp-react-control-surface
|
|
- [x] sp-react-midi
|
|
- [x] sp-react-ui
|
|
|
|
---
|
|
|
|
### Orphaned skills (no matching package in `packages/`)
|
|
- [x] sp-create-suaveplan-plugin
|
|
- [x] sp-audio-fingerprint
|
|
|
|
---
|