Claude-skill-registry johnny-decimal
install
source · Clone the upstream repo
git clone https://github.com/majiayu000/claude-skill-registry
Claude Code · Install into ~/.claude/skills/
T=$(mktemp -d) && git clone --depth=1 https://github.com/majiayu000/claude-skill-registry "$T" && mkdir -p ~/.claude/skills && cp -r "$T/skills/data/johnny-decimal" ~/.claude/skills/majiayu000-claude-skill-registry-johnny-decimal && rm -rf "$T"
manifest:
skills/data/johnny-decimal/SKILL.mdsource content
Johnny Decimal File Organization
Skill base directory:
{baseDir}
This skill helps you work with the Johnny Decimal (JD) file system located at
~/Documents (or $XDG_DOCUMENTS_DIR).
Quick Reference
The system has 10 areas:
| Area | Purpose |
|---|---|
| 00-09 System | Meta-management (inbox, templates, scripts, archive) |
| 10-19 Personal | People (Self, Spouse, Kids, Parents, Friends, Pets) |
| 20-29 Finances | Banks, investments, credit, taxes, insurance |
| 30-39 Home and Property | Homes, vehicles, major assets |
| 40-49 Career and Education | Education, research, employers |
| 50-59 Health and Wellness | General health resources (not personal records) |
| 60-69 Hobbies and Recreation | Games, computing, creative works, travel |
| 70-79 Legal and Records | Legal documents and archival records |
| 80-89 Household and Services | Services, products, utilities, meals |
| 90-99 Reference | Library, research, manuals, datasets |
Structure Format
XX-XX Area Name/ # Area (decade range) └── XX Category Name/ # Category (two digits) └── XX.YY Subcategory/ # Subcategory (ID)
Example path:
~/Documents/20-29 Finances/21 Banks/21.10 Example Bank/
Key Principles
- One place for everything - Each item has exactly one correct location
- Person-first for personal records - A spouse's health records go in
, not12 Spouse50 Health - Purpose determines area - A bill goes in
, not with the service provider27 Bills - JDex is the brain - Notes and decisions live in
00.00 JDex for System
Finding Where Things Go
Before filing, consult:
- Flowchart:
00-09 System/00 System/00.00 JDex for System/flowchart.md - Full structure:
00-09 System/00 System/00.00 JDex for System/overview.md
Or use your judgment with the filing hierarchy:
- Is it about a specific person? →
under their folder10-19 Personal - Is it about yourself specifically? →
11 Self - Otherwise, match by purpose → Areas 20-99
Notes System
Notes about JD items live as markdown files in the JDex:
00-09 System/00 System/00.00 JDex for System/ ├── overview.md # System structure documentation ├── flowchart.md # Filing decision tree ├── 31.14.md # Notes about current home ├── 21.10.md # Notes about a bank account └── ...
Use
jd-note to add timestamped entries to these files.
Naming Conventions
Folders:
- Areas:
(e.g.,XX-XX Name
)20-29 Finances - Categories:
(e.g.,XX Name
)21 Banks - Subcategories:
(e.g.,XX.YY Name
)21.10 Example Bank
Files:
- Date-prefixed for transient items:
2024-12-27_statement.pdf - Descriptive for permanent items:
policy_declaration.pdf - Statements:
orstatements/YYYY/MM.pdf
for credit cardscc_MM.pdf
Available Scripts
Scripts are located in
{baseDir}/scripts/. Use the full path when invoking:
| Script | Purpose |
|---|---|
| List contents of an area, category, or ID |
| Show directory structure using tree |
| Check if filename follows conventions |
| Create a new subcategory folder (auto-numbers) |
| Move a file to a JD location (with validation) |
| Add a timestamped note (browse if no ID given) |
| Display notes for an ID (browse if no ID given) |
Also available:
jd <query> for navigation (in ~/bin/).
Interactive Features
When run by a human (not an agent), these commands have interactive modes:
(no args) - Hierarchical browse (Area → Category → ID), then opens editorjd-note
(without text) - Opens editor to write a notejd-note <ID>
(no args) - Hierarchical browse (Area → Category → ID), then displays notesjd-read
(no args) - Hierarchical browse, then opens editorjd-read --edit
- Opens the note file for editingjd-read <ID> --edit
All properly handle TTY redirection for compatibility with any editor.
Agent Usage (--porcelain)
All scripts support a
--porcelain flag for machine-readable output:
{baseDir}/scripts/jd-list.sh 21 --porcelain # Full paths, no colors {baseDir}/scripts/jd-tree.sh -L3 --porcelain # Full structure, no colors {baseDir}/scripts/jd-mkdir.sh 21 "Name" --porcelain # Outputs created path {baseDir}/scripts/jd-move.sh file.pdf 21.10 --porcelain # Outputs destination path {baseDir}/scripts/jd-note.sh 21.10 "text" --porcelain # Adds note (text required) {baseDir}/scripts/jd-read.sh 21.10 --porcelain # Outputs note file path {baseDir}/scripts/jd-validate.sh file.pdf --porcelain # Machine-readable validation
When using these scripts as an agent:
- Always use
for reliable parsing--porcelain - Paths are absolute and suitable for further operations
- Errors go to stderr with exit code 1
requires text argument in agent mode (no editor)jd-note
is not available in agent mode (requires TTY)jd-read --edit- All scripts auto-detect agent mode when stdout/stdin are not TTYs
Safety Rules
- Scripts will refuse to overwrite existing files
- Scripts validate paths before operations
- Always confirm destructive operations with the user
- When uncertain about filing location, ask rather than guess
When to Explore
If you need current structure details not covered here, read:
in the JDex for full category breakdownoverview.md
in the JDex for filing decisionsflowchart.md- Use
to see what exists in a location{baseDir}/scripts/jd-list.sh
References
For more detailed guidance, use the Read tool to load:
- Detailed filing decisions and examples{baseDir}/references/FILING-GUIDE.md
- File and folder naming conventions{baseDir}/references/NAMING.md