- Adds a new
logincommand that can be used to login with OAuth instead of App Password - Stores credentials and refreshes token as it expires
- Updated docs to reflect login flow
bun.lock
bun.lock
This file has not been changed.
docs/docs/public/icon-dark.png
docs/docs/public/icon-dark.png
Failed to calculate interdiff for this file.
docs/docs/public/og.png
docs/docs/public/og.png
Failed to calculate interdiff for this file.
packages/cli/package.json
packages/cli/package.json
This file has not been changed.
packages/cli/src/commands/auth.ts
packages/cli/src/commands/auth.ts
This file has not been changed.
packages/cli/src/commands/init.ts
packages/cli/src/commands/init.ts
This file has not been changed.
packages/cli/src/commands/login.ts
packages/cli/src/commands/login.ts
This file has not been changed.
packages/cli/src/commands/publish.ts
packages/cli/src/commands/publish.ts
This file has not been changed.
packages/cli/src/commands/sync.ts
packages/cli/src/commands/sync.ts
This file has not been changed.
packages/cli/src/index.ts
packages/cli/src/index.ts
This file has not been changed.
packages/cli/src/lib/atproto.ts
packages/cli/src/lib/atproto.ts
This file has not been changed.
packages/cli/src/lib/credentials.ts
packages/cli/src/lib/credentials.ts
This file has not been changed.
packages/cli/src/lib/oauth-client.ts
packages/cli/src/lib/oauth-client.ts
This file has not been changed.
packages/cli/src/lib/oauth-store.ts
packages/cli/src/lib/oauth-store.ts
This file has not been changed.
packages/cli/src/lib/types.ts
packages/cli/src/lib/types.ts
This file has not been changed.
+19
-1
docs/docs/pages/cli-reference.mdx
+19
-1
docs/docs/pages/cli-reference.mdx
···
1
1
# CLI Reference
2
2
3
+
## `login`
4
+
5
+
```bash [Terminal]
6
+
sequoia login
7
+
> Login with OAuth (browser-based authentication)
8
+
9
+
OPTIONS:
10
+
--logout <str> - Remove OAuth session for a specific DID [optional]
11
+
12
+
FLAGS:
13
+
--list - List all stored OAuth sessions [optional]
14
+
--help, -h - show help [optional]
15
+
```
16
+
17
+
OAuth is the recommended authentication method as it scopes permissions and refreshes tokens automatically.
18
+
3
19
## `auth`
4
20
5
21
```bash [Terminal]
6
22
sequoia auth
7
-
> Authenticate with your ATProto PDS
23
+
> Authenticate with your ATProto PDS using an app password
8
24
9
25
OPTIONS:
10
26
--logout <str> - Remove credentials for a specific identity (or all if only one exists) [optional]
···
13
29
--list - List all stored identities [optional]
14
30
--help, -h - show help [optional]
15
31
```
32
+
33
+
Use this as an alternative to `login` when OAuth isn't available or for CI environments.
16
34
17
35
## `init`
18
36
+9
-7
docs/docs/pages/quickstart.mdx
+9
-7
docs/docs/pages/quickstart.mdx
···
31
31
sequoia
32
32
```
33
33
34
-
### Authorize
35
-
36
-
In order for Sequoia to publish or update records on your PDS, you need to authorize it with your ATProto handle and an app password.
34
+
### Login
37
35
38
-
:::tip
39
-
You can create an app password [here](https://bsky.app/settings/app-passwords)
40
-
:::
36
+
In order for Sequoia to publish or update records on your PDS, you need to authenticate with your ATProto account.
41
37
42
38
```bash [Terminal]
43
-
sequoia auth
39
+
sequoia login
44
40
```
41
+
42
+
This will open your browser to complete OAuth authentication, and your sessions will refresh automatically as you use the CLI.
43
+
44
+
:::tip
45
+
Alternatively, you can use `sequoia auth` to authenticate with an [app password](https://bsky.app/settings/app-passwords) instead of OAuth.
46
+
:::
45
47
46
48
### Initialize
47
49
History
2 rounds
0 comments
stevedylan.dev
submitted
#1
5 commits
expand
collapse
feat: initial oauth implementation
chore: cleaned up types
chore: updated icon styles
chore: updated og image
chore: updated docs
1/1 success
expand
collapse
expand 0 comments
pull request successfully merged
stevedylan.dev
submitted
#0
4 commits
expand
collapse
feat: initial oauth implementation
chore: cleaned up types
chore: updated icon styles
chore: updated og image