@codexhost/cli-win32-arm64 0.9.2 → 0.10.1

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.
@@ -15277,10 +15277,21 @@ var harnessCommandDescriptorSchema = external_exports.object({
15277
15277
  invocation: commandInvocationSchema,
15278
15278
  label: commandLabelSchema,
15279
15279
  description: commandDescriptionSchema.optional(),
15280
- argumentMode: external_exports.enum(["none", "text"])
15280
+ argumentMode: external_exports.enum(["none", "text"]),
15281
+ /**
15282
+ * Native distinction reported by the Harness. Omitted when the Harness does
15283
+ * not tell skills and commands apart; consumers treat that as "command".
15284
+ */
15285
+ kind: external_exports.enum(["command", "skill"]).optional()
15281
15286
  }).strict();
15282
15287
  var harnessCommandCatalogSchema = external_exports.object({
15283
- commands: external_exports.array(harnessCommandDescriptorSchema)
15288
+ commands: external_exports.array(harnessCommandDescriptorSchema),
15289
+ /**
15290
+ * `live` when the catalog includes what a native Session reports for its
15291
+ * workspace (custom commands, skills); `static` for Adapter built-ins only.
15292
+ * Omitted by Adapters; set by the Host on inspection results.
15293
+ */
15294
+ source: external_exports.enum(["live", "static"]).optional()
15284
15295
  }).strict().superRefine((catalog, context) => {
15285
15296
  const ids = /* @__PURE__ */ new Set();
15286
15297
  for (const [index, command] of catalog.commands.entries()) {
@@ -15294,7 +15305,11 @@ var harnessCommandCatalogSchema = external_exports.object({
15294
15305
  ids.add(command.id);
15295
15306
  }
15296
15307
  });
15297
- var harnessCommandsInspectParamsSchema = external_exports.object({ harnessId: harnessIdSchema }).strict();
15308
+ var harnessCommandsInspectParamsSchema = external_exports.object({
15309
+ harnessId: harnessIdSchema,
15310
+ /** Workspace of a draft without a Thread, for its live catalog when known. */
15311
+ cwd: external_exports.string().min(1).optional()
15312
+ }).strict();
15298
15313
  var threadCommandsInspectParamsSchema = external_exports.object({
15299
15314
  threadId: hostThreadIdSchema
15300
15315
  }).strict();
@@ -15441,66 +15456,6 @@ var updateStatusResultSchema = external_exports.strictObject({
15441
15456
  // ../../shared-contracts/dist/index.js
15442
15457
  var workspaceContractVersionSchema = external_exports.literal(WORKSPACE_CONTRACT_VERSION);
15443
15458
 
15444
- // dist/hermes-commands.js
15445
- var SUPPORTED_COMMANDS = /* @__PURE__ */ new Set(["help", "tools", "context", "compress", "version"]);
15446
- function hermesCommandCatalog(commands) {
15447
- return harnessCommandCatalogSchema.parse({
15448
- commands: commands.filter((command) => SUPPORTED_COMMANDS.has(command.name)).map((command) => ({
15449
- id: `hermes.${command.name}`,
15450
- invocation: `/${command.name}`,
15451
- label: `/${command.name}`,
15452
- description: command.description.slice(0, 512) || `Hermes /${command.name}`,
15453
- argumentMode: command.input ? "text" : "none"
15454
- }))
15455
- });
15456
- }
15457
- var HERMES_GATEWAY_COMMANDS = [
15458
- ...["help", "tools", "context", "version"].map((name) => ({
15459
- name,
15460
- description: `Hermes /${name}`
15461
- })),
15462
- {
15463
- name: "compress",
15464
- description: "Compress conversation context",
15465
- input: { hint: "Optional compression focus" }
15466
- }
15467
- ];
15468
- var HERMES_COMMAND_CATALOG = hermesCommandCatalog(HERMES_GATEWAY_COMMANDS);
15469
- function hermesCommandText(command, catalog) {
15470
- const descriptor = catalog.commands.find((entry) => entry.id === command.commandId);
15471
- if (!descriptor)
15472
- return {
15473
- ok: false,
15474
- error: {
15475
- code: "unsupported",
15476
- message: "Hermes did not advertise this command",
15477
- retryable: false
15478
- }
15479
- };
15480
- const args = command.arguments ?? {};
15481
- if (Object.keys(args).some((key) => key !== "text") || args.text !== void 0 && typeof args.text !== "string" || descriptor.argumentMode === "none" && typeof args.text === "string" && args.text.trim()) {
15482
- return {
15483
- ok: false,
15484
- error: {
15485
- code: "invalidRequest",
15486
- message: "Invalid Hermes command arguments",
15487
- retryable: false
15488
- }
15489
- };
15490
- }
15491
- return {
15492
- ok: true,
15493
- value: `${descriptor.invocation}${typeof args.text === "string" && args.text.trim() ? ` ${args.text.trim()}` : ""}`
15494
- };
15495
- }
15496
-
15497
- // dist/hermes-adapter.js
15498
- import { createHash } from "node:crypto";
15499
-
15500
- // dist/acp-transport.js
15501
- import { spawn, spawnSync } from "node:child_process";
15502
- import { Readable, Writable } from "node:stream";
15503
-
15504
15459
  // ../../harness-adapter/dist/approval.js
15505
15460
  function invalidRequest(message) {
15506
15461
  return { code: "invalidRequest", message, retryable: false };
@@ -15633,6 +15588,149 @@ var usageFields = /* @__PURE__ */ new Set([
15633
15588
  "contextUsagePercent"
15634
15589
  ]);
15635
15590
 
15591
+ // ../../harness-adapter/dist/live-command-catalog.js
15592
+ var COMMON_EXCLUDED_LIVE_COMMANDS = /* @__PURE__ */ new Set([
15593
+ // Session lifecycle
15594
+ "branch",
15595
+ "clear",
15596
+ "exit",
15597
+ "fork",
15598
+ "fresh",
15599
+ "new",
15600
+ "quit",
15601
+ "rename",
15602
+ "rename-chat",
15603
+ "reset",
15604
+ "resume",
15605
+ "rewind",
15606
+ "session",
15607
+ "sessions",
15608
+ // Desktop-owned configuration
15609
+ "autocompact",
15610
+ "color",
15611
+ "config",
15612
+ "effort",
15613
+ "fast",
15614
+ "keybindings",
15615
+ "model",
15616
+ "models",
15617
+ "output-style",
15618
+ "permissions",
15619
+ "settings",
15620
+ "statusline",
15621
+ "terminal-setup",
15622
+ "theme",
15623
+ "vim",
15624
+ // Trust and approval policy
15625
+ "always-approve",
15626
+ "auto-mode-setup",
15627
+ // Native login
15628
+ "login",
15629
+ "logout",
15630
+ // Work outliving the Turn
15631
+ "autopilot",
15632
+ "background",
15633
+ "bg",
15634
+ "goal",
15635
+ "jobs",
15636
+ "loop",
15637
+ "multitask",
15638
+ "queue",
15639
+ "remote-control",
15640
+ "schedule",
15641
+ "steer",
15642
+ // Native terminal UI
15643
+ "copy",
15644
+ "debug",
15645
+ "feedback",
15646
+ "heapdump",
15647
+ "share",
15648
+ "shell",
15649
+ // Plugin and MCP management
15650
+ "marketplace",
15651
+ "mcp",
15652
+ "plugins",
15653
+ "reload-plugins"
15654
+ ]);
15655
+ var COMMON_EXCLUDED_LIVE_COMMAND_PREFIXES = ["__", "hooks-"];
15656
+ function isExcludedLiveCommand(name, kind, extra = {}) {
15657
+ const normalized = name.trim().replace(/^\//u, "");
15658
+ if (new Set(extra.names ?? []).has(normalized))
15659
+ return true;
15660
+ if (extra.prefixes?.some((prefix) => normalized.startsWith(prefix)))
15661
+ return true;
15662
+ if (kind === "skill")
15663
+ return false;
15664
+ return COMMON_EXCLUDED_LIVE_COMMANDS.has(normalized) || COMMON_EXCLUDED_LIVE_COMMAND_PREFIXES.some((prefix) => normalized.startsWith(prefix));
15665
+ }
15666
+
15667
+ // dist/hermes-commands.js
15668
+ function hermesCommandCatalog(commands) {
15669
+ const seen = /* @__PURE__ */ new Set();
15670
+ const descriptors = commands.flatMap((command) => {
15671
+ if (isExcludedLiveCommand(command.name, "command"))
15672
+ return [];
15673
+ const parsed2 = harnessCommandDescriptorSchema.safeParse({
15674
+ id: `hermes.${command.name}`,
15675
+ invocation: `/${command.name}`,
15676
+ label: `/${command.name}`,
15677
+ description: command.description.slice(0, 512) || `Hermes /${command.name}`,
15678
+ argumentMode: command.input ? "text" : "none"
15679
+ });
15680
+ if (!parsed2.success || seen.has(parsed2.data.id))
15681
+ return [];
15682
+ seen.add(parsed2.data.id);
15683
+ return [parsed2.data];
15684
+ });
15685
+ return harnessCommandCatalogSchema.parse({ commands: descriptors });
15686
+ }
15687
+ var HERMES_GATEWAY_COMMANDS = [
15688
+ ...["help", "tools", "context", "version"].map((name) => ({
15689
+ name,
15690
+ description: `Hermes /${name}`
15691
+ })),
15692
+ {
15693
+ name: "compress",
15694
+ description: "Compress conversation context",
15695
+ input: { hint: "Optional compression focus" }
15696
+ }
15697
+ ];
15698
+ var HERMES_COMMAND_CATALOG = hermesCommandCatalog(HERMES_GATEWAY_COMMANDS);
15699
+ function hermesCommandText(command, catalog) {
15700
+ const descriptor = catalog.commands.find((entry) => entry.id === command.commandId);
15701
+ if (!descriptor)
15702
+ return {
15703
+ ok: false,
15704
+ error: {
15705
+ code: "unsupported",
15706
+ message: "Hermes did not advertise this command",
15707
+ retryable: false
15708
+ }
15709
+ };
15710
+ const args = command.arguments ?? {};
15711
+ if (Object.keys(args).some((key) => key !== "text") || args.text !== void 0 && typeof args.text !== "string" || descriptor.argumentMode === "none" && typeof args.text === "string" && args.text.trim()) {
15712
+ return {
15713
+ ok: false,
15714
+ error: {
15715
+ code: "invalidRequest",
15716
+ message: "Invalid Hermes command arguments",
15717
+ retryable: false
15718
+ }
15719
+ };
15720
+ }
15721
+ return {
15722
+ ok: true,
15723
+ value: `${descriptor.invocation}${typeof args.text === "string" && args.text.trim() ? ` ${args.text.trim()}` : ""}`
15724
+ };
15725
+ }
15726
+
15727
+ // dist/hermes-adapter.js
15728
+ import { createHash } from "node:crypto";
15729
+
15730
+ // dist/acp-transport.js
15731
+ import { spawn, spawnSync } from "node:child_process";
15732
+ import { Readable, Writable } from "node:stream";
15733
+
15636
15734
  // ../../../node_modules/@agentclientprotocol/sdk/dist/schema/index.js
15637
15735
  var AGENT_METHODS = {
15638
15736
  initialize: "initialize",
@@ -23555,6 +23653,7 @@ var IMPORT_TIMEOUT_MS = 2e4;
23555
23653
  var HERMES_THREAD_ID_ENV = "CODEXHOST_THREAD_ID";
23556
23654
  var HermesAdapter = class {
23557
23655
  commandCatalog = HERMES_COMMAND_CATALOG;
23656
+ liveCommandCatalog = true;
23558
23657
  harnessId = hermesHarnessId;
23559
23658
  sessionImport = {
23560
23659
  listCandidates: () => this.#listImportCandidates(),
@@ -0,0 +1,11 @@
1
+ {
2
+ "manifestVersion": 1,
3
+ "id": "kimi-code",
4
+ "name": "Kimi Code",
5
+ "version": "0.1.0",
6
+ "links": {
7
+ "documentation": "https://moonshotai.github.io/kimi-code/en/reference/kimi-acp.html"
8
+ },
9
+ "adapterApiVersion": 1,
10
+ "entry": "plugin.mjs"
11
+ }