<?xml version="1.0" encoding="utf-8" standalone="yes"?>
<rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom">
    <channel>
        <title>閒魚 on KnightLiブログ</title>
        <link>https://www.knightli.com/ja/tags/%E9%96%92%E9%AD%9A/</link>
        <description>Recent content in 閒魚 on KnightLiブログ</description>
        <generator>Hugo -- gohugo.io</generator>
        <language>ja</language>
        <lastBuildDate>Sun, 17 May 2026 17:24:03 +0800</lastBuildDate><atom:link href="https://www.knightli.com/ja/tags/%E9%96%92%E9%AD%9A/index.xml" rel="self" type="application/rss+xml" /><item>
        <title>ai-goofish-monitor：AI で閒魚の商品を自動監視するオープンソースシステム</title>
        <link>https://www.knightli.com/ja/2026/05/17/ai-goofish-monitor/</link>
        <pubDate>Sun, 17 May 2026 17:24:03 +0800</pubDate>
        
        <guid>https://www.knightli.com/ja/2026/05/17/ai-goofish-monitor/</guid>
        <description>&lt;p&gt;ai-goofish-monitor は、Usagi-org が公開している閒魚向けの商品監視システムです。&lt;/p&gt;
&lt;p&gt;目的は明確です。閒魚での検索、絞り込み、商品分析、結果記録、通知を自動化し、大量の中古商品から条件に合うものをより早く見つけることです。プロジェクトは Playwright でページ操作を自動化し、画像入力に対応する AI モデルを接続して商品情報をさらに判断します。&lt;/p&gt;
&lt;p&gt;プロジェクト：&lt;a class=&#34;link&#34; href=&#34;https://github.com/Usagi-org/ai-goofish-monitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;https://github.com/Usagi-org/ai-goofish-monitor&lt;/a&gt;&lt;/p&gt;
&lt;h2 id=&#34;先に結論&#34;&gt;先に結論
&lt;/h2&gt;&lt;p&gt;ai-goofish-monitor は、単純なキーワード通知スクリプトというより、「閒魚の購入インテリジェンスダッシュボード」に近いです。&lt;/p&gt;
&lt;p&gt;主な特徴は次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;タスク、アカウント、AI 判定基準、ログ、結果を管理できる Web 管理画面。&lt;/li&gt;
&lt;li&gt;複数タスクの並行実行。各タスクでキーワード、価格、絞り込み条件、AI Prompt を設定できる。&lt;/li&gt;
&lt;li&gt;Playwright で閒魚ページを取得し、ログイン状態やページ操作が必要な場面に対応しやすい。&lt;/li&gt;
&lt;li&gt;キーワード一致だけでなく、AI で商品が条件に合うか判断する。&lt;/li&gt;
&lt;li&gt;ntfy.sh、企業微信、Bark、Telegram、Webhook などの通知に対応する。&lt;/li&gt;
&lt;li&gt;Cron 定期実行、複数アカウント管理、プロキシローテーション、失敗時リトライ、Docker デプロイに対応する。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;特定の商品をよく閒魚で探す人、たとえば中古デジタル機器、カメラ機材、GPU、HDD、ゲーム機、楽器、家電、コレクション品を探す人に向いています。ただし「自動で掘り出し物を買うツール」ではありません。閒魚の検索結果は変化し、ログイン状態は失効することがあり、プラットフォームのリスク制御も自動化の安定性に影響します。人間の判断を置き換えるものではなく、補助的なフィルタリングツールとして使うべきです。&lt;/p&gt;
&lt;h2 id=&#34;解決する問題&#34;&gt;解決する問題
&lt;/h2&gt;&lt;p&gt;閒魚で中古商品を探すと、よく次の問題があります。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;商品数が多すぎて手で見るのが疲れる。&lt;/li&gt;
&lt;li&gt;タイトルや説明が不統一で、キーワードの取りこぼしや誤判定が起きやすい。&lt;/li&gt;
&lt;li&gt;良い価格の出品は短時間で消える。&lt;/li&gt;
&lt;li&gt;同じ商品でも地域、価格、状態、出品者が違う。&lt;/li&gt;
&lt;li&gt;安い商品にはアクセサリ、故障品、再生品、誘導的なタイトルが混ざる。&lt;/li&gt;
&lt;li&gt;複数キーワードを継続的に監視するのは手作業では続きにくい。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;普通のキーワード通知で解決できるのは一部だけです。たとえば「ThinkPad X1」を検索すると、アクセサリ、壊れた画面、空箱、分解部品が混ざることがあります。「ソニー A7C」では、レンズセット、レンタル情報、釣りタイトル、異常価格に出会うこともあります。&lt;/p&gt;
&lt;p&gt;ai-goofish-monitor の考え方は、まず自動化で候補商品を集め、それを AI に渡して条件に合うか再判断し、最後に注目すべき結果を通知する、というものです。&lt;/p&gt;
&lt;h2 id=&#34;主な機能&#34;&gt;主な機能
&lt;/h2&gt;&lt;p&gt;README に列挙されている機能はかなりそろっています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Web 可視化管理：タスク管理、アカウント管理、AI 基準編集、実行ログ、結果閲覧。&lt;/li&gt;
&lt;li&gt;AI 駆動：自然言語でタスクを作成し、マルチモーダルモデルで商品を分析。&lt;/li&gt;
&lt;li&gt;複数タスク並行：タスクごとにキーワード、価格、絞り込み条件、AI Prompt を個別設定。&lt;/li&gt;
&lt;li&gt;高度な絞り込み：送料無料、新規出品時間範囲、省 / 市 / 区の地域フィルタ。&lt;/li&gt;
&lt;li&gt;即時通知：ntfy.sh、企業微信、Bark、Telegram、Webhook など。&lt;/li&gt;
&lt;li&gt;定期実行：Cron による周期タスク。&lt;/li&gt;
&lt;li&gt;アカウントとプロキシのローテーション：複数アカウント、タスクへのアカウント紐付け、プロキシプール、失敗時リトライ。&lt;/li&gt;
&lt;li&gt;Docker デプロイ：コンテナ化された運用。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;これらを組み合わせることで、「監視タスク作成」から「命中通知」までの流れをカバーします。&lt;/p&gt;
&lt;h2 id=&#34;ワークフロー&#34;&gt;ワークフロー
&lt;/h2&gt;&lt;p&gt;典型的な流れは次のようなものです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;サービスをデプロイして Web UI を開く。&lt;/li&gt;
&lt;li&gt;閒魚アカウントのログイン状態をインポートする。&lt;/li&gt;
&lt;li&gt;監視タスクを作成する。&lt;/li&gt;
&lt;li&gt;キーワード、価格範囲、地域、新規出品範囲などを設定する。&lt;/li&gt;
&lt;li&gt;判定基準を書く、または AI に生成させる。&lt;/li&gt;
&lt;li&gt;タスクをリアルタイムまたは定期実行する。&lt;/li&gt;
&lt;li&gt;Playwright がページを開き、商品情報を取得する。&lt;/li&gt;
&lt;li&gt;AI がタイトル、説明、画像、Prompt をもとに条件適合を判断する。&lt;/li&gt;
&lt;li&gt;命中結果を SQLite に保存する。&lt;/li&gt;
&lt;li&gt;設定済みの通知チャネルで結果を送る。&lt;/li&gt;
&lt;li&gt;Web UI で結果、ログ、価格履歴を見る。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;この流れで AI の価値が最も大きいのは 8 番目です。「状態が良い、価格が妥当、アクセサリだけではない、修理品ではない、できれば同城で手渡し」などの自然言語条件を理解できるため、単純なキーワード規則より柔軟です。&lt;/p&gt;
&lt;h2 id=&#34;docker-デプロイ&#34;&gt;Docker デプロイ
&lt;/h2&gt;&lt;p&gt;プロジェクトは Docker デプロイを推奨しています。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;6
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/Usagi-org/ai-goofish-monitor &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; &lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ai-goofish-monitor
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp .env.example .env
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;vim .env
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker compose up -d
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker compose logs -f app
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker compose down
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;デフォルトの Web UI アドレス：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;http://127.0.0.1:8000
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;公式イメージ：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;ghcr.io/usagi-org/ai-goofish:latest
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;イメージ取得が遅い場合、README にはミラー例もあります。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker pull ghcr.nju.edu.cn/usagi-org/ai-goofish:latest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker tag ghcr.nju.edu.cn/usagi-org/ai-goofish:latest ghcr.io/usagi-org/ai-goofish:latest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;docker compose up -d
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Docker イメージには Chromium が含まれているため、ホスト側に別途ブラウザを入れる必要はありません。デフォルトの永続化ディレクトリは次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;data/&lt;/code&gt;：SQLite の主ストレージ。タスク、結果、価格履歴を保存。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;state/&lt;/code&gt;：ログイン状態の cookie ファイル。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;prompts/&lt;/code&gt;：タスク用プロンプト。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;logs/&lt;/code&gt;：実行ログ。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;images/&lt;/code&gt;：商品画像とタスク一時画像ディレクトリ。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;.env&lt;/code&gt; の &lt;code&gt;SERVER_PORT&lt;/code&gt; を変更した場合は、&lt;code&gt;docker-compose.yaml&lt;/code&gt; のポートマッピングも合わせて変更します。&lt;/p&gt;
&lt;h2 id=&#34;最小構成&#34;&gt;最小構成
&lt;/h2&gt;&lt;p&gt;最小構成は主に AI モデルと Web UI ログインに関するものです。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;4
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;5
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-env&#34; data-lang=&#34;env&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;OPENAI_API_KEY&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;your_api_key
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;OPENAI_BASE_URL&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;your_openai_compatible_base_url
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;OPENAI_MODEL_NAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;your_multimodal_model
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;WEB_USERNAME&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;admin
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;WEB_PASSWORD&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;change_me
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;最初の 3 つは AI モデル接続に必須です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;OPENAI_API_KEY&lt;/code&gt;：モデル API Key。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OPENAI_BASE_URL&lt;/code&gt;：OpenAI 互換 API エンドポイント。&lt;/li&gt;
&lt;li&gt;&lt;code&gt;OPENAI_MODEL_NAME&lt;/code&gt;：画像入力に対応するモデル名。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;&lt;code&gt;WEB_USERNAME&lt;/code&gt; と &lt;code&gt;WEB_PASSWORD&lt;/code&gt; は Web UI ログイン用です。README ではデフォルト認証情報が &lt;code&gt;admin/admin123&lt;/code&gt; とされていますが、本番環境では必ず変更してください。&lt;/p&gt;
&lt;h2 id=&#34;初回利用&#34;&gt;初回利用
&lt;/h2&gt;&lt;p&gt;初回利用の流れはおおよそ次の通りです。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;&lt;code&gt;http://127.0.0.1:8000&lt;/code&gt; を開く。&lt;/li&gt;
&lt;li&gt;Web UI にログインする。&lt;/li&gt;
&lt;li&gt;「閒魚アカウント管理」に入る。&lt;/li&gt;
&lt;li&gt;プロジェクト付属の Chrome 拡張で閒魚ログイン状態 JSON をエクスポートする。&lt;/li&gt;
&lt;li&gt;ログイン状態をシステムに貼り付ける。&lt;/li&gt;
&lt;li&gt;ログイン状態ファイルは &lt;code&gt;state/&lt;/code&gt; に保存される。例：&lt;code&gt;state/acc_1.json&lt;/code&gt;。&lt;/li&gt;
&lt;li&gt;「タスク管理」に戻り、タスクを作成してアカウントを紐付ける。&lt;/li&gt;
&lt;li&gt;タスクを実行し、結果を見る。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;ここで最も重要なのはログイン状態です。閒魚は第三者が自由に取得できる標準 API を公開しているわけではないため、プロジェクトはブラウザのログイン状態を使って通常のページアクセスを模擬します。ログイン状態の失効、リスク制御、captcha、アカウント異常はいずれもタスク実行に影響します。&lt;/p&gt;
&lt;h2 id=&#34;ai-タスクとキーワードタスク&#34;&gt;AI タスクとキーワードタスク
&lt;/h2&gt;&lt;p&gt;プロジェクトは 2 種類のタスク作成方式をサポートします。&lt;/p&gt;
&lt;p&gt;1 つ目は &lt;code&gt;AI判断&lt;/code&gt; です。&lt;/p&gt;
&lt;p&gt;「詳細な要件」を入力すると、システムが非同期に分析基準を生成します。複雑な条件に向いています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;本体のみ、アクセサリは不要。&lt;/li&gt;
&lt;li&gt;市場価格より明らかに安い場合だけ通知。&lt;/li&gt;
&lt;li&gt;状態が良く、説明に水没、修理、隠れた不具合がない。&lt;/li&gt;
&lt;li&gt;同城優先、手渡しできるとなお良い。&lt;/li&gt;
&lt;li&gt;画像にシリアル番号、箱、重要付属品が写っている。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;2 つ目は &lt;code&gt;关键词判断&lt;/code&gt; です。&lt;/p&gt;
&lt;p&gt;これは従来のルール型監視に近く、キーワード、価格、地域などの条件で直接タスクを作成します。AI 生成を使いません。ルールが単純で、多少の誤検知を許容できる場面に向いています。&lt;/p&gt;
&lt;p&gt;実際には併用できます。キーワードで初期フィルタし、AI で誤検知を減らす形です。&lt;/p&gt;
&lt;h2 id=&#34;web-ui-でできること&#34;&gt;Web UI でできること
&lt;/h2&gt;&lt;p&gt;Web UI は、このプロジェクトが普通のスクリプトと違う重要な部分です。&lt;/p&gt;
&lt;p&gt;タスク管理ページでは次を設定できます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;AI 作成タスク。&lt;/li&gt;
&lt;li&gt;キーワード規則。&lt;/li&gt;
&lt;li&gt;価格範囲。&lt;/li&gt;
&lt;li&gt;新規出品範囲。&lt;/li&gt;
&lt;li&gt;地域フィルタ。&lt;/li&gt;
&lt;li&gt;アカウント紐付け。&lt;/li&gt;
&lt;li&gt;定期実行ルール。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;アカウント管理ページでは次ができます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;閒魚アカウントログイン状態のインポート。&lt;/li&gt;
&lt;li&gt;ログイン状態の更新。&lt;/li&gt;
&lt;li&gt;アカウント削除。&lt;/li&gt;
&lt;li&gt;タスクへのアカウント指定。&lt;/li&gt;
&lt;li&gt;システムによる自動アカウント選択。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;結果とログページでは次ができます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;命中商品の確認。&lt;/li&gt;
&lt;li&gt;結果のエクスポート。&lt;/li&gt;
&lt;li&gt;履歴検索。&lt;/li&gt;
&lt;li&gt;タスク実行過程の確認。&lt;/li&gt;
&lt;li&gt;ログイン失効、リスク制御、AI 呼び出し問題の調査。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;システム設定ページでは次ができます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;システム状態の確認。&lt;/li&gt;
&lt;li&gt;Prompt の編集。&lt;/li&gt;
&lt;li&gt;プロキシとローテーション設定の調整。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;長期監視では Web UI が重要です。タスクが増えると、設定、ログ、結果、通知はすぐ管理しにくくなります。&lt;/p&gt;
&lt;h2 id=&#34;データ保存&#34;&gt;データ保存
&lt;/h2&gt;&lt;p&gt;現在のオンライン主ストレージは SQLite で、デフォルトパスは次です。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;data/app.sqlite3
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;Docker はデフォルトで SQLite の主 DB を次のようにマウントします。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./data:/app/data
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;アプリ起動時に DB とテーブルを自動作成し、古い &lt;code&gt;config.json&lt;/code&gt;、&lt;code&gt;jsonl/&lt;/code&gt;、&lt;code&gt;price_history/&lt;/code&gt; から一度だけ履歴データをインポートしようとします。&lt;/p&gt;
&lt;p&gt;注意点として、&lt;code&gt;state/&lt;/code&gt;、&lt;code&gt;prompts/&lt;/code&gt;、&lt;code&gt;logs/&lt;/code&gt;、&lt;code&gt;images/&lt;/code&gt; は引き続きファイルシステム上のディレクトリであり、SQLite 内には入りません。商品画像は次のようなディレクトリに一時保存されます。&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-text&#34; data-lang=&#34;text&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;images/task_images_&amp;lt;task_name&amp;gt;/
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;タスク終了後、デフォルトではクリーンアップされます。&lt;/p&gt;
&lt;p&gt;この構成は個人または小規模チームに向いています。SQLite は軽量で移行しやすく、ファイルディレクトリにログイン状態、画像、ログが残るため調査もしやすいです。&lt;/p&gt;
&lt;h2 id=&#34;通知チャネル&#34;&gt;通知チャネル
&lt;/h2&gt;&lt;p&gt;プロジェクトは複数の通知チャネルに対応します。よく使う設定は次の通りです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;code&gt;NTFY_TOPIC_URL&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;GOTIFY_URL&lt;/code&gt; / &lt;code&gt;GOTIFY_TOKEN&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;BARK_URL&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WX_BOT_URL&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;TELEGRAM_BOT_TOKEN&lt;/code&gt; / &lt;code&gt;TELEGRAM_CHAT_ID&lt;/code&gt; / &lt;code&gt;TELEGRAM_API_BASE_URL&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;&lt;code&gt;WEBHOOK_*&lt;/code&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;通知はこの種のツールの体験の中心です。監視システムが結果をバックエンドに書くだけなら、ユーザーは結局ページを何度も開く必要があります。プッシュ通知があれば、命中商品をすぐ受け取れます。&lt;/p&gt;
&lt;p&gt;実用的には商品価値で通知を分けるとよいです。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;普通のキーワード命中はバックエンドにだけ記録。&lt;/li&gt;
&lt;li&gt;AI 高信頼度の結果はスマホへ通知。&lt;/li&gt;
&lt;li&gt;高価値商品は企業微信または Telegram へ通知。&lt;/li&gt;
&lt;li&gt;デバッグ中はログを増やし、安定後にノイズを減らす。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;開発者向け実行&#34;&gt;開発者向け実行
&lt;/h2&gt;&lt;p&gt;Docker を使わないローカル開発には次が必要です。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Python 3.10+&lt;/li&gt;
&lt;li&gt;Node.js + npm&lt;/li&gt;
&lt;li&gt;Playwright CLI&lt;/li&gt;
&lt;li&gt;Chromium または Chrome / Edge ブラウザ&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;基本コマンド：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;git clone https://github.com/Usagi-org/ai-goofish-monitor
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; ai-goofish-monitor
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;cp .env.example .env
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;ワンコマンド起動：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;chmod +x start.sh
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;./start.sh
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;code&gt;start.sh&lt;/code&gt; は Playwright CLI とブラウザ条件を確認し、依存関係のインストール、フロントエンドビルド、成果物コピー、バックエンド起動を行います。&lt;/p&gt;
&lt;p&gt;バックエンドを手動起動：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;python -m src.app
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;または：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;uvicorn src.app:app --host 0.0.0.0 --port &lt;span class=&#34;m&#34;&gt;8000&lt;/span&gt; --reload
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;フロントエンド開発：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;3
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; web-ui
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm install
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;npm run dev
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;テストとビルド：&lt;/p&gt;
&lt;div class=&#34;highlight&#34;&gt;&lt;div class=&#34;chroma&#34;&gt;
&lt;table class=&#34;lntable&#34;&gt;&lt;tr&gt;&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code&gt;&lt;span class=&#34;lnt&#34;&gt;1
&lt;/span&gt;&lt;span class=&#34;lnt&#34;&gt;2
&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;
&lt;td class=&#34;lntd&#34;&gt;
&lt;pre tabindex=&#34;0&#34; class=&#34;chroma&#34;&gt;&lt;code class=&#34;language-bash&#34; data-lang=&#34;bash&#34;&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nv&#34;&gt;PYTEST_DISABLE_PLUGIN_AUTOLOAD&lt;/span&gt;&lt;span class=&#34;o&#34;&gt;=&lt;/span&gt;&lt;span class=&#34;m&#34;&gt;1&lt;/span&gt; pytest
&lt;/span&gt;&lt;/span&gt;&lt;span class=&#34;line&#34;&gt;&lt;span class=&#34;cl&#34;&gt;&lt;span class=&#34;nb&#34;&gt;cd&lt;/span&gt; web-ui &lt;span class=&#34;o&#34;&gt;&amp;amp;&amp;amp;&lt;/span&gt; npm run build
&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;h2 id=&#34;向いている人&#34;&gt;向いている人
&lt;/h2&gt;&lt;p&gt;ai-goofish-monitor は次のようなユーザーに向いています。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;閒魚で特定モデルをよく探す人。&lt;/li&gt;
&lt;li&gt;中古デジタル機器、カメラ機材、ゲーム機、ハードウェア部品を監視したい人。&lt;/li&gt;
&lt;li&gt;「キーワード検索 + 手動選別」を自動化したい人。&lt;/li&gt;
&lt;li&gt;OpenAI 互換モデル API を持ち、AI 判定コストを受け入れられる人。&lt;/li&gt;
&lt;li&gt;Docker または基本的なコマンドラインデプロイに慣れている人。&lt;/li&gt;
&lt;li&gt;命中結果をスマホ、企業微信、Telegram に通知したい人。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;あまり向いていないケース：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;デプロイを全く知らず、すぐ使える App だけが欲しい。&lt;/li&gt;
&lt;li&gt;ログイン状態、captcha、アカウントリスク制御を扱いたくない。&lt;/li&gt;
&lt;li&gt;公式認可された強いコンプライアンスのデータ API が必要。&lt;/li&gt;
&lt;li&gt;大規模かつ高頻度にプラットフォームデータを収集したい。&lt;/li&gt;
&lt;li&gt;AI に取引リスクを自動判断させ、注文まで代行してほしい。&lt;/li&gt;
&lt;/ul&gt;
&lt;h2 id=&#34;リスクと境界&#34;&gt;リスクと境界
&lt;/h2&gt;&lt;p&gt;この種のツールでは境界を意識する必要があります。&lt;/p&gt;
&lt;p&gt;第一に、プラットフォーム規則を守ることです。&lt;/p&gt;
&lt;p&gt;閒魚には独自の利用規約、リスク制御、アカウント安全機構があります。自動化アクセスは制限を引き起こす可能性があります。高頻度に取得したり、リスク制御を回避したり、出品者への迷惑行為、プライバシーの一括収集、プラットフォーム秩序の破壊に使ってはいけません。&lt;/p&gt;
&lt;p&gt;第二に、アカウントのログイン状態を保護することです。&lt;/p&gt;
&lt;p&gt;&lt;code&gt;state/&lt;/code&gt; に保存されるのはログイン状態 cookie ファイルです。これは実質的にアカウントアクセス資格情報です。Git リポジトリにコミットせず、信頼できないサーバーにも置かないでください。サーバーをインターネットに公開する場合、Web UI のデフォルトパスワードは必ず変更し、VPN、リバースプロキシ認証、または内部ネットワークの背後に置くべきです。&lt;/p&gt;
&lt;p&gt;第三に、AI 判定は事実保証ではありません。&lt;/p&gt;
&lt;p&gt;AI は誤検知を減らせますが、商品の真偽、出品者の信頼性、価格の妥当性、取引安全性を保証しません。最終的には商品詳細、出品者評価、チャット履歴、配送方法、支払いプロセスを人間が確認する必要があります。&lt;/p&gt;
&lt;p&gt;第四に、コストに注意してください。&lt;/p&gt;
&lt;p&gt;すべての候補商品をマルチモーダルモデルで分析すると、呼び出しコストはすぐ増えます。まずキーワード、価格、地域で強く絞り込み、少数の候補だけを AI に渡すのがよいです。&lt;/p&gt;
&lt;p&gt;第五に、プライバシーに注意してください。&lt;/p&gt;
&lt;p&gt;商品スクリーンショット、チャット関連内容、アカウント状態、通知内容には機密情報が含まれる可能性があります。通知 Webhook、ログディレクトリ、データベースは適切に保護してください。&lt;/p&gt;
&lt;h2 id=&#34;普通のスクリプトとの違い&#34;&gt;普通のスクリプトとの違い
&lt;/h2&gt;&lt;p&gt;普通の閒魚監視スクリプトは、通常 3 つのことだけをします。&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;キーワードを検索する。&lt;/li&gt;
&lt;li&gt;価格を判定する。&lt;/li&gt;
&lt;li&gt;通知を送る。&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;ai-goofish-monitor はさらに進んでいます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Web UI でタスクとアカウントを管理する。&lt;/li&gt;
&lt;li&gt;AI Prompt で複雑な購入基準を表現する。&lt;/li&gt;
&lt;li&gt;マルチモーダルモデルで商品画像と説明を見る。&lt;/li&gt;
&lt;li&gt;SQLite に結果と価格履歴を保存する。&lt;/li&gt;
&lt;li&gt;ログページでタスク失敗原因を調査する。&lt;/li&gt;
&lt;li&gt;プロキシローテーションと複数アカウントで安定性を高める。&lt;/li&gt;
&lt;li&gt;定期タスクで長期運用を支える。&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;機能が多いぶん、デプロイと運用コストも高くなります。一般ユーザーには Docker デプロイが最も簡単です。開発者にとっては、Web UI、FastAPI、Playwright、SQLite の構成が二次開発しやすい形です。&lt;/p&gt;
&lt;h2 id=&#34;使い方の例&#34;&gt;使い方の例
&lt;/h2&gt;&lt;p&gt;実用的には、小さなタスクから始めるのがよいです。&lt;/p&gt;
&lt;p&gt;たとえば中古カメラを探すなら、次のようなタスクを作れます。&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;キーワード：&lt;code&gt;A7C&lt;/code&gt;、&lt;code&gt;索尼 A7C&lt;/code&gt;&lt;/li&gt;
&lt;li&gt;価格範囲：市場価格に基づいて上限を設定&lt;/li&gt;
&lt;li&gt;地域：同じ省または同じ市を優先&lt;/li&gt;
&lt;li&gt;新規出品範囲：直近 1 日または数時間&lt;/li&gt;
&lt;li&gt;AI 基準：レンズ単体を除外、修理品を除外、明らかなアクセサリを除外、シャッター数と状態に注目&lt;/li&gt;
&lt;li&gt;通知：AI 判定を通過した結果だけ通知&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;安定して動くようになってから、タスク数を少しずつ増やします。最初から数十キーワード、複数アカウント、高頻度 Cron にしないでください。ログイン状態の安定性、誤検知率、AI コスト、通知ノイズを見てから調整するのが安全です。&lt;/p&gt;
&lt;h2 id=&#34;まとめ&#34;&gt;まとめ
&lt;/h2&gt;&lt;p&gt;ai-goofish-monitor は、閒魚監視を「キーワードスクリプト」から「管理可能な AI 監視システム」へ進めるプロジェクトです。Playwright でページ操作を自動化し、AI で複雑な判断を行い、Web UI でタスクと結果を管理し、SQLite にデータを保存し、複数通知チャネルで結果を届けます。&lt;/p&gt;
&lt;p&gt;特定商品を監視したい個人や小規模チームに向いています。特に中古デジタル機器、ハードウェア、カメラ機材のように、価格変動が大きく、出品タイミングが重要で、説明ノイズが多いカテゴリに適しています。&lt;/p&gt;
&lt;p&gt;ただし慎重に使う必要があります。ログイン状態を保護し、デフォルトパスワードを変更し、取得頻度を抑え、AI 結果を人間が確認し、プラットフォーム規則とプライバシー境界を守ることが重要です。補助的なフィルタリングツールとしては価値がありますが、完全自動取引システムとして見ると能力を過大評価しやすいです。&lt;/p&gt;
&lt;p&gt;参考リンク：&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Usagi-org/ai-goofish-monitor&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;Usagi-org/ai-goofish-monitor&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Usagi-org/ai-goofish-monitor/blob/master/README_EN.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;プロジェクト英語 README&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a class=&#34;link&#34; href=&#34;https://github.com/Usagi-org/ai-goofish-monitor/blob/master/DISCLAIMER.md&#34;  target=&#34;_blank&#34; rel=&#34;noopener&#34;
    &gt;プロジェクト免責事項&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
</description>
        </item>
        
    </channel>
</rss>
