@seawork/server 1.0.16 → 1.0.17-rc.2

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 (41) hide show
  1. package/dist/server/client/daemon-client.d.ts +60 -0
  2. package/dist/server/client/daemon-client.d.ts.map +1 -1
  3. package/dist/server/client/daemon-client.js +147 -0
  4. package/dist/server/client/daemon-client.js.map +1 -1
  5. package/dist/server/server/agent/provider-launch-config.d.ts +9 -0
  6. package/dist/server/server/agent/provider-launch-config.d.ts.map +1 -1
  7. package/dist/server/server/agent/provider-launch-config.js +2 -0
  8. package/dist/server/server/agent/provider-launch-config.js.map +1 -1
  9. package/dist/server/server/agent/providers/claude-agent.d.ts +4 -0
  10. package/dist/server/server/agent/providers/claude-agent.d.ts.map +1 -1
  11. package/dist/server/server/agent/providers/claude-agent.js +30 -20
  12. package/dist/server/server/agent/providers/claude-agent.js.map +1 -1
  13. package/dist/server/server/bug-report-handler.d.ts.map +1 -1
  14. package/dist/server/server/bug-report-handler.js +2 -0
  15. package/dist/server/server/bug-report-handler.js.map +1 -1
  16. package/dist/server/server/forum-handler.d.ts +11 -0
  17. package/dist/server/server/forum-handler.d.ts.map +1 -0
  18. package/dist/server/server/forum-handler.js +216 -0
  19. package/dist/server/server/forum-handler.js.map +1 -0
  20. package/dist/server/server/index.js +2 -1
  21. package/dist/server/server/index.js.map +1 -1
  22. package/dist/server/server/list-my-issues-handler.d.ts +7 -0
  23. package/dist/server/server/list-my-issues-handler.d.ts.map +1 -0
  24. package/dist/server/server/list-my-issues-handler.js +62 -0
  25. package/dist/server/server/list-my-issues-handler.js.map +1 -0
  26. package/dist/server/server/persisted-config.d.ts +7 -0
  27. package/dist/server/server/persisted-config.d.ts.map +1 -1
  28. package/dist/server/server/persisted-config.js +121 -2
  29. package/dist/server/server/persisted-config.js.map +1 -1
  30. package/dist/server/server/session.d.ts +6 -0
  31. package/dist/server/server/session.d.ts.map +1 -1
  32. package/dist/server/server/session.js +44 -0
  33. package/dist/server/server/session.js.map +1 -1
  34. package/dist/server/shared/daemon-endpoints.d.ts.map +1 -1
  35. package/dist/server/shared/daemon-endpoints.js +22 -4
  36. package/dist/server/shared/daemon-endpoints.js.map +1 -1
  37. package/dist/server/shared/messages.d.ts +2763 -227
  38. package/dist/server/shared/messages.d.ts.map +1 -1
  39. package/dist/server/shared/messages.js +139 -0
  40. package/dist/server/shared/messages.js.map +1 -1
  41. package/package.json +3 -3
@@ -111,19 +111,23 @@ function resolveClaudeSpawnCommand(spawnOptions, runtimeSettings) {
111
111
  args: [...commandConfig.argv.slice(1), ...spawnOptions.args],
112
112
  };
113
113
  }
114
- /**
115
- * Resolves Claude CLI auth mode from the merged spawn env.
116
- * - API-key mode (ANTHROPIC_API_KEY present): set CLAUDE_CODE_DISABLE_NONESSENTIAL_TRAFFIC=1
117
- * to skip the OAuth client_data ping/metrics/autoupdater hits, and strip conflicting
118
- * Bedrock/Vertex/OAuth vars so the CLI routes to the API-key code path (avoids
119
- * 403 invalid_api_key from picking a non-API-key path that ignores our key).
120
- * Note: do NOT use CLAUDE_CODE_SIMPLE=1 — despite the name it is a kill-switch that
121
- * also drops Skill/Glob/Grep/Write/Task tools, replaces the system prompt with a
122
- * 4-line stub, and disables CLAUDE.md/agents/attachments.
123
- * - Local-auth mode (no API key): leave env untouched so the CLI can use the user's
124
- * `claude login` OAuth credentials from keychain or ~/.claude/credentials.
125
- */
126
- export function resolveClaudeAuthSpawnEnv(mergedEnv) {
114
+ export function resolveClaudeAuthSpawnEnv(mergedEnv, authMode) {
115
+ if (authMode === "local") {
116
+ return {
117
+ spawnEnv: {
118
+ ...mergedEnv,
119
+ ANTHROPIC_API_KEY: undefined,
120
+ ANTHROPIC_BASE_URL: undefined,
121
+ ANTHROPIC_AUTH_TOKEN: undefined,
122
+ ANTHROPIC_MODEL: undefined,
123
+ ANTHROPIC_SMALL_FAST_MODEL: undefined,
124
+ CLAUDE_CODE_USE_BEDROCK: undefined,
125
+ CLAUDE_CODE_USE_VERTEX: undefined,
126
+ AWS_BEARER_TOKEN_BEDROCK: undefined,
127
+ },
128
+ hasApiKey: false,
129
+ };
130
+ }
127
131
  const apiKey = mergedEnv.ANTHROPIC_API_KEY;
128
132
  const hasApiKey = typeof apiKey === "string" && apiKey.length > 0;
129
133
  if (!hasApiKey) {
@@ -156,7 +160,7 @@ function applyRuntimeSettingsToClaudeOptions(options, runtimeSettings, launchEnv
156
160
  const { spawnEnv, hasApiKey } = resolveClaudeAuthSpawnEnv({
157
161
  ...applyProviderEnv(spawnOptions.env, runtimeSettings),
158
162
  ...(launchEnv ?? {}),
159
- });
163
+ }, runtimeSettings?.authMode);
160
164
  if (!isDefaultRuntime) {
161
165
  command = resolved.command;
162
166
  }
@@ -1824,7 +1828,8 @@ class ClaudeAgentSession {
1824
1828
  // The SDK `settings` option (flag settings layer) has the highest priority.
1825
1829
  const seaworkHome = process.env.SEAWORK_HOME ?? path.join(os.homedir(), ".seawork");
1826
1830
  const seaworkSettingsPath = path.join(seaworkHome, "claude-settings.json");
1827
- const hasSeaworkSettings = fs.existsSync(seaworkSettingsPath);
1831
+ const useLocalClaudeConfig = this.runtimeSettings?.authMode === "local";
1832
+ const hasSeaworkSettings = !useLocalClaudeConfig && fs.existsSync(seaworkSettingsPath);
1828
1833
  // Windows' CreateProcess returns ENOENT when the spawn cwd does not exist,
1829
1834
  // and the SDK mislabels that ENOENT as "Claude Code executable not found".
1830
1835
  // Fail early with a clear message instead.
@@ -1835,6 +1840,15 @@ class ClaudeAgentSession {
1835
1840
  // default resolution uses `import.meta.url`, which in packaged Electron
1836
1841
  // apps produces a virtual app.asar path that spawned children can't read.
1837
1842
  const cliExecutable = resolveClaudeCliExecutable();
1843
+ const gatewayProxyEnv = useLocalClaudeConfig
1844
+ ? {}
1845
+ : {
1846
+ // Clear proxy env vars to prevent interference with gateway requests.
1847
+ http_proxy: "",
1848
+ https_proxy: "",
1849
+ HTTP_PROXY: "",
1850
+ HTTPS_PROXY: "",
1851
+ };
1838
1852
  const base = {
1839
1853
  cwd: this.config.cwd,
1840
1854
  ...(cliExecutable ? { pathToClaudeCodeExecutable: cliExecutable } : {}),
@@ -1861,11 +1875,7 @@ class ClaudeAgentSession {
1861
1875
  },
1862
1876
  env: {
1863
1877
  ...process.env,
1864
- // Clear proxy env vars to prevent interference with gateway requests.
1865
- http_proxy: "",
1866
- https_proxy: "",
1867
- HTTP_PROXY: "",
1868
- HTTPS_PROXY: "",
1878
+ ...gatewayProxyEnv,
1869
1879
  // Increase MCP timeouts for long-running tool calls (10 minutes)
1870
1880
  MCP_TIMEOUT: "600000",
1871
1881
  MCP_TOOL_TIMEOUT: "600000",