← Back to Skills Marketplace
gdwhisper

Fork-It

by GDWhisper · GitHub ↗ · v2.0.2 · MIT-0
cross-platform ⚠ suspicious
101
Downloads
0
Stars
0
Active Installs
3
Versions
Install in OpenClaw
/install fork-it
Description
When the user has a new development idea, search GitHub first for open-source projects to fork as a starting point. Fork it, then inject your own ideas.
README (SKILL.md)

Fork-It 🐙

Every great project starts somewhere. Why start from zero when you can start from 80%? Search GitHub, find your starting point, fork it, and make it your own.

Core Principles

When the user has a new project idea, help them find a running start.

When the user expresses any of these intents, search GitHub first:

  • User says "I want to build..." or "I want to create/develop a..."
  • User describes a complete functional requirement that would need multiple components
  • User asks "how to" build a complete project

If any of the above applies, trigger Fork-It:

Prompt Template:

"Before we dive in — let me find you a running start on GitHub. Someone may have already built something close that you can fork and make your own."

Do NOT trigger when:

  • User explicitly says "for learning/practice/teaching purposes"
  • User is asking about a specific function's implementation
  • User is debugging/fixing existing code
  • User is asking about regex, specific algorithm logic, or granular questions
  • User's "write" is modifying existing code, not starting fresh
  • User has already picked a specific open-source project as their foundation

Workflow

1. Identify Intent

When the user expresses any of these intents, trigger a search:

  • "I want to build/make a..."
  • "I want to create/develop a..."
  • "Has anyone built something like..."
  • "Help me write a..."
  • Direct invocation: /fork-it

2. Search GitHub

Search first, code second.

node scripts/github-search.mjs "keyword"
node scripts/github-search.mjs "pomodoro timer" --language javascript --min-stars 500

Search repositories by keyword, prioritize actively maintained projects with healthy communities.

3. Analyze Results

Evaluate each project for fork-worthiness:

Tag Path Description
🎯 Great Match Fork & Customize Fork it, tweak it, ship it as your own
🔧 Partial Match Fork & Extend Solid core — fork it and add your missing piece
📝 Reference Only Learn, Then Build Study the approach, build your own vision
✨ Nothing Fits Build Fresh You're onto something new — go create it

4. Recommend Path

  • Great match found → Share the repo, suggest forking and customizing
  • Partial match found → Point out what the project covers and what you'd add
  • No suitable project → Acknowledge this is genuinely new territory — build it

When to Suggest Forking

These signals mean the user's idea is a great candidate for finding a fork-worthy starting point:

"From scratch / Hand-write" Series (Great fork candidates)

  • "Help me write a... from scratch"
  • "No third-party libraries, hand-write a..."
  • "I don't want external dependencies, implement my own..."
  • "No frameworks, vanilla..."

"Project / Module / System" Series (Likely has existing foundations)

  • "Help me create a project that..."
  • "Write a complete module for..."
  • "Design a system that can..."
  • "Help me build a backend/website/mini-program..."

"I want to / I'm going to" Series (Ideation stage — best time to search)

  • "I have an idea, I want to build a..."
  • "I'm going to develop a..."
  • "How can I make a..."

High-Frequency Areas (Great Fork Candidates)

Trigger when user's request combines "code-writing action" + one of these areas:

  • Auth & Permissions: "write a" + login/register/auth/JWT/permission management/OAuth
  • Data Parsing: "write a" + crawler/parser/export Excel/read PDF/parse XML
  • Infrastructure: "write a" + chat room/WebSocket/cron job/queue/logging system
  • Common Business: "write a" + shopping cart/payment API/pagination/rich text editor/file upload
  • Algorithm Utils: "write a" + calendar widget/countdown/encryption/image compression

Example: "Help me write a JWT auth middleware with token refresh" → matches 【action: write】+【area: JWT auth】 → TRIGGER!

When to Stay Quiet

Don't interrupt when the user is learning, fixing bugs, or doing genuinely novel work:

  • Learning-oriented: "Show me how to write... to understand the principle", "For teaching purposes, hand-write a..."
  • Highly specific/custom: "Write a regex matching ^a[b-c]{2}d$" (no open-source project covers this)
  • Modifying existing code: "Help me see why this code errors", "Optimize this function"
  • Low-level innovation: "I want to design a new data structure", "Write a faster sorting algorithm"
  • Local file search: "Help me find if there's any... on my computer"

Script Return Values

Scripts return a unified JSON structure with a lang field:

{
  "lang": "en",
  "status": "ok",
  "query": "pomodoro timer",
  "total_count": 1234,
  "returned_count": 10,
  "items": [
    {
      "rank": 1,
      "full_name": "user/repo",
      "description": "A pomodoro timer app",
      "url": "https://github.com/user/repo",
      "stars": 12300,
      "forks": 1200,
      "language": "TypeScript",
      "pushed_days_ago": 3,
      "created_at": "2024-01-01",
      "topics": ["productivity", "timer"],
      "license": "MIT"
    }
  ]
}

AI display rules:

  • lang: "en" → AI translates to user's language before displaying
  • pushed_days_ago → AI converts to "3 days ago" or localized format
  • stars: 12300 → AI formats as "12.3k"
  • On status: "error" → AI generates a friendly error message from code and message

Options

Option Description Default
query Search keyword Required
--language, -l Programming language filter None
--min-stars Minimum stars 100
--max-stars Maximum stars No limit
--updated-within Updated within N days 365
--created-after Created after date None
--sort Sort by stars
--order Sort order desc
--limit, -n Result limit 10

Get Repository Details

node scripts/repo-detail.mjs "microsoft/autogen"

API Limits

  • Unauthenticated Requests: 60/hour
  • Authenticated Requests: 5000/hour
export GITHUB_TOKEN="ghp_your_token_here"

Data Sources

  • GitHub Search API v3
  • GitHub REST API

Find it. Fork it. Make it yours. | ForkIt v2.0

Usage Guidance
Review this skill before installing. Its GitHub-search purpose is understandable, but the current implementation should be fixed to avoid shell command construction and to clearly disclose any GitHub token use and scope.
Capability Analysis
Type: OpenClaw Skill Name: fork-it Version: 2.0.2 The skill 'fork-it' contains significant shell injection vulnerabilities in its core scripts. Both scripts/github-search.mjs and scripts/repo-detail.mjs use child_process.execSync to execute curl commands, incorporating command-line arguments (like repository names or search parameters) directly into the shell string without sufficient sanitization or escaping. While the tool's logic is aligned with its stated purpose of searching GitHub, the insecure implementation allows for potential arbitrary command execution if the agent is manipulated into passing malicious strings as arguments.
Capability Tags
cryptocan-make-purchasesrequires-oauth-tokenrequires-sensitive-credentials
Capability Assessment
Purpose & Capability
The stated purpose of searching GitHub for reusable projects matches the included GitHub API helper scripts, though the skill does not appear to actually perform a GitHub fork operation.
Instruction Scope
The skill broadly tells the agent to search GitHub before coding for many new-project requests, including some 'from scratch' wording; this is disclosed but can redirect normal coding help.
Install Mechanism
The registry says there is no install spec and no required binaries, but the skill includes runnable Node scripts that call curl. This is disclosed in SKILL.md examples but under-declared in metadata.
Credentials
The scripts execute shell commands via execSync and include user-controllable values in those shell commands, creating local command-execution risk beyond what a GitHub search helper needs.
Persistence & Privilege
There is no persistence, but the scripts automatically use GITHUB_TOKEN from the environment despite no credential declaration or scope guidance.
How to Use
  1. Make sure OpenClaw is installed (local or Docker)
  2. Run the install command in chat: /install fork-it
  3. After installation, invoke the skill by name or use /fork-it
  4. Provide required inputs per the skill's parameter spec and get structured output
Version History
v2.0.2
Fix: set display name to Fork-It
v2.0.1
Fix: include scripts directory (github-search.mjs, repo-detail.mjs)
v2.0.0
Fork-It v2.0.0 is a major overhaul focused on guiding users to fork relevant open-source projects as a starting point for new development ideas. - Introduces detailed, intent-based triggers to search GitHub before starting from scratch. - Sets clear criteria for when to recommend forking and when to avoid interfering (e.g., learning, bug fixes). - Adds a structured workflow: intent detection, search, project analysis, and tailored recommendations. - Lists actionable options and search parameters for filtering repositories. - Explains expected script outputs and formatting for user-friendly display. - Emphasizes starting from existing open source to accelerate project development.
Metadata
Slug fork-it
Version 2.0.2
License MIT-0
All-time Installs 0
Active Installs 0
Total Versions 3
Frequently Asked Questions

What is Fork-It?

When the user has a new development idea, search GitHub first for open-source projects to fork as a starting point. Fork it, then inject your own ideas. It is an AI Agent Skill for Claude Code / OpenClaw, with 101 downloads so far.

How do I install Fork-It?

Run "/install fork-it" in the OpenClaw or Claude Code chat to install it in one step — no extra setup required.

Is Fork-It free?

Yes, Fork-It is completely free, licensed under MIT-0. You can download, install and use it at no cost.

Which platforms does Fork-It support?

Fork-It is cross-platform and runs anywhere OpenClaw / Claude Code is available (cross-platform).

Who created Fork-It?

It is built and maintained by GDWhisper (@gdwhisper); the current version is v2.0.2.

💬 Comments