···11# CLI Reference
2233+## `login`
44+55+```bash [Terminal]
66+sequoia login
77+> Login with OAuth (browser-based authentication)
88+99+OPTIONS:
1010+ --logout <str> - Remove OAuth session for a specific DID [optional]
1111+1212+FLAGS:
1313+ --list - List all stored OAuth sessions [optional]
1414+ --help, -h - show help [optional]
1515+```
1616+1717+OAuth is the recommended authentication method as it scopes permissions and refreshes tokens automatically.
1818+319## `auth`
420521```bash [Terminal]
622sequoia auth
77-> Authenticate with your ATProto PDS
2323+> Authenticate with your ATProto PDS using an app password
824925OPTIONS:
1026 --logout <str> - Remove credentials for a specific identity (or all if only one exists) [optional]
···1329 --list - List all stored identities [optional]
1430 --help, -h - show help [optional]
1531```
3232+3333+Use this as an alternative to `login` when OAuth isn't available or for CI environments.
16341735## `init`
1836···6179 --dry-run, -n - Preview what would be synced without making changes [optional]
6280 --help, -h - show help [optional]
6381```
8282+8383+## `update`
8484+8585+```bash [Terminal]
8686+sequoia update
8787+> Update local config or ATProto publication record
8888+8989+FLAGS:
9090+ --help, -h - show help [optional]
9191+```
9292+9393+Interactive command to modify your existing configuration. Choose between:
9494+9595+- **Local configuration**: Edit `sequoia.json` settings including site URL, directory paths, frontmatter mappings, advanced options, and Bluesky settings
9696+- **ATProto publication**: Update your publication record's name, description, URL, icon, and discover visibility
+13
docs/docs/pages/config.mdx
···1717| `frontmatter.slugField` | `string` | No | - | Frontmatter field to use for slug (defaults to filepath) |
1818| `ignore` | `string[]` | No | - | Glob patterns for files to ignore |
1919| `removeIndexFromSlug` | `boolean` | No | `false` | Remove `/index` or `/_index` suffix from slugs |
2020+| `stripDatePrefix` | `boolean` | No | `false` | Remove `YYYY-MM-DD-` date prefixes from slugs (Jekyll-style) |
2021| `bluesky` | `object` | No | - | Bluesky posting configuration |
2122| `bluesky.enabled` | `boolean` | No | `false` | Post to Bluesky when publishing documents |
2223| `bluesky.maxAgeDays` | `number` | No | `30` | Only post documents published within this many days |
···9596```
96979798If the frontmatter field is not found, it falls back to the filepath.
9999+100100+### Jekyll-Style Date Prefixes
101101+102102+Jekyll uses date prefixes in filenames (e.g., `2024-01-15-my-post.md`) for ordering posts. To strip these from generated slugs:
103103+104104+```json
105105+{
106106+ "stripDatePrefix": true
107107+}
108108+```
109109+110110+This transforms `2024-01-15-my-post.md` into the slug `my-post`.
9811199112### Ignoring Files
100113
+9-7
docs/docs/pages/quickstart.mdx
···3131sequoia
3232```
33333434-### Authorize
3535-3636-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.
3434+### Login
37353838-:::tip
3939-You can create an app password [here](https://bsky.app/settings/app-passwords)
4040-:::
3636+In order for Sequoia to publish or update records on your PDS, you need to authenticate with your ATProto account.
41374238```bash [Terminal]
4343-sequoia auth
3939+sequoia login
4440```
4141+4242+This will open your browser to complete OAuth authentication, and your sessions will refresh automatically as you use the CLI.
4343+4444+:::tip
4545+Alternatively, you can use `sequoia auth` to authenticate with an [app password](https://bsky.app/settings/app-passwords) instead of OAuth.
4646+:::
45474648### Initialize
4749