← Back to Skills Marketplace
vveerrgg

nostr-profile

by vveerrgg · GitHub ↗ · v0.2.0 · MIT-0
cross-platform ⚠ suspicious
256
Downloads
0
Stars
0
Active Installs
7
Versions
Install in OpenClaw
/install nostr-profile
Description
Nostr profile management for AI agents — publish, read, and update kind 0 metadata on any relay
Usage Guidance
This skill appears to do what it claims (publish/read/update Nostr profiles) but there are mismatches you should resolve before installing: - Expect to provide sensitive signing material. The skill needs either a passphrase to decrypt a local identity file (NOSTRKEY_PASSPHRASE) or a raw private key (NOSTR_NSEC) to sign events. Do not set NOSTR_NSEC in shared or untrusted environments; prefer an encrypted identity file and passphrase when possible. - Confirm which environment variables the agent platform will expose to the skill (SKILL metadata, registry metadata.json, and examples disagree). Make sure required sensitive env vars are declared and you explicitly consent to providing them. - Verify the install method and package source. metadata.json and SKILL.md reference pip install of 'nostr-profile' but the registry 'install' list also contains an unfamiliar 'uv' installer. Inspect the pip package and the GitHub repo (linked in metadata.json) before installing; review the package code (nostr_profile and its dependency nostrkey) to ensure it only signs and sends properly formed Nostr events and does not exfiltrate secrets. - Be aware the skill will publish public profile data to third-party relays and uses external image services (DiceBear). Published data is public and discoverable. If you do not want public exposure of a name/bio/avatar tied to your private key, do not publish. If you want to proceed: install in an isolated environment, audit the installed package code, and prefer using an encrypted identity file + passphrase rather than exposing raw private keys in environment variables.
Capability Analysis
Type: OpenClaw Skill Name: nostr-profile Version: 0.2.0 The nostr-profile skill is a legitimate utility for managing Nostr identities (Kind 0 metadata) on the Nostr network. It utilizes the 'nostr-profile' and 'nostrkey' libraries to publish, read, and update profile information such as names, bios, and avatars. The SKILL.md instructions include appropriate security guidance, explicitly directing the agent to never log private keys (nsec) and to inform users that profile data is public. The code and examples (e.g., examples/publish_profile.py) align with the stated purpose without any signs of malicious intent or unauthorized data exfiltration.
Capability Assessment
Purpose & Capability
The skill's code and SKILL.md perform exactly the functions described (load a Nostr identity, sign and publish kind-0 profile events to relays, read/update profiles). Requiring pip for installation and accessing Nostr relays is coherent with the stated purpose. However, the registry-level metadata at the top of the submission lists no required environment variables while metadata.json and the examples clearly expect sensitive credentials (NOSTRKEY_PASSPHRASE and/or NOSTR_NSEC). That mismatch is unexpected and should be clarified.
Instruction Scope
SKILL.md instructs the agent to load an identity file and read passphrases/private keys from environment variables (examples use NOSTRKEY_PASSPHRASE and NOSTR_NSEC) and to call external services (Nostr relays and DiceBear image API). Those actions are appropriate for publishing a Nostr profile, but the SKILL.md references environment variables and identity file paths that are not consistently declared in the manifest/registry metadata. Also the examples include an instruction to use an NOSTR_NSEC env var (raw private key), which is highly sensitive and needs explicit declaration and user consent.
Install Mechanism
The skill lists pip as a required binary and metadata.json says install via pip (pip package 'nostr-profile'), which is normal. The registry 'Install specifications' block also lists an 'uv' install kind for the same package and SKILL.md includes both pip and uv entries — 'uv' is not a standard installer name and the presence of two different install kinds is inconsistent. There are no arbitrary download URLs or archive extracts in the submission, which lowers install risk, but confirm which installer will actually be used.
Credentials
The skill legitimately needs access to the agent's Nostr signing material (either a decrypt passphrase for an identity file or the raw NSEC) to sign profile events. That is proportional to its purpose. The problem: the top-level registry info claims no required env vars, metadata.json declares NOSTRKEY_PASSPHRASE (sensitive) and optional NOSTR_RELAY, while examples reference NOSTR_NSEC (a raw private key) and NOSTR_RELAY. The mismatch and the use of a raw private-key env variable are security-relevant and should be made explicit to the operator.
Persistence & Privilege
The skill does not request 'always: true' and does not modify other skills or system-wide settings. It does not require elevated agent privileges beyond normal runtime installation. Autonomous invocation is allowed (platform default) but is not combined here with unusual persistent privileges.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install nostr-profile
  3. After installation, invoke the skill by name or use /nostr-profile
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v0.2.0
Security hardening: SecretStr, sanitized exceptions, input validation
v0.1.9
Entity-aware SKILL.md — identity is you to yourself, profile is you to the world
v0.1.8
Declare env vars in metadata, inline code in SKILL.md
v0.1.7
Security hardening (XSS/SSRF/type guards/timeouts), full field updates (website/lud16/nip05), 66 tests
v0.1.4
DiceBear avatars, public profile framing, What's Next
v0.1.2
agent proposes own name and bio
v0.1.0
Initial release — publish, read, and update Nostr kind 0 profiles. 29 tests, red-teamed.
Metadata
Slug nostr-profile
Version 0.2.0
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 7
Frequently Asked Questions

What is nostr-profile?

Nostr profile management for AI agents — publish, read, and update kind 0 metadata on any relay. It is an AI Agent Skill for Claude Code / OpenClaw, with 256 downloads so far.

How do I install nostr-profile?

Run "/install nostr-profile" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is nostr-profile free?

Yes, nostr-profile is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does nostr-profile support?

nostr-profile is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created nostr-profile?

It is built and maintained by vveerrgg (@vveerrgg); the current version is v0.2.0.

💬 Comments