All proposals
NIP c7

Chats

draft optional

A chat message is a kind 9 event.

{
  "kind": 9,
  "content": "GM",
  "tags": []
}

A reply to a kind 9 is an additional kind 9 which quotes the parent using a q tag.

{
  "kind": 9,
  "content": "nostr:nevent1...\nyes",
  "tags": [
    ["q", <event-id>, <relay-url>, <pubkey>]
  ]
}

Clients that render a "chat view" as a stream of ordered events MUST only fetch kind 9 events in order to prevent missing context across implementations. Other content types MAY be quoted within in a kind 9 following NIP 18.