New Python CLI + dual SKILL.md (Code + Desktop) for organizing Google Drive folders under OurDigital conventions: - Refresh root README index (preserves manual Topics/Notes between AUTO-STRUCTURE markers) - Ensure per-subfolder README.md meta files - Propose filename + folder renames (D.intelligence → OurDigital with SEO-context caveat documented in patterns/gotchas.md) - Propose moves for cluttered files (screenshots, temp downloads) - Sensitive-folder skip list (04_Case Studies, 99_Project Archive, *Archive*, 진단*) - shared/patterns/ gotcha library: canonical-files, canonical-folders, categorization-rules, 12 known gotchas — grows over time as the system encounters new edge cases Slash command: /organize. CLI: ~/.local/bin/our-gdrive-organize. 82-tui-design-template renumbered to 92 (no content change) to free slot 82. AGENTS.md and CLAUDE.md updated for both moves. Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
5.4 KiB
OurDigital Drive Folder Conventions
Canonical reference for naming and organization patterns enforced by
our-gdrive-organizer. The script's rules live in code/organizer.py —
keep this document and that code in sync.
For the gotcha library (canonical examples + edge cases consulted
during interactive content-based reorganization), see patterns/:
patterns/canonical-files.mdpatterns/canonical-folders.mdpatterns/categorization-rules.mdpatterns/gotchas.md
The brand prefix rules (D.intelligence … → OurDigital …) now apply to
folder names too, at depth 2+. Top-level folders (e.g., 00_Brand Management/)
are never auto-renamed.
Folder naming
2nd-level Drive folders (top-level practice areas)
NN_descriptive name, where NN is a 2-digit numeric prefix indicating the
"sort bucket":
| Range | Meaning |
|---|---|
| 00–09 | Brand / core / cross-cutting |
| 10–19 | Product or specialty practice |
| 20–29 | Data / integrations |
| 90–99 | Archive |
Examples observed: 00_OurDigital, 01_Brand in Action, 02_SEO in Action,
10_OurSEO Agent, 20_DataForSEO, 99_Project Archive.
3rd-level subfolders
NN_descriptive name again, scoped to the parent. Maturity ordering:
| Range | Meaning |
|---|---|
| 00–05 | Frameworks / always-on assets |
| 10–13 | Productized tooling / specialty modules |
| 20 | Data |
| 90+ | Archive within this practice |
Client / project subfolders
Inside 01_Active Workspaces/ or 99_Project Archive/:
NN_{client name} — e.g., 00_Jamie Clinic, 04_오현이혼상속센터,
05_1가다. NN is assigned in chronological / engagement order.
Reserved / system subfolders
screenshots/— auto-created by the organizer when moving stray screenshot files out of a parent folder root._unsorted/— auto-created by the organizer for incomplete downloads (.crdownload,.tmp,.partial).
File naming
Templates and quotes (in 05_Working Template/)
OurDigital-{Service}-OOO {date}.{ext} or
OurDigital-{Service}-OOOOOO {modifier}.{ext}.
OOO and OOOOOO are the canonical placeholder strings for "client name
goes here" — chosen to be visually obvious and easy to grep for. Use
whichever makes more visual sense in the filename.
Examples:
OurDigital-SEO Coaching-OOO 견적-20240612.gsheetOurDigital-SEO Treatment-OOO 호텔 견적-20240903.gsheetOurDigital-OOO 호텔 SEO Basic 패키지-20250416.gsheetOurDigital-Data Access & Management Agreement - 2026.gsheet
Brand prefix — parent company / SEO child brand
D.intelligence is the parent company; OurDigital is its SEO-specialty child brand. The rebrand-to-OurDigital rule only applies when the asset is SEO-related.
Rules (filesystem rename only — does not touch cell/body content):
D.intelligence Lab-→OurDigital-D.intelligence(anywhere) →OurDigitalD intelligence(no-dot variant) →OurDigital
The organizer applies these to both files and folders at depth 2+. Top-level
folders (NN_…) are never auto-renamed.
Important: The script doesn't enforce the SEO-context caveat. When you
point the organizer at the whole Drive Stream or a non-SEO folder, it will
rename ALL D.intelligence references — which is wrong outside SEO context.
Only run the organizer on SEO folders (02_SEO in Action/,
00_OurDigital/04_SEO/, etc.). For non-SEO D.intelligence assets, do not
rename — they belong to the parent company.
See patterns/gotchas.md "D.intelligence vs OurDigital" for full guidance.
Archive client files
Files inside 99_Project Archive/{client}/ should KEEP their original
filenames including real client names. The script skips these folders for
rename/move operations.
Date stamps
Use YYYYMMDD (no separator) when embedding a date in a filename:
OurDigital-Data Access & Management Agreement - 2026.gsheet
OurDigital-SEO Coaching-OOO 견적-20240612.gsheet
When a date range is needed: YYYYMMDD-YYYYMMDD.
Extensions and stub files
Google Drive Apps formats appear as 180-byte JSON stubs on the local filesystem with these extensions:
| Drive type | Extension |
|---|---|
| Docs | .gdoc |
| Sheets | .gsheet |
| Slides | .gslides |
| Forms | .gform |
Renaming the stub on the filesystem only changes the local filename — the backing Google document, its Doc ID, sharing links, and revision history are untouched. Safe to rename. Cell-level / body-level changes still require opening the file in the corresponding Google app.
What the organizer does NOT enforce
- Cell content inside
.gsheet, body content inside.gdoc, slide content inside.gslides, or any binary file (.pdf,.pptx,.xlsx). Those need manual editing in the source app. Track them with aTODO.mdif needed (see02_SEO in Action/98_Training/TODO.mdfor an example pattern). - Folder maturity ordering — the NN prefix system is a convention, but the script doesn't reorder or renumber folders.
- Per-folder
README.mdcontent beyond the AUTO-STRUCTURE block — manual Topics / Notes sections are preserved.
Sensitive folders (never auto-modified)
Internal regex list (SENSITIVE_SUBFOLDER_PATTERNS in organizer.py):
^04_Case Studies$^99_Project Archive$.*Archive$(case-insensitive)^진단.*$
These folders are still indexed (counts appear in the README structure), but no files inside them are renamed or moved.