doer-agent 0.6.4 → 0.6.6

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.
@@ -16,6 +16,8 @@ export function createDefaultAgentSettingsConfig() {
16
16
  },
17
17
  codex: {
18
18
  model: "gpt-5.5",
19
+ reasoningEffort: "medium",
20
+ serviceTier: null,
19
21
  authMode: "api_key",
20
22
  computerUseEnabled: false,
21
23
  browserUseEnabled: false,
@@ -51,9 +53,26 @@ function normalizeNullableString(value) {
51
53
  const trimmed = value.trim();
52
54
  return trimmed ? trimmed : null;
53
55
  }
56
+ function normalizeServiceTier(value) {
57
+ const normalized = normalizeNullableString(value);
58
+ if (normalized === "priority") {
59
+ return "fast";
60
+ }
61
+ return normalized;
62
+ }
54
63
  function normalizeCodexPersonality(value, fallback) {
55
64
  return value === "friendly" || value === "pragmatic" ? value : fallback;
56
65
  }
66
+ function normalizeReasoningEffort(value, fallback) {
67
+ return value === "none" ||
68
+ value === "minimal" ||
69
+ value === "low" ||
70
+ value === "medium" ||
71
+ value === "high" ||
72
+ value === "xhigh"
73
+ ? value
74
+ : fallback;
75
+ }
57
76
  function normalizeEnvVarName(value) {
58
77
  if (typeof value !== "string") {
59
78
  return null;
@@ -110,6 +129,8 @@ export function normalizeAgentSettingsConfig(value, fallback) {
110
129
  },
111
130
  codex: {
112
131
  model: typeof codex.model === "string" && codex.model.trim() ? codex.model.trim() : base.codex.model,
132
+ reasoningEffort: normalizeReasoningEffort(codex.reasoningEffort, base.codex.reasoningEffort),
133
+ serviceTier: codex.serviceTier === null ? null : normalizeServiceTier(codex.serviceTier) ?? base.codex.serviceTier,
113
134
  authMode: codex.authMode === "chatgpt" ? "chatgpt" : codex.authMode === "api_key" ? "api_key" : base.codex.authMode,
114
135
  computerUseEnabled: typeof codex.computerUseEnabled === "boolean" ? codex.computerUseEnabled : base.codex.computerUseEnabled,
115
136
  browserUseEnabled: typeof codex.browserUseEnabled === "boolean" ? codex.browserUseEnabled : base.codex.browserUseEnabled,
@@ -189,6 +210,8 @@ export async function toAgentSettingsPublic(args) {
189
210
  },
190
211
  codex: {
191
212
  model: args.config.codex.model,
213
+ reasoningEffort: args.config.codex.reasoningEffort,
214
+ serviceTier: args.config.codex.serviceTier,
192
215
  authMode: args.config.codex.authMode,
193
216
  computerUseEnabled: args.config.codex.computerUseEnabled,
194
217
  browserUseEnabled: args.config.codex.browserUseEnabled,
@@ -246,6 +269,8 @@ export function normalizeAgentSettingsPatch(value) {
246
269
  };
247
270
  move("personality", "general", "personality");
248
271
  move("codexModel", "codex", "model");
272
+ move("codexReasoningEffort", "codex", "reasoningEffort");
273
+ move("codexServiceTier", "codex", "serviceTier");
249
274
  move("codexAuthMode", "codex", "authMode");
250
275
  move("computerUseEnabled", "codex", "computerUseEnabled");
251
276
  move("browserUseEnabled", "codex", "browserUseEnabled");
@@ -13,6 +13,10 @@ function buildFeatureArg(enabled, name) {
13
13
  async function buildCodexAppServerArgs(args) {
14
14
  const configArgs = [
15
15
  ...buildConfigArg("model", toTomlStringLiteral(args.settings.codex.model)),
16
+ ...buildConfigArg("model_reasoning_effort", toTomlStringLiteral(args.settings.codex.reasoningEffort)),
17
+ ...(args.settings.codex.serviceTier
18
+ ? buildConfigArg("service_tier", toTomlStringLiteral(args.settings.codex.serviceTier))
19
+ : []),
16
20
  ...buildConfigArg("personality", toTomlStringLiteral(args.settings.general.personality)),
17
21
  ...buildConfigArg("approval_policy", toTomlStringLiteral("never")),
18
22
  ...buildConfigArg("sandbox_mode", toTomlStringLiteral("danger-full-access")),
@@ -58,7 +62,7 @@ export function createCodexAppServerManager(args) {
58
62
  resolveCodexHomePath: args.resolveCodexHomePath,
59
63
  settings,
60
64
  });
61
- args.onLog?.(`starting codex app-server model=${settings.codex.model} personality=${settings.general.personality} computerUse=${settings.codex.computerUseEnabled} browserUse=${settings.codex.browserUseEnabled}`);
65
+ args.onLog?.(`starting codex app-server model=${settings.codex.model} reasoningEffort=${settings.codex.reasoningEffort} personality=${settings.general.personality} computerUse=${settings.codex.computerUseEnabled} browserUse=${settings.codex.browserUseEnabled}`);
62
66
  return new CodexAppServerClient({
63
67
  cwd: args.workspaceRoot,
64
68
  args: appServerArgs,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "doer-agent",
3
- "version": "0.6.4",
3
+ "version": "0.6.6",
4
4
  "description": "Reverse-polling agent runtime for doer",
5
5
  "type": "module",
6
6
  "main": "dist/agent.js",
@@ -25,8 +25,8 @@
25
25
  },
26
26
  "dependencies": {
27
27
  "@modelcontextprotocol/sdk": "^1.29.0",
28
- "@openai/codex": "^0.129.0",
29
- "@openai/codex-sdk": "^0.129.0",
28
+ "@openai/codex": "^0.130.0",
29
+ "@openai/codex-sdk": "^0.130.0",
30
30
  "nats": "^2.29.3",
31
31
  "tar": "^7.5.15"
32
32
  },