diff --git a/CHANGELOG.md b/CHANGELOG.md index ea28a5f..011cc67 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -7,6 +7,12 @@ and this project adheres to [Semantic Versioning](https://semver.org/spec/v2.0.0 ## [Unreleased] +## [0.9.1] - 2026-02-02 + +### Fixed + +- **CLI version now reads from package.json** — `oddkit --version` was hardcoded as 0.1.0, now correctly shows the actual version + ## [0.9.0] - 2026-02-02 ### Added diff --git a/package-lock.json b/package-lock.json index 340de96..69d7068 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,12 +1,12 @@ { "name": "oddkit", - "version": "0.8.1", + "version": "0.9.1", "lockfileVersion": 3, "requires": true, "packages": { "": { "name": "oddkit", - "version": "0.8.1", + "version": "0.9.1", "license": "MIT", "dependencies": { "@modelcontextprotocol/sdk": "^1.0.0", diff --git a/package.json b/package.json index 5440ffe..e262271 100644 --- a/package.json +++ b/package.json @@ -1,6 +1,6 @@ { "name": "oddkit", - "version": "0.9.0", + "version": "0.9.1", "description": "Agent-first CLI for ODD-governed repos. Epistemic terrain rendering with portable baseline.", "type": "module", "bin": { diff --git a/src/cli.js b/src/cli.js index 85e0911..0ca85af 100644 --- a/src/cli.js +++ b/src/cli.js @@ -1,5 +1,6 @@ import { Command } from "commander"; import { createInterface } from "readline"; +import { createRequire } from "module"; import { runLibrarian } from "./tasks/librarian.js"; import { runValidate } from "./tasks/validate.js"; import { runIndex } from "./tasks/indexTask.js"; @@ -10,6 +11,9 @@ import { runHooks } from "./cli/hooks.js"; import { registerSyncAgentsCommand } from "./cli/syncAgents.js"; import { runAuditEpoch } from "./audit/auditEpoch.js"; +const require = createRequire(import.meta.url); +const { version: PKG_VERSION } = require("../package.json"); + const SCHEMA_VERSION = "1.0"; // Exit codes (tool-grade contract) @@ -123,7 +127,7 @@ export function run() { program .name("oddkit") .description("Agent-first CLI for ODD-governed repos") - .version("0.1.0") + .version(PKG_VERSION) // Global options .option("--quiet", "Suppress non-essential output (logs, banners)") .option("--no-color", "Disable colored output");