@contextium/cli 0.3.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.
Files changed (86) hide show
  1. package/README.md +227 -0
  2. package/dist/commands/cat.d.ts +3 -0
  3. package/dist/commands/cat.d.ts.map +1 -0
  4. package/dist/commands/cat.js +153 -0
  5. package/dist/commands/cat.js.map +1 -0
  6. package/dist/commands/files.d.ts +3 -0
  7. package/dist/commands/files.d.ts.map +1 -0
  8. package/dist/commands/files.js +121 -0
  9. package/dist/commands/files.js.map +1 -0
  10. package/dist/commands/find.d.ts +3 -0
  11. package/dist/commands/find.d.ts.map +1 -0
  12. package/dist/commands/find.js +119 -0
  13. package/dist/commands/find.js.map +1 -0
  14. package/dist/commands/init.d.ts +3 -0
  15. package/dist/commands/init.d.ts.map +1 -0
  16. package/dist/commands/init.js +157 -0
  17. package/dist/commands/init.js.map +1 -0
  18. package/dist/commands/login.d.ts +3 -0
  19. package/dist/commands/login.d.ts.map +1 -0
  20. package/dist/commands/login.js +44 -0
  21. package/dist/commands/login.js.map +1 -0
  22. package/dist/commands/logout.d.ts +3 -0
  23. package/dist/commands/logout.d.ts.map +1 -0
  24. package/dist/commands/logout.js +22 -0
  25. package/dist/commands/logout.js.map +1 -0
  26. package/dist/commands/projects.d.ts +3 -0
  27. package/dist/commands/projects.d.ts.map +1 -0
  28. package/dist/commands/projects.js +64 -0
  29. package/dist/commands/projects.js.map +1 -0
  30. package/dist/commands/search.d.ts +3 -0
  31. package/dist/commands/search.d.ts.map +1 -0
  32. package/dist/commands/search.js +79 -0
  33. package/dist/commands/search.js.map +1 -0
  34. package/dist/commands/setup-claude.d.ts +3 -0
  35. package/dist/commands/setup-claude.d.ts.map +1 -0
  36. package/dist/commands/setup-claude.js +106 -0
  37. package/dist/commands/setup-claude.js.map +1 -0
  38. package/dist/commands/status.d.ts +3 -0
  39. package/dist/commands/status.d.ts.map +1 -0
  40. package/dist/commands/status.js +103 -0
  41. package/dist/commands/status.js.map +1 -0
  42. package/dist/commands/sync.d.ts +3 -0
  43. package/dist/commands/sync.d.ts.map +1 -0
  44. package/dist/commands/sync.js +118 -0
  45. package/dist/commands/sync.js.map +1 -0
  46. package/dist/commands/tags.d.ts +3 -0
  47. package/dist/commands/tags.d.ts.map +1 -0
  48. package/dist/commands/tags.js +312 -0
  49. package/dist/commands/tags.js.map +1 -0
  50. package/dist/commands/whoami.d.ts +3 -0
  51. package/dist/commands/whoami.d.ts.map +1 -0
  52. package/dist/commands/whoami.js +35 -0
  53. package/dist/commands/whoami.js.map +1 -0
  54. package/dist/commands/workspaces.d.ts +3 -0
  55. package/dist/commands/workspaces.d.ts.map +1 -0
  56. package/dist/commands/workspaces.js +48 -0
  57. package/dist/commands/workspaces.js.map +1 -0
  58. package/dist/index.d.ts +3 -0
  59. package/dist/index.d.ts.map +1 -0
  60. package/dist/index.js +56 -0
  61. package/dist/index.js.map +1 -0
  62. package/dist/lib/api-client.d.ts +11 -0
  63. package/dist/lib/api-client.d.ts.map +1 -0
  64. package/dist/lib/api-client.js +61 -0
  65. package/dist/lib/api-client.js.map +1 -0
  66. package/dist/lib/cache.d.ts +20 -0
  67. package/dist/lib/cache.d.ts.map +1 -0
  68. package/dist/lib/cache.js +79 -0
  69. package/dist/lib/cache.js.map +1 -0
  70. package/dist/lib/config.d.ts +4 -0
  71. package/dist/lib/config.d.ts.map +1 -0
  72. package/dist/lib/config.js +40 -0
  73. package/dist/lib/config.js.map +1 -0
  74. package/dist/lib/msal.d.ts +25 -0
  75. package/dist/lib/msal.d.ts.map +1 -0
  76. package/dist/lib/msal.js +150 -0
  77. package/dist/lib/msal.js.map +1 -0
  78. package/dist/lib/output.d.ts +40 -0
  79. package/dist/lib/output.d.ts.map +1 -0
  80. package/dist/lib/output.js +70 -0
  81. package/dist/lib/output.js.map +1 -0
  82. package/dist/types/index.d.ts +58 -0
  83. package/dist/types/index.d.ts.map +1 -0
  84. package/dist/types/index.js +2 -0
  85. package/dist/types/index.js.map +1 -0
  86. package/package.json +58 -0
@@ -0,0 +1,70 @@
1
+ // Simple output helpers (chalk alternative for minimal deps)
2
+ export const colors = {
3
+ reset: '\x1b[0m',
4
+ bold: '\x1b[1m',
5
+ dim: '\x1b[2m',
6
+ red: '\x1b[31m',
7
+ green: '\x1b[32m',
8
+ yellow: '\x1b[33m',
9
+ blue: '\x1b[34m',
10
+ cyan: '\x1b[36m',
11
+ gray: '\x1b[90m',
12
+ white: '\x1b[37m',
13
+ };
14
+ export function colorize(text, color) {
15
+ return `${colors[color]}${text}${colors.reset}`;
16
+ }
17
+ export const chalk = {
18
+ red: (text) => colorize(text, 'red'),
19
+ green: (text) => colorize(text, 'green'),
20
+ yellow: (text) => colorize(text, 'yellow'),
21
+ blue: (text) => colorize(text, 'blue'),
22
+ cyan: (text) => colorize(text, 'cyan'),
23
+ gray: (text) => colorize(text, 'gray'),
24
+ dim: (text) => colorize(text, 'dim'),
25
+ bold: (text) => colorize(text, 'bold'),
26
+ white: (text) => colorize(text, 'white'),
27
+ };
28
+ export class Spinner {
29
+ constructor(text) {
30
+ this.frames = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
31
+ this.currentFrame = 0;
32
+ this.text = text;
33
+ }
34
+ start() {
35
+ this.interval = setInterval(() => {
36
+ process.stdout.write(`\r${this.frames[this.currentFrame]} ${this.text}`);
37
+ this.currentFrame = (this.currentFrame + 1) % this.frames.length;
38
+ }, 80);
39
+ return this;
40
+ }
41
+ stop() {
42
+ if (this.interval) {
43
+ clearInterval(this.interval);
44
+ process.stdout.write('\r\x1b[K'); // Clear line
45
+ }
46
+ }
47
+ succeed(message) {
48
+ this.stop();
49
+ console.log(`${chalk.green('✓')} ${message}`);
50
+ }
51
+ fail(message) {
52
+ this.stop();
53
+ console.log(`${chalk.red('✗')} ${message}`);
54
+ }
55
+ warn(message) {
56
+ this.stop();
57
+ console.log(`${chalk.yellow('⚠')} ${message}`);
58
+ }
59
+ info(message) {
60
+ this.stop();
61
+ console.log(`${chalk.blue('ℹ')} ${message}`);
62
+ }
63
+ set setText(text) {
64
+ this.text = text;
65
+ }
66
+ }
67
+ export function ora(text) {
68
+ return new Spinner(text);
69
+ }
70
+ //# sourceMappingURL=output.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/lib/output.ts"],"names":[],"mappings":"AAAA,6DAA6D;AAE7D,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,KAAK,EAAE,SAAS;IAChB,IAAI,EAAE,SAAS;IACf,GAAG,EAAE,SAAS;IACd,GAAG,EAAE,UAAU;IACf,KAAK,EAAE,UAAU;IACjB,MAAM,EAAE,UAAU;IAClB,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,IAAI,EAAE,UAAU;IAChB,KAAK,EAAE,UAAU;CAClB,CAAA;AAED,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAA0B;IAC/D,OAAO,GAAG,MAAM,CAAC,KAAK,CAAC,GAAG,IAAI,GAAG,MAAM,CAAC,KAAK,EAAE,CAAA;AACjD,CAAC;AAED,MAAM,CAAC,MAAM,KAAK,GAAG;IACnB,GAAG,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAC5C,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IAChD,MAAM,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC;IAClD,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC9C,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC9C,GAAG,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,KAAK,CAAC;IAC5C,IAAI,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,MAAM,CAAC;IAC9C,KAAK,EAAE,CAAC,IAAY,EAAE,EAAE,CAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;CACjD,CAAA;AAED,MAAM,OAAO,OAAO;IAMlB,YAAY,IAAY;QAHhB,WAAM,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAC,CAAA;QAC3D,iBAAY,GAAG,CAAC,CAAA;QAGtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;IAED,KAAK;QACH,IAAI,CAAC,QAAQ,GAAG,WAAW,CAAC,GAAG,EAAE;YAC/B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,KAAK,IAAI,CAAC,MAAM,CAAC,IAAI,CAAC,YAAY,CAAC,IAAI,IAAI,CAAC,IAAI,EAAE,CAAC,CAAA;YACxE,IAAI,CAAC,YAAY,GAAG,CAAC,IAAI,CAAC,YAAY,GAAG,CAAC,CAAC,GAAG,IAAI,CAAC,MAAM,CAAC,MAAM,CAAA;QAClE,CAAC,EAAE,EAAE,CAAC,CAAA;QACN,OAAO,IAAI,CAAA;IACb,CAAC;IAED,IAAI;QACF,IAAI,IAAI,CAAC,QAAQ,EAAE,CAAC;YAClB,aAAa,CAAC,IAAI,CAAC,QAAQ,CAAC,CAAA;YAC5B,OAAO,CAAC,MAAM,CAAC,KAAK,CAAC,UAAU,CAAC,CAAA,CAAC,aAAa;QAChD,CAAC;IACH,CAAC;IAED,OAAO,CAAC,OAAe;QACrB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,KAAK,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;IAC/C,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,GAAG,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;IAC7C,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;IAChD,CAAC;IAED,IAAI,CAAC,OAAe;QAClB,IAAI,CAAC,IAAI,EAAE,CAAA;QACX,OAAO,CAAC,GAAG,CAAC,GAAG,KAAK,CAAC,IAAI,CAAC,GAAG,CAAC,IAAI,OAAO,EAAE,CAAC,CAAA;IAC9C,CAAC;IAED,IAAI,OAAO,CAAC,IAAY;QACtB,IAAI,CAAC,IAAI,GAAG,IAAI,CAAA;IAClB,CAAC;CACF;AAED,MAAM,UAAU,GAAG,CAAC,IAAY;IAC9B,OAAO,IAAI,OAAO,CAAC,IAAI,CAAC,CAAA;AAC1B,CAAC"}
@@ -0,0 +1,58 @@
1
+ export interface Config {
2
+ api_key: string;
3
+ api_url: string;
4
+ workspace_id?: string;
5
+ workspace?: string;
6
+ cache: {
7
+ enabled: boolean;
8
+ ttl: number;
9
+ directory: string;
10
+ max_size_mb: number;
11
+ };
12
+ sync: {
13
+ auto: boolean;
14
+ on_command: string[];
15
+ notify_changes: boolean;
16
+ interval: number;
17
+ };
18
+ files: {
19
+ include: string[];
20
+ exclude: string[];
21
+ tags: string[];
22
+ auto_include_tags: boolean;
23
+ };
24
+ }
25
+ export interface File {
26
+ id: string;
27
+ title: string;
28
+ path: string;
29
+ content?: string;
30
+ currentVersion: number;
31
+ projectId: string;
32
+ folderId: string | null;
33
+ status: string;
34
+ createdBy: string;
35
+ updatedBy: string;
36
+ createdAt: string;
37
+ updatedAt: string;
38
+ deletedAt: string | null;
39
+ }
40
+ export interface Project {
41
+ id: string;
42
+ name: string;
43
+ slug: string;
44
+ file_count: number;
45
+ created_at: string;
46
+ }
47
+ export interface Workspace {
48
+ id: string;
49
+ name: string;
50
+ slug: string;
51
+ }
52
+ export interface SearchResults {
53
+ results: {
54
+ files: File[];
55
+ };
56
+ total: number;
57
+ }
58
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,WAAW,MAAM;IACrB,OAAO,EAAE,MAAM,CAAA;IACf,OAAO,EAAE,MAAM,CAAA;IACf,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB,SAAS,CAAC,EAAE,MAAM,CAAA;IAClB,KAAK,EAAE;QACL,OAAO,EAAE,OAAO,CAAA;QAChB,GAAG,EAAE,MAAM,CAAA;QACX,SAAS,EAAE,MAAM,CAAA;QACjB,WAAW,EAAE,MAAM,CAAA;KACpB,CAAA;IACD,IAAI,EAAE;QACJ,IAAI,EAAE,OAAO,CAAA;QACb,UAAU,EAAE,MAAM,EAAE,CAAA;QACpB,cAAc,EAAE,OAAO,CAAA;QACvB,QAAQ,EAAE,MAAM,CAAA;KACjB,CAAA;IACD,KAAK,EAAE;QACL,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,OAAO,EAAE,MAAM,EAAE,CAAA;QACjB,IAAI,EAAE,MAAM,EAAE,CAAA;QACd,iBAAiB,EAAE,OAAO,CAAA;KAC3B,CAAA;CACF;AAED,MAAM,WAAW,IAAI;IACnB,EAAE,EAAE,MAAM,CAAA;IACV,KAAK,EAAE,MAAM,CAAA;IACb,IAAI,EAAE,MAAM,CAAA;IACZ,OAAO,CAAC,EAAE,MAAM,CAAA;IAChB,cAAc,EAAE,MAAM,CAAA;IACtB,SAAS,EAAE,MAAM,CAAA;IACjB,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;IACvB,MAAM,EAAE,MAAM,CAAA;IACd,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,CAAA;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAA;CACzB;AAED,MAAM,WAAW,OAAO;IACtB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;IACZ,UAAU,EAAE,MAAM,CAAA;IAClB,UAAU,EAAE,MAAM,CAAA;CACnB;AAED,MAAM,WAAW,SAAS;IACxB,EAAE,EAAE,MAAM,CAAA;IACV,IAAI,EAAE,MAAM,CAAA;IACZ,IAAI,EAAE,MAAM,CAAA;CACb;AAED,MAAM,WAAW,aAAa;IAC5B,OAAO,EAAE;QACP,KAAK,EAAE,IAAI,EAAE,CAAA;KACd,CAAA;IACD,KAAK,EAAE,MAAM,CAAA;CACd"}
@@ -0,0 +1,2 @@
1
+ export {};
2
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/types/index.ts"],"names":[],"mappings":""}
package/package.json ADDED
@@ -0,0 +1,58 @@
1
+ {
2
+ "name": "@contextium/cli",
3
+ "version": "0.3.0",
4
+ "description": "Command-line tool for syncing Contextium documentation to local cache and piping to AI coding assistants",
5
+ "keywords": [
6
+ "contextium",
7
+ "cli",
8
+ "documentation",
9
+ "ai",
10
+ "cursor",
11
+ "claude",
12
+ "copilot",
13
+ "ide",
14
+ "developer-tools",
15
+ "knowledge-management"
16
+ ],
17
+ "author": "Contextium",
18
+ "license": "MIT",
19
+ "repository": {
20
+ "type": "git",
21
+ "url": "https://github.com/tomjutla/contextium.git",
22
+ "directory": "apps/cli"
23
+ },
24
+ "homepage": "https://contextium.io/docs/cli",
25
+ "bugs": {
26
+ "url": "https://github.com/tomjutla/contextium/issues"
27
+ },
28
+ "main": "./dist/index.js",
29
+ "type": "module",
30
+ "bin": {
31
+ "contextium": "./dist/index.js"
32
+ },
33
+ "files": [
34
+ "dist",
35
+ "README.md"
36
+ ],
37
+ "scripts": {
38
+ "build": "tsc",
39
+ "dev": "tsx watch src/index.ts",
40
+ "start": "node dist/index.js",
41
+ "type-check": "tsc --noEmit",
42
+ "prepublishOnly": "npm run build"
43
+ },
44
+ "dependencies": {
45
+ "@azure/msal-node": "^5.0.6",
46
+ "axios": "^1.6.5",
47
+ "commander": "^11.1.0",
48
+ "open": "^11.0.0"
49
+ },
50
+ "devDependencies": {
51
+ "@types/node": "^20.11.0",
52
+ "tsx": "^4.7.0",
53
+ "typescript": "^5.3.3"
54
+ },
55
+ "engines": {
56
+ "node": ">=18.0.0"
57
+ }
58
+ }