feat: add release version to cli

This commit is contained in:
Carlos Florêncio
2026-02-24 11:14:04 +00:00
parent 0d3f3b7727
commit 76c76e14d5
3 changed files with 18 additions and 1 deletions
+7
View File
@@ -10,6 +10,13 @@ npx kandev
Downloads the latest release, starts the backend + web app, and opens your browser. Data (worktrees, SQLite DB) is stored in `~/.kandev` by default.
## Version and Updates
- `npx kandev` (run mode) uses the latest GitHub release bundle by default.
- At startup, the launcher prints the resolved release tag (for example: `[kandev] release: v0.2.3 (github latest)`).
- Use `--version <tag>` to pin a specific runtime bundle release.
- CLI package updates are checked from npm and shown as a prompt. They are not forced.
## What You Get
- **Multi-agent support** - Claude Code, Codex, GitHub Copilot, Gemini CLI, Amp, Auggie, OpenCode
+1
View File
@@ -57,6 +57,7 @@ Note: the runtime bundles are pulled from the latest GitHub Release by default,
- **New runtime release without CLI publish**: users get new runtime automatically, but no update prompt.
- **New CLI publish**: users get an update prompt and then re-run with the new CLI.
- On startup, `run` also prints the resolved runtime release tag.
You can disable the prompt with:
+10 -1
View File
@@ -31,6 +31,8 @@ type PreparedRelease = {
backendUrl: string;
backendEnv: NodeJS.ProcessEnv;
webEnv: NodeJS.ProcessEnv;
releaseTag: string;
requestedVersion?: string;
webPort: number;
agentctlPort: number;
};
@@ -78,7 +80,8 @@ async function prepareReleaseBundle({
// Note: Release mode doesn't configure MCP server ports as it uses
// the bundled configuration. Only backend and agentctl ports are set.
// Log level is set to warn for clean production output.
// Log level defaults to warn for clean output and can be overridden
// via KANDEV_LOG_LEVEL.
const backendEnv = {
...process.env,
KANDEV_SERVER_PORT: String(actualBackendPort),
@@ -101,6 +104,8 @@ async function prepareReleaseBundle({
backendUrl,
backendEnv,
webEnv,
releaseTag: tag,
requestedVersion: version,
webPort: actualWebPort,
agentctlPort,
};
@@ -111,6 +116,10 @@ function launchReleaseApps(prepared: PreparedRelease): {
backendProc: ReturnType<typeof spawn>;
webServerPath: string;
} {
const releaseSource = prepared.requestedVersion
? `(requested: ${prepared.requestedVersion})`
: "(github latest)";
console.log(`[kandev] release: ${prepared.releaseTag} ${releaseSource}`);
console.log("[kandev] backend port:", prepared.backendEnv.KANDEV_SERVER_PORT);
console.log("[kandev] web port:", prepared.webPort);
console.log("[kandev] agentctl port:", prepared.agentctlPort);