@jungjaehoon/mama-os 0.20.1 → 0.22.0
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.
- package/CHANGELOG.md +31 -0
- package/README.md +12 -4
- package/dist/agent/agent-loop.d.ts.map +1 -1
- package/dist/agent/agent-loop.js +76 -11
- package/dist/agent/agent-loop.js.map +1 -1
- package/dist/agent/code-act/host-bridge.d.ts.map +1 -1
- package/dist/agent/code-act/host-bridge.js +88 -3
- package/dist/agent/code-act/host-bridge.js.map +1 -1
- package/dist/agent/codex-mcp-process.d.ts +1 -0
- package/dist/agent/codex-mcp-process.d.ts.map +1 -1
- package/dist/agent/codex-mcp-process.js +3 -2
- package/dist/agent/codex-mcp-process.js.map +1 -1
- package/dist/agent/gateway-tool-executor.d.ts +24 -11
- package/dist/agent/gateway-tool-executor.d.ts.map +1 -1
- package/dist/agent/gateway-tool-executor.js +349 -30
- package/dist/agent/gateway-tool-executor.js.map +1 -1
- package/dist/agent/gateway-tools.md +7 -2
- package/dist/agent/model-runner.d.ts +8 -0
- package/dist/agent/model-runner.d.ts.map +1 -1
- package/dist/agent/model-runner.js.map +1 -1
- package/dist/agent/os-agent-capabilities.md +13 -12
- package/dist/agent/persistent-cli-adapter.d.ts +6 -0
- package/dist/agent/persistent-cli-adapter.d.ts.map +1 -1
- package/dist/agent/persistent-cli-adapter.js +21 -10
- package/dist/agent/persistent-cli-adapter.js.map +1 -1
- package/dist/agent/tool-registry.d.ts.map +1 -1
- package/dist/agent/tool-registry.js +33 -2
- package/dist/agent/tool-registry.js.map +1 -1
- package/dist/agent/types.d.ts +30 -2
- package/dist/agent/types.d.ts.map +1 -1
- package/dist/agent/types.js.map +1 -1
- package/dist/api/graph-api.d.ts.map +1 -1
- package/dist/api/graph-api.js +78 -5
- package/dist/api/graph-api.js.map +1 -1
- package/dist/api/index.d.ts +8 -1
- package/dist/api/index.d.ts.map +1 -1
- package/dist/api/index.js +18 -12
- package/dist/api/index.js.map +1 -1
- package/dist/api/operator-handler.d.ts +19 -0
- package/dist/api/operator-handler.d.ts.map +1 -0
- package/dist/api/operator-handler.js +106 -0
- package/dist/api/operator-handler.js.map +1 -0
- package/dist/api/operator-summary.d.ts +3 -0
- package/dist/api/operator-summary.d.ts.map +1 -0
- package/dist/api/operator-summary.js +72 -0
- package/dist/api/operator-summary.js.map +1 -0
- package/dist/api/operator-tasks-handler.d.ts +7 -0
- package/dist/api/operator-tasks-handler.d.ts.map +1 -0
- package/dist/api/operator-tasks-handler.js +165 -0
- package/dist/api/operator-tasks-handler.js.map +1 -0
- package/dist/api/report-handler.d.ts +7 -0
- package/dist/api/report-handler.d.ts.map +1 -1
- package/dist/api/report-handler.js +30 -0
- package/dist/api/report-handler.js.map +1 -1
- package/dist/api/report-persistence.d.ts +17 -0
- package/dist/api/report-persistence.d.ts.map +1 -0
- package/dist/api/report-persistence.js +91 -0
- package/dist/api/report-persistence.js.map +1 -0
- package/dist/cli/commands/start.d.ts.map +1 -1
- package/dist/cli/commands/start.js +402 -250
- package/dist/cli/commands/start.js.map +1 -1
- package/dist/cli/config/config-manager.d.ts.map +1 -1
- package/dist/cli/config/config-manager.js +93 -55
- package/dist/cli/config/config-manager.js.map +1 -1
- package/dist/cli/config/types.d.ts +17 -2
- package/dist/cli/config/types.d.ts.map +1 -1
- package/dist/cli/config/types.js +4 -0
- package/dist/cli/config/types.js.map +1 -1
- package/dist/cli/runtime/agent-loop-init.d.ts +3 -1
- package/dist/cli/runtime/agent-loop-init.d.ts.map +1 -1
- package/dist/cli/runtime/agent-loop-init.js +16 -7
- package/dist/cli/runtime/agent-loop-init.js.map +1 -1
- package/dist/cli/runtime/api-routes-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-routes-init.js +503 -259
- package/dist/cli/runtime/api-routes-init.js.map +1 -1
- package/dist/cli/runtime/api-server-init.d.ts.map +1 -1
- package/dist/cli/runtime/api-server-init.js +12 -7
- package/dist/cli/runtime/api-server-init.js.map +1 -1
- package/dist/cli/runtime/connector-init.d.ts +19 -1
- package/dist/cli/runtime/connector-init.d.ts.map +1 -1
- package/dist/cli/runtime/connector-init.js +32 -2
- package/dist/cli/runtime/connector-init.js.map +1 -1
- package/dist/cli/runtime/gateway-init.d.ts.map +1 -1
- package/dist/cli/runtime/gateway-init.js +3 -1
- package/dist/cli/runtime/gateway-init.js.map +1 -1
- package/dist/cli/runtime/memory-agent-init.d.ts +2 -1
- package/dist/cli/runtime/memory-agent-init.d.ts.map +1 -1
- package/dist/cli/runtime/memory-agent-init.js +15 -3
- package/dist/cli/runtime/memory-agent-init.js.map +1 -1
- package/dist/cli/runtime/message-router-config.d.ts +4 -0
- package/dist/cli/runtime/message-router-config.d.ts.map +1 -0
- package/dist/cli/runtime/message-router-config.js +11 -0
- package/dist/cli/runtime/message-router-config.js.map +1 -0
- package/dist/cli/runtime/scheduler-init.d.ts.map +1 -1
- package/dist/cli/runtime/scheduler-init.js +12 -12
- package/dist/cli/runtime/scheduler-init.js.map +1 -1
- package/dist/connectors/framework/polling-scheduler.d.ts.map +1 -1
- package/dist/connectors/framework/polling-scheduler.js +53 -2
- package/dist/connectors/framework/polling-scheduler.js.map +1 -1
- package/dist/connectors/framework/types.d.ts +8 -0
- package/dist/connectors/framework/types.d.ts.map +1 -1
- package/dist/connectors/kagemusha/query-tools.d.ts.map +1 -1
- package/dist/connectors/kagemusha/query-tools.js +14 -3
- package/dist/connectors/kagemusha/query-tools.js.map +1 -1
- package/dist/connectors/slack/index.d.ts.map +1 -1
- package/dist/connectors/slack/index.js +3 -1
- package/dist/connectors/slack/index.js.map +1 -1
- package/dist/connectors/trello/index.d.ts.map +1 -1
- package/dist/connectors/trello/index.js +6 -2
- package/dist/connectors/trello/index.js.map +1 -1
- package/dist/db/agent-store.d.ts +5 -0
- package/dist/db/agent-store.d.ts.map +1 -1
- package/dist/db/agent-store.js +6 -3
- package/dist/db/agent-store.js.map +1 -1
- package/dist/db/migrations/agent-activity-tool-name.d.ts +8 -0
- package/dist/db/migrations/agent-activity-tool-name.d.ts.map +1 -0
- package/dist/db/migrations/agent-activity-tool-name.js +24 -0
- package/dist/db/migrations/agent-activity-tool-name.js.map +1 -0
- package/dist/db/migrations/wiki-artifacts.d.ts +3 -0
- package/dist/db/migrations/wiki-artifacts.d.ts.map +1 -0
- package/dist/db/migrations/wiki-artifacts.js +24 -0
- package/dist/db/migrations/wiki-artifacts.js.map +1 -0
- package/dist/envelope/run-guard.d.ts +10 -0
- package/dist/envelope/run-guard.d.ts.map +1 -0
- package/dist/envelope/run-guard.js +19 -0
- package/dist/envelope/run-guard.js.map +1 -0
- package/dist/gateways/message-router.d.ts.map +1 -1
- package/dist/gateways/message-router.js +15 -3
- package/dist/gateways/message-router.js.map +1 -1
- package/dist/gateways/types.d.ts +4 -0
- package/dist/gateways/types.d.ts.map +1 -1
- package/dist/multi-agent/agent-event-bus.d.ts +14 -0
- package/dist/multi-agent/agent-event-bus.d.ts.map +1 -1
- package/dist/multi-agent/agent-event-bus.js +34 -0
- package/dist/multi-agent/agent-event-bus.js.map +1 -1
- package/dist/multi-agent/conductor-persona.js +2 -2
- package/dist/multi-agent/dashboard-agent-persona.d.ts +6 -2
- package/dist/multi-agent/dashboard-agent-persona.d.ts.map +1 -1
- package/dist/multi-agent/dashboard-agent-persona.js +65 -32
- package/dist/multi-agent/dashboard-agent-persona.js.map +1 -1
- package/dist/multi-agent/memory-agent-persona.d.ts +1 -1
- package/dist/multi-agent/memory-agent-persona.d.ts.map +1 -1
- package/dist/multi-agent/memory-agent-persona.js +25 -4
- package/dist/multi-agent/memory-agent-persona.js.map +1 -1
- package/dist/multi-agent/runtime-process.d.ts +4 -2
- package/dist/multi-agent/runtime-process.d.ts.map +1 -1
- package/dist/multi-agent/runtime-process.js +7 -4
- package/dist/multi-agent/runtime-process.js.map +1 -1
- package/dist/multi-agent/types.d.ts +1 -1
- package/dist/multi-agent/wiki-agent-persona.d.ts +7 -1
- package/dist/multi-agent/wiki-agent-persona.d.ts.map +1 -1
- package/dist/multi-agent/wiki-agent-persona.js +82 -68
- package/dist/multi-agent/wiki-agent-persona.js.map +1 -1
- package/dist/operator/action-verifier.d.ts +50 -0
- package/dist/operator/action-verifier.d.ts.map +1 -0
- package/dist/operator/action-verifier.js +68 -0
- package/dist/operator/action-verifier.js.map +1 -0
- package/dist/operator/board-reconcile.d.ts +62 -0
- package/dist/operator/board-reconcile.d.ts.map +1 -0
- package/dist/operator/board-reconcile.js +160 -0
- package/dist/operator/board-reconcile.js.map +1 -0
- package/dist/operator/board-slot-instructions.d.ts +26 -0
- package/dist/operator/board-slot-instructions.d.ts.map +1 -0
- package/dist/operator/board-slot-instructions.js +76 -0
- package/dist/operator/board-slot-instructions.js.map +1 -0
- package/dist/operator/connector-delta-repo.d.ts +33 -0
- package/dist/operator/connector-delta-repo.d.ts.map +1 -0
- package/dist/operator/connector-delta-repo.js +0 -0
- package/dist/operator/connector-delta-repo.js.map +1 -0
- package/dist/operator/mama-memory-port.d.ts +13 -0
- package/dist/operator/mama-memory-port.d.ts.map +1 -0
- package/dist/operator/mama-memory-port.js +35 -0
- package/dist/operator/mama-memory-port.js.map +1 -0
- package/dist/operator/operator-interfaces.d.ts +136 -0
- package/dist/operator/operator-interfaces.d.ts.map +1 -0
- package/dist/operator/operator-interfaces.js +15 -0
- package/dist/operator/operator-interfaces.js.map +1 -0
- package/dist/operator/operator-trigger-loop.d.ts +119 -0
- package/dist/operator/operator-trigger-loop.d.ts.map +1 -0
- package/dist/operator/operator-trigger-loop.js +267 -0
- package/dist/operator/operator-trigger-loop.js.map +1 -0
- package/dist/operator/report-run.d.ts +78 -0
- package/dist/operator/report-run.d.ts.map +1 -0
- package/dist/operator/report-run.js +141 -0
- package/dist/operator/report-run.js.map +1 -0
- package/dist/operator/report-scheduler.d.ts +66 -0
- package/dist/operator/report-scheduler.d.ts.map +1 -0
- package/dist/operator/report-scheduler.js +135 -0
- package/dist/operator/report-scheduler.js.map +1 -0
- package/dist/operator/situation-report.d.ts +90 -0
- package/dist/operator/situation-report.d.ts.map +1 -0
- package/dist/operator/situation-report.js +221 -0
- package/dist/operator/situation-report.js.map +1 -0
- package/dist/operator/task-ledger.d.ts +96 -0
- package/dist/operator/task-ledger.d.ts.map +1 -0
- package/dist/operator/task-ledger.js +277 -0
- package/dist/operator/task-ledger.js.map +1 -0
- package/dist/operator/trigger-author.d.ts +45 -0
- package/dist/operator/trigger-author.d.ts.map +1 -0
- package/dist/operator/trigger-author.js +217 -0
- package/dist/operator/trigger-author.js.map +1 -0
- package/dist/operator/trigger-evolve.d.ts +31 -0
- package/dist/operator/trigger-evolve.d.ts.map +1 -0
- package/dist/operator/trigger-evolve.js +51 -0
- package/dist/operator/trigger-evolve.js.map +1 -0
- package/dist/operator/trigger-fire.d.ts +29 -0
- package/dist/operator/trigger-fire.d.ts.map +1 -0
- package/dist/operator/trigger-fire.js +41 -0
- package/dist/operator/trigger-fire.js.map +1 -0
- package/dist/operator/trigger-matcher.d.ts +19 -0
- package/dist/operator/trigger-matcher.d.ts.map +1 -0
- package/dist/operator/trigger-matcher.js +61 -0
- package/dist/operator/trigger-matcher.js.map +1 -0
- package/dist/operator/trigger-registry.d.ts +36 -0
- package/dist/operator/trigger-registry.d.ts.map +1 -0
- package/dist/operator/trigger-registry.js +135 -0
- package/dist/operator/trigger-registry.js.map +1 -0
- package/dist/operator/trigger-review.d.ts +23 -0
- package/dist/operator/trigger-review.d.ts.map +1 -0
- package/dist/operator/trigger-review.js +127 -0
- package/dist/operator/trigger-review.js.map +1 -0
- package/dist/operator/trigger-types.d.ts +84 -0
- package/dist/operator/trigger-types.d.ts.map +1 -0
- package/dist/operator/trigger-types.js +14 -0
- package/dist/operator/trigger-types.js.map +1 -0
- package/dist/scheduler/cron-worker.d.ts.map +1 -1
- package/dist/scheduler/cron-worker.js +3 -1
- package/dist/scheduler/cron-worker.js.map +1 -1
- package/dist/security/security-monitor.d.ts.map +1 -1
- package/dist/security/security-monitor.js +1 -0
- package/dist/security/security-monitor.js.map +1 -1
- package/dist/wiki/obsidian-writer.d.ts +1 -1
- package/dist/wiki/obsidian-writer.d.ts.map +1 -1
- package/dist/wiki/obsidian-writer.js +67 -27
- package/dist/wiki/obsidian-writer.js.map +1 -1
- package/dist/wiki/path-safety.d.ts +2 -0
- package/dist/wiki/path-safety.d.ts.map +1 -0
- package/dist/wiki/path-safety.js +40 -0
- package/dist/wiki/path-safety.js.map +1 -0
- package/dist/wiki/types.d.ts +4 -2
- package/dist/wiki/types.d.ts.map +1 -1
- package/dist/wiki/types.js +1 -1
- package/dist/wiki/types.js.map +1 -1
- package/dist/wiki-artifacts/normalization.d.ts +8 -0
- package/dist/wiki-artifacts/normalization.d.ts.map +1 -0
- package/dist/wiki-artifacts/normalization.js +41 -0
- package/dist/wiki-artifacts/normalization.js.map +1 -0
- package/dist/wiki-artifacts/types.d.ts +52 -0
- package/dist/wiki-artifacts/types.d.ts.map +1 -0
- package/dist/wiki-artifacts/types.js +3 -0
- package/dist/wiki-artifacts/types.js.map +1 -0
- package/dist/wiki-artifacts/wiki-publish-adapter.d.ts +14 -0
- package/dist/wiki-artifacts/wiki-publish-adapter.d.ts.map +1 -0
- package/dist/wiki-artifacts/wiki-publish-adapter.js +71 -0
- package/dist/wiki-artifacts/wiki-publish-adapter.js.map +1 -0
- package/package.json +5 -3
- package/public/ui/assets/index-CKOJQYXA.css +1 -0
- package/public/ui/assets/index-OSgiwL24.js +62 -0
- package/public/ui/index.html +14 -0
- package/public/ui/theme-init.js +20 -0
- package/public/viewer/js/utils/api.js +2 -2
- package/public/viewer/src/utils/api.ts +9 -2
- package/public/viewer/sw.js +1 -1
- package/public/viewer/viewer.html +17 -27
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
<!doctype html>
|
|
2
|
+
<html lang="en">
|
|
3
|
+
<head>
|
|
4
|
+
<meta charset="UTF-8" />
|
|
5
|
+
<meta name="viewport" content="width=device-width, initial-scale=1.0" />
|
|
6
|
+
<title>MAMA Operator</title>
|
|
7
|
+
<script src="/ui/theme-init.js"></script>
|
|
8
|
+
<script type="module" crossorigin src="/ui/assets/index-OSgiwL24.js"></script>
|
|
9
|
+
<link rel="stylesheet" crossorigin href="/ui/assets/index-CKOJQYXA.css">
|
|
10
|
+
</head>
|
|
11
|
+
<body>
|
|
12
|
+
<div id="root"></div>
|
|
13
|
+
</body>
|
|
14
|
+
</html>
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
/* global localStorage, window, document */
|
|
2
|
+
(function () {
|
|
3
|
+
let theme = null;
|
|
4
|
+
try {
|
|
5
|
+
// Keep in sync with THEME_STORAGE_KEY in src/lib/theme.ts.
|
|
6
|
+
const stored = localStorage.getItem('mama-ui-theme');
|
|
7
|
+
if (stored === 'light' || stored === 'dark') {
|
|
8
|
+
theme = stored;
|
|
9
|
+
}
|
|
10
|
+
} catch (_error) {
|
|
11
|
+
theme = null;
|
|
12
|
+
}
|
|
13
|
+
if (!theme) {
|
|
14
|
+
const prefersDark =
|
|
15
|
+
typeof window.matchMedia === 'function' &&
|
|
16
|
+
window.matchMedia('(prefers-color-scheme: dark)').matches;
|
|
17
|
+
theme = prefersDark ? 'dark' : 'light';
|
|
18
|
+
}
|
|
19
|
+
document.documentElement.setAttribute('data-theme', theme);
|
|
20
|
+
})();
|
|
@@ -62,10 +62,10 @@ export class API {
|
|
|
62
62
|
* @param {Object} body - Request body
|
|
63
63
|
* @returns {Promise<Object>} Response data
|
|
64
64
|
*/
|
|
65
|
-
static async post(endpoint, body) {
|
|
65
|
+
static async post(endpoint, body, options = {}) {
|
|
66
66
|
const response = await fetch(endpoint, {
|
|
67
67
|
method: 'POST',
|
|
68
|
-
headers: { 'Content-Type': 'application/json' },
|
|
68
|
+
headers: { 'Content-Type': 'application/json', ...(options?.headers ?? {}) },
|
|
69
69
|
body: JSON.stringify(body),
|
|
70
70
|
});
|
|
71
71
|
if (!response.ok) {
|
|
@@ -13,6 +13,9 @@ export type QueryValue = string | number | boolean | null | undefined;
|
|
|
13
13
|
export type QueryParams = Record<string, QueryValue>;
|
|
14
14
|
export type ApiErrorPayload = { message?: string; error?: string };
|
|
15
15
|
export type JsonRecord = Record<string, unknown>;
|
|
16
|
+
export interface ApiRequestOptions {
|
|
17
|
+
headers?: Record<string, string>;
|
|
18
|
+
}
|
|
16
19
|
|
|
17
20
|
export interface GraphNode {
|
|
18
21
|
id: string | number;
|
|
@@ -602,10 +605,14 @@ export class API {
|
|
|
602
605
|
* @param {Object} body - Request body
|
|
603
606
|
* @returns {Promise<Object>} Response data
|
|
604
607
|
*/
|
|
605
|
-
static async post<T = unknown, B = unknown>(
|
|
608
|
+
static async post<T = unknown, B = unknown>(
|
|
609
|
+
endpoint: string,
|
|
610
|
+
body: B,
|
|
611
|
+
options: ApiRequestOptions | null = {}
|
|
612
|
+
): Promise<T> {
|
|
606
613
|
const response = await fetch(endpoint, {
|
|
607
614
|
method: 'POST',
|
|
608
|
-
headers: { 'Content-Type': 'application/json' },
|
|
615
|
+
headers: { 'Content-Type': 'application/json', ...(options?.headers ?? {}) },
|
|
609
616
|
body: JSON.stringify(body),
|
|
610
617
|
});
|
|
611
618
|
|
package/public/viewer/sw.js
CHANGED
|
@@ -214,6 +214,7 @@
|
|
|
214
214
|
font-family: 'Inter', 'Noto Sans KR', sans-serif;
|
|
215
215
|
font-size: 13px;
|
|
216
216
|
font-weight: 600;
|
|
217
|
+
text-decoration: none;
|
|
217
218
|
cursor: pointer;
|
|
218
219
|
transition:
|
|
219
220
|
background 0.15s ease,
|
|
@@ -280,6 +281,7 @@
|
|
|
280
281
|
color: #6b6560;
|
|
281
282
|
font-size: 10px;
|
|
282
283
|
font-weight: 600;
|
|
284
|
+
text-decoration: none;
|
|
283
285
|
font-family: 'Inter', 'Noto Sans KR', sans-serif;
|
|
284
286
|
cursor: pointer;
|
|
285
287
|
transition: color 0.15s ease;
|
|
@@ -428,16 +430,12 @@
|
|
|
428
430
|
<span>MAMA</span>
|
|
429
431
|
</a>
|
|
430
432
|
<div class="mama-nav-items">
|
|
433
|
+
<a class="mama-nav-item" href="/ui" title="Operator Board (beta)">
|
|
434
|
+
<i data-lucide="zap"></i>
|
|
435
|
+
<span>Operator (beta)</span>
|
|
436
|
+
</a>
|
|
431
437
|
<button
|
|
432
438
|
class="mama-nav-item mama-nav-active"
|
|
433
|
-
data-tab="dashboard"
|
|
434
|
-
onclick="window.switchTab && window.switchTab('dashboard')"
|
|
435
|
-
>
|
|
436
|
-
<i data-lucide="layout-dashboard"></i>
|
|
437
|
-
<span>Dashboard</span>
|
|
438
|
-
</button>
|
|
439
|
-
<button
|
|
440
|
-
class="mama-nav-item"
|
|
441
439
|
data-tab="feed"
|
|
442
440
|
onclick="window.switchTab && window.switchTab('feed')"
|
|
443
441
|
>
|
|
@@ -1244,7 +1242,7 @@
|
|
|
1244
1242
|
<span
|
|
1245
1243
|
id="chat-tab-indicator"
|
|
1246
1244
|
class="text-[10px] bg-gray-100 text-gray-500 px-1.5 py-0.5 rounded-md font-medium"
|
|
1247
|
-
>
|
|
1245
|
+
>Feed</span
|
|
1248
1246
|
>
|
|
1249
1247
|
<span
|
|
1250
1248
|
class="status-indicator w-1.5 h-1.5 rounded-full bg-gray-300 flex-shrink-0"
|
|
@@ -1471,14 +1469,6 @@
|
|
|
1471
1469
|
|
|
1472
1470
|
<!-- Mobile Bottom Tab Bar -->
|
|
1473
1471
|
<div id="mama-mobile-tabs">
|
|
1474
|
-
<button
|
|
1475
|
-
class="mama-mobile-tab mama-nav-active"
|
|
1476
|
-
data-tab="dashboard"
|
|
1477
|
-
onclick="window.switchTab && window.switchTab('dashboard')"
|
|
1478
|
-
>
|
|
1479
|
-
<i data-lucide="layout-dashboard"></i>
|
|
1480
|
-
<span>Home</span>
|
|
1481
|
-
</button>
|
|
1482
1472
|
<button
|
|
1483
1473
|
class="mama-mobile-tab"
|
|
1484
1474
|
data-tab="chat"
|
|
@@ -1504,7 +1494,7 @@
|
|
|
1504
1494
|
<span>Memory</span>
|
|
1505
1495
|
</button>
|
|
1506
1496
|
<button
|
|
1507
|
-
class="mama-mobile-tab"
|
|
1497
|
+
class="mama-mobile-tab mama-nav-active"
|
|
1508
1498
|
data-tab="more"
|
|
1509
1499
|
onclick="window.toggleMobileMore && window.toggleMobileMore()"
|
|
1510
1500
|
>
|
|
@@ -2030,7 +2020,7 @@ export MAMA_AUTH_TOKEN="your-secure-token-here"</pre
|
|
|
2030
2020
|
};
|
|
2031
2021
|
|
|
2032
2022
|
const STATE = {
|
|
2033
|
-
currentTab: '
|
|
2023
|
+
currentTab: 'feed',
|
|
2034
2024
|
theme: 'dark',
|
|
2035
2025
|
graphLoaded: false,
|
|
2036
2026
|
};
|
|
@@ -2041,11 +2031,6 @@ export MAMA_AUTH_TOKEN="your-secure-token-here"</pre
|
|
|
2041
2031
|
// Close mobile More menu if open
|
|
2042
2032
|
const moreMenu = document.getElementById('mama-mobile-more');
|
|
2043
2033
|
if (moreMenu) moreMenu.style.display = 'none';
|
|
2044
|
-
const moreBtn = document.querySelector('#mama-mobile-tabs [data-tab="more"]');
|
|
2045
|
-
const overflowTabs = ['feed', 'wiki', 'logs', 'settings'];
|
|
2046
|
-
if (moreBtn) {
|
|
2047
|
-
moreBtn.classList.toggle('mama-nav-active', overflowTabs.includes(tabName));
|
|
2048
|
-
}
|
|
2049
2034
|
|
|
2050
2035
|
// Also highlight the source tab in More menu if it was selected from there
|
|
2051
2036
|
document.querySelectorAll('#mama-mobile-more .mama-mobile-tab').forEach((btn) => {
|
|
@@ -2067,6 +2052,11 @@ export MAMA_AUTH_TOKEN="your-secure-token-here"</pre
|
|
|
2067
2052
|
document.querySelectorAll('#mama-mobile-tabs .mama-mobile-tab').forEach((btn) => {
|
|
2068
2053
|
btn.classList.toggle('mama-nav-active', btn.dataset.tab === tabName);
|
|
2069
2054
|
});
|
|
2055
|
+
const moreBtn = document.querySelector('#mama-mobile-tabs [data-tab="more"]');
|
|
2056
|
+
const overflowTabs = ['feed', 'wiki', 'logs', 'settings'];
|
|
2057
|
+
if (moreBtn) {
|
|
2058
|
+
moreBtn.classList.toggle('mama-nav-active', overflowTabs.includes(tabName));
|
|
2059
|
+
}
|
|
2070
2060
|
|
|
2071
2061
|
// Legacy: update any remaining [data-tab] buttons outside sidebar/mobile
|
|
2072
2062
|
document.querySelectorAll('[data-tab]').forEach((btn) => {
|
|
@@ -3043,8 +3033,8 @@ export MAMA_AUTH_TOKEN="your-secure-token-here"</pre
|
|
|
3043
3033
|
initTheme();
|
|
3044
3034
|
// Initialize floating chat panel bindings (session init is lazy, on first open)
|
|
3045
3035
|
chat.initFloating();
|
|
3046
|
-
// Default to
|
|
3047
|
-
switchTab('
|
|
3036
|
+
// Default to feed tab
|
|
3037
|
+
switchTab('feed');
|
|
3048
3038
|
});
|
|
3049
3039
|
|
|
3050
3040
|
// Listen for postMessage from skill deployment
|
|
@@ -3118,7 +3108,7 @@ Be friendly and concise.`,
|
|
|
3118
3108
|
};
|
|
3119
3109
|
|
|
3120
3110
|
window.askContextHelp = function () {
|
|
3121
|
-
const currentTab = STATE.currentTab || '
|
|
3111
|
+
const currentTab = STATE.currentTab || 'feed';
|
|
3122
3112
|
const prompt = TAB_HELP_PROMPTS[currentTab];
|
|
3123
3113
|
if (!prompt) return;
|
|
3124
3114
|
|