j.distribute

Distributes framework files from a monorepo to consuming projects with version bumping and dry-run preview.

Updated Aug 3, 2026
One-click install
npx skills add https://github.com/samwelmunga/jenga-npm --skill j-distribute-samwelmunga
Or copy as Structured Prompt for Agent▼
Please help me install this Agent Skill.
Skill: j.distribute
Source: https://github.com/samwelmunga/jenga-npm/tree/main/.agents/skills/j-distribute
Command: npx skills add https://github.com/samwelmunga/jenga-npm --skill j-distribute-samwelmunga

SYSTEM DOCUMENTATION & REQUIREMENTS

💡 This Skill includes scripts (resource) components.

What problem does it solve? Keeping multiple consuming projects in sync with the latest version of a framework maintained in a private monorepo is error-prone manual work: copying files by hand, tracking which project has which version, and remembering to commit version bumps. This Skill automates the entire distribution lifecycle over the local filesystem. ## Core Features & Use Cases - Release lifecycle management: Prompts for a release type (major, minor, patch, or amend), bumps the version in package.json via npm, and commits the bump as a standalone git commit. - Per-target file distribution: Copies framework files to each registered consuming project using rsync, honoring per-project exclusions from .jenga_ignore and writing jenga.config.json atomically. - Dry-run safety gate: Previews every planned copy action per target and requires explicit user confirmation before writing any files. - Use Case: You maintain a framework monorepo and three client projects consume it. Run the distribute flow, choose "patch", review the dry-run output for all three targets, confirm, and each project receives the updated files plus an updated jenga.config.json while the version bump is committed automatically. ## Quick Start Ask the agent to distribute the framework to all registered consuming projects with a patch release, reviewing the dry-run preview before confirming.

Frequently Asked Questions about j.distribute

High-intent search queries and answers about installing and using this skill.

FAQPage Schema
How do I distribute framework updates to multiple projects from a monorepo?▼

Register each consuming project in distribute.config.json with a name, path, and active flag, then run the distribute flow. It prompts for a release type, bumps the version, shows a dry-run preview per target, and copies files via rsync after confirmation.

What is the difference between amend and patch release types when distributing?▼

Amend performs no version bump and only updates targets whose installed version lags behind the monorepo or that lack jenga.config.json. Patch bumps the patch version in package.json and distributes to all active targets regardless of their current version.

Can I exclude specific files from distribution to one project?▼

Yes. Create a .jenga_ignore file in the consuming project root listing one excluded item per line. The distribution script loads these exclusions and skips matching items for that project only, warning if the file is absent.

What happens if distribution fails for one target but succeeds for others?▼

The run continues to remaining targets and reports per-target results at the end. If at least one target succeeded, the version bump is still committed, and failed targets require a manual retry to receive the same version.

Why is the dry-run confirmation step required before distributing?▼

The dry-run prints every planned rsync and copy action per target without writing files, letting you verify destinations before changes occur. The skill's guard rails forbid skipping this gate, and aborting after a version bump leaves package.json bumped but uncommitted.