@plexor-dev/claude-code-plugin 0.1.0-beta.13 → 0.1.0-beta.15

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.
@@ -4,66 +4,10 @@ description: Show Plexor optimization statistics and savings (user)
4
4
 
5
5
  # Plexor Status
6
6
 
7
- Display Plexor optimization statistics in a clean, professional format.
7
+ Run this command to display Plexor statistics:
8
8
 
9
- ## Instructions
10
-
11
- 1. Read `~/.plexor/config.json` to get settings and API key
12
- 2. Read `~/.plexor/session.json` to get current session stats (if exists and not expired after 30min inactivity)
13
- 3. Call the Plexor APIs to get user info and stats:
14
- - `GET {apiUrl}/v1/user` with header `X-Plexor-Key: {api_key}`
15
- - `GET {apiUrl}/v1/stats` with header `X-Plexor-Key: {api_key}`
16
- 4. Output the formatted status box directly as text (not in a code block):
17
-
18
- ```
19
- ┌─────────────────────────────────────────────┐
20
- │ Plexor Status │
21
- ├─────────────────────────────────────────────┤
22
- │ Account: {tier.name} │
23
- │ Email: {email} │
24
- │ Status: ● Active │
25
- ├─────────────────────────────────────────────┤
26
- │ This Session ({duration}) │
27
- │ ├── Requests: {session_requests} │
28
- │ ├── Optimizations: {session_optimizations} │
29
- │ ├── Cache hits: {session_cache_hits} │
30
- │ ├── Tokens saved: {tokens} ({%}) │
31
- │ └── Cost saved: ${session_cost_saved} │
32
- ├─────────────────────────────────────────────┤
33
- │ This Week ({period.start} - {period.end}) │
34
- │ ├── Requests: {total_requests} │
35
- │ ├── Original tokens: {original_tokens} │
36
- │ ├── Optimized tokens: {optimized_tokens} │
37
- │ ├── Tokens saved: {tokens_saved} ({%}) │
38
- │ ├── Baseline cost: ${baseline_cost} │
39
- │ ├── Actual cost: ${total_cost} │
40
- │ └── Cost saved: ${cost_saved} ({%}) │
41
- ├─────────────────────────────────────────────┤
42
- │ Performance │
43
- │ └── Cache hit rate: {cache_hit_rate}% │
44
- ├─────────────────────────────────────────────┤
45
- │ Limits │
46
- │ ├── Monthly optimizations: {limit} │
47
- │ └── Monthly completions: {limit} │
48
- ├─────────────────────────────────────────────┤
49
- │ Settings │
50
- │ ├── Optimization: {Enabled/Disabled} │
51
- │ ├── Local cache: {Enabled/Disabled} │
52
- │ ├── Mode: {mode} │
53
- │ └── Provider routing: {provider} │
54
- └─────────────────────────────────────────────┘
55
-
56
- Dashboard: {dashboard_url}
9
+ ```bash
10
+ node ~/.claude/plugins/plexor/commands/plexor-status.js
57
11
  ```
58
12
 
59
- IMPORTANT:
60
- - Output ONLY the status box as plain text, exactly as shown above
61
- - Do NOT wrap in markdown code blocks
62
- - Do NOT add any commentary before or after
63
- - Format numbers with commas (e.g., 50,000)
64
- - Format costs with 2 decimals (e.g., $4.50)
65
- - Format dates as "Mon D" (e.g., "Jan 7")
66
- - Use "● Active" if enabled, "○ Inactive" if disabled
67
- - Multiply cache_hit_rate by 100 for percentage
68
- - Only show "This Session" section if session.json exists and is not expired (30min timeout)
69
- - Session duration format: "Xm" for minutes, "Xh Ym" for hours
13
+ Use the Bash tool to execute this single command. Do not read files manually or format output yourself.
@@ -164,6 +164,14 @@ async function main() {
164
164
  input = await readStdin();
165
165
  request = JSON.parse(input);
166
166
 
167
+ // Issue #687: Auto-disable hook when ANTHROPIC_BASE_URL points to Plexor
168
+ // If already using Plexor as proxy, don't run local hook (avoid double-processing)
169
+ const baseUrl = process.env.ANTHROPIC_BASE_URL || '';
170
+ if (baseUrl.includes('plexor')) {
171
+ logger.debug('Plexor proxy detected via ANTHROPIC_BASE_URL, passing through');
172
+ return output(request);
173
+ }
174
+
167
175
  // CRITICAL: Check for slash commands FIRST (before agentic check)
168
176
  // Slash commands like /plexor-status should pass through unchanged
169
177
  // Must check before isAgenticRequest since all Claude Code requests have tools
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@plexor-dev/claude-code-plugin",
3
- "version": "0.1.0-beta.13",
3
+ "version": "0.1.0-beta.15",
4
4
  "description": "LLM cost optimization plugin for Claude Code - Save up to 90% on AI costs",
5
5
  "main": "lib/constants.js",
6
6
  "scripts": {