@harness-engineering/cli 1.10.0 → 1.12.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/dist/agents/skills/claude-code/enforce-architecture/SKILL.md +4 -0
- package/dist/agents/skills/claude-code/harness-parallel-agents/SKILL.md +105 -20
- package/dist/agents/skills/claude-code/harness-pre-commit-review/SKILL.md +37 -0
- package/dist/agents/skills/gemini-cli/enforce-architecture/SKILL.md +4 -0
- package/dist/agents/skills/gemini-cli/harness-parallel-agents/SKILL.md +105 -20
- package/dist/agents/skills/gemini-cli/harness-pre-commit-review/SKILL.md +37 -0
- package/dist/{agents-md-EMRFLNBC.js → agents-md-KIS2RSMG.js} +1 -1
- package/dist/{architecture-5JNN5L3M.js → architecture-AJAUDRQQ.js} +2 -2
- package/dist/bin/harness-mcp.js +14 -14
- package/dist/bin/harness.js +20 -20
- package/dist/{check-phase-gate-WOKIYGAM.js → check-phase-gate-K7QCSYRJ.js} +4 -4
- package/dist/{chunk-FPIPT36X.js → chunk-2SWJ4VO7.js} +6 -6
- package/dist/{chunk-OPXH4CQN.js → chunk-2YPZKGAG.js} +1 -1
- package/dist/{chunk-B7HFEHWP.js → chunk-3WGJMBKH.js} +10 -0
- package/dist/{chunk-ECUJQS3B.js → chunk-6N4R6FVX.js} +3 -3
- package/dist/{chunk-LXU5M77O.js → chunk-747VBPA4.js} +390 -57
- package/dist/{chunk-NX6DSZSM.js → chunk-AE2OWWDH.js} +4497 -2640
- package/dist/{chunk-PAHHT2IK.js → chunk-B5SBNH4S.js} +2833 -918
- package/dist/{chunk-F4PTVZWA.js → chunk-CTTFXXKJ.js} +7 -7
- package/dist/{chunk-PSXF277V.js → chunk-EAURF4LH.js} +1 -1
- package/dist/chunk-EBJQ6N4M.js +39 -0
- package/dist/{chunk-4PFMY3H7.js → chunk-FLOEMHDF.js} +9 -9
- package/dist/{chunk-46YA6FI3.js → chunk-GNGELAXY.js} +2 -2
- package/dist/{chunk-EOLRW32Q.js → chunk-HD4IBGLA.js} +9 -1
- package/dist/{chunk-CWZ4Y2PO.js → chunk-JLXOEO5C.js} +4 -4
- package/dist/{chunk-F3YDAJFQ.js → chunk-L2KLU56K.js} +2 -2
- package/dist/{chunk-MO4YQOMB.js → chunk-OIGVQF5V.js} +3 -3
- package/dist/{chunk-PMTFPOCT.js → chunk-TJVVU3HB.js} +1 -1
- package/dist/{chunk-MDUK2J2O.js → chunk-VRFZWGMS.js} +2 -1
- package/dist/{chunk-FX7SQHGD.js → chunk-YXOG2277.js} +2 -2
- package/dist/{chunk-7X7ZAYMY.js → chunk-ZU2UBYBY.js} +102 -5
- package/dist/{ci-workflow-ZBBUNTHQ.js → ci-workflow-NBL4OT4A.js} +1 -1
- package/dist/create-skill-WPXHSLX2.js +11 -0
- package/dist/{dist-PBTNVK6K.js → dist-IJ4J4C5G.js} +103 -1
- package/dist/{dist-I7DB5VKB.js → dist-M6BQODWC.js} +1145 -0
- package/dist/{docs-PTJGD6XI.js → docs-CPTMH3VY.js} +2 -2
- package/dist/{engine-SCMZ3G3E.js → engine-BUWPAAGD.js} +1 -1
- package/dist/{entropy-YIUBGKY7.js → entropy-Z4FYVQ7L.js} +2 -2
- package/dist/{feedback-WEVQSLAA.js → feedback-TT6WF5YX.js} +1 -1
- package/dist/{generate-agent-definitions-BU5LOJTI.js → generate-agent-definitions-J5HANRNR.js} +4 -4
- package/dist/{graph-loader-RLO3KRIX.js → graph-loader-KO4GJ5N2.js} +1 -1
- package/dist/index.d.ts +355 -12
- package/dist/index.js +33 -21
- package/dist/{loader-6S6PVGSF.js → loader-PCU5YWRH.js} +1 -1
- package/dist/mcp-YM6QLHLZ.js +34 -0
- package/dist/{performance-5TVW6SA6.js → performance-YJVXOKIB.js} +2 -2
- package/dist/{review-pipeline-4JTQAWKW.js → review-pipeline-KGMIMLIE.js} +1 -1
- package/dist/{runtime-PXIM7UV6.js → runtime-F6R27LD6.js} +1 -1
- package/dist/{security-URYTKLGK.js → security-MX5VVXBC.js} +1 -1
- package/dist/skill-executor-RG45LUO5.js +8 -0
- package/dist/templates/orchestrator/WORKFLOW.md +48 -0
- package/dist/templates/orchestrator/template.json +6 -0
- package/dist/{validate-KSDUUK2M.js → validate-EFNMSFKD.js} +2 -2
- package/dist/{validate-cross-check-WZAX357V.js → validate-cross-check-LJX65SBS.js} +1 -1
- package/package.json +10 -6
- package/dist/chunk-HIOXKZYF.js +0 -15
- package/dist/create-skill-LUWO46WF.js +0 -11
- package/dist/mcp-BNLBTCXZ.js +0 -34
- package/dist/skill-executor-KVS47DAU.js +0 -8
package/dist/index.d.ts
CHANGED
|
@@ -1,8 +1,9 @@
|
|
|
1
1
|
import { Command } from 'commander';
|
|
2
2
|
import { ContextQLResult, IngestResult } from '@harness-engineering/graph';
|
|
3
|
-
import { Result } from '@harness-engineering/core';
|
|
3
|
+
import { Result, Violation, ConflictReport } from '@harness-engineering/core';
|
|
4
4
|
import { z } from 'zod';
|
|
5
5
|
import { Server } from '@modelcontextprotocol/sdk/server/index.js';
|
|
6
|
+
import { Result as Result$1 } from '@harness-engineering/types';
|
|
6
7
|
|
|
7
8
|
interface Phase {
|
|
8
9
|
name: string;
|
|
@@ -52,23 +53,40 @@ declare function runGraphStatus(projectPath: string): Promise<GraphStatusResult>
|
|
|
52
53
|
declare function runGraphExport(projectPath: string, format: string): Promise<string>;
|
|
53
54
|
|
|
54
55
|
/**
|
|
55
|
-
*
|
|
56
|
+
* Standard exit codes for the Harness CLI.
|
|
56
57
|
*/
|
|
57
58
|
declare const ExitCode: {
|
|
59
|
+
/** Command completed successfully */
|
|
58
60
|
readonly SUCCESS: 0;
|
|
61
|
+
/** Command failed because of a validation error (e.g. check-docs found issues) */
|
|
59
62
|
readonly VALIDATION_FAILED: 1;
|
|
63
|
+
/** Command failed because of an unexpected error or misconfiguration */
|
|
60
64
|
readonly ERROR: 2;
|
|
61
65
|
};
|
|
66
|
+
/**
|
|
67
|
+
* Type representing one of the supported exit codes.
|
|
68
|
+
*/
|
|
62
69
|
type ExitCodeType = (typeof ExitCode)[keyof typeof ExitCode];
|
|
63
70
|
/**
|
|
64
|
-
*
|
|
71
|
+
* Custom error class for CLI-specific failures.
|
|
72
|
+
* Includes an exit code that should be used when terminating the process.
|
|
65
73
|
*/
|
|
66
74
|
declare class CLIError extends Error {
|
|
75
|
+
/** The exit code associated with this error */
|
|
67
76
|
readonly exitCode: ExitCodeType;
|
|
77
|
+
/**
|
|
78
|
+
* Creates a new CLIError.
|
|
79
|
+
*
|
|
80
|
+
* @param message - Human-readable error message.
|
|
81
|
+
* @param exitCode - Exit code to use when process terminates. Defaults to ExitCode.ERROR.
|
|
82
|
+
*/
|
|
68
83
|
constructor(message: string, exitCode?: ExitCodeType);
|
|
69
84
|
}
|
|
70
85
|
/**
|
|
71
|
-
*
|
|
86
|
+
* Handles an error by logging it to stderr and exiting the process with the appropriate code.
|
|
87
|
+
*
|
|
88
|
+
* @param error - The error to handle.
|
|
89
|
+
* @throws Never returns, as it terminates the process.
|
|
72
90
|
*/
|
|
73
91
|
declare function handleError(error: unknown): never;
|
|
74
92
|
|
|
@@ -143,59 +161,138 @@ declare function generateSlashCommands(opts: GenerateOptions): GenerateResult[];
|
|
|
143
161
|
|
|
144
162
|
interface SkillSource {
|
|
145
163
|
dir: string;
|
|
146
|
-
source: 'project' | 'global';
|
|
164
|
+
source: 'project' | 'community' | 'global';
|
|
147
165
|
}
|
|
148
166
|
|
|
167
|
+
/**
|
|
168
|
+
* Supported output modes for the CLI.
|
|
169
|
+
*/
|
|
149
170
|
declare const OutputMode: {
|
|
171
|
+
/** Output as formatted JSON */
|
|
150
172
|
readonly JSON: "json";
|
|
173
|
+
/** Output as human-readable text */
|
|
151
174
|
readonly TEXT: "text";
|
|
175
|
+
/** Minimal output, only errors and successes */
|
|
152
176
|
readonly QUIET: "quiet";
|
|
177
|
+
/** Full output with detailed context and suggestions */
|
|
153
178
|
readonly VERBOSE: "verbose";
|
|
154
179
|
};
|
|
180
|
+
/**
|
|
181
|
+
* Type representing one of the supported output modes.
|
|
182
|
+
*/
|
|
155
183
|
type OutputModeType = (typeof OutputMode)[keyof typeof OutputMode];
|
|
184
|
+
/**
|
|
185
|
+
* Represents a single issue discovered during validation.
|
|
186
|
+
*/
|
|
156
187
|
interface ValidationIssue {
|
|
188
|
+
/** The file where the issue was found */
|
|
157
189
|
file?: string;
|
|
190
|
+
/** A human-readable description of the issue */
|
|
158
191
|
message: string;
|
|
192
|
+
/** The line number where the issue occurs */
|
|
159
193
|
line?: number;
|
|
194
|
+
/** A suggested fix or next step */
|
|
160
195
|
suggestion?: string;
|
|
161
196
|
}
|
|
197
|
+
/**
|
|
198
|
+
* The result of a validation operation.
|
|
199
|
+
*/
|
|
162
200
|
interface ValidationResult {
|
|
201
|
+
/** Whether the validation passed overall */
|
|
163
202
|
valid: boolean;
|
|
203
|
+
/** A list of issues found during validation */
|
|
164
204
|
issues: ValidationIssue[];
|
|
165
205
|
}
|
|
206
|
+
/**
|
|
207
|
+
* Formats data and results for CLI output based on the selected mode.
|
|
208
|
+
*/
|
|
166
209
|
declare class OutputFormatter {
|
|
167
210
|
private mode;
|
|
211
|
+
/**
|
|
212
|
+
* Creates a new OutputFormatter.
|
|
213
|
+
*
|
|
214
|
+
* @param mode - The output mode to use. Defaults to TEXT.
|
|
215
|
+
*/
|
|
168
216
|
constructor(mode?: OutputModeType);
|
|
169
217
|
/**
|
|
170
|
-
*
|
|
218
|
+
* Formats raw data for output.
|
|
219
|
+
*
|
|
220
|
+
* @param data - The data to format.
|
|
221
|
+
* @returns A string representation of the data based on the current mode.
|
|
171
222
|
*/
|
|
172
223
|
format(data: unknown): string;
|
|
173
224
|
/**
|
|
174
|
-
*
|
|
225
|
+
* Formats a validation result into a user-friendly string.
|
|
226
|
+
*
|
|
227
|
+
* @param result - The validation result to format.
|
|
228
|
+
* @returns A formatted string containing the validation status and any issues.
|
|
175
229
|
*/
|
|
176
230
|
formatValidation(result: ValidationResult): string;
|
|
177
231
|
/**
|
|
178
|
-
*
|
|
232
|
+
* Formats a summary line with a success/failure icon and label.
|
|
233
|
+
*
|
|
234
|
+
* @param label - The name of the field to summarize.
|
|
235
|
+
* @param value - The value to display.
|
|
236
|
+
* @param success - Whether the summary represents a success or failure state.
|
|
237
|
+
* @returns A formatted summary string, or an empty string in JSON or QUIET modes.
|
|
179
238
|
*/
|
|
180
239
|
formatSummary(label: string, value: string | number, success: boolean): string;
|
|
181
240
|
}
|
|
182
241
|
|
|
242
|
+
/**
|
|
243
|
+
* Simple logger for CLI output with color-coded icons.
|
|
244
|
+
*/
|
|
183
245
|
declare const logger: {
|
|
246
|
+
/**
|
|
247
|
+
* Logs an informational message with a blue 'i' icon.
|
|
248
|
+
* @param message - The message to log.
|
|
249
|
+
*/
|
|
184
250
|
info: (message: string) => void;
|
|
251
|
+
/**
|
|
252
|
+
* Logs a success message with a green 'v' icon.
|
|
253
|
+
* @param message - The message to log.
|
|
254
|
+
*/
|
|
185
255
|
success: (message: string) => void;
|
|
256
|
+
/**
|
|
257
|
+
* Logs a warning message with a yellow '!' icon.
|
|
258
|
+
* @param message - The message to log.
|
|
259
|
+
*/
|
|
186
260
|
warn: (message: string) => void;
|
|
261
|
+
/**
|
|
262
|
+
* Logs an error message with a red 'x' icon to stderr.
|
|
263
|
+
* @param message - The message to log.
|
|
264
|
+
*/
|
|
187
265
|
error: (message: string) => void;
|
|
266
|
+
/**
|
|
267
|
+
* Logs a dimmed message.
|
|
268
|
+
* @param message - The message to log.
|
|
269
|
+
*/
|
|
188
270
|
dim: (message: string) => void;
|
|
271
|
+
/**
|
|
272
|
+
* Logs raw data as a formatted JSON string.
|
|
273
|
+
* Useful for JSON output mode.
|
|
274
|
+
* @param data - The data to log.
|
|
275
|
+
*/
|
|
189
276
|
raw: (data: unknown) => void;
|
|
190
277
|
};
|
|
191
278
|
|
|
279
|
+
/**
|
|
280
|
+
* The main Harness configuration schema.
|
|
281
|
+
*/
|
|
192
282
|
declare const HarnessConfigSchema: z.ZodObject<{
|
|
283
|
+
/** Configuration schema version */
|
|
193
284
|
version: z.ZodLiteral<1>;
|
|
285
|
+
/** Human-readable name of the project */
|
|
194
286
|
name: z.ZodOptional<z.ZodString>;
|
|
287
|
+
/** Root directory of the project, relative to the config file */
|
|
195
288
|
rootDir: z.ZodDefault<z.ZodString>;
|
|
289
|
+
/** Layered architecture definitions */
|
|
196
290
|
layers: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
291
|
+
/** Human-readable name of the layer */
|
|
197
292
|
name: z.ZodString;
|
|
293
|
+
/** Glob pattern matching files in this layer */
|
|
198
294
|
pattern: z.ZodString;
|
|
295
|
+
/** Names of other layers this layer is allowed to import from */
|
|
199
296
|
allowedDependencies: z.ZodArray<z.ZodString, "many">;
|
|
200
297
|
}, "strip", z.ZodTypeAny, {
|
|
201
298
|
name: string;
|
|
@@ -206,9 +303,13 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
206
303
|
pattern: string;
|
|
207
304
|
allowedDependencies: string[];
|
|
208
305
|
}>, "many">>;
|
|
306
|
+
/** Rules for forbidden cross-module imports */
|
|
209
307
|
forbiddenImports: z.ZodOptional<z.ZodArray<z.ZodObject<{
|
|
308
|
+
/** Glob pattern matching source files this rule applies to */
|
|
210
309
|
from: z.ZodString;
|
|
310
|
+
/** List of modules or patterns that are not allowed to be imported */
|
|
211
311
|
disallow: z.ZodArray<z.ZodString, "many">;
|
|
312
|
+
/** Optional custom message to display on violation */
|
|
212
313
|
message: z.ZodOptional<z.ZodString>;
|
|
213
314
|
}, "strip", z.ZodTypeAny, {
|
|
214
315
|
from: string;
|
|
@@ -219,18 +320,26 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
219
320
|
disallow: string[];
|
|
220
321
|
message?: string | undefined;
|
|
221
322
|
}>, "many">>;
|
|
323
|
+
/** Boundary enforcement settings */
|
|
222
324
|
boundaries: z.ZodOptional<z.ZodObject<{
|
|
325
|
+
/** List of globs where files MUST have a corresponding schema/definition */
|
|
223
326
|
requireSchema: z.ZodArray<z.ZodString, "many">;
|
|
224
327
|
}, "strip", z.ZodTypeAny, {
|
|
225
328
|
requireSchema: string[];
|
|
226
329
|
}, {
|
|
227
330
|
requireSchema: string[];
|
|
228
331
|
}>>;
|
|
332
|
+
/** Path to the project's knowledge map (AGENTS.md) */
|
|
229
333
|
agentsMapPath: z.ZodDefault<z.ZodString>;
|
|
334
|
+
/** Directory containing project documentation */
|
|
230
335
|
docsDir: z.ZodDefault<z.ZodString>;
|
|
336
|
+
/** Agent orchestration settings */
|
|
231
337
|
agent: z.ZodOptional<z.ZodObject<{
|
|
338
|
+
/** The execution environment for agents */
|
|
232
339
|
executor: z.ZodDefault<z.ZodEnum<["subprocess", "cloud", "noop"]>>;
|
|
340
|
+
/** Maximum execution time in milliseconds */
|
|
233
341
|
timeout: z.ZodDefault<z.ZodNumber>;
|
|
342
|
+
/** Optional list of skill IDs pre-authorized for the agent */
|
|
234
343
|
skills: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
235
344
|
}, "strip", z.ZodTypeAny, {
|
|
236
345
|
executor: "subprocess" | "cloud" | "noop";
|
|
@@ -241,8 +350,11 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
241
350
|
timeout?: number | undefined;
|
|
242
351
|
skills?: string[] | undefined;
|
|
243
352
|
}>>;
|
|
353
|
+
/** Drift and stale code management settings */
|
|
244
354
|
entropy: z.ZodOptional<z.ZodObject<{
|
|
355
|
+
/** Patterns to exclude from entropy analysis */
|
|
245
356
|
excludePatterns: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
357
|
+
/** Whether to automatically attempt to fix simple entropy issues */
|
|
246
358
|
autoFix: z.ZodDefault<z.ZodBoolean>;
|
|
247
359
|
}, "strip", z.ZodTypeAny, {
|
|
248
360
|
excludePatterns: string[];
|
|
@@ -251,38 +363,65 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
251
363
|
excludePatterns?: string[] | undefined;
|
|
252
364
|
autoFix?: boolean | undefined;
|
|
253
365
|
}>>;
|
|
366
|
+
/** Security scanning configuration */
|
|
254
367
|
security: z.ZodOptional<z.ZodObject<{
|
|
368
|
+
/** Whether security scanning is enabled */
|
|
255
369
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
370
|
+
/** Whether to fail on any security warning */
|
|
256
371
|
strict: z.ZodDefault<z.ZodBoolean>;
|
|
372
|
+
/** Rule-specific severity overrides */
|
|
257
373
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["off", "error", "warning", "info"]>>>;
|
|
374
|
+
/** Patterns to exclude from security scans */
|
|
258
375
|
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
259
376
|
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
377
|
+
/** Whether security scanning is enabled */
|
|
260
378
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
379
|
+
/** Whether to fail on any security warning */
|
|
261
380
|
strict: z.ZodDefault<z.ZodBoolean>;
|
|
381
|
+
/** Rule-specific severity overrides */
|
|
262
382
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["off", "error", "warning", "info"]>>>;
|
|
383
|
+
/** Patterns to exclude from security scans */
|
|
263
384
|
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
264
385
|
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
386
|
+
/** Whether security scanning is enabled */
|
|
265
387
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
388
|
+
/** Whether to fail on any security warning */
|
|
266
389
|
strict: z.ZodDefault<z.ZodBoolean>;
|
|
390
|
+
/** Rule-specific severity overrides */
|
|
267
391
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["off", "error", "warning", "info"]>>>;
|
|
392
|
+
/** Patterns to exclude from security scans */
|
|
268
393
|
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
269
394
|
}, z.ZodTypeAny, "passthrough">>>;
|
|
395
|
+
/** Performance and complexity budget settings */
|
|
270
396
|
performance: z.ZodOptional<z.ZodObject<{
|
|
397
|
+
/** Complexity thresholds per module or pattern */
|
|
271
398
|
complexity: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
399
|
+
/** Coupling limits between modules */
|
|
272
400
|
coupling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
401
|
+
/** Size budget for bundles or directories */
|
|
273
402
|
sizeBudget: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
274
403
|
}, "passthrough", z.ZodTypeAny, z.objectOutputType<{
|
|
404
|
+
/** Complexity thresholds per module or pattern */
|
|
275
405
|
complexity: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
406
|
+
/** Coupling limits between modules */
|
|
276
407
|
coupling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
408
|
+
/** Size budget for bundles or directories */
|
|
277
409
|
sizeBudget: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
278
410
|
}, z.ZodTypeAny, "passthrough">, z.objectInputType<{
|
|
411
|
+
/** Complexity thresholds per module or pattern */
|
|
279
412
|
complexity: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
413
|
+
/** Coupling limits between modules */
|
|
280
414
|
coupling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
415
|
+
/** Size budget for bundles or directories */
|
|
281
416
|
sizeBudget: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
282
417
|
}, z.ZodTypeAny, "passthrough">>>;
|
|
418
|
+
/** Project template settings (used by 'harness init') */
|
|
283
419
|
template: z.ZodOptional<z.ZodObject<{
|
|
420
|
+
/** Complexity level of the template */
|
|
284
421
|
level: z.ZodEnum<["basic", "intermediate", "advanced"]>;
|
|
422
|
+
/** Primary technology framework */
|
|
285
423
|
framework: z.ZodOptional<z.ZodString>;
|
|
424
|
+
/** Template version */
|
|
286
425
|
version: z.ZodNumber;
|
|
287
426
|
}, "strip", z.ZodTypeAny, {
|
|
288
427
|
version: number;
|
|
@@ -293,11 +432,17 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
293
432
|
level: "basic" | "intermediate" | "advanced";
|
|
294
433
|
framework?: string | undefined;
|
|
295
434
|
}>>;
|
|
435
|
+
/** Phase gate and readiness check configuration */
|
|
296
436
|
phaseGates: z.ZodOptional<z.ZodObject<{
|
|
437
|
+
/** Whether phase gate checks are enabled */
|
|
297
438
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
439
|
+
/** Severity level when a phase gate check fails */
|
|
298
440
|
severity: z.ZodDefault<z.ZodEnum<["error", "warning"]>>;
|
|
441
|
+
/** List of implementation-to-spec mappings */
|
|
299
442
|
mappings: z.ZodDefault<z.ZodArray<z.ZodObject<{
|
|
443
|
+
/** Pattern for implementation files */
|
|
300
444
|
implPattern: z.ZodString;
|
|
445
|
+
/** Pattern for corresponding specification files */
|
|
301
446
|
specPattern: z.ZodString;
|
|
302
447
|
}, "strip", z.ZodTypeAny, {
|
|
303
448
|
implPattern: string;
|
|
@@ -321,10 +466,15 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
321
466
|
specPattern: string;
|
|
322
467
|
}[] | undefined;
|
|
323
468
|
}>>;
|
|
469
|
+
/** Design system consistency settings */
|
|
324
470
|
design: z.ZodOptional<z.ZodObject<{
|
|
471
|
+
/** Strictness of design system enforcement */
|
|
325
472
|
strictness: z.ZodDefault<z.ZodEnum<["strict", "standard", "permissive"]>>;
|
|
473
|
+
/** Supported target platforms */
|
|
326
474
|
platforms: z.ZodDefault<z.ZodArray<z.ZodEnum<["web", "mobile"]>, "many">>;
|
|
475
|
+
/** Path to design tokens (e.g. JSON or CSS) */
|
|
327
476
|
tokenPath: z.ZodOptional<z.ZodString>;
|
|
477
|
+
/** Brief description of the intended aesthetic direction */
|
|
328
478
|
aestheticIntent: z.ZodOptional<z.ZodString>;
|
|
329
479
|
}, "strip", z.ZodTypeAny, {
|
|
330
480
|
strictness: "strict" | "standard" | "permissive";
|
|
@@ -337,21 +487,37 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
337
487
|
tokenPath?: string | undefined;
|
|
338
488
|
aestheticIntent?: string | undefined;
|
|
339
489
|
}>>;
|
|
490
|
+
/** Internationalization (i18n) settings */
|
|
340
491
|
i18n: z.ZodOptional<z.ZodObject<{
|
|
492
|
+
/** Whether i18n management is enabled */
|
|
341
493
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
494
|
+
/** Strictness of i18n rule enforcement */
|
|
342
495
|
strictness: z.ZodDefault<z.ZodEnum<["strict", "standard", "permissive"]>>;
|
|
496
|
+
/** The primary language used for development */
|
|
343
497
|
sourceLocale: z.ZodDefault<z.ZodString>;
|
|
498
|
+
/** List of locales that translations are required for */
|
|
344
499
|
targetLocales: z.ZodDefault<z.ZodArray<z.ZodString, "many">>;
|
|
500
|
+
/** The i18n framework in use */
|
|
345
501
|
framework: z.ZodDefault<z.ZodEnum<["auto", "i18next", "react-intl", "vue-i18n", "flutter-intl", "apple", "android", "custom"]>>;
|
|
502
|
+
/** Storage format for translation files */
|
|
346
503
|
format: z.ZodDefault<z.ZodString>;
|
|
504
|
+
/** Syntax used for message formatting */
|
|
347
505
|
messageFormat: z.ZodDefault<z.ZodEnum<["icu", "i18next", "custom"]>>;
|
|
506
|
+
/** Convention for translation keys */
|
|
348
507
|
keyConvention: z.ZodDefault<z.ZodEnum<["dot-notation", "snake_case", "camelCase", "custom"]>>;
|
|
508
|
+
/** Mapping of locales to their file paths */
|
|
349
509
|
translationPaths: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodString>>;
|
|
510
|
+
/** Platforms targeted by this configuration */
|
|
350
511
|
platforms: z.ZodDefault<z.ZodArray<z.ZodEnum<["web", "mobile", "backend"]>, "many">>;
|
|
512
|
+
/** Industry vertical (for contextual translations) */
|
|
351
513
|
industry: z.ZodOptional<z.ZodString>;
|
|
514
|
+
/** Translation coverage requirements */
|
|
352
515
|
coverage: z.ZodOptional<z.ZodObject<{
|
|
516
|
+
/** Minimum required translation percentage */
|
|
353
517
|
minimumPercent: z.ZodDefault<z.ZodNumber>;
|
|
518
|
+
/** Whether plural forms are required for all keys */
|
|
354
519
|
requirePlurals: z.ZodDefault<z.ZodBoolean>;
|
|
520
|
+
/** Whether to detect untranslated strings in source code */
|
|
355
521
|
detectUntranslated: z.ZodDefault<z.ZodBoolean>;
|
|
356
522
|
}, "strip", z.ZodTypeAny, {
|
|
357
523
|
minimumPercent: number;
|
|
@@ -362,9 +528,13 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
362
528
|
requirePlurals?: boolean | undefined;
|
|
363
529
|
detectUntranslated?: boolean | undefined;
|
|
364
530
|
}>>;
|
|
531
|
+
/** Locale used for pseudo-localization testing */
|
|
365
532
|
pseudoLocale: z.ZodOptional<z.ZodString>;
|
|
533
|
+
/** MCP server for AI-assisted translation */
|
|
366
534
|
mcp: z.ZodOptional<z.ZodObject<{
|
|
535
|
+
/** Name or URL of the MCP server */
|
|
367
536
|
server: z.ZodString;
|
|
537
|
+
/** Project ID on the remote i18n platform */
|
|
368
538
|
projectId: z.ZodOptional<z.ZodString>;
|
|
369
539
|
}, "strip", z.ZodTypeAny, {
|
|
370
540
|
server: string;
|
|
@@ -418,10 +588,15 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
418
588
|
projectId?: string | undefined;
|
|
419
589
|
} | undefined;
|
|
420
590
|
}>>;
|
|
591
|
+
/** Code review settings */
|
|
421
592
|
review: z.ZodOptional<z.ZodObject<{
|
|
593
|
+
/** Custom model tier mappings for reviewers */
|
|
422
594
|
model_tiers: z.ZodOptional<z.ZodObject<{
|
|
595
|
+
/** Model ID to use for fast/cheap operations */
|
|
423
596
|
fast: z.ZodOptional<z.ZodString>;
|
|
597
|
+
/** Model ID to use for standard reasoning tasks */
|
|
424
598
|
standard: z.ZodOptional<z.ZodString>;
|
|
599
|
+
/** Model ID to use for complex/critical analysis */
|
|
425
600
|
strong: z.ZodOptional<z.ZodString>;
|
|
426
601
|
}, "strip", z.ZodTypeAny, {
|
|
427
602
|
standard?: string | undefined;
|
|
@@ -445,6 +620,24 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
445
620
|
strong?: string | undefined;
|
|
446
621
|
} | undefined;
|
|
447
622
|
}>>;
|
|
623
|
+
/** General architectural enforcement settings */
|
|
624
|
+
architecture: z.ZodOptional<z.ZodObject<{
|
|
625
|
+
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
626
|
+
baselinePath: z.ZodDefault<z.ZodString>;
|
|
627
|
+
thresholds: z.ZodDefault<z.ZodRecord<z.ZodEnum<["circular-deps", "layer-violations", "complexity", "coupling", "forbidden-imports", "module-size", "dependency-depth"]>, z.ZodUnion<[z.ZodNumber, z.ZodRecord<z.ZodString, z.ZodNumber>]>>>;
|
|
628
|
+
modules: z.ZodDefault<z.ZodRecord<z.ZodString, z.ZodRecord<z.ZodEnum<["circular-deps", "layer-violations", "complexity", "coupling", "forbidden-imports", "module-size", "dependency-depth"]>, z.ZodUnion<[z.ZodNumber, z.ZodRecord<z.ZodString, z.ZodNumber>]>>>>;
|
|
629
|
+
}, "strip", z.ZodTypeAny, {
|
|
630
|
+
thresholds: Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>;
|
|
631
|
+
modules: Record<string, Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>>;
|
|
632
|
+
enabled: boolean;
|
|
633
|
+
baselinePath: string;
|
|
634
|
+
}, {
|
|
635
|
+
thresholds?: Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>> | undefined;
|
|
636
|
+
modules?: Record<string, Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>> | undefined;
|
|
637
|
+
enabled?: boolean | undefined;
|
|
638
|
+
baselinePath?: string | undefined;
|
|
639
|
+
}>>;
|
|
640
|
+
/** How often (in ms) to check for CLI updates */
|
|
448
641
|
updateCheckInterval: z.ZodOptional<z.ZodNumber>;
|
|
449
642
|
}, "strip", z.ZodTypeAny, {
|
|
450
643
|
version: 1;
|
|
@@ -475,14 +668,21 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
475
668
|
autoFix: boolean;
|
|
476
669
|
} | undefined;
|
|
477
670
|
security?: z.objectOutputType<{
|
|
671
|
+
/** Whether security scanning is enabled */
|
|
478
672
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
673
|
+
/** Whether to fail on any security warning */
|
|
479
674
|
strict: z.ZodDefault<z.ZodBoolean>;
|
|
675
|
+
/** Rule-specific severity overrides */
|
|
480
676
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["off", "error", "warning", "info"]>>>;
|
|
677
|
+
/** Patterns to exclude from security scans */
|
|
481
678
|
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
482
679
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
483
680
|
performance?: z.objectOutputType<{
|
|
681
|
+
/** Complexity thresholds per module or pattern */
|
|
484
682
|
complexity: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
683
|
+
/** Coupling limits between modules */
|
|
485
684
|
coupling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
685
|
+
/** Size budget for bundles or directories */
|
|
486
686
|
sizeBudget: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
487
687
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
488
688
|
template?: {
|
|
@@ -534,6 +734,12 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
534
734
|
strong?: string | undefined;
|
|
535
735
|
} | undefined;
|
|
536
736
|
} | undefined;
|
|
737
|
+
architecture?: {
|
|
738
|
+
thresholds: Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>;
|
|
739
|
+
modules: Record<string, Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>>;
|
|
740
|
+
enabled: boolean;
|
|
741
|
+
baselinePath: string;
|
|
742
|
+
} | undefined;
|
|
537
743
|
updateCheckInterval?: number | undefined;
|
|
538
744
|
}, {
|
|
539
745
|
version: 1;
|
|
@@ -564,14 +770,21 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
564
770
|
autoFix?: boolean | undefined;
|
|
565
771
|
} | undefined;
|
|
566
772
|
security?: z.objectInputType<{
|
|
773
|
+
/** Whether security scanning is enabled */
|
|
567
774
|
enabled: z.ZodDefault<z.ZodBoolean>;
|
|
775
|
+
/** Whether to fail on any security warning */
|
|
568
776
|
strict: z.ZodDefault<z.ZodBoolean>;
|
|
777
|
+
/** Rule-specific severity overrides */
|
|
569
778
|
rules: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodEnum<["off", "error", "warning", "info"]>>>;
|
|
779
|
+
/** Patterns to exclude from security scans */
|
|
570
780
|
exclude: z.ZodOptional<z.ZodArray<z.ZodString, "many">>;
|
|
571
781
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
572
782
|
performance?: z.objectInputType<{
|
|
783
|
+
/** Complexity thresholds per module or pattern */
|
|
573
784
|
complexity: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
785
|
+
/** Coupling limits between modules */
|
|
574
786
|
coupling: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
787
|
+
/** Size budget for bundles or directories */
|
|
575
788
|
sizeBudget: z.ZodOptional<z.ZodRecord<z.ZodString, z.ZodUnknown>>;
|
|
576
789
|
}, z.ZodTypeAny, "passthrough"> | undefined;
|
|
577
790
|
template?: {
|
|
@@ -623,20 +836,40 @@ declare const HarnessConfigSchema: z.ZodObject<{
|
|
|
623
836
|
strong?: string | undefined;
|
|
624
837
|
} | undefined;
|
|
625
838
|
} | undefined;
|
|
839
|
+
architecture?: {
|
|
840
|
+
thresholds?: Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>> | undefined;
|
|
841
|
+
modules?: Record<string, Partial<Record<"complexity" | "coupling" | "circular-deps" | "layer-violations" | "forbidden-imports" | "module-size" | "dependency-depth", number | Record<string, number>>>> | undefined;
|
|
842
|
+
enabled?: boolean | undefined;
|
|
843
|
+
baselinePath?: string | undefined;
|
|
844
|
+
} | undefined;
|
|
626
845
|
updateCheckInterval?: number | undefined;
|
|
627
846
|
}>;
|
|
847
|
+
/**
|
|
848
|
+
* Type representing the full Harness configuration.
|
|
849
|
+
*/
|
|
628
850
|
type HarnessConfig = z.infer<typeof HarnessConfigSchema>;
|
|
629
851
|
|
|
630
852
|
/**
|
|
631
|
-
*
|
|
853
|
+
* Searches for a Harness configuration file starting from the given directory
|
|
854
|
+
* and moving up the directory tree until the root is reached.
|
|
855
|
+
*
|
|
856
|
+
* @param startDir - The directory to start searching from. Defaults to current working directory.
|
|
857
|
+
* @returns An Ok result containing the absolute path to the config file, or an Err with a CLIError if not found.
|
|
632
858
|
*/
|
|
633
859
|
declare function findConfigFile(startDir?: string): Result<string, CLIError>;
|
|
634
860
|
/**
|
|
635
|
-
*
|
|
861
|
+
* Loads and validates a Harness configuration from a JSON file.
|
|
862
|
+
*
|
|
863
|
+
* @param configPath - The path to the configuration file.
|
|
864
|
+
* @returns An Ok result with the validated HarnessConfig, or an Err with a CLIError if loading or validation fails.
|
|
636
865
|
*/
|
|
637
866
|
declare function loadConfig(configPath: string): Result<HarnessConfig, CLIError>;
|
|
638
867
|
/**
|
|
639
|
-
*
|
|
868
|
+
* Resolves the Harness configuration by either loading from a specified path
|
|
869
|
+
* or searching for the default config file in the current directory tree.
|
|
870
|
+
*
|
|
871
|
+
* @param configPath - Optional path to a specific configuration file.
|
|
872
|
+
* @returns An Ok result with the resolved configuration, or an Err with a CLIError.
|
|
640
873
|
*/
|
|
641
874
|
declare function resolveConfig(configPath?: string): Result<HarnessConfig, CLIError>;
|
|
642
875
|
|
|
@@ -988,6 +1221,39 @@ declare function renderClaudeCodeAgent(def: AgentDefinition): string;
|
|
|
988
1221
|
|
|
989
1222
|
declare function renderGeminiAgent(def: AgentDefinition): string;
|
|
990
1223
|
|
|
1224
|
+
interface ImpactPreviewOptions {
|
|
1225
|
+
detailed?: boolean;
|
|
1226
|
+
perFile?: boolean;
|
|
1227
|
+
path?: string;
|
|
1228
|
+
}
|
|
1229
|
+
declare function runImpactPreview(options: ImpactPreviewOptions): Promise<string>;
|
|
1230
|
+
|
|
1231
|
+
interface CheckArchOptions {
|
|
1232
|
+
cwd?: string;
|
|
1233
|
+
configPath?: string;
|
|
1234
|
+
updateBaseline?: boolean;
|
|
1235
|
+
json?: boolean;
|
|
1236
|
+
module?: string;
|
|
1237
|
+
}
|
|
1238
|
+
interface CheckArchResult {
|
|
1239
|
+
passed: boolean;
|
|
1240
|
+
mode: 'baseline' | 'threshold-only';
|
|
1241
|
+
totalViolations: number;
|
|
1242
|
+
newViolations: Violation[];
|
|
1243
|
+
resolvedViolations: string[];
|
|
1244
|
+
preExisting: string[];
|
|
1245
|
+
regressions: Array<{
|
|
1246
|
+
category: string;
|
|
1247
|
+
baselineValue: number;
|
|
1248
|
+
currentValue: number;
|
|
1249
|
+
delta: number;
|
|
1250
|
+
}>;
|
|
1251
|
+
thresholdViolations: Violation[];
|
|
1252
|
+
baselineUpdated?: boolean;
|
|
1253
|
+
warning?: string;
|
|
1254
|
+
}
|
|
1255
|
+
declare function runCheckArch(options: CheckArchOptions): Promise<Result<CheckArchResult, CLIError>>;
|
|
1256
|
+
|
|
991
1257
|
type ToolDefinition = {
|
|
992
1258
|
name: string;
|
|
993
1259
|
description: string;
|
|
@@ -997,6 +1263,83 @@ declare function getToolDefinitions(): ToolDefinition[];
|
|
|
997
1263
|
declare function createHarnessServer(projectRoot?: string): Server;
|
|
998
1264
|
declare function startServer(): Promise<void>;
|
|
999
1265
|
|
|
1266
|
+
interface InstallOptions {
|
|
1267
|
+
version?: string;
|
|
1268
|
+
force?: boolean;
|
|
1269
|
+
from?: string;
|
|
1270
|
+
registry?: string;
|
|
1271
|
+
/** Internal: tracks which package triggered this install (for transitive deps) */
|
|
1272
|
+
_dependencyOf?: string | null;
|
|
1273
|
+
}
|
|
1274
|
+
interface InstallResult {
|
|
1275
|
+
installed: boolean;
|
|
1276
|
+
skipped?: boolean;
|
|
1277
|
+
upgraded?: boolean;
|
|
1278
|
+
name: string;
|
|
1279
|
+
version: string;
|
|
1280
|
+
previousVersion?: string;
|
|
1281
|
+
warnings?: string[];
|
|
1282
|
+
}
|
|
1283
|
+
declare function runInstall(skillName: string, options: InstallOptions): Promise<InstallResult>;
|
|
1284
|
+
|
|
1285
|
+
interface InstallConstraintsOptions {
|
|
1286
|
+
source: string;
|
|
1287
|
+
configPath: string;
|
|
1288
|
+
lockfilePath: string;
|
|
1289
|
+
forceLocal?: boolean;
|
|
1290
|
+
forcePackage?: boolean;
|
|
1291
|
+
dryRun?: boolean;
|
|
1292
|
+
}
|
|
1293
|
+
interface InstallConstraintsSuccess {
|
|
1294
|
+
installed: boolean;
|
|
1295
|
+
packageName: string;
|
|
1296
|
+
version: string;
|
|
1297
|
+
contributionsCount: number;
|
|
1298
|
+
conflicts: ConflictReport[];
|
|
1299
|
+
alreadyInstalled?: boolean;
|
|
1300
|
+
dryRun?: boolean;
|
|
1301
|
+
}
|
|
1302
|
+
declare function runInstallConstraints(options: InstallConstraintsOptions): Promise<Result$1<InstallConstraintsSuccess, string>>;
|
|
1303
|
+
|
|
1304
|
+
interface UninstallConstraintsOptions {
|
|
1305
|
+
packageName: string;
|
|
1306
|
+
configPath: string;
|
|
1307
|
+
lockfilePath: string;
|
|
1308
|
+
}
|
|
1309
|
+
interface UninstallConstraintsSuccess {
|
|
1310
|
+
removed: boolean;
|
|
1311
|
+
packageName: string;
|
|
1312
|
+
version: string;
|
|
1313
|
+
sectionsRemoved: string[];
|
|
1314
|
+
}
|
|
1315
|
+
declare function runUninstallConstraints(options: UninstallConstraintsOptions): Promise<Result$1<UninstallConstraintsSuccess, string>>;
|
|
1316
|
+
|
|
1317
|
+
interface UninstallOptions {
|
|
1318
|
+
force?: boolean;
|
|
1319
|
+
}
|
|
1320
|
+
interface UninstallResult {
|
|
1321
|
+
removed: boolean;
|
|
1322
|
+
name: string;
|
|
1323
|
+
version: string;
|
|
1324
|
+
warnings?: string[];
|
|
1325
|
+
}
|
|
1326
|
+
declare function runUninstall(skillName: string, options: UninstallOptions): Promise<UninstallResult>;
|
|
1327
|
+
|
|
1328
|
+
/**
|
|
1329
|
+
* @harness-engineering/cli
|
|
1330
|
+
*
|
|
1331
|
+
* Command-line interface for the Harness Engineering toolkit.
|
|
1332
|
+
*
|
|
1333
|
+
* This package provides a unified `harness` command with subcommands for
|
|
1334
|
+
* validation, documentation management, dependency checking, and agent
|
|
1335
|
+
* orchestration.
|
|
1336
|
+
*/
|
|
1337
|
+
|
|
1338
|
+
/**
|
|
1339
|
+
* Creates and configures the main Harness CLI program.
|
|
1340
|
+
*
|
|
1341
|
+
* @returns A Commander instance with all subcommands registered.
|
|
1342
|
+
*/
|
|
1000
1343
|
declare function createProgram(): Command;
|
|
1001
1344
|
|
|
1002
|
-
export { AGENT_DESCRIPTIONS, ALLOWED_PERSONA_COMMANDS, type AgentDefinition, CLIError, type CommandExecutor, type CommandStep, type CreateSkillOptions, DEFAULT_TOOLS, ExitCode, GEMINI_TOOL_MAP, type GenerateAgentDefsOptions, type GenerateAgentDefsResult, type GenerateResult, type HandoffContext, type HarnessConfig, OutputFormatter, OutputMode, type Persona, type PersonaMetadata, type PersonaRunReport, type RenderedFiles, type SkillExecutionContext, type SkillExecutionResult, type SkillExecutor, type SkillSource, type SkillStep, type Step, type StepExecutionContext, type StepReport, type TemplateContext, TemplateEngine, type TriggerContext, type TriggerDetectionResult, buildPreamble, createHarnessServer, createProgram, detectTrigger, executeSkill, findConfigFile, generateAgentDefinition, generateAgentDefinitions, generateAgentsMd, generateCIWorkflow, generateRuntime, generateSkillFiles, generateSlashCommands, getToolDefinitions, handleError, listPersonas, loadConfig, loadPersona, logger, renderClaudeCodeAgent, renderGeminiAgent, resolveConfig, runCheckPhaseGate, runCrossCheck, runGraphExport, runGraphStatus, runIngest, runPersona, runQuery, runScan, startServer };
|
|
1345
|
+
export { AGENT_DESCRIPTIONS, ALLOWED_PERSONA_COMMANDS, type AgentDefinition, CLIError, type CheckArchResult, type CommandExecutor, type CommandStep, type CreateSkillOptions, DEFAULT_TOOLS, ExitCode, GEMINI_TOOL_MAP, type GenerateAgentDefsOptions, type GenerateAgentDefsResult, type GenerateResult, type HandoffContext, type HarnessConfig, type InstallConstraintsOptions, type InstallConstraintsSuccess, type InstallResult, OutputFormatter, OutputMode, type Persona, type PersonaMetadata, type PersonaRunReport, type RenderedFiles, type SkillExecutionContext, type SkillExecutionResult, type SkillExecutor, type SkillSource, type SkillStep, type Step, type StepExecutionContext, type StepReport, type TemplateContext, TemplateEngine, type TriggerContext, type TriggerDetectionResult, type UninstallConstraintsOptions, type UninstallConstraintsSuccess, type UninstallResult, buildPreamble, createHarnessServer, createProgram, detectTrigger, executeSkill, findConfigFile, generateAgentDefinition, generateAgentDefinitions, generateAgentsMd, generateCIWorkflow, generateRuntime, generateSkillFiles, generateSlashCommands, getToolDefinitions, handleError, listPersonas, loadConfig, loadPersona, logger, renderClaudeCodeAgent, renderGeminiAgent, resolveConfig, runCheckArch, runCheckPhaseGate, runCrossCheck, runGraphExport, runGraphStatus, runImpactPreview, runIngest, runInstall, runInstallConstraints, runPersona, runQuery, runScan, runUninstall, runUninstallConstraints, startServer };
|