@aria-cli/cli 1.0.57 → 1.0.59
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/bin/aria.mjs +799 -668
- package/package.json +17 -76
- package/dist/.tsbuildinfo +0 -1
- package/dist/attached-local-control-client.js +0 -826
- package/dist/bootstrap-local-control-client.js +0 -2
- package/dist/capability-aware-method-proxy.js +0 -42
- package/dist/cli-context.js +0 -160
- package/dist/commands/arions.js +0 -174
- package/dist/commands/auth.js +0 -123
- package/dist/commands/daemon.js +0 -367
- package/dist/commands/definitions.js +0 -176
- package/dist/commands/index.js +0 -80
- package/dist/commands/login-handler.js +0 -1108
- package/dist/commands/logout-handler.js +0 -92
- package/dist/commands/memory-handlers.js +0 -89
- package/dist/commands/pairing.js +0 -60
- package/dist/commands/runtime-cutover-reset-command.js +0 -12
- package/dist/commands/runtime-cutover-reset.js +0 -265
- package/dist/commands/terminal-setup.js +0 -84
- package/dist/config/aria-config.js +0 -238
- package/dist/config/index.js +0 -3
- package/dist/config/loader.js +0 -97
- package/dist/config.js +0 -142
- package/dist/daemon-info.js +0 -10
- package/dist/ensure-daemon.js +0 -128
- package/dist/entrypoints/command-mode.js +0 -5
- package/dist/entrypoints/daemon.js +0 -50
- package/dist/entrypoints/headless-stdio.js +0 -25
- package/dist/entrypoints/interactive.js +0 -80
- package/dist/event-loop-watchdog.js +0 -73
- package/dist/headless/auth-orchestrator.js +0 -508
- package/dist/headless/auth-service.js +0 -43
- package/dist/headless/bootstrap-fast-path.js +0 -112
- package/dist/headless/call-command.js +0 -143
- package/dist/headless/daemon-service.js +0 -318
- package/dist/headless/hook-actions.js +0 -235
- package/dist/headless/hook-service.js +0 -42
- package/dist/headless/kernel-services.js +0 -216
- package/dist/headless/kernel.js +0 -785
- package/dist/headless/operations/arion.js +0 -119
- package/dist/headless/operations/auth.js +0 -45
- package/dist/headless/operations/client.js +0 -31
- package/dist/headless/operations/config.js +0 -69
- package/dist/headless/operations/daemon.js +0 -47
- package/dist/headless/operations/hook.js +0 -56
- package/dist/headless/operations/index.js +0 -11
- package/dist/headless/operations/memory.js +0 -102
- package/dist/headless/operations/message.js +0 -279
- package/dist/headless/operations/model.js +0 -100
- package/dist/headless/operations/peer.js +0 -56
- package/dist/headless/operations/run.js +0 -24
- package/dist/headless/operations/session.js +0 -90
- package/dist/headless/operations/system.js +0 -19
- package/dist/headless/operations/utils.js +0 -35
- package/dist/headless/run-orchestrator.js +0 -703
- package/dist/headless/stdio-server.js +0 -439
- package/dist/history/SessionHistory.js +0 -8
- package/dist/history/SessionHistoryClient.js +0 -186
- package/dist/history/conversation-message.js +0 -112
- package/dist/history/index.js +0 -8
- package/dist/history/jsonl-replay.js +0 -154
- package/dist/history/repair-tool-pairing.js +0 -84
- package/dist/history/stall-phase-bridge.js +0 -11
- package/dist/history/turn-accumulator.js +0 -427
- package/dist/index.js +0 -7
- package/dist/ink-repl.js +0 -4183
- package/dist/local-control-bootstrap.js +0 -26
- package/dist/local-control-client.js +0 -2
- package/dist/local-control-error-reporting.js +0 -34
- package/dist/local-control-http-client.js +0 -362
- package/dist/local-control-lazy-wrapper.js +0 -363
- package/dist/local-control-manager.js +0 -146
- package/dist/main.js +0 -62
- package/dist/network-security.js +0 -62
- package/dist/networking-server.js +0 -38
- package/dist/peer-identity.js +0 -23
- package/dist/polling-subscription.js +0 -34
- package/dist/relaunch.js +0 -617
- package/dist/release-notes.js +0 -35
- package/dist/repl-cleanup.js +0 -47
- package/dist/runtime/configure-bun-sqlite.js +0 -3
- package/dist/runtime/crash-handlers.js +0 -111
- package/dist/runtime/interactive-invocation.js +0 -39
- package/dist/runtime/internal-mode.js +0 -14
- package/dist/runtime/launch-spec.js +0 -64
- package/dist/runtime/owner-lease.js +0 -44
- package/dist/runtime/public-mode.js +0 -20
- package/dist/runtime/run-internal-mode.js +0 -18
- package/dist/runtime/runtime-kind.js +0 -32
- package/dist/runtime/spawn-aria.js +0 -38
- package/dist/selectable-client.js +0 -2
- package/dist/selectable-peer.js +0 -2
- package/dist/session.js +0 -203
- package/dist/slash-commands.js +0 -80
- package/dist/sounds.js +0 -210
- package/dist/ui/App.js +0 -526
- package/dist/ui/components/AnthropicMethodPicker.js +0 -6
- package/dist/ui/components/ArionPrompt.js +0 -15
- package/dist/ui/components/AutocompleteDropdown.js +0 -23
- package/dist/ui/components/AutonomySelector.js +0 -55
- package/dist/ui/components/Banner.js +0 -98
- package/dist/ui/components/ConversationHistory.js +0 -175
- package/dist/ui/components/CopilotDeviceLoginFlow.js +0 -88
- package/dist/ui/components/CopilotSourcePicker.js +0 -50
- package/dist/ui/components/Cost.js +0 -10
- package/dist/ui/components/CustomSelect/option-map.js +0 -30
- package/dist/ui/components/CustomSelect/select-option.js +0 -13
- package/dist/ui/components/CustomSelect/select.js +0 -42
- package/dist/ui/components/CustomSelect/use-select-state.js +0 -179
- package/dist/ui/components/CustomSelect/use-select.js +0 -15
- package/dist/ui/components/ErrorDisplay.js +0 -35
- package/dist/ui/components/FallbackToolUseRejectedMessage.js +0 -7
- package/dist/ui/components/FileEditToolUpdatedMessage.js +0 -57
- package/dist/ui/components/HandoffMarker.js +0 -18
- package/dist/ui/components/HighlightedCode.js +0 -21
- package/dist/ui/components/InputArea.js +0 -187
- package/dist/ui/components/Message.js +0 -25
- package/dist/ui/components/OAuthLoginFlow.js +0 -113
- package/dist/ui/components/OutputTruncation.js +0 -35
- package/dist/ui/components/PermissionPrompt.js +0 -79
- package/dist/ui/components/PipelineTimingPanel.js +0 -15
- package/dist/ui/components/ProviderMethodPicker.js +0 -61
- package/dist/ui/components/ProviderPicker.js +0 -63
- package/dist/ui/components/RenderItemView.js +0 -71
- package/dist/ui/components/Spinner.js +0 -46
- package/dist/ui/components/StatusBar.js +0 -95
- package/dist/ui/components/StreamingIndicator.js +0 -55
- package/dist/ui/components/StructuredDiff.js +0 -168
- package/dist/ui/components/TextInputOverlay.js +0 -43
- package/dist/ui/components/ThinkingBlock.js +0 -82
- package/dist/ui/components/ToolCost.js +0 -17
- package/dist/ui/components/ToolExecution.js +0 -61
- package/dist/ui/components/ToolHeader.js +0 -51
- package/dist/ui/components/ToolRenderLayoutContext.js +0 -14
- package/dist/ui/components/ToolResultWrapper.js +0 -6
- package/dist/ui/components/ToolUseLoader.js +0 -35
- package/dist/ui/components/TraceWaterfall.js +0 -91
- package/dist/ui/components/index.js +0 -33
- package/dist/ui/components/messages/AssistantTextMessage.js +0 -25
- package/dist/ui/components/messages/UserImageMessage.js +0 -12
- package/dist/ui/components/messages/UserTextMessage.js +0 -12
- package/dist/ui/components/overlays/ArionSelector.js +0 -68
- package/dist/ui/components/overlays/ClientSelector.js +0 -62
- package/dist/ui/components/overlays/CommandPalette.js +0 -67
- package/dist/ui/components/overlays/DaemonControl.js +0 -87
- package/dist/ui/components/overlays/InviteShareOverlay.js +0 -15
- package/dist/ui/components/overlays/JoinInviteOverlay.js +0 -32
- package/dist/ui/components/overlays/MemoryBrowser.js +0 -100
- package/dist/ui/components/overlays/MessageSelector.js +0 -123
- package/dist/ui/components/overlays/ModelSelector.js +0 -211
- package/dist/ui/components/overlays/PairRequestOverlay.js +0 -42
- package/dist/ui/components/overlays/PeerSelector.js +0 -84
- package/dist/ui/components/overlays/SessionSelector.js +0 -102
- package/dist/ui/components/overlays/SoundSelector.js +0 -86
- package/dist/ui/components/overlays/ThemeSelector.js +0 -139
- package/dist/ui/components/overlays/index.js +0 -15
- package/dist/ui/components/permissions/BashPermissionRequest/BashPermissionRequest.js +0 -53
- package/dist/ui/components/permissions/FallbackPermissionRequest.js +0 -56
- package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditPermissionRequest.js +0 -76
- package/dist/ui/components/permissions/FileEditPermissionRequest/FileEditToolDiff.js +0 -18
- package/dist/ui/components/permissions/FileWritePermissionRequest/FileWritePermissionRequest.js +0 -64
- package/dist/ui/components/permissions/FileWritePermissionRequest/FileWriteToolDiff.js +0 -26
- package/dist/ui/components/permissions/FilesystemPermissionRequest/FilesystemPermissionRequest.js +0 -141
- package/dist/ui/components/permissions/PermissionRequest.js +0 -70
- package/dist/ui/components/permissions/PermissionRequestTitle.js +0 -41
- package/dist/ui/components/permissions/hooks.js +0 -10
- package/dist/ui/components/permissions/toolUseOptions.js +0 -68
- package/dist/ui/components/permissions/utils.js +0 -10
- package/dist/ui/components/text-input/Cursor.js +0 -326
- package/dist/ui/components/text-input/TextInput.js +0 -231
- package/dist/ui/components/text-input/imagePaste.js +0 -28
- package/dist/ui/components/text-input/index.js +0 -6
- package/dist/ui/components/text-input/useDoublePress.js +0 -30
- package/dist/ui/components/text-input/useTextInput.js +0 -245
- package/dist/ui/components/tool-types.js +0 -9
- package/dist/ui/constants/figures.js +0 -4
- package/dist/ui/constants/index.js +0 -3
- package/dist/ui/display-mode.js +0 -93
- package/dist/ui/display-policy.js +0 -19
- package/dist/ui/hooks/index.js +0 -6
- package/dist/ui/hooks/useCommandAutocomplete.js +0 -93
- package/dist/ui/hooks/useDoublePress.js +0 -37
- package/dist/ui/hooks/useIndicatorState.js +0 -55
- package/dist/ui/hooks/useInterval.js +0 -23
- package/dist/ui/hooks/useKeyboardShortcuts.js +0 -127
- package/dist/ui/hooks/useTerminalSize.js +0 -55
- package/dist/ui/hooks/useUnifiedMessages.js +0 -117
- package/dist/ui/indicator-state.js +0 -44
- package/dist/ui/markdown/highlight.js +0 -44
- package/dist/ui/markdown/index.js +0 -1460
- package/dist/ui/markdown/tokenizer.js +0 -24
- package/dist/ui/render-item.js +0 -5
- package/dist/ui/screens/REPL.js +0 -119
- package/dist/ui/screens/approval-lifecycle.js +0 -38
- package/dist/ui/status-line.js +0 -72
- package/dist/ui/theme/index.js +0 -51
- package/dist/ui/theme/themes/claude-dark-daltonized.js +0 -51
- package/dist/ui/theme/themes/claude-dark.js +0 -50
- package/dist/ui/theme/themes/claude-light-daltonized.js +0 -51
- package/dist/ui/theme/themes/claude-light.js +0 -50
- package/dist/ui/theme/themes/dark-accessible.js +0 -18
- package/dist/ui/theme/themes/dark.js +0 -49
- package/dist/ui/theme/themes/light-accessible.js +0 -18
- package/dist/ui/theme/themes/light.js +0 -49
- package/dist/ui/theme/types.js +0 -3
- package/dist/ui/theme.js +0 -142
- package/dist/ui/to-render-items.js +0 -145
- package/dist/ui/tools/AgentTool/index.js +0 -30
- package/dist/ui/tools/ArchitectTool/index.js +0 -31
- package/dist/ui/tools/AskUserTool/index.js +0 -46
- package/dist/ui/tools/BashTool/BashToolResultMessage.js +0 -11
- package/dist/ui/tools/BashTool/OutputLine.js +0 -21
- package/dist/ui/tools/BashTool/index.js +0 -91
- package/dist/ui/tools/BrowseTool/index.js +0 -43
- package/dist/ui/tools/BrowserTool/index.js +0 -47
- package/dist/ui/tools/CbmTool/index.js +0 -188
- package/dist/ui/tools/CheckDelegationTool/index.js +0 -46
- package/dist/ui/tools/CheckMessagesTool/index.js +0 -85
- package/dist/ui/tools/CreateQuipTool/index.js +0 -30
- package/dist/ui/tools/CreateSkillTool/index.js +0 -22
- package/dist/ui/tools/CreateToolTool/index.js +0 -31
- package/dist/ui/tools/DelegateRemoteTool/index.js +0 -42
- package/dist/ui/tools/DeployTool/index.js +0 -47
- package/dist/ui/tools/FffTool/index.js +0 -103
- package/dist/ui/tools/FileEditTool/index.js +0 -67
- package/dist/ui/tools/FileReadTool/index.js +0 -68
- package/dist/ui/tools/FileWriteTool/index.js +0 -61
- package/dist/ui/tools/ForkTool/index.js +0 -47
- package/dist/ui/tools/FrgTool/index.js +0 -96
- package/dist/ui/tools/GetThreadTool/index.js +0 -39
- package/dist/ui/tools/GlobTool/index.js +0 -50
- package/dist/ui/tools/GrepTool/index.js +0 -84
- package/dist/ui/tools/HatchArionTool/index.js +0 -36
- package/dist/ui/tools/LearnSkillTool/index.js +0 -22
- package/dist/ui/tools/LearnTool/index.js +0 -43
- package/dist/ui/tools/LearnToolTool/index.js +0 -22
- package/dist/ui/tools/ListClientsTool/index.js +0 -39
- package/dist/ui/tools/LspTool/index.js +0 -261
- package/dist/ui/tools/MCPTool/index.js +0 -33
- package/dist/ui/tools/ManageNetworkTool/index.js +0 -53
- package/dist/ui/tools/MemoryReadTool/index.js +0 -64
- package/dist/ui/tools/MemoryWriteTool/index.js +0 -20
- package/dist/ui/tools/NotebookEditTool/index.js +0 -33
- package/dist/ui/tools/NotebookReadTool/index.js +0 -25
- package/dist/ui/tools/OutlookReadTool/index.js +0 -66
- package/dist/ui/tools/OutlookReplyTool/index.js +0 -49
- package/dist/ui/tools/OutlookSendTool/index.js +0 -49
- package/dist/ui/tools/PauseDelegationTool/index.js +0 -35
- package/dist/ui/tools/ProbeTool/index.js +0 -121
- package/dist/ui/tools/ProcessTool/index.js +0 -66
- package/dist/ui/tools/QuestListTool/index.js +0 -46
- package/dist/ui/tools/QuestReportTool/index.js +0 -49
- package/dist/ui/tools/QuestUpdateTool/index.js +0 -87
- package/dist/ui/tools/QuipCommentTool/index.js +0 -69
- package/dist/ui/tools/QuipReadTool/index.js +0 -71
- package/dist/ui/tools/RestArionTool/index.js +0 -32
- package/dist/ui/tools/RestartTool/index.js +0 -35
- package/dist/ui/tools/ResumeDelegationTool/index.js +0 -35
- package/dist/ui/tools/RetireArionTool/index.js +0 -32
- package/dist/ui/tools/RgTool/index.js +0 -73
- package/dist/ui/tools/SearchKnowledgeTool/index.js +0 -43
- package/dist/ui/tools/SearchMessagesTool/index.js +0 -43
- package/dist/ui/tools/SelfDiagnoseTool/index.js +0 -61
- package/dist/ui/tools/SendMessageTool/index.js +0 -45
- package/dist/ui/tools/SerenaTool/index.js +0 -124
- package/dist/ui/tools/SessionHistoryTool/index.js +0 -52
- package/dist/ui/tools/SgTool/index.js +0 -80
- package/dist/ui/tools/SlackReactTool/index.js +0 -41
- package/dist/ui/tools/SlackReadTool/index.js +0 -48
- package/dist/ui/tools/SlackSendTool/index.js +0 -45
- package/dist/ui/tools/SpawnWorkerTool/index.js +0 -33
- package/dist/ui/tools/StickerRequestTool/index.js +0 -19
- package/dist/ui/tools/ThinkTool/index.js +0 -17
- package/dist/ui/tools/UgTool/index.js +0 -108
- package/dist/ui/tools/UseSkillTool/index.js +0 -22
- package/dist/ui/tools/WakeArionTool/index.js +0 -32
- package/dist/ui/tools/WebFetchTool/index.js +0 -56
- package/dist/ui/tools/WebSearchTool/index.js +0 -44
- package/dist/ui/tools/lsTool/index.js +0 -58
- package/dist/ui/tools/registry.js +0 -197
- package/dist/ui/tools/tool-renderer.js +0 -11
- package/dist/ui/tools/truncation.js +0 -35
- package/dist/ui/types/anthropic.js +0 -4
- package/dist/ui/types/index.js +0 -2
- package/dist/ui/types/message.js +0 -3
- package/dist/ui/types/tool.js +0 -4
- package/dist/ui/utils/array.js +0 -4
- package/dist/ui/utils/cursor.js +0 -131
- package/dist/ui/utils/diff.js +0 -120
- package/dist/ui/utils/format.js +0 -42
- package/dist/ui/utils/fuzzy.js +0 -59
- package/dist/ui/utils/index.js +0 -11
- package/dist/ui/utils/keys.js +0 -8
- package/dist/ui/utils/patch.js +0 -17
- package/dist/ui/utils/risk.js +0 -114
- package/dist/ui/utils/terminal-image.js +0 -70
- package/dist/ui/utils/validation.js +0 -48
- package/dist/ui/verb-pairs.js +0 -248
- package/dist/ui.js +0 -131
- package/src/entrypoints/command-mode.ts +0 -5
- package/src/entrypoints/daemon.ts +0 -54
- package/src/entrypoints/headless-stdio.ts +0 -27
- package/src/entrypoints/interactive.ts +0 -112
- package/src/main.ts +0 -72
- package/src/runtime/configure-bun-sqlite.ts +0 -3
- package/src/runtime/crash-handlers.ts +0 -128
- package/src/runtime/interactive-invocation.test.ts +0 -42
- package/src/runtime/interactive-invocation.ts +0 -51
- package/src/runtime/internal-mode.test.ts +0 -19
- package/src/runtime/internal-mode.ts +0 -24
- package/src/runtime/launch-spec.test.ts +0 -26
- package/src/runtime/launch-spec.ts +0 -84
- package/src/runtime/owner-lease.ts +0 -52
- package/src/runtime/public-mode.test.ts +0 -18
- package/src/runtime/public-mode.ts +0 -19
- package/src/runtime/run-internal-mode.ts +0 -19
- package/src/runtime/runtime-kind.test.ts +0 -23
- package/src/runtime/runtime-kind.ts +0 -41
- package/src/runtime/spawn-aria.ts +0 -62
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import path from "node:path";
|
|
2
|
-
import { actionConsolidate, actionExtract, actionHarvest, actionIngest, actionReflect, } from "./hook-actions.js";
|
|
3
|
-
function defaultMemoryPath(arionName) {
|
|
4
|
-
return path.join("arions", arionName, "memory.db");
|
|
5
|
-
}
|
|
6
|
-
function toHookOutput(result) {
|
|
7
|
-
if (result.output && typeof result.output === "object") {
|
|
8
|
-
return result.output;
|
|
9
|
-
}
|
|
10
|
-
return { value: result.output };
|
|
11
|
-
}
|
|
12
|
-
export function createHookService(options) {
|
|
13
|
-
const resolveMemoryPath = () => process.env.ARIA_MEMORY_PATH ||
|
|
14
|
-
defaultMemoryPath(options.getArionName?.() ?? options.arionName);
|
|
15
|
-
const withMemoria = async (action) => {
|
|
16
|
-
const memoria = await options.cli.pool.get(options.resolveMemoriaPath ? await options.resolveMemoriaPath() : resolveMemoryPath());
|
|
17
|
-
return action(memoria);
|
|
18
|
-
};
|
|
19
|
-
return {
|
|
20
|
-
async extract(input, hookOptions) {
|
|
21
|
-
return withMemoria(async (memoria) => toHookOutput(await actionExtract(memoria, JSON.stringify(input.pairs ?? []), {
|
|
22
|
-
signal: hookOptions?.signal,
|
|
23
|
-
})));
|
|
24
|
-
},
|
|
25
|
-
async reflect(input, hookOptions) {
|
|
26
|
-
const payload = typeof input.conversation === "string"
|
|
27
|
-
? input.conversation
|
|
28
|
-
: JSON.stringify(input.messages ?? []);
|
|
29
|
-
return withMemoria(async (memoria) => toHookOutput(await actionReflect(memoria, options.cli.router, payload, hookOptions)));
|
|
30
|
-
},
|
|
31
|
-
async consolidate(_input, hookOptions) {
|
|
32
|
-
return withMemoria(async (memoria) => toHookOutput(await actionConsolidate(memoria, hookOptions)));
|
|
33
|
-
},
|
|
34
|
-
async ingest(_input, hookOptions) {
|
|
35
|
-
return withMemoria(async (memoria) => toHookOutput(await actionIngest(memoria, hookOptions)));
|
|
36
|
-
},
|
|
37
|
-
async harvest(input, hookOptions) {
|
|
38
|
-
return withMemoria(async (memoria) => toHookOutput(await actionHarvest(memoria, options.cli.router, input, hookOptions)));
|
|
39
|
-
},
|
|
40
|
-
};
|
|
41
|
-
}
|
|
42
|
-
//# sourceMappingURL=hook-service.js.map
|
|
@@ -1,216 +0,0 @@
|
|
|
1
|
-
import { ArionManager, ArionStorage, DEFAULT_SAFETY_CONFIG } from "@aria-cli/aria";
|
|
2
|
-
import { getDefaultModelByTier, resolveModelReference } from "@aria-cli/models";
|
|
3
|
-
import { getProviderOptions, handleLoginCommand } from "../commands/login-handler.js";
|
|
4
|
-
import { handleLogoutCommand } from "../commands/logout-handler.js";
|
|
5
|
-
import { loadConfig, saveConfig } from "../config.js";
|
|
6
|
-
import { getAvailableThemes, getTheme, setTheme } from "../ui/theme/index.js";
|
|
7
|
-
import { resolveCanonicalArionName } from "./bootstrap-fast-path.js";
|
|
8
|
-
async function createArionManager(cli) {
|
|
9
|
-
const storage = new ArionStorage(cli.ariaDir);
|
|
10
|
-
const manager = new ArionManager(storage, cli.memoriaFactory);
|
|
11
|
-
manager.setRouter(cli.router);
|
|
12
|
-
await manager.initialize();
|
|
13
|
-
return manager;
|
|
14
|
-
}
|
|
15
|
-
function selectModel(availableModels, requested) {
|
|
16
|
-
return resolveModelReference(requested, availableModels);
|
|
17
|
-
}
|
|
18
|
-
function defaultModel(tier) {
|
|
19
|
-
return getDefaultModelByTier((tier ?? "balanced"));
|
|
20
|
-
}
|
|
21
|
-
export function createHeadlessCapabilityServices(options) {
|
|
22
|
-
const cli = options.cli;
|
|
23
|
-
let activeArionName = resolveCanonicalArionName(cli.ariaDir, options.activeArionName ?? cli.config.activeArion ?? "ARIA");
|
|
24
|
-
let currentModelName;
|
|
25
|
-
let availableModels = [...cli.availableModels];
|
|
26
|
-
let managerPromise = null;
|
|
27
|
-
const memoriaByArion = new Map();
|
|
28
|
-
const getManager = async () => {
|
|
29
|
-
managerPromise ??= createArionManager(cli);
|
|
30
|
-
return managerPromise;
|
|
31
|
-
};
|
|
32
|
-
const resolveActiveArion = async () => {
|
|
33
|
-
const manager = await getManager();
|
|
34
|
-
const selected = await manager.get(activeArionName);
|
|
35
|
-
if (!selected) {
|
|
36
|
-
throw new Error(`Unable to resolve active Arion ${activeArionName}`);
|
|
37
|
-
}
|
|
38
|
-
return selected;
|
|
39
|
-
};
|
|
40
|
-
const resolveActiveMemoria = async () => {
|
|
41
|
-
const arion = await resolveActiveArion();
|
|
42
|
-
const cached = memoriaByArion.get(arion.name);
|
|
43
|
-
if (cached) {
|
|
44
|
-
return cached;
|
|
45
|
-
}
|
|
46
|
-
const manager = await getManager();
|
|
47
|
-
const memoria = await manager.getMemoria(arion);
|
|
48
|
-
if (!memoria) {
|
|
49
|
-
throw new Error(`Memoria is unavailable for Arion ${arion.name}`);
|
|
50
|
-
}
|
|
51
|
-
memoriaByArion.set(arion.name, memoria);
|
|
52
|
-
return memoria;
|
|
53
|
-
};
|
|
54
|
-
const arionManager = {
|
|
55
|
-
list: async () => (await getManager()).list(),
|
|
56
|
-
hatch: async (input) => (await getManager()).hatch(input),
|
|
57
|
-
get: async (name) => (await getManager()).get(name),
|
|
58
|
-
wake: async (name) => {
|
|
59
|
-
await (await getManager()).wake(name);
|
|
60
|
-
},
|
|
61
|
-
rest: async (name, serviceOptions) => {
|
|
62
|
-
await (await getManager()).rest(name, serviceOptions);
|
|
63
|
-
},
|
|
64
|
-
};
|
|
65
|
-
const config = {
|
|
66
|
-
async getTheme() {
|
|
67
|
-
return loadConfig().theme ?? getTheme().name;
|
|
68
|
-
},
|
|
69
|
-
async setTheme(theme) {
|
|
70
|
-
const normalized = theme.trim();
|
|
71
|
-
if (!getAvailableThemes().includes(normalized)) {
|
|
72
|
-
throw new Error(`Unknown theme: ${theme}`);
|
|
73
|
-
}
|
|
74
|
-
const current = loadConfig();
|
|
75
|
-
current.theme = normalized;
|
|
76
|
-
saveConfig(current);
|
|
77
|
-
setTheme(normalized);
|
|
78
|
-
return { theme: normalized };
|
|
79
|
-
},
|
|
80
|
-
async getAutonomy() {
|
|
81
|
-
return loadConfig().autonomy ?? DEFAULT_SAFETY_CONFIG.autonomy;
|
|
82
|
-
},
|
|
83
|
-
async setAutonomy(autonomy) {
|
|
84
|
-
if (!["minimal", "balanced", "high", "full"].includes(autonomy)) {
|
|
85
|
-
throw new Error(`Invalid autonomy level: ${autonomy}`);
|
|
86
|
-
}
|
|
87
|
-
const current = loadConfig();
|
|
88
|
-
current.autonomy = autonomy;
|
|
89
|
-
saveConfig(current);
|
|
90
|
-
return { autonomy };
|
|
91
|
-
},
|
|
92
|
-
async getActiveArion() {
|
|
93
|
-
return activeArionName;
|
|
94
|
-
},
|
|
95
|
-
async setActiveArion(name) {
|
|
96
|
-
const requestedArionName = name.trim() || "ARIA";
|
|
97
|
-
let nextArionName = resolveCanonicalArionName(cli.ariaDir, requestedArionName);
|
|
98
|
-
try {
|
|
99
|
-
const manager = await getManager();
|
|
100
|
-
const resolved = await manager.get(requestedArionName);
|
|
101
|
-
if (resolved?.name) {
|
|
102
|
-
nextArionName = resolved.name;
|
|
103
|
-
}
|
|
104
|
-
}
|
|
105
|
-
catch {
|
|
106
|
-
// Persist the best available canonical spelling even if runtime resolution fails.
|
|
107
|
-
}
|
|
108
|
-
const current = loadConfig();
|
|
109
|
-
current.activeArion = nextArionName;
|
|
110
|
-
saveConfig(current);
|
|
111
|
-
activeArionName = nextArionName;
|
|
112
|
-
},
|
|
113
|
-
};
|
|
114
|
-
const modelDiscovery = {
|
|
115
|
-
async listAvailable() {
|
|
116
|
-
return availableModels;
|
|
117
|
-
},
|
|
118
|
-
async refresh(force) {
|
|
119
|
-
availableModels = [...(await cli.refreshAvailableModels(force))];
|
|
120
|
-
return availableModels;
|
|
121
|
-
},
|
|
122
|
-
async getCurrentModel() {
|
|
123
|
-
if (currentModelName) {
|
|
124
|
-
return currentModelName;
|
|
125
|
-
}
|
|
126
|
-
const current = loadConfig();
|
|
127
|
-
try {
|
|
128
|
-
const arion = await resolveActiveArion();
|
|
129
|
-
if (typeof arion.preferredModel === "string" && arion.preferredModel.trim().length > 0) {
|
|
130
|
-
currentModelName =
|
|
131
|
-
resolveModelReference(arion.preferredModel)?.shortName ?? arion.preferredModel.trim();
|
|
132
|
-
return currentModelName;
|
|
133
|
-
}
|
|
134
|
-
}
|
|
135
|
-
catch {
|
|
136
|
-
// Fall back to the tier default when the active Arion is unavailable.
|
|
137
|
-
}
|
|
138
|
-
currentModelName = defaultModel(current.preferredTier ?? cli.config.preferredTier)?.shortName;
|
|
139
|
-
return currentModelName;
|
|
140
|
-
},
|
|
141
|
-
async setCurrentModel(model) {
|
|
142
|
-
const selected = selectModel(availableModels, model) ??
|
|
143
|
-
selectModel(await cli.refreshAvailableModels(true), model);
|
|
144
|
-
if (!selected) {
|
|
145
|
-
throw new Error(`Unknown model: ${model}`);
|
|
146
|
-
}
|
|
147
|
-
currentModelName = selected.shortName;
|
|
148
|
-
const current = loadConfig();
|
|
149
|
-
current.preferredTier = selected.tier;
|
|
150
|
-
saveConfig(current);
|
|
151
|
-
availableModels = [...(await cli.refreshAvailableModels(false))];
|
|
152
|
-
try {
|
|
153
|
-
const manager = await getManager();
|
|
154
|
-
const arion = await resolveActiveArion();
|
|
155
|
-
await manager.setPreferredModel(arion.name, selected.shortName);
|
|
156
|
-
}
|
|
157
|
-
catch {
|
|
158
|
-
// Persisted config is authoritative; per-Arion model affinity is best-effort.
|
|
159
|
-
}
|
|
160
|
-
return {
|
|
161
|
-
currentModel: selected.shortName,
|
|
162
|
-
tier: selected.tier,
|
|
163
|
-
};
|
|
164
|
-
},
|
|
165
|
-
async getSessionModel() {
|
|
166
|
-
return currentModelName;
|
|
167
|
-
},
|
|
168
|
-
};
|
|
169
|
-
void (async () => {
|
|
170
|
-
try {
|
|
171
|
-
const arion = await resolveActiveArion();
|
|
172
|
-
if (typeof arion.preferredModel === "string" && arion.preferredModel.trim().length > 0) {
|
|
173
|
-
currentModelName =
|
|
174
|
-
resolveModelReference(arion.preferredModel)?.shortName ?? arion.preferredModel.trim();
|
|
175
|
-
return;
|
|
176
|
-
}
|
|
177
|
-
}
|
|
178
|
-
catch {
|
|
179
|
-
// Ignore startup warmup failures; lazy getters handle fallback.
|
|
180
|
-
}
|
|
181
|
-
currentModelName = defaultModel(loadConfig().preferredTier ?? cli.config.preferredTier)?.shortName;
|
|
182
|
-
})();
|
|
183
|
-
const auth = {
|
|
184
|
-
async status() {
|
|
185
|
-
return { providers: getProviderOptions() };
|
|
186
|
-
},
|
|
187
|
-
async login(input) {
|
|
188
|
-
const args = typeof input.args === "string" ? input.args : "";
|
|
189
|
-
return handleLoginCommand(args);
|
|
190
|
-
},
|
|
191
|
-
async logout(input) {
|
|
192
|
-
const args = typeof input.args === "string" ? input.args : "";
|
|
193
|
-
return handleLogoutCommand(args);
|
|
194
|
-
},
|
|
195
|
-
};
|
|
196
|
-
const memoria = new Proxy({}, {
|
|
197
|
-
get(_target, prop) {
|
|
198
|
-
return async (...args) => {
|
|
199
|
-
const currentMemoria = await resolveActiveMemoria();
|
|
200
|
-
const method = currentMemoria[prop];
|
|
201
|
-
if (typeof method !== "function") {
|
|
202
|
-
throw new Error(`Memoria method ${String(prop)} is unavailable`);
|
|
203
|
-
}
|
|
204
|
-
return method.apply(currentMemoria, args);
|
|
205
|
-
};
|
|
206
|
-
},
|
|
207
|
-
});
|
|
208
|
-
return {
|
|
209
|
-
arionManager: options.overrides?.arionManager ?? arionManager,
|
|
210
|
-
auth: options.overrides?.auth ?? auth,
|
|
211
|
-
config: options.overrides?.config ?? config,
|
|
212
|
-
memoria: options.overrides?.memoria ?? memoria,
|
|
213
|
-
modelDiscovery: options.overrides?.modelDiscovery ?? modelDiscovery,
|
|
214
|
-
};
|
|
215
|
-
}
|
|
216
|
-
//# sourceMappingURL=kernel-services.js.map
|