@kyo-so/cli 0.13.1 → 0.14.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/.agents/skills/kyoso-review/SKILL.md +3 -2
- package/CHANGELOG.md +20 -0
- package/README.ja.md +23 -15
- package/README.md +23 -15
- package/README.zh-CN.md +23 -15
- package/dist/bin/kyoso.js +1646 -258
- package/dist/cli/integration.d.ts +6 -3
- package/dist/cli/knownSkillDigests.d.ts +5 -1
- package/dist/cli/manualMcpInvocation.d.ts +11 -0
- package/dist/cli/packageRunner.d.ts +15 -0
- package/dist/cli/pluginRuntimeContract.d.ts +8 -6
- package/dist/cli/setup.d.ts +33 -1
- package/dist/core/constants.d.ts +1 -1
- package/examples/claude-code-mcp.json +1 -1
- package/examples/codex-config.toml +2 -2
- package/package.json +3 -1
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { ManualMcpStatus } from "./setup.js";
|
|
1
|
+
import type { ManualMcpRegistration, ManualMcpStatus } from "./setup.js";
|
|
2
2
|
export type IntegrationMode = "manual-mcp" | "cli-skill" | "skill-on-demand" | "mcp-only" | "cli-only" | "missing" | "unknown";
|
|
3
3
|
export type InstalledCli = {
|
|
4
4
|
kind: "installed";
|
|
@@ -8,10 +8,11 @@ export type InstalledCli = {
|
|
|
8
8
|
export type CliAvailability = InstalledCli | {
|
|
9
9
|
kind: "missing" | "transient" | "unknown";
|
|
10
10
|
};
|
|
11
|
+
export type RunnerAvailability = "available" | "missing" | "present-unverified";
|
|
11
12
|
export type CliDetection = {
|
|
12
13
|
kyoso: CliAvailability;
|
|
13
|
-
npx:
|
|
14
|
-
bunx:
|
|
14
|
+
npx: RunnerAvailability;
|
|
15
|
+
bunx: RunnerAvailability;
|
|
15
16
|
};
|
|
16
17
|
export type NonPluginIntegration = {
|
|
17
18
|
mode: IntegrationMode;
|
|
@@ -24,7 +25,9 @@ export declare function detectCli(options: {
|
|
|
24
25
|
}): CliDetection;
|
|
25
26
|
export declare function determineNonPluginIntegration(options: {
|
|
26
27
|
manualMcpStatus: ManualMcpStatus;
|
|
28
|
+
manualMcpRegistrations: readonly ManualMcpRegistration[];
|
|
27
29
|
hasSkill: boolean;
|
|
28
30
|
cli: CliDetection;
|
|
29
31
|
}): NonPluginIntegration;
|
|
32
|
+
export declare function formatRunnerAvailability(runner: RunnerAvailability): string;
|
|
30
33
|
export declare function formatCliAvailability(cli: CliAvailability): string;
|
|
@@ -1,5 +1,9 @@
|
|
|
1
|
-
export declare const CURRENT_SKILL_DIGEST = "sha256:
|
|
1
|
+
export declare const CURRENT_SKILL_DIGEST = "sha256:d28acaadf490df9e58e12f195804f181a683d0d33344275d7989efbee26a4504";
|
|
2
2
|
export declare const KNOWN_SKILL_DIGESTS_BY_VERSION: {
|
|
3
|
+
readonly "0.13.1": readonly [{
|
|
4
|
+
readonly digest: "sha256:8654e68ea61f2acea29027056802bf627ad737f084c9a86ab052946943538409";
|
|
5
|
+
readonly kind: "historical";
|
|
6
|
+
}];
|
|
3
7
|
readonly "0.11.0": readonly [{
|
|
4
8
|
readonly digest: "sha256:110dd872a3d1c8a71474a0eadb226f51a6addd86f9d4f3ed17b73678b3179a4e";
|
|
5
9
|
readonly kind: "historical";
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import { type KyosoPackageCommand, type KyosoPackageRunner } from "./packageRunner.js";
|
|
2
|
+
export type ManualMcpInvocationKind = "current" | "legacy" | "custom" | "unknown";
|
|
3
|
+
export type ManualMcpInvocationInspection = {
|
|
4
|
+
kind: ManualMcpInvocationKind;
|
|
5
|
+
runner?: KyosoPackageRunner;
|
|
6
|
+
packageSpec?: string;
|
|
7
|
+
legacyArgs?: readonly string[];
|
|
8
|
+
replacement?: KyosoPackageCommand;
|
|
9
|
+
reason: string;
|
|
10
|
+
};
|
|
11
|
+
export declare function inspectManualMcpInvocation(value: unknown): ManualMcpInvocationInspection;
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
export declare const KYOSO_PACKAGE_NAME = "@kyo-so/cli";
|
|
2
|
+
export declare const KYOSO_EXECUTABLE_NAME = "kyoso";
|
|
3
|
+
export type KyosoPackageRunner = "npx" | "bunx";
|
|
4
|
+
export type KyosoPackageCommand = {
|
|
5
|
+
command: KyosoPackageRunner;
|
|
6
|
+
args: string[];
|
|
7
|
+
};
|
|
8
|
+
export type BuildKyosoPackageCommandOptions = {
|
|
9
|
+
runner: KyosoPackageRunner;
|
|
10
|
+
cliArgs: readonly string[];
|
|
11
|
+
version?: string;
|
|
12
|
+
};
|
|
13
|
+
export declare function buildKyosoPackageCommand(options: BuildKyosoPackageCommandOptions): KyosoPackageCommand;
|
|
14
|
+
export declare function formatKyosoPackageCommand(options: BuildKyosoPackageCommandOptions): string;
|
|
15
|
+
export declare function isCompleteSemVer(value: string): boolean;
|
|
@@ -6,13 +6,14 @@
|
|
|
6
6
|
* retains dated probe metadata, which deliberately does not belong in the
|
|
7
7
|
* published CLI.
|
|
8
8
|
*/
|
|
9
|
-
export declare const PLUGIN_RUNTIME_COMPATIBILITY_SCHEMA_VERSION =
|
|
9
|
+
export declare const PLUGIN_RUNTIME_COMPATIBILITY_SCHEMA_VERSION = 2;
|
|
10
10
|
export declare const MINIMUM_SUPPORTED_CODEX_VERSION = "0.144.0-alpha.4";
|
|
11
11
|
export declare const PLUGIN_RUNTIME_EXPECTED_CONTRACT: {
|
|
12
12
|
readonly distribution: {
|
|
13
|
-
readonly pluginVersion: "0.7.
|
|
13
|
+
readonly pluginVersion: "0.7.2";
|
|
14
14
|
readonly mcpCommand: "npx";
|
|
15
|
-
readonly mcpPackagePin: "@kyo-so/cli@0.13.
|
|
15
|
+
readonly mcpPackagePin: "@kyo-so/cli@0.13.1";
|
|
16
|
+
readonly mcpExecutable: "kyoso";
|
|
16
17
|
};
|
|
17
18
|
readonly marketplace: {
|
|
18
19
|
readonly name: "kyoso";
|
|
@@ -124,15 +125,16 @@ export declare const PLUGIN_LIST_JSON_SCHEMA: {
|
|
|
124
125
|
};
|
|
125
126
|
/** Stable runtime contract consumed by Doctor and distribution verification. */
|
|
126
127
|
export declare const pluginRuntimeContract: {
|
|
127
|
-
readonly schemaVersion:
|
|
128
|
+
readonly schemaVersion: 2;
|
|
128
129
|
readonly minimumSupportedCodexVersion: "0.144.0-alpha.4";
|
|
129
130
|
readonly pluginId: "kyoso@kyoso";
|
|
130
131
|
readonly pluginListTopLevelKeys: readonly ["installed", "available"];
|
|
131
132
|
readonly expectedContract: {
|
|
132
133
|
readonly distribution: {
|
|
133
|
-
readonly pluginVersion: "0.7.
|
|
134
|
+
readonly pluginVersion: "0.7.2";
|
|
134
135
|
readonly mcpCommand: "npx";
|
|
135
|
-
readonly mcpPackagePin: "@kyo-so/cli@0.13.
|
|
136
|
+
readonly mcpPackagePin: "@kyo-so/cli@0.13.1";
|
|
137
|
+
readonly mcpExecutable: "kyoso";
|
|
136
138
|
};
|
|
137
139
|
readonly marketplace: {
|
|
138
140
|
readonly name: "kyoso";
|
package/dist/cli/setup.d.ts
CHANGED
|
@@ -1,14 +1,36 @@
|
|
|
1
|
+
import { type ManualMcpInvocationInspection } from "./manualMcpInvocation.js";
|
|
2
|
+
import { type KyosoPackageRunner } from "./packageRunner.js";
|
|
1
3
|
export type SetupClient = "codex" | "claude-code";
|
|
2
|
-
export type SetupRunner =
|
|
4
|
+
export type SetupRunner = KyosoPackageRunner;
|
|
3
5
|
export type SetupScope = "project" | "global";
|
|
4
6
|
export type ManualMcpStatus = "enabled" | "disabled" | "missing" | "unknown";
|
|
7
|
+
export type ManualMcpScope = "codex-global" | "claude-project" | "claude-global" | "claude-global-project";
|
|
8
|
+
export type ManualMcpRegistration = {
|
|
9
|
+
path: string;
|
|
10
|
+
scope: ManualMcpScope;
|
|
11
|
+
status: ManualMcpStatus;
|
|
12
|
+
invocation: ManualMcpInvocationInspection;
|
|
13
|
+
autoMigrationEligible: boolean;
|
|
14
|
+
};
|
|
5
15
|
export type SetupDetection = {
|
|
6
16
|
mcp: boolean;
|
|
7
17
|
skill: boolean;
|
|
8
18
|
manualMcpStatus: ManualMcpStatus;
|
|
19
|
+
manualMcpRegistrations: ManualMcpRegistration[];
|
|
9
20
|
mcpPaths: string[];
|
|
10
21
|
skillPaths: string[];
|
|
11
22
|
};
|
|
23
|
+
export type BunxVersionProbeResult = {
|
|
24
|
+
status: "verified";
|
|
25
|
+
version: string;
|
|
26
|
+
} | {
|
|
27
|
+
status: "missing" | "failed" | "timeout" | "invalid" | "unsupported";
|
|
28
|
+
detail: string;
|
|
29
|
+
};
|
|
30
|
+
export type BunxVersionProbe = (options: {
|
|
31
|
+
cwd: string;
|
|
32
|
+
env: NodeJS.ProcessEnv;
|
|
33
|
+
}) => BunxVersionProbeResult;
|
|
12
34
|
export type CodexPluginMcpOverride = {
|
|
13
35
|
status: ManualMcpStatus;
|
|
14
36
|
path: string;
|
|
@@ -24,6 +46,12 @@ export type SetupOptions = {
|
|
|
24
46
|
skillOnly?: boolean;
|
|
25
47
|
force?: boolean;
|
|
26
48
|
env?: NodeJS.ProcessEnv;
|
|
49
|
+
bunxVersionProbe?: BunxVersionProbe;
|
|
50
|
+
beforeManualMcpWrite?: (path: string) => void | Promise<void>;
|
|
51
|
+
beforeManualMcpCommit?: (path: string) => void | Promise<void>;
|
|
52
|
+
afterManualMcpValidation?: (path: string) => void | Promise<void>;
|
|
53
|
+
beforeManualMcpRename?: (path: string) => void | Promise<void>;
|
|
54
|
+
manualMcpRename?: (source: string, destination: string) => Promise<void>;
|
|
27
55
|
};
|
|
28
56
|
type McpCommand = {
|
|
29
57
|
command: string;
|
|
@@ -47,4 +75,8 @@ export declare function detectSetup(options: {
|
|
|
47
75
|
codexHome?: string;
|
|
48
76
|
env?: NodeJS.ProcessEnv;
|
|
49
77
|
}): Record<SetupClient, SetupDetection>;
|
|
78
|
+
export declare function probeBunxVersion(options: {
|
|
79
|
+
cwd: string;
|
|
80
|
+
env: NodeJS.ProcessEnv;
|
|
81
|
+
}): BunxVersionProbeResult;
|
|
50
82
|
export {};
|
package/dist/core/constants.d.ts
CHANGED
|
@@ -7,4 +7,4 @@ export declare const JUDGE_MAX_OUTPUT_TOKENS = 4096;
|
|
|
7
7
|
export declare const RAW_OUTPUT_MAX_CHARS = 16384;
|
|
8
8
|
export declare const TRACE_DIR = ".kyoso/traces";
|
|
9
9
|
export declare const KYOSO_CHILD_AGENT = "KYOSO_CHILD_AGENT";
|
|
10
|
-
export declare const KYOSO_VERSION = "0.
|
|
10
|
+
export declare const KYOSO_VERSION = "0.14.0";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
[mcp_servers.kyoso]
|
|
2
2
|
command = "npx"
|
|
3
|
-
args = ["-y", "
|
|
3
|
+
args = ["-y", "--package=@kyo-so/cli", "kyoso", "mcp"]
|
|
4
4
|
# Generated by `kyoso setup codex --write`. For OpenRouter, use
|
|
5
5
|
# `kyoso setup codex --write --with-openrouter`, or insert
|
|
6
6
|
# "OPENROUTER_API_KEY" after "CODEX_ACCESS_TOKEN" in this list.
|
|
@@ -11,4 +11,4 @@ enabled = true
|
|
|
11
11
|
|
|
12
12
|
# Bun alternative:
|
|
13
13
|
# command = "bunx"
|
|
14
|
-
# args = ["@kyo-so/cli", "mcp"]
|
|
14
|
+
# args = ["--package", "@kyo-so/cli", "kyoso", "mcp"]
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@kyo-so/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.14.0",
|
|
4
4
|
"description": "Kyo-so: MCP-native, ACP-powered multi-agent review gates for AI coding workflows.",
|
|
5
5
|
"license": "AGPL-3.0-or-later",
|
|
6
6
|
"repository": {
|
|
@@ -49,6 +49,8 @@
|
|
|
49
49
|
"plugin:sync": "node scripts/plugin-sync.mjs",
|
|
50
50
|
"plugin:verify": "node scripts/verify-plugin.mjs",
|
|
51
51
|
"plugin:verify:registry": "node scripts/verify-plugin-registry.mjs",
|
|
52
|
+
"plugin:verify:published-cli": "node scripts/verify-published-cli.mjs",
|
|
53
|
+
"plugin:runtime:migrate": "node scripts/plugin-runtime-contract-migrate.mjs",
|
|
52
54
|
"plugin:runtime:verify": "node scripts/verify-plugin-runtime.mjs",
|
|
53
55
|
"plugin:promote": "node scripts/plugin-promote.mjs",
|
|
54
56
|
"skill:runtime:verify": "node scripts/verify-skill-runtime.mjs",
|