metaharness 0.1.9 → 0.1.10
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/repo-scorecard.d.ts
CHANGED
|
@@ -25,6 +25,22 @@ export interface RepoScorecard {
|
|
|
25
25
|
export declare function buildRepoScorecard(dir: string, generatedAt?: string): RepoScorecard;
|
|
26
26
|
/** Format the scorecard as the ADR-041 6-line card. */
|
|
27
27
|
export declare function formatRepoScorecard(sc: RepoScorecard): string[];
|
|
28
|
+
/** One candidate harness design (ADR-041 candidate-generation / beam stage). */
|
|
29
|
+
export interface CandidateScore {
|
|
30
|
+
archetype: string;
|
|
31
|
+
label: string;
|
|
32
|
+
template: string;
|
|
33
|
+
harnessFit: number;
|
|
34
|
+
recommendedMode: 'CLI' | 'CLI + MCP';
|
|
35
|
+
}
|
|
36
|
+
/**
|
|
37
|
+
* The top-N candidate harness designs for a repo, each scored — the beam-search
|
|
38
|
+
* candidate-generation stage of ADR-041 over the archetype library. Lets the user
|
|
39
|
+
* see the alternatives, not just the single recommendation.
|
|
40
|
+
*/
|
|
41
|
+
export declare function topCandidates(dir: string, n?: number): CandidateScore[];
|
|
42
|
+
/** Format the top-N candidates as a ranked list. */
|
|
43
|
+
export declare function formatCandidates(repo: string, cands: CandidateScore[]): string[];
|
|
28
44
|
/** CLI: `metaharness score <repo> [--json]`. Mirrors genomeCmd's shape. */
|
|
29
45
|
export declare function scoreRepoCmd(args: string[]): Promise<SubcommandResult>;
|
|
30
46
|
//# sourceMappingURL=repo-scorecard.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-scorecard.d.ts","sourceRoot":"","sources":["../src/repo-scorecard.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,CAAC,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,KAAK,GAAG,WAAW,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAUD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,GAAE,MAAiC,GAAG,aAAa,CAsE7G;AAED,uDAAuD;AACvD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,aAAa,GAAG,MAAM,EAAE,CAY/D;
|
|
1
|
+
{"version":3,"file":"repo-scorecard.d.ts","sourceRoot":"","sources":["../src/repo-scorecard.ts"],"names":[],"mappings":"AAcA,MAAM,MAAM,gBAAgB,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,KAAK,EAAE,MAAM,EAAE,CAAA;CAAE,CAAC;AAEjE,MAAM,WAAW,aAAa;IAC5B,MAAM,EAAE,CAAC,CAAC;IACV,IAAI,EAAE,MAAM,CAAC;IACb,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,YAAY,EAAE,MAAM,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;IACnB,gBAAgB,EAAE,MAAM,CAAC;IACzB,yEAAyE;IACzE,gBAAgB,EAAE,MAAM,CAAC;IACzB,eAAe,EAAE,KAAK,GAAG,WAAW,CAAC;IACrC,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;CACrB;AAUD;;;GAGG;AACH,wBAAgB,kBAAkB,CAAC,GAAG,EAAE,MAAM,EAAE,WAAW,GAAE,MAAiC,GAAG,aAAa,CAsE7G;AAED,uDAAuD;AACvD,wBAAgB,mBAAmB,CAAC,EAAE,EAAE,aAAa,GAAG,MAAM,EAAE,CAY/D;AAED,gFAAgF;AAChF,MAAM,WAAW,cAAc;IAC7B,SAAS,EAAE,MAAM,CAAC;IAClB,KAAK,EAAE,MAAM,CAAC;IACd,QAAQ,EAAE,MAAM,CAAC;IACjB,UAAU,EAAE,MAAM,CAAC;IACnB,eAAe,EAAE,KAAK,GAAG,WAAW,CAAC;CACtC;AAED;;;;GAIG;AACH,wBAAgB,aAAa,CAAC,GAAG,EAAE,MAAM,EAAE,CAAC,SAAI,GAAG,cAAc,EAAE,CAmBlE;AAED,oDAAoD;AACpD,wBAAgB,gBAAgB,CAAC,IAAI,EAAE,MAAM,EAAE,KAAK,EAAE,cAAc,EAAE,GAAG,MAAM,EAAE,CAMhF;AAaD,2EAA2E;AAC3E,wBAAsB,YAAY,CAAC,IAAI,EAAE,MAAM,EAAE,GAAG,OAAO,CAAC,gBAAgB,CAAC,CA8C5E"}
|
package/dist/repo-scorecard.js
CHANGED
|
@@ -9,7 +9,7 @@
|
|
|
9
9
|
// — the scorecard's job is to tell the truth about whether a generated harness
|
|
10
10
|
// fits this repo and what it would cost, before you scaffold anything.
|
|
11
11
|
import { resolve, basename } from 'node:path';
|
|
12
|
-
import { inventory, analyzeFiles, recommendPlan, ruvllmSemantic } from './analyze-repo.js';
|
|
12
|
+
import { inventory, analyzeFiles, recommendPlan, scoreArchetypes, ruvllmSemantic } from './analyze-repo.js';
|
|
13
13
|
const clamp100 = (x) => Math.max(0, Math.min(100, Math.round(x)));
|
|
14
14
|
const round3 = (x) => Math.round(x * 1000) / 1000;
|
|
15
15
|
/** Cheap-tier blended $/1M tokens (DRACO: route DRACO-style work to a cheap model). */
|
|
@@ -102,12 +102,48 @@ export function formatRepoScorecard(sc) {
|
|
|
102
102
|
` Recommended mode: ${sc.recommendedMode} (template ${sc.template})`,
|
|
103
103
|
];
|
|
104
104
|
}
|
|
105
|
+
/**
|
|
106
|
+
* The top-N candidate harness designs for a repo, each scored — the beam-search
|
|
107
|
+
* candidate-generation stage of ADR-041 over the archetype library. Lets the user
|
|
108
|
+
* see the alternatives, not just the single recommendation.
|
|
109
|
+
*/
|
|
110
|
+
export function topCandidates(dir, n = 3) {
|
|
111
|
+
const files = inventory(dir);
|
|
112
|
+
let name = basename(resolve(dir)) || 'repo';
|
|
113
|
+
try {
|
|
114
|
+
const pkgName = files['package.json'] ? JSON.parse(files['package.json']).name : undefined;
|
|
115
|
+
if (pkgName)
|
|
116
|
+
name = pkgName;
|
|
117
|
+
}
|
|
118
|
+
catch {
|
|
119
|
+
/* keep basename */
|
|
120
|
+
}
|
|
121
|
+
const profile = analyzeFiles(name, files);
|
|
122
|
+
return scoreArchetypes(profile, ruvllmSemantic(profile))
|
|
123
|
+
.slice(0, Math.max(1, n))
|
|
124
|
+
.map((s) => ({
|
|
125
|
+
archetype: s.archetype.id,
|
|
126
|
+
label: s.archetype.label,
|
|
127
|
+
template: s.archetype.template,
|
|
128
|
+
harnessFit: clamp100(s.confidence * 100),
|
|
129
|
+
recommendedMode: (s.archetype.mcp === 'off' ? 'CLI' : 'CLI + MCP'),
|
|
130
|
+
}));
|
|
131
|
+
}
|
|
132
|
+
/** Format the top-N candidates as a ranked list. */
|
|
133
|
+
export function formatCandidates(repo, cands) {
|
|
134
|
+
return [
|
|
135
|
+
`Top ${cands.length} harness designs — ${repo}`,
|
|
136
|
+
``,
|
|
137
|
+
...cands.map((c, i) => ` ${i + 1}. ${c.label.padEnd(22)} fit ${String(c.harnessFit).padStart(3)}/100 ${c.recommendedMode.padEnd(9)} (${c.template})`),
|
|
138
|
+
];
|
|
139
|
+
}
|
|
105
140
|
function usage() {
|
|
106
141
|
return [
|
|
107
|
-
'Usage: metaharness score <repo-path> [--json]',
|
|
142
|
+
'Usage: metaharness score <repo-path> [--json] [--top N]',
|
|
108
143
|
'',
|
|
109
144
|
'Produces the ADR-041 scorecard: harness fit, compile confidence, task',
|
|
110
145
|
'coverage, tool safety, memory usefulness, est. $/run, recommended mode.',
|
|
146
|
+
'--top N lists the N best-fit harness designs (candidate generation).',
|
|
111
147
|
'No-exec: only reads high-signal files; never runs repo code.',
|
|
112
148
|
];
|
|
113
149
|
}
|
|
@@ -115,11 +151,22 @@ function usage() {
|
|
|
115
151
|
export async function scoreRepoCmd(args) {
|
|
116
152
|
const json = args.includes('--json');
|
|
117
153
|
const positional = [];
|
|
118
|
-
|
|
154
|
+
let topN = null;
|
|
155
|
+
for (let i = 0; i < args.length; i++) {
|
|
156
|
+
const a = args[i];
|
|
119
157
|
if (a === '--json')
|
|
120
158
|
continue;
|
|
121
159
|
if (a === '--help' || a === '-h')
|
|
122
160
|
return { code: 0, lines: usage() };
|
|
161
|
+
if (a === '--top') {
|
|
162
|
+
const v = parseInt(args[++i] ?? '', 10);
|
|
163
|
+
if (!Number.isFinite(v) || v < 1) {
|
|
164
|
+
const err = { schema: 1, error: 'invalid-top', exitCode: 2 };
|
|
165
|
+
return { code: 2, lines: [json ? JSON.stringify(err, null, 2) : '--top requires a positive integer'] };
|
|
166
|
+
}
|
|
167
|
+
topN = v;
|
|
168
|
+
continue;
|
|
169
|
+
}
|
|
123
170
|
if (a.startsWith('--')) {
|
|
124
171
|
const err = { schema: 1, error: `unknown-flag-${a.replace(/^--?/, '')}`, exitCode: 2 };
|
|
125
172
|
return { code: 2, lines: [json ? JSON.stringify(err, null, 2) : `Unknown flag: ${a}`] };
|
|
@@ -130,6 +177,19 @@ export async function scoreRepoCmd(args) {
|
|
|
130
177
|
return { code: 2, lines: usage() };
|
|
131
178
|
const dir = resolve(positional[0]);
|
|
132
179
|
try {
|
|
180
|
+
if (topN != null) {
|
|
181
|
+
const cands = topCandidates(dir, topN);
|
|
182
|
+
const repo = (() => {
|
|
183
|
+
try {
|
|
184
|
+
const f = inventory(dir)['package.json'];
|
|
185
|
+
return (f && JSON.parse(f).name) || basename(dir);
|
|
186
|
+
}
|
|
187
|
+
catch {
|
|
188
|
+
return basename(dir);
|
|
189
|
+
}
|
|
190
|
+
})();
|
|
191
|
+
return { code: 0, lines: json ? [JSON.stringify({ schema: 1, repo, candidates: cands }, null, 2)] : formatCandidates(repo, cands) };
|
|
192
|
+
}
|
|
133
193
|
const sc = buildRepoScorecard(dir);
|
|
134
194
|
return { code: 0, lines: json ? [JSON.stringify(sc, null, 2)] : formatRepoScorecard(sc) };
|
|
135
195
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-scorecard.js","sourceRoot":"","sources":["../src/repo-scorecard.ts"],"names":[],"mappings":"AAAA,+BAA+B;AAC/B,EAAE;AACF,+EAA+E;AAC/E,8EAA8E;AAC9E,4EAA4E;AAC5E,EAAE;AACF,4EAA4E;AAC5E,iFAAiF;AACjF,+EAA+E;AAC/E,uEAAuE;AAEvE,OAAO,EAAE,OAAO,EAAE,QAAQ,EAAE,MAAM,WAAW,CAAC;AAC9C,OAAO,EAAE,SAAS,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc,EAAoB,MAAM,mBAAmB,CAAC;
|
|
1
|
+
{"version":3,"file":"repo-scorecard.js","sourceRoot":"","sources":["../src/repo-scorecard.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "metaharness",
|
|
3
|
-
"version": "0.1.
|
|
3
|
+
"version": "0.1.10",
|
|
4
4
|
"description": "MetaHarness — mint a custom AI agent harness from any repo. Browser Studio + `npx metaharness` CLI. Runs on Claude Code, Codex, pi.dev, Hermes, OpenClaw, RVM.",
|
|
5
5
|
"homepage": "https://github.com/ruvnet/agent-harness-generator",
|
|
6
6
|
"repository": {
|