Skip to content

Guide · Open source

How to use code (flow CLI): install, run tasks and upgrade

Updated · written with AI from the project's own documentation and checked against our catalogue data

This guide explains how to install and use nikivdev/code, a command-line tool called flow that is run with the short command f. It is written for developers on macOS or Linux who are comfortable in a terminal. By the end you will be able to install flow, check that it works, run the common setup, test and deploy loop, list project tasks and keep the tool up to date.

flownikivdev/code · ★ 21.1k · MIT

Quick start

  1. 1Install the release. Run the curl install command on macOS or Linux. Wait for it to finish.
  2. 2Check the install. Run ~/.flow/bin/f --version and ~/.flow/bin/f doctor. If f is not found, open a new shell.
  3. 3Check the workspace. In your project folder, run f setup to check the workspace and toolchain.
  4. 4Run tests. Run f test to run the project's test suite.
  5. 5List tasks. Run f tasks list to see the available project tasks before running them.
  6. 6Deploy locally. Run f deploy to build and install the local CLI into your path.
  7. 7Keep it current. Run f upgrade to move to the latest release, or f upgrade --canary for the canary build.

What you need before installing flow

The README lists macOS and Linux (glibc) as the supported platforms, with arm64 and x86_64 release artifacts for each. You also need a shell; the README mentions zsh and uses `exec zsh -l` to reload it.

Windows is not listed as a supported platform in the README, so this guide does not cover it.

  • macOS or Linux (glibc)
  • zsh or another shell
  • Comfort working in a terminal

Install flow on macOS or Linux

Install the latest release with the command below. The installer places the binary under ~/.flow/bin.

After installing, check the version and run the built-in health check using the full path. If `f` is not found by name right away, open a new shell. On zsh you can run `exec zsh -l`.

The installer verifies SHA-256 checksums when they are available. Older releases without checksums.txt will produce a warning and continue. The README says the FLOW_INSTALL_INSECURE=1 variable bypasses verification, but it advises against this.

curl -fsSL https://myflow.sh/install.sh | sh ~/.flow/bin/f --version ~/.flow/bin/f doctor

Run the everyday setup, test and deploy loop

The README describes a typical local loop of three commands. Run them from your project workspace.

`f setup` checks the workspace and toolchain. `f test` runs the test suite. `f deploy` builds and installs the local CLI into your path.

  • f setup: checks the workspace and toolchain
  • f test: runs the test suite
  • f deploy: builds and installs the local CLI into your path
f setup f test f deploy

List and inspect project tasks

If you want to see what tasks are available before running anything, use the task listing command. This is useful when you are new to a project and want to understand what the tool will do.

To see the full current command surface, run the help command. The README does not list every command itself, so the help output is the most reliable reference.

f tasks list f --help

Upgrade flow to a new release

Flow can upgrade itself. Use the plain command for the latest stable release, the canary flag for the latest canary build, or the stable flag to switch back to stable.

If you publish releases from a fork, set FLOW_UPGRADE_REPO to owner/repo. Set FLOW_GITHUB_TOKEN (or GITHUB_TOKEN or GH_TOKEN) to avoid GitHub API rate limits. Bypassing checksum verification with FLOW_UPGRADE_INSECURE=1 is possible for very old tags but the README does not recommend it.

  • Latest release: upgrade with no flag
  • Latest canary build: use --canary
  • Back to stable: use --stable
f upgrade f upgrade --canary f upgrade --stable

Build flow from source

If you prefer to build it yourself, clone the repository and hydrate the pinned vendor snapshot first. The README says the vendor repo is public and is pinned in vendor.lock.toml.

The deploy script builds the optimized release binary and installs f, flow and lin into ~/bin. It also symlinks into ~/.local/bin if that directory exists. You can populate the vendor checkout yourself before hydrating if you prefer.

  • Hydrate reuses .vendor/flow-vendor if it already exists
  • If it is missing, the script clones the pinned vendor repo and materializes lib/vendor/* from the exact commit
git clone https://github.com/nikivdev/flow.git cd flow ./scripts/vendor/vendor-repo.sh hydrate FLOW_PROFILE=release ./scripts/deploy.sh ~/bin/f --version

What people use it for

  • Running setup, test and deploy from one command name in a project
  • Listing project tasks with f tasks list before running them, so you know what will happen
  • Building flow from source to get an optimized local binary
  • Keeping a local install current with f upgrade, or pinning back to stable with --stable

Frequently asked questions

How do I install flow from nikivdev/code?

On macOS or Linux, run the curl command from the install section, which downloads the installer from myflow.sh and pipes it to sh. Then check it with ~/.flow/bin/f --version. If f is not found, open a new shell.

Does flow work on Windows?

The README lists only macOS and Linux (glibc) as supported platforms, with release artifacts for arm64 and x86_64 on each. It does not mention Windows, so this guide does not assume it works there.

Is flow free and open source?

The repository is licensed under the MIT licence, according to the project metadata. The README itself does not discuss licensing in detail, so check the LICENSE file in the repository for the full terms.

What commands does flow provide?

The README names f setup, f test, f deploy, f tasks list, f upgrade and f doctor. For the full command list, run f --help, since the README points there for the current CLI surface.

What should I do if the installer shows a checksum warning?

The installer verifies SHA-256 checksums when they are available. For a legacy release without checksums.txt it warns and continues, and the README says this applies to GitHub downloads. Setting FLOW_INSTALL_INSECURE=1 skips verification, which the README does not recommend.

Are there alternatives to flow?

No comparable projects were identified in the source material, so this guide cannot make a direct comparison. Consider the tasks you need (setup, test, deploy, task listing) and check whether your existing tools cover them.

New agent skills, repos and AI tools — every week

The best new skills and open-source projects, the fastest-growing repos, and one free prompt. Five minutes to read. Unsubscribe anytime.

Our verdict

Flow suits developers on macOS or Linux who want one command, f, for setup, testing, deploying and listing project tasks. It is less suitable for Windows users or anyone who needs thorough documentation in the README, since the README points to a separate docs folder for detail.

Install options & downloads