GitHub には毎週「2026年必須のオープンソースツール」リストが出回る。スター数は「誰かが Star を押した」ことしか示さない。あなたの代わりに、どの具体的な作業を消したかは示さない。以下の30個は問題から選ぶ:開発・オフィス・自動化が各10個。入選条件は三つだけ——自分のマシンで動く、ライセンスが自分用に許す、言い切れる労働の置き換え:コード検索、diff の読み方、PDF の結合、家計簿、サイト監視、バックアップを本当に別の場所へ。
n8n や「オープンソースパネル」系はよく見るが、MIT・Apache・GPL といったライセンスではないので入れていない。フロー編成は Activepieces の MIT コアと Node-RED に任せる。イメージのタグと条項は変わる。インストール前にそのリポジトリの LICENSE と README を開く。30個を一度に揃える必要はない。
このリストの選び方
三類で足りる。「AI / 効率 / ギーク」にまた割る必要はない。
- コマンドライン:今日開発マシンに入れ、コード検索・diff・言語バージョン・API 呼び出しを済ませる。
- デスクトップまたはローカルノート:データは先に自分のディスクへ。同期はその次。
- セルフホスト:リポジトリの Docker Compose を使う。管理画面はローカルループに bind し、SSH で自分のブラウザへ回す。
ノート、フォルダ同期、フロー編成、バックアップは各一套。二系統のノートが同じディレクトリを取り合うと、削除が同期かバックアップか分からなくなる。Syncthing は削除も同期する。暗号化バックアップは restic。
開発:毎日開く10リポジトリ
このグループはほぼコマンドライン。ライセンスは明快。macOS は Homebrew で入れられる。Linux はディストリのパッケージか上流のインストールスクリプト。コマンド自体は同じ。
| ツール | 何を解く | ライセンス | 形態 |
|---|---|---|---|
| ripgrep | リポジトリ内の内容検索 | Unlicense | コマンドライン |
| lazygit | ステージ・ブランチ・コミットの把握 | MIT | ターミナル UI |
| delta | diff を読んで直せる形に | MIT | コマンドライン |
| GitHub CLI | PR・Issue・Actions をターミナルに | MIT | コマンドライン |
| act | GitHub Actions をローカル試走 | MIT | コマンドライン + Docker |
| uv | Python バージョン・仮想環境・インストール | MIT OR Apache-2.0 | コマンドライン |
| Ruff | Python の lint とフォーマット | MIT | コマンドライン |
| mise | Node・Python・Go のバージョンをプロジェクトに追従 | MIT | コマンドライン |
| k9s | ターミナルで Kubernetes を見る | Apache-2.0 | ターミナル UI |
| Bruno | API リクエスト集合を Git に | MIT | デスクトップ |
1. ripgrep:リポジトリ内を内容で探す
BurntSushi/ripgrep · Unlicense · コマンドライン
付属の grep でも動く。大きなリポジトリでは .gitignore を尊重し、行番号付きで、エディタに追いつく速度が欲しい。ripgrep はそれをやる。VS Code の検索の下層はしばしばこれ。ターミナルにも入れておくと、スクリプトとエディタが同じ無視規則を使う。
macOS:brew install ripgrep。リポジトリのルートで rg "TODO|FIXME"。年に一度の小プロジェクト検索なら、ack や ag は足さなくてよい。
2. lazygit:今回何を変えたかを見える化
jesseduffield/lazygit · MIT · ターミナル UI
Git を教えるツールではない。ステージの塊、ブランチ、直近のコミットを一画面に並べる。塊単位のステージ、一時退避、reflog は git status を往復するより速い。危ない操作も同じ画面にある。コミットを失う前に git reset と git revert の違いを押さえる。
brew install lazygit。リポジトリで lazygit。ビューとして使う。「もうコマンドを覚えなくていい」道具にはしない。
3. delta:diff は読めることが前提
dandavison/delta · MIT · コマンドライン
デフォルトの git diff は大きな変更だと赤緑の塊になる。delta はシンタックスハイライト、横並びまたはインライン比較で、自分のコミットレビューのミスを減らす。brew install git-delta のあと:
git config --global core.pager delta
git config --global interactive.diffFilter "delta --color-only"
すでに読み慣れた diff ツールがあるなら、色替えのためだけに足す必要はない。
4. GitHub CLI:PR をターミナルから離れずに
cli/cli · MIT · コマンドライン
gh が扱うのは GitHub 上の仕事:PR 作成、Checks、Issue、Actions ログ。リポジトリ履歴は依然 git。ログインは gh auth login。トークンはシステムのキーチェーンか gh 自身の credential ストアに置く。シェル履歴やリポジトリに書かない。
brew install gh
gh pr create
gh run watch
5. act:push 前にワークフローをローカルで一度
nektos/act · MIT · コマンドライン + Docker
act は Docker で GitHub Actions をローカル実行する。workflow を直すときは先に act -l でジョブ一覧、変更したものだけ走らせ、「十回 push してやっと緑」を避ける。brew install act。Docker は起動していること。
真似するのは一般的な Linux runner で、GitHub の macOS runner ではない。workflow が Xcode・署名・シミュレータを要するなら、act は本物の Mac の代わりにはならない。その類は Mac 上で直接走らせる。
6. uv:Python 環境に三層ツールを重ねない
astral-sh/uv · MIT OR Apache-2.0 · コマンドライン
同じマシンに pip、venv、pyenv、pip-tools が並ぶと、新人の初日は「入れたのに import できない」で終わる。uv は Python のインストール、仮想環境、依存追加を一系のコマンドにまとめる。
brew install uv
uv python install 3.12
uv init
uv add ruff
チームが Poetry や PDM をドキュメントと CI に書き込んでいるなら、ロックファイルと手順を変える覚悟がない限り uv を並行導入しない。
7. Ruff:lint とフォーマットを同じツールに
astral-sh/ruff · MIT · コマンドライン
多くのチームが Flake8、isort、Black に分けていた仕事をカバーする。速く、保存時や CI に入れやすい。ruff check . で問題、ruff format . で整形。Ruff format と Black を同じリポジトリで同時に回さない。二つの整形が上書きし合う。
ルールは pyproject.toml。デフォルトで一週間回してから誤検知で絞る。初日に全プラグインを開けない。
8. mise:バージョンはリポジトリに追従
jdx/mise · MIT · コマンドライン
Node 22、Python 3.12、Go 1.23 を各人の ~/.zshrc の口約束に頼るべきではない。mise はプロジェクトに .mise.toml を置き、ディレクトリに入ればこのリポジトリ用のバージョンに切り替わり、出れば戻る。置き換えるのは「nvm + pyenv + 誰も直さない asdf」の重ね方で、言語そのものではない。
brew install mise のあと README に沿って shell 設定へ activate 行を書く。バイナリだけ置いて hook を忘れると、ディレクトリに付いてこない。
9. k9s:クラスタはまず見て、すぐ直さない
derailed/k9s · Apache-2.0 · ターミナル UI
Pod が立たない、Service にエンドポイントがない、ログが流し去られた——kubectl だと三、四コマンドを組む。k9s は名前空間、Pod、ログ、ポートフォワードをキーボード一画面に。brew install k9s、続けて k9s。
本番クラスタは読み取り専用 kubeconfig。削除やコンテナ入りのショートカットがある。共有マシンに cluster-admin は載せない。
10. Bruno:API 集合をリポジトリに
usebruno/bruno · MIT · デスクトップ
Postman 集合が一人のアカウントだけに生きると、環境 URL とサンプルリクエストが消える。Bruno はリクエストをテキスト(.bru)で保存し、コードと一緒にレビューする。brew install --cask bruno。
秘密情報は Git 無視の環境ファイルに。コミットする .bru に書かない。チームが別の API クライアントに統一済みなら、「自分だけ使う」集合を増やさない。
オフィス:サブスクを置き換える10ツール
ここでのオフィスは PDF、ノート、図、表、タスク、家計、ファイル同期、スキャン書類の保管。ローカルで先に回せるものは、席単位のサブスクを先に払わない。セルフホスト製品でライセンスが「コア」と「企業向けディレクトリ」に分かれる場合は、下で明記する。
| ツール | 何を解く | ライセンス | 形態 |
|---|---|---|---|
| Stirling-PDF | PDF の結合・分割・圧縮 | コア MIT、専有ディレクトリあり | セルフホスト |
| 思源笔记 | ブロック参照、データはローカル | AGPL-3.0 | デスクトップ / セルフホスト |
| Joplin | Markdown ノートと暗号化同期 | クライアント AGPL-3.0 | デスクトップ / モバイル |
| draw.io デスクトップ版 | フローチャートを Git に | GPL-3.0 | デスクトップ |
| Penpot | UI デザインファイルを自分で保管 | MPL-2.0 | セルフホスト |
| Grist | 表の実体はデータベース | Apache-2.0 | セルフホスト |
| Vikunja | タスク、カンバン、カレンダー | AGPL-3.0 | セルフホスト |
| Actual | エンベロープ式家計 | MIT | ローカル優先 |
| Syncthing | フォルダを端末間で同期 | MPL-2.0 | デスクトップ / サーバー |
| Paperless-ngx | スキャンの OCR と保管 | GPL-3.0 | セルフホスト |
11. Stirling-PDF:PDF を見知らぬサイトに上げない
Stirling-Tools/Stirling-PDF · コア MIT、専有ディレクトリあり · セルフホスト
結合、分割、回転、圧縮——契約書を一時的な Web ページに渡す仕事ではない。Stirling-PDF はよくある PDF 操作を自分でデプロイする画面にまとめる。リポジトリの LICENSE では、proprietary、saas、engine などのディレクトリ以外は MIT。それらのディレクトリがあれば各 LICENSE に従う。公式は一部機能に別の本番利用条項がある。
デプロイ前に README が推すイメージと tag を確認し、その tag の LICENSE を読む。自分のマシンでファイルを処理するだけなら先に使ってよい。他人にサービスとして出す、再販するなら専有ディレクトリの条項を最後まで読む。中国語 OCR はデフォルトイメージに言語パックが入っていると決め打ちしない。
12. 思源笔记(SiYuan):知識庫は先に自分のディスク
siyuan-note/siyuan · AGPL-3.0 · デスクトップ / セルフホスト
ブロック参照、バックリンク、ローカル優先。ノート本文はこのマシンのデータディレクトリにあり、半分しか export できないアカウントの中にはない。公式同期は任意の有料サービス。自分で同期するならドキュメントの S3 案を使える。ライセンスは AGPL-3.0。自分用・自分改変はよい。一般向けにネットサービスとして出すなら AGPL の義務を果たす。
カーネルが Web を開くなら 127.0.0.1 に bind。スマホの便利のために 0.0.0.0 で聴いて認証なしはしない。
13. Joplin:クリップと暗号化同期
laurent22/joplin · クライアント AGPL-3.0 · デスクトップ / モバイル
ブロックエディタというよりノートブック:Markdown、Web クリップ、端到端暗号化。同期先は自前の Joplin Server、WebDAV、オブジェクトストレージでもよい。リポジトリルートはコード既定 AGPL-3.0。packages/server に別 LICENSE があれば、サーバーをデプロイする前に開く。
暗号化パスワードを失えば、同期済みノートも開けない。復旧方法はパスワードマネージャーに残し、ノートの中に書かない。すでに思源を知識庫にしているなら、同じノートを Joplin にもミラーしない。二つのアウトラインが分岐する。
14. draw.io デスクトップ版:構成図はリポジトリに付いてくる
jgraph/drawio-desktop · GPL-3.0 · デスクトップ
フロー、ネットワーク、シーケンス図を .drawio(XML)で保存し Git に入れられる。diff はきれいではないが、PNG しか export できないアカウントに閉じ込められない。デスクトップリポジトリは現在 GPL-3.0。共同カーソルが要らないならデスクトップ版で足り、描画サーバーを立てなくてよい。
デザインシステムではない。コンポーネントのスタイルと注釈規約は自前で決める。VS Code に公式拡張もあり、エディタを離れず一枚直すとき向き。
15. Penpot:デザインファイルは自分で手元に
penpot/penpot · MPL-2.0 · セルフホスト
画面稿、コンポーネント、フロント向け注釈がすべて他人のクラウドだけにあると、アカウント停止でスクショだけになる。Penpot は自前デプロイでき、ファイルは開かれた SVG / CSS 寄り。ライセンス MPL-2.0。スタックはフロント、バック、PostgreSQL、Redis。一枚二枚のラフのために一人でこの一式を維持する価値は薄い。
チームが本当に「デザインファイルを自社マシンに」必要なら、リポジトリの Docker Compose を使い、読んだ説明のバージョンに pin する。そうでなければ draw.io かローカルファイルのまま。
16. Grist:Excel がもうデータベースになったとき
gristlabs/grist-core · Apache-2.0 · セルフホスト
一枚の表が十人でチャット送りになり、列に番号・状態・メモが混ざる——もはや表ではなく制約のない DB だ。Grist は表の見え方を保ち、下はリレーション列と式。コアは Apache-2.0。
BI ではない。大画面と複雑な権限の前にデータモデルを整える。セルフホストでは DB をバックアップする。一度 export した xlsx だけではない。
17. Vikunja:タスク一覧に重量級を先に載せない
go-vikunja/vikunja · AGPL-3.0 · セルフホスト
ToDo、リスト、カンバン、数人への共有は、しばしば「まず一式のプロジェクト管理をデプロイ」になる。Vikunja は小さめ。SQLite で始め、人が増えたら PostgreSQL。ライセンス AGPL-3.0。
チケットをリポジトリ、サポートメール、SLA クロックに結ぶ必要があるなら足りない。そのフローは既存システムに残し、タスクの第二の正本を並行で育てない。
18. Actual:家計はまずどの封筒に金があるか
actualbudget/actual · MIT · ローカル優先
エンベロープ予算:収入を家賃、税、サーバー、雑費の封筒に先に分ける。Actual は帳簿をローカルに置き、任意で自前同期。ライセンス MIT。銀行の自動取込は地域とコネクタ次第。国内カードで自動明細が引けると決め打ちしない。
個人か小チームの帳簿。確定申告ソフトでも会社の総勘定でもない。証憑と請求書の保管は Paperless に。PDF 請求書を予算ソフトの添付だけに唯一副本を置かない。
19. Syncthing:フォルダ同期、他人のクラウドを経由しない
syncthing/syncthing · MPL-2.0 · デスクトップ / サーバー
二台の PC と一台のスマホで特定ディレクトリを揃え、先にクラウドストレージへ上げる必要はない。端末は ID で相互承認、トラフィックは P2P。ライセンス MPL-2.0。
削除も同期する。一台で誤削除すれば他も消える。だからバックアップではない。重要ディレクトリは同期の外に restic で暗号化コピーと履歴版を残す。
20. Paperless-ngx:スキャン文書の文字が検索できる
paperless-ngx/paperless-ngx · GPL-3.0 · セルフホスト
契約、領収書、配送伝票を一ディレクトリに入れ、OCR・タグ・相手先で整理。ライセンス GPL-3.0。中国語は Tesseract の言語パック(例 chi_sim)。デフォルトイメージに入っているとは限らない。
原本はディスク、OCR は CPU。iOS 開発中のマシンと 16GB メモリを取り合わない。管理 UI をインターネットに直接向けない。原本ディレクトリと DB を一緒にバックアップする。
自動化:反復作業を片付ける10プロジェクト
ここでの自動化は、一本のフロー、一回の通知、一回のバックアップ、一回の依存更新。スクリプトと cron で言い切れるなら、先に編成プラットフォームは要らない。
| ツール | 何を解く | ライセンス | 形態 |
|---|---|---|---|
| Activepieces | SaaS と webhook をフローに | コア MIT、ee ディレクトリは別 | セルフホスト |
| Node-RED | イベントと API の接着剤 | Apache-2.0 | セルフホスト |
| Windmill | スクリプトを cron と内部ページに | コミュニティ版は主に AGPL | セルフホスト |
| ntfy | HTTP でスマホへ通知 | Apache-2.0(サーバー) | セルフホスト |
| Uptime Kuma | サイトとポートの生死 | MIT | セルフホスト |
| changedetection.io | ページが変わったら通知 | Apache-2.0 | セルフホスト |
| Renovate | 依存更新を PR に | AGPL-3.0 | GitHub App / セルフホスト |
| restic | 暗号化バックアップと復元 | BSD-2-Clause | コマンドライン |
| Vaultwarden | パスワード庫を自分で置く | AGPL-3.0 | セルフホスト |
| IT-Tools | エンコード、ハッシュ、JWT、cron 式 | GPL-3.0 | ブラウザ / セルフホスト |
21. Activepieces:フローを図にする前に MIT 部分を見る
activepieces/activepieces · コア MIT、ee ディレクトリは別 · セルフホスト
フォーム受信、表に書き、メール送信——スクリプトでも書けるが、引き継ぎは図の方が明確なことがある。Activepieces の LICENSE は packages/ee/ 以外が MIT。企業ディレクトリは別の企業ライセンス。本番でそれらの機能を使う前にサブスク条項に合わせる。
n8n の Sustainable Use License は自前運用は許すが、他人向けホストサービスにすることを制限するので、この30には入れていない。すでに n8n を自前デプロイし外部提供していないなら、このリストのために移行不要。新しくフローを立て、コアを MIT にしたいなら Activepieces のコミュニティ部分。企業機能は契約なしでは開けない。
22. Node-RED:webhook から次のシステムへ一本のメッセージ
node-red/node-red · Apache-2.0 · セルフホスト
イベント向き:webhook 受信、JSON を整形、別 API やキューへ。Apache-2.0。フローは Git に export。トークンは credential ストアに。コミットするフロー JSON に書かない。
大量データと複雑リトライを巨大化するキャンバスに積まない。その類は Windmill か既存のジョブ基盤。
23. Windmill:スクリプトが引き出し一杯なら内部ページを
windmill-labs/windmill · コミュニティ版は主に AGPL · セルフホスト
リポジトリ LICENSE:既定 AGPL。Apache-2.0 ファイルもあり、企業機能は専有ライセンス。Python や TypeScript のスクリプトを「同僚がフォームを埋めて実行」する内部ツールにし、スケジュールを足すのに向く。
cron 一本とスクリプト一本だけなら要らない。入れるならコミュニティか企業かを分け、AGPL を受け入れられるか決める。
24. ntfy:通知はログだけに留めない
binwiederhier/ntfy · サーバー Apache-2.0 · セルフホスト
バックアップ失敗、証明書期限、ビルド赤——サーバーログだけなら通知はないのと同じ。ntfy は HTTP 一本でスマホやデスクトップへ。サーバーは Apache-2.0。公開 ntfy.sh ではトピック名が推測される。自前デプロイしアクセストークンを付ける。
curl -d "backup failed" -H "Authorization: Bearer TOKEN" https://ntfy.example/ops
トークンとドメインは自分のものに差し替える。例のトピック名を本番に使わない。
25. Uptime Kuma:落ちたと分かるのが先
louislam/uptime-kuma · MIT · セルフホスト
HTTP、TCP、Ping、証明書期限——小チームならステータスページ一本で足りる。MIT。メトリクス基盤ではない。CPU とレイテンシヒストグラムは Prometheus 類に。Kuma に積まない。
公開ステータスページは内部ホスト名を漏らす。内向きチェックは社内ネットか SSH の奥に。外向きはユーザーに見せる項目だけ。アラートは自前の ntfy に。
26. changedetection.io:毎日更新するのではなく、変わったら知る
dgtlmoon/changedetection.io · Apache-2.0 · セルフホスト
価格、ドキュメント段落、採用ページ、リリースノート——セレクタを置き、変化時だけ通知。Apache-2.0。JavaScript 必須ページはブラウザを使い、静的 HTML より CPU が重い。間隔は伸ばす。
相手サイトの条項と robots を守る。ログイン後ページや明示的に禁止された取得はしない。通知は ntfy のまま。この一件だけのチャットボットを増やさない。
27. Renovate:依存更新を拒否できる PR に
renovatebot/renovate · AGPL-3.0 · GitHub App / セルフホスト
ロックファイルが古いのは、誰も知らないからではなく、巨大 diff で破壊的変更を探る気がないから。Renovate はパッケージ単位の PR。設定はリポジトリの renovate.json。ライセンス AGPL-3.0。公開リポジトリはホスト GitHub App が多い。私有で第三者 App を嫌うなら自前。
初週は major の自動マージを開けない。Dependabot は GitHub 製品で、このセルフホストリストには入れていない。すでに慣れているなら置き換え不要。
28. restic:バックアップとは復元を一度やったこと
restic/restic · BSD-2-Clause · コマンドライン
暗号化、重複排除、ローカルディスク・SFTP・オブジェクトストレージへ。BSD-2-Clause。Syncthing は現在状態を同期し、restic は履歴スナップショットを残す。
restic init --repo /path/to/repo
restic -r /path/to/repo backup "$HOME/Documents"
restic -r /path/to/repo snapshots
restic -r /path/to/repo restore latest --target /tmp/restore-test
パスワードは RESTIC_PASSWORD_FILE で Git に入らないファイルを指す。四半期に一度は restore し、スナップショットが空でないことを確認する。
29. Vaultwarden:パスワード庫のサーバー側を自分で
dani-garcia/vaultwarden · AGPL-3.0 · セルフホスト
Bitwarden クライアント互換のサーバー API を実装。公式サーバーより軽い。ライセンス AGPL-3.0。コミュニティ実装で、Bitwarden 社の公式サーバーではない。クライアントは公式 Bitwarden アプリのまま。
HTTPS は必須。管理トークンはリポジトリに入れない。バックアップはデータディレクトリ。暗号化パスフレーズは別の場所——データだけバックアップし、パスフレーズは頭の中だけだと、マシン故障でパスワード庫はないのと同じ。認証なしの公網ポートに晒さない。
30. IT-Tools:細かい作業はブラウザに閉じる
CorentinTh/it-tools · GPL-3.0 · ブラウザ / セルフホスト
Base64、ハッシュ、JWT デコード、cron 式の説明、正規表現——週一でやるが、出所不明の Web ページを毎回探す価値はない。IT-Tools はローカル開きも自前デプロイも可。GPL-3.0。多くはブラウザ内計算。
それでも本番トークンを、全社共有で監査していないインスタンスに貼らない。自分のマシンで開く一份で足りる。
初週に実際に入れるもの
30個はメニューで、インストールスクリプトではない。初週は下だけ残し、七日使い切ってから増やす。
| やっていること | 先に入れる | まだ入れない |
|---|---|---|
| 毎日コード | mise、uv、Ruff、ripgrep、lazygit、delta、gh | act(Actions を直すことがないとき)、k9s(クラスタがないとき) |
| ノートとファイル | 思源または Joplin のどちらか一つ + Syncthing | 第二のノート、Penpot |
| 金と契約 | Actual、PDF は LICENSE を読んだ Stirling イメージ | Paperless(ディスクと OCR の準備がないとき) |
| マシンを自分で守る | ntfy、Uptime Kuma、restic、復元を一度 | Activepieces、Windmill(第二のフローがまだないとき) |
brew install ripgrep lazygit git-delta gh uv ruff mise
git config --global core.pager delta
git config --global interactive.diffFilter "delta --color-only"
uv python install 3.12
mise の shell activate 行は現行 README 準拠。gh auth login で gh をログイン。トークンはリポジトリに書かない。
セルフホストで踏まない穴
- 管理画面は
127.0.0.1に bind。SSH ローカルフォワードでノート PC のブラウザへ。Uptime Kuma、Vaultwarden、思源、Paperless、Activepieces も同じ。 - 企業ディレクトリは clone したら使えるとは限らない。 Activepieces の
packages/ee、Stirling の専有ディレクトリ、Windmill の企業機能、AFFiNE のような「フロント MIT・サーバー別企業条項」——本番ではその LICENSE を先に読む。この記事が思源を選び AFFiNE の自前バックエンドを無料扱いにしないのはそのため。 - AGPL の自分用は通常問題ない。 一般向けネットサービスにするならソース公開義務が付く。迷ったらマーケの「open source」ではなく LICENSE を読む。
- 同期はバックアップではない。 Syncthing は削除を伝える。restic はスナップショット。パスワード庫のパスフレーズとデータディレクトリは分ける。
- バージョンを pin。 Compose に読んだ説明の tag を書き、浮動
latestは書かない。更新前にその版のマイグレーション手順を見る。 - 秘密は Git に入れない。 Bruno の環境ファイル、Node-RED のトークン、restic のパスワードファイル、ntfy の Bearer——すべて無視パスに。
Cloud Mac に載せるとき
コマンドライン群は Homebrew で Mac に入れればよく、メモリはほとんど食わない。Docker の OCR、デザイン協業、フロー編成はメモリとディスクを食う。16GB で Xcode とシミュレータも回しているなら、Paperless の中国語 OCR や Penpot の DB 一式を同じ台に載せない。PDF とスキャンはディスクが大きく、コンパイルと CPU を取り合わないマシン向き。
act は Linux コンテナ。Xcode を要する GitHub Actions の代わりにはならない。iOS ビルド、署名、シミュレータは Mac 上。workflow が lint か Linux テストだけなら act でローカル予演。
管理 UI は引き続きループバックに bind。自分の PC から SSH フォワードし、例えばリモートのポートをローカルブラウザへ回す。Vaultwarden や Kuma のポートをパブリック IP にマップしない。restic のリポジトリはオブジェクトストレージか別ディスクへ。Mac だけを唯一の副本にしない。ノートと .mise.toml、Ruff 設定は Git に。パスワードと API トークンは入れない。
FAQ
スターが多いから入れる価値がある? 理由にはしない。スターは広まりを示す。ライセンスが合うか、この記事の問題を解くかは示さない。今週省きたい作業を一行書き、上の表から選ぶ。
なぜ n8n はない? Sustainable Use License で、MIT / Apache / GPL ではない。自前デプロイし外部ホストにしないなら多くの人が使っており、このリストのために移行不要。このリストが求めるのは境界の明確な代替:Activepieces の MIT コア、または Apache-2.0 の Node-RED。
30個全部入れる? いいえ。初週は「初週に実際に入れるもの」の表で自分に関係する行だけ。ノート・同期・編成・バックアップは同種一つ。
AGPL と MIT、自分用の差は? 自分のマシンで使い改変する点はどちらも可。差は主に配布とネットサービス:AGPL はネット提供にソース義務、MIT は著作表示の保持が中心。企業ディレクトリと専有条項は別読み。「リポジトリトップが MIT」で全体を概括しない。
セルフホストのパスワード庫は安全? Vaultwarden はデータを自分のディスクに置き、HTTPS・更新・バックアップ・パスフレーズ管理は自分に戻る。公式 Bitwarden ホストは別のトレードオフ。どちらでもパスフレーズとデータバックアップは分け、復元を一度やる。
全部一台の Cloud Mac に載せられる? コマンドラインは可。OCR、Penpot、複数 DB は 16GB で Xcode と同居向きではない。管理画面は SSH フォワード。restic の副本をこの Mac だけにしない。