Redaction and cleanup
An assembly line for AI software development. 35 skills, 11 agent personas, 29 commands. From raw idea to shipped code.
npx -y skills add aneja5/forge-skills --skill redaction-and-cleanupAssembled from the repository path, not quoted from the project. Check it against their README if it does not work.
One thing to look at
- 3 stars3 stars. Stars are a popularity signal and not a quality one, but at this level it is likely that nobody has read this closely except its author, and you would be relying on your own review.
What its author says it does
Copied from the file, not written here
Use when user says "redact", "clean up for sharing", "remove sensitive info", "prepare for external", when sharing .forge/ artifacts with investors or external reviewers, when sanitizing documents before external publication, or when pricing/credentials/strategy must be removed before sharing.
SKILL.md
4.9 KB, as published. Nobody here has run it
Redaction and Cleanup
Overview
Prepare .forge/ documents for external sharing by copying them to .forge/redacted/ and replacing sensitive information with consistent placeholders. Original files are NEVER modified. The redaction manifest documents every change for internal reference.
When to Use
- Sharing documents with investors, advisors, or partners
- Preparing materials for external review or cross-validation
- Publishing case studies or documentation based on internal artifacts
- Any situation where internal data must not leave the organization
When NOT to Use
- Documents are already public — no redaction needed
- User wants to delete files — that's not redaction
- The sensitive data IS the deliverable (e.g., a security audit for the client)
Common Rationalizations
| Thought | Reality |
|---|---|
| "I'll just manually remove the sensitive parts" | Manual redaction misses things. Automated scan + manifest catches more |
| "It's fine, the recipient is trusted" | Trust the person, redact the document. People forward things |
| "I'll edit the originals and restore later" | You won't. Original files must be untouched — copy first, always |
| "Only pricing needs redacting" | Credentials, internal metrics, employee names, strategy details — audit first |
| "A quick find-and-replace is enough" | Inconsistent placeholders leak information through correlation |
Red Flags
- Original files modified in place (SAFETY VIOLATION — must copy first)
- Placeholder values are inconsistent (same entity gets different placeholders)
- Grep after redaction still finds sensitive terms
- Manifest is missing (no record of what was changed)
- Redaction categories not defined before scanning (ad-hoc misses patterns)
SAFETY RULE
NEVER modify original files in place. All redaction happens on copies in .forge/redacted/. Original files in .forge/ must remain untouched. If you are about to edit a file outside .forge/redacted/, STOP.
Core Process
Step 1: Define redaction categories
With the user, define what to redact and what to keep:
Redact (typical):
- Pricing, margins, unit economics
- API keys, credentials, connection strings
- Internal strategy, competitive positioning details
- Employee names, internal team structure
- Specific customer names (unless public case study)
- Internal metrics, revenue numbers
Keep (typical):
- Public pricing from competitors
- Architecture patterns and technology choices
- General cost categories (without specific numbers)
- Role titles (without names)
- Publicly available data
Step 2: Define placeholder format
Use consistent, identifiable placeholders:
- Company names:
[COMPANY-A],[COMPANY-B](consistent across all docs) - Prices:
[PRICE-TIER-1],[PRICE-TIER-2] - People:
[TEAM-MEMBER-1],[TEAM-MEMBER-2] - Metrics:
[INTERNAL-METRIC] - Credentials:
[CREDENTIAL-REDACTED]
Consistency rule: the same entity gets the same placeholder everywhere.
Step 3: Scan all files
Scan every file in .forge/ for matches against redaction categories. For each match, record:
- File path
- Line number
- Original content (summary, not full text)
- Redaction action (replace with which placeholder)
Step 4: Generate manifest
Write .forge/redaction-manifest.md:
- Redaction categories defined
- Placeholder mapping (which entity → which placeholder)
- Per-file change list
- Total changes count
Step 5: Copy and redact
- Create
.forge/redacted/directory - Copy all files from
.forge/to.forge/redacted/(preserving structure) - Apply redactions to the copies only
- Do NOT copy
.forge/redaction-manifest.mdto redacted/ (it contains the mapping)
Step 6: Verify
Run grep on .forge/redacted/ for every term in the redaction categories. Zero matches required. If any remain, fix and re-verify.
Step 7: Sync check
If documents are updated later, the redacted copies are stale. Note in the manifest: "Redacted on [date]. If originals change, re-run redaction."
Output
.forge/redaction-manifest.md— what was redacted, placeholder mapping.forge/redacted/*— cleaned copies of all documents
Verification
- Original files in
.forge/are unchanged - All files copied to
.forge/redacted/before any edits - Placeholders are consistent (same entity → same placeholder across all files)
- Grep confirms zero remaining matches for redacted terms in
.forge/redacted/ - Manifest documents every change with file and line reference
- Redaction manifest is NOT copied to
.forge/redacted/ -
.forge/redaction-manifest.mdwritten