@seawork/server 1.0.21 → 1.0.22-rc.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.
Files changed (62) hide show
  1. package/dist/scripts/supervisor-entrypoint.js +22 -0
  2. package/dist/scripts/supervisor-entrypoint.js.map +1 -1
  3. package/dist/scripts/supervisor-native-classifier.js +60 -0
  4. package/dist/scripts/supervisor-native-classifier.js.map +1 -0
  5. package/dist/server/client/daemon-client.d.ts +7 -1
  6. package/dist/server/client/daemon-client.d.ts.map +1 -1
  7. package/dist/server/client/daemon-client.js +13 -0
  8. package/dist/server/client/daemon-client.js.map +1 -1
  9. package/dist/server/server/agent/agent-manager.d.ts.map +1 -1
  10. package/dist/server/server/agent/agent-manager.js +13 -0
  11. package/dist/server/server/agent/agent-manager.js.map +1 -1
  12. package/dist/server/server/agent/install-state.d.ts +248 -0
  13. package/dist/server/server/agent/install-state.d.ts.map +1 -0
  14. package/dist/server/server/agent/install-state.js +126 -0
  15. package/dist/server/server/agent/install-state.js.map +1 -0
  16. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  17. package/dist/server/server/agent/providers/claude-agent.js +2 -7
  18. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  19. package/dist/server/server/agent/providers/codex-app-server-agent.d.ts.map +1 -1
  20. package/dist/server/server/agent/providers/codex-app-server-agent.js +96 -29
  21. package/dist/server/server/agent/providers/codex-app-server-agent.js.map +1 -1
  22. package/dist/server/server/agent/providers/codex-binary-resolver.d.ts +23 -0
  23. package/dist/server/server/agent/providers/codex-binary-resolver.d.ts.map +1 -0
  24. package/dist/server/server/agent/providers/codex-binary-resolver.js +175 -0
  25. package/dist/server/server/agent/providers/codex-binary-resolver.js.map +1 -0
  26. package/dist/server/server/agent/providers/codex-health-probe.d.ts +16 -0
  27. package/dist/server/server/agent/providers/codex-health-probe.d.ts.map +1 -0
  28. package/dist/server/server/agent/providers/codex-health-probe.js +161 -0
  29. package/dist/server/server/agent/providers/codex-health-probe.js.map +1 -0
  30. package/dist/server/server/agent/providers/diagnostic-utils.d.ts +5 -1
  31. package/dist/server/server/agent/providers/diagnostic-utils.d.ts.map +1 -1
  32. package/dist/server/server/agent/providers/diagnostic-utils.js +105 -8
  33. package/dist/server/server/agent/providers/diagnostic-utils.js.map +1 -1
  34. package/dist/server/server/exports.d.ts +4 -1
  35. package/dist/server/server/exports.d.ts.map +1 -1
  36. package/dist/server/server/exports.js +7 -1
  37. package/dist/server/server/exports.js.map +1 -1
  38. package/dist/server/server/file-explorer/service.d.ts +8 -0
  39. package/dist/server/server/file-explorer/service.d.ts.map +1 -1
  40. package/dist/server/server/file-explorer/service.js +43 -0
  41. package/dist/server/server/file-explorer/service.js.map +1 -1
  42. package/dist/server/server/latency-tracker.d.ts +9 -0
  43. package/dist/server/server/latency-tracker.d.ts.map +1 -1
  44. package/dist/server/server/latency-tracker.js +111 -0
  45. package/dist/server/server/latency-tracker.js.map +1 -1
  46. package/dist/server/server/session.d.ts +1 -0
  47. package/dist/server/server/session.d.ts.map +1 -1
  48. package/dist/server/server/session.js +53 -2
  49. package/dist/server/server/session.js.map +1 -1
  50. package/dist/server/shared/messages.d.ts +964 -0
  51. package/dist/server/shared/messages.d.ts.map +1 -1
  52. package/dist/server/shared/messages.js +34 -0
  53. package/dist/server/shared/messages.js.map +1 -1
  54. package/dist/server/utils/electron-helper.d.ts +16 -0
  55. package/dist/server/utils/electron-helper.d.ts.map +1 -1
  56. package/dist/server/utils/electron-helper.js +34 -0
  57. package/dist/server/utils/electron-helper.js.map +1 -1
  58. package/dist/server/utils/executable.d.ts +3 -1
  59. package/dist/server/utils/executable.d.ts.map +1 -1
  60. package/dist/server/utils/executable.js +112 -2
  61. package/dist/server/utils/executable.js.map +1 -1
  62. package/package.json +3 -3
@@ -0,0 +1,126 @@
1
+ // Machine-local install state for agents installed by Seawork (e.g. codex via
2
+ // `bun install -g`). This is a *cache* of "we successfully installed agent X
3
+ // at path Y" — it is NOT user configuration. We keep it out of config.json
4
+ // so it stays out of JSON schemas, docs, and shareable/git-able files.
5
+ //
6
+ // File: $SEAWORK_HOME/install-config.json (shared with desktop's npmRegistry/
7
+ // bunMirror entries; the `agents` field is the install-state portion).
8
+ //
9
+ // Read on demand by:
10
+ // - daemon: codex binary resolver (prefer Seawork-installed copy over PATH)
11
+ // - daemon: `isAvailable` / `getDiagnostic` so UI matches actual spawn
12
+ // - desktop: install check (don't show "installed" if state is stale)
13
+ // - doctor (Rust): same resolver semantics
14
+ //
15
+ // Written by:
16
+ // - desktop: installAgent("codex") after `bun install -g` succeeds and the
17
+ // resolved binary passes the health probe.
18
+ // - daemon: when health probe fails — bumps failureCount and lastError but
19
+ // does NOT delete the entry (single failures may be transient: AV scan,
20
+ // network drive offline, sync mid-flight).
21
+ import { existsSync, mkdirSync, readFileSync, writeFileSync } from "node:fs";
22
+ import path from "node:path";
23
+ import { z } from "zod";
24
+ import { resolveSeaworkHome } from "../seawork-home.js";
25
+ import { AgentProviderSchema } from "./provider-manifest.js";
26
+ const FILENAME = "install-config.json";
27
+ const AgentInstallEntrySchema = z
28
+ .object({
29
+ // Absolute path to the agent binary as installed by Seawork.
30
+ binary: z.string().min(1),
31
+ // ISO timestamp of last successful install (or last successful re-probe).
32
+ installedAt: z.string().optional(),
33
+ // Reported `--version` string at install time, for diagnostics.
34
+ version: z.string().optional(),
35
+ // How we installed it ("bun-global" today; future: "vendored", etc.).
36
+ source: z.string().optional(),
37
+ // Last health-probe result. Absence means "never probed since install".
38
+ lastHealth: z
39
+ .object({
40
+ ok: z.boolean(),
41
+ at: z.string(),
42
+ reason: z.string().optional(),
43
+ failureCount: z.number().int().nonnegative().optional(),
44
+ })
45
+ .optional(),
46
+ })
47
+ .strict();
48
+ const AgentInstallStateSchema = z.record(AgentProviderSchema, AgentInstallEntrySchema);
49
+ // Existing fields written by desktop's install-config.ts. Kept loose so we
50
+ // don't fight the desktop schema — we only own `agents`.
51
+ const InstallConfigFileSchema = z
52
+ .object({
53
+ bunMirror: z.string().optional(),
54
+ npmRegistry: z.string().optional(),
55
+ chosenAt: z.string().optional(),
56
+ agents: AgentInstallStateSchema.optional(),
57
+ })
58
+ .passthrough();
59
+ function configPath(env = process.env) {
60
+ return path.join(resolveSeaworkHome(env), FILENAME);
61
+ }
62
+ export function readInstallConfigFile(env) {
63
+ const p = configPath(env);
64
+ if (!existsSync(p))
65
+ return {};
66
+ try {
67
+ const raw = readFileSync(p, "utf8");
68
+ const parsed = JSON.parse(raw);
69
+ const result = InstallConfigFileSchema.safeParse(parsed);
70
+ if (!result.success)
71
+ return {};
72
+ return result.data;
73
+ }
74
+ catch {
75
+ return {};
76
+ }
77
+ }
78
+ export function readAgentInstallEntry(provider, env) {
79
+ const file = readInstallConfigFile(env);
80
+ return file.agents?.[provider] ?? null;
81
+ }
82
+ // Atomic-ish write: read current file, merge `agents[provider]`, write back.
83
+ // Concurrent writers (e.g. two installAgent calls in flight) may clobber each
84
+ // other's `agents` updates — acceptable because install operations are
85
+ // user-driven and serialized in practice.
86
+ export function writeAgentInstallEntry(provider, entry, env) {
87
+ const current = readInstallConfigFile(env);
88
+ const next = {
89
+ ...current,
90
+ agents: { ...(current.agents ?? {}), [provider]: entry },
91
+ };
92
+ const p = configPath(env);
93
+ mkdirSync(path.dirname(p), { recursive: true });
94
+ writeFileSync(p, JSON.stringify(next, null, 2), "utf8");
95
+ }
96
+ // Mark an existing entry unhealthy without deleting it. Increments failureCount.
97
+ // No-op if there is no entry for `provider`.
98
+ export function recordAgentInstallHealth(provider, health, env) {
99
+ const current = readInstallConfigFile(env);
100
+ const entry = current.agents?.[provider];
101
+ if (!entry)
102
+ return;
103
+ const prevFailures = entry.lastHealth?.failureCount ?? 0;
104
+ const next = {
105
+ ...entry,
106
+ lastHealth: {
107
+ ok: health.ok,
108
+ at: new Date().toISOString(),
109
+ reason: health.reason,
110
+ failureCount: health.ok ? 0 : prevFailures + 1,
111
+ },
112
+ };
113
+ writeAgentInstallEntry(provider, next, env);
114
+ }
115
+ export function clearAgentInstallEntry(provider, env) {
116
+ const current = readInstallConfigFile(env);
117
+ if (!current.agents?.[provider])
118
+ return;
119
+ const nextAgents = { ...current.agents };
120
+ delete nextAgents[provider];
121
+ const next = { ...current, agents: nextAgents };
122
+ const p = configPath(env);
123
+ mkdirSync(path.dirname(p), { recursive: true });
124
+ writeFileSync(p, JSON.stringify(next, null, 2), "utf8");
125
+ }
126
+ //# sourceMappingURL=install-state.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"install-state.js","sourceRoot":"","sources":["../../../../src/server/agent/install-state.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/claude-agent.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"claude-agent.d.ts","sourceRoot":"","sources":["../../../../../src/server/agent/providers/claude-agent.ts"],"names":[],"mappings":"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"}
@@ -1769,9 +1769,6 @@ class ClaudeAgentSession {
1769
1769
  this.input = null;
1770
1770
  this.queryPumpPromise = null;
1771
1771
  this.queryRestartNeeded = false;
1772
- // Reset session identity for explicit restarts so the new query starts
1773
- // a fresh session rather than resuming the previous one.
1774
- this.claudeSessionId = null;
1775
1772
  oldInput?.end();
1776
1773
  oldQuery.close?.();
1777
1774
  try {
@@ -1781,10 +1778,8 @@ class ClaudeAgentSession {
1781
1778
  /* ignore */
1782
1779
  }
1783
1780
  }
1784
- // When the pump died unexpectedly (query became null, e.g. after a session
1785
- // ID overwrite error), preserve claudeSessionId so buildOptions() passes
1786
- // resume: sessionId and the new query auto-resumes the previous session.
1787
- // For explicit restarts above, claudeSessionId was already cleared.
1781
+ // Preserve claudeSessionId across transport restarts so buildOptions()
1782
+ // can resume the same Claude conversation after mode/thinking changes.
1788
1783
  this.persistence = null;
1789
1784
  const input = createAsyncMessageInput();
1790
1785
  const options = await this.buildOptions();