@eximia-ventures/claude-code-toolkit 3.0.2 → 3.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/package.json +1 -1
- package/src/installer.js +13 -0
- package/src/modules/index.js +9 -2
- package/src/modules/meter.js +33 -0
package/package.json
CHANGED
package/src/installer.js
CHANGED
|
@@ -37,6 +37,11 @@ async function runInstaller() {
|
|
|
37
37
|
name: `${modules.handoff.name} — ${modules.handoff.description}`,
|
|
38
38
|
value: 'handoff',
|
|
39
39
|
checked: false
|
|
40
|
+
},
|
|
41
|
+
{
|
|
42
|
+
name: `${modules.meter.name} — ${modules.meter.description}`,
|
|
43
|
+
value: 'meter',
|
|
44
|
+
checked: false
|
|
40
45
|
}
|
|
41
46
|
]
|
|
42
47
|
}
|
|
@@ -154,6 +159,14 @@ async function runInstaller() {
|
|
|
154
159
|
}
|
|
155
160
|
}
|
|
156
161
|
|
|
162
|
+
// Install meter
|
|
163
|
+
if (selectedModules.includes('meter')) {
|
|
164
|
+
const result = await modules.meter.module.install();
|
|
165
|
+
if (result.installed) {
|
|
166
|
+
manifest.files.push(...modules.meter.module.getManifestEntries());
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
|
|
157
170
|
// Install AIOS
|
|
158
171
|
if (selectedModules.includes('aios')) {
|
|
159
172
|
const result = await modules.aios.module.install(aiosOptions);
|
package/src/modules/index.js
CHANGED
|
@@ -2,6 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
const statusline = require('./statusline');
|
|
4
4
|
const handoff = require('./handoff');
|
|
5
|
+
const meter = require('./meter');
|
|
5
6
|
const aios = require('./aios');
|
|
6
7
|
|
|
7
8
|
const modules = {
|
|
@@ -9,13 +10,19 @@ const modules = {
|
|
|
9
10
|
name: 'Statusline',
|
|
10
11
|
description: 'Barra de status: modelo, contexto %, custo, tempo, git',
|
|
11
12
|
module: statusline,
|
|
12
|
-
default:
|
|
13
|
+
default: false
|
|
13
14
|
},
|
|
14
15
|
handoff: {
|
|
15
16
|
name: 'Session Handoff',
|
|
16
17
|
description: 'Continuidade de sessão (via claude-code-handoff)',
|
|
17
18
|
module: handoff,
|
|
18
|
-
default:
|
|
19
|
+
default: false
|
|
20
|
+
},
|
|
21
|
+
meter: {
|
|
22
|
+
name: 'eximia-meter',
|
|
23
|
+
description: 'Monitor de consumo de tokens (menu bar macOS)',
|
|
24
|
+
module: meter,
|
|
25
|
+
default: false
|
|
19
26
|
},
|
|
20
27
|
aios: {
|
|
21
28
|
name: 'AIOS Framework',
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
'use strict';
|
|
2
|
+
|
|
3
|
+
const { execSync } = require('child_process');
|
|
4
|
+
const logger = require('../utils/logger');
|
|
5
|
+
|
|
6
|
+
async function install() {
|
|
7
|
+
logger.section('eximia-meter');
|
|
8
|
+
|
|
9
|
+
try {
|
|
10
|
+
logger.dim('Executando eximia-meter...');
|
|
11
|
+
execSync('npx eximia-meter@latest', {
|
|
12
|
+
stdio: 'inherit',
|
|
13
|
+
timeout: 180000
|
|
14
|
+
});
|
|
15
|
+
logger.success('eximia-meter instalado');
|
|
16
|
+
return { installed: true };
|
|
17
|
+
} catch (err) {
|
|
18
|
+
logger.warn(`eximia-meter falhou: ${err.message}`);
|
|
19
|
+
logger.dim('Você pode instalar manualmente depois: npx eximia-meter');
|
|
20
|
+
return { installed: false, error: err.message };
|
|
21
|
+
}
|
|
22
|
+
}
|
|
23
|
+
|
|
24
|
+
async function uninstall() {
|
|
25
|
+
logger.dim('eximia-meter é um app standalone — remova manualmente se necessário.');
|
|
26
|
+
return [];
|
|
27
|
+
}
|
|
28
|
+
|
|
29
|
+
function getManifestEntries() {
|
|
30
|
+
return ['eximia-meter'];
|
|
31
|
+
}
|
|
32
|
+
|
|
33
|
+
module.exports = { install, uninstall, getManifestEntries };
|