Package Exports
This package does not declare an exports field, so the exports above have been automatically detected and optimized by JSPM instead. If any package subpath is missing, it is recommended to post an issue to the original package (@raquezha/norpiv) to support the "exports" field. If that is not possible, create a JSPM override to customize the exports field for this package.
Readme
norpiv (Lean RPIV Workflow Engine)
A disciplined task execution lifecycle for the Pi coding agent designed to maximize accuracy, control, and traceability through a step-by-step Staff Engineer planning process.
🔁 The Lifecycle
The RPIV engine splits task execution into separate, focused phases:
| Phase | Command | Purpose | Input / Output Files |
|---|---|---|---|
| 1. Ingest | /triage [source]:[id] |
Initial task verification and workspace setup. | Creates .workflow/tasks/[source-id]/WORK.md & metadata.json |
| 2. Scoping | /frame |
Author a clear, structured task brief. | Populates WORK.md ➔ [BRIEF] section |
| 3. Interrogate | /grill-with-docs |
Stress-test brief against rules and docs. | Records decisions in WORK.md ➔ [GRILL] |
| 4. Strategy | /plan |
Draft thin, independently testable slices. | Writes checkbox items in WORK.md ➔ [PLAN] |
| 5. Coding | /implement |
Execute one approved plan slice (needs permission). | Modifies code; records updates in WORK.md ➔ [LOG] |
| 6. Truth Test | /verify |
Run tests, lint, and verify quality. | Appends results to [LOG] |
| 7. Close | /sync |
Bridge local progress with external trackers. | Posts summary updates to Jira, GitHub, or GitLab |
Auxiliary hygiene:
| Command | Purpose | Input / Output Files |
|---|---|---|
/cleanup |
Declutter Git branches and completed task folders after work is merged/closed. | Prunes finished task folders & resets pointer when safe |
🛡️ Critical Guardrails
- Measure Twice, Cut Once: Never implement code during scoping or planning. The agent will wait for an explicit
EXECUTEstatement before modifying files. - One Source of Truth: All task state belongs in
.workflow/tasks/[source-id]/WORK.md. Avoid creating separatePROBLEM.mdorPLAN.mdfiles. - Safe Branching: Triage and planning happen on the main branch. Create the feature branch (
feat/*orfix/*) only when starting/implement.
📦 Install as a skill bundle
From GitHub with npx skills add
Best for trying or handing off RPIV skills without installing the full nothing setup:
npx -y skills add raquezha/nothing --full-depth -g -a pi \
-s triage frame grill-with-docs plan implement verify sync cleanup update-docs \
-yFrom npm
npm install -g @raquezha/norpivInstall the bundled skills for your agent runtime:
# Pi default: ~/.pi/agent/skills/{triage,frame,plan,...}
norpiv-install
# Other adapters
norpiv-install --target claude
norpiv-install --target codex
norpiv-install --target allTargets:
pilinks skills into~/.pi/agent/skills.claudelinks skills into~/.claude/skills.codexinstalls the skill docs under~/.codex/skills/norpivand writes anAGENTS.mdadapter because Codex-style environments do not universally auto-loadSKILL.mdbundles.
norpiv-install also installs the shared helper scripts under a sibling scripts/ directory so skill references like ../scripts/triage_helper.sh resolve after installation.
🚀 Quick Start Example
Activate the RPIV Hat from the full
nothingsetup:pi --rpivIf installed via
npx skills addornorpiv-install, invoke the skills directly in your agent instead.Triage an Issue:
/triage github:45
Frame the Work:
/frame
Verify Constraints:
/grill-with-docs
Write the Plan Slices:
/plan
Authorize Execution: Provide the agent explicit permission to implement:
EXECUTE /implement
Verify & Close:
/verify /sync /cleanup
🧭 Shared helper scripts
The bundle includes helper scripts used by the workflow skills:
scripts/triage_helper.shscripts/validate_active_task.shscripts/reposcry-bootstrap.shscripts/reposcry-task-context.shscripts/reposcry-refresh.sh
When skills are loaded directly from this package, relative references like ../scripts/... resolve against the package root. When skills are installed with norpiv-install, the same layout is recreated under the target runtime.
🔎 Optional RepoScry integration
RepoScry is an optional repo-memory layer for RPIV. norpiv does not require it.
If reposcry is installed:
./scripts/reposcry-bootstrap.sh
./scripts/reposcry-task-context.sh "fix dependency graph rebuild"
# edit code
./scripts/reposcry-refresh.sh main
reposcry validate main HEADTypical usage by phase:
/triage: optionally seed.reposcry/withscripts/reposcry-bootstrap.sh/frame: optionally generate.reposcry/AI_CONTEXT.mdwithscripts/reposcry-task-context.sh/grill-with-docs: optionally usereposcry query_graph,get_architecture_overview, andget_impact_radius/implement: optionally runscripts/reposcry-refresh.shafter edit batches/verify: optionally addreposcry validate main HEADand affected-flow output as extra evidence
If RepoScry is absent, the helpers no-op and RPIV continues with normal repo reading, grep, and tests.
RepoScry guardrails:
.reposcry/is generated local cache and must not be committed.scripts/reposcry-bootstrap.shautomatically adds.reposcry/to the project.gitignorebefore initializing RepoScry.- If
.reposcry/is already tracked or staged, bootstrap stops and tells you to remove it from the index. .reposcryignoreis indexing policy, not cache. Review and commit it when you want stable RepoScry behavior across machines.