specweave 2.2.0 → 2.2.2
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/.claude-plugin/marketplace.json +2 -2
- package/CLAUDE.md +21 -36
- package/dist/src/cli/dispatcher.d.ts +1 -1
- package/dist/src/cli/dispatcher.js +1 -1
- package/dist/src/cli/helpers/init/instruction-file-merger.js +2 -2
- package/dist/src/cli/helpers/init/instruction-file-merger.js.map +1 -1
- package/dist/src/core/auto/completion-evaluator.d.ts +1 -1
- package/dist/src/core/auto/completion-evaluator.js +1 -1
- package/dist/src/core/fabric/security-judge.d.ts.map +1 -1
- package/dist/src/core/fabric/security-judge.js +37 -5
- package/dist/src/core/fabric/security-judge.js.map +1 -1
- package/dist/src/core/jev/decide.d.ts +3 -1
- package/dist/src/core/jev/decide.d.ts.map +1 -1
- package/dist/src/core/jev/decide.js +10 -2
- package/dist/src/core/jev/decide.js.map +1 -1
- package/dist/src/core/llm/index.d.ts +1 -1
- package/dist/src/core/llm/index.js +1 -1
- package/dist/src/core/llm/model-capabilities.d.ts +79 -0
- package/dist/src/core/llm/model-capabilities.d.ts.map +1 -0
- package/dist/src/core/llm/model-capabilities.js +157 -0
- package/dist/src/core/llm/model-capabilities.js.map +1 -0
- package/dist/src/core/llm/provider-factory.js +1 -1
- package/dist/src/core/llm/providers/anthropic-provider.d.ts +1 -0
- package/dist/src/core/llm/providers/anthropic-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/anthropic-provider.js +38 -11
- package/dist/src/core/llm/providers/anthropic-provider.js.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.d.ts.map +1 -1
- package/dist/src/core/llm/providers/bedrock-provider.js +10 -5
- package/dist/src/core/llm/providers/bedrock-provider.js.map +1 -1
- package/dist/src/core/llm/providers/claude-code-provider.js +1 -1
- package/dist/src/core/llm/types.d.ts +20 -1
- package/dist/src/core/llm/types.d.ts.map +1 -1
- package/dist/src/core/llm/types.js.map +1 -1
- package/dist/src/core/skill-gen/signal-collector.js +1 -1
- package/dist/src/core/skill-gen/signal-collector.js.map +1 -1
- package/dist/src/core/skill-gen/suggestion-engine.js +1 -1
- package/dist/src/core/skill-gen/suggestion-engine.js.map +1 -1
- package/dist/src/core/skill-gen/types.d.ts +1 -1
- package/dist/src/core/skill-gen/types.d.ts.map +1 -1
- package/dist/src/core/skill-refine/haiku-diff.d.ts +25 -2
- package/dist/src/core/skill-refine/haiku-diff.d.ts.map +1 -1
- package/dist/src/core/skill-refine/haiku-diff.js +18 -5
- package/dist/src/core/skill-refine/haiku-diff.js.map +1 -1
- package/dist/src/core/skills/skill-judge.d.ts +16 -17
- package/dist/src/core/skills/skill-judge.d.ts.map +1 -1
- package/dist/src/core/skills/skill-judge.js +39 -36
- package/dist/src/core/skills/skill-judge.js.map +1 -1
- package/dist/src/dashboard/server/data/cost-aggregator.d.ts.map +1 -1
- package/dist/src/dashboard/server/data/cost-aggregator.js +2 -0
- package/dist/src/dashboard/server/data/cost-aggregator.js.map +1 -1
- package/dist/src/utils/pricing-constants.d.ts +1 -1
- package/dist/src/utils/pricing-constants.d.ts.map +1 -1
- package/dist/src/utils/pricing-constants.js +3 -1
- package/dist/src/utils/pricing-constants.js.map +1 -1
- package/package.json +2 -2
- package/plugins/specweave/.claude-plugin/plugin.json +1 -1
- package/plugins/specweave/.lint/skill-lint.test.ts +104 -92
- package/plugins/specweave/skills/jev/SKILL.md +5 -3
- package/plugins/specweave/skills/team/agents/_protocol.md +8 -52
- package/plugins/specweave/skills/team/agents/backend.md +2 -5
- package/plugins/specweave/skills/team/agents/brainstorm-advocate.md +4 -2
- package/plugins/specweave/skills/team/agents/brainstorm-critic.md +4 -2
- package/plugins/specweave/skills/team/agents/brainstorm-pragmatist.md +4 -2
- package/plugins/specweave/skills/team/agents/database.md +0 -2
- package/plugins/specweave/skills/team/agents/testing.md +0 -2
- package/dist/src/cli/helpers/init/ado-repo-cloning.d.ts +0 -32
- package/dist/src/cli/helpers/init/ado-repo-cloning.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/ado-repo-cloning.js +0 -157
- package/dist/src/cli/helpers/init/ado-repo-cloning.js.map +0 -1
- package/dist/src/cli/helpers/init/api-docs-config.d.ts +0 -67
- package/dist/src/cli/helpers/init/api-docs-config.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/api-docs-config.js +0 -426
- package/dist/src/cli/helpers/init/api-docs-config.js.map +0 -1
- package/dist/src/cli/helpers/init/bitbucket-repo-cloning.d.ts +0 -42
- package/dist/src/cli/helpers/init/bitbucket-repo-cloning.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js +0 -261
- package/dist/src/cli/helpers/init/bitbucket-repo-cloning.js.map +0 -1
- package/dist/src/cli/helpers/init/brownfield-analysis.d.ts +0 -45
- package/dist/src/cli/helpers/init/brownfield-analysis.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/brownfield-analysis.js +0 -431
- package/dist/src/cli/helpers/init/brownfield-analysis.js.map +0 -1
- package/dist/src/cli/helpers/init/claude-settings-lsp.d.ts +0 -55
- package/dist/src/cli/helpers/init/claude-settings-lsp.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/claude-settings-lsp.js +0 -270
- package/dist/src/cli/helpers/init/claude-settings-lsp.js.map +0 -1
- package/dist/src/cli/helpers/init/multi-project-folders.d.ts +0 -15
- package/dist/src/cli/helpers/init/multi-project-folders.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/multi-project-folders.js +0 -43
- package/dist/src/cli/helpers/init/multi-project-folders.js.map +0 -1
- package/dist/src/cli/helpers/init/plugin-install-flags.d.ts +0 -114
- package/dist/src/cli/helpers/init/plugin-install-flags.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/plugin-install-flags.js +0 -202
- package/dist/src/cli/helpers/init/plugin-install-flags.js.map +0 -1
- package/dist/src/cli/helpers/init/prompt-flow.d.ts +0 -59
- package/dist/src/cli/helpers/init/prompt-flow.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/prompt-flow.js +0 -127
- package/dist/src/cli/helpers/init/prompt-flow.js.map +0 -1
- package/dist/src/cli/helpers/init/testing-config.d.ts +0 -69
- package/dist/src/cli/helpers/init/testing-config.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/testing-config.js +0 -433
- package/dist/src/cli/helpers/init/testing-config.js.map +0 -1
- package/dist/src/cli/helpers/init/umbrella-cloning.d.ts +0 -39
- package/dist/src/cli/helpers/init/umbrella-cloning.d.ts.map +0 -1
- package/dist/src/cli/helpers/init/umbrella-cloning.js +0 -121
- package/dist/src/cli/helpers/init/umbrella-cloning.js.map +0 -1
- package/plugins/specweave/.lint/skill-lint.ts +0 -51
|
@@ -0,0 +1,79 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-model API capability gates for the Anthropic first-party provider.
|
|
3
|
+
*
|
|
4
|
+
* The Messages API surface is not uniform across the models this repo can be
|
|
5
|
+
* pointed at, and getting either of these wrong is a hard 400 rather than a
|
|
6
|
+
* degraded response:
|
|
7
|
+
*
|
|
8
|
+
* - Sampling params (`temperature`, `top_p`, `top_k`) were removed on Opus 4.7+
|
|
9
|
+
* and Sonnet 5. They are still accepted on Sonnet 4.6, Haiku 4.5 and Opus 4.6
|
|
10
|
+
* and older — which are exactly the models `MODEL_ALIASES.sonnet` and
|
|
11
|
+
* `.haiku` resolve to, so a blanket "never send temperature" is wrong too.
|
|
12
|
+
* - Structured outputs (`output_config.format`) require a schema with
|
|
13
|
+
* `additionalProperties: false` on every object node, and are not available
|
|
14
|
+
* on every model that is otherwise current.
|
|
15
|
+
* - Adaptive thinking (`thinking: {type: "adaptive"}`) and `output_config.effort`
|
|
16
|
+
* exist from the 4.6 generation on; Haiku 4.5 still takes `budget_tokens` and
|
|
17
|
+
* rejects the adaptive shape.
|
|
18
|
+
*
|
|
19
|
+
* These helpers are deliberately allow-list shaped: an unrecognised model id
|
|
20
|
+
* gets the conservative answer (no structured outputs, no sampling params),
|
|
21
|
+
* because a missing capability degrades quality while a wrongly-claimed one
|
|
22
|
+
* fails the request outright.
|
|
23
|
+
*
|
|
24
|
+
* @module core/llm/model-capabilities
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Does this model still accept `temperature` / `top_p` / `top_k`?
|
|
28
|
+
*
|
|
29
|
+
* Removed on Opus 4.7+ and on Sonnet 5+; still accepted on Opus 4.6 and older,
|
|
30
|
+
* Sonnet 4.6 and older, and every Haiku.
|
|
31
|
+
*/
|
|
32
|
+
export declare function acceptsSamplingParams(modelId: string): boolean;
|
|
33
|
+
/**
|
|
34
|
+
* Does this model support structured outputs (`output_config.format`)?
|
|
35
|
+
*
|
|
36
|
+
* Opus 4.7+, Sonnet 5+ and Haiku 4.5+. Notably NOT Sonnet 4.6, which is what
|
|
37
|
+
* `MODEL_ALIASES.sonnet` resolves to — sending `output_config.format` there is
|
|
38
|
+
* a 400, so callers must keep a prompt-based fallback.
|
|
39
|
+
*/
|
|
40
|
+
export declare function supportsStructuredOutputs(modelId: string): boolean;
|
|
41
|
+
/**
|
|
42
|
+
* Does this model accept `thinking: { type: "adaptive" }` and `output_config.effort`?
|
|
43
|
+
*
|
|
44
|
+
* Both arrived with the 4.6 generation (Opus 4.6, Sonnet 4.6) and are on every
|
|
45
|
+
* newer Opus and Sonnet. Haiku 4.5 predates them and still uses
|
|
46
|
+
* `thinking: { type: "enabled", budget_tokens }`, so the adaptive shape is
|
|
47
|
+
* rejected there. Unknown ids get `false` so a caller omits both parameters
|
|
48
|
+
* rather than sending a request that cannot succeed.
|
|
49
|
+
*/
|
|
50
|
+
export declare function supportsAdaptiveThinking(modelId: string): boolean;
|
|
51
|
+
/**
|
|
52
|
+
* Rewrite a JSON schema into the shape Anthropic structured outputs require.
|
|
53
|
+
*
|
|
54
|
+
* The API rejects a schema whose object nodes do not pin
|
|
55
|
+
* `additionalProperties: false` and list every property in `required`. The
|
|
56
|
+
* repo's own `JSONSchemaType<T>` cannot express either, and no caller sets
|
|
57
|
+
* them, so normalise here rather than asking every call site to remember.
|
|
58
|
+
*
|
|
59
|
+
* Returns a deep copy; the caller's schema is never mutated.
|
|
60
|
+
*/
|
|
61
|
+
export declare function toStrictJsonSchema(schema: unknown): Record<string, unknown>;
|
|
62
|
+
/** The `output_config` shape callers may pass through `AnalyzeOptions`. */
|
|
63
|
+
export interface OutputConfigInput {
|
|
64
|
+
effort?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
65
|
+
format?: {
|
|
66
|
+
type: 'json_schema';
|
|
67
|
+
schema: unknown;
|
|
68
|
+
};
|
|
69
|
+
}
|
|
70
|
+
/**
|
|
71
|
+
* Prepare an `output_config` for one request against one model.
|
|
72
|
+
*
|
|
73
|
+
* Strips `format` when the model cannot do structured outputs (so the request
|
|
74
|
+
* still succeeds and the caller's own JSON extraction handles the response),
|
|
75
|
+
* and rewrites a surviving schema into the strict shape the API requires.
|
|
76
|
+
* Returns `undefined` when there is nothing left to send.
|
|
77
|
+
*/
|
|
78
|
+
export declare function buildOutputConfig(modelId: string, input: OutputConfigInput | undefined): Record<string, unknown> | undefined;
|
|
79
|
+
//# sourceMappingURL=model-capabilities.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-capabilities.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/model-capabilities.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AA2BH;;;;;GAKG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAM9D;AAED;;;;;;GAMG;AACH,wBAAgB,yBAAyB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAMlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAKjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,MAAM,EAAE,OAAO,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CA0B3E;AAED,2EAA2E;AAC3E,MAAM,WAAW,iBAAiB;IAChC,MAAM,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,GAAG,OAAO,GAAG,KAAK,CAAC;IACrD,MAAM,CAAC,EAAE;QAAE,IAAI,EAAE,aAAa,CAAC;QAAC,MAAM,EAAE,OAAO,CAAA;KAAE,CAAC;CACnD;AAED;;;;;;;GAOG;AACH,wBAAgB,iBAAiB,CAC/B,OAAO,EAAE,MAAM,EACf,KAAK,EAAE,iBAAiB,GAAG,SAAS,GACnC,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAUrC"}
|
|
@@ -0,0 +1,157 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Per-model API capability gates for the Anthropic first-party provider.
|
|
3
|
+
*
|
|
4
|
+
* The Messages API surface is not uniform across the models this repo can be
|
|
5
|
+
* pointed at, and getting either of these wrong is a hard 400 rather than a
|
|
6
|
+
* degraded response:
|
|
7
|
+
*
|
|
8
|
+
* - Sampling params (`temperature`, `top_p`, `top_k`) were removed on Opus 4.7+
|
|
9
|
+
* and Sonnet 5. They are still accepted on Sonnet 4.6, Haiku 4.5 and Opus 4.6
|
|
10
|
+
* and older — which are exactly the models `MODEL_ALIASES.sonnet` and
|
|
11
|
+
* `.haiku` resolve to, so a blanket "never send temperature" is wrong too.
|
|
12
|
+
* - Structured outputs (`output_config.format`) require a schema with
|
|
13
|
+
* `additionalProperties: false` on every object node, and are not available
|
|
14
|
+
* on every model that is otherwise current.
|
|
15
|
+
* - Adaptive thinking (`thinking: {type: "adaptive"}`) and `output_config.effort`
|
|
16
|
+
* exist from the 4.6 generation on; Haiku 4.5 still takes `budget_tokens` and
|
|
17
|
+
* rejects the adaptive shape.
|
|
18
|
+
*
|
|
19
|
+
* These helpers are deliberately allow-list shaped: an unrecognised model id
|
|
20
|
+
* gets the conservative answer (no structured outputs, no sampling params),
|
|
21
|
+
* because a missing capability degrades quality while a wrongly-claimed one
|
|
22
|
+
* fails the request outright.
|
|
23
|
+
*
|
|
24
|
+
* @module core/llm/model-capabilities
|
|
25
|
+
*/
|
|
26
|
+
/**
|
|
27
|
+
* Parse the family and version out of a first-party or Bedrock model id.
|
|
28
|
+
*
|
|
29
|
+
* Handles `claude-opus-4-8`, `claude-opus-4-8-20260101`, `claude-opus-5` (no
|
|
30
|
+
* minor segment; a trailing 8-digit date is not mistaken for one) and Bedrock ids
|
|
31
|
+
* such as `anthropic.claude-sonnet-4-6-v1:0`. A bare alias (`opus`) does not
|
|
32
|
+
* parse: callers resolve aliases first, and an unparsed id gets the conservative
|
|
33
|
+
* answer from every gate below.
|
|
34
|
+
*/
|
|
35
|
+
function parseModel(modelId) {
|
|
36
|
+
if (!modelId)
|
|
37
|
+
return null;
|
|
38
|
+
const m = /claude-(opus|sonnet|haiku)-(\d+)(?:-(\d{1,2})(?!\d))?/.exec(modelId);
|
|
39
|
+
if (!m)
|
|
40
|
+
return null;
|
|
41
|
+
const major = Number(m[2]);
|
|
42
|
+
const minor = m[3] === undefined ? 0 : Number(m[3]);
|
|
43
|
+
if (Number.isNaN(major) || Number.isNaN(minor))
|
|
44
|
+
return null;
|
|
45
|
+
return { family: m[1], major, minor };
|
|
46
|
+
}
|
|
47
|
+
/** Compare a parsed model against a `major.minor` floor. */
|
|
48
|
+
function atLeast(v, major, minor) {
|
|
49
|
+
if (v.major !== major)
|
|
50
|
+
return v.major > major;
|
|
51
|
+
return v.minor >= minor;
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Does this model still accept `temperature` / `top_p` / `top_k`?
|
|
55
|
+
*
|
|
56
|
+
* Removed on Opus 4.7+ and on Sonnet 5+; still accepted on Opus 4.6 and older,
|
|
57
|
+
* Sonnet 4.6 and older, and every Haiku.
|
|
58
|
+
*/
|
|
59
|
+
export function acceptsSamplingParams(modelId) {
|
|
60
|
+
const v = parseModel(modelId);
|
|
61
|
+
if (!v)
|
|
62
|
+
return false;
|
|
63
|
+
if (v.family === 'opus')
|
|
64
|
+
return !atLeast(v, 4, 7);
|
|
65
|
+
if (v.family === 'sonnet')
|
|
66
|
+
return !atLeast(v, 5, 0);
|
|
67
|
+
return true; // haiku
|
|
68
|
+
}
|
|
69
|
+
/**
|
|
70
|
+
* Does this model support structured outputs (`output_config.format`)?
|
|
71
|
+
*
|
|
72
|
+
* Opus 4.7+, Sonnet 5+ and Haiku 4.5+. Notably NOT Sonnet 4.6, which is what
|
|
73
|
+
* `MODEL_ALIASES.sonnet` resolves to — sending `output_config.format` there is
|
|
74
|
+
* a 400, so callers must keep a prompt-based fallback.
|
|
75
|
+
*/
|
|
76
|
+
export function supportsStructuredOutputs(modelId) {
|
|
77
|
+
const v = parseModel(modelId);
|
|
78
|
+
if (!v)
|
|
79
|
+
return false;
|
|
80
|
+
if (v.family === 'opus')
|
|
81
|
+
return atLeast(v, 4, 7);
|
|
82
|
+
if (v.family === 'sonnet')
|
|
83
|
+
return atLeast(v, 5, 0);
|
|
84
|
+
return atLeast(v, 4, 5); // haiku
|
|
85
|
+
}
|
|
86
|
+
/**
|
|
87
|
+
* Does this model accept `thinking: { type: "adaptive" }` and `output_config.effort`?
|
|
88
|
+
*
|
|
89
|
+
* Both arrived with the 4.6 generation (Opus 4.6, Sonnet 4.6) and are on every
|
|
90
|
+
* newer Opus and Sonnet. Haiku 4.5 predates them and still uses
|
|
91
|
+
* `thinking: { type: "enabled", budget_tokens }`, so the adaptive shape is
|
|
92
|
+
* rejected there. Unknown ids get `false` so a caller omits both parameters
|
|
93
|
+
* rather than sending a request that cannot succeed.
|
|
94
|
+
*/
|
|
95
|
+
export function supportsAdaptiveThinking(modelId) {
|
|
96
|
+
const v = parseModel(modelId);
|
|
97
|
+
if (!v)
|
|
98
|
+
return false;
|
|
99
|
+
if (v.family === 'opus' || v.family === 'sonnet')
|
|
100
|
+
return atLeast(v, 4, 6);
|
|
101
|
+
return false; // haiku
|
|
102
|
+
}
|
|
103
|
+
/**
|
|
104
|
+
* Rewrite a JSON schema into the shape Anthropic structured outputs require.
|
|
105
|
+
*
|
|
106
|
+
* The API rejects a schema whose object nodes do not pin
|
|
107
|
+
* `additionalProperties: false` and list every property in `required`. The
|
|
108
|
+
* repo's own `JSONSchemaType<T>` cannot express either, and no caller sets
|
|
109
|
+
* them, so normalise here rather than asking every call site to remember.
|
|
110
|
+
*
|
|
111
|
+
* Returns a deep copy; the caller's schema is never mutated.
|
|
112
|
+
*/
|
|
113
|
+
export function toStrictJsonSchema(schema) {
|
|
114
|
+
const walk = (node) => {
|
|
115
|
+
if (Array.isArray(node))
|
|
116
|
+
return node.map(walk);
|
|
117
|
+
if (!node || typeof node !== 'object')
|
|
118
|
+
return node;
|
|
119
|
+
const out = { ...node };
|
|
120
|
+
if (out.properties && typeof out.properties === 'object') {
|
|
121
|
+
const props = out.properties;
|
|
122
|
+
const walked = {};
|
|
123
|
+
for (const [key, value] of Object.entries(props)) {
|
|
124
|
+
walked[key] = walk(value);
|
|
125
|
+
}
|
|
126
|
+
out.properties = walked;
|
|
127
|
+
out.additionalProperties = false;
|
|
128
|
+
// Structured outputs require every property to be required; optionality is
|
|
129
|
+
// expressed by the model emitting an empty value, not by omitting the key.
|
|
130
|
+
out.required = Object.keys(walked);
|
|
131
|
+
}
|
|
132
|
+
if (out.items)
|
|
133
|
+
out.items = walk(out.items);
|
|
134
|
+
return out;
|
|
135
|
+
};
|
|
136
|
+
return walk(schema);
|
|
137
|
+
}
|
|
138
|
+
/**
|
|
139
|
+
* Prepare an `output_config` for one request against one model.
|
|
140
|
+
*
|
|
141
|
+
* Strips `format` when the model cannot do structured outputs (so the request
|
|
142
|
+
* still succeeds and the caller's own JSON extraction handles the response),
|
|
143
|
+
* and rewrites a surviving schema into the strict shape the API requires.
|
|
144
|
+
* Returns `undefined` when there is nothing left to send.
|
|
145
|
+
*/
|
|
146
|
+
export function buildOutputConfig(modelId, input) {
|
|
147
|
+
if (!input)
|
|
148
|
+
return undefined;
|
|
149
|
+
const out = {};
|
|
150
|
+
if (input.effort)
|
|
151
|
+
out.effort = input.effort;
|
|
152
|
+
if (input.format && supportsStructuredOutputs(modelId)) {
|
|
153
|
+
out.format = { type: input.format.type, schema: toStrictJsonSchema(input.format.schema) };
|
|
154
|
+
}
|
|
155
|
+
return Object.keys(out).length > 0 ? out : undefined;
|
|
156
|
+
}
|
|
157
|
+
//# sourceMappingURL=model-capabilities.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"model-capabilities.js","sourceRoot":"","sources":["../../../../src/core/llm/model-capabilities.ts"],"names":[],"mappings":"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"}
|
|
@@ -111,7 +111,7 @@ async function createClaudeCodeProvider(config, logger) {
|
|
|
111
111
|
'Run `claude` interactively first to authenticate with your MAX subscription.');
|
|
112
112
|
}
|
|
113
113
|
return new ClaudeCodeProvider({
|
|
114
|
-
model: config.model || 'opus', // Opus 4.
|
|
114
|
+
model: config.model || 'opus', // Opus 4.8 by default for best analysis quality
|
|
115
115
|
maxTokens: config.maxTokensPerRequest,
|
|
116
116
|
logger,
|
|
117
117
|
});
|
|
@@ -13,6 +13,7 @@ export interface AnthropicProviderConfig {
|
|
|
13
13
|
apiKey: string;
|
|
14
14
|
model?: string;
|
|
15
15
|
maxTokens?: number;
|
|
16
|
+
/** Only forwarded to models that still accept sampling params - see model-capabilities.ts */
|
|
16
17
|
temperature?: number;
|
|
17
18
|
baseUrl?: string;
|
|
18
19
|
logger?: Logger;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-provider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"anthropic-provider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAOrB,OAAO,EAAE,MAAM,EAAiB,MAAM,0BAA0B,CAAC;AAGjE;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,MAAM,EAAE,MAAM,CAAC;IACf,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,6FAA6F;IAC7F,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED;;GAEG;AACH,qBAAa,iBAAkB,YAAW,WAAW;IACnD,QAAQ,CAAC,IAAI,EAAG,WAAW,CAAU;IACrC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAM;gBAER,MAAM,EAAE,uBAAuB;IAU3C;;OAEG;YACW,SAAS;IAYvB;;OAEG;IACG,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IAqFnF;;OAEG;IACG,iBAAiB,CAAC,CAAC,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IAwD7E;;OAEG;IACH,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;IAU/E;;OAEG;IACG,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IASrC;;OAEG;IACG,SAAS,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAuBvF"}
|
|
@@ -5,6 +5,7 @@
|
|
|
5
5
|
* Uses @anthropic-ai/sdk for API calls.
|
|
6
6
|
*/
|
|
7
7
|
import { MODEL_PRICING, resolveModelAlias } from '../types.js';
|
|
8
|
+
import { acceptsSamplingParams, buildOutputConfig, supportsStructuredOutputs, } from '../model-capabilities.js';
|
|
8
9
|
import { consoleLogger } from '../../../utils/logger.js';
|
|
9
10
|
import { extractJson, extractRequiredFieldsFromSchema } from '../../../utils/llm-json-extractor.js';
|
|
10
11
|
/**
|
|
@@ -40,12 +41,17 @@ export class AnthropicProvider {
|
|
|
40
41
|
*/
|
|
41
42
|
async analyze(prompt, options = {}) {
|
|
42
43
|
const startTime = Date.now();
|
|
43
|
-
// Resolve model alias (opus → claude-opus-4-
|
|
44
|
+
// Resolve model alias (opus → claude-opus-4-8)
|
|
44
45
|
const model = resolveModelAlias(options.model || this.defaultModel);
|
|
45
46
|
const maxTokens = options.maxTokens || this.maxTokens;
|
|
46
|
-
const temperature = options.temperature ?? this.temperature;
|
|
47
47
|
const retries = options.retries ?? 2;
|
|
48
48
|
const timeout = options.timeout ?? 60000;
|
|
49
|
+
// Normalise and gate `output_config` here so every caller is covered, not just
|
|
50
|
+
// analyzeStructured(). A `format` schema must pin `additionalProperties: false`
|
|
51
|
+
// on every object node or the API 400s, and structured outputs are unavailable
|
|
52
|
+
// on some current models (notably Sonnet 4.6) - drop the format there rather
|
|
53
|
+
// than sending a request that cannot succeed.
|
|
54
|
+
const outputConfig = buildOutputConfig(model, options.outputConfig);
|
|
49
55
|
let lastError = null;
|
|
50
56
|
let wasRetry = false;
|
|
51
57
|
for (let attempt = 0; attempt <= retries; attempt++) {
|
|
@@ -54,12 +60,18 @@ export class AnthropicProvider {
|
|
|
54
60
|
const messages = [
|
|
55
61
|
{ role: 'user', content: prompt },
|
|
56
62
|
];
|
|
63
|
+
// `temperature` is forwarded only where the model still accepts it. Opus
|
|
64
|
+
// 4.7+ and Sonnet 5 reject sampling params with a 400, but the `sonnet`
|
|
65
|
+
// and `haiku` aliases resolve to models that honour them, so dropping it
|
|
66
|
+
// unconditionally would silently discard a caller's determinism setting.
|
|
67
|
+
const temperature = options.temperature ?? this.temperature;
|
|
57
68
|
const response = await client.messages.create({
|
|
58
69
|
model,
|
|
59
70
|
max_tokens: maxTokens,
|
|
60
|
-
temperature,
|
|
61
71
|
system: options.systemPrompt,
|
|
62
72
|
messages,
|
|
73
|
+
...(acceptsSamplingParams(model) ? { temperature } : {}),
|
|
74
|
+
...(outputConfig ? { output_config: outputConfig } : {}),
|
|
63
75
|
});
|
|
64
76
|
const content = response.content
|
|
65
77
|
.filter((block) => block.type === 'text')
|
|
@@ -104,16 +116,31 @@ export class AnthropicProvider {
|
|
|
104
116
|
* Analyze with structured JSON output
|
|
105
117
|
*/
|
|
106
118
|
async analyzeStructured(prompt, options) {
|
|
107
|
-
//
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
119
|
+
// Structured outputs enforce the schema server-side, but only where the model
|
|
120
|
+
// supports them - `MODEL_ALIASES.sonnet` resolves to Sonnet 4.6, which does
|
|
121
|
+
// not. Fall back to asking for JSON in the prompt there, since extractJson()
|
|
122
|
+
// below only rescues an unclean response body, never a rejected request.
|
|
123
|
+
const model = resolveModelAlias(options.model || this.defaultModel);
|
|
124
|
+
const structured = supportsStructuredOutputs(model);
|
|
125
|
+
const jsonPrompt = structured
|
|
126
|
+
? prompt
|
|
127
|
+
: `${prompt}
|
|
112
128
|
|
|
113
|
-
|
|
129
|
+
Respond with JSON matching this schema:
|
|
130
|
+
${JSON.stringify(options.schema, null, 2)}`;
|
|
114
131
|
const result = await this.analyze(jsonPrompt, {
|
|
115
132
|
...options,
|
|
116
|
-
|
|
133
|
+
// Lower temperature for JSON output; analyze() drops it on models that
|
|
134
|
+
// reject sampling params, so no model guard is needed here.
|
|
135
|
+
temperature: options.temperature ?? 0.1,
|
|
136
|
+
...(structured
|
|
137
|
+
? {
|
|
138
|
+
outputConfig: {
|
|
139
|
+
...options.outputConfig,
|
|
140
|
+
format: { type: 'json_schema', schema: options.schema },
|
|
141
|
+
},
|
|
142
|
+
}
|
|
143
|
+
: {}),
|
|
117
144
|
});
|
|
118
145
|
// Extract required fields from schema for validation
|
|
119
146
|
const requiredFields = extractRequiredFieldsFromSchema(options.schema);
|
|
@@ -166,7 +193,7 @@ Return ONLY the JSON object, no markdown formatting or explanation.`;
|
|
|
166
193
|
try {
|
|
167
194
|
const client = await this.getClient();
|
|
168
195
|
// Simple ping - count tokens for minimal text
|
|
169
|
-
await client.messages.
|
|
196
|
+
await client.messages.countTokens({
|
|
170
197
|
model: this.defaultModel,
|
|
171
198
|
messages: [{ role: 'user', content: 'ping' }],
|
|
172
199
|
});
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAQH,OAAO,EAAE,aAAa,EAAiB,iBAAiB,EAAE,MAAM,aAAa,CAAC;AAC9E,OAAO,EAAU,aAAa,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,WAAW,EAAE,+BAA+B,EAAE,MAAM,sCAAsC,CAAC;
|
|
1
|
+
{"version":3,"file":"anthropic-provider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/anthropic-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bedrock-provider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/bedrock-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAiB,MAAM,0BAA0B,CAAC;AAGjE,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAM;gBAER,MAAM,EAAE,qBAAqB;YAS3B,SAAS;IASjB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IA2E7E,iBAAiB,CAAC,CAAC,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IA4B7E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;IAQ/E,OAAO,CAAC,UAAU;
|
|
1
|
+
{"version":3,"file":"bedrock-provider.d.ts","sourceRoot":"","sources":["../../../../../src/core/llm/providers/bedrock-provider.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAEH,OAAO,KAAK,EACV,WAAW,EACX,cAAc,EACd,aAAa,EACb,iBAAiB,EAClB,MAAM,aAAa,CAAC;AAErB,OAAO,EAAE,MAAM,EAAiB,MAAM,0BAA0B,CAAC;AAGjE,MAAM,WAAW,qBAAqB;IACpC,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;IACrB,MAAM,CAAC,EAAE,MAAM,CAAC;CACjB;AAED,qBAAa,eAAgB,YAAW,WAAW;IACjD,QAAQ,CAAC,IAAI,EAAG,SAAS,CAAU;IACnC,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAE9B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,SAAS,CAAS;IAC1B,OAAO,CAAC,WAAW,CAAS;IAC5B,OAAO,CAAC,MAAM,CAAS;IACvB,OAAO,CAAC,MAAM,CAAM;gBAER,MAAM,EAAE,qBAAqB;YAS3B,SAAS;IASjB,OAAO,CAAC,MAAM,EAAE,MAAM,EAAE,OAAO,GAAE,cAAmB,GAAG,OAAO,CAAC,aAAa,CAAC;IA2E7E,iBAAiB,CAAC,CAAC,EACvB,MAAM,EAAE,MAAM,EACd,OAAO,EAAE,iBAAiB,CAAC,CAAC,CAAC,GAC5B,OAAO,CAAC;QAAE,IAAI,EAAE,CAAC,CAAC;QAAC,KAAK,EAAE,aAAa,CAAC,OAAO,CAAC,CAAC;QAAC,aAAa,EAAE,MAAM,CAAA;KAAE,CAAC;IA4B7E,YAAY,CAAC,WAAW,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,MAAM;IAQ/E,OAAO,CAAC,UAAU;IAWZ,WAAW,IAAI,OAAO,CAAC,OAAO,CAAC;IAK/B,SAAS,IAAI,OAAO,CAAC;QAAE,SAAS,EAAE,OAAO,CAAC;QAAC,SAAS,CAAC,EAAE,MAAM,CAAC;QAAC,KAAK,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC;CAcvF"}
|
|
@@ -31,7 +31,7 @@ export class BedrockProvider {
|
|
|
31
31
|
}
|
|
32
32
|
async analyze(prompt, options = {}) {
|
|
33
33
|
const startTime = Date.now();
|
|
34
|
-
// Resolve model alias (opus → anthropic.claude-opus-4-
|
|
34
|
+
// Resolve model alias (opus → anthropic.claude-opus-4-8-v1:0)
|
|
35
35
|
const model = resolveModelAlias(options.model || this.defaultModel, 'bedrock');
|
|
36
36
|
const client = await this.getClient();
|
|
37
37
|
// @ts-ignore - @aws-sdk/client-bedrock-runtime is an optional runtime dependency (may not be installed)
|
|
@@ -127,15 +127,20 @@ Return ONLY the JSON object.`;
|
|
|
127
127
|
return (inputTokens / 1000000) * pricing.input + (outputTokens / 1000000) * pricing.output;
|
|
128
128
|
}
|
|
129
129
|
getPricing(modelId) {
|
|
130
|
-
|
|
130
|
+
// Claude 3 generation first — those rates differ from the 4.x models below
|
|
131
|
+
if (modelId.includes('claude-3-opus'))
|
|
131
132
|
return { input: 15, output: 75 };
|
|
133
|
+
if (modelId.includes('claude-3-haiku'))
|
|
134
|
+
return { input: 0.25, output: 1.25 };
|
|
135
|
+
if (modelId.includes('claude-opus-4'))
|
|
136
|
+
return { input: 5, output: 25 };
|
|
132
137
|
if (modelId.includes('claude-sonnet-4') || modelId.includes('claude-3-5-sonnet'))
|
|
133
138
|
return { input: 3, output: 15 };
|
|
134
|
-
if (modelId.includes('claude-
|
|
135
|
-
return { input:
|
|
139
|
+
if (modelId.includes('claude-haiku'))
|
|
140
|
+
return { input: 1, output: 5 };
|
|
136
141
|
if (modelId.includes('titan'))
|
|
137
142
|
return { input: 0.8, output: 1.6 };
|
|
138
|
-
return { input:
|
|
143
|
+
return { input: 5, output: 25 }; // Default to opus
|
|
139
144
|
}
|
|
140
145
|
async isAvailable() {
|
|
141
146
|
const status = await this.getStatus();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"bedrock-provider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/bedrock-provider.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"bedrock-provider.js","sourceRoot":"","sources":["../../../../../src/core/llm/providers/bedrock-provider.ts"],"names":[],"mappings":"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"}
|
|
@@ -41,7 +41,7 @@ const IS_WINDOWS = process.platform === 'win32';
|
|
|
41
41
|
export class ClaudeCodeProvider {
|
|
42
42
|
constructor(config = {}) {
|
|
43
43
|
this.name = 'claude-code';
|
|
44
|
-
this.model = config.model || 'opus'; // Use Opus 4.
|
|
44
|
+
this.model = config.model || 'opus'; // Use Opus 4.8 by default for best quality
|
|
45
45
|
this.defaultModel = this.model;
|
|
46
46
|
this.maxTokens = config.maxTokens || 4096;
|
|
47
47
|
this.timeout = config.timeout || 120000;
|
|
@@ -53,7 +53,14 @@ export interface LLMConfig {
|
|
|
53
53
|
export interface AnalyzeOptions {
|
|
54
54
|
/** Override max tokens for this request */
|
|
55
55
|
maxTokens?: number;
|
|
56
|
-
/**
|
|
56
|
+
/**
|
|
57
|
+
* Override temperature for this request.
|
|
58
|
+
*
|
|
59
|
+
* The Anthropic provider forwards it only to models that still accept sampling
|
|
60
|
+
* params (Haiku, Sonnet before 5, Opus before 4.7 - see model-capabilities.ts)
|
|
61
|
+
* and drops it on Opus 4.7+ and Sonnet 5, which reject it with a 400. The
|
|
62
|
+
* other providers always honour it.
|
|
63
|
+
*/
|
|
57
64
|
temperature?: number;
|
|
58
65
|
/** Override model for this request */
|
|
59
66
|
model?: string;
|
|
@@ -63,6 +70,18 @@ export interface AnalyzeOptions {
|
|
|
63
70
|
timeout?: number;
|
|
64
71
|
/** Retry count on failure (default: 2) */
|
|
65
72
|
retries?: number;
|
|
73
|
+
/**
|
|
74
|
+
* Anthropic-only: structured-output + effort config forwarded to output_config.
|
|
75
|
+
*
|
|
76
|
+
* Non-Anthropic providers ignore it.
|
|
77
|
+
*/
|
|
78
|
+
outputConfig?: {
|
|
79
|
+
effort?: 'low' | 'medium' | 'high' | 'xhigh' | 'max';
|
|
80
|
+
format?: {
|
|
81
|
+
type: 'json_schema';
|
|
82
|
+
schema: unknown;
|
|
83
|
+
};
|
|
84
|
+
};
|
|
66
85
|
}
|
|
67
86
|
/**
|
|
68
87
|
* Result of an analysis request
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH;;GAEG;AACH,MAAM,MAAM,eAAe,GACvB,aAAa,GACb,WAAW,GACX,QAAQ,GACR,cAAc,GACd,SAAS,GACT,QAAQ,GACR,WAAW,GACX,YAAY,CAAC;AAEjB;;GAEG;AACH,MAAM,WAAW,SAAS;IACxB,oBAAoB;IACpB,QAAQ,EAAE,eAAe,CAAC;IAE1B,2CAA2C;IAC3C,KAAK,EAAE,MAAM,CAAC;IAEd,mDAAmD;IACnD,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,mDAAmD;IACnD,OAAO,CAAC,EAAE,MAAM,CAAC;IAEjB,sCAAsC;IACtC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,kCAAkC;IAClC,eAAe,CAAC,EAAE,MAAM,CAAC;IAEzB,mCAAmC;IACnC,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB,wCAAwC;IACxC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,sDAAsD;IACtD,eAAe,CAAC,EAAE,KAAK,GAAG,QAAQ,GAAG,MAAM,CAAC;IAE5C,kDAAkD;IAClD,MAAM,CAAC,EAAE,YAAY,CAAC;IAEtB,6CAA6C;IAC7C,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAE7B,oDAAoD;IACpD,WAAW,CAAC,EAAE,MAAM,CAAC;IAErB,2BAA2B;IAC3B,YAAY,CAAC,EAAE,OAAO,CAAC;IAEvB,yCAAyC;IACzC,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;GAEG;AACH,MAAM,WAAW,cAAc;IAC7B,2CAA2C;IAC3C,SAAS,CAAC,EAAE,MAAM,CAAC;IAEnB
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../src/core/llm/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/llm/types.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;
|
|
1
|
+
{"version":3,"file":"types.js","sourceRoot":"","sources":["../../../../src/core/llm/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -34,7 +34,7 @@ const LLM_PATTERN_SCHEMA = {
|
|
|
34
34
|
},
|
|
35
35
|
required: ['patterns'],
|
|
36
36
|
};
|
|
37
|
-
const SYSTEM_PROMPT = `You are a software architecture analyst. Given project documentation, identify recurring implementation patterns
|
|
37
|
+
const SYSTEM_PROMPT = `You are a software architecture analyst. Given project documentation, identify recurring implementation patterns.`;
|
|
38
38
|
export class SignalCollector {
|
|
39
39
|
constructor(projectRoot, options) {
|
|
40
40
|
this.projectRoot = projectRoot;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"signal-collector.js","sourceRoot":"","sources":["../../../../src/core/skill-gen/signal-collector.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AACvC,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,MAAM,MAAM,CAAC;AAEtC,OAAO,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAChD,OAAO,EACL,oBAAoB,EACpB,eAAe,EACf,eAAe,EACf,cAAc,EACd,kBAAkB,EAClB,WAAW,EACX,YAAY,GACb,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,aAAa,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,4BAA4B,CAAC;AAEzF,OAAO,EAAE,aAAa,EAAE,MAAM,qBAAqB,CAAC;AAOpD,MAAM,kBAAkB,GAAG;IACzB,IAAI,EAAE,QAAiB;IACvB,UAAU,EAAE;QACV,QAAQ,EAAE;YACR,IAAI,EAAE,OAAgB;YACtB,KAAK,EAAE;gBACL,IAAI,EAAE,QAAiB;gBACvB,UAAU,EAAE;oBACV,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,WAAW,EAAE,0BAA0B,EAAE;oBAC9E,IAAI,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,WAAW,EAAE,oBAAoB,EAAE;oBACpE,WAAW,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,WAAW,EAAE,cAAc,EAAE;oBACrE,QAAQ,EAAE,EAAE,IAAI,EAAE,OAAgB,EAAE,KAAK,EAAE,EAAE,IAAI,EAAE,QAAiB,EAAE,EAAE;iBACzE;gBACD,QAAQ,EAAE,CAAC,UAAU,EAAE,MAAM,EAAE,aAAa,EAAE,UAAU,CAAa;aACtE;SACF;KACF;IACD,QAAQ,EAAE,CAAC,UAAU,CAAa;CACnC,CAAC;AAEF,MAAM,aAAa,GAAG,
|
|
1
|
+
{"version":3,"file":"signal-collector.js","sourceRoot":"","sources":["../../../../src/core/skill-gen/signal-collector.ts"],"names":[],"mappings":"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"}
|
|
@@ -47,7 +47,7 @@ export class SuggestionEngine {
|
|
|
47
47
|
const top = qualifying[0];
|
|
48
48
|
// Print suggestion
|
|
49
49
|
const sourceCount = top.uniqueSourceFiles?.length ?? top.incrementIds.length;
|
|
50
|
-
console.log(`\u{1F4A1} Skill suggestion: Detected "${top.pattern}" pattern across ${sourceCount} sources.
|
|
50
|
+
console.log(`\u{1F4A1} Skill suggestion: Detected "${top.pattern}" pattern across ${sourceCount} sources. Worth capturing as a project skill.`);
|
|
51
51
|
// Mark as suggested and save
|
|
52
52
|
top.suggested = true;
|
|
53
53
|
await saveSignalStore(signalsPath, store);
|