@shipstatic/types 2.20.0 → 2.21.0-beta.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/dist/index.d.ts +37 -7
- package/dist/index.js +37 -7
- package/package.json +1 -1
- package/src/index.ts +38 -7
package/dist/index.d.ts
CHANGED
|
@@ -26,9 +26,20 @@ export type DeploymentStatusType = (typeof DeploymentStatus)[keyof typeof Deploy
|
|
|
26
26
|
* member here and every future one:
|
|
27
27
|
*
|
|
28
28
|
* - **Where the platform ships CODE, the code declares it.** `web`, `sdk`,
|
|
29
|
-
* `cli`, `git`, `n8n` and `
|
|
30
|
-
* names itself in its own source and nothing external is needed to
|
|
31
|
-
* apart.
|
|
29
|
+
* `cli`, `git`, `n8n`, `vsc` and `gmn` are surfaces this platform authors,
|
|
30
|
+
* so each names itself in its own source and nothing external is needed to
|
|
31
|
+
* tell them apart. A first-party WRAPPER counts as code even when it is a
|
|
32
|
+
* manifest: the GitHub Action and the Gemini extension each compose an
|
|
33
|
+
* invocation of a platform executable and relabel it through
|
|
34
|
+
* {@link SHIP_VIA_ENV}.
|
|
35
|
+
*
|
|
36
|
+
* **And only a surface that DEPLOYS gets a member — `@shipstatic/drop` is the
|
|
37
|
+
* recorded refusal.** The widget collects and validates files and hands raw
|
|
38
|
+
* `File[]` to its embedder, whose own SDK call is the deploy; drop makes no
|
|
39
|
+
* upload call anywhere, so a `drp` member would be a word nothing can emit.
|
|
40
|
+
* Those deploys read `sdk`, which is the truth: the embedder is a program
|
|
41
|
+
* embedding the SDK directly. Mint the member the day drop grows an upload
|
|
42
|
+
* arm, not before.
|
|
32
43
|
* - **Where the platform ships only a URL, the URL declares it.** A
|
|
33
44
|
* marketplace listing runs somebody else's client against a bare endpoint —
|
|
34
45
|
* every one of them the same server speaking the same protocol, and
|
|
@@ -69,6 +80,8 @@ export declare const DeploymentVia: {
|
|
|
69
80
|
readonly CLD: "cld";
|
|
70
81
|
/** Channel: the Cursor marketplace listing → `mcp.<domain>/crs`. */
|
|
71
82
|
readonly CRS: "crs";
|
|
83
|
+
/** The Gemini CLI extension. */
|
|
84
|
+
readonly GMN: "gmn";
|
|
72
85
|
/**
|
|
73
86
|
* A deploy that reached the REST API naming no origin at all — the
|
|
74
87
|
* platform-wide fallback, one altitude below `mcp`'s family fallback.
|
|
@@ -1622,10 +1635,11 @@ export declare const DEFAULT_API = "https://api.shipstatic.com";
|
|
|
1622
1635
|
* values — as the VS Code extension's child-process env block does — picks
|
|
1623
1636
|
* up a grown contract at the next pin bump instead of by remembered prose.
|
|
1624
1637
|
*
|
|
1625
|
-
* Browser builds read no environment at all, and the
|
|
1626
|
-
*
|
|
1627
|
-
* CLI
|
|
1628
|
-
*
|
|
1638
|
+
* Browser builds read no environment at all, and the wrapper-tier variables
|
|
1639
|
+
* are deliberately NOT here: `SHIP_PASSWORD` stays the CLI's own operational
|
|
1640
|
+
* lever (see `npm/ship/CLAUDE.md`, "CLI-only env vars"), and the origin
|
|
1641
|
+
* relabel slot has its own owner beside this object ({@link SHIP_VIA_ENV})
|
|
1642
|
+
* because two executables read it and neither reading is the SDK's.
|
|
1629
1643
|
*/
|
|
1630
1644
|
export declare const SHIP_ENV: {
|
|
1631
1645
|
/** The one credential slot — any platform token. */
|
|
@@ -1633,6 +1647,22 @@ export declare const SHIP_ENV: {
|
|
|
1633
1647
|
/** The API endpoint override. */
|
|
1634
1648
|
readonly API_URL: "SHIP_API_URL";
|
|
1635
1649
|
};
|
|
1650
|
+
/**
|
|
1651
|
+
* The origin-relabel slot for integrations that wrap a first-party
|
|
1652
|
+
* executable as a subprocess. A wrapper composes an argv and an env it does
|
|
1653
|
+
* not otherwise reach, so this variable is its one way to name the surface
|
|
1654
|
+
* the traffic is really from. Two executables read it through
|
|
1655
|
+
* {@link normalizeVia}: the `ship` CLI (default `cli`; the GitHub Action
|
|
1656
|
+
* sets `git`) and the stdio MCP bin (default `mcp`; the Gemini CLI
|
|
1657
|
+
* extension sets `gmn`). In-process SDK consumers pass the programmatic
|
|
1658
|
+
* `via` option instead: same destination, different mechanism.
|
|
1659
|
+
*
|
|
1660
|
+
* Deliberately not a member of {@link SHIP_ENV}, which is the SDK's ambient
|
|
1661
|
+
* contract; the SDK never reads this. The name earned an owner the day the
|
|
1662
|
+
* stdio bin became its second reader: one spelling, two executables, and a
|
|
1663
|
+
* misspelling on either side drops attribution silently.
|
|
1664
|
+
*/
|
|
1665
|
+
export declare const SHIP_VIA_ENV = "SHIP_VIA";
|
|
1636
1666
|
/**
|
|
1637
1667
|
* Where a human creates an API key — the console deep link quoted by every
|
|
1638
1668
|
* surface that teaches authentication (the CLI's config wizard, the VS Code
|
package/dist/index.js
CHANGED
|
@@ -28,9 +28,20 @@ export const DeploymentStatus = {
|
|
|
28
28
|
* member here and every future one:
|
|
29
29
|
*
|
|
30
30
|
* - **Where the platform ships CODE, the code declares it.** `web`, `sdk`,
|
|
31
|
-
* `cli`, `git`, `n8n` and `
|
|
32
|
-
* names itself in its own source and nothing external is needed to
|
|
33
|
-
* apart.
|
|
31
|
+
* `cli`, `git`, `n8n`, `vsc` and `gmn` are surfaces this platform authors,
|
|
32
|
+
* so each names itself in its own source and nothing external is needed to
|
|
33
|
+
* tell them apart. A first-party WRAPPER counts as code even when it is a
|
|
34
|
+
* manifest: the GitHub Action and the Gemini extension each compose an
|
|
35
|
+
* invocation of a platform executable and relabel it through
|
|
36
|
+
* {@link SHIP_VIA_ENV}.
|
|
37
|
+
*
|
|
38
|
+
* **And only a surface that DEPLOYS gets a member — `@shipstatic/drop` is the
|
|
39
|
+
* recorded refusal.** The widget collects and validates files and hands raw
|
|
40
|
+
* `File[]` to its embedder, whose own SDK call is the deploy; drop makes no
|
|
41
|
+
* upload call anywhere, so a `drp` member would be a word nothing can emit.
|
|
42
|
+
* Those deploys read `sdk`, which is the truth: the embedder is a program
|
|
43
|
+
* embedding the SDK directly. Mint the member the day drop grows an upload
|
|
44
|
+
* arm, not before.
|
|
34
45
|
* - **Where the platform ships only a URL, the URL declares it.** A
|
|
35
46
|
* marketplace listing runs somebody else's client against a bare endpoint —
|
|
36
47
|
* every one of them the same server speaking the same protocol, and
|
|
@@ -71,6 +82,8 @@ export const DeploymentVia = {
|
|
|
71
82
|
CLD: 'cld',
|
|
72
83
|
/** Channel: the Cursor marketplace listing → `mcp.<domain>/crs`. */
|
|
73
84
|
CRS: 'crs',
|
|
85
|
+
/** The Gemini CLI extension. */
|
|
86
|
+
GMN: 'gmn',
|
|
74
87
|
/**
|
|
75
88
|
* A deploy that reached the REST API naming no origin at all — the
|
|
76
89
|
* platform-wide fallback, one altitude below `mcp`'s family fallback.
|
|
@@ -1591,10 +1604,11 @@ export const DEFAULT_API = 'https://api.shipstatic.com';
|
|
|
1591
1604
|
* values — as the VS Code extension's child-process env block does — picks
|
|
1592
1605
|
* up a grown contract at the next pin bump instead of by remembered prose.
|
|
1593
1606
|
*
|
|
1594
|
-
* Browser builds read no environment at all, and the
|
|
1595
|
-
*
|
|
1596
|
-
* CLI
|
|
1597
|
-
*
|
|
1607
|
+
* Browser builds read no environment at all, and the wrapper-tier variables
|
|
1608
|
+
* are deliberately NOT here: `SHIP_PASSWORD` stays the CLI's own operational
|
|
1609
|
+
* lever (see `npm/ship/CLAUDE.md`, "CLI-only env vars"), and the origin
|
|
1610
|
+
* relabel slot has its own owner beside this object ({@link SHIP_VIA_ENV})
|
|
1611
|
+
* because two executables read it and neither reading is the SDK's.
|
|
1598
1612
|
*/
|
|
1599
1613
|
export const SHIP_ENV = {
|
|
1600
1614
|
/** The one credential slot — any platform token. */
|
|
@@ -1602,6 +1616,22 @@ export const SHIP_ENV = {
|
|
|
1602
1616
|
/** The API endpoint override. */
|
|
1603
1617
|
API_URL: 'SHIP_API_URL',
|
|
1604
1618
|
};
|
|
1619
|
+
/**
|
|
1620
|
+
* The origin-relabel slot for integrations that wrap a first-party
|
|
1621
|
+
* executable as a subprocess. A wrapper composes an argv and an env it does
|
|
1622
|
+
* not otherwise reach, so this variable is its one way to name the surface
|
|
1623
|
+
* the traffic is really from. Two executables read it through
|
|
1624
|
+
* {@link normalizeVia}: the `ship` CLI (default `cli`; the GitHub Action
|
|
1625
|
+
* sets `git`) and the stdio MCP bin (default `mcp`; the Gemini CLI
|
|
1626
|
+
* extension sets `gmn`). In-process SDK consumers pass the programmatic
|
|
1627
|
+
* `via` option instead: same destination, different mechanism.
|
|
1628
|
+
*
|
|
1629
|
+
* Deliberately not a member of {@link SHIP_ENV}, which is the SDK's ambient
|
|
1630
|
+
* contract; the SDK never reads this. The name earned an owner the day the
|
|
1631
|
+
* stdio bin became its second reader: one spelling, two executables, and a
|
|
1632
|
+
* misspelling on either side drops attribution silently.
|
|
1633
|
+
*/
|
|
1634
|
+
export const SHIP_VIA_ENV = 'SHIP_VIA';
|
|
1605
1635
|
/**
|
|
1606
1636
|
* Where a human creates an API key — the console deep link quoted by every
|
|
1607
1637
|
* surface that teaches authentication (the CLI's config wizard, the VS Code
|
package/package.json
CHANGED
package/src/index.ts
CHANGED
|
@@ -33,9 +33,20 @@ export type DeploymentStatusType = (typeof DeploymentStatus)[keyof typeof Deploy
|
|
|
33
33
|
* member here and every future one:
|
|
34
34
|
*
|
|
35
35
|
* - **Where the platform ships CODE, the code declares it.** `web`, `sdk`,
|
|
36
|
-
* `cli`, `git`, `n8n` and `
|
|
37
|
-
* names itself in its own source and nothing external is needed to
|
|
38
|
-
* apart.
|
|
36
|
+
* `cli`, `git`, `n8n`, `vsc` and `gmn` are surfaces this platform authors,
|
|
37
|
+
* so each names itself in its own source and nothing external is needed to
|
|
38
|
+
* tell them apart. A first-party WRAPPER counts as code even when it is a
|
|
39
|
+
* manifest: the GitHub Action and the Gemini extension each compose an
|
|
40
|
+
* invocation of a platform executable and relabel it through
|
|
41
|
+
* {@link SHIP_VIA_ENV}.
|
|
42
|
+
*
|
|
43
|
+
* **And only a surface that DEPLOYS gets a member — `@shipstatic/drop` is the
|
|
44
|
+
* recorded refusal.** The widget collects and validates files and hands raw
|
|
45
|
+
* `File[]` to its embedder, whose own SDK call is the deploy; drop makes no
|
|
46
|
+
* upload call anywhere, so a `drp` member would be a word nothing can emit.
|
|
47
|
+
* Those deploys read `sdk`, which is the truth: the embedder is a program
|
|
48
|
+
* embedding the SDK directly. Mint the member the day drop grows an upload
|
|
49
|
+
* arm, not before.
|
|
39
50
|
* - **Where the platform ships only a URL, the URL declares it.** A
|
|
40
51
|
* marketplace listing runs somebody else's client against a bare endpoint —
|
|
41
52
|
* every one of them the same server speaking the same protocol, and
|
|
@@ -76,6 +87,8 @@ export const DeploymentVia = {
|
|
|
76
87
|
CLD: 'cld',
|
|
77
88
|
/** Channel: the Cursor marketplace listing → `mcp.<domain>/crs`. */
|
|
78
89
|
CRS: 'crs',
|
|
90
|
+
/** The Gemini CLI extension. */
|
|
91
|
+
GMN: 'gmn',
|
|
79
92
|
/**
|
|
80
93
|
* A deploy that reached the REST API naming no origin at all — the
|
|
81
94
|
* platform-wide fallback, one altitude below `mcp`'s family fallback.
|
|
@@ -2463,10 +2476,11 @@ export const DEFAULT_API = 'https://api.shipstatic.com';
|
|
|
2463
2476
|
* values — as the VS Code extension's child-process env block does — picks
|
|
2464
2477
|
* up a grown contract at the next pin bump instead of by remembered prose.
|
|
2465
2478
|
*
|
|
2466
|
-
* Browser builds read no environment at all, and the
|
|
2467
|
-
*
|
|
2468
|
-
* CLI
|
|
2469
|
-
*
|
|
2479
|
+
* Browser builds read no environment at all, and the wrapper-tier variables
|
|
2480
|
+
* are deliberately NOT here: `SHIP_PASSWORD` stays the CLI's own operational
|
|
2481
|
+
* lever (see `npm/ship/CLAUDE.md`, "CLI-only env vars"), and the origin
|
|
2482
|
+
* relabel slot has its own owner beside this object ({@link SHIP_VIA_ENV})
|
|
2483
|
+
* because two executables read it and neither reading is the SDK's.
|
|
2470
2484
|
*/
|
|
2471
2485
|
export const SHIP_ENV = {
|
|
2472
2486
|
/** The one credential slot — any platform token. */
|
|
@@ -2475,6 +2489,23 @@ export const SHIP_ENV = {
|
|
|
2475
2489
|
API_URL: 'SHIP_API_URL',
|
|
2476
2490
|
} as const;
|
|
2477
2491
|
|
|
2492
|
+
/**
|
|
2493
|
+
* The origin-relabel slot for integrations that wrap a first-party
|
|
2494
|
+
* executable as a subprocess. A wrapper composes an argv and an env it does
|
|
2495
|
+
* not otherwise reach, so this variable is its one way to name the surface
|
|
2496
|
+
* the traffic is really from. Two executables read it through
|
|
2497
|
+
* {@link normalizeVia}: the `ship` CLI (default `cli`; the GitHub Action
|
|
2498
|
+
* sets `git`) and the stdio MCP bin (default `mcp`; the Gemini CLI
|
|
2499
|
+
* extension sets `gmn`). In-process SDK consumers pass the programmatic
|
|
2500
|
+
* `via` option instead: same destination, different mechanism.
|
|
2501
|
+
*
|
|
2502
|
+
* Deliberately not a member of {@link SHIP_ENV}, which is the SDK's ambient
|
|
2503
|
+
* contract; the SDK never reads this. The name earned an owner the day the
|
|
2504
|
+
* stdio bin became its second reader: one spelling, two executables, and a
|
|
2505
|
+
* misspelling on either side drops attribution silently.
|
|
2506
|
+
*/
|
|
2507
|
+
export const SHIP_VIA_ENV = 'SHIP_VIA';
|
|
2508
|
+
|
|
2478
2509
|
/**
|
|
2479
2510
|
* Where a human creates an API key — the console deep link quoted by every
|
|
2480
2511
|
* surface that teaches authentication (the CLI's config wizard, the VS Code
|