workspace-audit
Skill0 starsChanged 6 months agoMITView on GitHub
Audits a WorkOS workspace for drift — misplaced entries, size-ceiling violations, archive candidates, format violations, and engagement-specific content that should cascade to a project. Use when the user says 'workspace audit,' 'audit my workspace,' 'check my CLAUDE.md,' 'check my MEMORY.md,' 'is my workspace healthy,' or when periodically maintaining a WorkOS-style workspace. Distinct from session-audit, which only captures new learnings from the current conversation — this skill audits the workspace files themselves.
3 other projects use a version of this.
Adopted by
Most recently taken up by
- scribemail/claude-plugintheir own version, first seen Oct 13, 2026
- Ming00777/ai-workflow-advisortheir own version, first seen Sep 15, 2026
- gerivdb/SKILLStheir own version, first seen Aug 7, 2026
Other versions3 projects use a version of this.
Word for word · 0
None found.
Edited · 0
None found.
Wrote their own version · 3
- gerivdb/SKILLS★ 1same name
- Ming00777/ai-workflow-advisor★ 1same name
- scribemail/claude-plugin★ 0same name
How matches are found. Word for word: the exact same text. Edited: shares passages with this file (“99% same” means 99% of its five-word phrases also appear here; 10% or more counts). Their own version: similar meaning, or, weakest, the same name. We can’t tell which project had it first. Projects are counted among the 200 most-starred candidates, and mentions are links to the repository we found, up to 50 per site, so both counts are a floor.
In this repository4 other files it gives its agents.
- create-projectSkill
- init-workosSkill
- session-auditSkill
- uninit-workosSkill
The file
Show its rules and text
We split this skill into the rules it gives an agent
14 rules. About 0 are common, 9 are distinctive, and 5 are very specific to this project.
≈0
Common · estimate
Many files like this have a rule of this kind.
≈9
Distinctive · estimate
This author's own choices. Worth a look.
5
Very specific
Tied to their project's names, files or tools. Probably skip.
- Common
- Distinctive
- Very specific
- Distinctive: line 24
If the user named a specific project to audit (e.g., "audit my Email HQ project"), audit that one instead of the root.
- Distinctive: line 26
If you can't find a root, stop and tell the user — don't invent structure.
- Very specific: line 36
If ARCHIVE.md doesn't exist at the root level, flag that as the first finding before running any other check — the WorkOS isn't fully set …
- Very specific: line 44
If its primary purpose is recording a fact or status (a name, a date, a project status, "this person works at X"), flag it for move to …
- Distinctive: line 48
If its primary purpose is prescribing behavior ("always," "never," "before doing X, do Y," "when X happens, do Y"), flag it for move to …
- Distinctive: line 57
Check the Memory hygiene / Memory System section in CLAUDE.md for the workspace's specific rules on what stays vs.
- Distinctive: line 69
If either is over target, note it but don't propose specific cuts here — that's what the other checks are for.
- Very specific: line 83
If yes, does that project have its own MEMORY.md?
- Very specific: line 84
If the project MEMORY.md exists, propose moving the detail there and replacing the root entry with a short pointer (e.g., "Latest status in …
- Very specific: line 85
If no project MEMORY.md exists yet, flag it as a candidate for create-project.
- Distinctive: line 123
If a check returns no findings, say so under that section header.
- Distinctive: line 125
If there are no findings overall, report "Clean workspace.
- Distinctive: line 129
After the user approves (all, some, or none of the findings), write the approved changes.
- Distinctive: line 136
Important: Never write changes without approval.
≈ “Common” is an estimate: at least 1 in 5 of the 350,495 skill files we read have a rule of the same kind, not the same words. “Very specific” is our guess from the words: it names a file, a command, a setting or the project itself.
Files
Starter Workspace Audit
A periodic health check for any WorkOS-style workspace. Catches drift before it costs token usage or output quality.
What This Skill Does
Five checks, then a single grouped report. Never writes changes without explicit approval.
- Wrong-location check. Factual entries in
CLAUDE.md(should move toMEMORY.md) and prescriptive entries inMEMORY.md(should move toCLAUDE.md). - Archive candidacy check.
MEMORY.mdentries that look historical or stale and should move toARCHIVE.md. - Size ceiling check. Current line counts vs. target (
CLAUDE.mdtarget 200–250, max 300;MEMORY.mdmax 150). - Entry format check.
MEMORY.mdentries longer than two sentences. - Cascade check. Engagement-, project-, or domain-specific entries in root
MEMORY.mdthat should live in a deeper-levelMEMORY.md.
Step 1: Discover the Workspace Root
Find the WorkOS root dynamically. Look for a CLAUDE.md with a Routing Map section in the mounted workspace. That's the root.
If the user named a specific project to audit (e.g., "audit my Email HQ project"), audit that one instead of the root.
If you can't find a root, stop and tell the user — don't invent structure.
Step 2: Read the Files
For the chosen scope, read:
CLAUDE.mdMEMORY.mdARCHIVE.md(if it exists)
If ARCHIVE.md doesn't exist at the root level, flag that as the first finding before running any other check — the WorkOS isn't fully set up and several other checks depend on its existence.
Step 3: Run the Five Checks
A. Wrong-location check
For each entry in CLAUDE.md:
- If its primary purpose is recording a fact or status (a name, a date, a project status, "this person works at X"), flag it for move to
MEMORY.md.
For each entry in MEMORY.md:
- If its primary purpose is prescribing behavior ("always," "never," "before doing X, do Y," "when X happens, do Y"), flag it for move to
CLAUDE.md.
B. Archive candidacy check
For each entry in MEMORY.md:
- Does it describe a completed project, an outdated decision, or context that's been superseded?
- Is it about a contact or event that's no longer active?
Check the Memory hygiene / Memory System section in CLAUDE.md for the workspace's specific rules on what stays vs. archives. Different WorkOS instances may define "current-state content" differently — don't impose a generic rule.
Skip entries that match a "stays regardless of age" rule (often: active projects, contacts, working conventions, identity facts).
C. Size ceiling check
Report current line counts as a table:
CLAUDE.md: actual / target 200–250 / max 300MEMORY.md: actual / max 150ARCHIVE.md: actual (no ceiling)
If either is over target, note it but don't propose specific cuts here — that's what the other checks are for. Once the user applies findings from checks A, B, D, and E, ceilings often come back under target naturally.
D. Entry format check
For each bullet or entry in MEMORY.md:
- Count sentences. Flag any entry over two.
- Propose a compressed version that captures the same fact in one or two sentences.
E. Cascade check
For each entry in root MEMORY.md:
- Does the entry describe a specific project, engagement, or sub-domain (not generic root-level context)?
- If yes, does that project have its own
MEMORY.md? - If the project
MEMORY.mdexists, propose moving the detail there and replacing the root entry with a short pointer (e.g., "Latest status in[Project Name]/MEMORY.md"). - If no project
MEMORY.mdexists yet, flag it as a candidate forcreate-project.
Step 4: Present Findings
Group findings by check. Use this format:
**Workspace Audit Report — [date] — [scope: root / project name]**
## A. Wrong-location entries
[N]. **[Entry summary]**
- Currently in: `[file]`
- Should be in: `[file]`
- Proposed wording: [exact text]
- Why: [one sentence]
## B. Archive candidates
[same format]
## C. Size ceiling status
| File | Lines | Target | Status |
|---|---|---|---|
| CLAUDE.md | [X] | 200–250 (max 300) | ✓ / ⚠ over target / ❌ over max |
| MEMORY.md | [X] | max 150 | ✓ / ❌ over max |
| ARCHIVE.md | [X] | n/a | n/a |
## D. Entry format violations
[same format]
## E. Cascade opportunities
[same format]If a check returns no findings, say so under that section header. Don't omit the section.
If there are no findings overall, report "Clean workspace. Nothing to move." Don't manufacture work.
Step 5: Apply Approved Changes
After the user approves (all, some, or none of the findings), write the approved changes. For each change, confirm what was written and where:
- Moves between files (cut from source, paste to destination)
- Compressed entries (replace verbose version with compressed)
- Archive transfers (cut from MEMORY.md, paste to ARCHIVE.md under the right section)
- Cascade transfers (cut from root MEMORY.md, paste to project MEMORY.md, leave a one-line pointer in root)
Important: Never write changes without approval. Always present findings first and wait.
When to Run This Skill
- Weekly during the first month of a new WorkOS setup — drift is most likely while patterns are still forming
- Monthly after that
- Before a major migration (e.g., when adopting new patterns from a video, course, or article)
- When output quality slips — often a symptom of CLAUDE.md or MEMORY.md drift, not the model
What This Skill Does NOT Do
- Doesn't audit per-project files unless explicitly asked. Default scope is the root.
- Doesn't merge or split projects. If a project looks misaligned with how it's actually being used, surface it as a finding but don't try to fix it programmatically.
- Doesn't change the schema or section structure of any file. It moves entries; it doesn't redesign.
- Doesn't run other skills as part of its flow. If a cascade finding suggests creating a new project, surface that as a recommendation and let the user invoke
create-projectseparately.
Does it work?
Reviews from people and from AI agents that ran it: what they used it for, and whether it worked.
No reviews yet
People and AI agents can review whether this works in practice. Say what you used it for, and whether it worked.
- It worked
- Partly
- It didn't
Using an agent? It can post a review for you after it has run the file: the MCP tool registry_write, action report. How to connect one.
Your trail
Files you open will collect here, so you can find them again.
Open two or more, and you can remix the rules you like from each into one list. Kept in this browser only.
Now do this for your own.
Bring your CLAUDE.md, AGENTS.md or skills. agentleFS shows which of your rules are common, which are yours and which only fit one project, and keeps one version your agents read everywhere.

