@jingyi0605/codingns 0.3.0 → 0.3.5

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 (156) hide show
  1. package/dist/public/assets/{TerminalPage-Dfw1QUqW.js → TerminalPage-CgrfstRm.js} +19 -19
  2. package/dist/public/assets/index-Cek6u0b9.css +1 -0
  3. package/dist/public/assets/index-THHY79si.js +122 -0
  4. package/dist/public/index.html +2 -2
  5. package/dist/server/config/env.d.ts +2 -0
  6. package/dist/server/config/env.js +35 -0
  7. package/dist/server/config/env.js.map +1 -1
  8. package/dist/server/modules/auth/auth-service.d.ts +18 -1
  9. package/dist/server/modules/auth/auth-service.js +168 -7
  10. package/dist/server/modules/auth/auth-service.js.map +1 -1
  11. package/dist/server/modules/butler/butler-codex-model-policy.d.ts +1 -0
  12. package/dist/server/modules/butler/butler-codex-model-policy.js +36 -0
  13. package/dist/server/modules/butler/butler-codex-model-policy.js.map +1 -0
  14. package/dist/server/modules/butler/butler-control-session-service.d.ts +13 -1
  15. package/dist/server/modules/butler/butler-control-session-service.js +55 -231
  16. package/dist/server/modules/butler/butler-control-session-service.js.map +1 -1
  17. package/dist/server/modules/butler/butler-controller.d.ts +17 -0
  18. package/dist/server/modules/butler/butler-controller.js +20 -1
  19. package/dist/server/modules/butler/butler-controller.js.map +1 -1
  20. package/dist/server/modules/butler/butler-follow-up-service.js +7 -3
  21. package/dist/server/modules/butler/butler-follow-up-service.js.map +1 -1
  22. package/dist/server/modules/butler/butler-inbox-analysis-service.d.ts +36 -0
  23. package/dist/server/modules/butler/butler-inbox-analysis-service.js +375 -0
  24. package/dist/server/modules/butler/butler-inbox-analysis-service.js.map +1 -0
  25. package/dist/server/modules/butler/butler-inbox-instruction-adapter.d.ts +23 -0
  26. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js +96 -0
  27. package/dist/server/modules/butler/butler-inbox-instruction-adapter.js.map +1 -0
  28. package/dist/server/modules/butler/butler-inbox-service.d.ts +39 -2
  29. package/dist/server/modules/butler/butler-inbox-service.js +392 -2
  30. package/dist/server/modules/butler/butler-inbox-service.js.map +1 -1
  31. package/dist/server/modules/butler/butler-session-service.d.ts +8 -0
  32. package/dist/server/modules/butler/butler-session-service.js +205 -53
  33. package/dist/server/modules/butler/butler-session-service.js.map +1 -1
  34. package/dist/server/modules/butler/butler-session-summary-service.d.ts +1 -0
  35. package/dist/server/modules/butler/butler-session-summary-service.js +48 -23
  36. package/dist/server/modules/butler/butler-session-summary-service.js.map +1 -1
  37. package/dist/server/modules/butler/butler-workspace-context.d.ts +13 -0
  38. package/dist/server/modules/butler/butler-workspace-context.js +223 -0
  39. package/dist/server/modules/butler/butler-workspace-context.js.map +1 -0
  40. package/dist/server/modules/client/client-controller.d.ts +6 -0
  41. package/dist/server/modules/client/client-controller.js +30 -8
  42. package/dist/server/modules/client/client-controller.js.map +1 -1
  43. package/dist/server/modules/client/client-service.d.ts +22 -10
  44. package/dist/server/modules/client/client-service.js +77 -100
  45. package/dist/server/modules/client/client-service.js.map +1 -1
  46. package/dist/server/modules/client/npm-global-package-service.d.ts +21 -0
  47. package/dist/server/modules/client/npm-global-package-service.js +210 -0
  48. package/dist/server/modules/client/npm-global-package-service.js.map +1 -0
  49. package/dist/server/modules/client/service-update-task-service.d.ts +15 -0
  50. package/dist/server/modules/client/service-update-task-service.js +147 -0
  51. package/dist/server/modules/client/service-update-task-service.js.map +1 -0
  52. package/dist/server/modules/client/service-update-types.d.ts +30 -0
  53. package/dist/server/modules/client/service-update-types.js +2 -0
  54. package/dist/server/modules/client/service-update-types.js.map +1 -0
  55. package/dist/server/modules/model-switch/cc-switch-adapter.d.ts +36 -0
  56. package/dist/server/modules/model-switch/cc-switch-adapter.js +317 -0
  57. package/dist/server/modules/model-switch/cc-switch-adapter.js.map +1 -0
  58. package/dist/server/modules/model-switch/model-switch-controller.d.ts +11 -0
  59. package/dist/server/modules/model-switch/model-switch-controller.js +30 -0
  60. package/dist/server/modules/model-switch/model-switch-controller.js.map +1 -0
  61. package/dist/server/modules/model-switch/model-switch-service.d.ts +16 -0
  62. package/dist/server/modules/model-switch/model-switch-service.js +29 -0
  63. package/dist/server/modules/model-switch/model-switch-service.js.map +1 -0
  64. package/dist/server/modules/preferences/profile-service.d.ts +1 -0
  65. package/dist/server/modules/preferences/profile-service.js +9 -0
  66. package/dist/server/modules/preferences/profile-service.js.map +1 -1
  67. package/dist/server/modules/sessions/codex-app-server-helper-process.js +3 -0
  68. package/dist/server/modules/sessions/codex-app-server-helper-process.js.map +1 -1
  69. package/dist/server/modules/sessions/session-activity-authority-service.d.ts +3 -1
  70. package/dist/server/modules/sessions/session-activity-authority-service.js +3 -0
  71. package/dist/server/modules/sessions/session-activity-authority-service.js.map +1 -1
  72. package/dist/server/modules/sessions/session-activity-inspector.d.ts +1 -1
  73. package/dist/server/modules/sessions/session-activity-inspector.js +43 -16
  74. package/dist/server/modules/sessions/session-activity-inspector.js.map +1 -1
  75. package/dist/server/modules/sessions/session-controller.d.ts +3 -3
  76. package/dist/server/modules/sessions/session-controller.js +3 -3
  77. package/dist/server/modules/sessions/session-controller.js.map +1 -1
  78. package/dist/server/modules/sessions/session-history-service.d.ts +3 -0
  79. package/dist/server/modules/sessions/session-history-service.js +259 -39
  80. package/dist/server/modules/sessions/session-history-service.js.map +1 -1
  81. package/dist/server/modules/sessions/session-live-runtime-service.d.ts +7 -3
  82. package/dist/server/modules/sessions/session-live-runtime-service.js +47 -11
  83. package/dist/server/modules/sessions/session-live-runtime-service.js.map +1 -1
  84. package/dist/server/modules/sessions/session-message-attachment-service.d.ts +8 -8
  85. package/dist/server/modules/sessions/session-message-attachment-service.js +25 -34
  86. package/dist/server/modules/sessions/session-message-attachment-service.js.map +1 -1
  87. package/dist/server/modules/sessions/session-provider-error-mapper.js +7 -0
  88. package/dist/server/modules/sessions/session-provider-error-mapper.js.map +1 -1
  89. package/dist/server/modules/tailscale/tailscale-manager.js +5 -1
  90. package/dist/server/modules/tailscale/tailscale-manager.js.map +1 -1
  91. package/dist/server/modules/tasks/task-lane-executors.js +3 -0
  92. package/dist/server/modules/tasks/task-lane-executors.js.map +1 -1
  93. package/dist/server/modules/tasks/task-types.d.ts +2 -0
  94. package/dist/server/modules/tasks/task-types.js +3 -1
  95. package/dist/server/modules/tasks/task-types.js.map +1 -1
  96. package/dist/server/modules/terminal/command-template-service.js +10 -1
  97. package/dist/server/modules/terminal/command-template-service.js.map +1 -1
  98. package/dist/server/modules/terminal/template-port-runtime.d.ts +12 -1
  99. package/dist/server/modules/terminal/template-port-runtime.js +189 -17
  100. package/dist/server/modules/terminal/template-port-runtime.js.map +1 -1
  101. package/dist/server/modules/terminal/terminal-service.js +30 -3
  102. package/dist/server/modules/terminal/terminal-service.js.map +1 -1
  103. package/dist/server/modules/workspace/workspace-code-composition.js +95 -2
  104. package/dist/server/modules/workspace/workspace-code-composition.js.map +1 -1
  105. package/dist/server/routes/butler.js +4 -0
  106. package/dist/server/routes/butler.js.map +1 -1
  107. package/dist/server/routes/client.js +2 -0
  108. package/dist/server/routes/client.js.map +1 -1
  109. package/dist/server/routes/sessions.js +1 -1
  110. package/dist/server/routes/sessions.js.map +1 -1
  111. package/dist/server/routes/system.d.ts +2 -1
  112. package/dist/server/routes/system.js +3 -1
  113. package/dist/server/routes/system.js.map +1 -1
  114. package/dist/server/server/create-server.d.ts +4 -0
  115. package/dist/server/server/create-server.js +51 -7
  116. package/dist/server/server/create-server.js.map +1 -1
  117. package/dist/server/shared/errors/app-error.d.ts +2 -0
  118. package/dist/server/shared/errors/app-error.js +2 -0
  119. package/dist/server/shared/errors/app-error.js.map +1 -1
  120. package/dist/server/shared/http/error-handler.d.ts +2 -1
  121. package/dist/server/shared/http/error-handler.js +3 -2
  122. package/dist/server/shared/http/error-handler.js.map +1 -1
  123. package/dist/server/storage/repositories/auth-login-attempt-repository.d.ts +9 -0
  124. package/dist/server/storage/repositories/auth-login-attempt-repository.js +59 -0
  125. package/dist/server/storage/repositories/auth-login-attempt-repository.js.map +1 -0
  126. package/dist/server/storage/repositories/butler-control-session-repository.d.ts +3 -0
  127. package/dist/server/storage/repositories/butler-control-session-repository.js +80 -4
  128. package/dist/server/storage/repositories/butler-control-session-repository.js.map +1 -1
  129. package/dist/server/storage/repositories/butler-inbox-item-repository.js +54 -3
  130. package/dist/server/storage/repositories/butler-inbox-item-repository.js.map +1 -1
  131. package/dist/server/storage/repositories/terminal-instance-repository.js +1 -1
  132. package/dist/server/storage/repositories/terminal-instance-repository.js.map +1 -1
  133. package/dist/server/storage/repositories/user-preference-profile-repository.js +6 -3
  134. package/dist/server/storage/repositories/user-preference-profile-repository.js.map +1 -1
  135. package/dist/server/storage/sqlite/client.js +127 -0
  136. package/dist/server/storage/sqlite/client.js.map +1 -1
  137. package/dist/server/storage/sqlite/schema.sql +19 -1
  138. package/dist/server/types/domain.d.ts +37 -1
  139. package/node_modules/@codingns/session-sync-core/dist/patch-builder.d.ts +23 -0
  140. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js +162 -0
  141. package/node_modules/@codingns/session-sync-core/dist/patch-builder.js.map +1 -1
  142. package/node_modules/@codingns/session-sync-core/dist/providers/codex.d.ts +1 -0
  143. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js +89 -33
  144. package/node_modules/@codingns/session-sync-core/dist/providers/codex.js.map +1 -1
  145. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js +18 -2
  146. package/node_modules/@codingns/session-sync-core/dist/runtime/active-run-registry.js.map +1 -1
  147. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.d.ts +3 -1
  148. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js +238 -53
  149. package/node_modules/@codingns/session-sync-core/dist/runtime/codex-runtime.js.map +1 -1
  150. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js +1 -0
  151. package/node_modules/@codingns/session-sync-core/dist/runtime/provider-runtime-service.js.map +1 -1
  152. package/node_modules/@codingns/session-sync-core/dist/runtime/types.d.ts +6 -2
  153. package/node_modules/@codingns/session-sync-core/dist/types.d.ts +1 -1
  154. package/package.json +1 -1
  155. package/dist/public/assets/index-DR2rPNi7.css +0 -1
  156. package/dist/public/assets/index-DTOruahn.js +0 -114
@@ -5,7 +5,7 @@ export class UserPreferenceProfileRepository {
5
5
  }
6
6
  findByUserId(userId) {
7
7
  const row = this.db
8
- .prepare(`SELECT language, theme, default_permission_mode, providers_json, created_at, updated_at
8
+ .prepare(`SELECT language, theme, auto_theme, default_permission_mode, providers_json, created_at, updated_at
9
9
  FROM user_preference_profiles
10
10
  WHERE user_id = ?`)
11
11
  .get(userId);
@@ -16,6 +16,7 @@ export class UserPreferenceProfileRepository {
16
16
  userId,
17
17
  language: row.language,
18
18
  theme: row.theme,
19
+ autoTheme: row.auto_theme === 1,
19
20
  defaultPermissionMode: row.default_permission_mode,
20
21
  providers: JSON.parse(row.providers_json),
21
22
  createdAt: row.created_at,
@@ -28,18 +29,20 @@ export class UserPreferenceProfileRepository {
28
29
  user_id,
29
30
  language,
30
31
  theme,
32
+ auto_theme,
31
33
  default_permission_mode,
32
34
  providers_json,
33
35
  created_at,
34
36
  updated_at
35
- ) VALUES (?, ?, ?, ?, ?, ?, ?)
37
+ ) VALUES (?, ?, ?, ?, ?, ?, ?, ?)
36
38
  ON CONFLICT(user_id) DO UPDATE SET
37
39
  language = excluded.language,
38
40
  theme = excluded.theme,
41
+ auto_theme = excluded.auto_theme,
39
42
  default_permission_mode = excluded.default_permission_mode,
40
43
  providers_json = excluded.providers_json,
41
44
  updated_at = excluded.updated_at`)
42
- .run(record.userId, record.language, record.theme, record.defaultPermissionMode, JSON.stringify(record.providers), record.createdAt, record.updatedAt);
45
+ .run(record.userId, record.language, record.theme, record.autoTheme ? 1 : 0, record.defaultPermissionMode, JSON.stringify(record.providers), record.createdAt, record.updatedAt);
43
46
  return record;
44
47
  }
45
48
  }
@@ -1 +1 @@
1
- {"version":3,"file":"user-preference-profile-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/user-preference-profile-repository.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,+BAA+B;IACb;IAA7B,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAEtD,YAAY,CAAC,MAAc;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CACN;;2BAEmB,CACpB;aACA,GAAG,CAAC,MAAM,CAAyC,CAAC;QAEvD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,MAAM;YACN,QAAQ,EAAE,GAAG,CAAC,QAAmD;YACjE,KAAK,EAAE,GAAG,CAAC,KAA6C;YACxD,qBAAqB,EAAE,GAAG,CAAC,uBAA+E;YAC1G,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAA6C;YACrF,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,SAAS,EAAE,GAAG,CAAC,UAAU;SAC1B,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAAmC;QACxC,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;;;;;;;;;;;;;2CAcmC,CACpC;aACA,GAAG,CACF,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,qBAAqB,EAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAChC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,CACjB,CAAC;QAEJ,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
1
+ {"version":3,"file":"user-preference-profile-repository.js","sourceRoot":"","sources":["../../../../src/storage/repositories/user-preference-profile-repository.ts"],"names":[],"mappings":"AAIA,MAAM,OAAO,+BAA+B;IACb;IAA7B,YAA6B,EAAqB;QAArB,OAAE,GAAF,EAAE,CAAmB;IAAG,CAAC;IAEtD,YAAY,CAAC,MAAc;QACzB,MAAM,GAAG,GAAG,IAAI,CAAC,EAAE;aAChB,OAAO,CACN;;2BAEmB,CACpB;aACA,GAAG,CAAC,MAAM,CAAyC,CAAC;QAEvD,IAAI,CAAC,GAAG,EAAE,CAAC;YACT,OAAO,IAAI,CAAC;QACd,CAAC;QAED,OAAO;YACL,MAAM;YACN,QAAQ,EAAE,GAAG,CAAC,QAAmD;YACjE,KAAK,EAAE,GAAG,CAAC,KAA6C;YACxD,SAAS,EAAE,GAAG,CAAC,UAAU,KAAK,CAAC;YAC/B,qBAAqB,EAAE,GAAG,CAAC,uBAA+E;YAC1G,SAAS,EAAE,IAAI,CAAC,KAAK,CAAC,GAAG,CAAC,cAAc,CAA6C;YACrF,SAAS,EAAE,GAAG,CAAC,UAAU;YACzB,SAAS,EAAE,GAAG,CAAC,UAAU;SAC1B,CAAC;IACJ,CAAC;IAED,MAAM,CAAC,MAAmC;QACxC,IAAI,CAAC,EAAE;aACJ,OAAO,CACN;;;;;;;;;;;;;;;;2CAgBmC,CACpC;aACA,GAAG,CACF,MAAM,CAAC,MAAM,EACb,MAAM,CAAC,QAAQ,EACf,MAAM,CAAC,KAAK,EACZ,MAAM,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,EACxB,MAAM,CAAC,qBAAqB,EAC5B,IAAI,CAAC,SAAS,CAAC,MAAM,CAAC,SAAS,CAAC,EAChC,MAAM,CAAC,SAAS,EAChB,MAAM,CAAC,SAAS,CACjB,CAAC;QAEJ,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
@@ -9,11 +9,13 @@ export function createDatabaseClient(databasePath) {
9
9
  const schemaPath = new URL("./schema.sql", import.meta.url);
10
10
  const schema = fs.readFileSync(schemaPath, "utf8");
11
11
  db.exec(schema);
12
+ ensureAuthLoginAttemptSchema(db);
12
13
  ensureWorkspaceRemovalColumn(db);
13
14
  ensureWorkspaceSortOrderColumn(db);
14
15
  ensureWorkspaceNavigationBackgroundColorColumn(db);
15
16
  ensureSessionProviderSchema(db);
16
17
  ensureSessionStateSchema(db);
18
+ ensureSessionAttachmentSchema(db);
17
19
  ensureSessionIndexArchiveColumn(db);
18
20
  ensureSessionRelationColumns(db);
19
21
  ensureSessionForkSchema(db);
@@ -33,7 +35,10 @@ export function createDatabaseClient(databasePath) {
33
35
  ensureInstanceTailscaleStatusSchema(db);
34
36
  ensureTerminalCommandTemplateDebugSchema(db);
35
37
  ensureTerminalInstanceDebugSchema(db);
38
+ ensureUserPreferenceProfileSchema(db);
36
39
  ensureButlerProfileSchema(db);
40
+ ensureButlerControlSessionSchema(db);
41
+ ensureButlerInboxSchema(db);
37
42
  ensureButlerFollowUpTaskSchema(db);
38
43
  ensureButlerSessionSummarySchema(db);
39
44
  return {
@@ -41,6 +46,28 @@ export function createDatabaseClient(databasePath) {
41
46
  close: () => db.close()
42
47
  };
43
48
  }
49
+ function ensureAuthLoginAttemptSchema(db) {
50
+ const columns = db
51
+ .prepare("PRAGMA table_info(auth_login_attempts)")
52
+ .all();
53
+ if (columns.length > 0) {
54
+ return;
55
+ }
56
+ db.exec(`
57
+ CREATE TABLE IF NOT EXISTS auth_login_attempts (
58
+ username TEXT PRIMARY KEY,
59
+ failed_attempt_count INTEGER NOT NULL DEFAULT 0 CHECK (failed_attempt_count >= 0),
60
+ captcha_id TEXT,
61
+ captcha_code_hash TEXT,
62
+ captcha_expires_at TEXT,
63
+ created_at TEXT NOT NULL,
64
+ updated_at TEXT NOT NULL
65
+ );
66
+
67
+ CREATE INDEX IF NOT EXISTS idx_auth_login_attempts_updated_at
68
+ ON auth_login_attempts(updated_at DESC);
69
+ `);
70
+ }
44
71
  function ensureWorkspaceRemovalColumn(db) {
45
72
  const columns = db
46
73
  .prepare("PRAGMA table_info(workspaces)")
@@ -93,6 +120,70 @@ function ensureWorkspaceNavigationBackgroundColorColumn(db) {
93
120
  }
94
121
  db.exec("ALTER TABLE workspace_navigation_states ADD COLUMN background_color TEXT");
95
122
  }
123
+ function ensureSessionAttachmentSchema(db) {
124
+ const table = db
125
+ .prepare(`SELECT sql
126
+ FROM sqlite_master
127
+ WHERE type = 'table'
128
+ AND name = 'session_message_attachments'
129
+ LIMIT 1`)
130
+ .get();
131
+ const definition = table?.sql ?? "";
132
+ if (definition.length === 0 ||
133
+ definition.includes("kind IN ('image', 'file')") ||
134
+ definition.includes("kind IN ('image','file')")) {
135
+ return;
136
+ }
137
+ db.exec(`
138
+ ALTER TABLE session_message_attachments RENAME TO session_message_attachments_legacy;
139
+
140
+ CREATE TABLE session_message_attachments (
141
+ id TEXT PRIMARY KEY,
142
+ session_id TEXT NOT NULL,
143
+ client_request_id TEXT NOT NULL,
144
+ message_id TEXT,
145
+ kind TEXT NOT NULL CHECK (kind IN ('image', 'file')),
146
+ file_name TEXT NOT NULL,
147
+ mime_type TEXT NOT NULL,
148
+ file_size INTEGER NOT NULL,
149
+ storage_path TEXT NOT NULL,
150
+ created_at TEXT NOT NULL,
151
+ FOREIGN KEY (session_id) REFERENCES session_bindings(session_id)
152
+ );
153
+
154
+ INSERT INTO session_message_attachments (
155
+ id,
156
+ session_id,
157
+ client_request_id,
158
+ message_id,
159
+ kind,
160
+ file_name,
161
+ mime_type,
162
+ file_size,
163
+ storage_path,
164
+ created_at
165
+ )
166
+ SELECT
167
+ id,
168
+ session_id,
169
+ client_request_id,
170
+ message_id,
171
+ kind,
172
+ file_name,
173
+ mime_type,
174
+ file_size,
175
+ storage_path,
176
+ created_at
177
+ FROM session_message_attachments_legacy;
178
+
179
+ DROP TABLE session_message_attachments_legacy;
180
+
181
+ CREATE INDEX IF NOT EXISTS idx_session_message_attachments_message
182
+ ON session_message_attachments(session_id, message_id);
183
+ CREATE INDEX IF NOT EXISTS idx_session_message_attachments_client_request
184
+ ON session_message_attachments(session_id, client_request_id);
185
+ `);
186
+ }
96
187
  function ensureButlerProfileSchema(db) {
97
188
  const columns = db
98
189
  .prepare("PRAGMA table_info(butler_profiles)")
@@ -102,6 +193,42 @@ function ensureButlerProfileSchema(db) {
102
193
  }
103
194
  db.exec("ALTER TABLE butler_profiles ADD COLUMN display_name TEXT NOT NULL DEFAULT '代码助手'");
104
195
  }
196
+ function ensureUserPreferenceProfileSchema(db) {
197
+ const columns = db
198
+ .prepare("PRAGMA table_info(user_preference_profiles)")
199
+ .all();
200
+ if (columns.length === 0 || columns.some((column) => column.name === "auto_theme")) {
201
+ return;
202
+ }
203
+ db.exec("ALTER TABLE user_preference_profiles ADD COLUMN auto_theme INTEGER NOT NULL DEFAULT 0 CHECK (auto_theme IN (0, 1))");
204
+ }
205
+ function ensureButlerControlSessionSchema(db) {
206
+ const columns = db
207
+ .prepare("PRAGMA table_info(butler_control_sessions)")
208
+ .all();
209
+ const columnNames = new Set(columns.map((column) => column.name));
210
+ if (columns.length === 0) {
211
+ return;
212
+ }
213
+ if (!columnNames.has("purpose")) {
214
+ db.exec("ALTER TABLE butler_control_sessions ADD COLUMN purpose TEXT NOT NULL DEFAULT 'chat'");
215
+ }
216
+ if (!columnNames.has("title")) {
217
+ db.exec("ALTER TABLE butler_control_sessions ADD COLUMN title TEXT");
218
+ }
219
+ if (!columnNames.has("source_item_id")) {
220
+ db.exec("ALTER TABLE butler_control_sessions ADD COLUMN source_item_id TEXT");
221
+ }
222
+ }
223
+ function ensureButlerInboxSchema(db) {
224
+ const columns = db
225
+ .prepare("PRAGMA table_info(butler_inbox_items)")
226
+ .all();
227
+ if (columns.length === 0 || columns.some((column) => column.name === "assistant_state_json")) {
228
+ return;
229
+ }
230
+ db.exec("ALTER TABLE butler_inbox_items ADD COLUMN assistant_state_json TEXT NOT NULL DEFAULT '{}'");
231
+ }
105
232
  function ensureButlerFollowUpTaskSchema(db) {
106
233
  const columns = db
107
234
  .prepare("PRAGMA table_info(butler_follow_up_tasks)")
@@ -1 +1 @@
1
- {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/storage/sqlite/client.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"client.js","sourceRoot":"","sources":["../../../../src/storage/sqlite/client.ts"],"names":[],"mappings":"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"}
@@ -32,6 +32,19 @@ CREATE TABLE IF NOT EXISTS auth_tokens (
32
32
  CREATE INDEX IF NOT EXISTS idx_auth_tokens_user_id ON auth_tokens(user_id);
33
33
  CREATE INDEX IF NOT EXISTS idx_auth_tokens_expires_at ON auth_tokens(expires_at);
34
34
 
35
+ CREATE TABLE IF NOT EXISTS auth_login_attempts (
36
+ username TEXT PRIMARY KEY,
37
+ failed_attempt_count INTEGER NOT NULL DEFAULT 0 CHECK (failed_attempt_count >= 0),
38
+ captcha_id TEXT,
39
+ captcha_code_hash TEXT,
40
+ captcha_expires_at TEXT,
41
+ created_at TEXT NOT NULL,
42
+ updated_at TEXT NOT NULL
43
+ );
44
+
45
+ CREATE INDEX IF NOT EXISTS idx_auth_login_attempts_updated_at
46
+ ON auth_login_attempts(updated_at DESC);
47
+
35
48
  CREATE TABLE IF NOT EXISTS workspaces (
36
49
  id TEXT PRIMARY KEY,
37
50
  name TEXT NOT NULL,
@@ -227,7 +240,7 @@ CREATE TABLE IF NOT EXISTS session_message_attachments (
227
240
  session_id TEXT NOT NULL,
228
241
  client_request_id TEXT NOT NULL,
229
242
  message_id TEXT,
230
- kind TEXT NOT NULL CHECK (kind IN ('image')),
243
+ kind TEXT NOT NULL CHECK (kind IN ('image', 'file')),
231
244
  file_name TEXT NOT NULL,
232
245
  mime_type TEXT NOT NULL,
233
246
  file_size INTEGER NOT NULL,
@@ -310,6 +323,7 @@ CREATE TABLE IF NOT EXISTS user_preference_profiles (
310
323
  user_id TEXT PRIMARY KEY,
311
324
  language TEXT NOT NULL CHECK (language IN ('zh-CN', 'en-US')),
312
325
  theme TEXT NOT NULL CHECK (theme IN ('light', 'dark', 'sky-blue', 'eye-green')),
326
+ auto_theme INTEGER NOT NULL DEFAULT 0 CHECK (auto_theme IN (0, 1)),
313
327
  default_permission_mode TEXT NOT NULL CHECK (
314
328
  default_permission_mode IN ('default', 'acceptEdits', 'bypassPermissions')
315
329
  ),
@@ -671,6 +685,9 @@ CREATE TABLE IF NOT EXISTS butler_control_sessions (
671
685
  id TEXT PRIMARY KEY,
672
686
  provider_id TEXT NOT NULL CHECK (provider_id IN ('codex', 'claude-code')),
673
687
  session_id TEXT NOT NULL UNIQUE,
688
+ purpose TEXT NOT NULL DEFAULT 'chat' CHECK (purpose IN ('chat', 'todo_analysis')),
689
+ title TEXT,
690
+ source_item_id TEXT,
674
691
  status TEXT NOT NULL CHECK (status IN ('idle', 'running', 'failed', 'closed')),
675
692
  last_context_version TEXT,
676
693
  last_summary TEXT,
@@ -708,6 +725,7 @@ CREATE TABLE IF NOT EXISTS butler_inbox_items (
708
725
  content TEXT NOT NULL,
709
726
  priority TEXT NOT NULL CHECK (priority IN ('low', 'medium', 'high')),
710
727
  status TEXT NOT NULL CHECK (status IN ('pending', 'in_progress', 'closed')),
728
+ assistant_state_json TEXT NOT NULL DEFAULT '{}',
711
729
  created_at TEXT NOT NULL,
712
730
  updated_at TEXT NOT NULL,
713
731
  closed_at TEXT,
@@ -5,6 +5,7 @@ export type SessionActivityState = "idle" | "running" | "completed_unread";
5
5
  export type SessionActivitySource = "none" | "runtime" | "inferred";
6
6
  export type SessionActivityResolutionSource = "authoritative_runtime" | "authoritative_provider_event" | "inferred_log" | "unknown";
7
7
  export type SessionActivityConfidence = "authoritative" | "strong" | "weak";
8
+ export type SessionInterruptSource = "user" | "runtime";
8
9
  export interface BootstrapState {
9
10
  id: "default";
10
11
  initialized: boolean;
@@ -28,6 +29,15 @@ export interface AuthTokenRecord {
28
29
  revokedAt: string | null;
29
30
  createdAt: string;
30
31
  }
32
+ export interface AuthLoginAttemptRecord {
33
+ username: string;
34
+ failedAttemptCount: number;
35
+ captchaId: string | null;
36
+ captchaCodeHash: string | null;
37
+ captchaExpiresAt: string | null;
38
+ createdAt: string;
39
+ updatedAt: string;
40
+ }
31
41
  export interface Workspace {
32
42
  id: string;
33
43
  name: string;
@@ -144,7 +154,7 @@ export interface SessionMessageAttachmentRecord {
144
154
  sessionId: string;
145
155
  clientRequestId: string;
146
156
  messageId: string | null;
147
- kind: "image";
157
+ kind: "image" | "file";
148
158
  fileName: string;
149
159
  mimeType: string;
150
160
  fileSize: number;
@@ -273,6 +283,7 @@ export type UserPreferenceProviders = Record<PreferenceProviderId, UserPreferenc
273
283
  export interface UserPreferenceProfile {
274
284
  language: UserPreferenceLanguage;
275
285
  theme: UserPreferenceTheme;
286
+ autoTheme: boolean;
276
287
  defaultPermissionMode: UserPreferencePermissionMode;
277
288
  providers: UserPreferenceProviders;
278
289
  }
@@ -316,11 +327,13 @@ export type ButlerSessionRole = "patrol" | "execution" | "verification" | "adhoc
316
327
  export type ButlerSessionOwnershipMode = "managed" | "observed";
317
328
  export type ButlerSessionStatus = "idle" | "running" | "blocked" | "failed" | "closed";
318
329
  export type ButlerSessionSummaryStatus = "idle" | "scheduled" | "running" | "failed";
330
+ export type ButlerControlSessionPurpose = "chat" | "todo_analysis";
319
331
  export type ButlerCheckpointSourceKind = "snapshot" | "summary" | "verification" | "manual";
320
332
  export type ButlerCheckpointProgressState = "unknown" | "working" | "blocked" | "done";
321
333
  export type ButlerInboxItemType = "bug" | "feature" | "change" | "task";
322
334
  export type ButlerInboxItemStatus = "pending" | "in_progress" | "closed";
323
335
  export type ButlerInboxItemPriority = "low" | "medium" | "high";
336
+ export type ButlerInboxItemLifecycleStage = "pending" | "analyzing" | "analyzed" | "session_created" | "follow_up_active" | "completed" | "failed";
324
337
  export type ButlerFollowUpTaskStatus = "active" | "waiting_user" | "completed" | "failed" | "cancelled";
325
338
  export type ProjectMemoryType = "arch" | "rule" | "decision" | "incident" | "verify" | "note";
326
339
  export type ProjectMemoryStatus = "candidate" | "active" | "superseded" | "archived";
@@ -347,6 +360,9 @@ export interface ButlerControlSession {
347
360
  id: string;
348
361
  providerId: ButlerProfileProviderId;
349
362
  sessionId: string;
363
+ purpose: ButlerControlSessionPurpose;
364
+ title: string | null;
365
+ sourceItemId: string | null;
350
366
  status: ButlerControlSessionStatus;
351
367
  lastContextVersion: string | null;
352
368
  lastSummary: string | null;
@@ -409,10 +425,25 @@ export interface ButlerInboxItem {
409
425
  content: string;
410
426
  priority: ButlerInboxItemPriority;
411
427
  status: ButlerInboxItemStatus;
428
+ assistantState: ButlerInboxAssistantState;
412
429
  createdAt: string;
413
430
  updatedAt: string;
414
431
  closedAt: string | null;
415
432
  }
433
+ export interface ButlerInboxAssistantState {
434
+ lifecycleStage: ButlerInboxItemLifecycleStage;
435
+ analysisSummary: string | null;
436
+ generatedPrompt: string | null;
437
+ analysisControlSessionId: string | null;
438
+ analysisSessionId: string | null;
439
+ linkedButlerSessionId: string | null;
440
+ linkedSessionId: string | null;
441
+ linkedFollowUpTaskId: string | null;
442
+ lastError: string | null;
443
+ lastAnalyzedAt: string | null;
444
+ lastSessionCreatedAt: string | null;
445
+ lastFollowUpAt: string | null;
446
+ }
416
447
  export interface ButlerNotificationArchiveRecord {
417
448
  userId: string;
418
449
  notificationId: string;
@@ -845,8 +876,13 @@ export interface TerminalTemplateRuntimeStatus {
845
876
  port: number;
846
877
  occupied: boolean;
847
878
  processId: number | null;
879
+ parentProcessId?: number | null;
880
+ processGroupId?: number | null;
848
881
  processName: string | null;
849
882
  processCommandLine: string | null;
883
+ parentProcessName?: string | null;
884
+ parentProcessCommandLine?: string | null;
885
+ terminationScope?: "process" | "process_group" | null;
850
886
  }
851
887
  export type SkillSourceType = "builtin" | "local-import" | "managed-copy";
852
888
  export type ManagedSkillState = "active" | "conflicted" | "missing";
@@ -28,6 +28,29 @@ export declare function buildApplyPatchFromClaudeWrite(input: Record<string, unk
28
28
  * 转换后前端仍可显示变更文件列表。
29
29
  */
30
30
  export declare function buildApplyPatchFromOpenCodePatch(files: string[]): string | null;
31
+ /**
32
+ * 将只包含文件路径和变更类型的结果转换成 apply_patch。
33
+ * 这类数据常见于 Codex 的 `fileChange` 事件,本身没有 diff,
34
+ * 但前端至少可以据此展示文件级编辑摘要。
35
+ */
36
+ export declare function buildApplyPatchFromFileChangeList(changes: Array<{
37
+ path?: string | null;
38
+ kind?: string | null;
39
+ }>): string | null;
40
+ /**
41
+ * 将供应商返回的“松散 patch 输入”兜底规范成 apply_patch。
42
+ * 常见坏格式有两种:
43
+ * 1. 只有 `@@ ...` hunk,没有 `*** Begin Patch`
44
+ * 2. 只有文件路径列表,真正的 diff 已经丢了
45
+ */
46
+ export declare function normalizeApplyPatchText(input: string, options?: {
47
+ fallbackPaths?: string[];
48
+ }): string | null;
49
+ /**
50
+ * 从工具输出文本中提取“Updated the following files”里的文件路径。
51
+ * Codex 的 apply_patch 成功结果经常只在这里保留目标文件列表。
52
+ */
53
+ export declare function extractApplyPatchTargetPathsFromToolOutput(output: string): string[];
31
54
  /**
32
55
  * 将通用文件编辑类工具参数转换为 apply_patch。
33
56
  * 兼容 Gemini 等 provider 常见的字段风格:
@@ -67,6 +67,108 @@ export function buildApplyPatchFromOpenCodePatch(files) {
67
67
  hunks: []
68
68
  })));
69
69
  }
70
+ /**
71
+ * 将只包含文件路径和变更类型的结果转换成 apply_patch。
72
+ * 这类数据常见于 Codex 的 `fileChange` 事件,本身没有 diff,
73
+ * 但前端至少可以据此展示文件级编辑摘要。
74
+ */
75
+ export function buildApplyPatchFromFileChangeList(changes) {
76
+ const normalizedChanges = changes
77
+ .map((change) => {
78
+ const filePath = normalizePatchPath(change.path);
79
+ if (!filePath) {
80
+ return null;
81
+ }
82
+ return {
83
+ filePath,
84
+ action: normalizePatchAction(change.kind)
85
+ };
86
+ })
87
+ .filter((change) => Boolean(change));
88
+ if (normalizedChanges.length === 0) {
89
+ return null;
90
+ }
91
+ return buildApplyPatchText(normalizedChanges.map((change) => {
92
+ if (change.action === "add") {
93
+ return {
94
+ action: "add",
95
+ filePath: change.filePath,
96
+ contentLines: []
97
+ };
98
+ }
99
+ if (change.action === "delete") {
100
+ return {
101
+ action: "delete",
102
+ filePath: change.filePath
103
+ };
104
+ }
105
+ return {
106
+ action: "update",
107
+ filePath: change.filePath,
108
+ hunks: []
109
+ };
110
+ }));
111
+ }
112
+ /**
113
+ * 将供应商返回的“松散 patch 输入”兜底规范成 apply_patch。
114
+ * 常见坏格式有两种:
115
+ * 1. 只有 `@@ ...` hunk,没有 `*** Begin Patch`
116
+ * 2. 只有文件路径列表,真正的 diff 已经丢了
117
+ */
118
+ export function normalizeApplyPatchText(input, options) {
119
+ const normalizedInput = input.replace(/\r\n/g, "\n").trim();
120
+ if (!normalizedInput) {
121
+ return null;
122
+ }
123
+ if (isFullApplyPatchText(normalizedInput)) {
124
+ return normalizedInput;
125
+ }
126
+ const fallbackPaths = dedupePatchPaths(options?.fallbackPaths ?? []);
127
+ if (fallbackPaths.length !== 1 || !looksLikeLooseApplyPatchBody(normalizedInput)) {
128
+ return null;
129
+ }
130
+ return [
131
+ "*** Begin Patch",
132
+ `*** Update File: ${fallbackPaths[0]}`,
133
+ normalizedInput,
134
+ "*** End Patch"
135
+ ].join("\n");
136
+ }
137
+ /**
138
+ * 从工具输出文本中提取“Updated the following files”里的文件路径。
139
+ * Codex 的 apply_patch 成功结果经常只在这里保留目标文件列表。
140
+ */
141
+ export function extractApplyPatchTargetPathsFromToolOutput(output) {
142
+ const resolvedText = unwrapToolOutputText(output);
143
+ if (!resolvedText) {
144
+ return [];
145
+ }
146
+ const lines = resolvedText.replace(/\r\n/g, "\n").split("\n");
147
+ const collected = [];
148
+ let inUpdatedFilesSection = false;
149
+ for (const rawLine of lines) {
150
+ const line = rawLine.trim();
151
+ if (!inUpdatedFilesSection) {
152
+ if (/^Success\.\s+Updated the following files:/i.test(line)) {
153
+ inUpdatedFilesSection = true;
154
+ }
155
+ continue;
156
+ }
157
+ if (!line) {
158
+ if (collected.length > 0) {
159
+ break;
160
+ }
161
+ continue;
162
+ }
163
+ const matched = line.match(/^[A-Z?]\s+(.+)$/);
164
+ const candidatePath = normalizePatchPath(matched?.[1] ?? line);
165
+ if (!candidatePath) {
166
+ break;
167
+ }
168
+ collected.push(candidatePath);
169
+ }
170
+ return dedupePatchPaths(collected);
171
+ }
70
172
  /**
71
173
  * 将通用文件编辑类工具参数转换为 apply_patch。
72
174
  * 兼容 Gemini 等 provider 常见的字段风格:
@@ -123,6 +225,9 @@ function buildApplyPatchText(entries) {
123
225
  lines.push(`+${contentLine}`);
124
226
  }
125
227
  }
228
+ else if (entry.action === "delete") {
229
+ lines.push(`*** Delete File: ${entry.filePath}`);
230
+ }
126
231
  else {
127
232
  lines.push(`*** Update File: ${entry.filePath}`);
128
233
  if (entry.hunks.length === 0) {
@@ -189,4 +294,61 @@ function normalizeEditRecord(value) {
189
294
  newLines: newValue.length > 0 ? newValue.split("\n") : []
190
295
  };
191
296
  }
297
+ function normalizePatchAction(value) {
298
+ const normalized = value?.trim().toLowerCase() ?? "";
299
+ if (normalized === "add" || normalized === "create" || normalized === "new") {
300
+ return "add";
301
+ }
302
+ if (normalized === "delete" || normalized === "remove" || normalized === "removed") {
303
+ return "delete";
304
+ }
305
+ return "update";
306
+ }
307
+ function normalizePatchPath(value) {
308
+ return typeof value === "string" ? value.trim() : "";
309
+ }
310
+ function dedupePatchPaths(paths) {
311
+ return [...new Set(paths.map((path) => normalizePatchPath(path)).filter((path) => path.length > 0))];
312
+ }
313
+ function isFullApplyPatchText(input) {
314
+ return input.includes("*** Begin Patch") && input.includes("*** End Patch");
315
+ }
316
+ function looksLikeLooseApplyPatchBody(input) {
317
+ return (input.startsWith("@@") ||
318
+ input.startsWith("*** Update File: ") ||
319
+ input.startsWith("*** Add File: ") ||
320
+ input.startsWith("*** Delete File: ") ||
321
+ input.includes("\n@@") ||
322
+ input.startsWith("+") ||
323
+ input.startsWith("-"));
324
+ }
325
+ function unwrapToolOutputText(output) {
326
+ const normalized = output.trim();
327
+ if (!normalized) {
328
+ return "";
329
+ }
330
+ if (!normalized.startsWith("{")) {
331
+ return normalized;
332
+ }
333
+ try {
334
+ const parsed = JSON.parse(normalized);
335
+ if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
336
+ return normalized;
337
+ }
338
+ const record = parsed;
339
+ if (typeof record.output === "string" && record.output.trim().length > 0) {
340
+ return record.output;
341
+ }
342
+ if (typeof record.result === "string" && record.result.trim().length > 0) {
343
+ return record.result;
344
+ }
345
+ if (typeof record.message === "string" && record.message.trim().length > 0) {
346
+ return record.message;
347
+ }
348
+ }
349
+ catch {
350
+ return normalized;
351
+ }
352
+ return normalized;
353
+ }
192
354
  //# sourceMappingURL=patch-builder.js.map