Skip to content

Welcome to forkctl

Forking a GitHub repo is one click. Adopting it — picking fork vs template, dealing with org policy, waiting for async creation, wiring upstream sync, making the result actually runnable — is everything else. Forkctl owns the everything-else.

forkctl is an MCP server and a CLI. The same twenty-two tools are exposed through both surfaces, sharing one schema-validated, audit-logged dispatch boundary.

  • You want to contribute back to an open-source project but skip the manual steps of forking, syncing, and configuring upstream.
  • You want to derive a new product from a template and not be left with stale references in the result.
  • You want to adopt a repo into your org with policy preflight, drift scanning, and a structured handoff.
  • You want to maintain a fleet of forks without writing a custom GitHub bot.
  • You’re a maintainer who wants to make your repo more adoptable for everyone else.
LayerWhat it owns
AssessmentScore adoption-readiness, pick fork vs template, fix source-side blockers
ExecutionAsync fork or template generation with operation tracking
BootstrapProfile-driven aftercare so the new repo is actually runnable
SyncHonest divergence diagnosis + PR-based fallback when fast-forward is impossible
FleetList, health-check, batch-sync many forks at once
ReceiptsAppend-only SQLite audit log + machine-readable operation receipts
Rename (new in v1.1.0)AST-aware polyglot rename — identity, symbols, textual surfaces, lockfiles. See Rename.
Terminal window
# As a CLI
npx @mcptoolshop/forkctl assess octocat/hello-world
npx @mcptoolshop/forkctl sync myhandle/my-fork
// As an MCP server (Claude Code, Cursor, any MCP client)
{
"mcpServers": {
"forkctl": {
"command": "npx",
"args": ["-y", "@mcptoolshop/forkctl", "mcp"],
"env": { "GITHUB_TOKEN": "ghp_..." }
}
}
}
  • New here? Start with Getting Started.
  • Want the day-to-day patterns? Usage.
  • Want every knob? Configuration.
  • Want to look up a specific tool? Reference.
  • Want to know how it’s wired internally? Architecture.
  • Renaming a repo you just adopted? Rename — new in v1.1.0.
  • Worried about secrets and force-pushes? Security explicitly states what forkctl will and won’t do.