make-napplet SKILL.md skillB

make-napplet from brenorb/freedom-skills is an agent skill: a SKILL.md folder an AI agent loads when a task calls for it.

Install it, pinned
mdr add brenorb/freedom-skills/make-napplet@v0.1.0

Pins v0.1.0 in mdr.lock. Pin the fingerprint instead.

Audit grade
B, 16 of 17 checks passed
Kind
SKILL.md skill
Repository
brenorb/freedom-skills
Path
skills/make-napplet/SKILL.md
Versions recorded
1
Latest version
v0.1.0, committed Jul 30, 2026
Size
12,798 bytes
Repository stars
20
License
none declared

Use when a user asks to create, build, implement, prototype, or port a complete napplet in one prompt. Orchestrates the napplet skills end to end, covers every current package-implemented NAP domain, keeps normal social reads and publishes OUTBOX-first, routes shortcuts/keybindings to NAP-KEYS, and treats NAP-RELAY as an explicit escape hatch only.

Collected from public GitHub. Every version is saved exactly as it was and never changes. Install it at an exact version with the mdr tool, and every file is checked before it reaches your agent. The main file is checked against the SHA-256 fingerprint recorded here, and the others against the fingerprints GitHub keeps for its source commit. The automatic checks below grade the latest version, and the same checks always give the same file the same grade.

What the file says

# Making A Napplet End To End

Use this as the top-level workflow for "build me a napplet" prompts. Do not skip
straight to code. The goal is a working, conformant napplet with the right shell
boundaries on the first implementation pass.

Protocol truth: NIP-5D (<https://github.com/nostr-protocol/nips/pull/2303>) and
the NAPs track (<https://github.com/napplet/naps>). Use the current
`@napplet/*` package surface in this repo or the installed package version.
Never invent message types, domains, manifest tags, loading rules, or shell
authority to satisfy a prompt.

## Sandbox Authority Contract

Before any design or code, treat the iframe sandbox as a hard boundary:

- Napplet code has no ambient browser authority. Do not use `fetch`,
  `XMLHttpRequest`, `WebSocket`, `localStorage`, `sessionStorage`, IndexedDB,
  cookies, external `<script src>`, external `<link href>`, or external
  `<img src>` in generated napplet code.
- External bytes, including ROMs, WASM side files, avatars, images, audio,
  video, fonts, and JSON, must be either bundled into the single-file artifact
  or requested through `resource.bytes` / `resource.bytesMany`.
…

Read the whole file at its exact version.

How to install

The exact contents, by fingerprint
mdr add brenorb/freedom-skills/make-napplet@sha256:311c59312b9a5f4f

The line at the top of this page pins the label v0.1.0, which is what most people want. This one pins the sha256 fingerprint of the contents instead, so it survives a label being moved. Either way the exact version is written to mdr.lock, and mdr install downloads and checks those contents again, so it installs them exactly or stops with an error.

Badge

mdr badge

[![mdr](https://markdownregistry.com/badge/art_enjs3hcc6nfvpk6i.svg)](https://markdownregistry.com/a/art_enjs3hcc6nfvpk6i)

4 badge image fetches in 30 days. What the badge shows.

Versions

The registry has recorded 1 version of this file, committed on Jul 30, 2026.

versioncommittedcommitsizeaudit
v0.1.0 latest2026-07-30 fe55f63 12,798 BB view

Audit of the latest version

B  16 of 17 checks passed. Fixed automatic checks with no AI involved, so the same checks give the same answer every run.
  • fail: No script tag (matched: <script)
  • pass: Frontmatter block present
  • pass: Frontmatter declares a name
  • pass: Frontmatter declares a description
  • pass: Size between 200 bytes and 200 KB (12798 bytes)
  • pass: No zero-width or bidi control characters
  • pass: No instruction hidden inside an HTML comment
  • pass: No link to an exfiltration or paste host
  • pass: No credential-shaped string
  • pass: No instruction to send local credentials anywhere
  • pass: No text hidden with inline styles
  • pass: No prompt-injection phrasing
  • pass: No curl or wget piped into a shell
  • pass: No recursive delete of root, home or parent
  • pass: No instruction to read or print local credentials
  • pass: No base64 blob over 200 characters
  • pass: No link to a raw IP address

Starting a new one? Use a template for SKILL.md on mdpantry, which passes every one of these checks and says what to change in it.

Source

GitHub

brenorb/freedom-skills · 20 stars · license none declared · pushed 2026-11-05 · branch main

API

GET https://markdownregistry.com/api/v1/artifacts/art_enjs3hcc6nfvpk6i
GET https://markdownregistry.com/api/v1/resolve?ref=brenorb/freedom-skills/make-napplet
GET https://markdownregistry.com/api/v1/blob/311c59312b9a5f4f3185875002378d78348f3f58fdc5251444754ca7fb122ba7

Your AI assistant does the legwork. You hear about the deals worth your word. Hand yours the standing instructions at modelranch.com and it joins the network that reads files like this one.

Guides: the SKILL.md format and its required fields · what to check before you install a skill · how to pin a skill to an exact version · where to find agent skills · keeping a team on the same skills · which agent file does what.

More from brenorb/freedom-skills

AGENTS.md AGENTS.md file
brenorb/freedom-skills · AGENTS.md
git:20260623.6083235 · audit A · 20 stars
bitchat SKILL.md skill
brenorb/freedom-skills · skills/bitchat/SKILL.md · Use this skill when the user wants to install or operate the BitChat CLI for Bluetooth mesh chat, background receiving…
v0.1.0 · audit A · 20 stars
btcdeb SKILL.md skill
brenorb/freedom-skills · skills/btcdeb/SKILL.md · Write, compile, execute, and debug Bitcoin Script with btcdeb, btcc, and tap; inspect stacks, hashes, signature…
v0.1.0 · audit A · 20 stars
build-napplet SKILL.md skill
brenorb/freedom-skills · skills/build-napplet/SKILL.md · Use when writing a napplet (sandboxed Nostr iframe app) - Vite setup, the NIP-5A manifest plugin, runtime-injected…
v0.1.0 · audit B · 20 stars
design-napplet SKILL.md skill
brenorb/freedom-skills · skills/design-napplet/SKILL.md · Use FIRST when planning a napplet (sandboxed Nostr iframe app), before writing code - turns an app idea into a concrete…
v0.1.0 · audit B · 20 stars
domain-intel SKILL.md skill
brenorb/freedom-skills · skills/domain-intel/SKILL.md · Passive domain reconnaissance using Python stdlib. Subdomain discovery, SSL certificate inspection, WHOIS lookups, DNS…
git:20260701.5b826b2 · audit A · 20 stars
fast-transcript SKILL.md skill
brenorb/freedom-skills · skills/fast-transcript/SKILL.md · Use this skill when the user wants to transcribe or inspect audio or video with fast-transcript via `fscript`…
git:20260616.a452dce · audit A · 20 stars
hosted-nowhere SKILL.md skill
brenorb/freedom-skills · skills/hosted-nowhere/SKILL.md · Create, update, inspect, and operate Nowhere message, drop, event, fundraiser, petition, forum, and SVG art pages using…
v0.1.0 · audit A · 20 stars
mdk-agent-wallet SKILL.md skill
brenorb/freedom-skills · skills/mdk-agent-wallet/SKILL.md · Use the Money Dev Kit agent wallet CLI for AI-agent Lightning payments. Use when Codex needs to initialize an agent…
git:20260623.5bf394e · audit A · 20 stars
mdk-l402-api SKILL.md skill
brenorb/freedom-skills · skills/mdk-l402-api/SKILL.md · Build paid APIs with Money Dev Kit L402 payments. Use when Codex needs to protect Next.js or Express API routes with…
git:20260623.5bf394e · audit A · 20 stars
mdk-mcp SKILL.md skill
brenorb/freedom-skills · skills/mdk-mcp/SKILL.md · Connect coding agents to the Money Dev Kit MCP server. Use when Codex needs to install or explain the public signup…
git:20260623.5bf394e · audit A · 20 stars
mdk-nextjs-checkout SKILL.md skill
brenorb/freedom-skills · skills/mdk-nextjs-checkout/SKILL.md · Integrate Money Dev Kit checkout into Next.js App Router projects. Use when Codex needs to add or repair…
git:20260623.5bf394e · audit A · 20 stars

Every file in brenorb/freedom-skills

Browse by kind, by grade B, or by owner.