ipfs/kubo · error

%s not installed

Error message

%s not installed

What it means

An 'external' ipfs subcommand (e.g. ipfs-companion-installed tools like ipfs-bitswap-monitor) was invoked, but exec.LookPath could not find the corresponding ipfs-<subcommand> binary on PATH. %s is the missing binary name; kubo only ships the dispatcher, the tool itself must be installed separately.

Source

Thrown at core/commands/external.go:36

		},
		External: true,
		NoRemote: true,
		Run: func(req *cmds.Request, res cmds.ResponseEmitter, env cmds.Environment) error {
			binname := strings.Join(append([]string{"ipfs"}, req.Path...), "-")
			_, err := exec.LookPath(binname)
			if err != nil {
				// special case for '--help' on uninstalled binaries.
				for _, arg := range req.Arguments {
					if arg == "--help" || arg == "-h" {
						buf := new(bytes.Buffer)
						fmt.Fprintf(buf, "%s is an 'external' command.\n", binname)
						fmt.Fprintf(buf, "It does not currently appear to be installed.\n")
						fmt.Fprintf(buf, "%s\n", instructions)
						return res.Emit(buf)
					}
				}

				return fmt.Errorf("%s not installed", binname)
			}

			r, w := io.Pipe()

			cmd := exec.Command(binname, req.Arguments...)

			// TODO: make commands lib be able to pass stdin through daemon
			// cmd.Stdin = req.Stdin()
			cmd.Stdin = io.LimitReader(nil, 0)
			cmd.Stdout = w
			cmd.Stderr = w

			// setup env of child program
			osenv := os.Environ()

			cmd.Env = osenv

			err = cmd.Start()

View on GitHub (pinned to 329838acdf)

Solutions

  1. Install the external tool so that ipfs-<name> is on PATH
  2. Check PATH includes the install location (e.g. GOBIN)
  3. Run 'ipfs <name> --help' to see the install instructions embedded in the error output
Defensive patterns

Strategy: fallback

When it happens

Trigger: Thrown at core/commands/external.go:36 when the library encounters an invalid state.

Common situations: See trigger scenarios.


AI-assisted analysis of ipfs/kubo@329838acdf (2026-09-03). Data as JSON: /api/errors/bfa3e00483ea38fa. Report an issue: GitHub.