apex-code 0.0.1-alpha.4 → 0.0.1-alpha.6
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 +78 -0
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +10 -1
- package/dist/cli.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +2 -2
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session-services.d.ts +20 -1
- package/dist/core/agent-session-services.d.ts.map +1 -1
- package/dist/core/agent-session-services.js +91 -1
- package/dist/core/agent-session-services.js.map +1 -1
- package/dist/core/agent-session.d.ts +17 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +28 -4
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/lsp/client.d.ts +76 -0
- package/dist/core/lsp/client.d.ts.map +1 -0
- package/dist/core/lsp/client.js +469 -0
- package/dist/core/lsp/client.js.map +1 -0
- package/dist/core/lsp/diagnostics.d.ts +47 -0
- package/dist/core/lsp/diagnostics.d.ts.map +1 -0
- package/dist/core/lsp/diagnostics.js +224 -0
- package/dist/core/lsp/diagnostics.js.map +1 -0
- package/dist/core/lsp/pool.d.ts +48 -0
- package/dist/core/lsp/pool.d.ts.map +1 -0
- package/dist/core/lsp/pool.js +150 -0
- package/dist/core/lsp/pool.js.map +1 -0
- package/dist/core/lsp/registry.d.ts +49 -0
- package/dist/core/lsp/registry.d.ts.map +1 -0
- package/dist/core/lsp/registry.js +215 -0
- package/dist/core/lsp/registry.js.map +1 -0
- package/dist/core/lsp/status.d.ts +23 -0
- package/dist/core/lsp/status.d.ts.map +1 -0
- package/dist/core/lsp/status.js +35 -0
- package/dist/core/lsp/status.js.map +1 -0
- package/dist/core/lsp/sync.d.ts +13 -0
- package/dist/core/lsp/sync.d.ts.map +1 -0
- package/dist/core/lsp/sync.js +71 -0
- package/dist/core/lsp/sync.js.map +1 -0
- package/dist/core/package-manager.d.ts.map +1 -1
- package/dist/core/package-manager.js +15 -0
- package/dist/core/package-manager.js.map +1 -1
- package/dist/core/project-trust.d.ts.map +1 -1
- package/dist/core/project-trust.js +1 -1
- package/dist/core/project-trust.js.map +1 -1
- package/dist/core/sandbox/cli-launch.d.ts +43 -0
- package/dist/core/sandbox/cli-launch.d.ts.map +1 -1
- package/dist/core/sandbox/cli-launch.js +70 -3
- package/dist/core/sandbox/cli-launch.js.map +1 -1
- package/dist/core/sandbox/cli-supervisor.d.ts +2 -0
- package/dist/core/sandbox/cli-supervisor.d.ts.map +1 -1
- package/dist/core/sandbox/cli-supervisor.js +1 -0
- package/dist/core/sandbox/cli-supervisor.js.map +1 -1
- package/dist/core/sdk.d.ts +4 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +10 -1
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/settings-manager.d.ts +3 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +3 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/skills.d.ts +19 -7
- package/dist/core/skills.d.ts.map +1 -1
- package/dist/core/skills.js +77 -19
- package/dist/core/skills.js.map +1 -1
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +1 -1
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +3 -3
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/core/tools/contract.d.ts +29 -2
- package/dist/core/tools/contract.d.ts.map +1 -1
- package/dist/core/tools/contract.js.map +1 -1
- package/dist/core/tools/diagnostics.d.ts +39 -0
- package/dist/core/tools/diagnostics.d.ts.map +1 -0
- package/dist/core/tools/diagnostics.js +62 -0
- package/dist/core/tools/diagnostics.js.map +1 -0
- package/dist/core/tools/edit.d.ts +10 -0
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +17 -8
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/index.d.ts +20 -3
- package/dist/core/tools/index.d.ts.map +1 -1
- package/dist/core/tools/index.js +18 -0
- package/dist/core/tools/index.js.map +1 -1
- package/dist/core/tools/lsp.d.ts +62 -0
- package/dist/core/tools/lsp.d.ts.map +1 -0
- package/dist/core/tools/lsp.js +216 -0
- package/dist/core/tools/lsp.js.map +1 -0
- package/dist/core/tools/skill-search.d.ts +32 -0
- package/dist/core/tools/skill-search.d.ts.map +1 -0
- package/dist/core/tools/skill-search.js +56 -0
- package/dist/core/tools/skill-search.js.map +1 -0
- package/dist/core/tools/write.d.ts +10 -0
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +16 -3
- package/dist/core/tools/write.js.map +1 -1
- package/dist/index.d.ts +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js.map +1 -1
- package/dist/modes/interactive/components/custom-editor.d.ts +49 -1
- package/dist/modes/interactive/components/custom-editor.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-editor.js +235 -1
- package/dist/modes/interactive/components/custom-editor.js.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.d.ts.map +1 -1
- package/dist/modes/interactive/components/first-time-setup.js +2 -1
- package/dist/modes/interactive/components/first-time-setup.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +1 -0
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/model-selector.d.ts +19 -6
- package/dist/modes/interactive/components/model-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/model-selector.js +172 -89
- package/dist/modes/interactive/components/model-selector.js.map +1 -1
- package/dist/modes/interactive/components/splash-header.d.ts +41 -0
- package/dist/modes/interactive/components/splash-header.d.ts.map +1 -0
- package/dist/modes/interactive/components/splash-header.js +145 -0
- package/dist/modes/interactive/components/splash-header.js.map +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +19 -15
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/theme/apex.json +94 -0
- package/dist/modes/interactive/theme/light.json +1 -1
- package/dist/modes/interactive/theme/theme.d.ts.map +1 -1
- package/dist/modes/interactive/theme/theme.js +6 -1
- package/dist/modes/interactive/theme/theme.js.map +1 -1
- package/dist/modes/rpc/rpc-mode.d.ts.map +1 -1
- package/dist/modes/rpc/rpc-mode.js +2 -1
- package/dist/modes/rpc/rpc-mode.js.map +1 -1
- package/dist/themes/apex-logo.d.ts +21 -0
- package/dist/themes/apex-logo.d.ts.map +1 -0
- package/dist/themes/apex-logo.js +31 -0
- package/dist/themes/apex-logo.js.map +1 -0
- package/dist/utils/changelog.d.ts +7 -2
- package/dist/utils/changelog.d.ts.map +1 -1
- package/dist/utils/changelog.js +82 -13
- package/dist/utils/changelog.js.map +1 -1
- package/docs/skills.md +54 -4
- package/npm-shrinkwrap.json +5 -5
- package/package.json +2 -2
|
@@ -26,6 +26,7 @@ import { DefaultPackageManager } from "../../core/package-manager.js";
|
|
|
26
26
|
import { formatMissingSessionCwdPrompt, MissingSessionCwdError } from "../../core/session-cwd.js";
|
|
27
27
|
import { SessionManager, sessionEntryToContextMessages } from "../../core/session-manager.js";
|
|
28
28
|
import { formatShareUnavailableMessage, publishSessionShare } from "../../core/session-share.js";
|
|
29
|
+
import { slugifySkillCommandName } from "../../core/skills.js";
|
|
29
30
|
import { BUILTIN_SLASH_COMMANDS } from "../../core/slash-commands.js";
|
|
30
31
|
import { hasTrustRequiringProjectResources, ProjectTrustStore } from "../../core/trust-manager.js";
|
|
31
32
|
import { getUsageCostBreakdown } from "../../core/usage-totals.js";
|
|
@@ -63,6 +64,7 @@ import { ScopedModelsSelectorComponent } from "./components/scoped-models-select
|
|
|
63
64
|
import { SessionSelectorComponent } from "./components/session-selector.js";
|
|
64
65
|
import { SettingsSelectorComponent } from "./components/settings-selector.js";
|
|
65
66
|
import { SkillInvocationMessageComponent } from "./components/skill-invocation-message.js";
|
|
67
|
+
import { ApexSplashHeader } from "./components/splash-header.js";
|
|
66
68
|
import { BranchSummaryStatusIndicator, CompactionStatusIndicator, IdleStatus, RetryStatusIndicator, WorkingStatusIndicator, } from "./components/status-indicator.js";
|
|
67
69
|
import { ToolExecutionComponent } from "./components/tool-execution.js";
|
|
68
70
|
import { TreeSelectorComponent } from "./components/tree-selector.js";
|
|
@@ -362,6 +364,11 @@ export class InteractiveMode {
|
|
|
362
364
|
this.defaultEditor = new CustomEditor(this.ui, getEditorTheme(), this.keybindings, {
|
|
363
365
|
paddingX: editorPaddingX,
|
|
364
366
|
autocompleteMaxVisible,
|
|
367
|
+
promptPrefix: "> ",
|
|
368
|
+
promptColor: (text) => theme.fg("accent", text),
|
|
369
|
+
placeholder: "Ask anything, / for commands, ! for bash",
|
|
370
|
+
placeholderColor: (text) => theme.fg("dim", text),
|
|
371
|
+
commandColor: (text) => theme.fg("accent", text),
|
|
365
372
|
});
|
|
366
373
|
this.editor = this.defaultEditor;
|
|
367
374
|
this.editorContainer = new Container();
|
|
@@ -478,7 +485,7 @@ export class InteractiveMode {
|
|
|
478
485
|
const skillCommandList = [];
|
|
479
486
|
if (this.settingsManager.getEnableSkillCommands()) {
|
|
480
487
|
for (const skill of this.session.resourceLoader.getSkills().skills) {
|
|
481
|
-
const commandName = `skill:${skill.name}`;
|
|
488
|
+
const commandName = `skill:${slugifySkillCommandName(skill.name)}`;
|
|
482
489
|
this.skillCommands.set(commandName, skill.filePath);
|
|
483
490
|
skillCommandList.push({
|
|
484
491
|
name: commandName,
|
|
@@ -517,7 +524,7 @@ export class InteractiveMode {
|
|
|
517
524
|
}
|
|
518
525
|
this.chatContainer.addChild(new DynamicBorder());
|
|
519
526
|
if (this.settingsManager.getCollapseChangelog()) {
|
|
520
|
-
const versionMatch = this.changelogMarkdown.match(/##\s+\[?(\d+\.\d+\.\d+)\]?/);
|
|
527
|
+
const versionMatch = this.changelogMarkdown.match(/##\s+\[?(\d+\.\d+\.\d+(?:-[0-9A-Za-z][0-9A-Za-z.-]*)?)\]?/);
|
|
521
528
|
const latestVersion = versionMatch ? versionMatch[1] : this.version;
|
|
522
529
|
const condensedText = `Updated to v${latestVersion}. Use ${theme.bold("/changelog")} to view full changelog.`;
|
|
523
530
|
this.chatContainer.addChild(new Text(condensedText, 1, 0));
|
|
@@ -657,11 +664,14 @@ export class InteractiveMode {
|
|
|
657
664
|
this.ui.start();
|
|
658
665
|
this.isInitialized = true;
|
|
659
666
|
await this.themeController.applyFromSettings();
|
|
660
|
-
//
|
|
667
|
+
// Brand splash: mark on the left, runtime metadata on the right. The model
|
|
668
|
+
// and cwd are read through live getters, so they fill in once the session
|
|
669
|
+
// binds in rebindCurrentSession below.
|
|
661
670
|
if (this.options.verbose || !this.settingsManager.getQuietStartup()) {
|
|
662
|
-
const logo = theme.bold(theme.fg("accent", APP_NAME)) + theme.fg("dim", ` v${this.version}`);
|
|
663
671
|
// Build startup instructions using keybinding hint helpers
|
|
664
672
|
const hint = (keybinding, description) => keyHint(keybinding, description);
|
|
673
|
+
// The full cheatsheet is verbose-only. The default screen leads with the
|
|
674
|
+
// mark and the runtime facts that actually differ between launches.
|
|
665
675
|
const expandedInstructions = [
|
|
666
676
|
hint("app.interrupt", "to interrupt"),
|
|
667
677
|
hint("app.clear", "to clear"),
|
|
@@ -683,18 +693,12 @@ export class InteractiveMode {
|
|
|
683
693
|
hint("app.clipboard.pasteImage", "to paste image (with text fallback)"),
|
|
684
694
|
rawKeyHint("drop files", "to attach"),
|
|
685
695
|
].join("\n");
|
|
686
|
-
|
|
687
|
-
|
|
688
|
-
|
|
689
|
-
|
|
690
|
-
|
|
691
|
-
hint("app.tools.expand", "more"),
|
|
692
|
-
].join(theme.fg("muted", " · "));
|
|
693
|
-
const compactOnboarding = theme.fg("dim", `Press ${keyText("app.tools.expand")} to show full startup help and loaded resources.`);
|
|
694
|
-
const onboarding = theme.fg("dim", `Apex Code can explain its own features and look up its docs. Ask it how to use or extend Apex Code.`);
|
|
695
|
-
this.builtInHeader = new ExpandableText(() => `${logo}\n${compactInstructions}\n${compactOnboarding}\n\n${onboarding}`, () => `${logo}\n${expandedInstructions}\n\n${onboarding}`, this.getStartupExpansionState(), 1, 0);
|
|
696
|
+
this.builtInHeader = new ApexSplashHeader(this.version, () => this.session.state.model?.id, () => this.session.sessionManager.getCwd(), this.options.verbose ? expandedInstructions : undefined, {
|
|
697
|
+
topPadding: true,
|
|
698
|
+
getSymbolPreset: () => this.settingsManager.getSymbolPreset(),
|
|
699
|
+
getHint: () => "Apex Code can explain its own features and look up its docs.",
|
|
700
|
+
});
|
|
696
701
|
// Setup UI layout
|
|
697
|
-
this.headerContainer.addChild(new Spacer(1));
|
|
698
702
|
this.headerContainer.addChild(this.builtInHeader);
|
|
699
703
|
this.headerContainer.addChild(new Spacer(1));
|
|
700
704
|
}
|