会話の中で得られたリサーチ・調査・議論の内容をSupabaseのresearch_itemsテーブルに 構造化して保存するスキル。メインエージェントはリクエスト受け付けのみ行い、 会話内容の分析・構造化・INSERT実行はresearch-save-analyzerサブエージェントに委譲する。 「リサーチを保存」「調査結果を保存」「リサーチデータを保存して」「save research」 「この調査を記録して」「研究メモを保存」「今の議論を保存」「調べた内容を保存」 「リサーチ保存」「調査をDBに保存」「この分析を保存して」 「調査内容を記録」「リサーチ内容を蓄積して」などのフレーズで発動する。 ※「Supabaseに保存」「長期メモリに保存」はmemory-saveスキルの領域。 ※「アンケート結果を保存」「フォーム回答を保存」はenquete-saveスキルの領域。 ※検索・参照は research-read スキルを使う。 本スキルは「会話内での調査・議論・リサーチ内容の保存」に特化する。
From work-utilsnpx claudepluginhub iketomo/cowork_x_plugin --plugin work-utilsThis skill uses the workspace's default tool permissions.
Guides Next.js Cache Components and Partial Prerendering (PPR) with cacheComponents enabled. Implements 'use cache', cacheLife(), cacheTag(), revalidateTag(), static/dynamic optimization, and cache debugging.
Migrates code, prompts, and API calls from Claude Sonnet 4.0/4.5 or Opus 4.1 to Opus 4.5, updating model strings on Anthropic, AWS, GCP, Azure platforms.
Optimizes cloud costs on AWS, Azure, GCP via rightsizing, tagging strategies, reserved instances, spot usage, and spending analysis. Use for expense reduction and governance.
会話の中で得られたリサーチ・調査データをSupabaseのresearch_itemsテーブルに構造化して保存する。
重い処理(会話分析・構造化・INSERT)は research-save-analyzer サブエージェントに委譲し、
メインエージェントのコンテキストを節約する。
iltymrnkqchixvtpvewm)public.research_items| スキル | 対象データ | 保存方式 |
|---|---|---|
| research-save(本スキル) | 会話・議論・調査の内容 | title/summary/facts/insightsに分解して保存。素早く保存(確認不要) |
| memory-save | 重要な設計決定・長期的な知見 | memoriesテーブル。カテゴリ・重要度付きで保存 |
| enquete-save | アンケート・インタビューの生データ | enquete_summaryテーブル。1示唆=1レコード。必ずユーザー確認あり |
ユーザーが「リサーチを保存して」と言ったとき、直前の会話からリサーチ・調査・議論された内容を特定する。
Taskツールで research-save-analyzer サブエージェントを起動し、以下のデータを渡す:
【保存対象の会話内容】
{ユーザーとの会話から特定したリサーチ・調査の内容をそのまま貼り付ける}
【Supabase接続情報】
- project_id: iltymrnkqchixvtpvewm
- テーブル: public.research_items
サブエージェントに以下の処理を委譲する:
サブエージェントの完了報告を受け取り、ユーザーに伝える。 サブエージェントが直接報告する設計のため、メインエージェントは中継のみ行う。
| フィールド | 必須 | 内容 |
|---|---|---|
title | YES | リサーチのタイトル(簡潔に、30文字以内目安) |
summary | YES | 要約(2〜5文で核心をまとめる) |
facts | NO | 客観的な事実・データ・数値。箇条書きテキスト |
insights | NO | 主観的な洞察・考察・示唆。箇条書きテキスト |
raw_content | YES | 元の議論テキスト全体(トピック単位の原文) |
source_tool | NO | 情報源ツール。言及があればそれを使う。なければ claude |
content_hash | YES | md5(raw_content) で生成。重複防止に使用 |
source_toolの許容値: chatgpt, claude, gemini, perplexity, grok, manus, genspark, skywork, other
INSERT INTO public.research_items (title, summary, facts, insights, raw_content, source_tool, content_hash)
VALUES (
'(タイトル)',
'(要約)',
'(事実・データ。なければNULL)',
'(洞察。なければNULL)',
'(元テキスト)',
'(ソースツール)',
md5('(元テキストと同じ値)')
)
ON CONFLICT (content_hash) WHERE content_hash IS NOT NULL
DO NOTHING
RETURNING id, title;
SQLインジェクション防止: テキスト中のシングルクォートは ''(2つ重ねる)にエスケープすること。
複数トピックがある場合は、1トピック1 INSERTで複数回実行する。
リサーチをN件保存しました:
1. 「{title}」(id: xxx...)
2. 「{title}」(id: xxx...)
(重複スキップがあった場合)
スキップ: 「既存タイトル」(同一内容が登録済み)
captured_atはデフォルト(now())で良い。ユーザーが「昨日の調査」など時期を指定した場合のみ設定するexecute_sql ツールを使用する(project_id: iltymrnkqchixvtpvewm)research-read スキルを使う