@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 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 from crates.io
55
- cargo install claude-list
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.0
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.0
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.0",
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 crates.io (Recommended)
196
+ ### Option 1: From Homebrew (macOS)
161
197
 
162
198
  ```bash
163
- cargo install claude-list
199
+ brew tap elliotxx/tap && brew install elliotxx/tap/claude-list
164
200
  ```
165
201
 
166
- ### Option 2: From Homebrew (macOS)
202
+ ### Option 2: From Shell Script (Linux/macOS)
167
203
 
168
204
  ```bash
169
- brew tap elliotxx/tap && brew install elliotxx/tap/claude-list
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 3: From GitHub Releases
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 4: From Source
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.0" → "0.1.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.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.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/YOUR_USERNAME/claude-list.git
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 the Claude Code community</strong><br>
403
- <sub>Parse and display your Claude Code environment</sub>
445
+ <strong>Built with ❤️ for elliotxx</strong><br>
446
+ <sub>Parse and display your Claude Code Info</sub>
404
447
  </p>
405
448
  </div>
@@ -23,7 +23,7 @@
23
23
  "hasInstallScript": true,
24
24
  "license": "MIT",
25
25
  "name": "@elliotxx/claude-list",
26
- "version": "0.1.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.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/0.1.1",
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.1",
87
+ "version": "0.1.3",
88
88
  "volta": {
89
89
  "node": "18.14.1",
90
90
  "npm": "9.5.0"