Skip to content
This repository was archived by the owner on Jun 20, 2024. It is now read-only.
/ noscl Public archive

Command line client for Nostr.

License

Notifications You must be signed in to change notification settings

fiatjaf/noscl

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 27, 2024
eaf4ad9 · Jan 27, 2024

History

70 Commits
Mar 17, 2023
Feb 7, 2021
Feb 7, 2021
Jan 27, 2024
Jan 16, 2023
Mar 6, 2023
Feb 10, 2023
Feb 10, 2023
Nov 5, 2022
Mar 17, 2023
Mar 17, 2023
Sep 24, 2023
Mar 6, 2023
Sep 24, 2023
Nov 15, 2022
Mar 6, 2023
Mar 6, 2023
Mar 28, 2023
Feb 3, 2023
Nov 15, 2022
Feb 25, 2023

Repository files navigation

noscl

Go Report Card License: ODbL Latest Release

Command line client for Nostr.

Notice

Although it works, this project is somewhat abandoned. For a more complete CLI experience you can try https://github.com/mattn/algia and for a more streamlined CLI plumbing tool try https://github.com/fiatjaf/nak.

Installation

Compile with go install github.com/fiatjaf/noscl@latest or download a binary.

Usage

noscl

Usage:
  noscl home
  noscl setprivate <key>
  noscl public
  noscl publish [--reference=<id>...] [--profile=<id>...] <content>
  noscl message [--reference=<id>...] <id> <content>
  noscl metadata --name=<name> [--about=<about>] [--picture=<picture>]
  noscl profile <key>
  noscl follow <key> [--name=<name>]
  noscl unfollow <key>
  noscl following
  noscl event <id>
  noscl share-contacts
  noscl key-gen
  noscl relay
  noscl relay add <url>
  noscl relay remove <url>
  noscl relay recommend <url>

The basic flow is something like

  1. Add some relays with noscl relay add <relay url> (see https://nostr.watch/relays/find for some publicly available relays)
  2. Follow some people with noscl follow <pubkey>
  3. Browse some profiles from people (you don't have to be following) with noscl profile <pubkey>
  4. See the feed of people you follow with noscl home
  5. Set your own private key with noscl setprivate <hex private key>
  6. Get your public key with noscl public so you can share it with others
  7. Publish some notes with noscl publish <my note content>

Generate a key

$ noscl key-gen
seed: crowd coconut donate calm position chuckle update friend ball gospel sudden answer bitter dinosaur wise express jaguar file praise pact defy system struggle offer
private key: 5a860fa953c9162611f2e2813ee0526370664534412f31611a4a89149c6bbc9d

$ noscl setprivate 5a860fa953c9162611f2e2813ee0526370664534412f31611a4a89149c6bbc9d

Sign an event manually

noscl sign '{...event as JSON}'
screencast.mp4