@agentuity/cli 0.1.43 → 0.1.44
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/auth.d.ts +2 -2
- package/dist/auth.d.ts.map +1 -1
- package/dist/auth.js +7 -5
- package/dist/auth.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +24 -12
- package/dist/cli.js.map +1 -1
- package/dist/cmd/build/entry-generator.d.ts.map +1 -1
- package/dist/cmd/build/entry-generator.js +26 -17
- package/dist/cmd/build/entry-generator.js.map +1 -1
- package/dist/cmd/build/vite/public-asset-path-plugin.d.ts +17 -20
- package/dist/cmd/build/vite/public-asset-path-plugin.d.ts.map +1 -1
- package/dist/cmd/build/vite/public-asset-path-plugin.js +62 -43
- package/dist/cmd/build/vite/public-asset-path-plugin.js.map +1 -1
- package/dist/cmd/build/vite/vite-asset-server-config.d.ts.map +1 -1
- package/dist/cmd/build/vite/vite-asset-server-config.js +3 -1
- package/dist/cmd/build/vite/vite-asset-server-config.js.map +1 -1
- package/dist/cmd/cloud/env/org-util.d.ts +2 -1
- package/dist/cmd/cloud/env/org-util.d.ts.map +1 -1
- package/dist/cmd/cloud/env/org-util.js +4 -2
- package/dist/cmd/cloud/env/org-util.js.map +1 -1
- package/dist/cmd/cloud/stream/create.d.ts +3 -0
- package/dist/cmd/cloud/stream/create.d.ts.map +1 -0
- package/dist/cmd/cloud/stream/create.js +227 -0
- package/dist/cmd/cloud/stream/create.js.map +1 -0
- package/dist/cmd/cloud/stream/delete.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/delete.js +2 -1
- package/dist/cmd/cloud/stream/delete.js.map +1 -1
- package/dist/cmd/cloud/stream/get.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/get.js +2 -1
- package/dist/cmd/cloud/stream/get.js.map +1 -1
- package/dist/cmd/cloud/stream/index.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/index.js +10 -1
- package/dist/cmd/cloud/stream/index.js.map +1 -1
- package/dist/cmd/cloud/stream/list.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/list.js +2 -1
- package/dist/cmd/cloud/stream/list.js.map +1 -1
- package/dist/cmd/cloud/stream/util.d.ts +6 -5
- package/dist/cmd/cloud/stream/util.d.ts.map +1 -1
- package/dist/cmd/cloud/stream/util.js +26 -5
- package/dist/cmd/cloud/stream/util.js.map +1 -1
- package/dist/cmd/upgrade/index.d.ts.map +1 -1
- package/dist/cmd/upgrade/index.js +23 -0
- package/dist/cmd/upgrade/index.js.map +1 -1
- package/dist/cmd/upgrade/npm-availability.d.ts +44 -0
- package/dist/cmd/upgrade/npm-availability.d.ts.map +1 -0
- package/dist/cmd/upgrade/npm-availability.js +73 -0
- package/dist/cmd/upgrade/npm-availability.js.map +1 -0
- package/dist/tui.d.ts +9 -1
- package/dist/tui.d.ts.map +1 -1
- package/dist/tui.js +39 -14
- package/dist/tui.js.map +1 -1
- package/dist/version-check.d.ts.map +1 -1
- package/dist/version-check.js +13 -2
- package/dist/version-check.js.map +1 -1
- package/package.json +6 -6
- package/src/auth.ts +9 -5
- package/src/cli.ts +44 -12
- package/src/cmd/build/entry-generator.ts +26 -17
- package/src/cmd/build/vite/public-asset-path-plugin.ts +73 -51
- package/src/cmd/build/vite/vite-asset-server-config.ts +3 -1
- package/src/cmd/cloud/env/org-util.ts +5 -2
- package/src/cmd/cloud/stream/create.ts +248 -0
- package/src/cmd/cloud/stream/delete.ts +2 -1
- package/src/cmd/cloud/stream/get.ts +2 -1
- package/src/cmd/cloud/stream/index.ts +10 -1
- package/src/cmd/cloud/stream/list.ts +2 -1
- package/src/cmd/cloud/stream/util.ts +39 -12
- package/src/cmd/upgrade/index.ts +25 -0
- package/src/cmd/upgrade/npm-availability.ts +105 -0
- package/src/tui.ts +42 -14
- package/src/version-check.ts +19 -3
|
@@ -1,20 +1,21 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Vite plugin to fix incorrect public asset paths
|
|
3
3
|
*
|
|
4
|
-
* Developers
|
|
5
|
-
*
|
|
4
|
+
* Developers should use /public/ paths for static assets from src/web/public/.
|
|
5
|
+
* In production, these paths are transformed to CDN URLs.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* This plugin:
|
|
8
|
+
* 1. During build: Rewrites /public/* paths to CDN URLs
|
|
9
|
+
* 2. During dev: Warns only about incorrect source paths (src/web/public/)
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
-
* - '/
|
|
12
|
-
* - './
|
|
13
|
-
* - 'src/web/public/foo.svg' → '/foo.svg'
|
|
14
|
-
* - './public/foo.svg' → '/foo.svg'
|
|
15
|
-
* - '/public/foo.svg' → '/foo.svg'
|
|
11
|
+
* Supported patterns (work in dev, rewritten to CDN in production):
|
|
12
|
+
* - '/public/foo.svg' → CDN URL (recommended)
|
|
13
|
+
* - './public/foo.svg' → CDN URL
|
|
16
14
|
*
|
|
17
|
-
*
|
|
15
|
+
* Incorrect patterns (warned in dev, rewritten in production):
|
|
16
|
+
* - '/src/web/public/foo.svg' → CDN URL
|
|
17
|
+
* - './src/web/public/foo.svg' → CDN URL
|
|
18
|
+
* - 'src/web/public/foo.svg' → CDN URL
|
|
18
19
|
*/
|
|
19
20
|
import type { Plugin } from 'vite';
|
|
20
21
|
export interface PublicAssetPathPluginOptions {
|
|
@@ -26,21 +27,17 @@ export interface PublicAssetPathPluginOptions {
|
|
|
26
27
|
/**
|
|
27
28
|
* Vite plugin that fixes public asset paths and rewrites to CDN URLs
|
|
28
29
|
*
|
|
29
|
-
* Rewrites all public asset paths to CDN URLs in production
|
|
30
|
-
* if no CDN base URL is provided.
|
|
30
|
+
* Rewrites all public asset paths to CDN URLs in production.
|
|
31
31
|
*
|
|
32
32
|
* @example
|
|
33
33
|
* // In vite config:
|
|
34
34
|
* plugins: [publicAssetPathPlugin({ cdnBaseUrl: 'https://cdn.example.com/deploy/client/' })]
|
|
35
35
|
*
|
|
36
|
-
* //
|
|
37
|
-
*
|
|
38
|
-
* // './src/web/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
39
|
-
* // '/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
36
|
+
* // In code, use /public/ paths:
|
|
37
|
+
* <img src="/public/logo.svg" />
|
|
40
38
|
*
|
|
41
|
-
* // Transforms in production
|
|
42
|
-
* // '/
|
|
43
|
-
* // '/public/logo.svg' → '/logo.svg'
|
|
39
|
+
* // Transforms in production:
|
|
40
|
+
* // '/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
44
41
|
*/
|
|
45
42
|
export declare function publicAssetPathPlugin(options?: PublicAssetPathPluginOptions): Plugin;
|
|
46
43
|
//# sourceMappingURL=public-asset-path-plugin.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-asset-path-plugin.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/public-asset-path-plugin.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"public-asset-path-plugin.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/public-asset-path-plugin.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;;GAkBG;AAEH,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,MAAM,CAAC;AAEnC,MAAM,WAAW,4BAA4B;IAC5C,2DAA2D;IAC3D,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,oGAAoG;IACpG,UAAU,CAAC,EAAE,MAAM,CAAC;CACpB;AA4CD;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,qBAAqB,CAAC,OAAO,GAAE,4BAAiC,GAAG,MAAM,CAsGxF"}
|
|
@@ -1,57 +1,69 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* Vite plugin to fix incorrect public asset paths
|
|
3
3
|
*
|
|
4
|
-
* Developers
|
|
5
|
-
*
|
|
4
|
+
* Developers should use /public/ paths for static assets from src/web/public/.
|
|
5
|
+
* In production, these paths are transformed to CDN URLs.
|
|
6
6
|
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
7
|
+
* This plugin:
|
|
8
|
+
* 1. During build: Rewrites /public/* paths to CDN URLs
|
|
9
|
+
* 2. During dev: Warns only about incorrect source paths (src/web/public/)
|
|
9
10
|
*
|
|
10
|
-
*
|
|
11
|
-
* - '/
|
|
12
|
-
* - './
|
|
13
|
-
* - 'src/web/public/foo.svg' → '/foo.svg'
|
|
14
|
-
* - './public/foo.svg' → '/foo.svg'
|
|
15
|
-
* - '/public/foo.svg' → '/foo.svg'
|
|
11
|
+
* Supported patterns (work in dev, rewritten to CDN in production):
|
|
12
|
+
* - '/public/foo.svg' → CDN URL (recommended)
|
|
13
|
+
* - './public/foo.svg' → CDN URL
|
|
16
14
|
*
|
|
17
|
-
*
|
|
15
|
+
* Incorrect patterns (warned in dev, rewritten in production):
|
|
16
|
+
* - '/src/web/public/foo.svg' → CDN URL
|
|
17
|
+
* - './src/web/public/foo.svg' → CDN URL
|
|
18
|
+
* - 'src/web/public/foo.svg' → CDN URL
|
|
18
19
|
*/
|
|
19
20
|
/**
|
|
20
|
-
*
|
|
21
|
-
* (RegExp with global flag maintains state via lastIndex)
|
|
21
|
+
* Patterns that are incorrect - reference source paths directly
|
|
22
22
|
*/
|
|
23
|
-
function
|
|
23
|
+
function createIncorrectPatterns() {
|
|
24
24
|
return [
|
|
25
25
|
// '/src/web/public/...' or './src/web/public/...' or 'src/web/public/...'
|
|
26
26
|
{
|
|
27
27
|
regex: /(['"`])(?:\.?\/)?src\/web\/public\//g,
|
|
28
28
|
description: 'src/web/public/',
|
|
29
|
+
replacement: '$1{base}',
|
|
29
30
|
},
|
|
30
|
-
|
|
31
|
+
];
|
|
32
|
+
}
|
|
33
|
+
/**
|
|
34
|
+
* Patterns that need rewriting for production CDN
|
|
35
|
+
* Both patterns simply replace the prefix while preserving the rest of the path naturally.
|
|
36
|
+
*/
|
|
37
|
+
function createPublicPatterns() {
|
|
38
|
+
return [
|
|
39
|
+
// './public/...' (relative public path) - replace prefix, keep rest
|
|
31
40
|
{
|
|
32
41
|
regex: /(['"`])\.\/public\//g,
|
|
33
42
|
description: './public/',
|
|
43
|
+
replacement: '$1{base}',
|
|
44
|
+
},
|
|
45
|
+
// '/public/...' (absolute public path) - replace prefix, keep rest
|
|
46
|
+
{
|
|
47
|
+
regex: /(['"`])\/public\//g,
|
|
48
|
+
description: '/public/',
|
|
49
|
+
replacement: '$1{base}',
|
|
34
50
|
},
|
|
35
51
|
];
|
|
36
52
|
}
|
|
37
53
|
/**
|
|
38
54
|
* Vite plugin that fixes public asset paths and rewrites to CDN URLs
|
|
39
55
|
*
|
|
40
|
-
* Rewrites all public asset paths to CDN URLs in production
|
|
41
|
-
* if no CDN base URL is provided.
|
|
56
|
+
* Rewrites all public asset paths to CDN URLs in production.
|
|
42
57
|
*
|
|
43
58
|
* @example
|
|
44
59
|
* // In vite config:
|
|
45
60
|
* plugins: [publicAssetPathPlugin({ cdnBaseUrl: 'https://cdn.example.com/deploy/client/' })]
|
|
46
61
|
*
|
|
47
|
-
* //
|
|
48
|
-
*
|
|
49
|
-
* // './src/web/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
50
|
-
* // '/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
62
|
+
* // In code, use /public/ paths:
|
|
63
|
+
* <img src="/public/logo.svg" />
|
|
51
64
|
*
|
|
52
|
-
* // Transforms in production
|
|
53
|
-
* // '/
|
|
54
|
-
* // '/public/logo.svg' → '/logo.svg'
|
|
65
|
+
* // Transforms in production:
|
|
66
|
+
* // '/public/logo.svg' → 'https://cdn.example.com/deploy/client/logo.svg'
|
|
55
67
|
*/
|
|
56
68
|
export function publicAssetPathPlugin(options = {}) {
|
|
57
69
|
const { warnInDev = true, cdnBaseUrl } = options;
|
|
@@ -68,15 +80,16 @@ export function publicAssetPathPlugin(options = {}) {
|
|
|
68
80
|
return null;
|
|
69
81
|
}
|
|
70
82
|
// Quick check: does the code contain any patterns we care about?
|
|
71
|
-
const
|
|
72
|
-
const hasPublicPaths = code.includes('/public/');
|
|
73
|
-
if (!
|
|
83
|
+
const hasIncorrectSourcePaths = code.includes('src/web/public/');
|
|
84
|
+
const hasPublicPaths = code.includes('/public/') || code.includes('./public/');
|
|
85
|
+
if (!hasIncorrectSourcePaths && !hasPublicPaths) {
|
|
74
86
|
return null;
|
|
75
87
|
}
|
|
76
|
-
// In dev mode,
|
|
88
|
+
// In dev mode, only warn about incorrect source paths (src/web/public/)
|
|
89
|
+
// /public/ and ./public/ paths work correctly in dev mode
|
|
77
90
|
if (isDev) {
|
|
78
|
-
if (warnInDev &&
|
|
79
|
-
const patterns =
|
|
91
|
+
if (warnInDev && hasIncorrectSourcePaths) {
|
|
92
|
+
const patterns = createIncorrectPatterns();
|
|
80
93
|
const foundPatterns = [];
|
|
81
94
|
for (const { regex, description } of patterns) {
|
|
82
95
|
if (regex.test(code)) {
|
|
@@ -93,31 +106,37 @@ export function publicAssetPathPlugin(options = {}) {
|
|
|
93
106
|
warnedFiles.set(id, fileWarnings);
|
|
94
107
|
this.warn(`Found incorrect asset path(s) in ${id}:\n` +
|
|
95
108
|
newWarnings.map((p) => ` - '${p}' should be '/public/'`).join('\n') +
|
|
96
|
-
`\nUse
|
|
109
|
+
`\nUse '/public/...' paths for static assets.`);
|
|
97
110
|
}
|
|
98
111
|
}
|
|
99
112
|
}
|
|
100
113
|
// In dev mode, never transform - Vite serves from source paths
|
|
114
|
+
// and the Bun server proxies /public/* to Vite
|
|
101
115
|
return null;
|
|
102
116
|
}
|
|
103
|
-
// Build mode: transform paths
|
|
117
|
+
// Build mode: transform paths to CDN URLs
|
|
104
118
|
let transformed = code;
|
|
105
119
|
// Determine target URL: CDN base if provided, otherwise root
|
|
106
|
-
const targetBase = cdnBaseUrl
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
120
|
+
const targetBase = cdnBaseUrl
|
|
121
|
+
? cdnBaseUrl.endsWith('/')
|
|
122
|
+
? cdnBaseUrl
|
|
123
|
+
: `${cdnBaseUrl}/`
|
|
124
|
+
: '/';
|
|
125
|
+
// Transform incorrect source paths (src/web/public/) → CDN
|
|
126
|
+
if (hasIncorrectSourcePaths) {
|
|
127
|
+
const patterns = createIncorrectPatterns();
|
|
128
|
+
for (const { regex, replacement } of patterns) {
|
|
111
129
|
const replaceRegex = new RegExp(regex.source, regex.flags);
|
|
112
|
-
transformed = transformed.replace(replaceRegex,
|
|
130
|
+
transformed = transformed.replace(replaceRegex, replacement.replace('{base}', targetBase));
|
|
113
131
|
}
|
|
114
132
|
}
|
|
115
|
-
//
|
|
133
|
+
// Transform public paths → CDN
|
|
116
134
|
if (hasPublicPaths) {
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
135
|
+
const publicPatterns = createPublicPatterns();
|
|
136
|
+
for (const { regex, replacement } of publicPatterns) {
|
|
137
|
+
const replaceRegex = new RegExp(regex.source, regex.flags);
|
|
138
|
+
transformed = transformed.replace(replaceRegex, replacement.replace('{base}', targetBase));
|
|
139
|
+
}
|
|
121
140
|
}
|
|
122
141
|
// Return transformed code if changed
|
|
123
142
|
if (transformed !== code) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"public-asset-path-plugin.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/public-asset-path-plugin.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"public-asset-path-plugin.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/public-asset-path-plugin.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-asset-server-config.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/vite-asset-server-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,WAAW,gCAAgC;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC9C,OAAO,EAAE,gCAAgC,GACvC,OAAO,CAAC,YAAY,CAAC,
|
|
1
|
+
{"version":3,"file":"vite-asset-server-config.d.ts","sourceRoot":"","sources":["../../../../src/cmd/build/vite/vite-asset-server-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAIH,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,MAAM,CAAC;AACzC,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAE7C,MAAM,WAAW,gCAAgC;IAChD,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,CAAC,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;CACb;AAED;;GAEG;AACH,wBAAsB,yBAAyB,CAC9C,OAAO,EAAE,gCAAgC,GACvC,OAAO,CAAC,YAAY,CAAC,CAuKvB"}
|
|
@@ -46,7 +46,9 @@ export async function generateAssetServerConfig(options) {
|
|
|
46
46
|
root: rootDir,
|
|
47
47
|
base: '/',
|
|
48
48
|
clearScreen: false,
|
|
49
|
-
|
|
49
|
+
// Serve public assets from src/web/public/ at root path (e.g., /favicon.png)
|
|
50
|
+
// The Bun server proxies /public/* requests to Vite, rewriting to root paths
|
|
51
|
+
publicDir: join(rootDir, 'src', 'web', 'public'),
|
|
50
52
|
resolve: {
|
|
51
53
|
alias,
|
|
52
54
|
// Deduplicate React to prevent multiple instances
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"vite-asset-server-config.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/vite-asset-server-config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,aAAa,EAAE,MAAM,aAAa,CAAC;AAW5C;;GAEG;AACH,MAAM,CAAC,KAAK,UAAU,yBAAyB,CAC9C,OAAyC;IAEzC,MAAM,EAAE,OAAO,EAAE,MAAM,EAAE,aAAa,EAAE,IAAI,EAAE,GAAG,OAAO,CAAC;IAEzD,wDAAwD;IACxD,MAAM,EAAE,mBAAmB,EAAE,GAAG,MAAM,MAAM,CAAC,iBAAiB,CAAC,CAAC;IAChE,MAAM,UAAU,GAAG,MAAM,mBAAmB,CAAC,OAAO,EAAE,MAAM,CAAC,CAAC;IAC9D,MAAM,UAAU,GAAG,UAAU,EAAE,MAAM,IAAI,EAAE,CAAC;IAC5C,MAAM,WAAW,GAAG,UAAU,EAAE,OAAO,IAAI,EAAE,CAAC;IAE9C,IAAI,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACxC,MAAM,CAAC,KAAK,CACX,qDAAqD,EACrD,MAAM,CAAC,IAAI,CAAC,UAAU,CAAC,CAAC,MAAM,CAC9B,CAAC;IACH,CAAC;IACD,IAAI,WAAW,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QAC5B,MAAM,CAAC,KAAK,CAAC,qDAAqD,EAAE,WAAW,CAAC,MAAM,CAAC,CAAC;IACzF,CAAC;IAED,oDAAoD;IACpD,MAAM,YAAY,GAAG,IAAI,CAAC,OAAO,EAAE,eAAe,CAAC,CAAC;IACpD,IAAI,KAAK,GAAG,EAAE,CAAC;IAEf,IAAI,CAAC;QACJ,MAAM,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,MAAM,GAAG,CAAC,IAAI,CAAC,YAAY,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC;QACjE,MAAM,KAAK,GAAG,QAAQ,EAAE,eAAe,EAAE,KAAK,IAAI,EAAE,CAAC;QACrD,KAAK,GAAG,MAAM,CAAC,WAAW,CACzB,MAAM,CAAC,OAAO,CAAC,KAAK,CAAC;aACnB,MAAM,CAAC,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,KAAiB,CAAC;YACpC,OAAO,SAAS,CAAC,MAAM,GAAG,CAAC,IAAI,SAAS,CAAC,CAAC,CAAC,KAAK,SAAS,CAAC;QAC3D,CAAC,CAAC;aACD,GAAG,CAAC,CAAC,CAAC,GAAG,EAAE,KAAK,CAAC,EAAE,EAAE;YACrB,MAAM,SAAS,GAAG,KAAiB,CAAC;YACpC,MAAM,SAAS,GAAG,SAAS,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC;YACrC,OAAO,CAAC,GAAG,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,EAAE,IAAI,CAAC,OAAO,EAAE,SAAS,CAAC,OAAO,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC,CAAC,CAAC;QAC5E,CAAC,CAAC,CACH,CAAC;IACH,CAAC;IAAC,MAAM,CAAC;QACR,wCAAwC;IACzC,CAAC;IAED,OAAO;QACN,IAAI,EAAE,OAAO;QACb,IAAI,EAAE,GAAG;QACT,WAAW,EAAE,KAAK;QAClB,SAAS,EAAE,KAAK,EAAE,
|
|
1
|
+
{"version":3,"file":"vite-asset-server-config.js","sourceRoot":"","sources":["../../../../src/cmd/build/vite/vite-asset-server-config.ts"],"names":[],"mappings":"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"}
|
|
@@ -6,9 +6,10 @@ import type { Config } from '../../../types';
|
|
|
6
6
|
* @param apiClient - The API client
|
|
7
7
|
* @param config - The CLI config (may be null)
|
|
8
8
|
* @param orgOption - The --org option value (true for default/prompt, or explicit org ID)
|
|
9
|
+
* @param autoSelect - If true, auto-select preferred org without prompting (for --confirm)
|
|
9
10
|
* @returns The resolved organization ID
|
|
10
11
|
*/
|
|
11
|
-
export declare function resolveOrgId(apiClient: APIClient, config: Config | null, orgOption: boolean | string): Promise<string>;
|
|
12
|
+
export declare function resolveOrgId(apiClient: APIClient, config: Config | null, orgOption: boolean | string, autoSelect?: boolean): Promise<string>;
|
|
12
13
|
/**
|
|
13
14
|
* Checks if we're operating in org scope based on the --org option.
|
|
14
15
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"org-util.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/env/org-util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C
|
|
1
|
+
{"version":3,"file":"org-util.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/env/org-util.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAC9C,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,gBAAgB,CAAC;AAI7C;;;;;;;;GAQG;AACH,wBAAsB,YAAY,CACjC,SAAS,EAAE,SAAS,EACpB,MAAM,EAAE,MAAM,GAAG,IAAI,EACrB,SAAS,EAAE,OAAO,GAAG,MAAM,EAC3B,UAAU,CAAC,EAAE,OAAO,GAClB,OAAO,CAAC,MAAM,CAAC,CAajB;AAED;;GAEG;AACH,wBAAgB,UAAU,CAAC,SAAS,EAAE,OAAO,GAAG,MAAM,GAAG,SAAS,GAAG,OAAO,CAE3E"}
|
|
@@ -6,9 +6,10 @@ import { listOrganizations } from '@agentuity/server';
|
|
|
6
6
|
* @param apiClient - The API client
|
|
7
7
|
* @param config - The CLI config (may be null)
|
|
8
8
|
* @param orgOption - The --org option value (true for default/prompt, or explicit org ID)
|
|
9
|
+
* @param autoSelect - If true, auto-select preferred org without prompting (for --confirm)
|
|
9
10
|
* @returns The resolved organization ID
|
|
10
11
|
*/
|
|
11
|
-
export async function resolveOrgId(apiClient, config, orgOption) {
|
|
12
|
+
export async function resolveOrgId(apiClient, config, orgOption, autoSelect) {
|
|
12
13
|
// If an explicit org ID was provided (string), use it directly
|
|
13
14
|
if (typeof orgOption === 'string' && orgOption !== 'true') {
|
|
14
15
|
return orgOption;
|
|
@@ -16,8 +17,9 @@ export async function resolveOrgId(apiClient, config, orgOption) {
|
|
|
16
17
|
// Otherwise, we need to select an org
|
|
17
18
|
const orgs = await tui.spinner('Fetching organizations', () => listOrganizations(apiClient));
|
|
18
19
|
// Use preference if available, otherwise prompt
|
|
20
|
+
// Pass autoSelect to skip prompting when --confirm is used
|
|
19
21
|
const preferredOrgId = config?.preferences?.orgId;
|
|
20
|
-
return tui.selectOrganization(orgs, preferredOrgId);
|
|
22
|
+
return tui.selectOrganization(orgs, preferredOrgId, autoSelect);
|
|
21
23
|
}
|
|
22
24
|
/**
|
|
23
25
|
* Checks if we're operating in org scope based on the --org option.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"org-util.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/env/org-util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD
|
|
1
|
+
{"version":3,"file":"org-util.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/env/org-util.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,GAAG,MAAM,cAAc,CAAC;AACpC,OAAO,EAAE,iBAAiB,EAAE,MAAM,mBAAmB,CAAC;AAEtD;;;;;;;;GAQG;AACH,MAAM,CAAC,KAAK,UAAU,YAAY,CACjC,SAAoB,EACpB,MAAqB,EACrB,SAA2B,EAC3B,UAAoB;IAEpB,+DAA+D;IAC/D,IAAI,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,KAAK,MAAM,EAAE,CAAC;QAC3D,OAAO,SAAS,CAAC;IAClB,CAAC;IAED,sCAAsC;IACtC,MAAM,IAAI,GAAG,MAAM,GAAG,CAAC,OAAO,CAAC,wBAAwB,EAAE,GAAG,EAAE,CAAC,iBAAiB,CAAC,SAAS,CAAC,CAAC,CAAC;IAE7F,gDAAgD;IAChD,2DAA2D;IAC3D,MAAM,cAAc,GAAG,MAAM,EAAE,WAAW,EAAE,KAAK,CAAC;IAClD,OAAO,GAAG,CAAC,kBAAkB,CAAC,IAAI,EAAE,cAAc,EAAE,UAAU,CAAC,CAAC;AACjE,CAAC;AAED;;GAEG;AACH,MAAM,UAAU,UAAU,CAAC,SAAuC;IACjE,OAAO,SAAS,KAAK,IAAI,IAAI,CAAC,OAAO,SAAS,KAAK,QAAQ,IAAI,SAAS,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;AACtF,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/stream/create.ts"],"names":[],"mappings":"AAgBA,eAAO,MAAM,gBAAgB,sCAqO3B,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
|
|
@@ -0,0 +1,227 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { basename } from 'path';
|
|
3
|
+
import { createCommand } from '../../../types';
|
|
4
|
+
import * as tui from '../../../tui';
|
|
5
|
+
import { createStorageAdapter } from './util';
|
|
6
|
+
import { getCommand } from '../../../command-prefix';
|
|
7
|
+
const StreamCreateResponseSchema = z.object({
|
|
8
|
+
id: z.string().describe('Stream ID'),
|
|
9
|
+
namespace: z.string().describe('Stream namespace'),
|
|
10
|
+
url: z.string().describe('Public URL'),
|
|
11
|
+
sizeBytes: z.number().describe('Size in bytes'),
|
|
12
|
+
metadata: z.record(z.string(), z.string()).describe('Stream metadata'),
|
|
13
|
+
expiresAt: z.string().optional().describe('Expiration timestamp'),
|
|
14
|
+
});
|
|
15
|
+
export const createSubcommand = createCommand({
|
|
16
|
+
name: 'create',
|
|
17
|
+
aliases: ['new'],
|
|
18
|
+
description: 'Create a new stream and upload content',
|
|
19
|
+
tags: ['mutating', 'creates-resource', 'slow', 'requires-auth', 'uses-stdin'],
|
|
20
|
+
requires: { auth: true, region: true },
|
|
21
|
+
optional: { project: true },
|
|
22
|
+
idempotent: false,
|
|
23
|
+
examples: [
|
|
24
|
+
{
|
|
25
|
+
command: getCommand('cloud stream create memory-share ./notes.md'),
|
|
26
|
+
description: 'Create stream from file',
|
|
27
|
+
},
|
|
28
|
+
{
|
|
29
|
+
command: getCommand('cloud stream create memory-share ./data.json --content-type application/json'),
|
|
30
|
+
description: 'Create stream with explicit content type',
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
command: `cat summary.md | ${getCommand('cloud stream create memory-share -')}`,
|
|
34
|
+
description: 'Create stream from stdin',
|
|
35
|
+
},
|
|
36
|
+
{
|
|
37
|
+
command: getCommand('cloud stream create memory-share ./notes.md --ttl 3600'),
|
|
38
|
+
description: 'Create stream with 1 hour TTL',
|
|
39
|
+
},
|
|
40
|
+
{
|
|
41
|
+
command: getCommand('cloud stream create memory-share ./notes.md --metadata type=summary,source=session'),
|
|
42
|
+
description: 'Create stream with metadata',
|
|
43
|
+
},
|
|
44
|
+
{
|
|
45
|
+
command: getCommand('cloud stream create memory-share ./large.json --compress'),
|
|
46
|
+
description: 'Create compressed stream',
|
|
47
|
+
},
|
|
48
|
+
],
|
|
49
|
+
schema: {
|
|
50
|
+
args: z.object({
|
|
51
|
+
namespace: z.string().min(1).max(254).describe('Stream namespace (1-254 characters)'),
|
|
52
|
+
filename: z.string().describe('File path to upload or "-" for STDIN'),
|
|
53
|
+
}),
|
|
54
|
+
options: z.object({
|
|
55
|
+
metadata: z
|
|
56
|
+
.string()
|
|
57
|
+
.optional()
|
|
58
|
+
.describe('Metadata key=value pairs (comma-separated: key1=value1,key2=value2)'),
|
|
59
|
+
contentType: z
|
|
60
|
+
.string()
|
|
61
|
+
.optional()
|
|
62
|
+
.describe('Content type (auto-detected from extension if not provided)'),
|
|
63
|
+
compress: z.boolean().optional().describe('Enable gzip compression'),
|
|
64
|
+
ttl: z.coerce
|
|
65
|
+
.number()
|
|
66
|
+
.optional()
|
|
67
|
+
.describe('TTL in seconds (60-7776000, or 0/null for never expires)'),
|
|
68
|
+
}),
|
|
69
|
+
response: StreamCreateResponseSchema,
|
|
70
|
+
},
|
|
71
|
+
webUrl: '/services/stream',
|
|
72
|
+
async handler(ctx) {
|
|
73
|
+
const { args, opts, options } = ctx;
|
|
74
|
+
const started = Date.now();
|
|
75
|
+
const storage = await createStorageAdapter(ctx);
|
|
76
|
+
// Parse metadata if provided
|
|
77
|
+
let metadata;
|
|
78
|
+
if (opts.metadata) {
|
|
79
|
+
const validPairs = {};
|
|
80
|
+
const malformed = [];
|
|
81
|
+
const pairs = opts.metadata.split(',');
|
|
82
|
+
for (const pair of pairs) {
|
|
83
|
+
const trimmedPair = pair.trim();
|
|
84
|
+
if (!trimmedPair)
|
|
85
|
+
continue;
|
|
86
|
+
const firstEqualIdx = trimmedPair.indexOf('=');
|
|
87
|
+
if (firstEqualIdx === -1) {
|
|
88
|
+
malformed.push(trimmedPair);
|
|
89
|
+
continue;
|
|
90
|
+
}
|
|
91
|
+
const key = trimmedPair.substring(0, firstEqualIdx).trim();
|
|
92
|
+
const value = trimmedPair.substring(firstEqualIdx + 1).trim();
|
|
93
|
+
if (!key || !value) {
|
|
94
|
+
malformed.push(trimmedPair);
|
|
95
|
+
continue;
|
|
96
|
+
}
|
|
97
|
+
validPairs[key] = value;
|
|
98
|
+
}
|
|
99
|
+
if (malformed.length > 0) {
|
|
100
|
+
ctx.logger.warn(`Skipping malformed metadata pairs: ${malformed.join(', ')}`);
|
|
101
|
+
}
|
|
102
|
+
if (Object.keys(validPairs).length > 0) {
|
|
103
|
+
metadata = validPairs;
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
// Determine content type
|
|
107
|
+
let contentType = opts.contentType;
|
|
108
|
+
if (!contentType) {
|
|
109
|
+
// Auto-detect from filename extension
|
|
110
|
+
const filename = args.filename === '-' ? 'stdin' : args.filename;
|
|
111
|
+
const dotIndex = filename.lastIndexOf('.');
|
|
112
|
+
const ext = dotIndex > 0 ? filename.substring(dotIndex + 1).toLowerCase() : undefined;
|
|
113
|
+
// Text-based types should include charset=utf-8 for proper browser rendering
|
|
114
|
+
const mimeTypes = {
|
|
115
|
+
txt: 'text/plain; charset=utf-8',
|
|
116
|
+
md: 'text/markdown; charset=utf-8',
|
|
117
|
+
html: 'text/html; charset=utf-8',
|
|
118
|
+
css: 'text/css; charset=utf-8',
|
|
119
|
+
yaml: 'application/x-yaml; charset=utf-8',
|
|
120
|
+
yml: 'application/x-yaml; charset=utf-8',
|
|
121
|
+
js: 'application/javascript; charset=utf-8',
|
|
122
|
+
ts: 'application/typescript; charset=utf-8',
|
|
123
|
+
json: 'application/json; charset=utf-8',
|
|
124
|
+
xml: 'application/xml; charset=utf-8',
|
|
125
|
+
pdf: 'application/pdf',
|
|
126
|
+
zip: 'application/zip',
|
|
127
|
+
jpg: 'image/jpeg',
|
|
128
|
+
jpeg: 'image/jpeg',
|
|
129
|
+
png: 'image/png',
|
|
130
|
+
gif: 'image/gif',
|
|
131
|
+
svg: 'image/svg+xml; charset=utf-8',
|
|
132
|
+
mp4: 'video/mp4',
|
|
133
|
+
mp3: 'audio/mpeg',
|
|
134
|
+
};
|
|
135
|
+
contentType = ext ? mimeTypes[ext] : 'application/octet-stream';
|
|
136
|
+
}
|
|
137
|
+
// Create the stream
|
|
138
|
+
const stream = await storage.create(args.namespace, {
|
|
139
|
+
metadata,
|
|
140
|
+
contentType,
|
|
141
|
+
compress: opts.compress ? true : undefined,
|
|
142
|
+
ttl: opts.ttl,
|
|
143
|
+
});
|
|
144
|
+
// Read and write content
|
|
145
|
+
let inputStream;
|
|
146
|
+
if (args.filename === '-') {
|
|
147
|
+
// Stream from STDIN
|
|
148
|
+
inputStream = Bun.stdin.stream();
|
|
149
|
+
}
|
|
150
|
+
else {
|
|
151
|
+
// Stream from file
|
|
152
|
+
const file = Bun.file(args.filename);
|
|
153
|
+
if (!(await file.exists())) {
|
|
154
|
+
tui.fatal(`File not found: ${args.filename}`);
|
|
155
|
+
}
|
|
156
|
+
inputStream = file.stream();
|
|
157
|
+
}
|
|
158
|
+
// Write content to stream in chunks
|
|
159
|
+
const reader = inputStream.getReader();
|
|
160
|
+
const MAX_CHUNK_SIZE = 5 * 1024 * 1024; // 5MB max per write
|
|
161
|
+
try {
|
|
162
|
+
while (true) {
|
|
163
|
+
const { done, value } = await reader.read();
|
|
164
|
+
if (done)
|
|
165
|
+
break;
|
|
166
|
+
// If chunk is larger than 5MB, split it
|
|
167
|
+
if (value.length > MAX_CHUNK_SIZE) {
|
|
168
|
+
let offset = 0;
|
|
169
|
+
while (offset < value.length) {
|
|
170
|
+
const chunk = value.slice(offset, offset + MAX_CHUNK_SIZE);
|
|
171
|
+
await stream.write(chunk);
|
|
172
|
+
offset += MAX_CHUNK_SIZE;
|
|
173
|
+
}
|
|
174
|
+
}
|
|
175
|
+
else {
|
|
176
|
+
await stream.write(value);
|
|
177
|
+
}
|
|
178
|
+
}
|
|
179
|
+
}
|
|
180
|
+
finally {
|
|
181
|
+
reader.releaseLock();
|
|
182
|
+
}
|
|
183
|
+
// Close the stream
|
|
184
|
+
await stream.close();
|
|
185
|
+
const durationMs = Date.now() - started;
|
|
186
|
+
const sizeBytes = stream.bytesWritten;
|
|
187
|
+
// Get stream info to retrieve expiresAt
|
|
188
|
+
let expiresAt;
|
|
189
|
+
try {
|
|
190
|
+
const info = await storage.get(stream.id);
|
|
191
|
+
expiresAt = info.expiresAt;
|
|
192
|
+
}
|
|
193
|
+
catch {
|
|
194
|
+
// expiresAt is optional, ignore errors
|
|
195
|
+
}
|
|
196
|
+
if (!options.json) {
|
|
197
|
+
const sourceLabel = args.filename === '-' ? 'stdin' : basename(args.filename);
|
|
198
|
+
console.log(`Namespace: ${tui.bold(args.namespace)}`);
|
|
199
|
+
console.log(`ID: ${stream.id}`);
|
|
200
|
+
console.log(`Size: ${tui.formatBytes(sizeBytes)}`);
|
|
201
|
+
console.log(`URL: ${tui.link(stream.url)}`);
|
|
202
|
+
if (expiresAt) {
|
|
203
|
+
console.log(`Expires: ${expiresAt}`);
|
|
204
|
+
}
|
|
205
|
+
if (metadata && Object.keys(metadata).length > 0) {
|
|
206
|
+
console.log(`Metadata:`);
|
|
207
|
+
for (const [key, value] of Object.entries(metadata)) {
|
|
208
|
+
console.log(` ${key}: ${value}`);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
if (opts.compress) {
|
|
212
|
+
console.log(`Compressed: yes`);
|
|
213
|
+
}
|
|
214
|
+
tui.success(`created stream from ${sourceLabel} in ${durationMs.toFixed(1)}ms`);
|
|
215
|
+
}
|
|
216
|
+
return {
|
|
217
|
+
id: stream.id,
|
|
218
|
+
namespace: args.namespace,
|
|
219
|
+
url: stream.url,
|
|
220
|
+
sizeBytes,
|
|
221
|
+
metadata: metadata ?? {},
|
|
222
|
+
expiresAt,
|
|
223
|
+
};
|
|
224
|
+
},
|
|
225
|
+
});
|
|
226
|
+
export default createSubcommand;
|
|
227
|
+
//# sourceMappingURL=create.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"create.js","sourceRoot":"","sources":["../../../../src/cmd/cloud/stream/create.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/stream/delete.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,gBAAgB,
|
|
1
|
+
{"version":3,"file":"delete.d.ts","sourceRoot":"","sources":["../../../../src/cmd/cloud/stream/delete.ts"],"names":[],"mappings":"AASA,eAAO,MAAM,gBAAgB,sCA2C3B,CAAC;AAEH,eAAe,gBAAgB,CAAC"}
|
|
@@ -12,7 +12,8 @@ export const deleteSubcommand = createCommand({
|
|
|
12
12
|
description: 'Delete a stream by ID (soft delete)',
|
|
13
13
|
tags: ['destructive', 'deletes-resource', 'slow', 'requires-auth'],
|
|
14
14
|
idempotent: true,
|
|
15
|
-
requires: { auth: true,
|
|
15
|
+
requires: { auth: true, region: true },
|
|
16
|
+
optional: { project: true },
|
|
16
17
|
examples: [
|
|
17
18
|
{ command: getCommand('stream delete stream-id-123'), description: 'Delete a stream' },
|
|
18
19
|
{
|