SKILL.md
Full skill instructions
groove-utilities-task-install
Outcome
The configured task backend is installed and verified reachable. User is informed of what was installed and how to use it.
Acceptance Criteria
- Backend CLI is available in PATH after install
- User is shown a confirmation with the installed version or a reachability check
- No-op if
tasks.storage: none
Constraints
- Read
tasks.storagefrom.groove/index.mdto determine backend (if the key is still namedtasks.backendfrom an older config, treat it as the storage value). If the key is missing or invalid, you may pause and useAskUserQuestionso the user can choose a backend (beans,linear,github, ornone); then ensure.groove/index.mdis updated accordingly (via/groove-admin-configor an equivalent edit) before continuing. - If
tasks.storage: none, print friendly no-op message and exit - Installation source of truth: Do not embed OS-specific install commands in this skill. You must follow the official installation instructions from the upstream project for the user’s OS (read that page and run what it specifies). Link only:
beans: hmans/beans — Installation sectionlinear: schpet/linear-cli — install section (third-party CLI; not Linear’s hosted docs)github: GitHub CLI
- After the CLI is on PATH per those instructions, run a reachability check (
beans version,linear --version/linear --help, orgh version/gh auth statusas appropriate) - If the CLI is already installed before you start, report current version and skip fetching install instructions
- If
tasks.storage: beansand.beans.ymldoes not exist at git root:- Run
beans initto initialise the task store and generate.beans.ymlwith beans defaults - Derive
[PROJECT_PREFIX]from the git repo name (last path component ofgit remote get-url origin, stripped of.git, uppercased, non-alphanumeric stripped) — e.g.groove→GRV; fall back to the directory name if no remote - Update the
prefix:field in the generated.beans.ymlto the derived prefix (e.g.GRV-) - Set
path:in.beans.ymlto.groove/tasksso the task store lives under groove (aligned withgit.tasksand.groove/.gitignore). Create.groove/tasksif it does not exist. If the default.beansdirectory was created and is non-empty, move its contents into.groove/tasksand remove the empty.beansdirectory. - Report the path written and the prefix used
- Run
