@geminixiang/mikan 1.0.0-beta.21 → 1.0.0-beta.23
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 +55 -0
- package/README.md +12 -8
- package/dist/adapters/discord/bot.d.ts.map +1 -1
- package/dist/adapters/discord/bot.js +13 -14
- package/dist/adapters/discord/bot.js.map +1 -1
- package/dist/adapters/intake.d.ts.map +1 -1
- package/dist/adapters/intake.js +5 -0
- package/dist/adapters/intake.js.map +1 -1
- package/dist/adapters/slack/bot.d.ts.map +1 -1
- package/dist/adapters/slack/bot.js +13 -2
- package/dist/adapters/slack/bot.js.map +1 -1
- package/dist/adapters/slack/types.d.ts +2 -0
- package/dist/adapters/slack/types.d.ts.map +1 -1
- package/dist/adapters/slack/types.js.map +1 -1
- package/dist/agent.d.ts.map +1 -1
- package/dist/agent.js +34 -24
- package/dist/agent.js.map +1 -1
- package/dist/cli/boot.d.ts +1 -1
- package/dist/cli/boot.d.ts.map +1 -1
- package/dist/cli/boot.js +7 -15
- package/dist/cli/boot.js.map +1 -1
- package/dist/commands/login.js +2 -2
- package/dist/commands/login.js.map +1 -1
- package/dist/commands/sandbox.d.ts.map +1 -1
- package/dist/commands/sandbox.js +4 -7
- package/dist/commands/sandbox.js.map +1 -1
- package/dist/commands/text.js +1 -1
- package/dist/commands/text.js.map +1 -1
- package/dist/config.d.ts.map +1 -1
- package/dist/config.js +12 -39
- package/dist/config.js.map +1 -1
- package/dist/execution-resolver.d.ts +6 -8
- package/dist/execution-resolver.d.ts.map +1 -1
- package/dist/execution-resolver.js +73 -107
- package/dist/execution-resolver.js.map +1 -1
- package/dist/harness/index.d.ts +1 -1
- package/dist/harness/index.d.ts.map +1 -1
- package/dist/harness/index.js.map +1 -1
- package/dist/harness/runner.d.ts +9 -6
- package/dist/harness/runner.d.ts.map +1 -1
- package/dist/harness/runner.js +42 -20
- package/dist/harness/runner.js.map +1 -1
- package/dist/harness/subagent-runner.d.ts +14 -13
- package/dist/harness/subagent-runner.d.ts.map +1 -1
- package/dist/harness/subagent-runner.js +116 -24
- package/dist/harness/subagent-runner.js.map +1 -1
- package/dist/harness/types.d.ts +14 -0
- package/dist/harness/types.d.ts.map +1 -1
- package/dist/harness/types.js.map +1 -1
- package/dist/harness/usage.d.ts +6 -0
- package/dist/harness/usage.d.ts.map +1 -0
- package/dist/harness/usage.js +32 -0
- package/dist/harness/usage.js.map +1 -0
- package/dist/index.d.ts +3 -2
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +1 -1
- package/dist/index.js.map +1 -1
- package/dist/main.js +19 -87
- package/dist/main.js.map +1 -1
- package/dist/runtime/conversation-runtime.d.ts.map +1 -1
- package/dist/runtime/conversation-runtime.js +23 -79
- package/dist/runtime/conversation-runtime.js.map +1 -1
- package/dist/runtime/session-lifecycle.d.ts +19 -0
- package/dist/runtime/session-lifecycle.d.ts.map +1 -0
- package/dist/runtime/session-lifecycle.js +76 -0
- package/dist/runtime/session-lifecycle.js.map +1 -0
- package/dist/runtime/types.d.ts +5 -0
- package/dist/runtime/types.d.ts.map +1 -1
- package/dist/runtime/types.js.map +1 -1
- package/dist/sandbox/agent-sandbox.d.ts +18 -0
- package/dist/sandbox/agent-sandbox.d.ts.map +1 -0
- package/dist/sandbox/agent-sandbox.js +234 -0
- package/dist/sandbox/agent-sandbox.js.map +1 -0
- package/dist/sandbox/cloudflare.d.ts.map +1 -1
- package/dist/sandbox/cloudflare.js +1 -0
- package/dist/sandbox/cloudflare.js.map +1 -1
- package/dist/sandbox/container.d.ts.map +1 -1
- package/dist/sandbox/container.js +1 -0
- package/dist/sandbox/container.js.map +1 -1
- package/dist/sandbox/host.d.ts.map +1 -1
- package/dist/sandbox/host.js +1 -0
- package/dist/sandbox/host.js.map +1 -1
- package/dist/sandbox/identity.d.ts +11 -16
- package/dist/sandbox/identity.d.ts.map +1 -1
- package/dist/sandbox/identity.js +32 -26
- package/dist/sandbox/identity.js.map +1 -1
- package/dist/sandbox/image.d.ts.map +1 -1
- package/dist/sandbox/image.js +1 -0
- package/dist/sandbox/image.js.map +1 -1
- package/dist/sandbox/index.d.ts +7 -7
- package/dist/sandbox/index.d.ts.map +1 -1
- package/dist/sandbox/index.js +13 -9
- package/dist/sandbox/index.js.map +1 -1
- package/dist/sandbox/types.d.ts +17 -16
- package/dist/sandbox/types.d.ts.map +1 -1
- package/dist/sandbox/types.js.map +1 -1
- package/dist/sessions/session-key.d.ts +9 -0
- package/dist/sessions/session-key.d.ts.map +1 -1
- package/dist/sessions/session-key.js +50 -2
- package/dist/sessions/session-key.js.map +1 -1
- package/dist/sessions/store.d.ts.map +1 -1
- package/dist/sessions/store.js +36 -8
- package/dist/sessions/store.js.map +1 -1
- package/dist/tools/sandbox.d.ts.map +1 -1
- package/dist/tools/sandbox.js +4 -5
- package/dist/tools/sandbox.js.map +1 -1
- package/dist/tools/subagent-slots.d.ts +3 -3
- package/dist/tools/subagent-slots.d.ts.map +1 -1
- package/dist/tools/subagent-slots.js +25 -10
- package/dist/tools/subagent-slots.js.map +1 -1
- package/dist/tools/subagent.d.ts +13 -2
- package/dist/tools/subagent.d.ts.map +1 -1
- package/dist/tools/subagent.js +16 -16
- package/dist/tools/subagent.js.map +1 -1
- package/dist/types.d.ts +14 -63
- package/dist/types.d.ts.map +1 -1
- package/dist/types.js.map +1 -1
- package/dist/vault/injection.d.ts +4 -14
- package/dist/vault/injection.d.ts.map +1 -1
- package/dist/vault/injection.js +5 -2
- package/dist/vault/injection.js.map +1 -1
- package/dist/vault/policy.d.ts +3 -3
- package/dist/vault/policy.d.ts.map +1 -1
- package/dist/vault/policy.js +6 -4
- package/dist/vault/policy.js.map +1 -1
- package/dist/vault/types.d.ts +4 -0
- package/dist/vault/types.d.ts.map +1 -1
- package/dist/vault/types.js.map +1 -1
- package/dist/web/admin/portal.js +2 -2
- package/dist/web/admin/portal.js.map +1 -1
- package/dist/workspace-projection/index.d.ts +5 -0
- package/dist/workspace-projection/index.d.ts.map +1 -0
- package/dist/workspace-projection/index.js +71 -0
- package/dist/workspace-projection/index.js.map +1 -0
- package/dist/workspace-projection/types.d.ts +7 -0
- package/dist/workspace-projection/types.d.ts.map +1 -0
- package/dist/workspace-projection/types.js +2 -0
- package/dist/workspace-projection/types.js.map +1 -0
- package/package.json +3 -3
- package/dist/sandbox/firecracker.d.ts +0 -18
- package/dist/sandbox/firecracker.d.ts.map +0 -1
- package/dist/sandbox/firecracker.js +0 -221
- package/dist/sandbox/firecracker.js.map +0 -1
- package/dist/sandbox/gondolin-bootstrap.d.ts +0 -26
- package/dist/sandbox/gondolin-bootstrap.d.ts.map +0 -1
- package/dist/sandbox/gondolin-bootstrap.js +0 -27
- package/dist/sandbox/gondolin-bootstrap.js.map +0 -1
- package/dist/sandbox/gondolin-contract.d.ts +0 -125
- package/dist/sandbox/gondolin-contract.d.ts.map +0 -1
- package/dist/sandbox/gondolin-contract.js +0 -155
- package/dist/sandbox/gondolin-contract.js.map +0 -1
- package/dist/sandbox/gondolin-fleet.d.ts +0 -104
- package/dist/sandbox/gondolin-fleet.d.ts.map +0 -1
- package/dist/sandbox/gondolin-fleet.js +0 -330
- package/dist/sandbox/gondolin-fleet.js.map +0 -1
- package/dist/sandbox/gondolin-gateway.d.ts +0 -86
- package/dist/sandbox/gondolin-gateway.d.ts.map +0 -1
- package/dist/sandbox/gondolin-gateway.js +0 -407
- package/dist/sandbox/gondolin-gateway.js.map +0 -1
- package/dist/sandbox/gondolin-inventory.d.ts +0 -75
- package/dist/sandbox/gondolin-inventory.d.ts.map +0 -1
- package/dist/sandbox/gondolin-inventory.js +0 -257
- package/dist/sandbox/gondolin-inventory.js.map +0 -1
- package/dist/sandbox/gondolin-join.d.ts +0 -62
- package/dist/sandbox/gondolin-join.d.ts.map +0 -1
- package/dist/sandbox/gondolin-join.js +0 -261
- package/dist/sandbox/gondolin-join.js.map +0 -1
- package/dist/sandbox/gondolin-nfs-advisory.d.ts +0 -15
- package/dist/sandbox/gondolin-nfs-advisory.d.ts.map +0 -1
- package/dist/sandbox/gondolin-nfs-advisory.js +0 -60
- package/dist/sandbox/gondolin-nfs-advisory.js.map +0 -1
- package/dist/sandbox/gondolin-placement.d.ts +0 -30
- package/dist/sandbox/gondolin-placement.d.ts.map +0 -1
- package/dist/sandbox/gondolin-placement.js +0 -77
- package/dist/sandbox/gondolin-placement.js.map +0 -1
- package/dist/sandbox/gondolin-recovery.d.ts +0 -33
- package/dist/sandbox/gondolin-recovery.d.ts.map +0 -1
- package/dist/sandbox/gondolin-recovery.js +0 -39
- package/dist/sandbox/gondolin-recovery.js.map +0 -1
- package/dist/sandbox/gondolin-remote.d.ts +0 -70
- package/dist/sandbox/gondolin-remote.d.ts.map +0 -1
- package/dist/sandbox/gondolin-remote.js +0 -325
- package/dist/sandbox/gondolin-remote.js.map +0 -1
- package/dist/sandbox/gondolin-worker-client.d.ts +0 -135
- package/dist/sandbox/gondolin-worker-client.d.ts.map +0 -1
- package/dist/sandbox/gondolin-worker-client.js +0 -323
- package/dist/sandbox/gondolin-worker-client.js.map +0 -1
- package/dist/sandbox/gondolin-worker-main.d.ts +0 -2
- package/dist/sandbox/gondolin-worker-main.d.ts.map +0 -1
- package/dist/sandbox/gondolin-worker-main.js +0 -22
- package/dist/sandbox/gondolin-worker-main.js.map +0 -1
- package/dist/sandbox/gondolin-worker.d.ts +0 -17
- package/dist/sandbox/gondolin-worker.d.ts.map +0 -1
- package/dist/sandbox/gondolin-worker.js +0 -201
- package/dist/sandbox/gondolin-worker.js.map +0 -1
- package/dist/sandbox/gondolin.d.ts +0 -53
- package/dist/sandbox/gondolin.d.ts.map +0 -1
- package/dist/sandbox/gondolin.js +0 -429
- package/dist/sandbox/gondolin.js.map +0 -1
package/dist/agent.js
CHANGED
|
@@ -172,12 +172,12 @@ function buildEnvDescription(sandboxType, workspaceRoot) {
|
|
|
172
172
|
- Bash commands start in: ${workspaceRoot}
|
|
173
173
|
- Install tools with the container's package manager
|
|
174
174
|
- Your changes persist across sessions`;
|
|
175
|
-
case "
|
|
176
|
-
return `You are running inside a
|
|
175
|
+
case "agent-sandbox":
|
|
176
|
+
return `You are running inside a Kata-isolated Agent Sandbox microVM.
|
|
177
177
|
- Runtime workspace root: ${workspaceRoot}
|
|
178
|
-
-
|
|
179
|
-
-
|
|
180
|
-
- Your
|
|
178
|
+
- Bash commands start in: ${workspaceRoot}
|
|
179
|
+
- The workspace is shared with the mikan control plane
|
|
180
|
+
- Your sandbox is released after its idle timeout`;
|
|
181
181
|
case "cloudflare":
|
|
182
182
|
return `You are running through a Cloudflare Sandbox bridge.
|
|
183
183
|
- Runtime workspace root: ${workspaceRoot}
|
|
@@ -205,8 +205,7 @@ export function resolveTriggerAttribution(message) {
|
|
|
205
205
|
function buildSystemPrompt(workspacePath, conversationId, conversationKind, currentUserId, memory, sandboxConfig, platform, skills) {
|
|
206
206
|
const { workspaceRoot, conversationPath, scratchPath } = buildRuntimePaths(workspacePath, conversationId);
|
|
207
207
|
const sandboxType = sandboxConfig.type;
|
|
208
|
-
const isContainerLike = sandboxType === "container" || sandboxType === "image";
|
|
209
|
-
const isFirecracker = sandboxType === "firecracker";
|
|
208
|
+
const isContainerLike = sandboxType === "container" || sandboxType === "image" || sandboxType === "agent-sandbox";
|
|
210
209
|
// Format channel mappings
|
|
211
210
|
const channelMappings = platform.channels.length > 0
|
|
212
211
|
? platform.channels.map((c) => `${c.id}\t#${c.name}`).join("\n")
|
|
@@ -325,7 +324,7 @@ Update this file whenever you modify the environment. On fresh container, read i
|
|
|
325
324
|
Format: \`{"date":"...","ts":"...","user":"...","userName":"...","text":"...","isMessagingBot":false}\`
|
|
326
325
|
The log contains user messages and your final responses (not tool calls/results).
|
|
327
326
|
Use \`log.jsonl\` for quick grep-style history. Use \`${conversationPath}/sessions/\` when you need structured turns, tool outputs, or thread/session lineage.
|
|
328
|
-
${isContainerLike
|
|
327
|
+
${isContainerLike ? "Install jq using the runtime image's package manager." : ""}
|
|
329
328
|
\`\`\`bash
|
|
330
329
|
# Recent messages
|
|
331
330
|
tail -30 log.jsonl | jq -c '{date: .date[0:19], user: (.userName // .user), text}'
|
|
@@ -695,7 +694,7 @@ function buildThreadSessionName(message) {
|
|
|
695
694
|
}
|
|
696
695
|
function createRunnerExecutionContext(sandboxConfig, vaultManager, provisioner, workspaceDir, hostWorkspacePath) {
|
|
697
696
|
const executionResolver = vaultManager && sandboxConfig.type !== "host"
|
|
698
|
-
? new ActorExecutionResolver(sandboxConfig, vaultManager, provisioner, workspaceDir
|
|
697
|
+
? new ActorExecutionResolver(sandboxConfig, vaultManager, provisioner, workspaceDir)
|
|
699
698
|
: undefined;
|
|
700
699
|
// activeExecutor is replaced at the start of each run() call when executionResolver
|
|
701
700
|
// is present, so the stable `executor` wrapper always delegates to the latest resolved value.
|
|
@@ -770,6 +769,7 @@ async function createConfiguredAgentSession(params) {
|
|
|
770
769
|
// Host-only dirs under the state dir: extension code runs in the mikan
|
|
771
770
|
// process, so it must never load from workspace paths — those are mounted
|
|
772
771
|
// into sandbox containers and agent-writable (sandbox escape otherwise).
|
|
772
|
+
let session;
|
|
773
773
|
const extensionsResult = await loadExtensions({
|
|
774
774
|
dirs: defaultExtensionDirs(conversationId, effectiveStateDir()),
|
|
775
775
|
context: { conversationId, workspaceDir, model, thinkingLevel },
|
|
@@ -779,14 +779,24 @@ async function createConfiguredAgentSession(params) {
|
|
|
779
779
|
platformNotifier,
|
|
780
780
|
platformReactor,
|
|
781
781
|
platformUploader,
|
|
782
|
-
runSubagentService: (request, extensionTools) =>
|
|
783
|
-
|
|
784
|
-
|
|
785
|
-
|
|
786
|
-
|
|
787
|
-
|
|
788
|
-
|
|
789
|
-
|
|
782
|
+
runSubagentService: (request, extensionTools) => {
|
|
783
|
+
const activeParent = session?.isActiveRun ? session : undefined;
|
|
784
|
+
return runSubagent({
|
|
785
|
+
request,
|
|
786
|
+
defaultModel: model,
|
|
787
|
+
thinkingLevel,
|
|
788
|
+
models,
|
|
789
|
+
workspaceDir,
|
|
790
|
+
availableTools: [...tools, ...extensionTools],
|
|
791
|
+
slots: globalSubagentSlots,
|
|
792
|
+
...(activeParent
|
|
793
|
+
? {
|
|
794
|
+
parentMessages: [...activeParent.messages],
|
|
795
|
+
onUsage: (usage) => activeParent.foldExternalUsage(usage),
|
|
796
|
+
}
|
|
797
|
+
: {}),
|
|
798
|
+
});
|
|
799
|
+
},
|
|
790
800
|
}),
|
|
791
801
|
});
|
|
792
802
|
const contributedTools = extensionsResult.registry.getContributedTools();
|
|
@@ -803,12 +813,11 @@ async function createConfiguredAgentSession(params) {
|
|
|
803
813
|
models,
|
|
804
814
|
workspaceDir,
|
|
805
815
|
availableTools: [...tools, ...contributedTools],
|
|
806
|
-
|
|
807
|
-
|
|
808
|
-
// earlier call into a loud error instead of a silently dropped fold.
|
|
816
|
+
slots: globalSubagentSlots,
|
|
817
|
+
parentMessages: [...session.messages],
|
|
809
818
|
onUsage: (usage) => session.foldExternalUsage(usage),
|
|
810
|
-
})
|
|
811
|
-
|
|
819
|
+
}));
|
|
820
|
+
session = new MikanAgentSession({
|
|
812
821
|
systemPrompt,
|
|
813
822
|
model,
|
|
814
823
|
thinkingLevel,
|
|
@@ -817,12 +826,13 @@ async function createConfiguredAgentSession(params) {
|
|
|
817
826
|
sessionStore,
|
|
818
827
|
extensions: extensionsResult.registry,
|
|
819
828
|
});
|
|
820
|
-
const
|
|
829
|
+
const activeSession = session;
|
|
830
|
+
const reloaded = activeSession.reloadFromSession();
|
|
821
831
|
if (reloaded > 0) {
|
|
822
832
|
log.logInfo(`[${conversationId}] Reloaded ${reloaded} messages from session context`);
|
|
823
833
|
}
|
|
824
834
|
return {
|
|
825
|
-
session,
|
|
835
|
+
session: activeSession,
|
|
826
836
|
extensionSkills: extensionsResult.skills,
|
|
827
837
|
extensionRegistry: extensionsResult.registry,
|
|
828
838
|
disposeExtensions: extensionsResult.dispose,
|