Pack a repository into a deterministic, redacted handoff bundle for support tickets, maintainer review, and coding agents. 🧳
gitbriefcase is local-first: it walks your repo, applies safe default exclusions, redacts common secret-looking values, writes copied text files under files/, and emits both a machine-readable manifest.json and human-readable SUMMARY.md.
npm install -g gitbriefcaseFor local development:
npm install
npm run build
node dist/src/cli.js --helpCreate a directory bundle:
gitbriefcase pack ./my-repo --output ./my-repo.briefcase --format dirInspect the bundle before sharing it:
gitbriefcase inspect ./my-repo.briefcaseCreate a compressed archive:
gitbriefcase pack ./my-repo --output ./my-repo.briefcase.tar.gz --format tgzmy-repo.briefcase/
├── SUMMARY.md
├── manifest.json
└── files/
└── ...redacted copied text files...
The manifest records selected files, checksums, sizes, language guesses, git facts, skipped paths, redaction findings, and warnings.
By default, gitbriefcase excludes common risky or noisy paths:
.git, dependency directories, build output, coverage, caches, logs, archives, and local env files.- Files matched by the repository root
.gitignore. - Binary-looking files.
- Files larger than
--max-file-bytes(default: 262144 bytes).
Redaction is best-effort and explainable, not a replacement for a dedicated secret scanner. Always inspect generated bundles before sharing.
Support ticket bundle:
gitbriefcase pack . --output /tmp/project-support.briefcase --format dir --force
gitbriefcase inspect /tmp/project-support.briefcaseAgent handoff archive:
gitbriefcase pack . --output /tmp/project-agent.briefcase.tar.gz --format tgz --forceInclude .gitignore matches when you intentionally need them:
gitbriefcase pack . --include-gitignored --output /tmp/expanded.briefcase --forcegitbriefcase pack <path> [--output <path>] [--format dir|tgz] [--force]
gitbriefcase inspect <bundle>
Options:
--max-file-bytes <n>: skip files larger thannbytes.--include-gitignored: include paths matched by the root.gitignore.--quiet: suppress pack summary output.--version: print version.
npm test
npm run check
npm run build
npm run smoke
bash scripts/validate.shSee CONTRIBUTING.md. Please keep changes small, tested, and reviewable.
See SECURITY.md. Do not publish sensitive bundle contents in public issues.
MIT