@thermai/flightdeck-cli 0.1.0-pilot.1

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 (4) hide show
  1. package/LICENSE +123 -0
  2. package/README.md +87 -0
  3. package/dist/index.js +1176 -0
  4. package/package.json +42 -0
package/LICENSE ADDED
@@ -0,0 +1,123 @@
1
+ FLIGHTDECK CLI
2
+ PROPRIETARY SOFTWARE LICENSE
3
+
4
+ Copyright (c) 2026 ThermAI Group Ltd. All rights reserved.
5
+
6
+ This software, including its source code, compiled binaries, documentation,
7
+ and associated files (together, the "Software"), is the proprietary property
8
+ of ThermAI Group Ltd ("ThermAI") or its licensors. An "Official Release" is a
9
+ complete Flightdeck CLI package that ThermAI has designated for public
10
+ distribution. This license applies to the CLI only, not to ThermAI's backend
11
+ services, infrastructure, or unpublished repository contents.
12
+
13
+ 1. INSTALLATION, USE, AND REDISTRIBUTION
14
+
15
+ Subject to this license, ThermAI grants you a limited, non-exclusive,
16
+ royalty-free license to download, copy, install, and use Official Releases
17
+ for interacting with Flightdeck services, including local configuration,
18
+ inspection, and preparation of workloads.
19
+
20
+ You may redistribute complete, unchanged Official Releases, including
21
+ through package registries, mirrors, and internal distribution systems,
22
+ provided you retain this license and all accompanying copyright,
23
+ trademark, attribution, and third-party license notices. Each recipient
24
+ receives their rights directly from ThermAI under this license; you may
25
+ not relicense the Software or impose terms that contradict this license.
26
+
27
+ No Flightdeck or npm account is required merely to download, install,
28
+ copy, or redistribute an Official Release or use its offline functions.
29
+ Access to Flightdeck services requires an authorized account and is
30
+ subject to the applicable agreement between ThermAI and you (or your
31
+ organization). This license does not grant service access or compute
32
+ credit. No other rights are granted.
33
+
34
+ 2. RESTRICTIONS
35
+
36
+ Except as expressly permitted by this license, by ThermAI in writing,
37
+ or by applicable law that cannot be excluded by agreement, you may not:
38
+
39
+ (a) modify, adapt, translate, patch, or create derivative works of the
40
+ Software;
41
+ (b) distribute altered or incomplete copies of the Software, sublicense
42
+ or sell rights to the Software, or otherwise transfer it except as
43
+ expressly permitted in section 1;
44
+ (c) reverse engineer, decompile, or disassemble the Software, except to
45
+ the extent that applicable law expressly prohibits this restriction;
46
+ (d) remove, alter, or obscure any copyright, trademark, or other
47
+ proprietary notice in the Software;
48
+ (e) use the Software to access Flightdeck services other than through
49
+ an account and credentials issued to you by ThermAI or by an
50
+ organization authorized by ThermAI; or
51
+ (f) use the Software in any manner that violates applicable law or the
52
+ terms of your agreement with ThermAI.
53
+
54
+ Using documented configuration options and writing your own workload
55
+ files or automation that invokes the CLI do not constitute alteration
56
+ of the Software. These restrictions do not limit the third-party rights
57
+ described in section 4.
58
+
59
+ 3. OWNERSHIP
60
+
61
+ The Software is licensed, not sold. ThermAI and its licensors retain all
62
+ right, title, and interest in and to the Software, including all
63
+ intellectual property rights. Nothing in this license transfers any
64
+ ownership interest to you.
65
+
66
+ 4. THIRD-PARTY COMPONENTS
67
+
68
+ The Software incorporates open-source and third-party components that are
69
+ distributed under their own license terms. Those components are governed
70
+ by their respective licenses, and nothing in this license limits your
71
+ rights under them. Copies of the applicable notices are included with the
72
+ Software's dependencies.
73
+
74
+ 5. PUBLIC DISTRIBUTION AND TRADEMARKS
75
+
76
+ Official Releases are not subject to a confidentiality obligation under
77
+ this license. Public availability does not make the Software open source
78
+ or grant rights beyond those stated here. This license does not authorize
79
+ disclosure of credentials, customer data, or other non-public material.
80
+
81
+ You may retain ThermAI's names and marks in unchanged Official Releases
82
+ and use them to truthfully identify the Software's origin. No other
83
+ trademark rights are granted, and redistribution must not imply ThermAI's
84
+ endorsement of the distributor or any other product or service.
85
+
86
+ 6. TERMINATION
87
+
88
+ This license is effective until terminated. It terminates automatically
89
+ if you breach any of its terms. Upon termination you must cease use,
90
+ copying, and redistribution of the Software and destroy copies in your
91
+ possession or control, except to the extent retention is required by law.
92
+ Termination of your rights does not terminate the rights of recipients
93
+ who remain in compliance with this license.
94
+
95
+ If your service agreement ends, your right to access Flightdeck services
96
+ ends as provided in that agreement. That alone does not terminate the
97
+ installation, offline-use, or redistribution rights granted here.
98
+
99
+ 7. NO WARRANTY
100
+
101
+ THE SOFTWARE IS PROVIDED "AS IS" WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
102
+ IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
103
+ FITNESS FOR A PARTICULAR PURPOSE, AND NON-INFRINGEMENT, EXCEPT WHERE SUCH
104
+ WARRANTIES CANNOT BE EXCLUDED BY LAW.
105
+
106
+ 8. LIMITATION OF LIABILITY
107
+
108
+ TO THE MAXIMUM EXTENT PERMITTED BY APPLICABLE LAW, THERMAI SHALL NOT BE
109
+ LIABLE FOR ANY INDIRECT, INCIDENTAL, SPECIAL, CONSEQUENTIAL, OR PUNITIVE
110
+ DAMAGES, OR ANY LOSS OF PROFITS, DATA, OR BUSINESS, ARISING OUT OF OR IN
111
+ CONNECTION WITH THE SOFTWARE OR THIS LICENSE, HOWEVER CAUSED. NOTHING IN
112
+ THIS LICENSE EXCLUDES OR LIMITS LIABILITY THAT CANNOT BE EXCLUDED OR
113
+ LIMITED UNDER APPLICABLE LAW.
114
+
115
+ 9. GOVERNING LAW
116
+
117
+ This license is governed by the laws of England and Wales. The courts of
118
+ England and Wales have exclusive jurisdiction over any dispute arising
119
+ out of or in connection with it.
120
+
121
+ 10. CONTACT
122
+
123
+ Licensing enquiries: ThermAI Group Ltd, https://thermai.uk
package/README.md ADDED
@@ -0,0 +1,87 @@
1
+ # ThermAI Flightdeck CLI
2
+
3
+ Install the command-line client, authorize it through the Flightdeck portal,
4
+ then submit and inspect GPU jobs. No npm account is required to install the
5
+ planned public package. A provisioned Flightdeck account is required to use the
6
+ service; downloading the CLI does not create an account or grant compute credit.
7
+
8
+ ## Release status
9
+
10
+ The npm publishing pathway is being prepared. The operator has created the
11
+ `@thermai` npm organization; the package name is `@thermai/flightdeck-cli`.
12
+ The prepared candidate is `0.1.0-pilot.1`, with operator-supplied proprietary
13
+ terms in `LICENSE`, amended at the operator's direction to allow redistribution
14
+ of unchanged official releases. The operator has approved proceeding with the
15
+ internal proving release; publication awaits technical release checks and
16
+ completion of publishing setup. The commands
17
+ below describe the intended released experience, not an announcement that this
18
+ package is already on npm.
19
+
20
+ ## Installation and login
21
+
22
+ Requires Node.js 22 and npm. Use a user-owned Node installation or npm prefix;
23
+ the CLI does not require administrator/root privileges.
24
+
25
+ ```sh
26
+ npm install -g @thermai/flightdeck-cli@0.1.0-pilot.1
27
+ flightdeck login
28
+ ```
29
+
30
+ Login prints a URL and verification code. Open that URL, sign into
31
+ `https://portal.thermai.uk`, and approve the named CLI credential and requested
32
+ scopes. The CLI waits for approval; no API key needs to be copied manually.
33
+
34
+ ```sh
35
+ flightdeck whoami
36
+ flightdeck balance
37
+ flightdeck sbatch workload.sbatch --dry-run
38
+ ```
39
+
40
+ The default API is `https://api.flightdeck.thermai.uk`. A deliberately separate
41
+ test environment can be selected with `flightdeck login --api-url <HTTPS origin>`.
42
+
43
+ Login saves a scoped credential in `~/.flightdeck/config.json` with restrictive
44
+ permissions. Never share that file or include it in a workload bundle. Use
45
+ `flightdeck logout` to revoke the credential and remove the local login. Portal
46
+ credential management can revoke an individual workstation as well.
47
+
48
+ ## Workload commands
49
+
50
+ After internal qualification and explicit policy/credit approval:
51
+
52
+ ```sh
53
+ flightdeck sbatch workload.sbatch
54
+ flightdeck status <flight-id>
55
+ flightdeck logs <flight-id> --follow
56
+ flightdeck outputs <flight-id>
57
+ flightdeck download <flight-id> --output-dir ./results
58
+ flightdeck cancel <flight-id>
59
+ ```
60
+
61
+ Submission, including `flightdeck slurm-test`, can provision paid resources.
62
+ `sbatch --dry-run` only translates locally and does not submit. Flightdeck
63
+ supports a subset of single-node Slurm directives, not an arbitrary HPC cluster.
64
+ Workload images must satisfy the Flightdeck runner contract.
65
+
66
+ ## Versions
67
+
68
+ ```sh
69
+ flightdeck --version
70
+ npm install -g @thermai/flightdeck-cli@<approved-version>
71
+ ```
72
+
73
+ Stable releases use npm's `latest` tag. Explicit pilot/prerelease versions use
74
+ `next`; they do not automatically replace stable installations. Updating is an
75
+ explicit install, not an automatic mutation performed when the CLI runs.
76
+ Once a stable release exists, `npm install -g @thermai/flightdeck-cli` selects it.
77
+
78
+ ## Distribution boundary
79
+
80
+ The source repository remains private. Public distribution of the CLI does not
81
+ include backend services, infrastructure, provider credentials, or customer
82
+ data. The proprietary terms in `LICENSE` permit installation, use, and
83
+ redistribution of complete, unchanged official releases with their notices
84
+ intact. Alteration and derivative works are restricted, subject to applicable
85
+ law and third-party licenses. Documented configuration and your own workloads
86
+ and CLI automation are permitted. This is not an open-source license; service
87
+ access remains subject to your Flightdeck account and service agreement.