@jungjaehoon/mama-os 0.32.1 → 0.32.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 (182) hide show
  1. package/CHANGELOG.md +8 -0
  2. package/README.md +15 -13
  3. package/dist/agent/agent-loop.d.ts +5 -0
  4. package/dist/agent/agent-loop.d.ts.map +1 -1
  5. package/dist/agent/agent-loop.js +160 -55
  6. package/dist/agent/agent-loop.js.map +1 -1
  7. package/dist/agent/backend-model-policy.d.ts +9 -0
  8. package/dist/agent/backend-model-policy.d.ts.map +1 -0
  9. package/dist/agent/backend-model-policy.js +21 -0
  10. package/dist/agent/backend-model-policy.js.map +1 -0
  11. package/dist/agent/backend-model-runner-factory.d.ts +27 -0
  12. package/dist/agent/backend-model-runner-factory.d.ts.map +1 -0
  13. package/dist/agent/backend-model-runner-factory.js +85 -0
  14. package/dist/agent/backend-model-runner-factory.js.map +1 -0
  15. package/dist/agent/cline-cli-adapter.d.ts +124 -0
  16. package/dist/agent/cline-cli-adapter.d.ts.map +1 -0
  17. package/dist/agent/cline-cli-adapter.js +1040 -0
  18. package/dist/agent/cline-cli-adapter.js.map +1 -0
  19. package/dist/agent/cline-native-tool-policy.d.ts +3 -0
  20. package/dist/agent/cline-native-tool-policy.d.ts.map +1 -0
  21. package/dist/agent/cline-native-tool-policy.js +50 -0
  22. package/dist/agent/cline-native-tool-policy.js.map +1 -0
  23. package/dist/agent/code-act/constants.d.ts +1 -1
  24. package/dist/agent/code-act/constants.d.ts.map +1 -1
  25. package/dist/agent/code-act/constants.js +13 -1
  26. package/dist/agent/code-act/constants.js.map +1 -1
  27. package/dist/agent/codex-app-server-process.d.ts +5 -0
  28. package/dist/agent/codex-app-server-process.d.ts.map +1 -1
  29. package/dist/agent/codex-app-server-process.js +30 -0
  30. package/dist/agent/codex-app-server-process.js.map +1 -1
  31. package/dist/agent/codex-auxiliary-tools.d.ts +17 -0
  32. package/dist/agent/codex-auxiliary-tools.d.ts.map +1 -0
  33. package/dist/agent/codex-auxiliary-tools.js +267 -0
  34. package/dist/agent/codex-auxiliary-tools.js.map +1 -0
  35. package/dist/agent/codex-home.d.ts.map +1 -1
  36. package/dist/agent/codex-home.js +1 -0
  37. package/dist/agent/codex-home.js.map +1 -1
  38. package/dist/agent/managed-agent-runtime-sync.d.ts.map +1 -1
  39. package/dist/agent/managed-agent-runtime-sync.js +17 -3
  40. package/dist/agent/managed-agent-runtime-sync.js.map +1 -1
  41. package/dist/agent/managed-agent-validation.js +1 -1
  42. package/dist/agent/managed-agent-validation.js.map +1 -1
  43. package/dist/agent/model-runner.d.ts +11 -1
  44. package/dist/agent/model-runner.d.ts.map +1 -1
  45. package/dist/agent/model-runner.js +12 -1
  46. package/dist/agent/model-runner.js.map +1 -1
  47. package/dist/agent/session-pool.d.ts +10 -9
  48. package/dist/agent/session-pool.d.ts.map +1 -1
  49. package/dist/agent/session-pool.js +12 -47
  50. package/dist/agent/session-pool.js.map +1 -1
  51. package/dist/agent/types.d.ts +18 -2
  52. package/dist/agent/types.d.ts.map +1 -1
  53. package/dist/agent/types.js.map +1 -1
  54. package/dist/api/graph-api.d.ts.map +1 -1
  55. package/dist/api/graph-api.js +15 -5
  56. package/dist/api/graph-api.js.map +1 -1
  57. package/dist/cli/commands/init.d.ts +1 -1
  58. package/dist/cli/commands/init.d.ts.map +1 -1
  59. package/dist/cli/commands/init.js +43 -10
  60. package/dist/cli/commands/init.js.map +1 -1
  61. package/dist/cli/commands/run.d.ts.map +1 -1
  62. package/dist/cli/commands/run.js +12 -0
  63. package/dist/cli/commands/run.js.map +1 -1
  64. package/dist/cli/commands/setup.d.ts +22 -0
  65. package/dist/cli/commands/setup.d.ts.map +1 -1
  66. package/dist/cli/commands/setup.js +79 -28
  67. package/dist/cli/commands/setup.js.map +1 -1
  68. package/dist/cli/commands/start.d.ts +2 -1
  69. package/dist/cli/commands/start.d.ts.map +1 -1
  70. package/dist/cli/commands/start.js +35 -9
  71. package/dist/cli/commands/start.js.map +1 -1
  72. package/dist/cli/commands/status.d.ts.map +1 -1
  73. package/dist/cli/commands/status.js +4 -0
  74. package/dist/cli/commands/status.js.map +1 -1
  75. package/dist/cli/config/config-manager.d.ts.map +1 -1
  76. package/dist/cli/config/config-manager.js +63 -14
  77. package/dist/cli/config/config-manager.js.map +1 -1
  78. package/dist/cli/config/types.d.ts +12 -5
  79. package/dist/cli/config/types.d.ts.map +1 -1
  80. package/dist/cli/config/types.js +3 -0
  81. package/dist/cli/config/types.js.map +1 -1
  82. package/dist/cli/index.js +6 -4
  83. package/dist/cli/index.js.map +1 -1
  84. package/dist/cli/runtime/agent-loop-init.d.ts +1 -1
  85. package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
  86. package/dist/cli/runtime/agent-loop-init.js +8 -3
  87. package/dist/cli/runtime/agent-loop-init.js.map +1 -1
  88. package/dist/cli/runtime/gateway-init.d.ts +1 -1
  89. package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
  90. package/dist/cli/runtime/gateway-init.js.map +1 -1
  91. package/dist/cli/runtime/mama-core-init.d.ts +10 -2
  92. package/dist/cli/runtime/mama-core-init.d.ts.map +1 -1
  93. package/dist/cli/runtime/mama-core-init.js +52 -68
  94. package/dist/cli/runtime/mama-core-init.js.map +1 -1
  95. package/dist/cli/runtime/memory-agent-init.d.ts.map +1 -1
  96. package/dist/cli/runtime/memory-agent-init.js +18 -5
  97. package/dist/cli/runtime/memory-agent-init.js.map +1 -1
  98. package/dist/cli/runtime/scheduler-init.d.ts +4 -0
  99. package/dist/cli/runtime/scheduler-init.d.ts.map +1 -1
  100. package/dist/cli/runtime/scheduler-init.js +24 -3
  101. package/dist/cli/runtime/scheduler-init.js.map +1 -1
  102. package/dist/cli/runtime/shutdown.d.ts +4 -0
  103. package/dist/cli/runtime/shutdown.d.ts.map +1 -1
  104. package/dist/cli/runtime/shutdown.js +30 -6
  105. package/dist/cli/runtime/shutdown.js.map +1 -1
  106. package/dist/cli/runtime/utilities.d.ts +2 -0
  107. package/dist/cli/runtime/utilities.d.ts.map +1 -1
  108. package/dist/cli/runtime/utilities.js +33 -0
  109. package/dist/cli/runtime/utilities.js.map +1 -1
  110. package/dist/gateways/discord.d.ts.map +1 -1
  111. package/dist/gateways/discord.js +11 -6
  112. package/dist/gateways/discord.js.map +1 -1
  113. package/dist/gateways/image-analyzer.d.ts +5 -0
  114. package/dist/gateways/image-analyzer.d.ts.map +1 -1
  115. package/dist/gateways/image-analyzer.js +8 -0
  116. package/dist/gateways/image-analyzer.js.map +1 -1
  117. package/dist/gateways/message-router.d.ts.map +1 -1
  118. package/dist/gateways/message-router.js +29 -15
  119. package/dist/gateways/message-router.js.map +1 -1
  120. package/dist/gateways/slack.d.ts.map +1 -1
  121. package/dist/gateways/slack.js +6 -2
  122. package/dist/gateways/slack.js.map +1 -1
  123. package/dist/gateways/types.d.ts +1 -1
  124. package/dist/gateways/types.d.ts.map +1 -1
  125. package/dist/index.d.ts +1 -1
  126. package/dist/index.js +1 -1
  127. package/dist/multi-agent/agent-process-manager.d.ts +6 -4
  128. package/dist/multi-agent/agent-process-manager.d.ts.map +1 -1
  129. package/dist/multi-agent/agent-process-manager.js +103 -34
  130. package/dist/multi-agent/agent-process-manager.js.map +1 -1
  131. package/dist/multi-agent/runtime-process.d.ts +3 -0
  132. package/dist/multi-agent/runtime-process.d.ts.map +1 -1
  133. package/dist/multi-agent/runtime-process.js +10 -2
  134. package/dist/multi-agent/runtime-process.js.map +1 -1
  135. package/dist/multi-agent/types.d.ts +12 -2
  136. package/dist/multi-agent/types.d.ts.map +1 -1
  137. package/dist/multi-agent/types.js.map +1 -1
  138. package/dist/multi-agent/workflow-types.d.ts +1 -1
  139. package/dist/multi-agent/workflow-types.d.ts.map +1 -1
  140. package/dist/onboarding/complete-autonomous-prompt.d.ts +1 -1
  141. package/dist/onboarding/complete-autonomous-prompt.d.ts.map +1 -1
  142. package/dist/onboarding/complete-autonomous-prompt.js +9 -9
  143. package/dist/operator/situation-report.d.ts.map +1 -1
  144. package/dist/operator/situation-report.js +38 -23
  145. package/dist/operator/situation-report.js.map +1 -1
  146. package/dist/operator/temporal-runtime.d.ts.map +1 -1
  147. package/dist/operator/temporal-runtime.js +3 -1
  148. package/dist/operator/temporal-runtime.js.map +1 -1
  149. package/dist/operator/trigger-author.d.ts +13 -1
  150. package/dist/operator/trigger-author.d.ts.map +1 -1
  151. package/dist/operator/trigger-author.js +35 -0
  152. package/dist/operator/trigger-author.js.map +1 -1
  153. package/dist/operator/worker-run.d.ts.map +1 -1
  154. package/dist/operator/worker-run.js +10 -4
  155. package/dist/operator/worker-run.js.map +1 -1
  156. package/dist/scheduler/cron-worker.d.ts +8 -4
  157. package/dist/scheduler/cron-worker.d.ts.map +1 -1
  158. package/dist/scheduler/cron-worker.js +56 -39
  159. package/dist/scheduler/cron-worker.js.map +1 -1
  160. package/dist/setup/setup-actions.d.ts +26 -0
  161. package/dist/setup/setup-actions.d.ts.map +1 -0
  162. package/dist/setup/setup-actions.js +371 -0
  163. package/dist/setup/setup-actions.js.map +1 -0
  164. package/dist/setup/setup-prompt.d.ts +1 -1
  165. package/dist/setup/setup-prompt.d.ts.map +1 -1
  166. package/dist/setup/setup-prompt.js +28 -33
  167. package/dist/setup/setup-prompt.js.map +1 -1
  168. package/dist/setup/setup-server.d.ts +6 -1
  169. package/dist/setup/setup-server.d.ts.map +1 -1
  170. package/dist/setup/setup-server.js +55 -9
  171. package/dist/setup/setup-server.js.map +1 -1
  172. package/dist/setup/setup-websocket.d.ts +14 -2
  173. package/dist/setup/setup-websocket.d.ts.map +1 -1
  174. package/dist/setup/setup-websocket.js +121 -37
  175. package/dist/setup/setup-websocket.js.map +1 -1
  176. package/package.json +1 -1
  177. package/public/setup.html +9 -6
  178. package/public/viewer/js/modules/agents.js +5 -4
  179. package/public/viewer/js/modules/settings.js +34 -10
  180. package/public/viewer/src/modules/agents.ts +5 -4
  181. package/public/viewer/src/modules/settings.ts +49 -11
  182. package/public/viewer/src/utils/api.ts +3 -2
@@ -31,7 +31,7 @@ import {
31
31
 
32
32
  const logger = new DebugLogger('Settings');
33
33
 
34
- export type AgentBackend = 'claude' | 'codex';
34
+ export type AgentBackend = 'claude' | 'codex' | 'cline';
35
35
  type SettingsFilterValue = 'loading' | 'error' | 'success' | '';
36
36
  type SettingsPayloadToolConfig = {
37
37
  gateway: string[];
@@ -118,6 +118,13 @@ const MODEL_OPTIONS: Record<AgentBackend, readonly string[]> = {
118
118
  'claude-3-7-sonnet-20250219',
119
119
  'claude-3-haiku-20240307',
120
120
  ],
121
+ cline: ['deepseek/deepseek-v4-flash'],
122
+ };
123
+
124
+ const DEFAULT_MODEL: Record<AgentBackend, string> = {
125
+ claude: 'claude-sonnet-4-6',
126
+ codex: 'gpt-5.4',
127
+ cline: 'deepseek/deepseek-v4-flash',
121
128
  };
122
129
 
123
130
  export function getSettingsModelOptions(backend: AgentBackend, currentModel?: string): string[] {
@@ -819,14 +826,31 @@ export class SettingsModule {
819
826
  * Collect form data into config update object
820
827
  */
821
828
  collectFormData(): SettingsPayload {
822
- const backend = (this.getSelectValue('settings-agent-backend') || 'claude') as AgentBackend;
823
- const model = this.getSelectValue('settings-agent-model');
824
- const effort = (this.getSelectValue('settings-agent-effort') || 'medium') as EffortLevel;
829
+ const backend = (this.getSelectValue('settings-agent-backend') ||
830
+ this.config?.agent?.backend ||
831
+ 'claude') as AgentBackend;
832
+ const model = this.getSelectValue('settings-agent-model') || this.config?.agent?.model || '';
833
+ const effort = (this.getSelectValue('settings-agent-effort') ||
834
+ this.config?.agent?.effort ||
835
+ 'medium') as EffortLevel;
825
836
  const useClaudeCli = backend === 'claude';
826
- const resolvedModel = model || (backend === 'codex' ? 'gpt-5.4' : 'claude-sonnet-4-6');
837
+ const resolvedModel = this.getNormalizedModelForBackend(backend, model);
827
838
  const normalizedEffort = this.supportsEffortModel(resolvedModel)
828
839
  ? this.normalizeEffortForModel(resolvedModel, effort)
829
840
  : undefined;
841
+ const hasToolControls =
842
+ document.querySelectorAll<HTMLInputElement>('.gateway-tool, .mcp-tool').length > 0;
843
+ const configuredTools = this.config?.agent?.tools;
844
+ const tools: SettingsPayloadToolConfig = hasToolControls
845
+ ? this.collectToolModeData()
846
+ : {
847
+ gateway: configuredTools?.gateway ?? [],
848
+ mcp: configuredTools?.mcp ?? [],
849
+ mcp_config:
850
+ typeof configuredTools?.mcp_config === 'string'
851
+ ? configuredTools.mcp_config
852
+ : '~/.mama/mama-mcp-config.json',
853
+ };
830
854
 
831
855
  // Get token values - if empty and original was masked, keep original
832
856
  const discordToken = this.getTokenValue('settings-discord-token', this.config?.discord?.token);
@@ -878,9 +902,20 @@ export class SettingsModule {
878
902
  model: resolvedModel,
879
903
  // Effort for Claude 4.6 models (adaptive thinking). 'max' is Opus-only.
880
904
  effort: normalizedEffort,
881
- max_turns: this.parseIntegerInput('settings-agent-max-turns', 1, 100, 10),
882
- timeout: this.parseIntegerInput('settings-agent-timeout', 1, 600, 300) * 1000,
883
- tools: this.collectToolModeData(),
905
+ max_turns: this.parseIntegerInput(
906
+ 'settings-agent-max-turns',
907
+ 1,
908
+ 100,
909
+ this.config?.agent?.max_turns ?? 10
910
+ ),
911
+ timeout:
912
+ this.parseIntegerInput(
913
+ 'settings-agent-timeout',
914
+ 1,
915
+ 600,
916
+ Math.round((this.config?.agent?.timeout ?? 300000) / 1000)
917
+ ) * 1000,
918
+ tools,
884
919
  },
885
920
  token_budget: {
886
921
  // Keep existing integer constraint for daily limit to avoid partial values.
@@ -985,14 +1020,17 @@ export class SettingsModule {
985
1020
  getNormalizedModelForBackend(backend: AgentBackend, model: string): string {
986
1021
  const isCodexBackend = backend === 'codex';
987
1022
  if (!model) {
988
- return isCodexBackend ? 'gpt-5.4' : 'claude-sonnet-4-6';
1023
+ return DEFAULT_MODEL[backend];
989
1024
  }
990
1025
  const isClaudeModel = /^claude-/i.test(model);
991
1026
  if (isCodexBackend && isClaudeModel) {
992
- return 'gpt-5.4';
1027
+ return DEFAULT_MODEL.codex;
1028
+ }
1029
+ if (backend === 'cline' && (isClaudeModel || /^gpt-/i.test(model))) {
1030
+ return DEFAULT_MODEL.cline;
993
1031
  }
994
1032
  if (backend === 'claude' && !isClaudeModel) {
995
- return 'claude-sonnet-4-20250514';
1033
+ return DEFAULT_MODEL.claude;
996
1034
  }
997
1035
  return model;
998
1036
  }
@@ -155,6 +155,7 @@ export interface ApiHeartbeatConfig {
155
155
  export interface ApiAgentToolsConfig {
156
156
  gateway?: string[];
157
157
  mcp?: string[];
158
+ mcp_config?: string;
158
159
  [key: string]: unknown;
159
160
  }
160
161
 
@@ -162,7 +163,7 @@ export type EffortLevel = 'low' | 'medium' | 'high' | 'max';
162
163
  export type ApiValidationTriggerType = 'agent_test' | 'delegate_run' | 'system_run' | 'audit';
163
164
 
164
165
  export interface ApiAgentConfig {
165
- backend?: 'claude' | 'codex' | 'gemini';
166
+ backend?: 'claude' | 'codex' | 'cline';
166
167
  model?: string;
167
168
  effort?: EffortLevel;
168
169
  tools?: ApiAgentToolsConfig;
@@ -220,7 +221,7 @@ export interface MultiAgentAgent {
220
221
  status?: string;
221
222
  model?: string;
222
223
  effort?: EffortLevel;
223
- backend?: 'claude' | 'codex' | 'gemini';
224
+ backend?: 'claude' | 'codex' | 'cline';
224
225
  bot_token?: string;
225
226
  slack_bot_token?: string | null;
226
227
  slack_app_token?: string | null;