@mks2508/coolify-mks-cli-mcp 0.6.3 → 0.9.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 (75) hide show
  1. package/dist/cli/coolify-state.d.ts +101 -5
  2. package/dist/cli/coolify-state.d.ts.map +1 -1
  3. package/dist/cli/index.js +23165 -11543
  4. package/dist/cli/ui/highlighter.d.ts +28 -0
  5. package/dist/cli/ui/highlighter.d.ts.map +1 -0
  6. package/dist/cli/ui/index.d.ts +9 -0
  7. package/dist/cli/ui/index.d.ts.map +1 -0
  8. package/dist/cli/ui/spinners.d.ts +100 -0
  9. package/dist/cli/ui/spinners.d.ts.map +1 -0
  10. package/dist/cli/ui/tables.d.ts +103 -0
  11. package/dist/cli/ui/tables.d.ts.map +1 -0
  12. package/dist/coolify/config.d.ts +25 -0
  13. package/dist/coolify/config.d.ts.map +1 -1
  14. package/dist/coolify/index.d.ts +139 -12
  15. package/dist/coolify/index.d.ts.map +1 -1
  16. package/dist/coolify/types.d.ts +160 -2
  17. package/dist/coolify/types.d.ts.map +1 -1
  18. package/dist/examples/demo-ui.d.ts +8 -0
  19. package/dist/examples/demo-ui.d.ts.map +1 -0
  20. package/dist/index.cjs +2580 -230
  21. package/dist/index.cjs.map +1 -1
  22. package/dist/index.js +2598 -226
  23. package/dist/index.js.map +1 -1
  24. package/dist/sdk.d.ts +96 -7
  25. package/dist/sdk.d.ts.map +1 -1
  26. package/dist/server/stdio.js +475 -73
  27. package/dist/tools/definitions.d.ts.map +1 -1
  28. package/dist/tools/handlers.d.ts.map +1 -1
  29. package/dist/utils/env-parser.d.ts +24 -0
  30. package/dist/utils/env-parser.d.ts.map +1 -0
  31. package/dist/utils/format.d.ts +32 -0
  32. package/dist/utils/format.d.ts.map +1 -1
  33. package/package.json +17 -4
  34. package/src/cli/actions.ts +9 -2
  35. package/src/cli/commands/create.ts +332 -24
  36. package/src/cli/commands/db.ts +37 -0
  37. package/src/cli/commands/delete.ts +6 -2
  38. package/src/cli/commands/deploy.ts +347 -49
  39. package/src/cli/commands/deployments.ts +6 -2
  40. package/src/cli/commands/diagnose.ts +3 -3
  41. package/src/cli/commands/env.ts +424 -31
  42. package/src/cli/commands/exec.ts +6 -2
  43. package/src/cli/commands/init.ts +991 -0
  44. package/src/cli/commands/logs.ts +224 -24
  45. package/src/cli/commands/main-menu.ts +21 -0
  46. package/src/cli/commands/projects.ts +312 -29
  47. package/src/cli/commands/restart.ts +6 -2
  48. package/src/cli/commands/service-logs.ts +14 -0
  49. package/src/cli/commands/show.ts +45 -12
  50. package/src/cli/commands/start.ts +6 -2
  51. package/src/cli/commands/status.ts +554 -0
  52. package/src/cli/commands/stop.ts +6 -2
  53. package/src/cli/commands/svc.ts +7 -1
  54. package/src/cli/commands/update.ts +79 -2
  55. package/src/cli/commands/volumes.ts +293 -0
  56. package/src/cli/coolify-state.ts +203 -12
  57. package/src/cli/index.ts +138 -11
  58. package/src/cli/name-resolver.ts +228 -0
  59. package/src/cli/ui/banner.ts +276 -0
  60. package/src/cli/ui/highlighter.ts +176 -0
  61. package/src/cli/ui/index.ts +9 -0
  62. package/src/cli/ui/prompts.ts +155 -0
  63. package/src/cli/ui/screen.ts +630 -0
  64. package/src/cli/ui/select.ts +280 -0
  65. package/src/cli/ui/spinners.ts +256 -0
  66. package/src/cli/ui/tables.ts +407 -0
  67. package/src/coolify/config.ts +75 -0
  68. package/src/coolify/index.ts +565 -101
  69. package/src/coolify/types.ts +165 -2
  70. package/src/examples/demo-ui.ts +78 -0
  71. package/src/sdk.ts +211 -1
  72. package/src/tools/definitions.ts +22 -0
  73. package/src/tools/handlers.ts +19 -0
  74. package/src/utils/env-parser.ts +45 -0
  75. package/src/utils/format.ts +178 -0
@@ -8,17 +8,28 @@
8
8
  * @module
9
9
  */
10
10
  /**
11
- * State stored in .coolify.json (generated by create-bunspace deployer).
11
+ * State stored in .coolify.json (generated by create-bunspace deployer or init command).
12
+ *
13
+ * This file links a local directory to a Coolify deployment, storing all necessary
14
+ * UUIDs and metadata for CLI commands to work without manual UUID entry.
12
15
  */
13
16
  export interface ICoolifyDeployState {
14
17
  /** Application UUID in Coolify */
15
18
  appUuid: string;
19
+ /** Application name (for display purposes) */
20
+ appName?: string;
16
21
  /** Server UUID */
17
22
  serverUuid: string;
23
+ /** Server name (for display purposes) */
24
+ serverName?: string;
18
25
  /** Project UUID */
19
26
  projectUuid: string;
27
+ /** Project name (for display purposes) */
28
+ projectName?: string;
20
29
  /** Environment UUID */
21
30
  environmentUuid: string;
31
+ /** Environment name (for display purposes) */
32
+ environmentName?: string;
22
33
  /** Domain if configured */
23
34
  domain?: string;
24
35
  /** Docker compose or Dockerfile path */
@@ -27,22 +38,107 @@ export interface ICoolifyDeployState {
27
38
  baseDirectory?: string;
28
39
  /** Git branch */
29
40
  branch?: string;
30
- /** Application type */
41
+ /** Git repository URL */
42
+ gitRepository?: string;
43
+ /** Application source type (github-app, deploy-key, docker-image, etc.) */
44
+ sourceType?: string;
45
+ /** Application type (legacy, may be undefined) */
31
46
  type?: string;
32
- /** Build pack */
47
+ /** Build pack (dockerfile, nixpacks, static, dockercompose) */
33
48
  buildPack?: string;
34
- /** Auto-deploy enabled */
49
+ /** Ports exposed (comma-separated) */
50
+ portsExposes?: string;
51
+ /** Auto-deploy enabled (Coolify default: true) */
35
52
  autoDeployEnabled?: boolean;
53
+ /** Watch paths for selective auto-deploy (newline-separated globs, null = all changes) */
54
+ watchPaths?: string | null;
55
+ /** When this state was last updated */
56
+ updatedAt?: string;
57
+ /** Coolify instance URL */
58
+ coolifyUrl?: string;
59
+ }
60
+ /**
61
+ * Multi-app state for monorepos deploying multiple services from one repo.
62
+ *
63
+ * Stored alongside or instead of the single-app state in .coolify.json.
64
+ */
65
+ export interface ICoolifyMultiAppState {
66
+ /** All apps deployed from this repo */
67
+ apps: Array<{
68
+ /** Application UUID in Coolify */
69
+ uuid: string;
70
+ /** Application name */
71
+ name: string;
72
+ /** Service role (e.g. "backend", "admin", "docs", "proxy") */
73
+ service: string;
74
+ /** Domain if configured (with protocol). Null for internal services. */
75
+ domain?: string | null;
76
+ /** Dockerfile path relative to repo root */
77
+ dockerfile?: string | null;
78
+ /** Exposed port */
79
+ port?: number;
80
+ /** Auto-deploy enabled (Coolify default: true) */
81
+ autoDeployEnabled?: boolean;
82
+ /** Watch paths for selective auto-deploy (newline-separated globs, null = all changes) */
83
+ watchPaths?: string | null;
84
+ }>;
85
+ /** Server UUID */
86
+ serverUuid: string;
87
+ /** Server name (for display purposes) */
88
+ serverName?: string;
89
+ /** Project UUID */
90
+ projectUuid: string;
91
+ /** Project name (for display purposes) */
92
+ projectName?: string;
93
+ /** Environment UUID */
94
+ environmentUuid: string;
95
+ /** Environment name (for display purposes) */
96
+ environmentName?: string;
97
+ /** Git branch */
98
+ branch?: string;
99
+ /** Git repository URL */
100
+ gitRepository?: string;
101
+ /** Coolify instance URL */
102
+ coolifyUrl?: string;
103
+ /** When this state was last updated */
104
+ updatedAt?: string;
36
105
  }
37
106
  /**
38
- * Loads .coolify.json from the current working directory.
107
+ * Loads .coolify.json from the current working directory (single-app format).
108
+ *
109
+ * Handles both single-app and multi-app formats. For multi-app state with
110
+ * exactly one app, returns a synthesized single-app state for backward compat.
39
111
  *
40
112
  * @returns The deploy state if found, null otherwise
41
113
  */
42
114
  export declare function loadCoolifyState(): ICoolifyDeployState | null;
115
+ /**
116
+ * Loads .coolify.json in multi-app format.
117
+ *
118
+ * If the file is in single-app format, returns null (use loadCoolifyState instead).
119
+ *
120
+ * @returns The multi-app state if found, null otherwise
121
+ */
122
+ export declare function loadMultiAppState(): ICoolifyMultiAppState | null;
123
+ /**
124
+ * Writes .coolify.json in multi-app format to the current working directory.
125
+ *
126
+ * @param state - The multi-app state to write
127
+ */
128
+ export declare function writeMultiAppState(state: ICoolifyMultiAppState): void;
129
+ /**
130
+ * Writes .coolify.json to the current working directory.
131
+ *
132
+ * @param state - The state to write
133
+ */
134
+ export declare function writeCoolifyState(state: ICoolifyDeployState): void;
43
135
  /**
44
136
  * Resolves a UUID argument — if not provided, tries to read from .coolify.json.
45
137
  *
138
+ * Supports both single-app and multi-app state formats. For multi-app state
139
+ * with exactly one app, auto-selects that app. For multiple apps, returns null
140
+ * (user must specify explicitly).
141
+ *
46
142
  * @param uuid - UUID from CLI argument (may be undefined)
47
143
  * @param field - Which field to read from .coolify.json (default: appUuid)
48
144
  * @returns The resolved UUID or null if not found
@@ -1 +1 @@
1
- {"version":3,"file":"coolify-state.d.ts","sourceRoot":"","sources":["../../src/cli/coolify-state.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAKH;;GAEG;AACH,MAAM,WAAW,mBAAmB;IAClC,kCAAkC;IAClC,OAAO,EAAE,MAAM,CAAC;IAChB,kBAAkB;IAClB,UAAU,EAAE,MAAM,CAAC;IACnB,mBAAmB;IACnB,WAAW,EAAE,MAAM,CAAC;IACpB,uBAAuB;IACvB,eAAe,EAAE,MAAM,CAAC;IACxB,2BAA2B;IAC3B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,wCAAwC;IACxC,iBAAiB,CAAC,EAAE,MAAM,CAAC;IAC3B,uCAAuC;IACvC,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,iBAAiB;IACjB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,uBAAuB;IACvB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,iBAAiB;IACjB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,0BAA0B;IAC1B,iBAAiB,CAAC,EAAE,OAAO,CAAC;CAC7B;AAID;;;;GAIG;AACH,wBAAgB,gBAAgB,IAAI,mBAAmB,GAAG,IAAI,CAmB7D;AAED;;;;;;GAMG;AACH,wBAAgB,WAAW,CACzB,IAAI,EAAE,MAAM,GAAG,SAAS,EACxB,KAAK,GAAE,MAAM,mBAA+B,GAC3C,MAAM,GAAG,IAAI,CAQf"}
1
+ {"version":3,"file":"coolify-state.d.ts","sourceRoot":"","sources":["../../src/cli/coolify-state.ts"],"names":[],"mappings":"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"}