LemonWrench — 自動車修理リサーチ
「<車> で X を交換する方法」を手順、トルク表、ラベル付きの図に変換し、部品カタログや実際の現場ノートと照合して、マニュアルに抜けているステップを取りこぼさないようにします。
主要ソース: https://lemon-manuals.la — 米国/カナダの約10,000台の車両、69メーカー、1960–2025年、無料、ログイン不要。国産、輸入、廃盤ブランド(ポンティアック、オールズモビル、サターン、サーブ、AMC、ジオ、マーキュリー、スズキ)、欧州エキゾチック、トラック/商用車、最新EV(テスラ2012年→、Rivian2022年→)をカバー。年式は網羅的で、トヨタとフォードは66年連続のモデルイヤーがあります。実際のHTMLテキスト(トルク表、容量、ステップバイステップ)で、図は /images25/ にあります。スキャンPDFではありません。
モデルイヤーごとに2つのデータベース:
| DB | ソース | 使用目的 |
|---|---|---|
| LEMON | 2025年キャプチャ | 2010年以降、最新のTSB、完全なツリー、図のキャプション |
| CHARM | 2013年のDVD | 1990年代~2000年代、より詳細、ツリーは深さで打ち切り |
スリーソースルール
マニュアルだけでは答えになりません。ここでの自信のある回答は常に3つから得られます:
- マニュアル — 手順とトルク値。
- 部品カタログ (gmpartscenter.net, gmpartsdirect.com, rockauto など) — 部品番号、そして構造的な証拠: 2つの鋳造品が別々の部品であれば、それらは別々の部品です。これにより、「このブラケットはカバーの一部ですか?」という質問を、写真から推測することなく答えることができます。
- 現場のコンセンサス (モデルフォーラム、JustAnswer/identifixのスレッド、YouTubeのトランスクリプト) — エンジニアがレンチを握らなかったためにマニュアルから省略されたステップ。ステップがマニュアルのテキストではなく現場のコンセンサスである場合は、その旨を明確に述べてください。
3つが矛盾する場合は、その矛盾を報告してください。決してごまかさないでください。
ツール
S=scripts/lemon.py
python3 $S <cmd>
| コマンド | 目的 |
|---|---|
makes | 正規のメーカー名 |
years MAKE | 存在するモデル年 |
cars MAKE YEAR [regex] | その年の車両、[LEMON] / [CHARM] タグ付き |
index VEHICLE [--refresh] | リンクツリー全体をフェッチ+キャッシュ(車両ごとに1回) |
find VEHICLE TERM... [-n N] [--strict|--any] | キャッシュされたツリーをgrep |
read VEHICLE TERM... [-k N] | N番目のヒットをレンダリング、ハブサブページを自動フォロー |
get URL | 絶対URLで1ページをレンダリング |
sub URL | ハブの下の子ページ |
imgs URL / pic URL / note URL TEXT / notes [URL] | 図パイプライン + 永続キャッシュ |
selftest | パーサーチェック、ネットワーク不要 |
VEHICLE はサイトパスからスラッシュを除いたもの: Toyota/2015/Camry LE、Pontiac/2007/G6 V6-3.9L
ワークフロー
- 車両を適切に特定する。
cars MAKE YEARですべてのバリエーションがリストされます。エンジンとトリムによってマニュアルが変わります —G6 GT, 4D Sedan, 3.9 1, AutomaticはG6 GT, 4D Sedan, 3.5 Nとは異なるマニュアルです。使用したバリエーションを明記してください。バッジは嘘をつく可能性があることに注意してください。同じネームプレートでも複数のエンジンが搭載されている場合があるので、排気量を確認してください。 - 一度インデックスを作成する。 LEMONの単一ページツリー ≈ 5.5 MB / 13kリンク、CHARMの分割ツリー ≈ 1.3 MB。
~/.cache/lemon/<hash>.idxにキャッシュされます。以降のクエリはローカルgrepです。サイトがマニュアルを追加した場合のみ--refreshを使用してください。 - サイトの語彙で検索する —
removal、installation、disassembly、torque specifications、fluid capacities、valve clearance、component locations、wiring diagram、DTC、labor times。デフォルトでは1つの一致しない用語を許可します。--strictは完全一致、--anyは単語単位の検索に使用します。 - 読み取り、そしてエスカレーションする。
readはヒットを出力し、次に最良のページのテキストを出力し、その後サブページをフォローします。CHARMツリーは深さで打ち切られています。ハブページは、sub <url>してからget <url>するまで何もリストされないことがよくあります。2段階のエスカレーションは正常であり、バグではありません。 - 回答する: 番号付きのステップ、印刷された通りのトルク、ページURL、および主張ごとの信頼度の注記 (
manual/catalog/field)。
図
read/get は [FIGURE https://lemon-manuals.la/images25/XXXX/] 行を出力し、説明が存在する場合はキャッシュされた説明が追加されます。
python3 $S pic https://lemon-manuals.la/images25/GM1557668/ # -> ~/.cache/lemon/img/GM1557668.png
# 表示したら:
python3 $S note https://lemon-manuals.la/images25/GM1557668/ "右ロッカーカバー、ボルトリング、上部コイルブラケット"
ページテキスト内のキャプション (Fig 1: View Of Right Valve Rocker Arm Cover) は図の実際のタイトルです — これらを使用してください。スキャンが読みにくい場合でも正確です。1ビットの線画はフルサイズで問題なく読めます。見る価値があるもの: 分解図(テキストで省略されているトルクのコールアウトが含まれている)、配線図、コネクタ端面図。
説明は ~/.cache/lemon/imgnotes.json に保存されます — 図を一度説明すれば、テキストとして永久に残ります。
マニュアルを超えて
- 構造的な質問 (「これはタイミングカバーの一部ですか?」) → 部品カタログ。別の部品番号 + 別のガスケット = 別の鋳造品。カタログ図は、ファスナーがどのサブアセンブリに属するかも示します。
- アクセスの質問 (「このボルトをブロックしているものは?」) → 現場の情報源。
<年> <モデル> <エンジン> "<部品>" bracket boltを検索し、フォーラム/JustAnswerのスレッドを読んでください。ディーラーの技術者が不足しているステップを投稿しています。 - ツールの要否 (
プレスオンプーリー、Torx、スタッド) → 取り外し手順の予備ステップに、特殊工具の名前が記載されています (例:J 25034-C)。 - 識別できない部品のボルトトルク → コンポーネント名でトルク表を確認し、部品番号で鋳造品を確認します。同じエンジンの見た目が似ているブラケットでも、仕様が異なることがよくあります (例: 隣接する部品で 25 N·m と 50 N·m)。
回答ルール
- トルクは正確に、3つの単位すべてで引用する:
34 N*m (350 kgf*cm, 25 ft*lbf) - 低トルクのファスナー (バルブカバー、プラスチック/コンポジットカバー) を明示的に指摘する: アルミへの締めすぎは、漏れの再発とねじ山の破損の最大の原因です。
- パス内の
[09/2014 - ]は改訂日です — そのページはその日以降に適用されます。 - LEMONページは、マニュアルが「次のモデルバリエーションと同一である(ただし、工数、オイル・バッテリー類、タイヤ装着は除く)」とよく述べています — 再検索する代わりに再利用してください。
<vehicle>/Labor Times/には取外し・交換作業がリストされています。「別の車両バリエーションでのみ利用可能」と表示されている場合は、指定されたバリエーションを使用してください。- カバーされていない場合は、その旨を明確に述べ、最も近い対象年式を挙げてください。決して仕様をでっち上げないでください。
- 順序は重要です。前提条件の連鎖 (ベルト → アクセサリ → ブラケット → カバー) を示し、カバーのボルトだけを示さないでください。
成果物
結果をチャットの散文ではなく、スタンドアロンのマークダウンノートとして記述してください:
- フロントマター (
tags、vehicle、job、status、updated) - ステータスコールアウト — 作業が実際にどこにあるか
- 最初に、妨げとなっている質問への直接の回答
- サイド/コンポーネントごとの番号付き手順
- 触れたすべてのファスナーをカバーする1つのトルク表
- キャプション付きの図の埋め込み
- ソース/信頼度テーブル — 主張、ソース、確認済み / 現場コンセンサス
完全な作業ノートの例については examples/ を参照してください。
注意点
- URLは大文字と小文字を区別し、メーカーのスペルはサイトのものに従います (
Dodge and Ram、Mercedes Benz)。canon_makeで処理されますが、手動のcurlでは処理されません。 - すべてのディレクトリURLで末尾のスラッシュが重要です。
/bundle/zipダウンロードは無効です (303 →/static/sad.html)。robots.txtも/bundle/を禁止しています。/hyperlink/...URLは相互参照リゾルバーであり、コンテンツではありません。- パスにはバージョンタグと
%2Fエンコードされたスラッシュが含まれています。ツールが出力した絶対URLのみをフェッチしてください。デコードされたパスを再度引用すると404になります。 - バナー「一時サーバーで再開 / 遅延の可能性あり」はパーサーによってスキップされます。120秒のタイムアウトを許可してください。
- メインホストがダウンした場合のミラー:
lemon-manuals.org.ua、lemon-manuals.gy、lemon.dogeware.me—LEMON_BASE=https://…で上書きします。 - Miniforge/pyenvのPythonはCAバンドルがないことがよくあります。
lemon.pyは/etc/ssl/certs/ca-certificates.crtにフォールバックします。
確認
python3 scripts/lemon.py selftest # 期待値: selftest OK