概要
aktarは、同じコンピュータ上のAktarアプリを操作するリモコンです。ファイルを渡すと127.0.0.1上のAktarに送られ、Aktarがすでに設定済みのアップロード先、キー、パステンプレート、リンクの設定でアップロードします。リンクはターミナルに返ってきます。
できること
- スクリプト、自分のMacやWindowsマシンでのCIジョブ、Typoraのようなエディタで使える小さなNode.jsコマンド
- ファイルやクリップボードのアップロード、QRコードの表示、アップロード先とアップロード履歴の確認
- アプリと同じく無料のオープンソース(MIT)
できないこと
- 単体では動きません。Aktarが起動していなければ何もアップロードできず、ストレージのキーを持つこともありません
- Linuxサーバーやリモートマシン向けではありません。通信するのは同じコンピュータ上のAktarだけです。そうした環境では、ストレージプロバイダ公式のCLIを使ってください
動作環境
- Mac版Aktar 0.4.0以降、またはWindows版Aktar(アップロード先を1つ以上設定済み)
- Node.js 18以降(Homebrewなら自動でインストールされます)
-
--name、--qr、aktar qrにはaktar 0.2.0以降が必要です - アップロード済みファイルのリンクの再利用には、aktar 0.2.0と、Mac版Aktar 0.10.0またはWindows版Aktar 0.3.0が必要です
インストール
npmかHomebrewで一度インストールするだけです。どちらでもaktarコマンドにパスが通ります。
npmでインストール(macOSとWindows)
npm install -g @getaktar/cliHomebrewでインストール(macOS)
brew install getaktar/tap/aktar-cliインストールせずに一度だけ実行することもできます:
npx @getaktar/cli upload file.pngインストールされているバージョンを確認します:
aktar --version
0.2.0Aktarと接続する
- Mac版またはWindows版のAktarで設定 → 連携を開き、ローカル接続を許可をオンにします。Aktarは
127.0.0.1だけで待ち受けます。ポートは、そこで変更しない限り47913です。 - その下に表示されたトークンをコピーします。
aktar loginを実行し、Token:のプロンプトにトークンを貼り付けます。入力中は表示されず、保存前にAktarで確認されるので、打ち間違えたトークンが保存されることはありません。
aktar login
Copy the token from Aktar: Settings > Integrations (turn on Allow local connections first).
Token:
Connected to Aktar 0.10.0. Saved to /Users/you/.config/aktar/cli.jsonトークンの保存場所
aktar loginは、トークンとポートをMacでは~/.config/aktar/cli.json(設定していれば$XDG_CONFIG_HOME/aktar/cli.json)に、Windowsでは%APPDATA%\aktar\cli.jsonに保存します。読み取れるのは自分のユーザーだけです。
{
"token": "…",
"port": 47913
}aktar logoutでこのファイルを削除できます。すべてのクライアントを一度に締め出すには、Aktarでトークンの横にあるRegenerate(再生成)をクリックし、新しいトークンでaktar loginをもう一度実行します。
スクリプトとCI
ビルドマシンではaktar loginを使わず、AKTAR_TOKEN(ポートを変更した場合はAKTAR_PORTも)を設定します。これらは保存されたファイルより優先されます。そのマシンでは、同じユーザーセッションにサインインした状態でAktarが起動している必要があります。
AKTAR_TOKEN="$AKTAR_SECRET" aktar upload dist/app.zip -d Builds| 変数 | 役割 |
|---|---|
AKTAR_TOKEN | Aktarの設定 → 連携に表示されるトークン。保存されたトークンの代わりに使われます。 |
AKTAR_PORT | AktarのローカルAPIのポート(変更した場合)。--portのほうが優先されます。 |
NO_COLOR | QRコードをターミナルの色を使わず、プレーンな文字で描きます。 |
XDG_CONFIG_HOME | macOSでの設定フォルダの場所(既定は~/.config)。Windowsでは%APPDATA%が使われます。 |
コマンド
プレーンテキストやリンクを渡したaktar qrを除き、すべてのコマンドはAktarと通信します。-dを付けなければ、Aktarのメニューバーで選択中のアップロード先にアップロードされ、ほかのアップロードと同じくAktarの履歴に残ります。aktar --helpでも同じ一覧が表示されます。
aktar uploadaktar upload --clipboardaktar qraktar loginaktar logoutaktar statusaktar destinationsaktar history
aktar upload
1つ以上のファイルをアップロードし、完了するたびにファイルの順にリンクを1つずつ出力します。
使い方
aktar upload <file>... [options]オプション
| フラグ | 値 | 説明 |
|---|---|---|
-d, --destination | <name|id> | アップロード先を名前かIDで指定します。既定はAktarで選択中のアップロード先です。 |
-f, --format | <format> | 出力の形式:url(既定)、markdown、html、custom(Aktarで作ったテンプレート)。 |
--name | <name> | 1つのファイルをこの名前でアップロードします。名前に拡張子がなければ元の拡張子が付きます。 |
--folder | <path> | ファイル名をそのままにして、このフォルダにアップロードします。 |
--expires | <days> | 1、7、14、30日後にバケットがファイルを削除します。0なら残します。 |
--qr | 各リンクのQRコードも出力します。 | |
--json | リンクの代わりに、各アップロードの詳細をまとめたJSON配列を出力します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
- アップロードを始める前にすべてのファイルを確認します。存在しないファイルが1つでもあれば何もアップロードせず、
aktarは終了コード2で終了します。 - 1つのアップロードが失敗しても、ほかはそのまま続きます。失敗はそれぞれstderrに出力され、終了コードは1になります。
--folderを付けなければ、メニューバーにドロップしたときと同じく、アップロード先のパステンプレートでファイル名が決まります。--folderを付けると、そのフォルダの中で元のファイル名のままになります。--nameは1回に1ファイルだけに使えます。スラッシュは取り除かれ、名前に拡張子がなければ元のファイルの拡張子が付きます。--name coverならIMG_4021.jpgがcover.jpgとしてアップロードされます。--folderと組み合わせると、フォルダ内での名前になります。--expiresには1、7、14、30(日)、またはファイルを残す0を指定します。付けなければ、Aktarの削除までの設定にかかわらずファイルは残ります。そのアップロード先にAktarの自動削除ルールが必要で、--folderとは併用できません。--qrは--jsonと併用できず、--pngはaktar qrでのみ使えます。- ターミナルでは、アップロード中の進行状況がstderrに表示されます。ファイルはストリーミングでAktarに送られるので、サイズは問題にならず、時間制限もありません。
例
aktar upload screenshot.png
https://files.example.com/2026/10/7f3c2a91.pngaktar upload *.png -f markdown

aktar upload IMG_4021.jpg --name cover --folder blog/2026
https://files.example.com/blog/2026/cover.jpgaktar upload photo.jpg
aktar: photo.jpg: already uploaded, reused the existing link
https://files.example.com/2026/09/4d2a8c61.jpgaktar upload --clipboard
Aktar自身のクリップボードショートカットと同じく、クリップボードにあるファイルや画像をアップロードします。
使い方
aktar upload --clipboard [options]オプション
| フラグ | 値 | 説明 |
|---|---|---|
--clipboard | ファイルの代わりにクリップボードの内容をアップロードします。 | |
-d, --destination | <name|id> | アップロード先を名前かIDで指定します。既定はAktarで選択中のアップロード先です。 |
-f, --format | <format> | 出力の形式:url(既定)、markdown、html、custom(Aktarで作ったテンプレート)。 |
--expires | <days> | 1、7、14、30日後にバケットがファイルを削除します。0なら残します。 |
--qr | 各リンクのQRコードも出力します。 | |
--json | リンクの代わりに、各アップロードの詳細をまとめたJSON配列を出力します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
- ファイルか
--clipboardのどちらか一方を指定します。両方は指定できません。 --nameと--folderはファイルでのみ使えます。-d、-f、--expires、--qr、--jsonはファイルのときと同じように使えます。--jsonを付けた場合も、出力は要素が1つの配列です。
例
aktar upload --clipboard
https://files.example.com/2026/10/9a4c03be.pngaktar upload --clipboard -f markdown -d Blog
aktar upload --clipboard --expires 1
https://files.example.com/tmp/1d/2026/10/38f0d7c2.pngaktar qr
リンクや任意のテキストのQRコードをターミナルに表示し、スマートフォンで開けるようにします。アップロードIDを渡すと、そのアップロードのリンクとQRコードを表示します。
使い方
aktar qr <link|text|upload-id> [--png <file>]オプション
| フラグ | 値 | 説明 |
|---|---|---|
--png | <file> | QRコードを表示する代わりにPNGファイルとして保存します。 |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
- 引数はちょうど1つ渡します。スペースを含むテキストは引用符で囲んでください。
- アップロードIDは、
aktar history --jsonやaktar upload --jsonのidです。aktarはAktarの履歴の直近1,000件から探します。プレーンテキストやリンクなら、Aktarはまったく必要ありません。 - ターミナルでは、テーマにかかわらず白地に黒でコードを描きます。出力先がターミナルでない場合や
NO_COLORが設定されている場合は、色を使わずに描きます。 --pngを付けると、QRコードを表示する代わりにPNGとして保存します。
例
aktar qr https://files.example.com/2026/10/demo.mp4aktar qr 0B6C2F8E-3D1A-4C55-9E2B-7A41D0C3E9F1 --png cover-qr.png
Saved to cover-qr.pngaktar login
トークンをAktarで確認して保存し、ほかのコマンドが接続できるようにします。
使い方
aktar login [--token <token>] [--port <port>]オプション
| フラグ | 値 | 説明 |
|---|---|---|
--token | <token> | プロンプトを使わずに渡すトークン。 |
--port | <port> | トークンと一緒に保存するAktarのポート。既定は47913です。 |
知っておきたいこと
- ターミナルではトークンの入力を求め、入力内容は表示されません。パイプで入力が渡された場合は、そこからトークンを読み取ります。
--tokenを使うとプロンプトを省けますが、トークンがシェルの履歴に残ります。パイプで渡すかAKTAR_TOKENを使えば、これを避けられます。- Aktarに拒否されたトークンは保存されず、終了コードは3になります。
例
aktar login
Copy the token from Aktar: Settings > Integrations (turn on Allow local connections first).
Token:
Connected to Aktar 0.10.0. Saved to /Users/you/.config/aktar/cli.jsonpbpaste | aktar login
Connected to Aktar 0.10.0. Saved to /Users/you/.config/aktar/cli.jsonaktar login --token "$AKTAR_SECRET" --port 47920
Connected to Aktar 0.10.0. Saved to /Users/you/.config/aktar/cli.jsonaktar logout
保存されたトークンとポートを削除します。
使い方
aktar logoutオプション
オプションはありません。
知っておきたいこと
AKTAR_TOKENが設定されていれば、aktar logoutのあとも使えます。- ほかのクライアントの接続は解除されません。解除するには、Aktarでトークンを再生成してください。
例
aktar logout
Logged out.aktar status
aktar: Not connected to Aktar yet. Run aktar login with the token from Aktar's Settings > Integrations.aktar status
接続先のAktar、ポート、Aktarで選択中のアップロード先、設定ファイルの場所を表示します。
使い方
aktar status [--json]オプション
| フラグ | 値 | 説明 |
|---|---|---|
--json | テキストの代わりにJSONを出力します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
- スクリプトで接続を手早く確認できます。Aktarに接続できないかトークンが正しくない場合は、終了コード3で終了します。
例
aktar status
Aktar 0.10.0 (build 28) on port 47913
Destination: Screenshots (Cloudflare R2, screenshots)
Config: /Users/you/.config/aktar/cli.jsonaktar status --json
{
"app": "Aktar",
"version": "0.10.0",
"build": "28",
"apiVersion": 1,
"defaultDestinationId": "5D1A9C3E-7B2F-4E61-8A0D-3C9B6F2E1A47",
"outputFormat": "url",
"port": 47913
}aktar destinations
アップロード先を、プロバイダ、バケット、IDとともに一覧表示します。*はAktarで選択中のアップロード先です。
使い方
aktar destinations [--json]オプション
| フラグ | 値 | 説明 |
|---|---|---|
--json | テキストの代わりにJSONを出力します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
-dには名前かIDを指定します。名前は大文字と小文字を区別せずに照合され、IDは名前を変更したあとでも使えます。--jsonでは、それぞれのid、name、provider、providerName、bucket、publicBaseURL、isDefaultが得られます。
例
aktar destinations
* Screenshots Cloudflare R2 screenshots 5D1A9C3E-7B2F-4E61-8A0D-3C9B6F2E1A47
Builds Amazon S3 acme-builds A83F2C10-6D4B-4F7E-9C1A-2B5E8D0F3C66
Blog Backblaze B2 blog-assets E2C7B9A4-1F3D-4A8E-B6C0-9D5F2A7E4B13aktar destinations --json | jq -r '.[] | select(.isDefault) | .name'
Screenshotsaktar history
最近のアップロードを新しい順に、日時、ファイル名、リンクとともに一覧表示します。historyのあとに続けた語句で履歴を検索します。
使い方
aktar history [search] [options]オプション
| フラグ | 値 | 説明 |
|---|---|---|
-n, --limit | <n> | 表示するアップロードの件数。既定は20件です。 |
-d, --destination | <name|id> | このアップロード先(名前かID)へのアップロードだけを表示します。 |
--json | テキストの代わりにJSONを出力します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
知っておきたいこと
-nを指定しなければ20件表示します。--jsonではaktar upload --jsonと同じフィールドが得られ、aktar qrで使える各アップロードのidも含まれます。
例
aktar history -n 3
2026-10-01 screenshot.png https://files.example.com/2026/10/7f3c2a91.png
2026-10-01 cover.jpg https://files.example.com/blog/2026/cover.jpg
2026-09-30 invoice-september.pdf https://files.example.com/2026/09/0e7d51b3.pdfaktar history invoice -d Screenshots
2026-09-30 invoice-september.pdf https://files.example.com/2026/09/0e7d51b3.pdf
2026-08-29 invoice-august.pdf https://files.example.com/2026/08/a6c94f20.pdfaktar history -d Builds -n 1 --json | jq -r '.[0].url'
https://acme-builds.s3.amazonaws.com/2026/10/app-3f9c2e1.zipすべてのコマンドで使えるオプション
| フラグ | 値 | 説明 |
|---|---|---|
-h, --help | コマンドとオプションの一覧を表示します。 | |
-v, --version | aktarのバージョンを表示します。 | |
--port | <port> | このコマンドだけで使うAktarのローカルAPIのポート。AKTAR_PORTや保存されたポートより優先されます。 |
出力
形式
-fで、各アップロードについて出力する内容を選びます。付けなければ、Aktarのメニューバーでコピーする形式にかかわらず、aktarはプレーンなURLを出力します。MarkdownとHTMLでは、Aktarと同じく画像は埋め込み、それ以外のファイルはリンクにします。
| 形式 | photo.jpgの出力 |
|---|---|
-f url | https://files.example.com/2026/10/7f3c2a91.jpgリンク(既定)。 |
-f markdown | Markdownの画像。画像以外のファイルはMarkdownのリンク。 |
-f html | <img src="https://files.example.com/2026/10/7f3c2a91.jpg" alt=""><img>タグ。画像以外のファイルは<a>リンク。 |
-f custom | Aktarの設定で作ったテンプレート。{url}、{filename}などの変数が埋め込まれます。 |
stdoutとstderr
標準出力に書き出されるのはリンクだけで、ファイルの順に1行に1つずつです(--qrを付ければQRコードも)。それ以外はすべて標準エラー出力に送られます。進行状況、エラー、aktar: photo.jpg: already uploaded, reused the existing linkのようなお知らせです。そのため、url=$(aktar upload file)やaktar upload *.png > links.txtでは常にリンクだけが得られます。
aktar upload photo.jpg
aktar: photo.jpg: already uploaded, reused the existing link
https://files.example.com/2026/09/4d2a8c61.jpgJSON
--jsonは、すべてのアップロードが終わってから、アップロードしたファイルごとに1要素の配列を出力します。失敗したアップロードは含まれない(stderrに出力されます)ので、終了コードもあわせて確認してください。
aktar upload photo.jpg --json
[
{
"id": "0B6C2F8E-3D1A-4C55-9E2B-7A41D0C3E9F1",
"filename": "photo.jpg",
"objectKey": "2026/10/7f3c2a91.jpg",
"url": "https://files.example.com/2026/10/7f3c2a91.jpg",
"destinationId": "5D1A9C3E-7B2F-4E61-8A0D-3C9B6F2E1A47",
"destinationName": "Screenshots",
"mimeType": "image/jpeg",
"size": 482113,
"createdAt": "2026-10-01T12:00:00Z",
"expiresAt": null,
"formats": {
"url": "https://files.example.com/2026/10/7f3c2a91.jpg",
"markdown": "",
"html": "<img src=\"https://files.example.com/2026/10/7f3c2a91.jpg\" alt=\"\">",
"custom": ""
},
"reused": false
}
]| フィールド | 意味 |
|---|---|
id | Aktarの履歴でのアップロードのID。aktar qrに渡せます。 |
filename | Aktarでのファイル名。元のファイル名か、--nameで指定した名前です。 |
objectKey | バケット内でのファイルの場所。 |
url | リンク。 |
destinationId | アップロード先のID。 |
destinationName | アップロード先の名前。 |
mimeType | Aktarによる変換後のファイルの種類。 |
size | 保存されたサイズ(バイト)。 |
createdAt | アップロードされた日時(ISO 8601、UTC)。 |
expiresAt | バケットがファイルを削除する日時。残す場合はnull。 |
formats | 4つの形式すべてのリンク:url、markdown、html、custom。 |
reused | 同じファイルがすでにあったため何もアップロードしなかった場合はtrue。Mac版0.10.0、Windows版0.3.0より前のAktarでは含まれません。 |
終了コード
| コード | 意味 |
|---|---|
0 | すべて成功しました。 |
1 | 1つ以上のアップロードまたはリクエストが失敗しました(ほかは成功)。自動削除が設定されていないなど、Aktar自身のエラーもここに含まれます。 |
2 | 引数が正しくない、ファイルが存在しない、またはAktarにない名前のアップロード先が指定されました。何もアップロードされていません。 |
3 | ログインしていない、Aktarが起動していない、ローカルAPIがオフになっている、またはトークンが正しくありません。 |
レシピ
コピーして、ファイル名を書き換えれば完了です。どのレシピも、ここまでに説明した機能だけを使っています。
リンクを変数に入れる
標準出力にはリンクだけが書き出されるので、コマンド置換でURLだけがそのまま得られます。|| exit 1は、アップロードが失敗したときにスクリプトを止めます。
url=$(aktar upload build/report.pdf) || exit 1
echo "Report: $url"
Report: https://files.example.com/2026/10/0e7d51b3.pdfビルドをアップロードしてリンクを投稿する
ビルドをZIPにまとめ、Buildsという名前のアップロード先にコミットの短いハッシュの名前でアップロードし、JSONを受け付ける任意のWebhook(チャットのチャンネル、課題管理ツール、自分のエンドポイントなど)にリンクを投稿します。set -eにより、アップロードが失敗したら投稿の前に止まります。
#!/bin/sh
set -e
zip -qr app.zip dist
url=$(aktar upload app.zip -d Builds --name "app-$(git rev-parse --short HEAD)")
curl -fsS -X POST "$WEBHOOK_URL" \
-H 'Content-Type: application/json' \
-d "{\"text\": \"New build: $url\"}"Makefileのターゲット
make shareは、レポートを今日の日付の名前でアップロードし、リンクを.last-linkに保存します。Makefileでは$$でシェルに$を渡し、コマンドの行はタブで始めます。
share: dist/report.pdf
aktar upload dist/report.pdf --name "report-$$(date +%F)" | tee .last-linkTyporaの画像アップローダー
TyporaでSettings > Image(画像)を開き、画像アップローダーにCustom Command(カスタムコマンド)を選んで、aktarのフルパス(which aktarが出力するパス)に続けてuploadを入力します。Typoraは画像のパスを渡し、1行に1つずつリンクを読み取ります。
/opt/homebrew/bin/aktar uploadWhen Insert…(画像挿入時)の設定も含めた手順は、Typoraの画像をS3にアップロードする方法をご覧ください。
Finderやショートカットからアップロードする
Macでは、ショートカット、またはFinderでファイルを受け取るAutomatorのクイックアクションにRun Shell Script(シェルスクリプトを実行)アクションを追加し、入力を引数として渡すように設定します。ショートカットとAutomatorはシェルのPATHを読み込まないため、1行目が必要です。ファイルを選んで実行すれば、リンクがクリップボードに入ります。
export PATH="/opt/homebrew/bin:/usr/local/bin:$PATH"
aktar upload "$@" | pbcopy
osascript -e 'display notification "Link copied" with title "aktar"'アップロードできるのはファイルだけで、フォルダはできません。複数のファイルなら、1行に1つずつ複数のリンクになります。
一時的なファイル
ログや画面収録など、残しておく必要のないファイルはバケットに削除させましょう。まずアップロード先にAktarの自動削除ルールが必要です。Aktarのメニューバーかアップロード先の設定にある削除までから、一度だけ設定してください。
aktar upload crash.log --expires 1
aktar upload screen-recording.mov --expires 7 --qr期限付きのファイルはバケット内のtmp/1d/、tmp/7d/などに入り、Aktarが起動していなくてもバケットが削除します。
スマートフォンでリンクを開く
--qrを付けるとリンクの下にQRコードが出力されるので、スマートフォンのカメラをターミナルに向けてください。あとでもう一度表示するには、アップロードのIDをaktar qrに渡します。ここでは「demo」に一致する最新のアップロードを使っています。
aktar upload demo.mp4 --qr
aktar qr "$(aktar history demo -n 1 --json | jq -r '.[0].id')"Windows PowerShell
PowerShellでも同じように使えます。終了コードは$LASTEXITCODEに入り、--jsonの出力はConvertFrom-Jsonで読み取れます。
$url = aktar upload .\dist\app.zip -d Builds
if ($LASTEXITCODE -ne 0) { exit $LASTEXITCODE }
Set-Clipboard $url
$upload = aktar upload .\report.pdf --json | Out-String | ConvertFrom-Json
$upload.formats.markdownAktarがしてくれること
CLIはファイルを渡すだけで、あとはAktarがアップロード先ごとの設定で処理します。そのため、アプリで設定したことはオプションを追加しなくてもaktar uploadにも適用され、得られるリンクは保存されたとおりのファイルのリンクです。
-
パステンプレート
アップロード先のオブジェクトパスで、
{year}、{uuid}、{filename}などを使ってファイル名が決まります。{md5}と{sha256}を使えば、内容に基づいた名前になります。 -
画像処理
アップロード先で画像をWebPやAVIFに変換したり、圧縮やサイズ変更をしたりする設定なら、CLIからのアップロードにも同じ処理が適用され、リンクは変換後のファイルを指します。
-
写真のメタデータ
アップロード先のアップロードの既定値にある画像のメタデータで、写真がコンピュータを離れる前に位置情報、またはすべてのメタデータを削除します。
-
同じファイルには同じリンク
重複ファイルのリンクを再利用がオンなら、同じアップロード先にある同じ内容のファイルは、もう一度アップロードされずに既存のリンクが返されます。
aktarはそのことをstderrに表示します。 -
大きなファイル
大きなファイルは分割してアップロードされ、5 GBの上限はありません。接続が切れても再試行し、止まったところから再開します。
aktarはファイルをストリーミングでAktarに送るので、メモリに読み込むことはありません。 -
公開リンクと期限付きリンク
リンクが公開リンクになるか、非公開バケットでも使える期限付き(署名付き)リンクになるかは、アプリと同じくアップロード先の設定で決まります。
重複ファイルのリンク、画像処理、{md5}と{sha256}、分割アップロードは、Mac版Aktar 0.10.0とWindows版0.3.0で加わりました:0.10.0の新機能。
トラブルシューティング
aktarのエラーメッセージはaktar:で始まり、stderrに出力されます。終了コードで問題の種類がわかります。
Aktar isn't running, or its local API is turned off
Aktarを開き、設定 → 連携でローカル接続を許可がオンになっているか確認してください。そこでポートを変更した場合は、--portかAKTAR_PORTで指定するか、aktar login --portをもう一度実行します。終了コードは3です。
Not connected to Aktar yet
保存されたトークンもAKTAR_TOKENもありません。Aktarの設定 → 連携に表示されるトークンでaktar loginを実行してください。終了コードは3です。
The token doesn't match Aktar's anymore
Aktarでトークンが再生成されたか、入力を間違えています。現在のトークンでaktar loginをもう一度実行してください。AKTAR_TOKENが設定されていると保存されたトークンより優先されるので、そちらも更新するか削除してください。終了コードは3です。
Auto-delete isn't set up for this destination
--expiresにはバケットの自動削除ルールが必要です。Aktarのメニューバーかアップロード先の設定にある削除までから一度だけ設定するか、--expiresを付けずにアップロードしてください。終了コードは1です。
No destination named "…"
メッセージにはAktarにあるアップロード先の名前が一覧表示されます。綴りを確認するか、スペースを含む名前を引用符で囲む(-d "Client work")か、aktar destinationsで表示されるIDを使ってください。終了コードは2です。
大きなファイルのアップロードに時間がかかる
これはストレージプロバイダの速度によるものです。aktarにはアップロードの時間制限がなく、ターミナルではstderrに進行状況を表示します。完了するまでAktarを起動したままにしてください。接続が切れたりAktarが終了したりした場合(Aktar closed the connection before the request finished)は、同じファイルをもう一度アップロードしてください。Mac版Aktar 0.10.0とWindows版0.3.0では、最後に終わった部分の続きから再開します。
aktarが起動しない:SyntaxErrorまたはparseArgs
Node.jsのバージョンが18より古いためです。node --versionで確認してアップデートするか、独自のNode.jsを同梱するHomebrew版のaktarをインストールしてください。
PowerShellでスクリプトの実行が無効になっていると表示される
PowerShellの実行ポリシーが、npmがaktar用にインストールしたスクリプトをブロックしています。代わりにaktar.cmdを実行するか、Set-ExecutionPolicy -Scope CurrentUser RemoteSignedでローカルのスクリプトを一度許可してください。