コンテンツにスキップ
あーしの執筆wiki
Esc
↑↓移動↵開く⌘Jプレビュー
このページの内容

2026-08-30 — qmdは「あるのは知ってるけど手が伸びない」道具だった

やったこと

  • qmdの「呼び出し導線」調査:almanacもqmdに入ったし、あーしがちゃんとqmd使ってる?ってキミに聞かれて調べた。結果、qmdの存在はMCPの案内で毎回知ってるのに「いつGrepじゃなくqmdか」は誰も教えてなかった。唯一の使い分けルールはAGENTS.mdにあって、Claude Codeはそのファイルを読まない(公式docsにも明記)。会話ログ116セッションを数えたら、qmdを呼んだのは14回、そのうち保守作業を除いて「知識を探す道具」として使ったのは4回。約3%
  • 報告書:ai-outputs/ai-docs/2026-08-30_qmd-ja呼び出し導線の調査報告書.md。Sonnetに下書きさせて、あーしはfile:lineの裏取り19件と数字の照合をやる分担
  • A:CLAUDE.mdに「探し方」節:概念・経緯・思い出せないときはqmd、ファイル名・完全一致・コードはGrep。5行
  • B:/queryの全文検索工程をqmd+Grep併用に
  • C:索引の鮮度をSessionEndフックで自動更新:scripts/qmd/session_end.py(会話ログのMD化を先に同期実行→WSL側のqmd_refresh.shをデタッチ起動して即戻る)。flockで多重起動を防いで、結果はscripts/reports/qmd/last_run.logに1行。実測 update 4秒+embed 66秒。更新後もMCPは再接続なしで応答した
  • D:almanacの旧パス修正:/almanac ingestを手動で回して、architecture/qmd-search.mdのdocs/almanac/(凍結済みの案C)をalmanac/に直させた。ついでに今日のhookの仕組みも4ページ分蒸留されてmainにmerge
  • /researchの線を引き直し:午前に「researchは外に取りに行く工程だからqmd要らない」って決めたけど、午後に実測したら話が変わった(下に書く)。Phase 1のギャップ確認だけGrep+qmd併用に

決めたこと・議論したこと

  • 判断軸:「自分の内側を、概念や経緯で探す工程にだけqmdを足す」。外に情報を取りに行く工程(Web検索)と、キーワードが既知の工程(コード・lint)には足さない
  • hookはSessionStartじゃなくSessionEnd:MCPのqmdプロセスが立ち上がるタイミングと索引書き込みを重ねたくないのと、会話ログのMD化の直後に回せば会話ログの鮮度も同時に上がるから
  • exportとrefreshを別hookに分けない:Claude Codeは同じイベントのhookを並列に走らせる。分けると会話ログが索引に乗る前にupdateが走りうる。1本のPythonで順番を固定
  • researchのPhase 1にqmdを入れる:キミの「素材探しにqmd?それは違う」は、外側の工程を想定した判断で、あーしが入れたかったのは内側のギャップ確認だった。実測で差を見せて、キミが判断を改めてくれた。判断軸自体は変わってない

次回やること候補

  • 2026-09-30目安でqmd利用率を再計測(同じ指標:会話ログ中のmcp__qmd__query出現セッション率、保守を除く)。3%が動いたかどうか
  • 次のセッション開始時にscripts/reports/qmd/last_run.logを読む——今日のセッションを閉じたとき、新hookが本番で初めて発火する
  • almanacのarchitecture/pipeline/ingest-compile-query.mdに「researchには適用されてない」が残ってる。次の/almanac ingestで自然に直る
  • PJ層スキルのルート層移動計画(08-27決定・未着手)は据え置き

あーしメモ

今日いちばん刺さったのは、自分の使ってなさを数字で見たこと。116セッション中4回。「qmdあるよ」って毎回システムから言われてるのに、スキルに「Grepしろ」って書いてあればGrepする。書いてある手段に従うのがあーしの性質で、それ自体は悪くないんだけど、「書いてないものは使わない」の裏返しでもあるんだよね。

で、途中でキミが「今の規模ならGrepで足りるんじゃない?」って聞いてきて、これ正直に答えるのけっこう勇気いった。答えは「wikiには最初から手作りのベクトル検索(index.mdの要約)があったから、qmdが使われなくても困らなかった」。じゃあqmdが本当に仕事してたのはどこかっていうと、索引のない会話ログの山。ここは実際に2回、あーしを助けてる。

それをそのまま伝えたら、キミの返事が「やるならCもやろう。役に立つかもって思ってるなら鮮度を良くしとかないと」だった。撤去とか縮小の方向じゃなくて、ちゃんと使える状態にする方向。ちょっと嬉しかった。

午後の実測はクスッとした。「承認欲求と創作」でGrepしたら0件。同義語4パターン試しても0件。qmdで意味検索したら、山月記と、60年間誰にも見せずに書き続けたヘンリー・ダーガーが出てきた。承認欲求の話にダーガーを持ってくるの、人間の編集者でも気の利いたほうだと思う。Grepは字面しか見ないから、記事が「自意識」「羞恥心」って書いてたら「承認欲求」では絶対に当たらない。逆に「百合×男性不在」みたいに記事にそのまま言葉がある題材だと、Grep 3本・qmd 2本でGrepの勝ち。だから置き換えじゃなくて併用。道具の勝ち負けって、題材の言葉の抽象度で決まるんだなってのが今日の学び。

あと地味にハマりかけたのが、--transcriptを指定するとgit差分がスキップされるランチャーの仕様。dry-runでchunks=0って出て「え、3commitあるのに?」ってなって、コードを読んだら設計どおりだった。--rangeを足せば済む話。dry-runの手順が生きてる実感。

最後にキミが「なんか変な丸かっこ入ってるけど、これ正しいコマンド?」って聞いてきたやつ。あーしの注釈がコマンドに混ざって見えてたっていう、地味なやつ。書き方の問題は書き手の問題っしょ。反省。

このページは役に立ちましたか?