@codemieai/code 0.0.19 → 0.0.20
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/dist/agents/core/AgentCLI.d.ts +4 -0
- package/dist/agents/core/AgentCLI.d.ts.map +1 -1
- package/dist/agents/core/AgentCLI.js +80 -0
- package/dist/agents/core/AgentCLI.js.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.d.ts +5 -0
- package/dist/agents/core/BaseAgentAdapter.d.ts.map +1 -1
- package/dist/agents/core/BaseAgentAdapter.js +21 -4
- package/dist/agents/core/BaseAgentAdapter.js.map +1 -1
- package/dist/agents/core/flag-transform.d.ts +37 -0
- package/dist/agents/core/flag-transform.d.ts.map +1 -0
- package/dist/agents/core/flag-transform.js +107 -0
- package/dist/agents/core/flag-transform.js.map +1 -0
- package/dist/agents/core/types.d.ts +50 -1
- package/dist/agents/core/types.d.ts.map +1 -1
- package/dist/agents/plugins/claude.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/claude.plugin.js +10 -0
- package/dist/agents/plugins/claude.plugin.js.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.d.ts +1 -0
- package/dist/agents/plugins/codemie-code.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codemie-code.plugin.js +4 -0
- package/dist/agents/plugins/codemie-code.plugin.js.map +1 -1
- package/dist/agents/plugins/codex.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/codex.plugin.js +15 -8
- package/dist/agents/plugins/codex.plugin.js.map +1 -1
- package/dist/agents/plugins/deepagents.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/deepagents.plugin.js +6 -0
- package/dist/agents/plugins/deepagents.plugin.js.map +1 -1
- package/dist/agents/plugins/gemini.plugin.d.ts.map +1 -1
- package/dist/agents/plugins/gemini.plugin.js +14 -8
- package/dist/agents/plugins/gemini.plugin.js.map +1 -1
- package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts +12 -0
- package/dist/cli/commands/doctor/checks/FrameworksCheck.d.ts.map +1 -0
- package/dist/cli/commands/doctor/checks/FrameworksCheck.js +103 -0
- package/dist/cli/commands/doctor/checks/FrameworksCheck.js.map +1 -0
- package/dist/cli/commands/doctor/checks/index.d.ts +1 -0
- package/dist/cli/commands/doctor/checks/index.d.ts.map +1 -1
- package/dist/cli/commands/doctor/checks/index.js +1 -0
- package/dist/cli/commands/doctor/checks/index.js.map +1 -1
- package/dist/cli/commands/doctor/index.d.ts.map +1 -1
- package/dist/cli/commands/doctor/index.js +3 -2
- package/dist/cli/commands/doctor/index.js.map +1 -1
- package/dist/cli/commands/install.d.ts.map +1 -1
- package/dist/cli/commands/install.js +79 -30
- package/dist/cli/commands/install.js.map +1 -1
- package/dist/cli/commands/list.d.ts.map +1 -1
- package/dist/cli/commands/list.js +55 -15
- package/dist/cli/commands/list.js.map +1 -1
- package/dist/cli/commands/uninstall.d.ts.map +1 -1
- package/dist/cli/commands/uninstall.js +85 -34
- package/dist/cli/commands/uninstall.js.map +1 -1
- package/dist/cli/index.d.ts +1 -0
- package/dist/cli/index.d.ts.map +1 -1
- package/dist/cli/index.js +5 -3
- package/dist/cli/index.js.map +1 -1
- package/dist/frameworks/core/BaseFrameworkAdapter.d.ts +88 -0
- package/dist/frameworks/core/BaseFrameworkAdapter.d.ts.map +1 -0
- package/dist/frameworks/core/BaseFrameworkAdapter.js +156 -0
- package/dist/frameworks/core/BaseFrameworkAdapter.js.map +1 -0
- package/dist/frameworks/core/index.d.ts +9 -0
- package/dist/frameworks/core/index.d.ts.map +1 -0
- package/dist/frameworks/core/index.js +9 -0
- package/dist/frameworks/core/index.js.map +1 -0
- package/dist/frameworks/core/registry.d.ts +53 -0
- package/dist/frameworks/core/registry.d.ts.map +1 -0
- package/dist/frameworks/core/registry.js +82 -0
- package/dist/frameworks/core/registry.js.map +1 -0
- package/dist/frameworks/core/types.d.ts +130 -0
- package/dist/frameworks/core/types.d.ts.map +1 -0
- package/dist/frameworks/core/types.js +8 -0
- package/dist/frameworks/core/types.js.map +1 -0
- package/dist/frameworks/index.d.ts +9 -0
- package/dist/frameworks/index.d.ts.map +1 -0
- package/dist/frameworks/index.js +12 -0
- package/dist/frameworks/index.js.map +1 -0
- package/dist/frameworks/plugins/bmad.plugin.d.ts +46 -0
- package/dist/frameworks/plugins/bmad.plugin.d.ts.map +1 -0
- package/dist/frameworks/plugins/bmad.plugin.js +111 -0
- package/dist/frameworks/plugins/bmad.plugin.js.map +1 -0
- package/dist/frameworks/plugins/index.d.ts +8 -0
- package/dist/frameworks/plugins/index.d.ts.map +1 -0
- package/dist/frameworks/plugins/index.js +15 -0
- package/dist/frameworks/plugins/index.js.map +1 -0
- package/dist/frameworks/plugins/speckit.plugin.d.ts +59 -0
- package/dist/frameworks/plugins/speckit.plugin.d.ts.map +1 -0
- package/dist/frameworks/plugins/speckit.plugin.js +213 -0
- package/dist/frameworks/plugins/speckit.plugin.js.map +1 -0
- package/dist/metrics/config.d.ts.map +1 -1
- package/dist/metrics/config.js +7 -1
- package/dist/metrics/config.js.map +1 -1
- package/dist/metrics/sync/aggregator.d.ts +7 -1
- package/dist/metrics/sync/aggregator.d.ts.map +1 -1
- package/dist/metrics/sync/aggregator.js +14 -5
- package/dist/metrics/sync/aggregator.js.map +1 -1
- package/dist/metrics/sync/post-processor.d.ts +48 -0
- package/dist/metrics/sync/post-processor.d.ts.map +1 -0
- package/dist/metrics/sync/post-processor.js +147 -0
- package/dist/metrics/sync/post-processor.js.map +1 -0
- package/dist/metrics/sync/types.d.ts +2 -2
- package/dist/metrics/sync/types.d.ts.map +1 -1
- package/dist/metrics/types.d.ts +6 -0
- package/dist/metrics/types.d.ts.map +1 -1
- package/dist/proxy/plugins/metrics-sync.plugin.js +20 -9
- package/dist/proxy/plugins/metrics-sync.plugin.js.map +1 -1
- package/dist/utils/exec.d.ts +1 -0
- package/dist/utils/exec.d.ts.map +1 -1
- package/dist/utils/exec.js +23 -9
- package/dist/utils/exec.js.map +1 -1
- package/dist/utils/first-time.d.ts +3 -3
- package/dist/utils/first-time.d.ts.map +1 -1
- package/dist/utils/first-time.js +21 -4
- package/dist/utils/first-time.js.map +1 -1
- package/dist/utils/logger.js +2 -2
- package/dist/utils/logger.js.map +1 -1
- package/package.json +2 -1
|
@@ -0,0 +1,213 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SpecKit Framework Plugin
|
|
3
|
+
*
|
|
4
|
+
* Integration for GitHub's SpecKit framework - spec-driven development toolkit
|
|
5
|
+
* https://github.com/github/spec-kit
|
|
6
|
+
*
|
|
7
|
+
* Installation: uv tool install specify-cli --from git+https://github.com/github/spec-kit.git
|
|
8
|
+
* Initialization: specify init <project> --ai <agent> --here --script <sh|ps> --force
|
|
9
|
+
*/
|
|
10
|
+
import { platform } from 'os';
|
|
11
|
+
import { exec } from '../../utils/exec.js';
|
|
12
|
+
import { logger } from '../../utils/logger.js';
|
|
13
|
+
import { BaseFrameworkAdapter } from '../core/BaseFrameworkAdapter.js';
|
|
14
|
+
/**
|
|
15
|
+
* SpecKit Framework Metadata
|
|
16
|
+
*/
|
|
17
|
+
export const SpeckitMetadata = {
|
|
18
|
+
name: 'speckit',
|
|
19
|
+
displayName: 'SpecKit',
|
|
20
|
+
description: 'GitHub\'s spec-driven development toolkit',
|
|
21
|
+
docsUrl: 'https://github.com/github/spec-kit',
|
|
22
|
+
repoUrl: 'https://github.com/github/spec-kit',
|
|
23
|
+
requiresInstallation: true,
|
|
24
|
+
installMethod: 'uv',
|
|
25
|
+
packageName: 'specify-cli',
|
|
26
|
+
cliCommand: 'specify',
|
|
27
|
+
isAgentSpecific: true,
|
|
28
|
+
supportedAgents: ['claude', 'codex', 'gemini'], // Per tech-spec: not supported for codemie-code, deepagents
|
|
29
|
+
initDirectory: '.specify' // SpecKit creates .specify/ directory, not .speckit/
|
|
30
|
+
};
|
|
31
|
+
/**
|
|
32
|
+
* Agent name mapping: CodeMie → SpecKit
|
|
33
|
+
*/
|
|
34
|
+
const AGENT_MAPPING = {
|
|
35
|
+
claude: 'claude',
|
|
36
|
+
codex: 'codex',
|
|
37
|
+
gemini: 'gemini'
|
|
38
|
+
};
|
|
39
|
+
/**
|
|
40
|
+
* SpecKit Framework Plugin
|
|
41
|
+
*/
|
|
42
|
+
export class SpeckitPlugin extends BaseFrameworkAdapter {
|
|
43
|
+
constructor() {
|
|
44
|
+
super(SpeckitMetadata);
|
|
45
|
+
}
|
|
46
|
+
/**
|
|
47
|
+
* Install SpecKit CLI via uv
|
|
48
|
+
*/
|
|
49
|
+
async install() {
|
|
50
|
+
this.logInstallStart();
|
|
51
|
+
try {
|
|
52
|
+
// Check if uv is installed
|
|
53
|
+
const hasUv = await this.checkUvInstalled();
|
|
54
|
+
if (!hasUv) {
|
|
55
|
+
throw new Error('uv is not installed. Install it with: curl -LsSf https://astral.sh/uv/install.sh | sh');
|
|
56
|
+
}
|
|
57
|
+
// Check if git is installed (required by uv tool install --from git+...)
|
|
58
|
+
const hasGit = await this.checkGitInstalled();
|
|
59
|
+
if (!hasGit) {
|
|
60
|
+
throw new Error('git is not installed. SpecKit installation requires git.');
|
|
61
|
+
}
|
|
62
|
+
// Install via uv tool install
|
|
63
|
+
logger.info('Installing SpecKit via uv (this may take a minute)...');
|
|
64
|
+
await exec('uv', ['tool', 'install', 'specify-cli', '--from', 'git+https://github.com/github/spec-kit.git'], { timeout: 120000 } // 2 minutes timeout for git clone + install
|
|
65
|
+
);
|
|
66
|
+
const version = await this.getVersion();
|
|
67
|
+
this.logInstallSuccess(version || undefined);
|
|
68
|
+
}
|
|
69
|
+
catch (error) {
|
|
70
|
+
this.logInstallError(error);
|
|
71
|
+
throw error;
|
|
72
|
+
}
|
|
73
|
+
}
|
|
74
|
+
/**
|
|
75
|
+
* Uninstall SpecKit CLI via uv
|
|
76
|
+
*/
|
|
77
|
+
async uninstall() {
|
|
78
|
+
this.logUninstallStart();
|
|
79
|
+
try {
|
|
80
|
+
// Check if uv is installed
|
|
81
|
+
const hasUv = await this.checkUvInstalled();
|
|
82
|
+
if (!hasUv) {
|
|
83
|
+
throw new Error('uv is not installed. Cannot uninstall SpecKit.');
|
|
84
|
+
}
|
|
85
|
+
// Uninstall via uv tool uninstall
|
|
86
|
+
await exec('uv', ['tool', 'uninstall', 'specify-cli'], { timeout: 30000 });
|
|
87
|
+
this.logUninstallSuccess();
|
|
88
|
+
}
|
|
89
|
+
catch (error) {
|
|
90
|
+
this.logUninstallError(error);
|
|
91
|
+
throw error;
|
|
92
|
+
}
|
|
93
|
+
}
|
|
94
|
+
/**
|
|
95
|
+
* Initialize SpecKit in current directory
|
|
96
|
+
*/
|
|
97
|
+
async init(agentName, options) {
|
|
98
|
+
this.assertAgentSupported(agentName);
|
|
99
|
+
const cwd = options?.cwd || process.cwd();
|
|
100
|
+
const force = options?.force ?? false;
|
|
101
|
+
// Check if already initialized
|
|
102
|
+
if (!force && (await this.isInitialized(cwd))) {
|
|
103
|
+
throw new Error(`SpecKit already initialized in ${cwd} (.specify/ exists). Use --force to re-initialize.`);
|
|
104
|
+
}
|
|
105
|
+
// Ensure SpecKit CLI is installed
|
|
106
|
+
const installed = await this.isInstalled();
|
|
107
|
+
let specifyCommand = 'specify';
|
|
108
|
+
if (!installed) {
|
|
109
|
+
logger.warn('SpecKit CLI not found. Installing...');
|
|
110
|
+
await this.install();
|
|
111
|
+
// After installation, use full path since PATH may not be updated
|
|
112
|
+
const { homedir } = await import('os');
|
|
113
|
+
const { join } = await import('path');
|
|
114
|
+
specifyCommand = join(homedir(), '.local', 'bin', 'specify');
|
|
115
|
+
}
|
|
116
|
+
this.logInitStart(agentName);
|
|
117
|
+
try {
|
|
118
|
+
// Get framework agent name
|
|
119
|
+
const frameworkAgent = this.getAgentMapping(agentName);
|
|
120
|
+
if (!frameworkAgent) {
|
|
121
|
+
throw new Error(`Agent '${agentName}' is not supported by SpecKit`);
|
|
122
|
+
}
|
|
123
|
+
// Detect OS for script type
|
|
124
|
+
const scriptType = this.detectScriptType();
|
|
125
|
+
// Build specify init command
|
|
126
|
+
// Note: When using --here, we don't provide a project name
|
|
127
|
+
const args = [
|
|
128
|
+
'init',
|
|
129
|
+
'--here', // Initialize in current directory
|
|
130
|
+
'--ai',
|
|
131
|
+
frameworkAgent,
|
|
132
|
+
'--script',
|
|
133
|
+
scriptType,
|
|
134
|
+
'--force' // Always force to avoid interactive prompts
|
|
135
|
+
];
|
|
136
|
+
// Run specify init (use full path if just installed)
|
|
137
|
+
await exec(specifyCommand, args, { cwd, timeout: 60000 });
|
|
138
|
+
this.logInitSuccess(cwd);
|
|
139
|
+
}
|
|
140
|
+
catch (error) {
|
|
141
|
+
this.logInitError(error);
|
|
142
|
+
throw error;
|
|
143
|
+
}
|
|
144
|
+
}
|
|
145
|
+
/**
|
|
146
|
+
* Get agent name mapping
|
|
147
|
+
*/
|
|
148
|
+
getAgentMapping(codemieAgentName) {
|
|
149
|
+
return AGENT_MAPPING[codemieAgentName] || null;
|
|
150
|
+
}
|
|
151
|
+
/**
|
|
152
|
+
* Override: SpecKit doesn't support --version
|
|
153
|
+
* Check installation via `specify --help` instead
|
|
154
|
+
*/
|
|
155
|
+
async isInstalled() {
|
|
156
|
+
try {
|
|
157
|
+
const result = await exec('specify', ['--help'], { timeout: 5000 });
|
|
158
|
+
return result.code === 0;
|
|
159
|
+
}
|
|
160
|
+
catch {
|
|
161
|
+
return false;
|
|
162
|
+
}
|
|
163
|
+
}
|
|
164
|
+
/**
|
|
165
|
+
* Override: SpecKit uses `specify version` command instead of --version flag
|
|
166
|
+
*/
|
|
167
|
+
async getVersion() {
|
|
168
|
+
try {
|
|
169
|
+
const result = await exec('specify', ['version'], { timeout: 5000 });
|
|
170
|
+
if (result.code === 0 && result.stdout) {
|
|
171
|
+
// Extract version from output
|
|
172
|
+
const match = result.stdout.match(/Version:\s*(\S+)/i) || result.stdout.match(/(\d+\.\d+\.\d+)/);
|
|
173
|
+
return match ? match[1] : null;
|
|
174
|
+
}
|
|
175
|
+
return null;
|
|
176
|
+
}
|
|
177
|
+
catch {
|
|
178
|
+
return null;
|
|
179
|
+
}
|
|
180
|
+
}
|
|
181
|
+
/**
|
|
182
|
+
* Check if uv is installed
|
|
183
|
+
*/
|
|
184
|
+
async checkUvInstalled() {
|
|
185
|
+
try {
|
|
186
|
+
await exec('uv', ['--version'], { timeout: 2000 });
|
|
187
|
+
return true;
|
|
188
|
+
}
|
|
189
|
+
catch {
|
|
190
|
+
return false;
|
|
191
|
+
}
|
|
192
|
+
}
|
|
193
|
+
/**
|
|
194
|
+
* Check if git is installed
|
|
195
|
+
*/
|
|
196
|
+
async checkGitInstalled() {
|
|
197
|
+
try {
|
|
198
|
+
await exec('git', ['--version'], { timeout: 2000 });
|
|
199
|
+
return true;
|
|
200
|
+
}
|
|
201
|
+
catch {
|
|
202
|
+
return false;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
/**
|
|
206
|
+
* Detect script type based on OS
|
|
207
|
+
*/
|
|
208
|
+
detectScriptType() {
|
|
209
|
+
const os = platform();
|
|
210
|
+
return os === 'win32' ? 'ps' : 'sh';
|
|
211
|
+
}
|
|
212
|
+
}
|
|
213
|
+
//# sourceMappingURL=speckit.plugin.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"speckit.plugin.js","sourceRoot":"","sources":["../../../src/frameworks/plugins/speckit.plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/metrics/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,
|
|
1
|
+
{"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../../src/metrics/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,YAAY,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,cAAc,EAAE,aA4C5B,CAAC;AAEF;;GAEG;AACH,eAAO,MAAM,aAAa;;;CAGzB,CAAC;AAEF;;GAEG;AACH,wBAAgB,cAAc,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,CAIvD;AAED;;;GAGG;AACH,wBAAgB,cAAc,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAExD;AAED;;;GAGG;AACH,wBAAgB,qBAAqB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE/D;AAED;;;;GAIG;AACH,wBAAgB,gBAAgB,CAAC,SAAS,EAAE,MAAM,GAAG,MAAM,CAE1D"}
|
package/dist/metrics/config.js
CHANGED
|
@@ -38,7 +38,13 @@ export const METRICS_CONFIG = {
|
|
|
38
38
|
*/
|
|
39
39
|
watermark: {
|
|
40
40
|
ttl: 24 * 60 * 60 * 1000 // 24 hours
|
|
41
|
-
}
|
|
41
|
+
},
|
|
42
|
+
/**
|
|
43
|
+
* Post-processing configuration
|
|
44
|
+
* Global default: exclude errors from shell tools (contains sensitive command output)
|
|
45
|
+
* Individual agents can override this via their metricsConfig.excludeErrorsFromTools
|
|
46
|
+
*/
|
|
47
|
+
excludeErrorsFromTools: ['Bash', 'Execute', 'Shell']
|
|
42
48
|
};
|
|
43
49
|
/**
|
|
44
50
|
* Storage paths
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/metrics/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C;;OAEG;IACH,OAAO,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,KAAK,YAAY;IAExD;;;OAGG;IACH,SAAS,EAAE;QACT,MAAM,EAAE,GAAG;QACX,8BAA8B;KAC/B;IAED;;OAEG;IACH,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,sBAAsB;KAC7D;IAED;;OAEG;IACH,UAAU,EAAE;QACV,YAAY,EAAE,IAAI,EAAE,sBAAsB;QAC1C,aAAa,EAAE,IAAI,CAAC,gCAAgC;KACrD;IAED;;OAEG;IACH,SAAS,EAAE;QACT,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW;KACrC;
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/metrics/config.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH;;GAEG;AACH,MAAM,CAAC,MAAM,cAAc,GAAkB;IAC3C;;OAEG;IACH,OAAO,EAAE,CAAC,QAAgB,EAAE,EAAE,CAAC,QAAQ,KAAK,YAAY;IAExD;;;OAGG;IACH,SAAS,EAAE;QACT,MAAM,EAAE,GAAG;QACX,8BAA8B;KAC/B;IAED;;OAEG;IACH,KAAK,EAAE;QACL,QAAQ,EAAE,CAAC;QACX,MAAM,EAAE,CAAC,GAAG,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,EAAE,IAAI,CAAC,CAAC,sBAAsB;KAC7D;IAED;;OAEG;IACH,UAAU,EAAE;QACV,YAAY,EAAE,IAAI,EAAE,sBAAsB;QAC1C,aAAa,EAAE,IAAI,CAAC,gCAAgC;KACrD;IAED;;OAEG;IACH,SAAS,EAAE;QACT,GAAG,EAAE,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,IAAI,CAAC,WAAW;KACrC;IAED;;;;OAIG;IACH,sBAAsB,EAAE,CAAC,MAAM,EAAE,SAAS,EAAE,OAAO,CAAC;CACrD,CAAC;AAEF;;GAEG;AACH,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,IAAI,EAAE,kBAAkB;IACxB,QAAQ,EAAE,UAAU;CACrB,CAAC;AAEF;;GAEG;AACH,MAAM,UAAU,cAAc,CAAC,OAAgB;IAC7C,MAAM,OAAO,GAAG,OAAO,CAAC,GAAG,CAAC,IAAI,IAAI,OAAO,CAAC,GAAG,CAAC,WAAW,IAAI,GAAG,CAAC;IACnE,MAAM,IAAI,GAAG,GAAG,OAAO,IAAI,aAAa,CAAC,IAAI,EAAE,CAAC;IAChD,OAAO,OAAO,CAAC,CAAC,CAAC,GAAG,IAAI,IAAI,OAAO,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC;AAC/C,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,cAAc,CAAC,SAAiB;IAC9C,OAAO,cAAc,CAAC,GAAG,aAAa,CAAC,QAAQ,IAAI,SAAS,OAAO,CAAC,CAAC;AACvE,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,qBAAqB,CAAC,SAAiB;IACrD,OAAO,cAAc,CAAC,GAAG,aAAa,CAAC,QAAQ,IAAI,SAAS,gBAAgB,CAAC,CAAC;AAChF,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAAC,SAAiB;IAChD,OAAO,cAAc,CAAC,GAAG,aAAa,CAAC,QAAQ,IAAI,SAAS,OAAO,CAAC,CAAC;AACvE,CAAC"}
|
|
@@ -6,9 +6,15 @@
|
|
|
6
6
|
*/
|
|
7
7
|
import type { MetricDelta, MetricsSession } from '../types.js';
|
|
8
8
|
import type { SessionMetric } from './types.js';
|
|
9
|
+
import type { AgentMetricsConfig } from '../../agents/core/types.js';
|
|
9
10
|
/**
|
|
10
11
|
* Aggregate pending deltas into session metrics grouped by branch
|
|
11
12
|
* Returns one metric per branch to prevent mixing metrics between branches
|
|
13
|
+
*
|
|
14
|
+
* @param deltas - Metric deltas to aggregate
|
|
15
|
+
* @param session - Metrics session information
|
|
16
|
+
* @param version - CLI version
|
|
17
|
+
* @param agentConfig - Optional agent-specific metrics configuration (for post-processing)
|
|
12
18
|
*/
|
|
13
|
-
export declare function aggregateDeltas(deltas: MetricDelta[], session: MetricsSession, version: string): SessionMetric[];
|
|
19
|
+
export declare function aggregateDeltas(deltas: MetricDelta[], session: MetricsSession, version: string, agentConfig?: AgentMetricsConfig): SessionMetric[];
|
|
14
20
|
//# sourceMappingURL=aggregator.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../src/metrics/sync/aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAoB,aAAa,EAAC,MAAM,YAAY,CAAC;
|
|
1
|
+
{"version":3,"file":"aggregator.d.ts","sourceRoot":"","sources":["../../../src/metrics/sync/aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EAAC,WAAW,EAAE,cAAc,EAAC,MAAM,aAAa,CAAC;AAC7D,OAAO,KAAK,EAAoB,aAAa,EAAC,MAAM,YAAY,CAAC;AACjE,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAInE;;;;;;;;GAQG;AACH,wBAAgB,eAAe,CAC7B,MAAM,EAAE,WAAW,EAAE,EACrB,OAAO,EAAE,cAAc,EACvB,OAAO,EAAE,MAAM,EACf,WAAW,CAAC,EAAE,kBAAkB,GAC/B,aAAa,EAAE,CAuCjB"}
|
|
@@ -5,11 +5,17 @@
|
|
|
5
5
|
* Reuses patterns from analytics system.
|
|
6
6
|
*/
|
|
7
7
|
import { logger } from '../../utils/logger.js';
|
|
8
|
+
import { postProcessMetric } from './post-processor.js';
|
|
8
9
|
/**
|
|
9
10
|
* Aggregate pending deltas into session metrics grouped by branch
|
|
10
11
|
* Returns one metric per branch to prevent mixing metrics between branches
|
|
12
|
+
*
|
|
13
|
+
* @param deltas - Metric deltas to aggregate
|
|
14
|
+
* @param session - Metrics session information
|
|
15
|
+
* @param version - CLI version
|
|
16
|
+
* @param agentConfig - Optional agent-specific metrics configuration (for post-processing)
|
|
11
17
|
*/
|
|
12
|
-
export function aggregateDeltas(deltas, session, version) {
|
|
18
|
+
export function aggregateDeltas(deltas, session, version, agentConfig) {
|
|
13
19
|
logger.debug(`[aggregator] Aggregating ${deltas.length} deltas for session ${session.sessionId}`);
|
|
14
20
|
// Group deltas by branch
|
|
15
21
|
const deltasByBranch = new Map();
|
|
@@ -28,10 +34,13 @@ export function aggregateDeltas(deltas, session, version) {
|
|
|
28
34
|
// Build attributes from deltas for this branch
|
|
29
35
|
const attributes = buildSessionAttributes(branchDeltas, session, version, branch);
|
|
30
36
|
// Create session metric for this branch
|
|
31
|
-
|
|
37
|
+
const metric = {
|
|
32
38
|
name: 'codemie_cli_usage_total',
|
|
33
39
|
attributes
|
|
34
|
-
}
|
|
40
|
+
};
|
|
41
|
+
// Post-process metric to sanitize sensitive data
|
|
42
|
+
const sanitized = postProcessMetric(metric, agentConfig);
|
|
43
|
+
metrics.push(sanitized);
|
|
35
44
|
}
|
|
36
45
|
return metrics;
|
|
37
46
|
}
|
|
@@ -142,9 +151,9 @@ function buildSessionAttributes(deltas, session, version, branch) {
|
|
|
142
151
|
agent: session.agentName,
|
|
143
152
|
agent_version: version,
|
|
144
153
|
llm_model: primaryModel || 'unknown',
|
|
145
|
-
|
|
154
|
+
repository: session.workingDirectory,
|
|
146
155
|
session_id: session.sessionId,
|
|
147
|
-
|
|
156
|
+
branch: branch,
|
|
148
157
|
// Interaction Metrics
|
|
149
158
|
total_user_prompts: userPromptCount,
|
|
150
159
|
// Token Metrics
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"aggregator.js","sourceRoot":"","sources":["../../../src/metrics/sync/aggregator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;
|
|
1
|
+
{"version":3,"file":"aggregator.js","sourceRoot":"","sources":["../../../src/metrics/sync/aggregator.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics Post-Processor
|
|
3
|
+
*
|
|
4
|
+
* Sanitizes metrics before sending to API:
|
|
5
|
+
* 1. Truncates project paths to prevent leaking sensitive directory info
|
|
6
|
+
* 2. Filters out tool errors based on agent configuration
|
|
7
|
+
* 3. Escapes/sanitizes error messages to prevent JSON issues
|
|
8
|
+
*/
|
|
9
|
+
import type { SessionMetric } from './types.js';
|
|
10
|
+
import type { AgentMetricsConfig } from '../../agents/core/types.js';
|
|
11
|
+
/**
|
|
12
|
+
* Post-process a session metric to sanitize sensitive data
|
|
13
|
+
*
|
|
14
|
+
* @param metric - The metric to sanitize
|
|
15
|
+
* @param agentConfig - Optional agent-specific configuration (overrides global defaults)
|
|
16
|
+
*/
|
|
17
|
+
export declare function postProcessMetric(metric: SessionMetric, agentConfig?: AgentMetricsConfig): SessionMetric;
|
|
18
|
+
/**
|
|
19
|
+
* Truncate project path to parent/current format
|
|
20
|
+
* Prevents leaking full directory structure
|
|
21
|
+
*
|
|
22
|
+
* Uses path.normalize() to handle mixed separators and edge cases
|
|
23
|
+
*
|
|
24
|
+
* @example
|
|
25
|
+
* '/Users/Nikita/repos/EPMCDME/codemie-ai/codemie-code' → 'codemie-ai/codemie-code'
|
|
26
|
+
* 'C:\\Users\\Dev\\projects\\my-app' → 'projects/my-app'
|
|
27
|
+
* 'C:/Users/Name\\project' → 'Name/project' (mixed separators)
|
|
28
|
+
* '/' → 'unknown' (root)
|
|
29
|
+
* './parent/current' → 'parent/current' (relative)
|
|
30
|
+
*/
|
|
31
|
+
export declare function truncateProjectPath(fullPath: string): string;
|
|
32
|
+
/**
|
|
33
|
+
* Filter and sanitize errors based on agent configuration
|
|
34
|
+
* Removes errors from excluded tools and sanitizes remaining errors
|
|
35
|
+
*
|
|
36
|
+
* @param errors - Map of tool names to error message arrays
|
|
37
|
+
* @param agentConfig - Optional agent-specific configuration (overrides global defaults)
|
|
38
|
+
*/
|
|
39
|
+
export declare function filterAndSanitizeErrors(errors: Record<string, string[]>, agentConfig?: AgentMetricsConfig): Record<string, string[]>;
|
|
40
|
+
/**
|
|
41
|
+
* Sanitize error message
|
|
42
|
+
* 1. Strip ANSI color codes using strip-ansi library
|
|
43
|
+
* 2. Normalize newlines
|
|
44
|
+
* 3. Truncate at last complete line under 1000 chars (better UX)
|
|
45
|
+
* 4. Escape for JSON safety
|
|
46
|
+
*/
|
|
47
|
+
export declare function sanitizeError(error: string): string;
|
|
48
|
+
//# sourceMappingURL=post-processor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"post-processor.d.ts","sourceRoot":"","sources":["../../../src/metrics/sync/post-processor.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAIH,OAAO,KAAK,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAC9C,OAAO,KAAK,EAAC,kBAAkB,EAAC,MAAM,4BAA4B,CAAC;AAInE;;;;;GAKG;AACH,wBAAgB,iBAAiB,CAC/B,MAAM,EAAE,aAAa,EACrB,WAAW,CAAC,EAAE,kBAAkB,GAC/B,aAAa,CA2Bf;AAED;;;;;;;;;;;;GAYG;AACH,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,MAAM,GAAG,MAAM,CAqC5D;AAED;;;;;;GAMG;AACH,wBAAgB,uBAAuB,CACrC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,EAChC,WAAW,CAAC,EAAE,kBAAkB,GAC/B,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAuB1B;AAED;;;;;;GAMG;AACH,wBAAgB,aAAa,CAAC,KAAK,EAAE,MAAM,GAAG,MAAM,CAgCnD"}
|
|
@@ -0,0 +1,147 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Metrics Post-Processor
|
|
3
|
+
*
|
|
4
|
+
* Sanitizes metrics before sending to API:
|
|
5
|
+
* 1. Truncates project paths to prevent leaking sensitive directory info
|
|
6
|
+
* 2. Filters out tool errors based on agent configuration
|
|
7
|
+
* 3. Escapes/sanitizes error messages to prevent JSON issues
|
|
8
|
+
*/
|
|
9
|
+
import path from 'path';
|
|
10
|
+
import stripAnsi from 'strip-ansi';
|
|
11
|
+
import { METRICS_CONFIG } from '../config.js';
|
|
12
|
+
import { logger } from '../../utils/logger.js';
|
|
13
|
+
/**
|
|
14
|
+
* Post-process a session metric to sanitize sensitive data
|
|
15
|
+
*
|
|
16
|
+
* @param metric - The metric to sanitize
|
|
17
|
+
* @param agentConfig - Optional agent-specific configuration (overrides global defaults)
|
|
18
|
+
*/
|
|
19
|
+
export function postProcessMetric(metric, agentConfig) {
|
|
20
|
+
logger.debug(`[post-processor] Sanitizing metric`);
|
|
21
|
+
// Clone to avoid mutation
|
|
22
|
+
const sanitized = {
|
|
23
|
+
...metric,
|
|
24
|
+
attributes: { ...metric.attributes }
|
|
25
|
+
};
|
|
26
|
+
// 1. Truncate repository path
|
|
27
|
+
sanitized.attributes.repository = truncateProjectPath(sanitized.attributes.repository);
|
|
28
|
+
// 2. Filter and sanitize errors
|
|
29
|
+
if (sanitized.attributes.had_errors && sanitized.attributes.errors) {
|
|
30
|
+
sanitized.attributes.errors = filterAndSanitizeErrors(sanitized.attributes.errors, agentConfig);
|
|
31
|
+
// If all errors were filtered, update had_errors flag
|
|
32
|
+
if (Object.keys(sanitized.attributes.errors).length === 0) {
|
|
33
|
+
sanitized.attributes.had_errors = false;
|
|
34
|
+
delete sanitized.attributes.errors;
|
|
35
|
+
}
|
|
36
|
+
}
|
|
37
|
+
return sanitized;
|
|
38
|
+
}
|
|
39
|
+
/**
|
|
40
|
+
* Truncate project path to parent/current format
|
|
41
|
+
* Prevents leaking full directory structure
|
|
42
|
+
*
|
|
43
|
+
* Uses path.normalize() to handle mixed separators and edge cases
|
|
44
|
+
*
|
|
45
|
+
* @example
|
|
46
|
+
* '/Users/Nikita/repos/EPMCDME/codemie-ai/codemie-code' → 'codemie-ai/codemie-code'
|
|
47
|
+
* 'C:\\Users\\Dev\\projects\\my-app' → 'projects/my-app'
|
|
48
|
+
* 'C:/Users/Name\\project' → 'Name/project' (mixed separators)
|
|
49
|
+
* '/' → 'unknown' (root)
|
|
50
|
+
* './parent/current' → 'parent/current' (relative)
|
|
51
|
+
*/
|
|
52
|
+
export function truncateProjectPath(fullPath) {
|
|
53
|
+
// Handle empty/null/undefined
|
|
54
|
+
if (!fullPath || typeof fullPath !== 'string' || fullPath.trim() === '') {
|
|
55
|
+
return 'unknown';
|
|
56
|
+
}
|
|
57
|
+
try {
|
|
58
|
+
// Normalize path (handles mixed separators on Windows)
|
|
59
|
+
const normalized = path.normalize(fullPath);
|
|
60
|
+
// Split and filter empty segments and current directory markers
|
|
61
|
+
const segments = normalized.split(path.sep).filter(s => s && s !== '.');
|
|
62
|
+
// Handle edge cases
|
|
63
|
+
if (segments.length === 0) {
|
|
64
|
+
return 'unknown'; // Empty path after normalization
|
|
65
|
+
}
|
|
66
|
+
if (segments.length === 1) {
|
|
67
|
+
// Single segment (e.g., root '/', drive 'C:', or single folder)
|
|
68
|
+
const segment = segments[0];
|
|
69
|
+
// Check if it's a root/drive indicator
|
|
70
|
+
if (segment === '/' || segment.match(/^[A-Za-z]:$/)) {
|
|
71
|
+
return 'unknown';
|
|
72
|
+
}
|
|
73
|
+
return segment;
|
|
74
|
+
}
|
|
75
|
+
// Take last 2 segments (parent/current)
|
|
76
|
+
const last2 = segments.slice(-2);
|
|
77
|
+
// Always use forward slash for API consistency
|
|
78
|
+
return last2.join('/');
|
|
79
|
+
}
|
|
80
|
+
catch (error) {
|
|
81
|
+
logger.warn(`[post-processor] Failed to truncate path "${fullPath}": ${error}`);
|
|
82
|
+
return 'unknown';
|
|
83
|
+
}
|
|
84
|
+
}
|
|
85
|
+
/**
|
|
86
|
+
* Filter and sanitize errors based on agent configuration
|
|
87
|
+
* Removes errors from excluded tools and sanitizes remaining errors
|
|
88
|
+
*
|
|
89
|
+
* @param errors - Map of tool names to error message arrays
|
|
90
|
+
* @param agentConfig - Optional agent-specific configuration (overrides global defaults)
|
|
91
|
+
*/
|
|
92
|
+
export function filterAndSanitizeErrors(errors, agentConfig) {
|
|
93
|
+
// Get excluded tools from agent config or fall back to global defaults
|
|
94
|
+
const excludedTools = agentConfig?.excludeErrorsFromTools
|
|
95
|
+
|| METRICS_CONFIG.excludeErrorsFromTools
|
|
96
|
+
|| [];
|
|
97
|
+
logger.debug(`[post-processor] Filtering errors, excluded tools: [${excludedTools.join(', ')}]`);
|
|
98
|
+
const filtered = {};
|
|
99
|
+
for (const [toolName, errorMessages] of Object.entries(errors)) {
|
|
100
|
+
// Skip errors from excluded tools
|
|
101
|
+
if (excludedTools.includes(toolName)) {
|
|
102
|
+
logger.debug(`[post-processor] Excluding errors from tool: ${toolName}`);
|
|
103
|
+
continue;
|
|
104
|
+
}
|
|
105
|
+
// Sanitize error messages
|
|
106
|
+
const sanitizedMessages = errorMessages.map(sanitizeError);
|
|
107
|
+
filtered[toolName] = sanitizedMessages;
|
|
108
|
+
}
|
|
109
|
+
return filtered;
|
|
110
|
+
}
|
|
111
|
+
/**
|
|
112
|
+
* Sanitize error message
|
|
113
|
+
* 1. Strip ANSI color codes using strip-ansi library
|
|
114
|
+
* 2. Normalize newlines
|
|
115
|
+
* 3. Truncate at last complete line under 1000 chars (better UX)
|
|
116
|
+
* 4. Escape for JSON safety
|
|
117
|
+
*/
|
|
118
|
+
export function sanitizeError(error) {
|
|
119
|
+
// 1. Strip ALL ANSI escape codes (handles OSC, CSI, etc.)
|
|
120
|
+
let sanitized = stripAnsi(error);
|
|
121
|
+
// 2. Normalize newlines (CRLF → LF)
|
|
122
|
+
sanitized = sanitized.replace(/\r\n/g, '\n');
|
|
123
|
+
// 3. Truncate at last complete line under 1000 chars (before escaping)
|
|
124
|
+
const maxLength = 1000;
|
|
125
|
+
if (sanitized.length > maxLength) {
|
|
126
|
+
// Find last newline before maxLength
|
|
127
|
+
const substring = sanitized.substring(0, maxLength);
|
|
128
|
+
const lastNewline = substring.lastIndexOf('\n');
|
|
129
|
+
// Use last complete line if it's past 50% threshold
|
|
130
|
+
if (lastNewline > maxLength * 0.5) {
|
|
131
|
+
sanitized = substring.substring(0, lastNewline) + '\n...[truncated]';
|
|
132
|
+
}
|
|
133
|
+
else {
|
|
134
|
+
// Otherwise hard truncate
|
|
135
|
+
sanitized = substring + '...[truncated]';
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
// 4. Escape for JSON safety
|
|
139
|
+
// IMPORTANT: Escape backslashes FIRST before other escape sequences
|
|
140
|
+
sanitized = sanitized
|
|
141
|
+
.replace(/\\/g, '\\\\') // Escape backslashes first
|
|
142
|
+
.replace(/"/g, '\\"') // Escape quotes
|
|
143
|
+
.replace(/\n/g, '\\n') // Escape newlines
|
|
144
|
+
.replace(/\t/g, '\\t'); // Escape tabs
|
|
145
|
+
return sanitized;
|
|
146
|
+
}
|
|
147
|
+
//# sourceMappingURL=post-processor.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"post-processor.js","sourceRoot":"","sources":["../../../src/metrics/sync/post-processor.ts"],"names":[],"mappings":"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"}
|
|
@@ -20,9 +20,9 @@ export interface SessionAttributes {
|
|
|
20
20
|
agent: string;
|
|
21
21
|
agent_version: string;
|
|
22
22
|
llm_model: string;
|
|
23
|
-
|
|
23
|
+
repository: string;
|
|
24
24
|
session_id: string;
|
|
25
|
-
|
|
25
|
+
branch: string;
|
|
26
26
|
total_user_prompts: number;
|
|
27
27
|
total_input_tokens: number;
|
|
28
28
|
total_output_tokens: number;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/metrics/sync/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IAEb,wBAAwB;IACxB,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../src/metrics/sync/types.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAEH;;;GAGG;AACH,MAAM,WAAW,aAAa;IAC5B,wDAAwD;IACxD,IAAI,EAAE,MAAM,CAAC;IAEb,wBAAwB;IACxB,UAAU,EAAE,iBAAiB,CAAC;CAC/B;AAED;;GAEG;AACH,MAAM,WAAW,iBAAiB;IAEhC,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,MAAM,CAAC;IACtB,SAAS,EAAE,MAAM,CAAC;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,UAAU,EAAE,MAAM,CAAC;IACnB,MAAM,EAAE,MAAM,CAAC;IAGf,kBAAkB,EAAE,MAAM,CAAC;IAG3B,kBAAkB,EAAE,MAAM,CAAC;IAC3B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,6BAA6B,EAAE,MAAM,CAAC;IACtC,2BAA2B,EAAE,MAAM,CAAC;IAGpC,gBAAgB,EAAE,MAAM,CAAC;IACzB,qBAAqB,EAAE,MAAM,CAAC;IAC9B,iBAAiB,EAAE,MAAM,CAAC;IAG1B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,aAAa,EAAE,MAAM,CAAC;IACtB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,mBAAmB,EAAE,MAAM,CAAC;IAG5B,mBAAmB,EAAE,MAAM,CAAC;IAC5B,UAAU,EAAE,OAAO,CAAC;IACpB,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,EAAE,CAAC,CAAC;IAClC,KAAK,EAAE,MAAM,CAAC;CACf;AAED;;;GAGG;AACH,MAAM,WAAW,mBAAmB;IAClC,OAAO,EAAE,OAAO,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC9B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,IAAI,CAAC,EAAE,MAAM,CAAC;CACf;AAED;;GAEG;AACH,MAAM,WAAW,gBAAgB;IAC/B,OAAO,EAAE,MAAM,CAAC;IAChB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,WAAW,CAAC,EAAE,MAAM,EAAE,CAAC;IACvB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,UAAU,CAAC,EAAE,MAAM,CAAC;CACrB"}
|
package/dist/metrics/types.d.ts
CHANGED
|
@@ -304,5 +304,11 @@ export interface MetricsConfig {
|
|
|
304
304
|
watermark: {
|
|
305
305
|
ttl: number;
|
|
306
306
|
};
|
|
307
|
+
/**
|
|
308
|
+
* Global list of tool names whose errors should be excluded from metrics
|
|
309
|
+
* Agents can override this via their metricsConfig.excludeErrorsFromTools
|
|
310
|
+
* Example: ['Bash', 'Execute', 'Shell']
|
|
311
|
+
*/
|
|
312
|
+
excludeErrorsFromTools?: string[];
|
|
307
313
|
}
|
|
308
314
|
//# sourceMappingURL=types.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/metrics/types.ts"],"names":[],"mappings":"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"}
|