@mcpware/claude-code-organizer 0.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/.claude-plugin/plugin.json +21 -0
- package/LICENSE +21 -0
- package/PLAN.md +243 -0
- package/README.md +123 -0
- package/SHIP.md +96 -0
- package/bin/cli.mjs +23 -0
- package/mockup.html +419 -0
- package/package.json +39 -0
- package/src/mover.mjs +218 -0
- package/src/scanner.mjs +513 -0
- package/src/server.mjs +147 -0
- package/src/ui/app.js +580 -0
- package/src/ui/index.html +88 -0
- package/src/ui/style.css +203 -0
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
{
|
|
2
|
+
"name": "claude-code-organizer",
|
|
3
|
+
"version": "0.1.0",
|
|
4
|
+
"description": "Organize all your Claude Code memories, skills, MCP servers, and hooks — view by scope hierarchy, move between scopes via drag-and-drop",
|
|
5
|
+
"author": {
|
|
6
|
+
"name": "mcpware",
|
|
7
|
+
"url": "https://github.com/mcpware"
|
|
8
|
+
},
|
|
9
|
+
"homepage": "https://github.com/mcpware/claude-code-organizer",
|
|
10
|
+
"repository": "https://github.com/mcpware/claude-code-organizer",
|
|
11
|
+
"license": "MIT",
|
|
12
|
+
"keywords": [
|
|
13
|
+
"organizer",
|
|
14
|
+
"memory",
|
|
15
|
+
"skills",
|
|
16
|
+
"mcp",
|
|
17
|
+
"config",
|
|
18
|
+
"scope",
|
|
19
|
+
"dashboard"
|
|
20
|
+
]
|
|
21
|
+
}
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2026 mcpware
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/PLAN.md
ADDED
|
@@ -0,0 +1,243 @@
|
|
|
1
|
+
# Claude Inventory Manager
|
|
2
|
+
|
|
3
|
+
**A scope-aware inventory manager for Claude Code customizations — view, organize, and sync your memories, skills, MCP servers, hooks, commands, and plugins.**
|
|
4
|
+
|
|
5
|
+
## Problem
|
|
6
|
+
|
|
7
|
+
Claude Code customizations (memories, skills, MCP servers, hooks, etc.) are scattered across multiple directories with ugly encoded paths. Users don't know:
|
|
8
|
+
- What customizations they have
|
|
9
|
+
- Which scope each one applies to
|
|
10
|
+
- Whether something is in the wrong scope
|
|
11
|
+
- How parent-child scope inheritance works
|
|
12
|
+
|
|
13
|
+
## Solution
|
|
14
|
+
|
|
15
|
+
A lightweight web dashboard + MCP server that:
|
|
16
|
+
1. Scans all Claude Code customizations
|
|
17
|
+
2. Displays them in a scope-aware hierarchy
|
|
18
|
+
3. Lets users drag-and-drop items between scopes
|
|
19
|
+
4. Syncs changes to git for versioning
|
|
20
|
+
|
|
21
|
+
## Competitive Landscape (researched 2026-03-18)
|
|
22
|
+
|
|
23
|
+
### Direct Competitors
|
|
24
|
+
|
|
25
|
+
| Tool | Type | Scope View | Move Between Scopes | Threat |
|
|
26
|
+
|---|---|:---:|:---:|:---:|
|
|
27
|
+
| [drewipson/claude-code-config](https://github.com/drewipson/claude-code-config) | VS Code ext (pre-release v0.1.2) | ✅ Tree view | ✅ Right-click move | ⚠️ Medium |
|
|
28
|
+
| [conradBruchmann/claude-admin](https://github.com/conradBruchmann/claude-admin) | Web dashboard (v0.1.9, Feb 2026) | Partial | ❌ | Low |
|
|
29
|
+
| [joeyism/claude-code-config](https://github.com/joeyism/claude-code-config) | TUI | MCP only | ✅ MCP only | Low |
|
|
30
|
+
| [Claude Deck](https://claudedeck.org/) | Web dashboard (React+FastAPI) | ❌ | ❌ | Low |
|
|
31
|
+
| [claude-code-backup](https://github.com/Ranteck/claude-code-backup) | Backup scripts | ❌ | ❌ | None |
|
|
32
|
+
| [ocodista/claude-dashboard](https://github.com/ocodista/claude-dashboard) | Read-only HTML | ❌ | ❌ | None |
|
|
33
|
+
|
|
34
|
+
### Key Competitor Analysis
|
|
35
|
+
|
|
36
|
+
**drewipson/claude-code-config** — closest competitor:
|
|
37
|
+
- VS Code extension with tree view of memories, skills, hooks, permissions
|
|
38
|
+
- Right-click to move items between global and project scope
|
|
39
|
+
- **Gaps vs us:** VS Code only (not standalone), no drag-and-drop, no MCP servers, no scope hierarchy visualization, pre-release quality, no web UI
|
|
40
|
+
|
|
41
|
+
**conradBruchmann/claude-admin** — broadest feature set:
|
|
42
|
+
- Web dashboard covering skills, memory, MCP, agents, plugins, sessions, analytics
|
|
43
|
+
- Shipped Feb 20, 2026 — growing fast (33 commits, v0.1.9)
|
|
44
|
+
- **Gaps vs us:** No scope hierarchy view, no move between scopes, no drag-and-drop. Config editor, not inventory manager
|
|
45
|
+
|
|
46
|
+
### What Nobody Has Built (our lane)
|
|
47
|
+
|
|
48
|
+
No existing tool combines all three:
|
|
49
|
+
1. **Unified scope hierarchy** — all item types (memories, skills, MCP, hooks) organized by Global → workspace → project
|
|
50
|
+
2. **Move between scopes** via drag-and-drop or modal UI
|
|
51
|
+
3. **Standalone web dashboard** — not tied to VS Code or any IDE
|
|
52
|
+
|
|
53
|
+
### Anthropic Official Stance (researched 2026-03-18)
|
|
54
|
+
|
|
55
|
+
- `/config` is a per-scope settings toggle, NOT a cross-scope inventory
|
|
56
|
+
- No changelog entries, planned issues, or blog posts mention config dashboard / inventory
|
|
57
|
+
- Official plugin `claude-md-management` focuses on CLAUDE.md content quality, not scope management
|
|
58
|
+
- 2026 Anthropic focus: plugins ecosystem, remote control, scheduled tasks, auto memory, 1M context
|
|
59
|
+
- **Risk of Anthropic building this: LOW** — no signals in any channel
|
|
60
|
+
|
|
61
|
+
**Our unique angles:**
|
|
62
|
+
- Scope-aware hierarchy with drag-and-drop (nobody has this)
|
|
63
|
+
- Zero dependencies (single Node.js file + SortableJS CDN)
|
|
64
|
+
- Daily git versioning (track what changed over time)
|
|
65
|
+
- Cross-machine diff and export/import
|
|
66
|
+
- Standalone — works anywhere, not locked to VS Code
|
|
67
|
+
|
|
68
|
+
## Target User
|
|
69
|
+
|
|
70
|
+
Any Claude Code power user who has accumulated enough memories, skills, and configs that they need to organize and understand their setup.
|
|
71
|
+
|
|
72
|
+
---
|
|
73
|
+
|
|
74
|
+
## Architecture
|
|
75
|
+
|
|
76
|
+
### What We Manage
|
|
77
|
+
|
|
78
|
+
| Type | Has Sub-types | Has Scope | Can Move Scope | Storage |
|
|
79
|
+
|---|---|---|---|---|
|
|
80
|
+
| **Memory** | feedback / user / project / reference | Global, per-project | Yes — between memory folders | `.md` files with frontmatter |
|
|
81
|
+
| **Skills** | No | Global (`~/.claude/skills/`), per-repo (`.claude/skills/`) | Yes — between skill folders | Folders with `SKILL.md` |
|
|
82
|
+
| **MCP Servers** | No | Global (`.mcp.json`), workspace, per-repo | Yes — move JSON entry between `.mcp.json` files |
|
|
83
|
+
| **Hooks** | By event type (Stop, PreToolUse, PostToolUse, etc.) | Global, per-project, per-repo | Yes — move between `settings.json` files |
|
|
84
|
+
| **Commands** | No | Per-repo (`.claude/commands/`) | Yes — between command folders |
|
|
85
|
+
| **Plugins** | No | Global | No — installed globally only |
|
|
86
|
+
| **Config** | No | Global + per-project | No — locked, edit via Claude or manually |
|
|
87
|
+
| **Plans** | No | Global (`~/.claude/plans/`) | No — ephemeral |
|
|
88
|
+
| **Agents** | No | Per-repo (`.claude/agents/`) | Yes — between agent folders |
|
|
89
|
+
| **CLAUDE.md** | No | Global + per-repo | No — locked, edit manually |
|
|
90
|
+
|
|
91
|
+
### Scope Hierarchy
|
|
92
|
+
|
|
93
|
+
```
|
|
94
|
+
🌐 Global ← applies everywhere
|
|
95
|
+
↳ 📂 AlltrueAi (workspace) ← applies when cd ~/AlltrueAi/*
|
|
96
|
+
↳ 📂 ai-security-control-plane (project)
|
|
97
|
+
↳ 📂 ai-security-ui (project)
|
|
98
|
+
↳ 📂 rule-processor (project)
|
|
99
|
+
↳ 📂 MyGithub (project) ← applies when cd ~/MyGithub
|
|
100
|
+
↳ 📂 Documents (project) ← applies when cd ~/Documents
|
|
101
|
+
```
|
|
102
|
+
|
|
103
|
+
Child scopes inherit parent scope's memories, skills, and MCP servers.
|
|
104
|
+
|
|
105
|
+
### Move Safety Rules
|
|
106
|
+
|
|
107
|
+
- Memory → only to other memory folders
|
|
108
|
+
- Skill → only to other skill locations (global or per-repo)
|
|
109
|
+
- MCP → only between `.mcp.json` files
|
|
110
|
+
- Config/CLAUDE.md/Plans → locked, cannot move
|
|
111
|
+
- Every drag-and-drop shows a confirmation modal before executing
|
|
112
|
+
- Moves happen in real `~/.claude/` paths (not just the backup repo)
|
|
113
|
+
|
|
114
|
+
### Tech Stack
|
|
115
|
+
|
|
116
|
+
- **Server**: Single Node.js file (zero npm dependencies, built-in modules only)
|
|
117
|
+
- **Client**: HTML + CSS + [SortableJS](https://github.com/SortableJS/Sortable) via CDN (13KB)
|
|
118
|
+
- **Distribution**: MCP server + npm package (`npx @mcpware/claude-inventory`)
|
|
119
|
+
- **Also works as**: standalone `localhost` dashboard
|
|
120
|
+
|
|
121
|
+
### Platform Support
|
|
122
|
+
|
|
123
|
+
| Platform | Status | Notes |
|
|
124
|
+
|----------|:------:|-------|
|
|
125
|
+
| **Ubuntu / Linux** | ✅ Supported | Primary development and testing platform |
|
|
126
|
+
| **macOS** | ⚠️ Untested | `~/.claude/` path should work, needs verification |
|
|
127
|
+
| **Windows** | ❌ Not yet | Path handling needs adaptation (`C:\Users\...\.claude\`) |
|
|
128
|
+
| **WSL** | ⚠️ Untested | Should work like Linux, needs verification |
|
|
129
|
+
|
|
130
|
+
Current limitation: developed and tested on Ubuntu only. macOS and Windows support planned for future release.
|
|
131
|
+
|
|
132
|
+
**Cross-platform notes (researched 2026-03-18):**
|
|
133
|
+
- macOS: `~/.claude/` same as Linux, `os.homedir()` works → should work out of the box
|
|
134
|
+
- Windows: `%USERPROFILE%\.claude\`, but path encoding uses `--` for `:\` (known Claude Code bug [#14403](https://github.com/anthropics/claude-code/issues/14403))
|
|
135
|
+
- `CLAUDE_CONFIG_DIR` env var can override config location — should check this first
|
|
136
|
+
- `fs.rename` needs `EXDEV` fallback (copy+delete) for cross-filesystem moves
|
|
137
|
+
|
|
138
|
+
---
|
|
139
|
+
|
|
140
|
+
## Roadmap
|
|
141
|
+
|
|
142
|
+
### MVP 1 — View + Move + Sync ✅ DONE (2026-03-18)
|
|
143
|
+
- [x] UI mockup (see `mockup.html`)
|
|
144
|
+
- [x] Node.js server that scans real `~/.claude/` directory
|
|
145
|
+
- [x] Scope-aware hierarchy display (Global → projects → sub-projects)
|
|
146
|
+
- [x] Categories: Memory, Skills, MCP Servers, Config, Hooks, Plugins, Plans
|
|
147
|
+
- [x] SortableJS drag-and-drop between same-type scopes
|
|
148
|
+
- [x] Confirmation modal on every move
|
|
149
|
+
- [x] Move files in real `~/.claude/` paths
|
|
150
|
+
- [x] "Open in Editor" button (VS Code deeplink)
|
|
151
|
+
- [x] Search across all items
|
|
152
|
+
- [x] Multi-select filter pills with counts
|
|
153
|
+
- [x] Detail panel on click
|
|
154
|
+
- [x] Move-to modal with scope tree + correct indentation
|
|
155
|
+
- [x] Current scope indicator in move modal
|
|
156
|
+
- [x] Auto-scroll during drag
|
|
157
|
+
- [x] Locked items (config, plugins, plans) cannot be moved
|
|
158
|
+
- [x] Generic — no hardcoded paths, works on any user's machine
|
|
159
|
+
- [x] Frontend/backend separation (4 UI files, 3 backend files)
|
|
160
|
+
- [ ] Daily git sync (`sync.sh` + cron) — already working separately
|
|
161
|
+
- [ ] Export/import tarball
|
|
162
|
+
|
|
163
|
+
### MVP 2 — Inline Edit + Polish
|
|
164
|
+
- [ ] Click item → show full `.md` content in detail panel
|
|
165
|
+
- [ ] Edit content inline, save back to file
|
|
166
|
+
- [ ] Improve confirm modal design (show item icon, type, scope badges)
|
|
167
|
+
- [ ] Add Commands management
|
|
168
|
+
- [ ] Check `CLAUDE_CONFIG_DIR` env var for custom config paths
|
|
169
|
+
- [ ] `fs.rename` EXDEV fallback (copy + delete)
|
|
170
|
+
- [ ] Add Agents management
|
|
171
|
+
|
|
172
|
+
### MVP 3 — Dashboard Stats + Polish
|
|
173
|
+
- [ ] Stats panel (total counts, size, last modified)
|
|
174
|
+
- [ ] Scope inheritance visualization
|
|
175
|
+
- [ ] Cross-machine diff (compare two exports)
|
|
176
|
+
- [ ] Config health/lint (detect conflicts, redundancies)
|
|
177
|
+
- [ ] Dark mode toggle
|
|
178
|
+
|
|
179
|
+
### MVP 4 — MCP + npm Distribution
|
|
180
|
+
- [ ] Package as MCP server (`@mcpware/claude-inventory`)
|
|
181
|
+
- [ ] MCP tools: `scan_setup`, `move_memory`, `list_memories`, `export_setup`
|
|
182
|
+
- [ ] `npx @mcpware/claude-inventory` one-command start
|
|
183
|
+
- [ ] Publish to npm (@mcpware org)
|
|
184
|
+
- [ ] Register on Official MCP Registry
|
|
185
|
+
- [ ] Submit to awesome-mcp-servers
|
|
186
|
+
|
|
187
|
+
---
|
|
188
|
+
|
|
189
|
+
## UI Design
|
|
190
|
+
|
|
191
|
+
### Design Principles
|
|
192
|
+
- Light theme, clean, minimal
|
|
193
|
+
- Hierarchy: Scope headers (most prominent) > Category bars (medium) > Item rows (subtle)
|
|
194
|
+
- All light backgrounds with dark text
|
|
195
|
+
- Items indented under categories, categories indented under scopes
|
|
196
|
+
- Same-type icons: all memories use 🧠, all skills use ⚡, all MCP use 🔌, all scopes use 📂
|
|
197
|
+
|
|
198
|
+
### Current Mockup
|
|
199
|
+
See `mockup.html` — interactive prototype with:
|
|
200
|
+
- Collapsible scope/category sections
|
|
201
|
+
- SortableJS drag-and-drop (memory↔memory, skill↔skill, mcp↔mcp only)
|
|
202
|
+
- Drag confirmation modal
|
|
203
|
+
- Detail panel on click
|
|
204
|
+
- Search and filter pills
|
|
205
|
+
- Scope inheritance indicators (`↳ Inherits 🌐 Global 📂 AlltrueAi`)
|
|
206
|
+
|
|
207
|
+
### Color Palette
|
|
208
|
+
```
|
|
209
|
+
Background: #fafbfc
|
|
210
|
+
Surface: #ffffff
|
|
211
|
+
Border: #e2e4ea
|
|
212
|
+
Text primary: #1e2028
|
|
213
|
+
Text secondary: #5a5d6e
|
|
214
|
+
Text muted: #9598a8
|
|
215
|
+
Accent: #5b5fc7 (indigo)
|
|
216
|
+
Accent light: #ededfa
|
|
217
|
+
Scope bg: #f0f1f8
|
|
218
|
+
Category bg: #f6f7fb
|
|
219
|
+
|
|
220
|
+
Tags:
|
|
221
|
+
Global: bg #e8e9fa text #5b5fc7
|
|
222
|
+
Workspace: bg #fef0e4 text #c67a2e
|
|
223
|
+
Project: bg #e4f6ec text #2d8a56
|
|
224
|
+
|
|
225
|
+
Badges:
|
|
226
|
+
feedback: #e6960a
|
|
227
|
+
user: #7c3aed
|
|
228
|
+
project: #2563eb
|
|
229
|
+
reference: #059669
|
|
230
|
+
skill: #ea580c
|
|
231
|
+
mcp: #d946a8
|
|
232
|
+
config: #9ca3af
|
|
233
|
+
```
|
|
234
|
+
|
|
235
|
+
---
|
|
236
|
+
|
|
237
|
+
## Research Sources
|
|
238
|
+
|
|
239
|
+
- [Drag-and-drop research](../.claude/skills/claude-inventory/) — SortableJS recommended over raw HTML5 DnD
|
|
240
|
+
- [Market research: existing tools](PLAN.md#competitive-landscape)
|
|
241
|
+
- [MCP ecosystem analysis](https://github.com/punkpeye/awesome-mcp-servers) — 83K stars, 600+ servers
|
|
242
|
+
- [Claude Code GitHub issues](https://github.com/anthropics/claude-code) — 280+ issues about config/memory management
|
|
243
|
+
- [Official MCP Registry](https://registry.modelcontextprotocol.io/) — distribution channel
|
package/README.md
ADDED
|
@@ -0,0 +1,123 @@
|
|
|
1
|
+
# Claude Code Organizer
|
|
2
|
+
|
|
3
|
+
**Organize all your Claude Code memories, skills, MCP servers, and hooks — view by scope hierarchy, move between scopes via drag-and-drop.**
|
|
4
|
+
|
|
5
|
+
Claude Code saves your customizations across scattered directories with encoded paths. This tool gives you a visual dashboard to see everything, understand which scope each item applies to, and move items between scopes with one click.
|
|
6
|
+
|
|
7
|
+
---
|
|
8
|
+
|
|
9
|
+
## Features
|
|
10
|
+
|
|
11
|
+
- **Scope-aware hierarchy** — See all items organized as Global > Workspace > Project, with inheritance indicators
|
|
12
|
+
- **Drag-and-drop** — Move memories between scopes, skills between global and per-repo, MCP servers between configs
|
|
13
|
+
- **Move confirmation** — Every move shows a confirmation modal before touching any files
|
|
14
|
+
- **Same-type safety** — Memories can only move to memory folders, skills to skill folders, MCP to MCP configs
|
|
15
|
+
- **Search & filter** — Instantly search across all items, filter by category (Memory, Skills, MCP, Config, Hooks, Plugins, Plans)
|
|
16
|
+
- **Detail panel** — Click any item to see full metadata, description, file path, and open in VS Code
|
|
17
|
+
- **Zero dependencies** — Pure Node.js built-in modules, SortableJS via CDN
|
|
18
|
+
- **Real file moves** — Actually moves files in `~/.claude/`, not just a viewer
|
|
19
|
+
|
|
20
|
+
## Quick Start
|
|
21
|
+
|
|
22
|
+
```bash
|
|
23
|
+
# Run directly (no install needed)
|
|
24
|
+
npx @mcpware/claude-code-organizer
|
|
25
|
+
|
|
26
|
+
# Or install globally
|
|
27
|
+
npm install -g @mcpware/claude-code-organizer
|
|
28
|
+
claude-code-organizer
|
|
29
|
+
```
|
|
30
|
+
|
|
31
|
+
Opens a dashboard at `http://localhost:3847`. Works with your real `~/.claude/` directory.
|
|
32
|
+
|
|
33
|
+
## What It Manages
|
|
34
|
+
|
|
35
|
+
| Type | View | Move Between Scopes |
|
|
36
|
+
|------|:----:|:-------------------:|
|
|
37
|
+
| Memories (feedback, user, project, reference) | Yes | Yes |
|
|
38
|
+
| Skills | Yes | Yes |
|
|
39
|
+
| MCP Servers | Yes | Yes |
|
|
40
|
+
| Config (CLAUDE.md, settings.json) | Yes | Locked |
|
|
41
|
+
| Hooks | Yes | Locked |
|
|
42
|
+
| Plugins | Yes | Locked |
|
|
43
|
+
| Plans | Yes | Locked |
|
|
44
|
+
|
|
45
|
+
## Scope Hierarchy
|
|
46
|
+
|
|
47
|
+
```
|
|
48
|
+
Global <- applies everywhere
|
|
49
|
+
AlltrueAi (workspace) <- applies to all sub-projects
|
|
50
|
+
ai-security-control-plane <- project-specific
|
|
51
|
+
rule-processor <- project-specific
|
|
52
|
+
MyGithub (project) <- independent project
|
|
53
|
+
Documents (project) <- independent project
|
|
54
|
+
```
|
|
55
|
+
|
|
56
|
+
Child scopes inherit parent scope's memories, skills, and MCP servers.
|
|
57
|
+
|
|
58
|
+
## How It Works
|
|
59
|
+
|
|
60
|
+
1. **Scans** `~/.claude/` — discovers all projects, memories, skills, MCP servers, hooks, plugins, plans
|
|
61
|
+
2. **Resolves scope hierarchy** — determines parent-child relationships from filesystem paths
|
|
62
|
+
3. **Renders dashboard** — scope headers > category bars > item rows, with proper indentation
|
|
63
|
+
4. **Handles moves** — when you drag or click "Move to...", actually moves files on disk with safety checks
|
|
64
|
+
|
|
65
|
+
## Comparison
|
|
66
|
+
|
|
67
|
+
| Feature | Claude Code Organizer | [claude-control](https://github.com/code-by-gunnar/claude-control) | [claude-admin](https://github.com/conradBruchmann/claude-admin) | [Claude Deck](https://claudedeck.org/) |
|
|
68
|
+
|---------|:--------------------:|:--------------:|:------------:|:----------:|
|
|
69
|
+
| View by scope hierarchy | Yes | Yes | Partial | No |
|
|
70
|
+
| Move between scopes | **Yes** | No (read-only) | No | No |
|
|
71
|
+
| Drag-and-drop | **Yes** | No | No | No |
|
|
72
|
+
| Memories management | **Yes** | No | Yes | No |
|
|
73
|
+
| Skills management | **Yes** | Yes | Yes | No |
|
|
74
|
+
| MCP management | **Yes** | Yes | Yes | Yes |
|
|
75
|
+
| Zero dependencies | **Yes** | No | No | No (React+FastAPI+SQLite) |
|
|
76
|
+
| Standalone (no IDE) | **Yes** | Yes | Yes | Yes |
|
|
77
|
+
|
|
78
|
+
## Platform Support
|
|
79
|
+
|
|
80
|
+
| Platform | Status |
|
|
81
|
+
|----------|:------:|
|
|
82
|
+
| Ubuntu / Linux | Supported |
|
|
83
|
+
| macOS | Should work (untested) |
|
|
84
|
+
| Windows | Not yet |
|
|
85
|
+
| WSL | Should work (untested) |
|
|
86
|
+
|
|
87
|
+
## Project Structure
|
|
88
|
+
|
|
89
|
+
```
|
|
90
|
+
src/
|
|
91
|
+
scanner.mjs # Scans ~/.claude/ — pure data, no side effects
|
|
92
|
+
mover.mjs # Moves files between scopes — safety checks + rollback
|
|
93
|
+
server.mjs # HTTP server — routes only, no logic
|
|
94
|
+
ui/
|
|
95
|
+
index.html # HTML structure
|
|
96
|
+
style.css # All styling (edit freely, won't break logic)
|
|
97
|
+
app.js # Frontend rendering + SortableJS + interactions
|
|
98
|
+
bin/
|
|
99
|
+
cli.mjs # Entry point
|
|
100
|
+
```
|
|
101
|
+
|
|
102
|
+
Frontend and backend are fully separated. Edit `src/ui/` files to change the look without touching any logic.
|
|
103
|
+
|
|
104
|
+
## API
|
|
105
|
+
|
|
106
|
+
The dashboard is backed by a REST API:
|
|
107
|
+
|
|
108
|
+
| Endpoint | Method | Description |
|
|
109
|
+
|----------|--------|-------------|
|
|
110
|
+
| `/api/scan` | GET | Scan all customizations, returns scopes + items + counts |
|
|
111
|
+
| `/api/move` | POST | Move an item to a different scope |
|
|
112
|
+
| `/api/destinations` | GET | Get valid move destinations for an item |
|
|
113
|
+
| `/api/file-content` | GET | Read file content for detail panel |
|
|
114
|
+
|
|
115
|
+
## License
|
|
116
|
+
|
|
117
|
+
MIT
|
|
118
|
+
|
|
119
|
+
## Author
|
|
120
|
+
|
|
121
|
+
[mcpware](https://github.com/mcpware) — Building tools for the Claude Code ecosystem.
|
|
122
|
+
|
|
123
|
+
See also: [@mcpware/instagram-mcp](https://github.com/mcpware/instagram-mcp)
|
package/SHIP.md
ADDED
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# Ship Plan — claude-code-organizer
|
|
2
|
+
|
|
3
|
+
> Follow side-hustle/3-ship/ship-workflow.md template
|
|
4
|
+
> Created: 2026-03-18
|
|
5
|
+
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
## Phase 0: Launch Checklist (TODAY)
|
|
9
|
+
|
|
10
|
+
### README
|
|
11
|
+
- [ ] One-line description (3 seconds)
|
|
12
|
+
- [ ] Screenshot / demo GIF at the top
|
|
13
|
+
- [ ] Features bullet list
|
|
14
|
+
- [ ] Quick Start (`npx @mcpware/claude-code-organizer`)
|
|
15
|
+
- [ ] Comparison table (vs claude-control, claude-admin, claude-deck)
|
|
16
|
+
- [ ] Usage examples
|
|
17
|
+
|
|
18
|
+
### GitHub Repo Setup
|
|
19
|
+
- [ ] Description ✅ (already set)
|
|
20
|
+
- [ ] Topics / Tags (use all 20)
|
|
21
|
+
- [ ] Social Preview Image (1280×640) — use Canva MCP
|
|
22
|
+
- [ ] LICENSE file (MIT)
|
|
23
|
+
- [ ] .gitignore
|
|
24
|
+
- [ ] Release tag (v0.1.0)
|
|
25
|
+
- [ ] Badges (version, license, npm downloads)
|
|
26
|
+
|
|
27
|
+
### Package Registry
|
|
28
|
+
- [ ] `npm publish --access public` as `@mcpware/claude-code-organizer`
|
|
29
|
+
- [ ] Also publish as `claude-code-organizer` (unscoped, for discoverability)
|
|
30
|
+
|
|
31
|
+
### Plugin Marketplace
|
|
32
|
+
- [ ] Create `.claude-plugin/plugin.json` manifest
|
|
33
|
+
- [ ] Create marketplace repo `mcpware/marketplace`
|
|
34
|
+
- [ ] Submit to Anthropic official marketplace (claude.ai/settings/plugins/submit)
|
|
35
|
+
|
|
36
|
+
---
|
|
37
|
+
|
|
38
|
+
## Phase 1: Registry Registration (Day 1-2)
|
|
39
|
+
|
|
40
|
+
| Platform | URL | Status | Notes |
|
|
41
|
+
|----------|-----|:------:|-------|
|
|
42
|
+
| **npm** | npmjs.com | [ ] | `@mcpware/claude-code-organizer` + `claude-code-organizer` |
|
|
43
|
+
| **Anthropic Plugin Marketplace** | claude.ai/settings/plugins/submit | [ ] | Official, needs review |
|
|
44
|
+
| **Official MCP Registry** | registry.modelcontextprotocol.io | [ ] | Submit via `mcp-publisher` CLI |
|
|
45
|
+
| **awesome-mcp-servers** | github.com/punkpeye/awesome-mcp-servers | [ ] | PR (need Glama listing first) |
|
|
46
|
+
| **awesome-claude-code** | github.com/hesreallyhim/awesome-claude-code | [ ] | PR |
|
|
47
|
+
| **awesome-claude-plugins** | github.com/ComposioHQ/awesome-claude-plugins | [ ] | PR |
|
|
48
|
+
| **Glama.ai** | glama.ai/mcp/servers | [ ] | Need Dockerfile + glama.json + release tag |
|
|
49
|
+
| **MCP.so** | mcp.so | [ ] | Submit form |
|
|
50
|
+
| **Smithery.ai** | smithery.ai | [ ] | Submit MCP server |
|
|
51
|
+
| **MCPServers.org** | mcpservers.org | [ ] | Submit to directory |
|
|
52
|
+
| **PulseMCP** | pulsemcp.com | [ ] | Submit |
|
|
53
|
+
| **mcpmarket.com** | mcpmarket.com | [ ] | Submit |
|
|
54
|
+
|
|
55
|
+
### Glama Requirements (blocks awesome-mcp-servers PR)
|
|
56
|
+
- [ ] Add `Dockerfile`
|
|
57
|
+
- [ ] Add `glama.json`
|
|
58
|
+
- [ ] Create GitHub Release v0.1.0
|
|
59
|
+
- [ ] Submit to Glama → Claim → Wait for indexing
|
|
60
|
+
|
|
61
|
+
---
|
|
62
|
+
|
|
63
|
+
## Phase 2: Social Media Launch (Day 2-5)
|
|
64
|
+
|
|
65
|
+
| Day | Platform | Content | Status |
|
|
66
|
+
|-----|----------|---------|:------:|
|
|
67
|
+
| Day 2 | Reddit r/ClaudeAI | "I built a visual organizer for Claude Code memories, skills, and MCP servers" | [ ] |
|
|
68
|
+
| Day 2 | Reddit r/MCP | Technical angle — scope hierarchy + drag-and-drop | [ ] |
|
|
69
|
+
| Day 3 | Twitter/X | Thread: problem → solution → demo GIF → link | [ ] |
|
|
70
|
+
| Day 4 | Dev.to | Blog post: "I was drowning in 84 Claude Code config files" | [ ] |
|
|
71
|
+
| Day 5 | LinkedIn | Professional: "Built an open-source tool used by X developers" | [ ] |
|
|
72
|
+
|
|
73
|
+
---
|
|
74
|
+
|
|
75
|
+
## Phase 3: Content Angles
|
|
76
|
+
|
|
77
|
+
### Problem-first (Dev.to, HN)
|
|
78
|
+
> "Claude Code saves memories, skills, MCP servers, and hooks across 5+ scattered directories with ugly encoded paths. I had 84 config files and couldn't tell which scope each one applied to. So I built Claude Code Organizer — a visual dashboard that shows everything organized by scope hierarchy with drag-and-drop to move items between scopes."
|
|
79
|
+
|
|
80
|
+
### Comparison (Reddit, Twitter)
|
|
81
|
+
> "There are 10+ Claude Code config tools, but none let you actually MOVE items between scopes. claude-control is read-only. Claude Deck needs React+FastAPI+SQLite. I built a zero-dependency organizer with real drag-and-drop. Here's how they compare: [table]"
|
|
82
|
+
|
|
83
|
+
### Build-in-public (Twitter)
|
|
84
|
+
> "Day 1: Built a scope-aware inventory manager for Claude Code in one session. Zero npm dependencies, SortableJS for drag-and-drop. Here's what I learned about Claude's config system..."
|
|
85
|
+
|
|
86
|
+
---
|
|
87
|
+
|
|
88
|
+
## Execution Order (Today)
|
|
89
|
+
|
|
90
|
+
1. ~~Rename repo~~ ✅
|
|
91
|
+
2. Write README
|
|
92
|
+
3. Add LICENSE, .gitignore, topics
|
|
93
|
+
4. npm publish
|
|
94
|
+
5. Create plugin structure
|
|
95
|
+
6. Create GitHub Release v0.1.0
|
|
96
|
+
7. Submit to registries
|
package/bin/cli.mjs
ADDED
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
#!/usr/bin/env node
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* cli.mjs — Entry point for Claude Inventory Manager.
|
|
5
|
+
* Usage: node bin/cli.mjs [--port 3847]
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
import { startServer } from "../src/server.mjs";
|
|
9
|
+
import { execSync } from "node:child_process";
|
|
10
|
+
|
|
11
|
+
const args = process.argv.slice(2);
|
|
12
|
+
const portIdx = args.indexOf("--port");
|
|
13
|
+
const port = portIdx !== -1 ? parseInt(args[portIdx + 1], 10) : 3847;
|
|
14
|
+
|
|
15
|
+
const server = startServer(port);
|
|
16
|
+
|
|
17
|
+
// Try to open browser
|
|
18
|
+
try {
|
|
19
|
+
const openCmd = process.platform === "darwin" ? "open" : "xdg-open";
|
|
20
|
+
execSync(`${openCmd} http://localhost:${port}`, { stdio: "ignore" });
|
|
21
|
+
} catch {
|
|
22
|
+
// Browser didn't open, user can navigate manually
|
|
23
|
+
}
|