nuxs-capsule 0.1.14 → 0.1.17
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/bin/nuxs-capsule.js +5 -1
- package/dist/agents/register.d.ts +29 -0
- package/dist/agents/register.d.ts.map +1 -0
- package/dist/agents/register.js +137 -0
- package/dist/agents/register.js.map +1 -0
- package/dist/scan.d.ts +42 -0
- package/dist/scan.d.ts.map +1 -0
- package/dist/scan.js +250 -0
- package/dist/scan.js.map +1 -0
- package/dist/server.js +10 -1
- package/dist/server.js.map +1 -1
- package/dist/wrap.js +26 -9
- package/dist/wrap.js.map +1 -1
- package/package.json +2 -1
package/bin/nuxs-capsule.js
CHANGED
|
@@ -17,11 +17,15 @@ if (cmd === 'install') {
|
|
|
17
17
|
if (result.pending > 0) {
|
|
18
18
|
console.log(`[nuxs-capsule] flushed: ${result.sent} sent, ${result.failed} failed, ${result.pending} pending`);
|
|
19
19
|
}
|
|
20
|
+
} else if (cmd === 'scan') {
|
|
21
|
+
// Detecta agentes locais e registra no painel
|
|
22
|
+
const { runScanCli } = await import('../dist/scan.js');
|
|
23
|
+
await runScanCli();
|
|
20
24
|
} else if (cmd === 'serve' || cmd === undefined) {
|
|
21
25
|
// Default: roda como MCP server (stdio)
|
|
22
26
|
await import('../dist/server.js');
|
|
23
27
|
} else {
|
|
24
28
|
console.error(`nuxs-capsule: comando desconhecido "${cmd}"`);
|
|
25
|
-
console.error('Use: install | setup | wrap | flush | serve');
|
|
29
|
+
console.error('Use: install | setup | wrap | flush | scan | serve');
|
|
26
30
|
process.exit(1);
|
|
27
31
|
}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registro de agentes Nuxs (Sprint 2 — 28/Mai/2026).
|
|
3
|
+
*
|
|
4
|
+
* Cada instância de cliente (Claude Code session, Cursor, Aider, Fly, etc)
|
|
5
|
+
* chama register() no boot. Backend retorna agent_id que persistimos em
|
|
6
|
+
* ~/.nuxs/agent.json local. Próximas cápsulas referenciam esse ID.
|
|
7
|
+
*
|
|
8
|
+
* Heartbeat: chamado a cada 5min pelo MCP server pra atualizar last_seen.
|
|
9
|
+
*/
|
|
10
|
+
export type AgentKind = 'claude_code' | 'cursor' | 'aider' | 'continue' | 'cline' | 'fly' | 'openclaw' | 'hermes' | 'custom';
|
|
11
|
+
export interface AgentRegistration {
|
|
12
|
+
agent_kind: AgentKind;
|
|
13
|
+
agent_label: string;
|
|
14
|
+
config_path?: string;
|
|
15
|
+
binary_path?: string;
|
|
16
|
+
}
|
|
17
|
+
/**
|
|
18
|
+
* Registra agente no backend. Idempotente: se já registrado com mesma
|
|
19
|
+
* fingerprint+kind+label, backend atualiza last_seen e retorna mesmo ID.
|
|
20
|
+
*/
|
|
21
|
+
export declare function registerAgent(reg: AgentRegistration): Promise<string | null>;
|
|
22
|
+
/**
|
|
23
|
+
* Heartbeat: chamado periodicamente (5min) pelo MCP server vivo.
|
|
24
|
+
* Atualiza last_seen_at no backend.
|
|
25
|
+
*/
|
|
26
|
+
export declare function heartbeat(agentId: string): Promise<void>;
|
|
27
|
+
/** Auto-detecta agente e registra na inicialização. */
|
|
28
|
+
export declare function autoRegisterAgent(): Promise<string | null>;
|
|
29
|
+
//# sourceMappingURL=register.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.d.ts","sourceRoot":"","sources":["../../src/agents/register.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAaH,MAAM,MAAM,SAAS,GACjB,aAAa,GACb,QAAQ,GACR,OAAO,GACP,UAAU,GACV,OAAO,GACP,KAAK,GACL,UAAU,GACV,QAAQ,GACR,QAAQ,CAAC;AAEb,MAAM,WAAW,iBAAiB;IAChC,UAAU,EAAE,SAAS,CAAC;IACtB,WAAW,EAAE,MAAM,CAAC;IACpB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB;AA2CD;;;GAGG;AACH,wBAAsB,aAAa,CACjC,GAAG,EAAE,iBAAiB,GACrB,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAwCxB;AAED;;;GAGG;AACH,wBAAsB,SAAS,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAS9D;AAED,uDAAuD;AACvD,wBAAsB,iBAAiB,IAAI,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAKhE"}
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Registro de agentes Nuxs (Sprint 2 — 28/Mai/2026).
|
|
3
|
+
*
|
|
4
|
+
* Cada instância de cliente (Claude Code session, Cursor, Aider, Fly, etc)
|
|
5
|
+
* chama register() no boot. Backend retorna agent_id que persistimos em
|
|
6
|
+
* ~/.nuxs/agent.json local. Próximas cápsulas referenciam esse ID.
|
|
7
|
+
*
|
|
8
|
+
* Heartbeat: chamado a cada 5min pelo MCP server pra atualizar last_seen.
|
|
9
|
+
*/
|
|
10
|
+
import { readFileSync, writeFileSync, existsSync } from 'node:fs';
|
|
11
|
+
import { homedir, hostname, platform } from 'node:os';
|
|
12
|
+
import { join } from 'node:path';
|
|
13
|
+
import { ensureDir } from '../lib/fileStat.js';
|
|
14
|
+
import { getMachineFingerprint } from '../lib/fingerprint.js';
|
|
15
|
+
import { getLicenseKey } from '../license/check.js';
|
|
16
|
+
const NUXS_DIR = join(homedir(), '.nuxs');
|
|
17
|
+
const AGENT_FILE = join(NUXS_DIR, 'agent.json');
|
|
18
|
+
const SERVER_URL = process.env.NUXS_SERVER_URL ?? 'https://pixeldesk-api.onrender.com';
|
|
19
|
+
/** Detecta kind do agente atual via env vars conhecidas. */
|
|
20
|
+
function detectAgentKind() {
|
|
21
|
+
if (process.env.CLAUDE_CODE_SESSION_ID)
|
|
22
|
+
return 'claude_code';
|
|
23
|
+
if (process.env.CURSOR_AGENT)
|
|
24
|
+
return 'cursor';
|
|
25
|
+
if (process.env.OPENCLAW_SESSION)
|
|
26
|
+
return 'openclaw';
|
|
27
|
+
if (process.env.HERMES_AGENT)
|
|
28
|
+
return 'hermes';
|
|
29
|
+
if (process.env.AIDER_SESSION)
|
|
30
|
+
return 'aider';
|
|
31
|
+
if (process.env.CONTINUE_AGENT)
|
|
32
|
+
return 'continue';
|
|
33
|
+
return 'custom';
|
|
34
|
+
}
|
|
35
|
+
function detectOsKind() {
|
|
36
|
+
const p = platform();
|
|
37
|
+
if (p === 'darwin')
|
|
38
|
+
return 'darwin';
|
|
39
|
+
if (p === 'linux')
|
|
40
|
+
return 'linux';
|
|
41
|
+
if (p === 'win32')
|
|
42
|
+
return 'win32';
|
|
43
|
+
return 'other';
|
|
44
|
+
}
|
|
45
|
+
function loadCachedAgent() {
|
|
46
|
+
if (!existsSync(AGENT_FILE))
|
|
47
|
+
return null;
|
|
48
|
+
try {
|
|
49
|
+
return JSON.parse(readFileSync(AGENT_FILE, 'utf8'));
|
|
50
|
+
}
|
|
51
|
+
catch {
|
|
52
|
+
return null;
|
|
53
|
+
}
|
|
54
|
+
}
|
|
55
|
+
function saveCachedAgent(agent) {
|
|
56
|
+
ensureDir(NUXS_DIR);
|
|
57
|
+
writeFileSync(AGENT_FILE, JSON.stringify(agent, null, 2));
|
|
58
|
+
}
|
|
59
|
+
/**
|
|
60
|
+
* Registra agente no backend. Idempotente: se já registrado com mesma
|
|
61
|
+
* fingerprint+kind+label, backend atualiza last_seen e retorna mesmo ID.
|
|
62
|
+
*/
|
|
63
|
+
export async function registerAgent(reg) {
|
|
64
|
+
const fingerprint = getMachineFingerprint();
|
|
65
|
+
// Cache hit: mesmo agent já registrado nessa sessão
|
|
66
|
+
const cached = loadCachedAgent();
|
|
67
|
+
if (cached && cached.agent_kind === reg.agent_kind && cached.agent_label === reg.agent_label && cached.fingerprint === fingerprint) {
|
|
68
|
+
return cached.agent_id;
|
|
69
|
+
}
|
|
70
|
+
try {
|
|
71
|
+
const res = await fetch(`${SERVER_URL}/api/nuxs/agents/register`, {
|
|
72
|
+
method: 'POST',
|
|
73
|
+
headers: { 'Content-Type': 'application/json' },
|
|
74
|
+
body: JSON.stringify({
|
|
75
|
+
machine_fingerprint: fingerprint,
|
|
76
|
+
license_key: getLicenseKey() ?? null,
|
|
77
|
+
agent_kind: reg.agent_kind,
|
|
78
|
+
agent_label: reg.agent_label,
|
|
79
|
+
agent_pid: process.pid,
|
|
80
|
+
config_path: reg.config_path ?? null,
|
|
81
|
+
binary_path: reg.binary_path ?? null,
|
|
82
|
+
nuxs_version: getNuxsVersion(),
|
|
83
|
+
hostname: hostname(),
|
|
84
|
+
os_kind: detectOsKind()
|
|
85
|
+
}),
|
|
86
|
+
signal: AbortSignal.timeout(5000)
|
|
87
|
+
});
|
|
88
|
+
if (!res.ok)
|
|
89
|
+
return null;
|
|
90
|
+
const data = await res.json();
|
|
91
|
+
saveCachedAgent({
|
|
92
|
+
agent_id: data.agent_id,
|
|
93
|
+
agent_kind: reg.agent_kind,
|
|
94
|
+
agent_label: reg.agent_label,
|
|
95
|
+
fingerprint,
|
|
96
|
+
registered_at: data.started_at
|
|
97
|
+
});
|
|
98
|
+
return data.agent_id;
|
|
99
|
+
}
|
|
100
|
+
catch {
|
|
101
|
+
return null;
|
|
102
|
+
}
|
|
103
|
+
}
|
|
104
|
+
/**
|
|
105
|
+
* Heartbeat: chamado periodicamente (5min) pelo MCP server vivo.
|
|
106
|
+
* Atualiza last_seen_at no backend.
|
|
107
|
+
*/
|
|
108
|
+
export async function heartbeat(agentId) {
|
|
109
|
+
try {
|
|
110
|
+
await fetch(`${SERVER_URL}/api/nuxs/agents/heartbeat`, {
|
|
111
|
+
method: 'POST',
|
|
112
|
+
headers: { 'Content-Type': 'application/json' },
|
|
113
|
+
body: JSON.stringify({ agent_id: agentId }),
|
|
114
|
+
signal: AbortSignal.timeout(3000)
|
|
115
|
+
});
|
|
116
|
+
}
|
|
117
|
+
catch { /* silent */ }
|
|
118
|
+
}
|
|
119
|
+
/** Auto-detecta agente e registra na inicialização. */
|
|
120
|
+
export async function autoRegisterAgent() {
|
|
121
|
+
const kind = detectAgentKind();
|
|
122
|
+
// Label default = kind + pid (pra distinguir múltiplas sessões)
|
|
123
|
+
const label = `${kind}_${process.pid}`;
|
|
124
|
+
return registerAgent({ agent_kind: kind, agent_label: label });
|
|
125
|
+
}
|
|
126
|
+
function getNuxsVersion() {
|
|
127
|
+
try {
|
|
128
|
+
// Lê package.json local do nuxs-capsule via require.resolve
|
|
129
|
+
const pkgPath = new URL('../../package.json', import.meta.url).pathname;
|
|
130
|
+
const pkg = JSON.parse(readFileSync(pkgPath, 'utf8'));
|
|
131
|
+
return pkg.version;
|
|
132
|
+
}
|
|
133
|
+
catch {
|
|
134
|
+
return 'unknown';
|
|
135
|
+
}
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=register.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"register.js","sourceRoot":"","sources":["../../src/agents/register.ts"],"names":[],"mappings":"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"}
|
package/dist/scan.d.ts
ADDED
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* scan.ts — Sprint 3 (28/Mai/2026)
|
|
3
|
+
*
|
|
4
|
+
* Detecta agentes IA neste PC via 4 vetores:
|
|
5
|
+
* 1. launchd plists (~/Library/LaunchAgents/*.plist) — macOS
|
|
6
|
+
* 2. systemd units (systemctl --user list-units) — Linux
|
|
7
|
+
* 3. processos rodando (ps aux) — Mac/Linux
|
|
8
|
+
* 4. configs conhecidas (~/.claude, ~/.cursor, ~/.aider, ~/.continue)
|
|
9
|
+
*
|
|
10
|
+
* Plus: npm globals com keywords AI.
|
|
11
|
+
*
|
|
12
|
+
* Retorna lista pra `nuxs-capsule scan` mostrar wizard + auto-register
|
|
13
|
+
* via /api/nuxs/agents/register cada detectado.
|
|
14
|
+
*/
|
|
15
|
+
export interface DetectedAgent {
|
|
16
|
+
kind: string;
|
|
17
|
+
label: string;
|
|
18
|
+
source: 'launchd' | 'systemd' | 'process' | 'config' | 'npm';
|
|
19
|
+
pid?: number;
|
|
20
|
+
config_path?: string;
|
|
21
|
+
binary_path?: string;
|
|
22
|
+
detail?: string;
|
|
23
|
+
}
|
|
24
|
+
/**
|
|
25
|
+
* scanLocalAgents — entry point. Combina os 4 vetores + dedup por label.
|
|
26
|
+
*/
|
|
27
|
+
export declare function scanLocalAgents(): DetectedAgent[];
|
|
28
|
+
/**
|
|
29
|
+
* Registra todos os agentes detectados no backend Nuxs.
|
|
30
|
+
* Idempotente (backend faz upsert por fingerprint+kind+label).
|
|
31
|
+
*/
|
|
32
|
+
export declare function registerDetectedAgents(): Promise<{
|
|
33
|
+
ok: number;
|
|
34
|
+
failed: number;
|
|
35
|
+
agents: Array<{
|
|
36
|
+
label: string;
|
|
37
|
+
agent_id: string | null;
|
|
38
|
+
}>;
|
|
39
|
+
}>;
|
|
40
|
+
/** Comando CLI `nuxs-capsule scan`. Mostra wizard + auto-register. */
|
|
41
|
+
export declare function runScanCli(): Promise<void>;
|
|
42
|
+
//# sourceMappingURL=scan.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scan.d.ts","sourceRoot":"","sources":["../src/scan.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAOH,MAAM,WAAW,aAAa;IAC5B,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,SAAS,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,CAAC;IAC7D,GAAG,CAAC,EAAE,MAAM,CAAC;IACb,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAgJD;;GAEG;AACH,wBAAgB,eAAe,IAAI,aAAa,EAAE,CAkBjD;AAED;;;GAGG;AACH,wBAAsB,sBAAsB,IAAI,OAAO,CAAC;IAAE,EAAE,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,KAAK,CAAC;QAAE,KAAK,EAAE,MAAM,CAAC;QAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;KAAE,CAAC,CAAA;CAAE,CAAC,CAkBjJ;AAED,sEAAsE;AACtE,wBAAsB,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC,CAmBhD"}
|
package/dist/scan.js
ADDED
|
@@ -0,0 +1,250 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* scan.ts — Sprint 3 (28/Mai/2026)
|
|
3
|
+
*
|
|
4
|
+
* Detecta agentes IA neste PC via 4 vetores:
|
|
5
|
+
* 1. launchd plists (~/Library/LaunchAgents/*.plist) — macOS
|
|
6
|
+
* 2. systemd units (systemctl --user list-units) — Linux
|
|
7
|
+
* 3. processos rodando (ps aux) — Mac/Linux
|
|
8
|
+
* 4. configs conhecidas (~/.claude, ~/.cursor, ~/.aider, ~/.continue)
|
|
9
|
+
*
|
|
10
|
+
* Plus: npm globals com keywords AI.
|
|
11
|
+
*
|
|
12
|
+
* Retorna lista pra `nuxs-capsule scan` mostrar wizard + auto-register
|
|
13
|
+
* via /api/nuxs/agents/register cada detectado.
|
|
14
|
+
*/
|
|
15
|
+
import { execSync } from 'node:child_process';
|
|
16
|
+
import { existsSync, readdirSync, readFileSync } from 'node:fs';
|
|
17
|
+
import { homedir, platform, hostname } from 'node:os';
|
|
18
|
+
import { join } from 'node:path';
|
|
19
|
+
// ─── 1. LAUNCHD (macOS) ────────────────────────────────────────────
|
|
20
|
+
function scanLaunchd() {
|
|
21
|
+
if (platform() !== 'darwin')
|
|
22
|
+
return [];
|
|
23
|
+
const dir = join(homedir(), 'Library', 'LaunchAgents');
|
|
24
|
+
if (!existsSync(dir))
|
|
25
|
+
return [];
|
|
26
|
+
const out = [];
|
|
27
|
+
let files = [];
|
|
28
|
+
try {
|
|
29
|
+
files = readdirSync(dir).filter((f) => f.endsWith('.plist'));
|
|
30
|
+
}
|
|
31
|
+
catch {
|
|
32
|
+
return [];
|
|
33
|
+
}
|
|
34
|
+
for (const file of files) {
|
|
35
|
+
const path = join(dir, file);
|
|
36
|
+
let content = '';
|
|
37
|
+
try {
|
|
38
|
+
content = readFileSync(path, 'utf8');
|
|
39
|
+
}
|
|
40
|
+
catch {
|
|
41
|
+
continue;
|
|
42
|
+
}
|
|
43
|
+
// Detecta kind por nome OU conteúdo
|
|
44
|
+
const lower = file.toLowerCase() + ' ' + content.toLowerCase();
|
|
45
|
+
let kind = null;
|
|
46
|
+
if (/flyone|fly\.plist/i.test(file))
|
|
47
|
+
kind = 'fly';
|
|
48
|
+
else if (/openclaw/.test(lower))
|
|
49
|
+
kind = 'openclaw';
|
|
50
|
+
else if (/hermes/.test(lower))
|
|
51
|
+
kind = 'hermes';
|
|
52
|
+
else if (/cursor/.test(lower))
|
|
53
|
+
kind = 'cursor';
|
|
54
|
+
else if (/anthropic|claude/i.test(lower))
|
|
55
|
+
kind = 'claude_agent';
|
|
56
|
+
else
|
|
57
|
+
continue;
|
|
58
|
+
// Extrai Label
|
|
59
|
+
const labelMatch = content.match(/<key>Label<\/key>\s*<string>([^<]+)<\/string>/);
|
|
60
|
+
const label = labelMatch?.[1] ?? file.replace('.plist', '');
|
|
61
|
+
out.push({
|
|
62
|
+
kind,
|
|
63
|
+
label,
|
|
64
|
+
source: 'launchd',
|
|
65
|
+
config_path: path,
|
|
66
|
+
detail: 'launchd agent'
|
|
67
|
+
});
|
|
68
|
+
}
|
|
69
|
+
return out;
|
|
70
|
+
}
|
|
71
|
+
// ─── 2. PROCESSOS rodando ──────────────────────────────────────────
|
|
72
|
+
function scanProcesses() {
|
|
73
|
+
const out = [];
|
|
74
|
+
let psOutput = '';
|
|
75
|
+
try {
|
|
76
|
+
psOutput = execSync('ps ax -o pid,command 2>/dev/null', { encoding: 'utf8', timeout: 5000 });
|
|
77
|
+
}
|
|
78
|
+
catch {
|
|
79
|
+
return out;
|
|
80
|
+
}
|
|
81
|
+
const lines = psOutput.split('\n').slice(1); // skip header
|
|
82
|
+
for (const line of lines) {
|
|
83
|
+
const trimmed = line.trim();
|
|
84
|
+
if (!trimmed)
|
|
85
|
+
continue;
|
|
86
|
+
const m = trimmed.match(/^(\d+)\s+(.+)$/);
|
|
87
|
+
if (!m)
|
|
88
|
+
continue;
|
|
89
|
+
const pid = parseInt(m[1], 10);
|
|
90
|
+
const cmd = m[2].toLowerCase();
|
|
91
|
+
// Identifica kind pelo command
|
|
92
|
+
let kind = null;
|
|
93
|
+
let label = null;
|
|
94
|
+
if (/claude.code|\.local\/share\/claude/.test(cmd) && !cmd.includes('bg-spare')) {
|
|
95
|
+
kind = 'claude_code';
|
|
96
|
+
label = `claude_code_${pid}`;
|
|
97
|
+
}
|
|
98
|
+
else if (/cursor.*\.app/.test(cmd)) {
|
|
99
|
+
kind = 'cursor';
|
|
100
|
+
label = `cursor_${pid}`;
|
|
101
|
+
}
|
|
102
|
+
else if (/aider/.test(cmd)) {
|
|
103
|
+
kind = 'aider';
|
|
104
|
+
label = `aider_${pid}`;
|
|
105
|
+
}
|
|
106
|
+
else if (/openclaw-bridge|openclaw\s/.test(cmd) && !cmd.includes('grep')) {
|
|
107
|
+
kind = 'openclaw';
|
|
108
|
+
label = `openclaw_${pid}`;
|
|
109
|
+
}
|
|
110
|
+
else if (/hermes-bridge|hermes\s/.test(cmd) && !cmd.includes('grep')) {
|
|
111
|
+
kind = 'hermes';
|
|
112
|
+
label = `hermes_${pid}`;
|
|
113
|
+
}
|
|
114
|
+
if (!kind || !label)
|
|
115
|
+
continue;
|
|
116
|
+
out.push({ kind, label, source: 'process', pid });
|
|
117
|
+
}
|
|
118
|
+
return out;
|
|
119
|
+
}
|
|
120
|
+
// ─── 3. CONFIGS conhecidas ─────────────────────────────────────────
|
|
121
|
+
function scanConfigs() {
|
|
122
|
+
const home = homedir();
|
|
123
|
+
const candidates = [
|
|
124
|
+
{ path: join(home, '.claude', 'settings.json'), kind: 'claude_code' },
|
|
125
|
+
{ path: join(home, '.cursor', 'settings.json'), kind: 'cursor' },
|
|
126
|
+
{ path: join(home, '.cursor', 'mcp.json'), kind: 'cursor' },
|
|
127
|
+
{ path: join(home, '.aider.conf.yml'), kind: 'aider' },
|
|
128
|
+
{ path: join(home, '.continue', 'config.json'), kind: 'continue' },
|
|
129
|
+
{ path: join(home, '.codeium', 'config.json'), kind: 'codeium' },
|
|
130
|
+
{ path: join(home, '.cline', 'config.json'), kind: 'cline' }
|
|
131
|
+
];
|
|
132
|
+
const out = [];
|
|
133
|
+
for (const c of candidates) {
|
|
134
|
+
if (!existsSync(c.path))
|
|
135
|
+
continue;
|
|
136
|
+
out.push({
|
|
137
|
+
kind: c.kind,
|
|
138
|
+
label: `${c.kind}_config`,
|
|
139
|
+
source: 'config',
|
|
140
|
+
config_path: c.path,
|
|
141
|
+
detail: 'config file present'
|
|
142
|
+
});
|
|
143
|
+
}
|
|
144
|
+
return out;
|
|
145
|
+
}
|
|
146
|
+
// ─── 4. NPM GLOBALS ────────────────────────────────────────────────
|
|
147
|
+
function scanNpmGlobals() {
|
|
148
|
+
const out = [];
|
|
149
|
+
let raw = '';
|
|
150
|
+
try {
|
|
151
|
+
raw = execSync('npm ls -g --depth=0 --parseable 2>/dev/null', { encoding: 'utf8', timeout: 8000 });
|
|
152
|
+
}
|
|
153
|
+
catch {
|
|
154
|
+
return out;
|
|
155
|
+
}
|
|
156
|
+
const lines = raw.split('\n').filter(Boolean);
|
|
157
|
+
for (const line of lines) {
|
|
158
|
+
const name = line.split('/').pop() ?? '';
|
|
159
|
+
let kind = null;
|
|
160
|
+
if (/^claude(-code)?$/i.test(name) || /@anthropic-ai\/claude-code/i.test(line))
|
|
161
|
+
kind = 'claude_code';
|
|
162
|
+
else if (/^aider/i.test(name))
|
|
163
|
+
kind = 'aider';
|
|
164
|
+
else if (/^continue/i.test(name))
|
|
165
|
+
kind = 'continue';
|
|
166
|
+
else if (/^cursor-cli/i.test(name))
|
|
167
|
+
kind = 'cursor_cli';
|
|
168
|
+
else
|
|
169
|
+
continue;
|
|
170
|
+
out.push({
|
|
171
|
+
kind,
|
|
172
|
+
label: `${kind}_npm`,
|
|
173
|
+
source: 'npm',
|
|
174
|
+
binary_path: line,
|
|
175
|
+
detail: 'npm global'
|
|
176
|
+
});
|
|
177
|
+
}
|
|
178
|
+
return out;
|
|
179
|
+
}
|
|
180
|
+
/**
|
|
181
|
+
* scanLocalAgents — entry point. Combina os 4 vetores + dedup por label.
|
|
182
|
+
*/
|
|
183
|
+
export function scanLocalAgents() {
|
|
184
|
+
const all = [
|
|
185
|
+
...scanLaunchd(),
|
|
186
|
+
...scanProcesses(),
|
|
187
|
+
...scanConfigs(),
|
|
188
|
+
...scanNpmGlobals()
|
|
189
|
+
];
|
|
190
|
+
// Dedup por (kind, label) — mantém o que tem mais info (pid > config > npm)
|
|
191
|
+
const score = { process: 4, launchd: 3, config: 2, npm: 1, systemd: 3 };
|
|
192
|
+
const map = new Map();
|
|
193
|
+
for (const a of all) {
|
|
194
|
+
const key = `${a.kind}:${a.label}`;
|
|
195
|
+
const existing = map.get(key);
|
|
196
|
+
if (!existing || (score[a.source] ?? 0) > (score[existing.source] ?? 0)) {
|
|
197
|
+
map.set(key, a);
|
|
198
|
+
}
|
|
199
|
+
}
|
|
200
|
+
return Array.from(map.values());
|
|
201
|
+
}
|
|
202
|
+
/**
|
|
203
|
+
* Registra todos os agentes detectados no backend Nuxs.
|
|
204
|
+
* Idempotente (backend faz upsert por fingerprint+kind+label).
|
|
205
|
+
*/
|
|
206
|
+
export async function registerDetectedAgents() {
|
|
207
|
+
const { registerAgent } = await import('./agents/register.js');
|
|
208
|
+
const detected = scanLocalAgents();
|
|
209
|
+
let ok = 0;
|
|
210
|
+
let failed = 0;
|
|
211
|
+
const agents = [];
|
|
212
|
+
for (const a of detected) {
|
|
213
|
+
const agentId = await registerAgent({
|
|
214
|
+
agent_kind: a.kind,
|
|
215
|
+
agent_label: a.label,
|
|
216
|
+
config_path: a.config_path,
|
|
217
|
+
binary_path: a.binary_path
|
|
218
|
+
});
|
|
219
|
+
if (agentId)
|
|
220
|
+
ok++;
|
|
221
|
+
else
|
|
222
|
+
failed++;
|
|
223
|
+
agents.push({ label: a.label, agent_id: agentId });
|
|
224
|
+
}
|
|
225
|
+
return { ok, failed, agents };
|
|
226
|
+
}
|
|
227
|
+
/** Comando CLI `nuxs-capsule scan`. Mostra wizard + auto-register. */
|
|
228
|
+
export async function runScanCli() {
|
|
229
|
+
console.log('\n🔍 Nuxs Capsule — Scan de agentes locais\n');
|
|
230
|
+
console.log(`Máquina: ${hostname()} (${platform()})\n`);
|
|
231
|
+
const detected = scanLocalAgents();
|
|
232
|
+
if (detected.length === 0) {
|
|
233
|
+
console.log('Nenhum agente IA detectado neste PC.\n');
|
|
234
|
+
return;
|
|
235
|
+
}
|
|
236
|
+
console.log(`Detectados ${detected.length} agentes:\n`);
|
|
237
|
+
for (let i = 0; i < detected.length; i++) {
|
|
238
|
+
const a = detected[i];
|
|
239
|
+
console.log(` [${i + 1}] ${a.kind.padEnd(14)} ${a.label.padEnd(30)} (${a.source})`);
|
|
240
|
+
if (a.config_path)
|
|
241
|
+
console.log(` config: ${a.config_path}`);
|
|
242
|
+
if (a.pid)
|
|
243
|
+
console.log(` PID: ${a.pid}`);
|
|
244
|
+
}
|
|
245
|
+
console.log('\nRegistrando todos no painel admin...');
|
|
246
|
+
const result = await registerDetectedAgents();
|
|
247
|
+
console.log(`\n✓ ${result.ok} agentes registrados, ${result.failed} falhas.`);
|
|
248
|
+
console.log('Veja em https://nuxs.ai/admin/capsule → aba "Agentes registrados"\n');
|
|
249
|
+
}
|
|
250
|
+
//# sourceMappingURL=scan.js.map
|
package/dist/scan.js.map
ADDED
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"scan.js","sourceRoot":"","sources":["../src/scan.ts"],"names":[],"mappings":"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"}
|
package/dist/server.js
CHANGED
|
@@ -29,6 +29,7 @@ import { apiSpecCapsule } from './tools/apiSpecCapsule.js';
|
|
|
29
29
|
import { codebaseCapsule } from './tools/codebaseCapsule.js';
|
|
30
30
|
import { validateLicense, isCapsuleAllowed } from './license/check.js';
|
|
31
31
|
import { flushQueue } from './telemetry/usage.js';
|
|
32
|
+
import { autoRegisterAgent, heartbeat } from './agents/register.js';
|
|
32
33
|
const server = new Server({ name: 'nuxs-capsule', version: '0.1.0' }, { capabilities: { tools: {} } });
|
|
33
34
|
const TOOL_DEFINITIONS = [
|
|
34
35
|
{
|
|
@@ -445,8 +446,16 @@ server.setRequestHandler(CallToolRequestSchema, async (request) => {
|
|
|
445
446
|
}
|
|
446
447
|
});
|
|
447
448
|
const transport = new StdioServerTransport();
|
|
448
|
-
server.connect(transport).then(() => {
|
|
449
|
+
server.connect(transport).then(async () => {
|
|
449
450
|
console.error('[nuxs-capsule] MCP server running on stdio');
|
|
451
|
+
// Auto-registra esse agente (Sprint 2 — multi-agent tracking).
|
|
452
|
+
// Idempotente: se mesma fingerprint+kind+label existe, atualiza last_seen.
|
|
453
|
+
const agentId = await autoRegisterAgent();
|
|
454
|
+
if (agentId) {
|
|
455
|
+
console.error(`[nuxs-capsule] agent registered: ${agentId}`);
|
|
456
|
+
// Heartbeat a cada 5min pra manter status=active no painel
|
|
457
|
+
setInterval(() => { void heartbeat(agentId); }, 5 * 60 * 1000);
|
|
458
|
+
}
|
|
450
459
|
// Flush a cada 30s enquanto MCP server tá vivo (real-time pra dashboards).
|
|
451
460
|
// Cron 1min cuida quando Claude Code tá fechado. Combo cobre tudo.
|
|
452
461
|
setInterval(() => { void flushQueue(); }, 30_000);
|
package/dist/server.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"server.js","sourceRoot":"","sources":["../src/server.ts"],"names":[],"mappings":"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"}
|
package/dist/wrap.js
CHANGED
|
@@ -43,12 +43,28 @@ async function main() {
|
|
|
43
43
|
return;
|
|
44
44
|
}
|
|
45
45
|
const inBytes = Buffer.byteLength(input);
|
|
46
|
-
// PASSTHROUGH 2: input
|
|
47
|
-
//
|
|
48
|
-
|
|
49
|
-
|
|
46
|
+
// PASSTHROUGH 2: input < threshold mínimo por TIPO de cápsula. Heurística
|
|
47
|
+
// calibrada pra evitar cápsula negativa (overhead engine > economia).
|
|
48
|
+
// Caso o input não justifique gerar cápsula, devolve raw silenciosamente.
|
|
49
|
+
const MIN_INPUT_BYTES = {
|
|
50
|
+
log: 5000, // Drain3 overhead ~200B base + 150B/template
|
|
51
|
+
api: 3000, // schema + samples ~500B
|
|
52
|
+
diff: 1000, // header minimal
|
|
53
|
+
test: 5000, // framework detect + groups
|
|
54
|
+
build: 5000, // tool detect + warnings/errors
|
|
55
|
+
prompt: 2000, // clusters overhead
|
|
56
|
+
stack: 2000, // requer LLM call ($)
|
|
57
|
+
threads: 2000, // requer LLM
|
|
58
|
+
events: 3000, // agregação + LLM
|
|
59
|
+
session: 2000, // markdown YAML
|
|
60
|
+
schema: 2000, // tables structure
|
|
61
|
+
apispec: 5000, // paths + schemas
|
|
62
|
+
network: 0 // HAR sempre vale (estruturalmente grande)
|
|
63
|
+
};
|
|
64
|
+
const minBytes = MIN_INPUT_BYTES[type] ?? 2048;
|
|
65
|
+
if (inBytes < minBytes) {
|
|
50
66
|
process.stdout.write(input);
|
|
51
|
-
return; // sem registrar cápsula —
|
|
67
|
+
return; // sem registrar cápsula — heurística diz que vai dar negativo
|
|
52
68
|
}
|
|
53
69
|
const startedAt = Date.now();
|
|
54
70
|
let result;
|
|
@@ -87,11 +103,12 @@ async function main() {
|
|
|
87
103
|
}
|
|
88
104
|
const outStr = JSON.stringify(result, null, 2);
|
|
89
105
|
const outBytes = Buffer.byteLength(outStr);
|
|
90
|
-
// PASSTHROUGH 3: cápsula
|
|
91
|
-
//
|
|
92
|
-
|
|
106
|
+
// PASSTHROUGH 3 (estrito): cápsula gerou output >= input. Pacto do
|
|
107
|
+
// produto: cliente NUNCA pode perder tokens usando Nuxs. Threshold 1.0
|
|
108
|
+
// strict — qualquer output >= input vira passthrough silencioso.
|
|
109
|
+
if (outBytes >= inBytes) {
|
|
93
110
|
process.stdout.write(input);
|
|
94
|
-
return;
|
|
111
|
+
return; // descarta cápsula, devolve raw
|
|
95
112
|
}
|
|
96
113
|
process.stdout.write(outStr + '\n');
|
|
97
114
|
// Telemetria: AWAIT pra garantir grava antes do processo morrer.
|
package/dist/wrap.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"wrap.js","sourceRoot":"","sources":["../src/wrap.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,UAAU,EAAE,MAAM,uBAAuB,CAAC;AACnD,OAAO,EAAE,oBAAoB,EAAE,MAAM,uBAAuB,CAAC;AAC7D,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,WAAW,EAAE,MAAM,wBAAwB,CAAC;AACrD,OAAO,EAAE,YAAY,EAAE,MAAM,yBAAyB,CAAC;AACvD,OAAO,EAAE,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACzD,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,UAAU,EAAE,MAAM,sBAAsB,CAAC;AAGlD,MAAM,eAAe,GAAkB,CAAC,SAAS,EAAE,KAAK,EAAE,OAAO,EAAE,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,QAAQ,EAAE,SAAS,CAAC,CAAC;AAE/H,KAAK,UAAU,IAAI;IACjB,MAAM,IAAI,GAAG,SAAS,CAAC,OAAO,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC;IAC9C,MAAM,IAAI,GAAG,IAAI,CAAC,IAA+B,CAAC;IAElD,IAAI,IAAI,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC;QACvB,SAAS,EAAE,CAAC;QACZ,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,IAAI,CAAC,eAAe,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAE,CAAC;QACpC,OAAO,CAAC,KAAK,CAAC,WAAW,IAAI,0BAA0B,CAAC,CAAC;QACzD,OAAO,CAAC,KAAK,CAAC,kBAAkB,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;QAC9D,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IAClB,CAAC;IAED,WAAW;IACX,MAAM,KAAK,GAAG,MAAM,SAAS,EAAE,CAAC;IAEhC,yEAAyE;IACzE,2DAA2D;IAC3D,IAAI,CAAC,KAAK,CAAC,IAAI,EAAE,EAAE,CAAC;QAClB,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,CAAC,CAAC,CAAC,4BAA4B;QACzD,OAAO;IACT,CAAC;IAED,MAAM,OAAO,GAAG,MAAM,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC;IAEzC,
|
|
1
|
+
{"version":3,"file":"wrap.js","sourceRoot":"","sources":["../src/wrap.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "nuxs-capsule",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.17",
|
|
4
4
|
"description": "Compressor universal pra agentes IA — Claude Code, Cursor, OpenClaw, Hermes. Camada invisível via MCP + Hook PreToolUse. Economiza 50-90% dos tokens.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"mcp",
|
|
@@ -38,6 +38,7 @@
|
|
|
38
38
|
"dev": "tsx watch src/server.ts",
|
|
39
39
|
"test": "vitest run",
|
|
40
40
|
"lint": "tsc --noEmit",
|
|
41
|
+
"postinstall": "node -e \"const v=require('./package.json').version;process.stderr.write('\\n \\u001b[32m\\u2713\\u001b[0m nuxs-capsule v'+v+' installed. Run \\u001b[1mnuxs-capsule scan\\u001b[0m to detect agents.\\n\\n')\"",
|
|
41
42
|
"compile:standalone": "bun build src/intercept.ts --compile --outfile bin/nuxs-capsule-intercept-bin"
|
|
42
43
|
},
|
|
43
44
|
"dependencies": {
|