@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.
- package/LICENSE +123 -0
- package/README.md +87 -0
- package/dist/index.js +1176 -0
- 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.
|