Other ways in

Command line

One file, no dependencies. Publish, read comments, and answer them.

The command line is a single file with no dependencies, so downloading it is the whole install. It needs Node 18 or newer, which is what gives it fetch.

Get it

curl -fsSL https://app.peerforge.app/cli.mjs -o peerforge.mjs
node peerforge.mjs login

On Windows: curl.exe works the same, or download the file in a browser.

Login shows you a short code and a URL. Approve it once in a browser and the key is written to ~/.peerforge/config.json — you never handle it yourself.

Publishing

node peerforge.mjs publish ./plan.html
node peerforge.mjs publish ./plan.html --visibility public

# a new version of one that exists
node peerforge.mjs publish ./plan.html --id A1CIBlz4 --base-version 2

--base-version is the version you edited from. If somebody published in between, the call is refused rather than overwriting them.

Reading, and answering

node peerforge.mjs read A1CIBlz4 --quiet > plan.html
node peerforge.mjs comments A1CIBlz4
node peerforge.mjs reply A1CIBlz4 <threadId> --body "Fixed in v3" --resolve
node peerforge.mjs share A1CIBlz4 --visibility domain --domain acme.com

What it prints when a version breaks a comment

Publishing a version that removes text somebody commented on says so, in the terminal, naming the comments rather than counting them. That is the whole reason to use this rather than curl.

  1 comment came loose in this version:
    "October is the board meeting, not the ship date."
      was on: "We ship the billing rewrite in October."
      thread: fb8ec6fd-086e-4330-9bd7-508a38395003
  Reply to explain the change, then resolve the thread.

Not on npm yet, which is why it is a download and a `node` invocation rather than `npm i -g`. When it is published this page will say so and the commands get shorter.