repositories
loading repo index
repositories
loading repo index
repository
loading code, commits, and activity
public Clawd ADK gateway launch mirror
stars
latest
clone command
git clone gitlawb://did:key:z6Mkq5mY...iFZ5/my-project-publ...git clone gitlawb://did:key:z6Mkq5mY.../my-project-publ...2fa351d6docs: add automaton and perps launch sources16d ago| #1 | --- |
| #2 | name: himalaya |
| #3 | description: "CLI to manage emails via IMAP/SMTP. Use `himalaya` to list, read, write, reply, forward, search, and organize emails from the terminal. Supports multiple accounts and message composition with MML (MIME Meta Language)." |
| #4 | homepage: https://github.com/pimalaya/himalaya |
| #5 | metadata: {"clawdbot":{"emoji":"📧","requires":{"bins":["himalaya"]},"install":[{"id":"brew","kind":"brew","formula":"himalaya","bins":["himalaya"],"label":"Install Himalaya (brew)"}]}} |
| #6 | --- |
| #7 | |
| #8 | # Himalaya Email CLI |
| #9 | |
| #10 | Himalaya is a CLI email client that lets you manage emails from the terminal using IMAP, SMTP, Notmuch, or Sendmail backends. |
| #11 | |
| #12 | ## References |
| #13 | |
| #14 | - `references/configuration.md` (config file setup + IMAP/SMTP authentication) |
| #15 | - `references/message-composition.md` (MML syntax for composing emails) |
| #16 | |
| #17 | ## Prerequisites |
| #18 | |
| #19 | 1. Himalaya CLI installed (`himalaya --version` to verify) |
| #20 | 2. A configuration file at `~/.config/himalaya/config.toml` |
| #21 | 3. IMAP/SMTP credentials configured (password stored securely) |
| #22 | |
| #23 | ## Configuration Setup |
| #24 | |
| #25 | Run the interactive wizard to set up an account: |
| #26 | ```bash |
| #27 | himalaya account configure |
| #28 | ``` |
| #29 | |
| #30 | Or create `~/.config/himalaya/config.toml` manually: |
| #31 | ```toml |
| #32 | [accounts.personal] |
| #33 | email = "you@example.com" |
| #34 | display-name = "Your Name" |
| #35 | default = true |
| #36 | |
| #37 | backend.type = "imap" |
| #38 | backend.host = "imap.example.com" |
| #39 | backend.port = 993 |
| #40 | backend.encryption.type = "tls" |
| #41 | backend.login = "you@example.com" |
| #42 | backend.auth.type = "password" |
| #43 | backend.auth.cmd = "pass show email/imap" # or use keyring |
| #44 | |
| #45 | message.send.backend.type = "smtp" |
| #46 | message.send.backend.host = "smtp.example.com" |
| #47 | message.send.backend.port = 587 |
| #48 | message.send.backend.encryption.type = "start-tls" |
| #49 | message.send.backend.login = "you@example.com" |
| #50 | message.send.backend.auth.type = "password" |
| #51 | message.send.backend.auth.cmd = "pass show email/smtp" |
| #52 | ``` |
| #53 | |
| #54 | ## Common Operations |
| #55 | |
| #56 | ### List Folders |
| #57 | |
| #58 | ```bash |
| #59 | himalaya folder list |
| #60 | ``` |
| #61 | |
| #62 | ### List Emails |
| #63 | |
| #64 | List emails in INBOX (default): |
| #65 | ```bash |
| #66 | himalaya envelope list |
| #67 | ``` |
| #68 | |
| #69 | List emails in a specific folder: |
| #70 | ```bash |
| #71 | himalaya envelope list --folder "Sent" |
| #72 | ``` |
| #73 | |
| #74 | List with pagination: |
| #75 | ```bash |
| #76 | himalaya envelope list --page 1 --page-size 20 |
| #77 | ``` |
| #78 | |
| #79 | ### Search Emails |
| #80 | |
| #81 | ```bash |
| #82 | himalaya envelope list from john@example.com subject meeting |
| #83 | ``` |
| #84 | |
| #85 | ### Read an Email |
| #86 | |
| #87 | Read email by ID (shows plain text): |
| #88 | ```bash |
| #89 | himalaya message read 42 |
| #90 | ``` |
| #91 | |
| #92 | Export raw MIME: |
| #93 | ```bash |
| #94 | himalaya message export 42 --full |
| #95 | ``` |
| #96 | |
| #97 | ### Reply to an Email |
| #98 | |
| #99 | Interactive reply (opens $EDITOR): |
| #100 | ```bash |
| #101 | himalaya message reply 42 |
| #102 | ``` |
| #103 | |
| #104 | Reply-all: |
| #105 | ```bash |
| #106 | himalaya message reply 42 --all |
| #107 | ``` |
| #108 | |
| #109 | ### Forward an Email |
| #110 | |
| #111 | ```bash |
| #112 | himalaya message forward 42 |
| #113 | ``` |
| #114 | |
| #115 | ### Write a New Email |
| #116 | |
| #117 | Interactive compose (opens $EDITOR): |
| #118 | ```bash |
| #119 | himalaya message write |
| #120 | ``` |
| #121 | |
| #122 | Send directly using template: |
| #123 | ```bash |
| #124 | cat << 'EOF' | himalaya template send |
| #125 | From: you@example.com |
| #126 | To: recipient@example.com |
| #127 | Subject: Test Message |
| #128 | |
| #129 | Hello from Himalaya! |
| #130 | EOF |
| #131 | ``` |
| #132 | |
| #133 | Or with headers flag: |
| #134 | ```bash |
| #135 | himalaya message write -H "To:recipient@example.com" -H "Subject:Test" "Message body here" |
| #136 | ``` |
| #137 | |
| #138 | ### Move/Copy Emails |
| #139 | |
| #140 | Move to folder: |
| #141 | ```bash |
| #142 | himalaya message move 42 "Archive" |
| #143 | ``` |
| #144 | |
| #145 | Copy to folder: |
| #146 | ```bash |
| #147 | himalaya message copy 42 "Important" |
| #148 | ``` |
| #149 | |
| #150 | ### Delete an Email |
| #151 | |
| #152 | ```bash |
| #153 | himalaya message delete 42 |
| #154 | ``` |
| #155 | |
| #156 | ### Manage Flags |
| #157 | |
| #158 | Add flag: |
| #159 | ```bash |
| #160 | himalaya flag add 42 --flag seen |
| #161 | ``` |
| #162 | |
| #163 | Remove flag: |
| #164 | ```bash |
| #165 | himalaya flag remove 42 --flag seen |
| #166 | ``` |
| #167 | |
| #168 | ## Multiple Accounts |
| #169 | |
| #170 | List accounts: |
| #171 | ```bash |
| #172 | himalaya account list |
| #173 | ``` |
| #174 | |
| #175 | Use a specific account: |
| #176 | ```bash |
| #177 | himalaya --account work envelope list |
| #178 | ``` |
| #179 | |
| #180 | ## Attachments |
| #181 | |
| #182 | Save attachments from a message: |
| #183 | ```bash |
| #184 | himalaya attachment download 42 |
| #185 | ``` |
| #186 | |
| #187 | Save to specific directory: |
| #188 | ```bash |
| #189 | himalaya attachment download 42 --dir ~/Downloads |
| #190 | ``` |
| #191 | |
| #192 | ## Output Formats |
| #193 | |
| #194 | Most commands support `--output` for structured output: |
| #195 | ```bash |
| #196 | himalaya envelope list --output json |
| #197 | himalaya envelope list --output plain |
| #198 | ``` |
| #199 | |
| #200 | ## Debugging |
| #201 | |
| #202 | Enable debug logging: |
| #203 | ```bash |
| #204 | RUST_LOG=debug himalaya envelope list |
| #205 | ``` |
| #206 | |
| #207 | Full trace with backtrace: |
| #208 | ```bash |
| #209 | RUST_LOG=trace RUST_BACKTRACE=1 himalaya envelope list |
| #210 | ``` |
| #211 | |
| #212 | ## Tips |
| #213 | |
| #214 | - Use `himalaya --help` or `himalaya <command> --help` for detailed usage. |
| #215 | - Message IDs are relative to the current folder; re-list after folder changes. |
| #216 | - For composing rich emails with attachments, use MML syntax (see `references/message-composition.md`). |
| #217 | - Store passwords securely using `pass`, system keyring, or a command that outputs the password. |
| #218 |