「タスクでスキルツリーを作りたい」という投稿から始まりました
出発点は Reddit の r/ProductivityApps に投稿された一つのスレッドでした。望みははっきりしていました。タスクを目に見えるグラフとして描き、「A と B と C を終えれば D が開く」という AND 条件も、「A か B のどちらかでよい」という OR 条件も付けたい。そして出来上がったツリーを写しとして他の人に渡したい。つまりスキルツリー エディタ、ただしゲームのためではなく、自分のタスクと人に渡すカリキュラムのためのものです。
ストアで「Skilltree」系の自己啓発・RPG アプリを探すと、事情は似ています。スキルはアプリが決めたカタログから選ぶ形で、使うにはログインが要り、アプリ内課金が付いてきます。レビューには同じ不満が繰り返し並びます。ログイン方法が変わったら進行が消えた、条件を満たしたのに解放されない、興味のないタスクを隠すことも消すこともできない。自由にツリーを描けるウェブのツール(Path of Mastery)は英語だけです。
スキルパッドはその要望をそのまま形にした道具です。ツリーは自分で描き、写しは受け取った人のものになり、画面は韓国語・英語・日本語・ドイツ語で出ます。サインインする先がありません。
スキルパッドがすること
画面の中央はキャンバスです。ノードを追加すると四角が一つ現れ、指やマウスで好きな場所へ引いて置けます。置いた場所にそのまま残ります。背景をドラッグして移動し、二本指かボタンで拡大・縮小します。散らかってきたら「自動整列」が依存の深さで層に分けてツリーを並べ直します — 起点のノードが一列、それを待つノードが次の列に来ます。
ノード同士をつなぐ線が前提関係です。あるノードを選んで「接続」を押し、それが終わってから開くべきノードを押すと、前提 → タスクの向きに矢印が引かれます。線はインスペクタ パネルから、または線自体を押して削除できます。前提が一つもないノードは最初から開いています。
ノードは三つの状態のどれかで表示されます。完了(塗りつぶし)、解放(いますぐ取りかかれる、強調表示)、ロック(グレー・薄く・鍵アイコン)。ロックされたノードもキャンバスから消えません。代わりに「何が終われば開くか」の一行が付き、チェックボックスは押せません。「次にやること」パネルには、いま開いているタスク、ロック中のタスクが待っている前提、そして完了/全体の数が出ます。
使い方
- 最初に開くとサンプルのツリーが一つ作られています。触ってみて、接続を消してみて、要らなければ削除して自分のツリーを作ってください。登録するものは何もありません。
- 「ノードを追加」でタスクを一つずつ置きます。タイトルは120文字まで、メモは2000文字まで。メモにはリンク、練習の仕方、参照するページ番号 — 後の自分が必要とすることを書いておきます。
- 次に順番を決めます。先に終えるべきノードを選んで「接続」を押し、その後に来るべきノードを押します。矢印は前提 → タスクの向きです。つなぎ間違えたら、インスペクタでその線を削除するか、線を押して消します。
- 前提が複数あるノードには解放ルールを選びます。AND なら前提をすべて終えたときに開き、OR ならそのうち一つ終わるだけで開きます。既定は AND です。ルールはいつでも変えられ、変えた瞬間に状態が再計算されます。
- ばらけた配置が気になれば「自動整列」を押します。依存の深さごとに層を作って置き直します。その後また引いて動かしてもよく、動かした位置はそのまま保たれます。
- 進めるときは開いているノードのチェックボックスを押します。完了になった瞬間、そのノードを待っていたタスクがルールに従って開きます。ロック中のノードのチェックボックスは反応しません — 飛ばしを防ぐためです。チェックを外せば、その先のタスクも再びロックされます。
- 「次にやること」パネルを見れば、キャンバスを探し回らずに済みます。いま開いているタスクが一覧で出て、ロック中のタスクの横には何を待っているかが書かれ、上に完了/全体の数が出ます。
- ツリーは複数持てます。ライブラリで新規作成・名前変更・複製・(確認のうえ)削除・切り替えができます。ギターの練習、新人のオンボーディング、家の改装計画を同じブラウザに並べても混ざりません。
- 言語はアドレスの後ろに ?lang=ko、?lang=en、?lang=ja、?lang=de を付けて選びます。ホーム画面に追加すればオフラインでも開く PWA としてインストールされます。
AND と OR、そしてロックされても見えるタスク
AND は「すべて終えたら開く」です。F コードのノードに C・G・Am が前提として付いていてルールが AND なら、三つすべてにチェックが入って初めて F が開きます。順序を守るカリキュラム、安全教育、前工程を全部踏む組み立て作業に向きます。
OR は「どれか一つでよい」です。同じ地点に至る道が複数あるときに使います。Python で学んでも JavaScript で学んでも次の段階に進めるなら、両方を前提につないでルールを OR にします。どちらかが完了した瞬間に次が開きます。
ロックされたタスクを隠さないのは意図した設計です。ツリー全体が見えるから「これはいつ頃やることになるか」を見積もれますし、ロックの理由が一行で付いていれば、なぜ解放されないのかと疑う必要がありません。ストアのレビューによくある「条件を満たしたのに開かない」は、たいてい条件が見えないことから起きます。スキルパッドは条件を常に書いておきます。
循環は作れません。A が B の前提なのに B を再び A の前提につなごうとすると — 途中に他のノードが挟まっていても — 接続は拒否され、理由が表示されます。黙ってツリーが壊れることはありません。外から取り込んだ JSON に循環が含まれていれば、問題になる線だけを落として、その旨を知らせます。
作成者と学習者:ツリーを人に渡す方法
ツリーごとに役割が一つ付いています。作成者モードでは作ります — ノードの追加、接続、編集、削除、整列。学習者モードでは進めます — 開いたタスクにチェックを入れ、次に何が開くかを見ます。
渡すときは「ツリーを書き出し(JSON)」を使います。出てくるファイルにはノード、接続、ルール、位置、メモが入り、完了印はすべて消えています。つまりカリキュラムだけが出ていきます。受け取った人がスキルパッドを開いて「JSON を取り込み」を押すと、そのツリーの自分の写しができます。そこでチェックして進めます。
その写しは本当に写しです。あとで作成者が原本を直しても相手の写しは変わらず、作成者は相手がどこまで進んだかを見られません — どこにも送られないからです。受け取った人が自分の写しを作成者モードに切り替えて自分で直しても構いません。自分のものだからです。
進捗だけを移したいときは「進捗を書き出し(JSON)」があります。このファイルにはそのツリーの完了印だけが入っています。別のブラウザで同じツリーを開いておき、「JSON を取り込み」でこのファイルを入れると、同じツリー id のツリーにその印が適用されます。ノートパソコンで始めた進捗をスマホへ移すときの方法です。
このブラウザに残るもの
ツリー、ノード、接続、メモ、完了印、キャンバス上の位置 — すべてこの端末のこのブラウザの中に保存されます。サーバーへ行くものはありません。アカウントもログインも同期もありません。画面上部には、その旨を伝える琥珀色のローカル専用バナーがあります。
だからバックアップが大切です。ブラウザのデータを消したり、端末を替えたり、シークレットウィンドウで使って閉じたりすれば、ツリーも一緒に消えます。「ツリーを書き出し(JSON)」で得たファイル一つがそのツリーの完全な写しです — 自分にメールしても、クラウドのフォルダに置いても、圧縮して保管しても構いません。新しいブラウザでは「JSON を取り込み」で戻します。
上限はゆとりがありますが決まっています。1ツリーに500ノード、タイトル120文字、メモ2000文字、ツリーは100個まで。個人のカリキュラムやオンボーディングのチェックリストなら、ぶつかることはまずない数字です。
正直な限界
- 同期はありません。二つの端末で同時にチェックしても自動では統合されません。進捗ファイルを書き出して取り込むのが唯一の移動手段です。
- 共同編集はありません。一つのツリーを二人で一緒に直すことはできません。写しを渡し、直した側がまた書き出す形です。
- 通知はありません。何かが解放されたと知らせることはありません。開けば「次にやること」パネルに出ています。
- 時間やパーセントは記録しません。ノードは終わったか、まだかのどちらかです。論文のような長い課題の時間・パーセントを積み上げたいなら、プログレスパッドがその役目です。
- 連続記録も、ステータスも、レベルも、ポイントもありません。一日空いても何もリセットされず、その代わり報酬もありません。あるのはツリーと、次にできることだけです。
- ノードに画像や添付は付けられません。タイトルとメモ、そしてメモに貼るリンクがすべてです。
AND と OR は何が違いますか?
前提が複数付いたノードがいつ開くかを決めるルールです。AND なら前提をすべて完了する必要があります。OR ならそのうち一つ完了すれば開きます。既定は AND で、ノードごとに設定します。前提が一つだけならどちらでも結果は同じで、前提がまったくないノードは最初から開いています。ルールを変えるとツリーの状態はすぐに再計算されます。
作ったツリーを他の人に渡せますか?
はい。「ツリーを書き出し(JSON)」を押すと、完了印がすべて消えたファイルが出ます。そのファイルをチャットでもメールでも好きな方法で送り、受け取った人がスキルパッドで「JSON を取り込み」を押せば、そのツリーの自分の写しができます。その写しは相手のものです。あとで自分が原本を直しても相手には反映されず、相手がどこまで進んだかも見られません — どこにも送信されないからです。相手が写しを作成者モードに切り替えて自分で直すこともできます。
循環につないだらどうなりますか?
接続は拒否され、理由が表示されます。あるノードを、直接であれ他のノードを経由してであれ、すでにそのノードに依存しているノードへつなごうとすると、スキルパッドが止めます。黙って壊れるものはありません — 既存のツリーはそのままで、いま試した線だけが作られません。外から取り込んだ JSON に循環があれば、問題の線だけを落とし、そうしたことを知らせます。お互いを待って永遠にロックされたままのノードはできません。
アップデートで締め出されたり、ツリーが消えたりしますか?
いいえ。「アップデートが必要です」という壁はなく、バージョンを確認するサーバーもありません。新しいコードは次に開いたときに静かに反映され、ツリーはそのままです。データがこのブラウザにだけあるため、実際のリスクはアップデートではなく、ブラウザのデータ削除や端末の買い替えです。だから時々「ツリーを書き出し(JSON)」でファイルを取っておくことを勧めます。カタログやプランの後ろにタスクを隠したり閉じ込めたりする仕組みもありません。
プログレスパッドとは何が違いますか?
プログレスパッドは長い課題一つがどこまで進んだかを記録します。論文や資格勉強に時間かパーセントの目標を置き、やった分を日付と分で積み上げます。スキルパッドは複数のタスクの間の順序を描きます。各ノードは終わったかまだかのどちらかで、時間は数えず、大事なのは「何が何より先に来るか」です。試験勉強60時間を積み上げるならプログレスパッド、どの題材をどの順で踏むか地図を描くならスキルパッドです。どちらもこのブラウザの中だけで動き、互いを必要としません。
無料ですか? 広告・アカウント・課金は?
無料です。アカウントもログインもサブスクもアプリ内課金もなく、ツール画面に広告は付きません。ノード数やツリー数を増やすためにお金を払う先はなく(上限は1ツリー500ノード、ツリー100個で全員同じです)、あらかじめ作られたスキルのカタログを売ることもありません。アドレスを開けばすぐ使え、ホーム画面に追加すればオフラインでも開きます。ツリーはこの端末のこのブラウザにだけあり、いつでも JSON ファイルとして丸ごと持ち出せます。
