AI Literacy Club / Skill Library

← All skills

AILC-07 · Drawer: Finance & accounting

/redact-first

Strips names, IBANs, tax numbers and salaries before a file leaves your desk, and keeps a private key to put them back.

Ask it: “Is this payroll extract safe to paste? Clean it.”

redact-first.zip · 131 lines of plain text

When it runs

Scan text, a spreadsheet extract or a document BEFORE it is shared with an AI tool, a supplier or a wider audience, find every piece of personal, client or confidential financial data (names, IBANs, tax numbers, salaries, account numbers, unreleased results, deal names), and return a safe copy with consistent placeholders plus a private key to put the real values back afterwards. Use this skill whenever the user says "anonymise", "redact", "remove personal data", "is this safe to paste", "GDPR", "confidential", "client data", or is about to paste payroll, invoices, bank statements, customer lists, HR notes or board material into a chat, email or shared folder. ALSO offer it proactively when the user shares a file that visibly contains personal or client financial data. Do NOT use as legal advice on whether sharing is allowed (that is the company's data protection officer's call), or on data that is already public.

The full file

redact-first/SKILL.md
---
name: redact-first
description: >-
  Scan text, a spreadsheet extract or a document BEFORE it is shared with
  an AI tool, a supplier or a wider audience, find every piece of personal,
  client or confidential financial data (names, IBANs, tax numbers, salaries,
  account numbers, unreleased results, deal names), and return a safe copy
  with consistent placeholders plus a private key to put the real values
  back afterwards. Use this skill whenever the user says "anonymise",
  "redact", "remove personal data", "is this safe to paste", "GDPR",
  "confidential", "client data", or is about to paste payroll, invoices,
  bank statements, customer lists, HR notes or board material into a chat,
  email or shared folder. ALSO offer it proactively when the user shares a
  file that visibly contains personal or client financial data. Do NOT use
  as legal advice on whether sharing is allowed (that is the company's data
  protection officer's call), or on data that is already public.
---

# Redact first

The most common AI risk in a finance team is not a wrong answer. It is the
payroll file someone pasted to "just fix the formatting". Once data leaves
the company it cannot be called back. Under GDPR, salaries, tax numbers and
bank details of named people are personal data, and unreleased results can
be inside information. Most people know this. They paste anyway, because
cleaning a file by hand is slow and they are in a hurry.

This skill makes the safe path the fast path. It finds what must not travel,
replaces it with placeholders that keep the analysis working, and keeps a
key so the user can restore the real values in the answer. It does not
decide whether sharing is allowed: it makes sure that what is shared is the
minimum.

If you, the assistant reading this, are already the tool the data was
pasted into, say so plainly: the data has been shared with this session.
Redaction protects the next step (the email, the shared folder, the other
tool), and the habit for next time.

## Workflow

### 1. Ask what the task needs

Before redacting, ask: "What do you need done with this?" The answer
decides what can stay. To fix formulas, nothing personal is needed. To
spot salary outliers, amounts are needed but names are not. To draft
letters to clients, names are needed but bank details are not. Keep the
minimum the task requires and nothing more.

### 2. Scan for nine categories

1. **Names** of people (employees, clients, contacts, signatories).
2. **Contact data**: emails, phone numbers, home addresses.
3. **Identifiers**: tax numbers (NIF, NIPC, SSN), ID card and passport
   numbers, social security numbers, employee IDs.
4. **Bank data**: IBANs, account numbers, card numbers (even partial).
5. **Pay and personal finance**: salaries, bonuses, loans, garnishments.
6. **Special category data**: health, sick leave reasons, union membership,
   religion, ethnicity. Highest risk: remove, never pseudonymise.
7. **Client and deal names**: company names, project codenames, deal values.
8. **Unreleased financial results**: anything not yet published by a listed
   company, including forecasts and guidance drafts.
9. **Credentials**: passwords, API keys, login links. Remove and tell the
   user to change them.

Also check the hidden places: file names, sheet names, comments, headers
and footers, tracked changes, email signatures, and metadata such as the
author field.

### 3. Replace consistently

Use typed placeholders that keep the meaning:

- `[PERSON_1]`, `[PERSON_2]`: the same person always gets the same tag.
- `[CLIENT_A]`, `[IBAN_1]`, `[NIF_1]`, `[EMAIL_1]`.
- Amounts: keep exact if the task needs them; otherwise band them
  (`[SALARY_BAND_40-50k]`) or scale them all by the same factor and say so.
- Dates of birth: keep only the year or the age band, if needed at all.

Consistency is what keeps the analysis valid. If "Ana Costa" is
`[PERSON_3]` in row 4 and `[PERSON_7]` in row 19, totals per person break.

### 4. Return two things

```
## Safe copy
[The redacted text or table, ready to share.]

## Private key (keep this, do not share it)
| Placeholder | Real value |
|---|---|
| [PERSON_1] | Ana Costa |

## What I removed
- 14 names, 6 IBANs, 9 salaries kept exact (needed for the outlier check),
  1 health note removed entirely, 2 file comments removed.
## What I could not check
- [e.g. images or scanned pages, embedded objects, the file's own metadata]
```

Tell the user to store the key apart from the safe copy. Tell them how to
restore: paste the AI's answer and the key back and ask to swap the tags
for the real values, in a tool that is allowed to hold the data.

## Judgment rules

**When unsure, redact.** A wrongly removed value costs a minute to put back.
A wrongly shared one cannot be taken back.

**Indirect identification counts.** "The only female director in the Porto
office" identifies a person without a name. Generalise these too.

**Small groups identify people.** A salary table for a team of three,
grouped by role, reveals each salary. Say so and suggest a bigger group.

**Do not promise compliance.** Say "this removes the personal data I found",
never "this is now GDPR compliant". Whether the sharing is lawful is a
question for the company's data protection officer.

**Images and scans need a human look.** You may not read text in pictures,
stamps or signatures reliably. List them as "not checked".

## Example

User pastes 40 payroll rows and asks why March total pay jumped. The task
needs amounts, months and departments, not identities. The safe copy keeps
gross pay, month and department, replaces names with `[PERSON_1..40]`,
removes IBANs and NIFs entirely, drops the "notes" column after finding two
sick-leave reasons in it, and reports: "40 names, 40 IBANs, 40 NIFs removed;
2 health notes deleted; amounts kept exact." The analysis works the same,
and nothing personal travels with it.

AILC-08 /fomo-brake →

One email opens the whole library.

Every skill, today and the new ones each week. We send occasional emails about AI for money work. Unsubscribe in one click.