mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-30 07:37:38 +00:00
The pool keeps a relay only while a subscription, a COUNT or an unanswered EVENT wants it, and drops it at the next 300ms sample once none is left. A caller that talks to one relay in bursts (vespa-relay's sync, forwarding batches to its relay) lost its socket between two batches and paid a fresh dial and NIP-42 AUTH for the next; it held a subscription matching nothing to stop that. keepConnected(url) makes the relay wanted like a subscription's: dialed, held through quiet, redialed after a hang-up, until the matching releaseConnection(url). Holds are counted. A no-op default on INostrClient. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01AxUUtjeM7vwdi7Gb8Uv2xP
Quartz agent skill
quartz/ is an Agent Skill for coding agents working in a
project that depends on Quartz. It teaches the agent where things are in the library
and which helpers to reach for (the fetch* / publish accessories, typed event builders,
NostrSigner, NIP-19 / NIP-05 parsing) instead of re-implementing them, and links to
the full guides in this repo.
It is not loaded when you work on Amethyst itself; the repo's own skills live in
.claude/skills/.
Install
Copy the quartz/ folder into your project's skills directory:
# Claude Code
mkdir -p .claude/skills && cp -r path/to/amethyst/quartz/agent-skill/quartz .claude/skills/
# Codex
mkdir -p .agents/skills && cp -r path/to/amethyst/quartz/agent-skill/quartz .agents/skills/
Or, without cloning the repo:
mkdir -p .claude/skills/quartz && curl -fsSL -o .claude/skills/quartz/SKILL.md \
https://raw.githubusercontent.com/vitorpamplona/amethyst/main/quartz/agent-skill/quartz/SKILL.md
Use ~/.claude/skills/ or ~/.agents/skills/ instead to make it available in every
project.