@anonx3247/universal-agent-harness 0.1.1 → 1.0.1

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.
@@ -1,5 +1,6 @@
1
1
  import Database from "better-sqlite3";
2
- export declare const db: import("drizzle-orm/better-sqlite3").BetterSQLite3Database<any> & {
2
+ import * as schema from "./schema";
3
+ export declare const db: import("drizzle-orm/better-sqlite3").BetterSQLite3Database<typeof schema> & {
3
4
  $client: Database.Database;
4
5
  };
5
6
  export type Tx = Parameters<Parameters<(typeof db)["transaction"]>[0]>[0];
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AAatC,eAAO,MAAM,EAAE;;CAAsC,CAAC;AAEtD,MAAM,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/db/index.ts"],"names":[],"mappings":"AACA,OAAO,QAAQ,MAAM,gBAAgB,CAAC;AACtC,OAAO,KAAK,MAAM,MAAM,UAAU,CAAC;AAYnC,eAAO,MAAM,EAAE;;CAAsC,CAAC;AAEtD,MAAM,MAAM,EAAE,GAAG,UAAU,CAAC,UAAU,CAAC,CAAC,OAAO,EAAE,CAAC,CAAC,aAAa,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC"}
@@ -1,3 +1,4 @@
1
+ import { Model } from "../models/provider";
1
2
  export declare const runs: import("drizzle-orm/sqlite-core").SQLiteTableWithColumns<{
2
3
  name: "runs";
3
4
  schema: undefined;
@@ -261,7 +262,7 @@ export declare const messages: import("drizzle-orm/sqlite-core").SQLiteTableWith
261
262
  tableName: "messages";
262
263
  dataType: "string";
263
264
  columnType: "SQLiteText";
264
- data: Message;
265
+ data: "agent" | "user";
265
266
  driverParam: string;
266
267
  notNull: true;
267
268
  hasDefault: false;
@@ -274,14 +275,14 @@ export declare const messages: import("drizzle-orm/sqlite-core").SQLiteTableWith
274
275
  generated: undefined;
275
276
  }, {}, {
276
277
  length: number | undefined;
277
- $type: Message;
278
+ $type: "agent" | "user";
278
279
  }>;
279
280
  content: import("drizzle-orm/sqlite-core").SQLiteColumn<{
280
281
  name: "content";
281
282
  tableName: "messages";
282
283
  dataType: "json";
283
284
  columnType: "SQLiteTextJson";
284
- data: Message;
285
+ data: (import("../models").TextContent | import("../models").ToolUse | import("../models").ToolResult | import("../models").Thinking)[];
285
286
  driverParam: string;
286
287
  notNull: true;
287
288
  hasDefault: false;
@@ -293,7 +294,7 @@ export declare const messages: import("drizzle-orm/sqlite-core").SQLiteTableWith
293
294
  identity: undefined;
294
295
  generated: undefined;
295
296
  }, {}, {
296
- $type: Message;
297
+ $type: (import("../models").TextContent | import("../models").ToolUse | import("../models").ToolResult | import("../models").Thinking)[];
297
298
  }>;
298
299
  total_tokens: import("drizzle-orm/sqlite-core").SQLiteColumn<{
299
300
  name: "total_tokens";
@@ -1 +1 @@
1
- {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAUA,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBhB,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BpB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAarB,CAAC"}
1
+ {"version":3,"file":"schema.d.ts","sourceRoot":"","sources":["../../src/db/schema.ts"],"names":[],"mappings":"AAQA,OAAO,EAAE,KAAK,EAAE,MAAM,sBAAsB,CAAC;AAE7C,eAAO,MAAM,IAAI;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAmBhB,CAAC;AAEF,eAAO,MAAM,QAAQ;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EA8BpB,CAAC;AAEF,eAAO,MAAM,UAAU;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAarB,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/index.js CHANGED
@@ -98,21 +98,29 @@ export async function run(config) {
98
98
  let lastCost = await MessageResource.totalCostForRun(run);
99
99
  const runnerPromises = runners.map(async (runner) => {
100
100
  while (true) {
101
- // Check cost limit
102
- if (config.maxCost && tickCount % 20 === 0) {
101
+ const tick = await runner.tick();
102
+ tickCount++;
103
+ if (tick.isErr()) {
104
+ return tick;
105
+ }
106
+ // Send message callback after each tick
107
+ if (config.onMessage) {
108
+ const messages = await MessageResource.listMessagesByRun(run);
109
+ const latest = messages[messages.length - 1];
110
+ if (latest) {
111
+ config.onMessage(latest.toJSON());
112
+ }
113
+ }
114
+ // Update cost after each tick
115
+ if (config.onCostUpdate || config.maxCost) {
103
116
  lastCost = await MessageResource.totalCostForRun(run);
104
117
  if (config.onCostUpdate) {
105
118
  config.onCostUpdate(lastCost);
106
119
  }
107
- if (lastCost > config.maxCost) {
120
+ if (config.maxCost && lastCost > config.maxCost) {
108
121
  return;
109
122
  }
110
123
  }
111
- const tick = await runner.tick();
112
- tickCount++;
113
- if (tick.isErr()) {
114
- return tick;
115
- }
116
124
  }
117
125
  });
118
126
  await Promise.all(runnerPromises);
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
@@ -1,5 +1,5 @@
1
1
  import { EventEmitter } from "events";
2
- import { AdvisoryResource } from "@app/resources/advisory";
2
+ import { AdvisoryResource } from "../resources/advisory";
3
3
  export class TypedEventEmitter extends EventEmitter {
4
4
  on(event, listener) {
5
5
  return super.on(event, listener);
@@ -1,6 +1,6 @@
1
1
  import { MessageParam } from "@anthropic-ai/sdk/resources/messages";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../lib/error";
4
4
  export type AnthropicModel = "claude-opus-4-5" | "claude-sonnet-4-5" | "claude-haiku-4-5";
5
5
  export declare function isAnthropicModel(model: string): model is AnthropicModel;
6
6
  export declare class AnthropicLLM extends LLM {
@@ -1,8 +1,8 @@
1
1
  import { LLM } from "./index";
2
2
  import Anthropic from "@anthropic-ai/sdk";
3
- import { err, ok } from "@app/lib/error";
4
- import { assertNever } from "@app/lib/assert";
5
- import { removeNulls } from "@app/lib/utils";
3
+ import { err, ok } from "../lib/error";
4
+ import { assertNever } from "../lib/assert";
5
+ import { removeNulls } from "../lib/utils";
6
6
  const DEFAULT_TIMEOUT = 600000 * 2; // 20 minutes (double the default)
7
7
  const DEFAULT_MAX_TOKENS = 8192;
8
8
  const DEFAULT_THINKING_TOKENS = 8192;
@@ -1,6 +1,6 @@
1
1
  import { ChatCompletionMessageParam } from "openai/resources/chat";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "../index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../../lib/error";
4
4
  export type DeepseekModel = "deepseek-chat" | "deepseek-reasoner";
5
5
  export declare function isDeepseekModel(model: string): model is DeepseekModel;
6
6
  export declare class DeepseekLLM extends LLM {
@@ -1,9 +1,9 @@
1
1
  import { LLM, } from "../index";
2
2
  import { PreTrainedTokenizer } from "@huggingface/transformers";
3
3
  import OpenAI from "openai";
4
- import { err, ok } from "@app/lib/error";
5
- import { assertNever } from "@app/lib/assert";
6
- import { removeNulls } from "@app/lib/utils";
4
+ import { err, ok } from "../../lib/error";
5
+ import { assertNever } from "../../lib/assert";
6
+ import { removeNulls } from "../../lib/utils";
7
7
  export function isDeepseekModel(model) {
8
8
  return ["deepseek-chat", "deepseek-reasoner"].includes(model);
9
9
  }
@@ -1,6 +1,6 @@
1
1
  import { Content } from "@google/genai";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../lib/error";
4
4
  export type GeminiModel = "gemini-3-pro-preview" | "gemini-2.5-pro" | "gemini-2.5-flash" | "gemini-2.5-flash-lite";
5
5
  export declare function isGeminiModel(model: string): model is GeminiModel;
6
6
  export declare class GeminiLLM extends LLM {
@@ -1,8 +1,8 @@
1
1
  import { FunctionCallingConfigMode, GoogleGenAI, } from "@google/genai";
2
2
  import { LLM, } from "./index";
3
- import { err, ok } from "@app/lib/error";
4
- import { assertNever } from "@app/lib/assert";
5
- import { removeNulls } from "@app/lib/utils";
3
+ import { err, ok } from "../lib/error";
4
+ import { assertNever } from "../lib/assert";
5
+ import { removeNulls } from "../lib/utils";
6
6
  export function isGeminiModel(model) {
7
7
  return [
8
8
  "gemini-3-pro-preview",
@@ -1,5 +1,5 @@
1
1
  import type { JSONSchema7 as JSONSchema } from "json-schema";
2
- import { Result } from "@app/lib/error";
2
+ import { Result } from "../lib/error";
3
3
  import type { CallToolResult } from "@modelcontextprotocol/sdk/types.js";
4
4
  import { provider } from "./provider";
5
5
  export type ProviderData = Partial<Record<provider, any>>;
@@ -1,12 +1,20 @@
1
1
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
2
- import { Result } from "@app/lib/error";
2
+ import { Result } from "../lib/error";
3
3
  export type MistralModel = "devstral-medium-latest" | "mistral-large-latest" | "mistral-small-latest" | "codestral-latest";
4
4
  export declare function isMistralModel(model: string): model is MistralModel;
5
5
  export declare class MistralLLM extends LLM {
6
6
  private client;
7
7
  private model;
8
8
  constructor(config: ModelConfig, model?: MistralModel);
9
- messages(messages: Message[]): ChatCompletionStreamRequest[];
9
+ messages(messages: Message[]): ((import("@mistralai/mistralai/models/components").AssistantMessage & {
10
+ role: "assistant";
11
+ }) | (import("@mistralai/mistralai/models/components").SystemMessage & {
12
+ role: "system";
13
+ }) | (import("@mistralai/mistralai/models/components").ToolMessage & {
14
+ role: "tool";
15
+ }) | (import("@mistralai/mistralai/models/components").UserMessage & {
16
+ role: "user";
17
+ }))[];
10
18
  generate(messages: Message[], prompt: string, tools: Tool[]): Promise<Result<{
11
19
  message: Message;
12
20
  tokenUsage?: TokenUsage;
@@ -1 +1 @@
1
- {"version":3,"file":"mistral.d.ts","sourceRoot":"","sources":["../../src/models/mistral.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,WAAW,EACX,OAAO,EACP,IAAI,EAIJ,UAAU,EACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAW,MAAM,gBAAgB,CAAC;AAmCjD,MAAM,MAAM,YAAY,GACpB,wBAAwB,GACxB,sBAAsB,GACtB,sBAAsB,GACtB,kBAAkB,CAAC;AAEvB,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAOnE;AAmBD,qBAAa,UAAW,SAAQ,GAAG;IACjC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,KAAK,CAAe;gBAG1B,MAAM,EAAE,WAAW,EACnB,KAAK,GAAE,YAAqC;IAO9C,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE;IAmEtB,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IAsGjE,OAAO,CAAC,UAAU;IAUlB,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;IAQrD,MAAM,CACV,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,IAAI,EAAE,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAoC1B,SAAS,IAAI,MAAM;CAcpB"}
1
+ {"version":3,"file":"mistral.d.ts","sourceRoot":"","sources":["../../src/models/mistral.ts"],"names":[],"mappings":"AAAA,OAAO,EACL,GAAG,EACH,WAAW,EACX,OAAO,EACP,IAAI,EAIJ,UAAU,EACX,MAAM,SAAS,CAAC;AACjB,OAAO,EAAE,MAAM,EAAW,MAAM,gBAAgB,CAAC;AAmCjD,MAAM,MAAM,YAAY,GACpB,wBAAwB,GACxB,sBAAsB,GACtB,sBAAsB,GACtB,kBAAkB,CAAC;AAEvB,wBAAgB,cAAc,CAAC,KAAK,EAAE,MAAM,GAAG,KAAK,IAAI,YAAY,CAOnE;AAmBD,qBAAa,UAAW,SAAQ,GAAG;IACjC,OAAO,CAAC,MAAM,CAAU;IACxB,OAAO,CAAC,KAAK,CAAe;gBAG1B,MAAM,EAAE,WAAW,EACnB,KAAK,GAAE,YAAqC;IAO9C,QAAQ,CAAC,QAAQ,EAAE,OAAO,EAAE;;;;;;;;;IAmEtB,QAAQ,CACZ,QAAQ,EAAE,OAAO,EAAE,EACnB,MAAM,EAAE,MAAM,EACd,KAAK,EAAE,IAAI,EAAE,GACZ,OAAO,CAAC,MAAM,CAAC;QAAE,OAAO,EAAE,OAAO,CAAC;QAAC,UAAU,CAAC,EAAE,UAAU,CAAA;KAAE,CAAC,CAAC;IAsGjE,OAAO,CAAC,UAAU;IAUlB,SAAS,CAAC,iBAAiB,CAAC,UAAU,EAAE,UAAU,GAAG,MAAM;IAQrD,MAAM,CACV,QAAQ,EAAE,OAAO,EAAE,EACnB,OAAO,EAAE,MAAM,EACf,MAAM,EAAE,IAAI,EAAE,GACb,OAAO,CAAC,MAAM,CAAC,MAAM,CAAC,CAAC;IAoC1B,SAAS,IAAI,MAAM;CAcpB"}
@@ -1,8 +1,8 @@
1
1
  import { LLM, } from "./index";
2
- import { err, ok } from "@app/lib/error";
3
- import { assertNever } from "@app/lib/assert";
2
+ import { err, ok } from "../lib/error";
3
+ import { assertNever } from "../lib/assert";
4
4
  import { Mistral } from "@mistralai/mistralai";
5
- import { isString, removeNulls } from "@app/lib/utils";
5
+ import { isString, removeNulls } from "../lib/utils";
6
6
  function normalizeTokenPrices(costPerMillionInputTokens, costPerMillionOutputTokens) {
7
7
  return {
8
8
  input: costPerMillionInputTokens / 1_000_000,
@@ -1,6 +1,6 @@
1
1
  import { ChatCompletionMessageParam } from "openai/resources/chat";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../lib/error";
4
4
  export type MoonshotAIModel = "kimi-k2-thinking";
5
5
  export declare function isMoonshotAIModel(model: string): model is MoonshotAIModel;
6
6
  export declare class MoonshotAILLM extends LLM {
@@ -1,8 +1,8 @@
1
1
  import { LLM } from "./index";
2
2
  import OpenAI from "openai";
3
- import { err, ok } from "@app/lib/error";
4
- import { assertNever } from "@app/lib/assert";
5
- import { removeNulls } from "@app/lib/utils";
3
+ import { err, ok } from "../lib/error";
4
+ import { assertNever } from "../lib/assert";
5
+ import { removeNulls } from "../lib/utils";
6
6
  import { convertThinking } from "./openai";
7
7
  export function isMoonshotAIModel(model) {
8
8
  return ["kimi-k2-thinking"].includes(model);
@@ -1,6 +1,6 @@
1
1
  import { ResponseInputItem } from "openai/resources/responses/responses";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../lib/error";
4
4
  export declare function convertThinking(thinking: boolean | undefined): "minimal" | "medium";
5
5
  export type OpenAIModel = "gpt-5.2-pro" | "gpt-5.2" | "gpt-5.1" | "gpt-5.1-codex" | "gpt-5" | "gpt-5-codex" | "gpt-5-mini" | "gpt-5-nano" | "gpt-4.1";
6
6
  export declare function isOpenAIModel(model: string): model is OpenAIModel;
@@ -1,7 +1,7 @@
1
1
  import { LLM } from "./index";
2
2
  import OpenAI from "openai";
3
- import { err, ok } from "@app/lib/error";
4
- import { assertNever } from "@app/lib/assert";
3
+ import { err, ok } from "../lib/error";
4
+ import { assertNever } from "../lib/assert";
5
5
  function normalizeTokenPrices(costPerMillionInputTokens, costPerMillionOutputTokens, costPerMillionCachedTokens) {
6
6
  return {
7
7
  input: costPerMillionInputTokens / 1_000_000,
@@ -1,4 +1,4 @@
1
- import { assertNever } from "@app/lib/assert";
1
+ import { assertNever } from "../lib/assert";
2
2
  import { isAnthropicModel, AnthropicLLM } from "./anthropic";
3
3
  import { isGeminiModel, GeminiLLM } from "./gemini";
4
4
  import { isMistralModel, MistralLLM } from "./mistral";
@@ -1,6 +1,6 @@
1
1
  import { ChatCompletionMessageParam } from "openai/resources/chat";
2
2
  import { LLM, ModelConfig, Message, Tool, TokenUsage } from "./index";
3
- import { Result } from "@app/lib/error";
3
+ import { Result } from "../lib/error";
4
4
  export type RedPillModel = "kimi-k2.5" | "glm-4.7" | "llama-3.3-70b-instruct" | "qwen-2.5-7b-instruct";
5
5
  export declare function isRedPillModel(model: string): model is RedPillModel;
6
6
  export declare class RedPillLLM extends LLM {
@@ -1,8 +1,8 @@
1
1
  import { LLM, } from "./index";
2
2
  import OpenAI from "openai";
3
- import { err, ok } from "@app/lib/error";
4
- import { assertNever } from "@app/lib/assert";
5
- import { removeNulls } from "@app/lib/utils";
3
+ import { err, ok } from "../lib/error";
4
+ import { assertNever } from "../lib/assert";
5
+ import { removeNulls } from "../lib/utils";
6
6
  export function isRedPillModel(model) {
7
7
  return [
8
8
  "kimi-k2.5",
@@ -1,4 +1,4 @@
1
- import { advisories } from "@app/db/schema";
1
+ import { advisories } from "../db/schema";
2
2
  import { InferSelectModel, InferInsertModel } from "drizzle-orm";
3
3
  type Advisory = InferSelectModel<typeof advisories>;
4
4
  export declare class AdvisoryResource {
@@ -1,5 +1,5 @@
1
- import { db } from "@app/db";
2
- import { advisories } from "@app/db/schema";
1
+ import { db } from "../db";
2
+ import { advisories } from "../db/schema";
3
3
  import { eq, and, or } from "drizzle-orm";
4
4
  export class AdvisoryResource {
5
5
  data;
@@ -1,6 +1,6 @@
1
- import { Tx } from "@app/db";
1
+ import { Tx } from "../db";
2
2
  import { RunResource } from "./run";
3
- import { Message } from "@app/models";
3
+ import { Message } from "../models";
4
4
  export declare class MessageResource {
5
5
  private data;
6
6
  run: RunResource;
@@ -1,5 +1,5 @@
1
- import { db } from "@app/db";
2
- import { messages } from "@app/db/schema";
1
+ import { db } from "../db";
2
+ import { messages } from "../db/schema";
3
3
  import { eq, and, asc, sum } from "drizzle-orm";
4
4
  export class MessageResource {
5
5
  data;
@@ -1,5 +1,5 @@
1
- import { runs } from "@app/db/schema";
2
- import { Result } from "@app/lib/error";
1
+ import { runs } from "../db/schema";
2
+ import { Result } from "../lib/error";
3
3
  import { InferInsertModel } from "drizzle-orm";
4
4
  export declare class RunResource {
5
5
  private data;
@@ -11,7 +11,14 @@ export declare class RunResource {
11
11
  update(data: Partial<Omit<InferInsertModel<typeof runs>, "id" | "created">>): Promise<RunResource>;
12
12
  delete(): Promise<void>;
13
13
  toJSON(): {
14
- [x: string]: any;
14
+ name: string;
15
+ id: number;
16
+ created: Date;
17
+ updated: Date;
18
+ problem_id: string;
19
+ profile: string;
20
+ model: import("..").Model;
21
+ agent_count: number;
15
22
  };
16
23
  getAgentIndices(): number[];
17
24
  }
@@ -1 +1 @@
1
- {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/resources/run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAW,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAwB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAIrE,qBAAa,WAAW;IACtB,OAAO,CAAC,IAAI,CAAM;IAElB,OAAO;WAIM,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;WAYtD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;WAUjD,MAAM,CACjB,IAAI,EAAE,IAAI,CACR,gBAAgB,CAAC,OAAO,IAAI,CAAC,EAC7B,IAAI,GAAG,SAAS,GAAG,SAAS,CAC7B,GACA,OAAO,CAAC,WAAW,CAAC;WAKV,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAKpC,MAAM,CACV,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC,GACnE,OAAO,CAAC,WAAW,CAAC;IAWjB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,MAAM;;;IAIN,eAAe,IAAI,MAAM,EAAE;CAG5B;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAiBrE"}
1
+ {"version":3,"file":"run.d.ts","sourceRoot":"","sources":["../../src/resources/run.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,IAAI,EAAE,MAAM,gBAAgB,CAAC;AACtC,OAAO,EAAW,MAAM,EAAE,MAAM,gBAAgB,CAAC;AACjD,OAAO,EAAwB,gBAAgB,EAAE,MAAM,aAAa,CAAC;AAIrE,qBAAa,WAAW;IACtB,OAAO,CAAC,IAAI,CAAM;IAElB,OAAO;WAIM,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,WAAW,CAAC,CAAC;WAYtD,QAAQ,CAAC,EAAE,EAAE,MAAM,GAAG,OAAO,CAAC,WAAW,GAAG,IAAI,CAAC;WAUjD,MAAM,CACjB,IAAI,EAAE,IAAI,CACR,gBAAgB,CAAC,OAAO,IAAI,CAAC,EAC7B,IAAI,GAAG,SAAS,GAAG,SAAS,CAC7B,GACA,OAAO,CAAC,WAAW,CAAC;WAKV,GAAG,IAAI,OAAO,CAAC,WAAW,EAAE,CAAC;IAKpC,MAAM,CACV,IAAI,EAAE,OAAO,CAAC,IAAI,CAAC,gBAAgB,CAAC,OAAO,IAAI,CAAC,EAAE,IAAI,GAAG,SAAS,CAAC,CAAC,GACnE,OAAO,CAAC,WAAW,CAAC;IAWjB,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAI7B,MAAM;;;;;;;;;;IAIN,eAAe,IAAI,MAAM,EAAE;CAG5B;AAED;;;GAGG;AACH,wBAAsB,QAAQ,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,IAAI,CAAC,CAAC,CAiBrE"}
@@ -1,6 +1,6 @@
1
- import { db } from "@app/db";
2
- import { runs } from "@app/db/schema";
3
- import { err, ok } from "@app/lib/error";
1
+ import { db } from "../db";
2
+ import { runs } from "../db/schema";
3
+ import { err, ok } from "../lib/error";
4
4
  import { eq } from "drizzle-orm";
5
5
  export class RunResource {
6
6
  data;
@@ -64,7 +64,7 @@ export async function cleanRun(runName) {
64
64
  const run = runRes.data;
65
65
  const runId = run.toJSON().id;
66
66
  // Delete messages first
67
- const { messages } = await import("@app/db/schema");
67
+ const { messages } = await import("../db/schema");
68
68
  db.delete(messages).where(eq(messages.run, runId)).run();
69
69
  // Delete run
70
70
  await run.delete();
@@ -1,8 +1,8 @@
1
- import { LLM, Message, TextContent, Thinking, Tool, ToolResult, ToolUse } from "@app/models";
2
- import { RunResource } from "@app/resources/run";
1
+ import { LLM, Message, TextContent, Thinking, Tool, ToolResult, ToolUse } from "../models";
2
+ import { RunResource } from "../resources/run";
3
3
  import { Client } from "@modelcontextprotocol/sdk/client/index.js";
4
- import { Result } from "@app/lib/error";
5
- import { MessageResource } from "@app/resources/messages";
4
+ import { Result } from "../lib/error";
5
+ import { MessageResource } from "../resources/messages";
6
6
  import { RunConfig } from "./config";
7
7
  export declare class Runner {
8
8
  private run;
@@ -1,16 +1,16 @@
1
- import { withRetries, err, ok } from "@app/lib/error";
2
- import { MessageResource } from "@app/resources/messages";
1
+ import { withRetries, err, ok } from "../lib/error";
2
+ import { MessageResource } from "../resources/messages";
3
3
  import assert from "assert";
4
- import { errorToCallToolResult, createClientFromConfig } from "@app/lib/mcp";
5
- import { loadProfileMCPConfig } from "@app/lib/mcp-config";
6
- import { concurrentExecutor } from "@app/lib/async";
7
- import { assertNever } from "@app/lib/assert";
8
- import { createLLM } from "@app/models/provider";
4
+ import { errorToCallToolResult, createClientFromConfig } from "../lib/mcp";
5
+ import { loadProfileMCPConfig } from "../lib/mcp-config";
6
+ import { concurrentExecutor } from "../lib/async";
7
+ import { assertNever } from "../lib/assert";
8
+ import { createLLM } from "../models/provider";
9
9
  import { readFileSync } from "fs";
10
10
  import { dirname } from "path";
11
11
  import { fileURLToPath } from "url";
12
- import { getProblemContent } from "@app/lib/problems";
13
- import { getProfilePath } from "@app/lib/profiles";
12
+ import { getProblemContent } from "../lib/problems";
13
+ import { getProfilePath } from "../lib/profiles";
14
14
  const __filename = fileURLToPath(import.meta.url);
15
15
  const __dirname = dirname(__filename);
16
16
  function loadPromptForProfile(profile) {
@@ -1,2 +1 @@
1
- export {};
2
1
  //# sourceMappingURL=index.d.ts.map
@@ -1,4 +1,4 @@
1
- export {};
1
+ "use strict";
2
2
  // Tool exports
3
3
  // This file is reserved for future tool integrations
4
4
  //# sourceMappingURL=index.js.map
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@anonx3247/universal-agent-harness",
3
- "version": "0.1.1",
3
+ "version": "1.0.1",
4
4
  "description": "Universal multi-agent orchestration system with MCP server support",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -11,9 +11,6 @@
11
11
  "types": "./dist/index.d.ts"
12
12
  }
13
13
  },
14
- "imports": {
15
- "@app/*": "./dist/*"
16
- },
17
14
  "bin": {
18
15
  "agent-harness": "./dist/agent-harness.js"
19
16
  },
@@ -25,7 +22,7 @@
25
22
  "scripts": {
26
23
  "typecheck": "tsc --noEmit",
27
24
  "lint": "NODE_OPTIONS='--max-old-space-size=8192' eslint --cache --cache-location .eslintcache src/",
28
- "build": "tsc",
25
+ "build": "tsc && tsc-alias",
29
26
  "dev": "tsx src/agent-harness.ts"
30
27
  },
31
28
  "devDependencies": {
@@ -35,6 +32,7 @@
35
32
  "@types/tar-stream": "^3.1.4",
36
33
  "drizzle-kit": "^0.31.4",
37
34
  "eslint": "^9.39.1",
35
+ "tsc-alias": "^1.8.16",
38
36
  "tsx": "^4.0.0",
39
37
  "typescript": "^5.8.3",
40
38
  "typescript-eslint": "^8.46.3"