5b8fef5b23
tests / tests (push) Failing after 5m8s
NIP fixes: - RelayMembers (13534): use NIP-43 `member` tags (not `p`) and set the required NIP-70 `-` protected tag. - Profile (kind 0): remove display-name support entirely (getter, setter, display() fallback, and the search weight). - Comment (1111): A/a tags now carry a real address, not the event id. - BlossomServerList (10063): normalize server URLs with normalizeUrl (HTTP), not normalizeRelayUrl (which forced wss://). - HandlerRecommendation (31989): fix inverted removeRecommendation filter; add setSupportedKind()/supportedKind() for the NIP-89 d-tag. - Report (1984): place the report-type string on the e tag (note reports) or p tag (profile reports); always emit the p tag. Docs/skills: - Add @welshman/domain docs (docs/domain/) and the welshman-domain skill. - Prune @welshman/util docs/skill of the moved Profile/List/Handler/Encryptable helpers; register domain in the sidebar, index, and skills README. - Apply accuracy fixes to the @welshman/app docs/skill. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01BsMjvv7krpZeHK1Njeneru
47 lines
2.0 KiB
Markdown
47 lines
2.0 KiB
Markdown
# Welshman Agent Skills
|
|
|
|
Agent skills for working with the welshman nostr library in AI coding tools.
|
|
|
|
## What are these skills?
|
|
|
|
Agent skills are Markdown instruction sets that are auto-loaded by AI coding tools (Claude Code, Cursor, Cline, etc.) when relevant to your current task. Each skill contains focused documentation about a specific part of the welshman nostr library. When you ask a question that matches a skill's domain, the tool loads the full skill content automatically, giving the agent accurate, up-to-date knowledge about welshman's APIs and patterns.
|
|
|
|
## Installation
|
|
|
|
### Via npx (recommended)
|
|
|
|
```bash
|
|
npx skills add coracle-social/welshman
|
|
```
|
|
|
|
## Available skills
|
|
|
|
| Skill | Description |
|
|
|-------|-------------|
|
|
| welshman | General overview, package map, getting started |
|
|
| welshman-util | Core nostr types, events, filters, tags, NIPs (profiles/lists/handlers/rooms moved to domain) |
|
|
| welshman-domain | Nostr event kinds as Reader/Builder classes: profiles, lists, rooms, handlers, zaps |
|
|
| welshman-lib | Utilities: LRU, emitter, deferred, task queue |
|
|
| welshman-net | Relay connections, request/publish, auth |
|
|
| welshman-router | Relay selection strategies |
|
|
| welshman-store | Svelte stores and Repository pattern |
|
|
| welshman-signer | Signing, login methods, encrypted events |
|
|
| welshman-feeds | Dynamic feed construction |
|
|
| welshman-app | Instance-based client: plugins, sessions, publishing, requests |
|
|
| welshman-content | Note content parsing and rendering |
|
|
| welshman-editor | Svelte rich-text editor component |
|
|
|
|
## How skills activate
|
|
|
|
At startup, the AI reads each skill's description to understand what it covers. When you ask a question that matches a skill's domain — for example, asking about relay connections or feed construction — the full skill content is loaded automatically to inform the response.
|
|
|
|
You can also invoke a skill manually using its slash command:
|
|
|
|
```
|
|
/welshman
|
|
/welshman-net
|
|
/welshman-store
|
|
```
|
|
|
|
This is useful when you want to prime the agent with a specific skill before starting a task.
|