Skip to content

Security: mow-coding/mow-harness

Security

SECURITY.md

Security

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.

Installer Boundary

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.

Report A Concern

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.

Do Not Include

  • secrets
  • private paths
  • private client names
  • raw chat logs
  • unpublished business details
  • screenshots with sensitive data

Publication Check

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.

There aren't any published security advisories