@dotcontext/cli 0.8.0 → 0.8.2

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/README.md CHANGED
@@ -435,7 +435,7 @@ The system automatically detects project scale and adjusts the workflow:
435
435
 
436
436
  - Node.js 20+
437
437
 
438
- **Context creation, AI generation, and refresh are MCP-only.** Use `npx @dotcontext/cli mcp:install` and let your AI tool use its own LLM.
438
+ **Context creation, AI generation, and refresh are MCP-only.** Use `npx dotcontext mcp:install` and let your AI tool use its own LLM.
439
439
 
440
440
  ### Available MCP Tools
441
441
 
@@ -489,8 +489,8 @@ Skills are task-specific procedures that AI agents activate when needed:
489
489
  | `security-audit` | Security review checklist | R, V |
490
490
 
491
491
  ```bash
492
- npx @dotcontext/cli skill list # List available skills
493
- npx @dotcontext/cli skill export # Export to AI tools
492
+ npx dotcontext skill list # List available skills
493
+ npx dotcontext skill export # Export to AI tools
494
494
  ```
495
495
 
496
496
  Use MCP tools from your AI assistant to scaffold, fill, or refresh skills and other context files.
@@ -528,7 +528,7 @@ The previous name `@ai-coders/context` caused frequent confusion with **Context7
528
528
  | Before | After |
529
529
  |--------|-------|
530
530
  | `npm install @ai-coders/context` | `npm install @dotcontext/cli` |
531
- | `npx @ai-coders/context` | `npx @dotcontext/cli` |
531
+ | `npx @ai-coders/context` | `npx dotcontext` |
532
532
  | CLI command: `ai-context` | CLI command: `dotcontext` |
533
533
  | MCP server name: `"ai-context"` | MCP server name: `"dotcontext"` |
534
534
  | Env var: `AI_CONTEXT_LANG` | Env var: `DOTCONTEXT_LANG` |
@@ -551,7 +551,7 @@ The previous name `@ai-coders/context` caused frequent confusion with **Context7
551
551
 
552
552
  2. **Update MCP configurations** -- re-run the installer:
553
553
  ```bash
554
- npx @dotcontext/cli mcp:install
554
+ npx dotcontext mcp:install
555
555
  ```
556
556
  Or manually replace `"ai-context"` with `"dotcontext"` and `"@ai-coders/context"` with `"@dotcontext/cli"` in your MCP JSON configs.
557
557
 
@@ -1 +1 @@
1
- {"version":3,"file":"versionChecker.d.ts","sourceRoot":"","sources":["../../src/utils/versionChecker.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACtC,CAAC,EAAE,WAAW,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AAeD,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CjF"}
1
+ {"version":3,"file":"versionChecker.d.ts","sourceRoot":"","sources":["../../src/utils/versionChecker.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAC5C,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,QAAQ,CAAC;AAE1C,UAAU,mBAAmB;IAC3B,WAAW,EAAE,MAAM,CAAC;IACpB,cAAc,EAAE,MAAM,CAAC;IACvB,EAAE,EAAE,IAAI,CAAC,YAAY,EAAE,aAAa,CAAC,CAAC;IACtC,CAAC,EAAE,WAAW,CAAC;IACf,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,OAAO,CAAC,EAAE,CAAC,WAAW,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,MAAM,CAAC,CAAC;IACtE,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,KAAK,CAAC,EAAE,OAAO,CAAC;CACjB;AA8BD,wBAAsB,eAAe,CAAC,OAAO,EAAE,mBAAmB,GAAG,OAAO,CAAC,IAAI,CAAC,CA4CjF"}
@@ -1,20 +1,29 @@
1
1
  "use strict";
2
- var __importDefault = (this && this.__importDefault) || function (mod) {
3
- return (mod && mod.__esModule) ? mod : { "default": mod };
4
- };
5
2
  Object.defineProperty(exports, "__esModule", { value: true });
6
3
  exports.checkForUpdates = checkForUpdates;
7
- const axios_1 = __importDefault(require("axios"));
8
4
  const semver_1 = require("semver");
9
5
  const DEFAULT_TIMEOUT_MS = 2000;
10
6
  const DISABLE_ENV_FLAGS = ['DOTCONTEXT_DISABLE_UPDATE_CHECK', 'NO_UPDATE_NOTIFIER'];
11
7
  async function fetchLatestVersion(packageName, timeoutMs) {
12
8
  const url = `https://registry.npmjs.org/${encodeURIComponent(packageName)}/latest`;
13
- const response = await axios_1.default.get(url, { timeout: timeoutMs });
14
- if (!response.data?.version) {
15
- throw new Error('missing-version');
9
+ const controller = new AbortController();
10
+ const timeout = setTimeout(() => {
11
+ controller.abort();
12
+ }, timeoutMs);
13
+ try {
14
+ const response = await fetch(url, { signal: controller.signal });
15
+ if (!response.ok) {
16
+ throw new Error(`HTTP ${response.status}`);
17
+ }
18
+ const data = (await response.json());
19
+ if (!data?.version) {
20
+ throw new Error('missing-version');
21
+ }
22
+ return data.version;
23
+ }
24
+ finally {
25
+ clearTimeout(timeout);
16
26
  }
17
- return response.data.version;
18
27
  }
19
28
  async function checkForUpdates(options) {
20
29
  const { packageName, currentVersion, ui, t, registryTimeoutMs = DEFAULT_TIMEOUT_MS, fetcher, updateCommand, force = false } = options;
@@ -1 +1 @@
1
- {"version":3,"file":"versionChecker.js","sourceRoot":"","sources":["../../src/utils/versionChecker.ts"],"names":[],"mappings":";;;;;AA8BA,0CA4CC;AA1ED,kDAA0B;AAC1B,mCAA4B;AAgB5B,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,MAAM,iBAAiB,GAAG,CAAC,iCAAiC,EAAE,oBAAoB,CAAC,CAAC;AAEpF,KAAK,UAAU,kBAAkB,CAAC,WAAmB,EAAE,SAAiB;IACtE,MAAM,GAAG,GAAG,8BAA8B,kBAAkB,CAAC,WAAW,CAAC,SAAS,CAAC;IACnF,MAAM,QAAQ,GAAG,MAAM,eAAK,CAAC,GAAG,CAAuB,GAAG,EAAE,EAAE,OAAO,EAAE,SAAS,EAAE,CAAC,CAAC;IACpF,IAAI,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;QAC5B,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;IACrC,CAAC;IACD,OAAO,QAAQ,CAAC,IAAI,CAAC,OAAO,CAAC;AAC/B,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,OAA4B;IAChE,MAAM,EACJ,WAAW,EACX,cAAc,EACd,EAAE,EACF,CAAC,EACD,iBAAiB,GAAG,kBAAkB,EACtC,OAAO,EACP,aAAa,EACb,KAAK,GAAG,KAAK,EACd,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YACjE,OAAO;QACT,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;gBACjE,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;YAClC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC;YACzC,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAExD,IAAI,IAAA,WAAE,EAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,aAAa,IAAI,kBAAkB,WAAW,EAAE,CAAC;YACjE,EAAE,CAAC,WAAW,CACZ,CAAC,CAAC,6BAA6B,CAAC,EAChC,CAAC,CAAC,8BAA8B,EAAE;gBAChC,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE,cAAc;gBACvB,OAAO;aACR,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,oEAAoE;IACtE,CAAC;AACH,CAAC"}
1
+ {"version":3,"file":"versionChecker.js","sourceRoot":"","sources":["../../src/utils/versionChecker.ts"],"names":[],"mappings":";;AA4CA,0CA4CC;AAxFD,mCAA4B;AAgB5B,MAAM,kBAAkB,GAAG,IAAI,CAAC;AAEhC,MAAM,iBAAiB,GAAG,CAAC,iCAAiC,EAAE,oBAAoB,CAAC,CAAC;AAEpF,KAAK,UAAU,kBAAkB,CAAC,WAAmB,EAAE,SAAiB;IACtE,MAAM,GAAG,GAAG,8BAA8B,kBAAkB,CAAC,WAAW,CAAC,SAAS,CAAC;IACnF,MAAM,UAAU,GAAG,IAAI,eAAe,EAAE,CAAC;IACzC,MAAM,OAAO,GAAG,UAAU,CAAC,GAAG,EAAE;QAC9B,UAAU,CAAC,KAAK,EAAE,CAAC;IACrB,CAAC,EAAE,SAAS,CAAC,CAAC;IAEd,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,MAAM,KAAK,CAAC,GAAG,EAAE,EAAE,MAAM,EAAE,UAAU,CAAC,MAAM,EAAE,CAAC,CAAC;QACjE,IAAI,CAAC,QAAQ,CAAC,EAAE,EAAE,CAAC;YACjB,MAAM,IAAI,KAAK,CAAC,QAAQ,QAAQ,CAAC,MAAM,EAAE,CAAC,CAAC;QAC7C,CAAC;QAED,MAAM,IAAI,GAAG,CAAC,MAAM,QAAQ,CAAC,IAAI,EAAE,CAAyB,CAAC;QAC7D,IAAI,CAAC,IAAI,EAAE,OAAO,EAAE,CAAC;YACnB,MAAM,IAAI,KAAK,CAAC,iBAAiB,CAAC,CAAC;QACrC,CAAC;QAED,OAAO,IAAI,CAAC,OAAO,CAAC;IACtB,CAAC;YAAS,CAAC;QACT,YAAY,CAAC,OAAO,CAAC,CAAC;IACxB,CAAC;AACH,CAAC;AAEM,KAAK,UAAU,eAAe,CAAC,OAA4B;IAChE,MAAM,EACJ,WAAW,EACX,cAAc,EACd,EAAE,EACF,CAAC,EACD,iBAAiB,GAAG,kBAAkB,EACtC,OAAO,EACP,aAAa,EACb,KAAK,GAAG,KAAK,EACd,GAAG,OAAO,CAAC;IAEZ,IAAI,CAAC,KAAK,EAAE,CAAC;QACX,IAAI,OAAO,CAAC,GAAG,CAAC,QAAQ,KAAK,MAAM,IAAI,OAAO,CAAC,GAAG,CAAC,EAAE,KAAK,MAAM,EAAE,CAAC;YACjE,OAAO;QACT,CAAC;QAED,KAAK,MAAM,OAAO,IAAI,iBAAiB,EAAE,CAAC;YACxC,MAAM,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,CAAC;YACnC,IAAI,OAAO,KAAK,KAAK,QAAQ,IAAI,KAAK,CAAC,WAAW,EAAE,KAAK,OAAO,EAAE,CAAC;gBACjE,OAAO;YACT,CAAC;QACH,CAAC;IACH,CAAC;IAED,IAAI,CAAC;QACH,MAAM,aAAa,GAAG,MAAM,CAAC,OAAO;YAClC,CAAC,CAAC,OAAO,CAAC,WAAW,EAAE,iBAAiB,CAAC;YACzC,CAAC,CAAC,kBAAkB,CAAC,WAAW,EAAE,iBAAiB,CAAC,CAAC,CAAC;QAExD,IAAI,IAAA,WAAE,EAAC,aAAa,EAAE,cAAc,CAAC,EAAE,CAAC;YACtC,MAAM,OAAO,GAAG,aAAa,IAAI,kBAAkB,WAAW,EAAE,CAAC;YACjE,EAAE,CAAC,WAAW,CACZ,CAAC,CAAC,6BAA6B,CAAC,EAChC,CAAC,CAAC,8BAA8B,EAAE;gBAChC,MAAM,EAAE,aAAa;gBACrB,OAAO,EAAE,cAAc;gBACvB,OAAO;aACR,CAAC,CACH,CAAC;QACJ,CAAC;IACH,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,oEAAoE;IACtE,CAAC;AACH,CAAC"}
package/dist/version.d.ts CHANGED
@@ -2,6 +2,8 @@
2
2
  * Centralized version and package constants
3
3
  *
4
4
  * Single source of truth for version information.
5
+ * Uses fs.readFileSync to avoid JSON import compatibility issues
6
+ * across different Node.js versions and module formats.
5
7
  */
6
8
  export declare const VERSION: string;
7
9
  export declare const PACKAGE_NAME: string;
@@ -1 +1 @@
1
- {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAIH,eAAO,MAAM,OAAO,QAAc,CAAC;AACnC,eAAO,MAAM,YAAY,QAAW,CAAC"}
1
+ {"version":3,"file":"version.d.ts","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAQH,eAAO,MAAM,OAAO,EAAE,MAAoB,CAAC;AAC3C,eAAO,MAAM,YAAY,EAAE,MAAiB,CAAC"}
package/dist/version.js CHANGED
@@ -3,13 +3,48 @@
3
3
  * Centralized version and package constants
4
4
  *
5
5
  * Single source of truth for version information.
6
+ * Uses fs.readFileSync to avoid JSON import compatibility issues
7
+ * across different Node.js versions and module formats.
6
8
  */
7
- var __importDefault = (this && this.__importDefault) || function (mod) {
8
- return (mod && mod.__esModule) ? mod : { "default": mod };
9
- };
9
+ var __createBinding = (this && this.__createBinding) || (Object.create ? (function(o, m, k, k2) {
10
+ if (k2 === undefined) k2 = k;
11
+ var desc = Object.getOwnPropertyDescriptor(m, k);
12
+ if (!desc || ("get" in desc ? !m.__esModule : desc.writable || desc.configurable)) {
13
+ desc = { enumerable: true, get: function() { return m[k]; } };
14
+ }
15
+ Object.defineProperty(o, k2, desc);
16
+ }) : (function(o, m, k, k2) {
17
+ if (k2 === undefined) k2 = k;
18
+ o[k2] = m[k];
19
+ }));
20
+ var __setModuleDefault = (this && this.__setModuleDefault) || (Object.create ? (function(o, v) {
21
+ Object.defineProperty(o, "default", { enumerable: true, value: v });
22
+ }) : function(o, v) {
23
+ o["default"] = v;
24
+ });
25
+ var __importStar = (this && this.__importStar) || (function () {
26
+ var ownKeys = function(o) {
27
+ ownKeys = Object.getOwnPropertyNames || function (o) {
28
+ var ar = [];
29
+ for (var k in o) if (Object.prototype.hasOwnProperty.call(o, k)) ar[ar.length] = k;
30
+ return ar;
31
+ };
32
+ return ownKeys(o);
33
+ };
34
+ return function (mod) {
35
+ if (mod && mod.__esModule) return mod;
36
+ var result = {};
37
+ if (mod != null) for (var k = ownKeys(mod), i = 0; i < k.length; i++) if (k[i] !== "default") __createBinding(result, mod, k[i]);
38
+ __setModuleDefault(result, mod);
39
+ return result;
40
+ };
41
+ })();
10
42
  Object.defineProperty(exports, "__esModule", { value: true });
11
43
  exports.PACKAGE_NAME = exports.VERSION = void 0;
12
- const package_json_1 = __importDefault(require("../package.json"));
13
- exports.VERSION = package_json_1.default.version;
14
- exports.PACKAGE_NAME = package_json_1.default.name;
44
+ const fs = __importStar(require("fs"));
45
+ const path = __importStar(require("path"));
46
+ const packageJsonPath = path.resolve(__dirname, '..', 'package.json');
47
+ const pkg = JSON.parse(fs.readFileSync(packageJsonPath, 'utf-8'));
48
+ exports.VERSION = pkg.version;
49
+ exports.PACKAGE_NAME = pkg.name;
15
50
  //# sourceMappingURL=version.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";AAAA;;;;GAIG;;;;;;AAEH,mEAAkC;AAErB,QAAA,OAAO,GAAG,sBAAG,CAAC,OAAO,CAAC;AACtB,QAAA,YAAY,GAAG,sBAAG,CAAC,IAAI,CAAC"}
1
+ {"version":3,"file":"version.js","sourceRoot":"","sources":["../src/version.ts"],"names":[],"mappings":";AAAA;;;;;;GAMG;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAEH,uCAAyB;AACzB,2CAA6B;AAE7B,MAAM,eAAe,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,EAAE,IAAI,EAAE,cAAc,CAAC,CAAC;AACtE,MAAM,GAAG,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,eAAe,EAAE,OAAO,CAAC,CAAC,CAAC;AAErD,QAAA,OAAO,GAAW,GAAG,CAAC,OAAO,CAAC;AAC9B,QAAA,YAAY,GAAW,GAAG,CAAC,IAAI,CAAC"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@dotcontext/cli",
3
- "version": "0.8.0",
3
+ "version": "0.8.2",
4
4
  "description": "MCP-first toolkit for AI context workflow, sync, imports, and orchestration",
5
5
  "main": "dist/index.js",
6
6
  "bin": {
@@ -50,14 +50,13 @@
50
50
  "@ai-sdk/anthropic": "^3.0.9",
51
51
  "@ai-sdk/google": "^3.0.6",
52
52
  "@ai-sdk/openai": "^3.0.7",
53
- "@modelcontextprotocol/sdk": "^1.25.2",
53
+ "@inquirer/prompts": "^7.10.1",
54
+ "@modelcontextprotocol/sdk": "^1.29.0",
54
55
  "ai": "^6.0.19",
55
- "axios": "^1.12.2",
56
56
  "boxen": "^5.1.2",
57
57
  "chalk": "^4.1.2",
58
58
  "cli-progress": "^3.12.0",
59
59
  "commander": "^14.0.1",
60
- "figures": "^3.2.0",
61
60
  "fs-extra": "^11.3.2",
62
61
  "glob": "^10.4.5",
63
62
  "ignore": "^7.0.5",