gestalt-mobile 0.33.0 → 0.34.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/dist/client/assets/index-CPQBJDsg.css +1 -0
- package/dist/client/assets/index-nivA6-l4.js +38 -0
- package/dist/client/index.html +2 -2
- package/dist/server/server/cli.js +28 -1
- package/dist/server/server/composition.js +1 -0
- package/dist/server/server/features/autopilot/application/policy.js +2 -2
- package/dist/server/server/features/catalog/get-bootstrap/use-case.js +1 -0
- package/dist/server/shared/contracts/component-version.js +6 -0
- package/package.json +1 -1
- package/dist/client/assets/index-ClFAZNxC.js +0 -38
- package/dist/client/assets/index-Jem9eobi.css +0 -1
package/dist/client/index.html
CHANGED
|
@@ -16,8 +16,8 @@ SPDX-License-Identifier: AGPL-3.0-or-later
|
|
|
16
16
|
<link rel="icon" href="/icons/gestalt-mobile-192.png" />
|
|
17
17
|
<link rel="apple-touch-icon" href="/icons/gestalt-mobile-180.png" />
|
|
18
18
|
<title>Gestalt Mobile</title>
|
|
19
|
-
<script type="module" crossorigin src="/assets/index-
|
|
20
|
-
<link rel="stylesheet" crossorigin href="/assets/index-
|
|
19
|
+
<script type="module" crossorigin src="/assets/index-nivA6-l4.js"></script>
|
|
20
|
+
<link rel="stylesheet" crossorigin href="/assets/index-CPQBJDsg.css">
|
|
21
21
|
</head>
|
|
22
22
|
<body>
|
|
23
23
|
<div id="app"></div>
|
|
@@ -28,6 +28,30 @@ Options:
|
|
|
28
28
|
--skills list List saved global skill profiles without starting the server
|
|
29
29
|
--help Show this help
|
|
30
30
|
--version Show the installed version`;
|
|
31
|
+
function managedVersion(value) {
|
|
32
|
+
return value && /^[A-Za-z0-9][A-Za-z0-9.+_-]{0,99}$/.test(value) ? value : null;
|
|
33
|
+
}
|
|
34
|
+
export function componentVersions(mobileVersion, codexVersion, environment = process.env) {
|
|
35
|
+
return [
|
|
36
|
+
{
|
|
37
|
+
id: 'gestalt',
|
|
38
|
+
label: 'Gestalt manager',
|
|
39
|
+
version: managedVersion(environment.GESTALT_MANAGER_VERSION),
|
|
40
|
+
},
|
|
41
|
+
{ id: 'gestalt-mobile', label: 'Gestalt Mobile', version: mobileVersion },
|
|
42
|
+
{
|
|
43
|
+
id: 'gestalt-agents',
|
|
44
|
+
label: 'Gestalt Agents',
|
|
45
|
+
version: managedVersion(environment.GESTALT_AGENTS_VERSION),
|
|
46
|
+
},
|
|
47
|
+
{
|
|
48
|
+
id: 'context-mode',
|
|
49
|
+
label: 'Context Mode',
|
|
50
|
+
version: managedVersion(environment.GESTALT_CONTEXT_MODE_VERSION),
|
|
51
|
+
},
|
|
52
|
+
{ id: 'codex', label: 'Codex CLI', version: codexVersion },
|
|
53
|
+
];
|
|
54
|
+
}
|
|
31
55
|
export async function runStartupDoctor(cwd) {
|
|
32
56
|
if (process.env.GESTALT_STARTUP_DIAGNOSTICS_DONE === '1')
|
|
33
57
|
return { ok: true, report: '' };
|
|
@@ -180,6 +204,8 @@ export async function runCli(dependencies = {}) {
|
|
|
180
204
|
stderr.write(diagnosis.report);
|
|
181
205
|
if (!diagnosis.ok)
|
|
182
206
|
stderr.write('WARNING: Startup diagnostics reported a problem; Gestalt Mobile will continue so it can show recovery controls.\n');
|
|
207
|
+
const installedCodexVersion = await (dependencies.probeCodexVersion ?? probeCodexVersion)();
|
|
208
|
+
const mobileVersion = await packageVersion(moduleUrl);
|
|
183
209
|
const app = await (dependencies.compose ?? composeRelayApp)({
|
|
184
210
|
root: config.root,
|
|
185
211
|
dataDir: config.dataDir,
|
|
@@ -187,7 +213,8 @@ export async function runCli(dependencies = {}) {
|
|
|
187
213
|
passkeyAuthEnabled: config.passkeyAuthEnabled,
|
|
188
214
|
staticDir: packagedClientDir(moduleUrl),
|
|
189
215
|
profiles: new LauncherProfileCatalog(),
|
|
190
|
-
installedCodexVersion
|
|
216
|
+
installedCodexVersion,
|
|
217
|
+
componentVersions: componentVersions(mobileVersion, installedCodexVersion, dependencies.environment),
|
|
191
218
|
startAppServers: true,
|
|
192
219
|
homeDirectory: dependencies.homeDirectory,
|
|
193
220
|
explicitSkillProfile,
|
|
@@ -3,8 +3,8 @@
|
|
|
3
3
|
* Designed by Denis Roio <jaromil@dyne.org>
|
|
4
4
|
* SPDX-License-Identifier: AGPL-3.0-or-later
|
|
5
5
|
*/
|
|
6
|
-
export const AUTOPILOT_PROMPT_VERSION = '
|
|
7
|
-
export const AUTOPILOT_CONTINUATION_PROMPT = 'Inspect the active supervised Org Plan. Refer to every L1 as L<a> and each nested L2 as L<a>.<b>, using one-based positions. For a subagent dedicated to that position, use the collaboration-safe task_name l<a> or l<a>_<b> and refer to it by its canonical L label. If the active L1 is still WIP and its executor stopped or is idle after a partial report or L2 checkpoint, call followup_task on that same executor before sending any response. Treat a status question as an interruption: answer briefly, then perform that continuation in the same turn.
|
|
6
|
+
export const AUTOPILOT_PROMPT_VERSION = 'v7';
|
|
7
|
+
export const AUTOPILOT_CONTINUATION_PROMPT = 'Inspect the active supervised Org Plan. Refer to every L1 as L<a> and each nested L2 as L<a>.<b>, using one-based positions. For a subagent dedicated to that position, use the collaboration-safe task_name l<a> or l<a>_<b> and refer to it by its canonical L label. If the active L1 is still WIP and its executor stopped or is idle after a partial report or L2 checkpoint, call followup_task on that same executor before sending any response. Treat a status question as an interruption: answer briefly, then perform that continuation in the same turn. Before sending any blocker response or yielding because progress cannot continue safely, call gestalt_org_plan_attention for the matching decision-table blocker; never rely on blocker prose as the signal. Do not call it for routine progress or a recoverable failure. When the Autopilot probe is active, register gestalt_autopilot_wait_lease with an observable wake condition, declare genuine attention, or immediately do actionable work; never acknowledge waiting in prose. Do not send a status-only response.';
|
|
8
8
|
export const AUTOPILOT_EXECUTOR_CONTINUATION_PROMPT = 'Continue the same assigned Org L1 from its durable state. A prior turn ending did not complete the objective. Consume any supplied process result, take the next legal L2 action, and report only at the L1 review boundary or through structured attention.';
|
|
9
9
|
/** Builds a physical launch instruction while keeping durable L1 identity canonical. */
|
|
10
10
|
export function autopilotExecutorLaunchPrompt(identity) {
|