paperclipai/paperclip · error

Failed to fetch from remote

Error message

Failed to fetch from remote "${remote}": ${extractExecSyncErrorMessage(error) ?? String(error)}

What it means

Remote-synchronization failure in worktree:make: `git fetch <remote>` for the requested start point exited non-zero (network error, auth failure, or missing remote); git's own error detail is embedded in the message.

Solutions

  1. Check remote "${remote}" configuration with `git remote -v` and network access, then retry.
  2. Run `git fetch ${remote}` manually to see the full error.
Defensive patterns

Strategy: retry

When it happens

Trigger: Thrown at cli/src/commands/worktree.ts:1835 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of paperclipai/paperclip@01ad858492 (2026-08-18). Data as JSON: /api/errors/0ea86d16414def36. Report an issue: GitHub.

Appendix: source

Thrown at cli/src/commands/worktree.ts:2650

  const name = resolveWorktreeMakeName(nameArg);
  const startPoint = resolveWorktreeStartPoint(opts.startPoint);
  const sourceCwd = process.cwd();
  const sourceConfigPath = resolveSourceConfigPath(opts);
  const targetPath = resolveWorktreeMakeTargetPath(name);
  if (existsSync(targetPath)) {
    throw new Error(`Target path already exists: ${targetPath}`);
  }

  mkdirSync(path.dirname(targetPath), { recursive: true });
  if (startPoint) {
    const [remote] = startPoint.split("/", 1);
    try {
      execFileSync("git", ["fetch", remote], {
        cwd: sourceCwd,
        stdio: ["ignore", "pipe", "pipe"],
      });
    } catch (error) {
      throw new Error(
        `Failed to fetch from remote "${remote}": ${extractExecSyncErrorMessage(error) ?? String(error)}`,
      );
    }
  }

  const worktreeArgs = resolveGitWorktreeAddArgs({
    branchName: name,
    targetPath,
    branchExists: !startPoint && localBranchExists(sourceCwd, name),
    startPoint,
  });

  const spinner = p.spinner();
  spinner.start(`Creating git worktree at ${targetPath}...`);
  try {
    execFileSync("git", worktreeArgs, {
      cwd: sourceCwd,
      stdio: ["ignore", "pipe", "pipe"],

View on GitHub (pinned to 01ad858492)