Trailcast / AT Protocol / PDS
@shino3.net · trailcast.shino3.net · github.com/ShinoharaTa/trailcast

trailcast.shino3.net
実際の記録「2026-09 九州」全 25 チェックポイントから抜粋 · 旅行 / 開発記録 / 謎解き参加 などに利用
SNS は共有には強い。でも、自分の履歴を辿る用途とは性質が違う。
記録する / 振り返る
共有する / 会話する
Trailcast というアプリが無くなっても、記録は自分の手元に残る。
他のアプリからも同じ記録を読める。
Bluesky の投稿の型に合わせなくていい。net.shino3.trailcast.post に必要な項目だけを持たせる。
checkpointAt ・ images ・ sourceRef ・ thread
PDS は「Bluesky 用の保存先」ではなく、自分のレコード置き場。
at://did:plc:rpwpuzu2yyiuufm3232d7pm5/
net.shino3.trailcast.post/1ir3qi7qjlg7d
{
"$type": "net.shino3.trailcast.post",
"thread": "at://…/net.shino3.trailcast.thread/1ir3d4o0rdg66",
"text": "見渡す限り一面の曇り空",
"images": [ { "$type": "blob", "mimeType": "image/jpeg",
"size": 60670, "ref": { "$link": "bafkrei…" } } ],
"checkpointAt": "2026-09-10T09:57:03.000Z",
"createdAt": "2026-09-10T10:43:47.084Z",
"sourceRef": "at://…/app.bsky.feed.post/3mv5umbf3ae2l"
}
rkey は時刻から作る
(now_µs << 10 | clock) .toString(32)
文字列として並べるだけで時系列になる。並び替えの仕組みが要らない。
$type が独自なので、Bluesky のタイムラインには一切出ない。sourceRef がクロスポスト先への参照。
全ユーザーの記録を集約するビューを持たない
検索ランキング / おすすめ / 人気投稿 / 全体フィード を作らない
post_index: post_uri / thread_uri / checkpoint_at/api/index/sync で各 PDS から作り直せるこれが「AppView を持たない」の実装上の意味。正本はいつも各ユーザーの PDS。
記録空間は、他人の活動によって変形しない。
「2026-09 九州」の 19 件はすべて Bluesky へクロスポスト済み。PDS 上の記録が持つのは Bluesky 投稿への参照 1 つだけ。
PDS は使う。コミュニティ空間は作らない。
共有したいものだけ、Bluesky へ。
trailcast.shino3.net · github.com/ShinoharaTa/trailcast