MOW Harness combines documentation and templates with a local installer CLI. Its two primary risks are unintended project-file changes and accidental publication of private project context.
The CLI is dependency-free and has no npm lifecycle scripts. It writes only
the selected project's collab/, configured Harness template location, and
.mow-harness/ metadata namespace. It rejects path traversal, managed-path
symbolic links, occupied metadata namespaces, active claims or locks, stale
plans, source-cache collisions or drift, and malformed install metadata.
Always inspect --dry-run output before using --yes. Updates back up replaced
files and verify rollback, but the claim/lock is best-effort file coordination,
not an operating-system transaction lock or security sandbox. Use only a MOW
Harness source or npm artifact whose origin and version you trust.
mow doctor rechecks managed hashes, source-cache bytes, metadata consistency,
required files, receipts, and symbolic-link safety. A HOLD result must be
resolved before another update or activation claim.
If you find private information, credentials, unsafe instructions, or an overclaim that could mislead users, open a private maintainer channel if one is available. If not, open a minimal issue that does not repeat the sensitive content.
- secrets
- private paths
- private client names
- raw chat logs
- unpublished business details
- screenshots with sensitive data
Maintainers should configure and run the fail-closed local check in PUBLICATION_SAFETY.md before every push, tag, release, or repository visibility change. Private denylist values remain in an ignored local file and must never be copied into tracked configuration or examples.