@oharness/engine 0.5.1 → 0.7.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/agent/agent.d.ts +12 -0
- package/dist/agent/agent.js +3 -0
- package/dist/agent/agent.js.map +1 -1
- package/dist/agent/memory-backup.d.ts +2 -0
- package/dist/agent/memory-backup.js +9 -1
- package/dist/agent/memory-backup.js.map +1 -1
- package/dist/agent/memory-limits.js +8 -1
- package/dist/agent/memory-limits.js.map +1 -1
- package/dist/agent/memory-usage.d.ts +1 -1
- package/dist/agent/memory-usage.js +2 -3
- package/dist/agent/memory-usage.js.map +1 -1
- package/dist/agent/memory.d.ts +3 -0
- package/dist/agent/memory.js +6 -18
- package/dist/agent/memory.js.map +1 -1
- package/dist/agent/session.d.ts +9 -0
- package/dist/agent/session.js +14 -2
- package/dist/agent/session.js.map +1 -1
- package/dist/agent/settings.js +3 -2
- package/dist/agent/settings.js.map +1 -1
- package/dist/agent/store.d.ts +45 -4
- package/dist/agent/store.js +198 -25
- package/dist/agent/store.js.map +1 -1
- package/dist/artifacts/files.d.ts +52 -0
- package/dist/artifacts/files.js +169 -0
- package/dist/artifacts/files.js.map +1 -0
- package/dist/auth/store.js +3 -2
- package/dist/auth/store.js.map +1 -1
- package/dist/config-files.js +3 -2
- package/dist/config-files.js.map +1 -1
- package/dist/config.d.ts +6 -1
- package/dist/config.js +10 -2
- package/dist/config.js.map +1 -1
- package/dist/harness.d.ts +62 -1
- package/dist/harness.js +174 -12
- package/dist/harness.js.map +1 -1
- package/dist/paths.d.ts +5 -0
- package/dist/paths.js +21 -3
- package/dist/paths.js.map +1 -1
- package/dist/providers/builtin.d.ts +2 -0
- package/dist/providers/builtin.js +38 -24
- package/dist/providers/builtin.js.map +1 -1
- package/dist/providers/catalog.d.ts +5 -0
- package/dist/providers/catalog.js +32 -1
- package/dist/providers/catalog.js.map +1 -1
- package/dist/providers/catalog.json +241 -123
- package/dist/providers/discovery.js +17 -0
- package/dist/providers/discovery.js.map +1 -1
- package/dist/providers/models-dev.d.ts +89 -0
- package/dist/providers/models-dev.js +160 -0
- package/dist/providers/models-dev.js.map +1 -0
- package/dist/providers/models-dev.json +821 -0
- package/dist/providers/registry.d.ts +12 -0
- package/dist/providers/registry.js +33 -1
- package/dist/providers/registry.js.map +1 -1
- package/dist/providers/types.d.ts +21 -0
- package/dist/providers/types.js +16 -0
- package/dist/providers/types.js.map +1 -1
- package/dist/runtime-plugins/builtin/memory-migrate.d.ts +5 -21
- package/dist/runtime-plugins/builtin/memory-migrate.js +5 -125
- package/dist/runtime-plugins/builtin/memory-migrate.js.map +1 -1
- package/dist/runtime-plugins/builtin/memory.d.ts +3 -0
- package/dist/runtime-plugins/builtin/memory.js +12 -10
- package/dist/runtime-plugins/builtin/memory.js.map +1 -1
- package/dist/schedule/clock.d.ts +76 -0
- package/dist/schedule/clock.js +147 -0
- package/dist/schedule/clock.js.map +1 -0
- package/dist/schedule/cron.d.ts +9 -0
- package/dist/schedule/cron.js +18 -0
- package/dist/schedule/cron.js.map +1 -1
- package/dist/schedule/lock.d.ts +38 -0
- package/dist/schedule/lock.js +100 -0
- package/dist/schedule/lock.js.map +1 -0
- package/dist/schedule/runner.d.ts +67 -0
- package/dist/schedule/runner.js +100 -0
- package/dist/schedule/runner.js.map +1 -0
- package/dist/schedule/scheduler.d.ts +56 -15
- package/dist/schedule/scheduler.js +80 -107
- package/dist/schedule/scheduler.js.map +1 -1
- package/dist/storage/kv.js +3 -2
- package/dist/storage/kv.js.map +1 -1
- package/dist/storage/project.d.ts +26 -0
- package/dist/storage/project.js +74 -15
- package/dist/storage/project.js.map +1 -1
- package/dist/tools/builtin/routine.d.ts +31 -0
- package/dist/tools/builtin/routine.js +70 -0
- package/dist/tools/builtin/routine.js.map +1 -0
- package/dist/util/fs.d.ts +6 -0
- package/dist/util/fs.js +22 -0
- package/dist/util/fs.js.map +1 -0
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/providers/discovery.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"discovery.js","sourceRoot":"","sources":["../../src/providers/discovery.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,89 @@
|
|
|
1
|
+
import type { CatalogProvider } from "./catalog.ts";
|
|
2
|
+
import type { ModelSpec } from "./types.ts";
|
|
3
|
+
/**
|
|
4
|
+
* Models from models.dev, for the providers catalog.json has chosen.
|
|
5
|
+
*
|
|
6
|
+
* catalog.json decides which providers exist and how they are presented —
|
|
7
|
+
* that is curation, and it stays in this repository. What models each one
|
|
8
|
+
* serves, at what context length and price, is a fact about the vendor that
|
|
9
|
+
* changes weekly, and models.dev tracks it for two hundred providers. Its
|
|
10
|
+
* snapshot is written at build time by scripts/sync-models-dev.mjs, only for
|
|
11
|
+
* the ids catalog.json names under `modelsDev`, and shipped beside the
|
|
12
|
+
* catalog: nothing here fetches at runtime, so a change upstream reaches
|
|
13
|
+
* users only after someone has regenerated and reviewed it.
|
|
14
|
+
*
|
|
15
|
+
* It sits beside pi-ai's snapshot at the bottom of the stack. Where both know
|
|
16
|
+
* a model, pi-ai's entry wins — it carries the per-vendor thinking tiers the
|
|
17
|
+
* wire layer needs, which models.dev describes more loosely — and models.dev
|
|
18
|
+
* adds what pi-ai lacks, which for most of the providers added with it is
|
|
19
|
+
* everything. A live `/models` listing still replaces both.
|
|
20
|
+
*/
|
|
21
|
+
export interface ModelsDevModel {
|
|
22
|
+
id: string;
|
|
23
|
+
name?: string;
|
|
24
|
+
attachment?: boolean;
|
|
25
|
+
reasoning?: boolean;
|
|
26
|
+
reasoning_options?: {
|
|
27
|
+
type: string;
|
|
28
|
+
values?: string[];
|
|
29
|
+
}[];
|
|
30
|
+
tool_call?: boolean;
|
|
31
|
+
temperature?: boolean;
|
|
32
|
+
status?: string;
|
|
33
|
+
modalities?: {
|
|
34
|
+
input?: string[];
|
|
35
|
+
output?: string[];
|
|
36
|
+
};
|
|
37
|
+
limit?: {
|
|
38
|
+
context?: number;
|
|
39
|
+
output?: number;
|
|
40
|
+
};
|
|
41
|
+
cost?: {
|
|
42
|
+
input?: number;
|
|
43
|
+
output?: number;
|
|
44
|
+
cache_read?: number;
|
|
45
|
+
cache_write?: number;
|
|
46
|
+
};
|
|
47
|
+
/** "YYYY-MM-DD", or "YYYY-MM" for a model announced without a day. */
|
|
48
|
+
release_date?: string;
|
|
49
|
+
}
|
|
50
|
+
export interface ModelsDevProvider {
|
|
51
|
+
name?: string;
|
|
52
|
+
api?: string;
|
|
53
|
+
models: Record<string, ModelsDevModel>;
|
|
54
|
+
}
|
|
55
|
+
export interface ModelsDevSnapshot {
|
|
56
|
+
fetchedAt?: string;
|
|
57
|
+
providers: Record<string, ModelsDevProvider>;
|
|
58
|
+
}
|
|
59
|
+
/** The bundled snapshot, or an empty one: it is a convenience, never a requirement. */
|
|
60
|
+
export declare function loadModelsDev(): Promise<ModelsDevSnapshot>;
|
|
61
|
+
/**
|
|
62
|
+
* Release dates by model id, across every provider in the snapshot.
|
|
63
|
+
*
|
|
64
|
+
* For ordering a list in which a model arrived with no date of its own, or a
|
|
65
|
+
* doubtful one: a gateway's `deepseek-v4-flash` is DeepSeek's model, and
|
|
66
|
+
* OpenRouter's `anthropic/claude-opus-5` is Anthropic's. Looked up by the
|
|
67
|
+
* whole id and by the part after the last slash, lowercased; where providers
|
|
68
|
+
* disagree about the same id the earliest date is kept, since a reseller
|
|
69
|
+
* listing a model later does not make it newer.
|
|
70
|
+
*/
|
|
71
|
+
export declare function releaseDates(snapshot: ModelsDevSnapshot): Map<string, number>;
|
|
72
|
+
/**
|
|
73
|
+
* The date for a wire id from `releaseDates`: the earlier of the whole id's
|
|
74
|
+
* and its last part's, so a reseller's "vendor/model" entry cannot postdate
|
|
75
|
+
* the vendor's own "model".
|
|
76
|
+
*/
|
|
77
|
+
export declare function releaseDateOf(dates: Map<string, number>, wireId: string): number | undefined;
|
|
78
|
+
/**
|
|
79
|
+
* Whether a models.dev entry belongs in a harness picker at all: something
|
|
80
|
+
* that answers in text, can call tools, and is not on its way out.
|
|
81
|
+
*/
|
|
82
|
+
export declare function isUsableModel(model: ModelsDevModel): boolean;
|
|
83
|
+
export declare function specFromModelsDev(entry: CatalogProvider, model: ModelsDevModel): ModelSpec;
|
|
84
|
+
/**
|
|
85
|
+
* Specs for every catalog provider that names a models.dev id, skipping the
|
|
86
|
+
* models already `taken` — by the catalog files and by pi-ai's seed, both of
|
|
87
|
+
* which rank above this.
|
|
88
|
+
*/
|
|
89
|
+
export declare function modelsDevSeeds(providers: Record<string, CatalogProvider>, snapshot: ModelsDevSnapshot, taken: Set<string>, listed?: ReadonlySet<string>): ModelSpec[];
|
|
@@ -0,0 +1,160 @@
|
|
|
1
|
+
import { readFile } from "node:fs/promises";
|
|
2
|
+
import path from "node:path";
|
|
3
|
+
import { fileURLToPath } from "node:url";
|
|
4
|
+
import { parseJson } from "../util/json.js";
|
|
5
|
+
const HERE = path.dirname(fileURLToPath(import.meta.url));
|
|
6
|
+
const EFFORTS = ["low", "medium", "high", "xhigh", "max"];
|
|
7
|
+
const DEFAULT_EFFORTS = ["low", "medium", "high"];
|
|
8
|
+
/** The bundled snapshot, or an empty one: it is a convenience, never a requirement. */
|
|
9
|
+
export async function loadModelsDev() {
|
|
10
|
+
try {
|
|
11
|
+
const parsed = parseJson(await readFile(path.join(HERE, "models-dev.json"), "utf8"));
|
|
12
|
+
if (parsed.ok && parsed.value && typeof parsed.value.providers === "object")
|
|
13
|
+
return parsed.value;
|
|
14
|
+
}
|
|
15
|
+
catch {
|
|
16
|
+
// Missing from a build that did not copy it: fall through to nothing.
|
|
17
|
+
}
|
|
18
|
+
return { providers: {} };
|
|
19
|
+
}
|
|
20
|
+
/** A models.dev release date as ms, when it is one. */
|
|
21
|
+
function releasedAt(model) {
|
|
22
|
+
const ms = model.release_date ? Date.parse(model.release_date) : NaN;
|
|
23
|
+
return Number.isFinite(ms) ? { releasedAt: ms } : {};
|
|
24
|
+
}
|
|
25
|
+
/**
|
|
26
|
+
* Release dates by model id, across every provider in the snapshot.
|
|
27
|
+
*
|
|
28
|
+
* For ordering a list in which a model arrived with no date of its own, or a
|
|
29
|
+
* doubtful one: a gateway's `deepseek-v4-flash` is DeepSeek's model, and
|
|
30
|
+
* OpenRouter's `anthropic/claude-opus-5` is Anthropic's. Looked up by the
|
|
31
|
+
* whole id and by the part after the last slash, lowercased; where providers
|
|
32
|
+
* disagree about the same id the earliest date is kept, since a reseller
|
|
33
|
+
* listing a model later does not make it newer.
|
|
34
|
+
*/
|
|
35
|
+
export function releaseDates(snapshot) {
|
|
36
|
+
const dates = new Map();
|
|
37
|
+
const keep = (key, ms) => {
|
|
38
|
+
const held = dates.get(key);
|
|
39
|
+
if (held === undefined || ms < held)
|
|
40
|
+
dates.set(key, ms);
|
|
41
|
+
};
|
|
42
|
+
for (const provider of Object.values(snapshot.providers)) {
|
|
43
|
+
for (const model of Object.values(provider.models ?? {})) {
|
|
44
|
+
const { releasedAt: ms } = releasedAt(model);
|
|
45
|
+
if (ms === undefined)
|
|
46
|
+
continue;
|
|
47
|
+
const id = dateKey(model.id);
|
|
48
|
+
keep(id, ms);
|
|
49
|
+
keep(id.slice(id.lastIndexOf("/") + 1), ms);
|
|
50
|
+
}
|
|
51
|
+
}
|
|
52
|
+
return dates;
|
|
53
|
+
}
|
|
54
|
+
/**
|
|
55
|
+
* An id as both sides of the lookup spell it: lowercased, with a version's
|
|
56
|
+
* dots as dashes — a gateway's "claude-opus-4.8" is models.dev's
|
|
57
|
+
* "claude-opus-4-8".
|
|
58
|
+
*/
|
|
59
|
+
function dateKey(id) {
|
|
60
|
+
return id.toLowerCase().replace(/\./g, "-");
|
|
61
|
+
}
|
|
62
|
+
/**
|
|
63
|
+
* The date for a wire id from `releaseDates`: the earlier of the whole id's
|
|
64
|
+
* and its last part's, so a reseller's "vendor/model" entry cannot postdate
|
|
65
|
+
* the vendor's own "model".
|
|
66
|
+
*/
|
|
67
|
+
export function releaseDateOf(dates, wireId) {
|
|
68
|
+
// A routing variant (":batch", ":free") is the same model released the same day.
|
|
69
|
+
const id = dateKey(wireId.replace(/^~/, "").replace(/:[a-z-]+$/, ""));
|
|
70
|
+
const found = [dates.get(id), dates.get(id.slice(id.lastIndexOf("/") + 1))].filter((ms) => ms !== undefined);
|
|
71
|
+
return found.length ? Math.min(...found) : undefined;
|
|
72
|
+
}
|
|
73
|
+
/**
|
|
74
|
+
* Whether a models.dev entry belongs in a harness picker at all: something
|
|
75
|
+
* that answers in text, can call tools, and is not on its way out.
|
|
76
|
+
*/
|
|
77
|
+
export function isUsableModel(model) {
|
|
78
|
+
if (model.status === "deprecated")
|
|
79
|
+
return false;
|
|
80
|
+
if (model.tool_call === false)
|
|
81
|
+
return false;
|
|
82
|
+
const output = model.modalities?.output;
|
|
83
|
+
return !output || output.includes("text");
|
|
84
|
+
}
|
|
85
|
+
export function specFromModelsDev(entry, model) {
|
|
86
|
+
const cost = model.cost ?? {};
|
|
87
|
+
const efforts = effortLevels(model);
|
|
88
|
+
return {
|
|
89
|
+
id: `${entry.id}/${model.id}`,
|
|
90
|
+
provider: entry.id,
|
|
91
|
+
model: model.id,
|
|
92
|
+
displayName: model.name || model.id,
|
|
93
|
+
...releasedAt(model),
|
|
94
|
+
// The same defaults discovery uses for an endpoint that states nothing.
|
|
95
|
+
contextWindow: model.limit?.context || 128_000,
|
|
96
|
+
maxOutputTokens: model.limit?.output || 8_192,
|
|
97
|
+
supportsTools: model.tool_call !== false,
|
|
98
|
+
supportsImages: (model.modalities?.input ?? []).includes("image"),
|
|
99
|
+
supportsParallelToolCalls: true,
|
|
100
|
+
supportsPromptCache: (cost.cache_read ?? 0) > 0,
|
|
101
|
+
thinkingMode: model.reasoning ? "effort" : "none",
|
|
102
|
+
effortLevels: efforts,
|
|
103
|
+
supportsSampling: model.temperature !== false,
|
|
104
|
+
// The same rule as pi-ai's seed: a plan's models are not billed per token,
|
|
105
|
+
// and an unquoted price is left out rather than written as zero.
|
|
106
|
+
...(entry.subscription
|
|
107
|
+
? {}
|
|
108
|
+
: {
|
|
109
|
+
...price("costPer1MInput", cost.input),
|
|
110
|
+
...price("costPer1MOutput", cost.output),
|
|
111
|
+
...price("costPer1MCacheRead", cost.cache_read),
|
|
112
|
+
...price("costPer1MCacheWrite", cost.cache_write),
|
|
113
|
+
}),
|
|
114
|
+
};
|
|
115
|
+
}
|
|
116
|
+
/**
|
|
117
|
+
* The tiers a model names, when it names them as effort levels; the ordinary
|
|
118
|
+
* three otherwise. A toggle or a token budget is still driven by effort here,
|
|
119
|
+
* which the wire layer translates — the same reading pi-ai's seed takes.
|
|
120
|
+
*/
|
|
121
|
+
function effortLevels(model) {
|
|
122
|
+
if (!model.reasoning)
|
|
123
|
+
return [];
|
|
124
|
+
const named = (model.reasoning_options ?? []).find((option) => option.type === "effort")?.values;
|
|
125
|
+
if (!named?.length)
|
|
126
|
+
return [...DEFAULT_EFFORTS];
|
|
127
|
+
const levels = EFFORTS.filter((level) => named.includes(level));
|
|
128
|
+
return levels.length ? levels : [...DEFAULT_EFFORTS];
|
|
129
|
+
}
|
|
130
|
+
function price(field, value) {
|
|
131
|
+
return value && value > 0 ? { [field]: value } : {};
|
|
132
|
+
}
|
|
133
|
+
/**
|
|
134
|
+
* Specs for every catalog provider that names a models.dev id, skipping the
|
|
135
|
+
* models already `taken` — by the catalog files and by pi-ai's seed, both of
|
|
136
|
+
* which rank above this.
|
|
137
|
+
*/
|
|
138
|
+
export function modelsDevSeeds(providers, snapshot, taken, listed) {
|
|
139
|
+
const seeded = [];
|
|
140
|
+
for (const entry of Object.values(providers)) {
|
|
141
|
+
if (!entry.modelsDev || listed?.has(entry.id))
|
|
142
|
+
continue;
|
|
143
|
+
const source = snapshot.providers[entry.modelsDev];
|
|
144
|
+
if (!source)
|
|
145
|
+
continue;
|
|
146
|
+
const excluded = new Set(entry.excludeModels ?? []);
|
|
147
|
+
for (const model of Object.values(source.models ?? {})) {
|
|
148
|
+
if (!model?.id || excluded.has(model.id) || !isUsableModel(model))
|
|
149
|
+
continue;
|
|
150
|
+
const spec = specFromModelsDev(entry, model);
|
|
151
|
+
if (taken.has(spec.id) || taken.has(`${spec.provider} ${spec.model}`))
|
|
152
|
+
continue;
|
|
153
|
+
taken.add(spec.id);
|
|
154
|
+
taken.add(`${spec.provider} ${spec.model}`);
|
|
155
|
+
seeded.push(spec);
|
|
156
|
+
}
|
|
157
|
+
}
|
|
158
|
+
return seeded;
|
|
159
|
+
}
|
|
160
|
+
//# sourceMappingURL=models-dev.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"models-dev.js","sourceRoot":"","sources":["../../src/providers/models-dev.ts"],"names":[],"mappings":"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"}
|