openfleet 0.4.2 → 0.4.3

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/index.js CHANGED
@@ -31,42 +31,6 @@ var PATHS = {
31
31
  troubleshooting: path.join(PUBLIC_DIR, "troubleshooting")
32
32
  };
33
33
 
34
- // src/models.ts
35
- var models = {
36
- bedrock: {
37
- sonnet: "amazon-bedrock/anthropic.claude-sonnet-4-6",
38
- opus: "amazon-bedrock/anthropic.claude-opus-4-6-v1",
39
- haiku: "amazon-bedrock/anthropic.claude-haiku-4-5-20251001-v1:0"
40
- },
41
- anthropic: {
42
- sonnet: "anthropic/claude-sonnet-4-6",
43
- opus: "anthropic/claude-opus-4-6",
44
- haiku: "anthropic/claude-haiku-4-5"
45
- },
46
- openai: {
47
- gpt5: "openai/gpt-5.2",
48
- o4Mini: "openai/o4-mini",
49
- o3: "openai/o3"
50
- },
51
- google: {
52
- gemini3Pro: "google/gemini-3-pro-high",
53
- gemini3Flash: "google/gemini-3-flash",
54
- gemini25Pro: "google/gemini-2.5-pro"
55
- },
56
- freeModels: {
57
- minimaxM25: "opencode/minimax-m2.5",
58
- minimaxM25Free: "opencode/minimax-m2.5-free",
59
- bigPickle: "opencode/big-pickle"
60
- }
61
- };
62
- var defaultModel = process.env.OPENFLEET_MODEL ?? models.anthropic.sonnet;
63
- var bigModel = defaultModel;
64
- var fallbackModel = models.freeModels.minimaxM25Free;
65
- function parseModel(model) {
66
- const [providerID, ...rest] = model.split("/");
67
- return { providerID, modelID: rest.join("/") };
68
- }
69
-
70
34
  // src/agents/architect.ts
71
35
  var SYSTEM_PROMPT = `You are Architect, Planner of the Openfleet.
72
36
 
@@ -129,7 +93,6 @@ at the start of each session. Update it with:
129
93
  var architectAgent = {
130
94
  description: "Openfleet planner",
131
95
  mode: "subagent",
132
- model: defaultModel,
133
96
  prompt: SYSTEM_PROMPT,
134
97
  color: "#BF3907"
135
98
  };
@@ -367,7 +330,6 @@ at the start of each session. Update it with:
367
330
  var builderAgent = {
368
331
  description: "Openfleet engineer - executes the plan",
369
332
  mode: "subagent",
370
- model: defaultModel,
371
333
  prompt: SYSTEM_PROMPT2,
372
334
  color: "#FDDF04"
373
335
  };
@@ -440,7 +402,6 @@ at the start of each session. Use it for:
440
402
  var introspectorAgent = {
441
403
  description: "Introspector - Reflector",
442
404
  mode: "subagent",
443
- model: defaultModel,
444
405
  prompt: SYSTEM_PROMPT3,
445
406
  color: "#C349E9"
446
407
  };
@@ -923,7 +884,6 @@ Good luck!
923
884
  var orchestratorAgent = {
924
885
  description: "Orchestrator of the Openfleet",
925
886
  mode: "primary",
926
- model: bigModel,
927
887
  prompt: SYSTEM_PROMPT4,
928
888
  color: "#35C2CB"
929
889
  };
@@ -995,7 +955,6 @@ at the start of each session. Update it with:
995
955
  var reconAgent = {
996
956
  description: "Recon - Scout",
997
957
  mode: "subagent",
998
- model: defaultModel,
999
958
  prompt: SYSTEM_PROMPT5,
1000
959
  color: "#B40F52"
1001
960
  };
@@ -1042,7 +1001,6 @@ at the start of each session. Update it with:
1042
1001
  var validatorAgent = {
1043
1002
  description: "Validator - Reviewer",
1044
1003
  mode: "subagent",
1045
- model: defaultModel,
1046
1004
  prompt: SYSTEM_PROMPT6,
1047
1005
  color: "#018D40"
1048
1006
  };
@@ -1116,8 +1074,18 @@ Use this tool:
1116
1074
  note: tool.schema.string().optional().describe("Optional note about what was accomplished")
1117
1075
  },
1118
1076
  async execute(_args, context) {
1119
- const { sessionID } = context;
1120
- const { providerID, modelID } = parseModel(defaultModel);
1077
+ const { sessionID, messageID } = context;
1078
+ const { data: messages } = await ctx.client.session.messages({
1079
+ path: { id: sessionID }
1080
+ });
1081
+ const currentMsg = messages?.find((m) => m.info.id === messageID);
1082
+ const info = currentMsg?.info;
1083
+ const providerID = info?.role === "assistant" ? info.providerID : info?.model?.providerID;
1084
+ const modelID = info?.role === "assistant" ? info.modelID : info?.model?.modelID;
1085
+ if (!providerID || !modelID) {
1086
+ logger.error("Cannot determine model for summarization", { sessionID, messageID });
1087
+ return "\u274C Failed to determine model for context compaction.";
1088
+ }
1121
1089
  ctx.client.session.summarize({
1122
1090
  path: { id: sessionID },
1123
1091
  body: { providerID, modelID },
@@ -1378,7 +1346,7 @@ import * as fs from "fs";
1378
1346
  import * as path4 from "path";
1379
1347
  import { fileURLToPath } from "url";
1380
1348
  // package.json
1381
- var version = "0.4.1";
1349
+ var version = "0.4.2";
1382
1350
 
1383
1351
  // src/utils/directory-init.ts
1384
1352
  var TEMPLATES_DIR = path4.join(path4.dirname(fileURLToPath(import.meta.url)), "templates", ".openfleet");
package/dist/models.d.ts CHANGED
@@ -25,11 +25,4 @@ export declare const models: {
25
25
  readonly bigPickle: "opencode/big-pickle";
26
26
  };
27
27
  };
28
- export declare const defaultModel: string;
29
- export declare const bigModel: string;
30
- export declare const smallModel: string;
31
28
  export declare const fallbackModel: "opencode/minimax-m2.5-free";
32
- export declare function parseModel(model: string): {
33
- providerID: string;
34
- modelID: string;
35
- };
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "openfleet",
3
- "version": "0.4.2",
3
+ "version": "0.4.3",
4
4
  "description": "SPARR framework agents + infinite context for OpenCode",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",