perttool
perttool is a local command-line tool for keeping PERT/CPM plans in reviewable text files. It validates plans, calculates precedence and resource-constrained schedules, recommends the next task, and previews every change before writing it.
The recommended npm latest release is 0.10.5; npm beta is 0.11.1 with Grammar 9 and CLI Contract 10 for the Work-centered Planning Pool. Both require Node.js 22 or later. Exact 0.10.6 remains the compatible Grammar 8 and CLI Contract 9 rollback pin that includes the Issue #36 correction.
Install
Install the current release for your user-managed Node.js environment:
npm install --global perttool@latest
perttool --versionRun it without installing:
npx --yes --package=perttool@latest -- perttool --version
npx --yes --package=perttool@latest -- perttool document check PLAN.pertUse an exact version such as perttool@0.11.1 when reproducibility matters. See CHANGELOG.md and the release records for older releases and rollback pins.
Create your first plan
You can author the current canonical structure directly:
project EXAMPLE:
version 9
title "Example plan"
as_of 2026-08-21
duration_unit point
velocity 1p/1d
finish DONE
milestone NOW:
title "Current frontier"
state reached
title "Work completed"
task WORK NOW - DONE: title "Do the work" duration 1p status planned
Save it as `PLAN.pert`, then validate and canonically format it:
perttool document check PLAN.pert perttool document format PLAN.pert --diff
Alternatively, `project init` can create the smallest valid starter file:
perttool project init EXAMPLE \ --title "Example plan" \ --initial-milestone NOW \ --initial-milestone-title "Current frontier" \ --finish NOW \ --out PLAN.pert