summaryrefslogtreecommitdiffstats
path: root/adenosine-cli/README.md
diff options
context:
space:
mode:
Diffstat (limited to 'adenosine-cli/README.md')
-rw-r--r--adenosine-cli/README.md79
1 files changed, 76 insertions, 3 deletions
diff --git a/adenosine-cli/README.md b/adenosine-cli/README.md
index 30fb999..6b526e8 100644
--- a/adenosine-cli/README.md
+++ b/adenosine-cli/README.md
@@ -1,5 +1,78 @@
-`adenosine-cli`: atproto command-line client
-============================================
+`adenosine-cli`: command-line client for AT protocol (atproto.com)
+==================================================================
+
+This is a simple, enthusiast-grade CLI client for the work-in-progress AT
+Protocol ([atproto.com](https://atproto.com)). Sort of like the `http` command
+([HTTPie](https://httpie.io/)).
+
+It is an entirely "delegated" client, which means that it does not store or
+cache any user content locally; everything works by making requests to a
+Personal Data Server (PDS), which is usually a remote service.
+
+The only real utility of this tool currently is messing around with prototype
+implementations, possibly while developing them.
+
+This client does not currently do any schema validation of Lexicons, either at
+compile time or runtime (eg, dynamically fetching Lexicons). The Bluesky
+Lexicon (bsky.app) is partially supported with helper commands.
+
+
+## Example Commands
+
+Generic atproto/XRPC commands:
+
+ # configure host we are talking to
+ export ATP_HOST=http://localhost:2583
+
+ # register a new account
+ adenosine account register -u voltaire.test -p bogus -e voltaire@example.com
+ export ATP_AUTH_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOm1qMzVmcmo3Ymd1NmMyd3N6YnRha3QzZSIsImlhdCI6MTY2NjkzNzQxMn0.908LeimAXg1txMMH4k0_IcZAVJaFw1k7pVkScGMNcmE
+
+ # or, login
+ unset ATP_AUTH_TOKEN
+ adenosine account login -u voltaire.test -p bogus
+ export ATP_AUTH_TOKEN=eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9.eyJzdWIiOiJkaWQ6cGxjOm1qMzVmcmo3Ymd1NmMyd3N6YnRha3QzZSIsImlhdCI6MTY2NjkzNzcyMn0.7lXJ9xl6c-hrzUAR9YGLc4iFBn4nOJPbFX8TmYDHgdE
+
+ # check config and setup
+ adenosine status
+
+ # not implemented server-side (yet?)
+ adenosine account delete
+ adenosine account logout
+
+ # create, list, delete, update some records
+ adenosine create com.example.thing a=123 b=cream
+
+ adenosine ls at://hyde.test/app.bsky.post
+ # TODO: bug in serve implementation? says "Could not find user"
+
+ adenosine delete at://did:plc:mj35frj7bgu6c2wszbtakt3e/app.bsky.post/3jg4dqseut22a
+
+ adenosine describe
+
+ adenosine get at://hyde.test/app.bsky.post/asdf
+
+ adenosine resolve voltaire.test
+
+ adenosine repo root
+
+ adenosine repo root did:plc:mj35frj7bgu6c2wszbtakt3e
+
+ adenosine repo export did:plc:mj35frj7bgu6c2wszbtakt3e > example_repo.car
+
+ adenosine xrpc get app.bsky.getHomeFeed
+
+
+Example commands in bsky.app Lexicon:
+
+ adenosine bsky feed
+
+ adenosine bsky follow did:plc:mj35frj7bgu6c2wszbtakt3e
+
+ adenosine bsky profile
+
+ adenosine bsky profile voltaire.test
+
+ adenosine get at://did:plc:mj35frj7bgu6c2wszbtakt3e/app.bsky.post/3jg4dqseut22a
-Like the `http` command (HTTPie), but for the AT Protocol (<https://atproto.com>).