Skip to main content

Create and organize work from the CLI

Create projects and initiatives, change their details, move projects, and archive work, all from your terminal.

Written by Jack Meyers

Sometimes you're working on something no project covers yet, or a project's details are out of date. You can fix that from your terminal, or ask your coding agent to.

Important: none of these commands asks you to confirm. When your coding agent runs them, it should show you what it plans to do first, and wait for your OK.

Create a project

grove project create --initiative <slug> --short-name "Move a visit myself" --long-name "Customers move a booked visit without calling"

The project starts as Unplanned. It isn't assigned to your worktree. To pick it up, run grove project assign with its new ID.

A short name:

  • Has up to 6 words and 48 characters.

  • Uses sentence case, and only letters, numbers, spaces, ' and &. No hyphens or acronyms.

  • Names the outcome first, then who gets it, such as "Consistent identity for leads."

A new project has no plan yet. Write its summary, or ask your product lead to plan it in Grove.

Create an initiative

grove initiative create "Pro availability calendar" --description "Pros can't set their own hours..."

An initiative's name has up to 10 words and 100 characters. Grove keeps the description exactly as you write it, and uses it to start the initiative's plan. Grove prints the new initiative's slug. Use the slug in other commands.

Create an initiative only when no existing one fits. grove initiative list shows the ones you have.

Change a project's details

grove project set P-003 --status building --priority high --target 2026-11-30

Option

What it sets

--short-name, --long-name

The names. Pass "" to clear.

--status, --priority

The status or priority, by value or label.

--lead

The lead, by name. Pass none to clear.

--add-member

Adds a person to the members. Removes nobody.

--member

Replaces the whole members list. Repeat it for each person.

--target, --start

A date, as YYYY-MM-DD. Pass none to clear.

Only the options you give change. Grove prints each change, from the old value to the new one. If a name matches more than one person, Grove lists them and changes nothing.

Use --add-member to add someone. --member replaces everyone, so it can drop people added since you last looked.

To change an initiative, use grove initiative set <slug>, with --name, --description, --short-description, --lead, --target, --start, --priority, or --status.

Move a project

grove project move P-003 --initiative <slug>

The project keeps everything: its names, status, people, dates, and documents. Both initiatives must already exist. You can't move a project into an archived initiative.

Archive work

grove project archive P-003
grove initiative archive <slug>

Archiving an initiative also archives every project in it.

You can't undo archiving in Grove. Check the IDs with grove project list or grove initiative list first. Name each one back to the person who asked, and get their OK.

Related articles

Did this answer your question?