tinyfish-io/tinyfish-cookbook

project-idea-validator

Researches any project idea against live data from GitHub and Dev.to to surface what already exists, how mature the space is, and where the real opportunity lives.

ソースを見る

使い方

  1. インストールコマンドをコピーし、自分の環境へ導入する前にソースを確認します。
  2. 必要なツール、認証情報、対応環境を原文で確認します。
  3. 入力と成果物を指定し、出力を資料と照合します。
npx skills add https://github.com/tinyfish-io/tinyfish-cookbook --skill project-idea-validator

開始前の確認

  • 導入にはモデル契約、API枠、ファイルへのアクセス許可は含まれません。
  • スター数や導入数は活動の指標であり、独立した品質・安全性試験ではありません。
リポジトリの原文

見出し、例、コード、表、リンク、参照画像を含む原文を表示しています。

Project Idea Validator — Discover What Already Exists Before You Build

You have access to the TinyFish CLI (tinyfish), a tool that runs browser automations from the terminal using natural language goals. This skill uses it to search GitHub and Dev.to in parallel, then synthesizes results into a gap analysis report.

Pre-flight Check (REQUIRED)

Before making any TinyFish call, always run BOTH checks:

1. CLI installed?

PowerShell:

powershell
Get-Command tinyfish; tinyfish --version

bash/zsh:

bash
which tinyfish && tinyfish --version || echo "TINYFISH_CLI_NOT_INSTALLED"

If not installed, stop and tell the user:

Install the TinyFish CLI: npm install -g @tiny-fish/cli

2. Authenticated?

powershell
tinyfish auth status

If not authenticated, stop and tell the user:

You need a TinyFish API key. Get one at: https://agent.tinyfish.ai/api-keys Then authenticate: Option 1 — CLI login (interactive): `` tinyfish auth login **Option 2 — PowerShell (current session only):** powershell $env:TINYFISH_API_KEY="your_api_key_here" **Option 3 — PowerShell (persist across sessions):** powershell [System.Environment]::SetEnvironmentVariable("TINYFISH_API_KEY", "your_api_key_here", "User") Then close and reopen PowerShell for it to take effect. **Option 4 — bash/zsh (Mac/Linux):** bash export TINYFISH_API_KEY="your_api_key_here" **Option 5 — Claude Code settings:** Add to ~/.claude/settings.local.json: json { "env": { "TINYFISH_API_KEY": "your_api_key_here" } }

Do NOT proceed until both checks pass.


What This Skill Does

Given a project idea (e.g. "a CLI tool that converts Figma designs to Tailwind components"), this skill:

  1. Searches GitHub for existing repos with similar purpose, tech stack, or keywords
  2. Searches Dev.to for articles, tutorials, or project showcases covering the same problem

It then synthesizes findings into a structured gap analysis: what exists, how mature it is, and where the opportunity still lives.


Core Command

bash
tinyfish agent run --url <url> "<goal>"

Flags

FlagPurpose
--url <url>Target website URL
--syncWait for full result (no streaming)
--asyncSubmit and return immediately
--prettyHuman-readable formatted output

Step-by-Step Workflow

Step 1 — Search GitHub

Search for existing repositories matching the idea. Run with --sync since you need the full list before synthesizing.

bash
tinyfish agent run --sync --url "https://github.com/search?q=<keywords>&type=repositories&s=stars&o=desc" \
  "Extract the top 10 search results as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]"

Example for a Figma-to-Tailwind CLI idea:

bash
tinyfish agent run --sync \
  --url "https://github.com/search?q=figma+tailwind+cli&type=repositories&s=stars&o=desc" \
  "Extract the top 10 repositories as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]"

Step 2 — Search Dev.to

Search for articles and project posts covering the same problem space. Run in parallel with Step 1 results processing.

bash
tinyfish agent run --sync --url "https://dev.to/search?q=<keywords>" \
  "Extract the top 10 articles as JSON: [{\"title\": str, \"author\": str, \"tags\": [str], \"published_at\": str, \"url\": str, \"reactions\": str}]"

Example:

bash
tinyfish agent run --sync \
  --url "https://dev.to/search?q=figma+tailwind+component+generator" \
  "Extract the top 10 articles as JSON: [{\"title\": str, \"author\": str, \"tags\": [str], \"published_at\": str, \"url\": str, \"reactions\": str}]"

Parallel Execution

Steps 1 and 2 are independent — run them at the same time. Do NOT wait for GitHub before starting Dev.to.

Good — Parallel calls:

bash
# Fire both simultaneously
tinyfish agent run --sync --url "https://github.com/search?q=<keywords>&type=repositories&s=stars&o=desc" \
  "Extract top 10 repositories as JSON: [{\"name\": str, \"owner\": str, \"description\": str, \"stars\": str, \"url\": str, \"last_updated\": str}]" &

tinyfish agent run --sync --url "https://dev.to/search?q=<keywords>" \
  "Extract top 10 articles as JSON: [{\"title\": str, \"author\": str, \"url\": str, \"reactions\": str}]" &

wait

Bad — Sequential calls:

bash
# Don't do this — wastes time and gives the same results
tinyfish agent run --url "https://github.com/..." "...also search Dev.to..."

Each source is its own call. Always.


Step 3 — Synthesize Into a Gap Analysis

Once both sources return results, synthesize findings into this structure:

## Project Idea Validation: <idea title>

### What Already Exists
- <project/article> — <what it does, stars/reactions, last active>
- ...

### Maturity Assessment
- GitHub: <active / abandoned / fragmented>
- Dev.to coverage: <heavy / moderate / sparse>

### Gaps & Opportunities
- <specific gap #1>
- <specific gap #2>
- ...

### Verdict
<1–2 sentences: is the space crowded, open, or ripe for a better take?>

Use the raw JSON from both sources as input. Do not hallucinate repo names, star counts, or article titles — only use what TinyFish returned.


Keyword Strategy

The quality of results depends heavily on your search terms. Before running, derive 2–3 keyword variants from the idea:

IdeaPrimary keywordsVariant keywords
Figma-to-Tailwind CLIfigma tailwind clifigma css export, design token tailwind
AI code review botai code review githubllm pull request, automated code feedback
Markdown-to-Notion syncmarkdown notion syncnotion import cli, notion api markdown

Run separate parallel calls for each variant if the first pass returns sparse results.


Managing Runs

bash
# List recent runs
tinyfish agent run list

# Get a specific run by ID
tinyfish agent run get <run_id>

# Cancel a running automation
tinyfish agent run cancel <run_id>

Output

The CLI streams data: {...} SSE lines by default. The final result is the event where type == "COMPLETE" and status == "COMPLETED" — the extracted data is in the resultJson field. Read the raw output directly; no script-side parsing is needed.

タスクに関連する項目

同じリポジトリから

関連する Skills

すべての Skills
tinyfish-io
コミュニティ

use-tinyfish

Use TinyFish for web search, fetching URLs, reading pages, current information, source-backed answers, research, docs, pricing/product pages, extraction, scraping, and browser automation. Use whenever the user asks to search, find, look up, research, compare, get information from the web, summarize a URL, fetch page content, or automate a website.

導入数
2
GitHub Stars
2212
更新日
10月1日
tinyfish-io
コミュニティ

dev-pain-finder

Scrape real developer pain points for any keyword, technology, or problem space from Reddit, Hacker News, dev.to, and GitHub Discussions simultaneously — then group complaints by theme, score them by frequency and upvote weight, and return a ranked opportunity map showing where developer frustration is high and solutions are thin. Use this skill whenever someone wants to find developer pain points, validate a product idea, research what developers are frustrated with, asks "what do developers co

導入数
1
GitHub Stars
2192
更新日
8月31日
tinyfish-io
コミュニティ

enrich-excel

Enrich a live Excel spreadsheet by researching missing data with TinyFish and writing results directly into the running Excel app via AppleScript. Use when a user says "fill in my spreadsheet", "enrich this Excel file", "research and fill missing data", "update my Excel sheet", "look up data for each row", or any request to populate empty cells in an open Excel workbook with web-sourced data. macOS only.

導入数
1
GitHub Stars
2192
更新日
8月31日
tinyfish-io
コミュニティ

freelance-gig-finder

Find fresh freelance and contract opportunities across multiple platforms for any skill set. Use this skill when a user asks "find me freelance React jobs", "Upwork gigs for Python developers", "freelance work posted this week", "contract jobs for designers", "find me remote freelance opportunities for [skill]", "I'm looking for freelance work", "what freelance gigs are available for [skill]", or any request to find paid freelance or contract work online.

導入数
1
GitHub Stars
2192
更新日
8月31日