Skip to content

About

Zaim への高速記録・詳細編集・検索・集計などを行える非公式 Alfred ワークフロー (Unofficial Alfred Workflow for Zaim)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Latest commit

 

History

37 Commits

Folders and files

Repository files navigation

Alfred Zaim Workflow 取扱説明書

Alfred から Zaim への高速記録・検索・集計・各種ツール連携を行うための高度なワークフローです。 キーボード操作のみで日常の家計管理・店舗メモ・編集・タスク化までを完結させます。

※主に手動入力メイン、メモ欄をしっかり記入している方向けです

Zaim Workflow 検索画面


⚙️ 動作要件(Prerequisites)

本ワークフローを実行するには、以下の環境が必要です。

  • macOS
  • Alfred 5(要 Alfred Powerpack ライセンス)
  • Python 3.x
    • macOS 12.3 以降で Python がインストールされていない場合は、Homebrew(brew install python3)や Xcode Command Line Tools(xcode-select --install)等で導入してください。
    • ※外部ライブラリ(pip install)の追加導入は一切不要です。

1. 初期設定・認証(Setup & Authentication)

初回利用時、または API キーを更新する際に行う OAuth 1.0a 認証手順です。

手順 1: Developer API キーの発行

Zaim Developers ( https://dev.zaim.net/ ) にてアプリケーションを登録し、Consumer ID と Consumer Secret を取得します。

手順 2: 認可 URL の発行とブラウザ起動

Alfred を開き、以下のコマンドを実行します。

auth-zaim [Consumer ID] [Consumer Secret]

  • 自動的にブラウザが起動し、Zaim の連携許可画面が開きます。
  • 画面に表示された 認証コード(ランダムな英数字文字列) をコピーします。

手順 3: 認証コードの登録

Alfred を開き、以下のコマンドで認証コードを送信します。

pin-zaim [コピーした認証コード]

  • 認証が完了し、config.json にアクセストークンが保存されて即座にワークフローが利用可能になります。

2. 新規登録(Quick & Batch Entry)

単発の簡易入力(za)と、買い物後のまとめて入力(zam)の 2 パターンに対応しています。

A. 単発記録(za)

キーボードから数打鍵で明細・行動ログを即座に登録します。

基本構文: za [金額] [メモ・店舗名]

入力例:

  • za 1200 ラーメンランチ ➔ 1,200円の支出として登録。
  • za 0 カフェで読書 ➔ 0円登録機能。行動ログや移動履歴として記録。
  • za 3500 居酒屋 新時代 ➔ 全角数字補正・カンマ自動除去。

仕様: デフォルトで「その他支出 > その他」に分類され、登録完了後に自動で詳細・編集画面が開きます。

B. 複数一括記録(zam)

レシートやテキストメモから、複数行の明細を一度にまとめて登録します。

基本構文: zam を入力して Enter ➔ 拡大テキスト入力画面(Text View)が起動。

入力例:

  • 850 スーパー卵・牛乳

  • 1200 ドラッグストア日用品

  • 3500 ガソリン給油

  • 仕様: 各行を自動パースして連続登録し、完了後に合計金額と成功件数が通知されます。


3. 履歴閲覧・検索絞り込み(Dashboard)

ショートカットキー(Option + Command + Z)または zaim コマンドで直近の明細を検索・閲覧します。

検索結果から個別の明細を選択して Enter を押すと、詳細画面へ遷移します(詳細画面については後述)。また、Command+Lでメモ欄を拡大表示します。

基本構文: zaim [検索キーワード] [コマンド] (※ コマンドとキーワードの入力順序は自由です)

【日付・期間直接指定】

テキストや Universal Action から選択した日付文字列を渡してピンポイントで絞り込めます。

  • 単日指定 (YYYY-MM-DD): zaim 2026-09-01 ➔ その日の明細のみを抽出
  • 範囲指定 (YYYY-MM-DD-YYYY-MM-DD): zaim 2026-09-01-2026-09-07 ➔ 指定期間の明細を抽出

(※ 日付の前後関係は自動補正されるため、順序を気にせず入力可能です)

【コマンドフィルター一覧】

期間指定コマンド:

  • :t / :today : 今日
  • :y / :yesterday : 昨日
  • :w / :week : 今週(月曜日始まり)
  • :1w / :7d : 直近 7 日間
  • :m / :month : 今月(1日〜本日)
  • :fm / :fullmonth : 今月全期間(今月末までの予定含む)
  • :lm / :lastmonth : 先月(前月1日〜前月末日)
  • :ty / :thisyear : 今年(1月1日〜本日)
  • :ly / :lastyear : 昨年全期間

種別指定コマンド:

  • :p / :支出 : 支出明細のみ
  • :i / :収入 : 収入明細のみ
  • :tr / :振替 : 口座間振替のみ

特殊コマンド:

  • :r / :refresh : キャッシュ強制更新(スマホ入力分などの即時同期) ※入力後Enter
  • :g / :genre : カテゴリ名・ジャンル名フィールドのみを対象に絞り込み
  • :s / :shop : 店舗・場所名フィールドのみを対象に絞り込み
  • :a / :account : 口座名フィールドのみを対象に絞り込み
  • :memo : メモ欄のみを対象に絞り込み

使用例:

  • zaim Kyash :m ➔ 今月の「Kyash」に関連する明細一覧
  • zaim :tr :1w ➔ 直近7日間の口座移動履歴
  • zaim :r ➔ ローカルキャッシュを破棄して最新データを再取得

最上段リアルタイムサマリー

検索結果の最上部(1〜2行目)には、現在の絞り込み条件に応じた集計情報や今月の見込み収支がリアルタイム表示されます。最上段サマリーを選択した状態で修飾キーを押すことで、一括データ出力が発動します。

【エイリアス機能(検索ワード短縮)】

よく使う検索条件やコマンドの組み合わせを短縮記号(_r や _d など)として登録・自動補完できます。

  • 設定方法: Alfred のワークフロー設定画面(Configure Workflow... ➔ Environment Variables)で ALIAS_ から始まる変数を追加します。

  • 設定例:

    • ALIAS_R = revolut :tr (使用例: zaim _r ➔ Revolutの振替履歴を検索)
    • ALIAS_D = 期限 土産 (使用例: zaim _d ➔ メモ等の「期限」「土産」を検索)
    • ALIAS_L = 昼食 :p :m (使用例: zaim _l ➔ 今月の昼食支出一覧を検索)
  • 補完ガイド表示(Tab 補完): 検索窓に zaim _ と入力すると、登録済みのエイリアス一覧(例: エイリアス: _r ➔ revolut :tr)が候補に並びます。目的の項目を選択して Tab キーを押すと、展開後の検索構文が入力窓に自動挿入されます。


4. 修飾キーによる3系統データ出力(Export & Integration)

検索画面で最上段のサマリー行を選択し、以下の修飾キーで一括出力・連携します。

Command + Enter: 汎用テキスト形式

  • Text View 起動。閲覧・コピーが可能で、さらに Enter を押すと Universal Action が起動し他のアプリへ流せます。

Option + Enter: Zaim形式 CSV

  • デスクトップへ自動保存。日付,方法,カテゴリ... の Zaim 公式インポート対応形式。Excel 分析や再取り込み用。

Command + Option + Enter: RTM タスク形式(参考機能)

  • Text View 起動(Enter で Universal Action 接続)。期限文字列を自動判定しタスク構文へ変換。

RTM構文パース仕様(Command + Option + Enter)※参考機能

メモ欄に「8/18期限」などのテキストが含まれている場合、自動的に期日フラグ ^ と指定タグに分解・整形します。 (※ Remember The Milk 以外の各種タスク管理サービスやリマインダーアプリへの応用・連携にも活用できます)

  • 入力メモ例: 鶏卵 6個 8/18期限 PayPayカード
  • 変換後出力: 鶏卵 6個 ^8/18 #賞味期限 #食材 (※ タグ指定が不要な場合は、スクリプト上部の RTM_DEFAULT_TAGS = "" に変更することでタグなし出力も可能)

5. 明細詳細・リアルタイム編集(Detail View & Edit)

検索結果から個別の明細を選択して Enter を押すと、詳細画面へ移動して各項目をインライン編集できます。

※振替の口座変更は未実装です。

  • 📝 メモ: Enter で入力ウィンドウが開き、メモを上書き変更。
  • 💴 金額: Enter で金額入力窓(zaim-picker)が起動して、金額を変更(消費税計算機能あり)。
  • 📅 日付: Enter で入力ウィンドウが開き、日付(YYYY-MM-DD)を変更。
  • 📍 場所: Enter でカテゴリ選択ピッカー(zaim-picker)が起動して店舗・場所名を選択・変更(振替時は非表示)。
  • 📂 カテゴリ: Enter でカテゴリ選択ピッカー(zaim-picker)が起動して選択(振替時は非表示)。
  • 💳 口座: Enter で口座選択ピッカー(zaim-picker)が起動して変更。
  • 📋 複製: Enter でこの明細を複製します(今日の日付で作成)

カテゴリピッカーの検索仕様

  • 初期状態では現在選択されているカテゴリ名が検索窓に入力されており、候補リストの最上部には現在設定中の項目が ✔ マーク付きで表示されます。
  • 検索文字を消去していくことで、同じ大分類内の小分類候補から、全体カテゴリ候補へと段階的に表示対象が広がります。任意のキーワードを入力して自由に絞り込み・変更が可能です。
  • 自動キャッシュクリア: いずれかの項目を編集・保存すると、ローカルキャッシュが自動破棄され、即座に最新の情報に再描画されます。

6. メンテナンス・マスターCSV出力(Backup)

設定中の全カテゴリ・ジャンル・口座情報(非表示・隠し項目含む)を一括エクスポートします。

  • コマンド: zmexport
  • 出力先: デスクトップ
  • 生成ファイル:
  1. zaim_categories_full.csv (カテゴリ大項目一覧)
  2. zaim_genres_full.csv (ジャンル小項目一覧)
  3. zaim_accounts_full.csv (登録口座一覧)
  • 用途: IDマッピングの確認や、Excel等でのマスター管理・分析用。

■ 技術的特徴

  • 外部ラッパーに依存せず、Zaim REST API を直接制御する軽量設計
  • macOS 特有の Unicode (NFD/NFC) 濁点分離問題をスクリプトレベルで完全補正
  • Alfred ワークフロー専用に最適化された独自ローカルキャッシュ&即時破棄ロジック

■ 免責事項・クレジット

  • 本ワークフローは個人によって開発された非公式(Unofficial)の Alfred ワークフローであり、株式会社くふう Zaim とは直接の関係はありません。
  • 本ツールの利用によって生じた損害等について、開発者は一切の責任を負いません。
  • Zaim は株式会社くふう Zaim の登録商標です。

About

Zaim への高速記録・詳細編集・検索・集計などを行える非公式 Alfred ワークフロー (Unofficial Alfred Workflow for Zaim)

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages