@elliotxx/claude-list 0.1.1 → 0.1.3
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/CHANGELOG.md +79 -0
- package/README.md +72 -29
- package/npm-shrinkwrap.json +2 -2
- package/package.json +2 -2
package/CHANGELOG.md
ADDED
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
# Changelog
|
|
2
|
+
|
|
3
|
+
All notable changes to this project will be documented in this file.
|
|
4
|
+
|
|
5
|
+
The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/),
|
|
6
|
+
and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0.html).
|
|
7
|
+
|
|
8
|
+
## [Unreleased]
|
|
9
|
+
|
|
10
|
+
## [0.1.3] - 2026-02-01
|
|
11
|
+
|
|
12
|
+
### Documentation
|
|
13
|
+
|
|
14
|
+
- Updated implementation task tracking for v0.1.2 colored output and search features
|
|
15
|
+
- Marked all 39 tasks as complete in specs/002-colored-output-search/tasks.md
|
|
16
|
+
|
|
17
|
+
## [0.1.2] - 2026-01-31
|
|
18
|
+
|
|
19
|
+
### Added
|
|
20
|
+
|
|
21
|
+
- **Colored Output**: Components are now displayed with distinct colors for easy identification:
|
|
22
|
+
- Plugins: Blue
|
|
23
|
+
- Skills: Green
|
|
24
|
+
- MCP Servers: Yellow
|
|
25
|
+
- Hooks: Magenta
|
|
26
|
+
- Agents: Red
|
|
27
|
+
- Commands: Orange
|
|
28
|
+
- Version Numbers: Gray
|
|
29
|
+
|
|
30
|
+
- **Search Functionality**:
|
|
31
|
+
- Single keyword search (`--search keyword`)
|
|
32
|
+
- Multi-keyword AND search (`--search "keyword1 keyword2"`)
|
|
33
|
+
- Case-insensitive matching
|
|
34
|
+
- Works with all output modes (compact, detailed, JSON)
|
|
35
|
+
|
|
36
|
+
- **Color Control**:
|
|
37
|
+
- `--no-color` flag to disable colors
|
|
38
|
+
- `NO_COLOR` environment variable support
|
|
39
|
+
- Automatic color disabling for non-TTY output (pipes, files)
|
|
40
|
+
|
|
41
|
+
### Changed
|
|
42
|
+
|
|
43
|
+
- Improved table alignment in detailed output mode (`-l`)
|
|
44
|
+
- Colors automatically disabled when output is piped or redirected
|
|
45
|
+
|
|
46
|
+
### Fixed
|
|
47
|
+
|
|
48
|
+
- Fixed ANSI escape sequence handling for proper column alignment
|
|
49
|
+
- Fixed width calculation for Unicode characters with colors
|
|
50
|
+
|
|
51
|
+
### Performance
|
|
52
|
+
|
|
53
|
+
- Search operations complete in under 100ms for typical configurations
|
|
54
|
+
- Color rendering adds minimal overhead (<5ms)
|
|
55
|
+
|
|
56
|
+
## [0.1.1] - 2026-01-29
|
|
57
|
+
|
|
58
|
+
### Added
|
|
59
|
+
|
|
60
|
+
- Initial release with basic component listing
|
|
61
|
+
- Support for all component types: plugins, skills, sessions, MCP servers, hooks, agents, commands
|
|
62
|
+
- Multiple output modes: compact, detailed (`-l`), JSON
|
|
63
|
+
- Filter flags for each component type
|
|
64
|
+
- Test fixtures for all component types
|
|
65
|
+
|
|
66
|
+
### Features
|
|
67
|
+
|
|
68
|
+
- Parse `.claude/settings.json` for plugins
|
|
69
|
+
- Parse `.claude/skills/` directory for skills
|
|
70
|
+
- Parse `.claude/sessions/` for session history
|
|
71
|
+
- Parse `.claude/mcp.json` for MCP servers
|
|
72
|
+
- Parse `.claude/hooks/` for hooks
|
|
73
|
+
- Parse `.claude/agents/` for agents
|
|
74
|
+
- Parse `.claude/commands/` for commands
|
|
75
|
+
|
|
76
|
+
[Unreleased]: https://github.com/elliotxx/claude-list/compare/v0.1.3...HEAD
|
|
77
|
+
[0.1.3]: https://github.com/elliotxx/claude-list/releases/tag/v0.1.3
|
|
78
|
+
[0.1.2]: https://github.com/elliotxx/claude-list/releases/tag/v0.1.2
|
|
79
|
+
[0.1.1]: https://github.com/elliotxx/claude-list/releases/tag/v0.1.1
|
package/README.md
CHANGED
|
@@ -28,10 +28,10 @@
|
|
|
28
28
|
|
|
29
29
|
## Latest News 🔥
|
|
30
30
|
|
|
31
|
+
- **[2026/01]** Released v0.1.2 with colored output and search functionality
|
|
32
|
+
- **[2026/01]** Released v0.1.1 with `-l` flag support and npm package
|
|
31
33
|
- **[2026/01]** Published to crates.io - now installable via `cargo install claude-list`
|
|
32
34
|
- **[2026/01]** Added Homebrew support with cargo-dist multi-platform builds
|
|
33
|
-
- **[2026/01]** Released v0.1.0 with compact, detailed, and JSON output modes
|
|
34
|
-
- **[2026/01]** Implemented 7 component parsers (plugins, skills, sessions, mcp, hooks, agents, commands)
|
|
35
35
|
|
|
36
36
|
---
|
|
37
37
|
|
|
@@ -51,8 +51,11 @@ A Rust CLI tool that follows Unix philosophy—do one thing well. It reads your
|
|
|
51
51
|
## Quick Start
|
|
52
52
|
|
|
53
53
|
```bash
|
|
54
|
-
# Install
|
|
55
|
-
|
|
54
|
+
# Install via Homebrew (macOS)
|
|
55
|
+
brew tap elliotxx/tap && brew install elliotxx/tap/claude-list
|
|
56
|
+
|
|
57
|
+
# OR via shell script (Linux/macOS)
|
|
58
|
+
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elliotxx/claude-list/releases/latest/download/claude-list-installer.sh | sh
|
|
56
59
|
|
|
57
60
|
# View your Claude Code environment
|
|
58
61
|
claude-list
|
|
@@ -68,10 +71,43 @@ claude-list
|
|
|
68
71
|
|
|
69
72
|
| Mode | Command | Description |
|
|
70
73
|
|------|---------|-------------|
|
|
71
|
-
| Compact | `claude-list` | Summary with counts |
|
|
74
|
+
| Compact | `claude-list` | Summary with counts (colored by type) |
|
|
72
75
|
| Detailed | `claude-list -l` | Full info with version, source, path |
|
|
73
76
|
| JSON | `claude-list --json` | Machine-readable output |
|
|
74
77
|
|
|
78
|
+
### Colored Output
|
|
79
|
+
|
|
80
|
+
Components are displayed with distinct colors for easy identification:
|
|
81
|
+
|
|
82
|
+
| Component Type | Color |
|
|
83
|
+
|----------------|-------|
|
|
84
|
+
| Plugins | Blue |
|
|
85
|
+
| Skills | Green |
|
|
86
|
+
| MCP Servers | Yellow |
|
|
87
|
+
| Hooks | Magenta |
|
|
88
|
+
| Agents | Red |
|
|
89
|
+
| Commands | Orange |
|
|
90
|
+
|
|
91
|
+
Colors are automatically disabled when:
|
|
92
|
+
- Using `--no-color` flag
|
|
93
|
+
- `NO_COLOR` environment variable is set
|
|
94
|
+
- Output is piped or redirected
|
|
95
|
+
|
|
96
|
+
### Search
|
|
97
|
+
|
|
98
|
+
Search for components by name with flexible matching:
|
|
99
|
+
|
|
100
|
+
```bash
|
|
101
|
+
# Single keyword (case-insensitive)
|
|
102
|
+
claude-list --search context
|
|
103
|
+
|
|
104
|
+
# Multiple keywords (AND logic - all must match)
|
|
105
|
+
claude-list --search "context plugin"
|
|
106
|
+
|
|
107
|
+
# Combine with filters
|
|
108
|
+
claude-list --search api --plugins
|
|
109
|
+
```
|
|
110
|
+
|
|
75
111
|
### Filtering
|
|
76
112
|
|
|
77
113
|
Filter to show specific component types:
|
|
@@ -102,7 +138,7 @@ claude-list --config /path/to/.claude
|
|
|
102
138
|
### Compact Mode (Default)
|
|
103
139
|
|
|
104
140
|
```
|
|
105
|
-
CLAUDE-LIST v0.1.
|
|
141
|
+
CLAUDE-LIST v0.1.2
|
|
106
142
|
|
|
107
143
|
CONFIG: /Users/user/.claude
|
|
108
144
|
|
|
@@ -125,7 +161,7 @@ MCP 2 servers
|
|
|
125
161
|
### Detailed Mode (`-l`)
|
|
126
162
|
|
|
127
163
|
```
|
|
128
|
-
CLAUDE-LIST v0.1.
|
|
164
|
+
CLAUDE-LIST v0.1.2
|
|
129
165
|
|
|
130
166
|
CONFIG: /Users/user/.claude
|
|
131
167
|
|
|
@@ -141,7 +177,7 @@ PLUGINS 3 installed
|
|
|
141
177
|
|
|
142
178
|
```json
|
|
143
179
|
{
|
|
144
|
-
"version": "0.1.
|
|
180
|
+
"version": "0.1.2",
|
|
145
181
|
"config_dir": "/Users/user/.claude",
|
|
146
182
|
"plugins": [...],
|
|
147
183
|
"skills": [...],
|
|
@@ -157,19 +193,31 @@ PLUGINS 3 installed
|
|
|
157
193
|
|
|
158
194
|
## Installation
|
|
159
195
|
|
|
160
|
-
### Option 1: From
|
|
196
|
+
### Option 1: From Homebrew (macOS)
|
|
161
197
|
|
|
162
198
|
```bash
|
|
163
|
-
|
|
199
|
+
brew tap elliotxx/tap && brew install elliotxx/tap/claude-list
|
|
164
200
|
```
|
|
165
201
|
|
|
166
|
-
### Option 2: From
|
|
202
|
+
### Option 2: From Shell Script (Linux/macOS)
|
|
167
203
|
|
|
168
204
|
```bash
|
|
169
|
-
|
|
205
|
+
curl --proto '=https' --tlsv1.2 -LsSf https://github.com/elliotxx/claude-list/releases/latest/download/claude-list-installer.sh | sh
|
|
206
|
+
```
|
|
207
|
+
|
|
208
|
+
### Option 3: From npm
|
|
209
|
+
|
|
210
|
+
```bash
|
|
211
|
+
npm install -g @elliotxx/claude-list
|
|
170
212
|
```
|
|
171
213
|
|
|
172
|
-
### Option
|
|
214
|
+
### Option 4: From crates.io
|
|
215
|
+
|
|
216
|
+
```bash
|
|
217
|
+
cargo install claude-list
|
|
218
|
+
```
|
|
219
|
+
|
|
220
|
+
### Option 5: From GitHub Releases
|
|
173
221
|
|
|
174
222
|
Download pre-built binaries from [GitHub Releases](https://github.com/elliotxx/claude-list/releases):
|
|
175
223
|
|
|
@@ -185,7 +233,7 @@ tar -xzf claude-list-aarch64-apple-darwin.tar.gz
|
|
|
185
233
|
./claude-list
|
|
186
234
|
```
|
|
187
235
|
|
|
188
|
-
### Option
|
|
236
|
+
### Option 6: From Source
|
|
189
237
|
|
|
190
238
|
```bash
|
|
191
239
|
git clone https://github.com/elliotxx/claude-list.git
|
|
@@ -198,12 +246,6 @@ cargo install --path .
|
|
|
198
246
|
|
|
199
247
|
## Architecture
|
|
200
248
|
|
|
201
|
-
### System Overview
|
|
202
|
-
|
|
203
|
-
<div align="center">
|
|
204
|
-
<img src="https://via.placeholder.com/750x400?text=claude-list+Architecture" alt="Architecture Diagram" width="750">
|
|
205
|
-
</div>
|
|
206
|
-
|
|
207
249
|
### Component Architecture
|
|
208
250
|
|
|
209
251
|
```
|
|
@@ -243,7 +285,7 @@ cargo install --path .
|
|
|
243
285
|
### Key Design Decisions
|
|
244
286
|
|
|
245
287
|
- **Pattern Used**: Unix philosophy—single responsibility, compose simple tools
|
|
246
|
-
- **Technology Stack**: Rust 1.75+, clap (CLI), serde (JSON), anyhow (error handling)
|
|
288
|
+
- **Technology Stack**: Rust 1.75+, clap (CLI), serde (JSON), anyhow (error handling), anstyle (colors), unicode-width (ANSI width)
|
|
247
289
|
- **Scalability**: Each parser is independent, easy to extend
|
|
248
290
|
- **Error Handling**: Graceful degradation for missing files
|
|
249
291
|
|
|
@@ -326,13 +368,13 @@ Releases are automated via [cargo-dist](https://dist.clap.rs/):
|
|
|
326
368
|
|
|
327
369
|
```bash
|
|
328
370
|
# 1. Update version in Cargo.toml
|
|
329
|
-
# Edit Cargo.toml: version = "0.1.
|
|
371
|
+
# Edit Cargo.toml: version = "0.1.2" → "0.1.3"
|
|
330
372
|
|
|
331
373
|
# 2. Commit version change
|
|
332
|
-
git add -A && git commit -m "chore: bump version to 0.1.
|
|
374
|
+
git add -A && git commit -m "chore: bump version to 0.1.3"
|
|
333
375
|
|
|
334
376
|
# 3. Create git tag
|
|
335
|
-
git tag 0.1.
|
|
377
|
+
git tag 0.1.3
|
|
336
378
|
|
|
337
379
|
# 4. Push to GitHub (including tags)
|
|
338
380
|
git push && git push --tags
|
|
@@ -345,10 +387,11 @@ cargo publish
|
|
|
345
387
|
|
|
346
388
|
### CI Tokens Required
|
|
347
389
|
|
|
348
|
-
| Secret | Purpose
|
|
349
|
-
|
|
390
|
+
| Secret | Purpose | Location |
|
|
391
|
+
|--------|---------|----------|
|
|
350
392
|
| `CARGO_REGISTRY_TOKEN` | Publish to crates.io | [crates.io/settings/tokens](https://crates.io/settings/tokens) |
|
|
351
393
|
| `HOMEBREW_TAP_TOKEN` | Publish to Homebrew | [GitHub Settings](https://github.com/settings/tokens) |
|
|
394
|
+
| `NPM_TOKEN` | Publish to npm (requires 2FA bypass) | [npmjs.com/settings/tokens](https://www.npmjs.com/settings/tokens) |
|
|
352
395
|
|
|
353
396
|
---
|
|
354
397
|
|
|
@@ -367,7 +410,7 @@ We welcome contributions! Feel free to submit issues and pull requests.
|
|
|
367
410
|
|
|
368
411
|
```bash
|
|
369
412
|
# Fork the repository on GitHub, then clone your fork
|
|
370
|
-
git clone https://github.com/
|
|
413
|
+
git clone https://github.com/elliotxx/claude-list.git
|
|
371
414
|
cd claude-list
|
|
372
415
|
|
|
373
416
|
# Follow installation steps above
|
|
@@ -399,7 +442,7 @@ This project is licensed under the **MIT License** - see the [LICENSE](LICENSE)
|
|
|
399
442
|
|
|
400
443
|
<div align="center">
|
|
401
444
|
<p>
|
|
402
|
-
<strong>Built with ❤️ for
|
|
403
|
-
<sub>Parse and display your Claude Code
|
|
445
|
+
<strong>Built with ❤️ for elliotxx</strong><br>
|
|
446
|
+
<sub>Parse and display your Claude Code Info</sub>
|
|
404
447
|
</p>
|
|
405
448
|
</div>
|
package/npm-shrinkwrap.json
CHANGED
|
@@ -23,7 +23,7 @@
|
|
|
23
23
|
"hasInstallScript": true,
|
|
24
24
|
"license": "MIT",
|
|
25
25
|
"name": "@elliotxx/claude-list",
|
|
26
|
-
"version": "0.1.
|
|
26
|
+
"version": "0.1.3"
|
|
27
27
|
},
|
|
28
28
|
"node_modules/@isaacs/balanced-match": {
|
|
29
29
|
"engines": {
|
|
@@ -515,5 +515,5 @@
|
|
|
515
515
|
}
|
|
516
516
|
},
|
|
517
517
|
"requires": true,
|
|
518
|
-
"version": "0.1.
|
|
518
|
+
"version": "0.1.3"
|
|
519
519
|
}
|
package/package.json
CHANGED
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
{
|
|
2
|
-
"artifactDownloadUrl": "https://github.com/elliotxx/claude-list/releases/download/
|
|
2
|
+
"artifactDownloadUrl": "https://github.com/elliotxx/claude-list/releases/download/v0.1.3",
|
|
3
3
|
"author": "elliot <951376975@qq.com>",
|
|
4
4
|
"bin": {
|
|
5
5
|
"claude-list": "run-claude-list.js"
|
|
@@ -84,7 +84,7 @@
|
|
|
84
84
|
"zipExt": ".tar.xz"
|
|
85
85
|
}
|
|
86
86
|
},
|
|
87
|
-
"version": "0.1.
|
|
87
|
+
"version": "0.1.3",
|
|
88
88
|
"volta": {
|
|
89
89
|
"node": "18.14.1",
|
|
90
90
|
"npm": "9.5.0"
|