@noodleseed/one 0.74.1 → 0.75.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.
- package/dist/agents.d.ts.map +1 -1
- package/dist/agents.js +20 -6
- package/dist/agents.js.map +1 -1
- package/dist/cli.d.ts.map +1 -1
- package/dist/cli.js +25 -11
- package/dist/cli.js.map +1 -1
- package/dist/commands/alerts-ops.js +2 -2
- package/dist/commands/alerts-ops.js.map +1 -1
- package/dist/commands/analytics-ops.d.ts.map +1 -1
- package/dist/commands/analytics-ops.js +23 -8
- package/dist/commands/analytics-ops.js.map +1 -1
- package/dist/commands/apps-ops.d.ts.map +1 -1
- package/dist/commands/apps-ops.js +4 -7
- package/dist/commands/apps-ops.js.map +1 -1
- package/dist/commands/archive-ops.d.ts.map +1 -1
- package/dist/commands/archive-ops.js +11 -2
- package/dist/commands/archive-ops.js.map +1 -1
- package/dist/commands/assistant-ops.d.ts.map +1 -1
- package/dist/commands/assistant-ops.js +9 -9
- package/dist/commands/assistant-ops.js.map +1 -1
- package/dist/commands/audit-ops.d.ts.map +1 -1
- package/dist/commands/audit-ops.js +18 -9
- package/dist/commands/audit-ops.js.map +1 -1
- package/dist/commands/auth-google-ops.d.ts.map +1 -1
- package/dist/commands/auth-google-ops.js +23 -10
- package/dist/commands/auth-google-ops.js.map +1 -1
- package/dist/commands/auth-ops.d.ts.map +1 -1
- package/dist/commands/auth-ops.js +13 -1
- package/dist/commands/auth-ops.js.map +1 -1
- package/dist/commands/author-loop.d.ts.map +1 -1
- package/dist/commands/author-loop.js +14 -11
- package/dist/commands/author-loop.js.map +1 -1
- package/dist/commands/billing-read-ops.d.ts.map +1 -1
- package/dist/commands/billing-read-ops.js +6 -5
- package/dist/commands/billing-read-ops.js.map +1 -1
- package/dist/commands/catalog-dispatch.d.ts.map +1 -1
- package/dist/commands/catalog-dispatch.js +75 -31
- package/dist/commands/catalog-dispatch.js.map +1 -1
- package/dist/commands/config-values.d.ts.map +1 -1
- package/dist/commands/config-values.js +75 -25
- package/dist/commands/config-values.js.map +1 -1
- package/dist/commands/connect.d.ts.map +1 -1
- package/dist/commands/connect.js +39 -6
- package/dist/commands/connect.js.map +1 -1
- package/dist/commands/deploy-ops.d.ts.map +1 -1
- package/dist/commands/deploy-ops.js +29 -8
- package/dist/commands/deploy-ops.js.map +1 -1
- package/dist/commands/deploy-status-ops.d.ts.map +1 -1
- package/dist/commands/deploy-status-ops.js +8 -4
- package/dist/commands/deploy-status-ops.js.map +1 -1
- package/dist/commands/deploy-version-resolution.d.ts.map +1 -1
- package/dist/commands/deploy-version-resolution.js +8 -8
- package/dist/commands/deploy-version-resolution.js.map +1 -1
- package/dist/commands/deployments-ops.d.ts.map +1 -1
- package/dist/commands/deployments-ops.js +3 -4
- package/dist/commands/deployments-ops.js.map +1 -1
- package/dist/commands/diagnostics-ops.d.ts.map +1 -1
- package/dist/commands/diagnostics-ops.js +3 -2
- package/dist/commands/diagnostics-ops.js.map +1 -1
- package/dist/commands/envs-ops.d.ts.map +1 -1
- package/dist/commands/envs-ops.js +4 -7
- package/dist/commands/envs-ops.js.map +1 -1
- package/dist/commands/features.d.ts.map +1 -1
- package/dist/commands/features.js +11 -2
- package/dist/commands/features.js.map +1 -1
- package/dist/commands/logs-ops.d.ts.map +1 -1
- package/dist/commands/logs-ops.js +6 -2
- package/dist/commands/logs-ops.js.map +1 -1
- package/dist/commands/mcp-apps.js +1 -1
- package/dist/commands/mcp-apps.js.map +1 -1
- package/dist/commands/org-admin.d.ts +7 -10
- package/dist/commands/org-admin.d.ts.map +1 -1
- package/dist/commands/org-admin.js +173 -171
- package/dist/commands/org-admin.js.map +1 -1
- package/dist/commands/org-member-args.d.ts +51 -0
- package/dist/commands/org-member-args.d.ts.map +1 -0
- package/dist/commands/org-member-args.js +134 -0
- package/dist/commands/org-member-args.js.map +1 -0
- package/dist/commands/org-openai-challenge.d.ts.map +1 -1
- package/dist/commands/org-openai-challenge.js +35 -10
- package/dist/commands/org-openai-challenge.js.map +1 -1
- package/dist/commands/output.d.ts +27 -7
- package/dist/commands/output.d.ts.map +1 -1
- package/dist/commands/output.js +23 -9
- package/dist/commands/output.js.map +1 -1
- package/dist/commands/policy-ops.d.ts.map +1 -1
- package/dist/commands/policy-ops.js +68 -40
- package/dist/commands/policy-ops.js.map +1 -1
- package/dist/commands/project-setup.d.ts.map +1 -1
- package/dist/commands/project-setup.js +34 -9
- package/dist/commands/project-setup.js.map +1 -1
- package/dist/commands/service-ops.d.ts.map +1 -1
- package/dist/commands/service-ops.js +64 -5
- package/dist/commands/service-ops.js.map +1 -1
- package/dist/commands/session.d.ts.map +1 -1
- package/dist/commands/session.js +2 -3
- package/dist/commands/session.js.map +1 -1
- package/dist/commands/shared.d.ts +10 -10
- package/dist/commands/shared.d.ts.map +1 -1
- package/dist/commands/shared.js +53 -24
- package/dist/commands/shared.js.map +1 -1
- package/dist/commands/update-ops.d.ts.map +1 -1
- package/dist/commands/update-ops.js +75 -57
- package/dist/commands/update-ops.js.map +1 -1
- package/dist/control-plane.d.ts +2 -0
- package/dist/control-plane.d.ts.map +1 -1
- package/dist/control-plane.js +16 -0
- package/dist/control-plane.js.map +1 -1
- package/dist/first-run.d.ts.map +1 -1
- package/dist/first-run.js +1 -0
- package/dist/first-run.js.map +1 -1
- package/dist/update-check.d.ts.map +1 -1
- package/dist/update-check.js +3 -2
- package/dist/update-check.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/generated/example-files.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/index.js +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/index.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-content.d.ts.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js +4 -3
- package/node_modules/@noodle-borg/agent-kit/dist/skill-content.js.map +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js +1 -1
- package/node_modules/@noodle-borg/agent-kit/dist/skill-router.js.map +1 -1
- package/package.json +1 -1
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import type { CliFailure } from './shared.js';
|
|
2
|
+
export interface MemberArgs {
|
|
3
|
+
readonly serviceFlag?: string;
|
|
4
|
+
readonly authFlag?: string;
|
|
5
|
+
readonly org?: string;
|
|
6
|
+
readonly subject?: string;
|
|
7
|
+
readonly email?: string;
|
|
8
|
+
readonly role?: 'owner' | 'developer';
|
|
9
|
+
readonly json: boolean;
|
|
10
|
+
readonly all: boolean;
|
|
11
|
+
readonly parseError?: string;
|
|
12
|
+
}
|
|
13
|
+
export type ValidatedMemberAction = {
|
|
14
|
+
readonly ok: true;
|
|
15
|
+
readonly action: 'list' | 'invitations';
|
|
16
|
+
readonly args: MemberArgs;
|
|
17
|
+
readonly org: string;
|
|
18
|
+
} | {
|
|
19
|
+
readonly ok: true;
|
|
20
|
+
readonly action: 'add';
|
|
21
|
+
readonly args: MemberArgs;
|
|
22
|
+
readonly org: string;
|
|
23
|
+
readonly subject: string;
|
|
24
|
+
readonly email: string;
|
|
25
|
+
} | {
|
|
26
|
+
readonly ok: true;
|
|
27
|
+
readonly action: 'remove';
|
|
28
|
+
readonly args: MemberArgs;
|
|
29
|
+
readonly org: string;
|
|
30
|
+
readonly subject: string;
|
|
31
|
+
} | {
|
|
32
|
+
readonly ok: true;
|
|
33
|
+
readonly action: 'set-role';
|
|
34
|
+
readonly args: MemberArgs;
|
|
35
|
+
readonly org: string;
|
|
36
|
+
readonly subject: string;
|
|
37
|
+
readonly role: 'owner' | 'developer';
|
|
38
|
+
} | {
|
|
39
|
+
readonly ok: true;
|
|
40
|
+
readonly action: 'revoke';
|
|
41
|
+
readonly args: MemberArgs;
|
|
42
|
+
readonly org: string;
|
|
43
|
+
readonly email: string;
|
|
44
|
+
} | {
|
|
45
|
+
readonly ok: false;
|
|
46
|
+
readonly failure: CliFailure;
|
|
47
|
+
readonly json: boolean;
|
|
48
|
+
};
|
|
49
|
+
export declare function validateMemberActionArgs(action: string | undefined, args: MemberArgs): ValidatedMemberAction;
|
|
50
|
+
export declare function parseMemberArgs(rest: readonly string[]): MemberArgs;
|
|
51
|
+
//# sourceMappingURL=org-member-args.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-member-args.d.ts","sourceRoot":"","sources":["../../src/commands/org-member-args.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,UAAU,EAAE,MAAM,aAAa,CAAC;AAE9C,MAAM,WAAW,UAAU;IACzB,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,QAAQ,CAAC,EAAE,MAAM,CAAC;IAC3B,QAAQ,CAAC,GAAG,CAAC,EAAE,MAAM,CAAC;IACtB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,CAAC,EAAE,MAAM,CAAC;IACxB,QAAQ,CAAC,IAAI,CAAC,EAAE,OAAO,GAAG,WAAW,CAAC;IACtC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAC;IACvB,QAAQ,CAAC,GAAG,EAAE,OAAO,CAAC;IACtB,QAAQ,CAAC,UAAU,CAAC,EAAE,MAAM,CAAC;CAC9B;AAED,MAAM,MAAM,qBAAqB,GAC7B;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,aAAa,CAAC;IACxC,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;CACtB,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,KAAK,CAAC;IACvB,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;CAC1B,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,UAAU,CAAC;IAC5B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,OAAO,EAAE,MAAM,CAAC;IACzB,QAAQ,CAAC,IAAI,EAAE,OAAO,GAAG,WAAW,CAAC;CACtC,GACD;IACE,QAAQ,CAAC,EAAE,EAAE,IAAI,CAAC;IAClB,QAAQ,CAAC,MAAM,EAAE,QAAQ,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,UAAU,CAAC;IAC1B,QAAQ,CAAC,GAAG,EAAE,MAAM,CAAC;IACrB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;CACxB,GACD;IAAE,QAAQ,CAAC,EAAE,EAAE,KAAK,CAAC;IAAC,QAAQ,CAAC,OAAO,EAAE,UAAU,CAAC;IAAC,QAAQ,CAAC,IAAI,EAAE,OAAO,CAAA;CAAE,CAAC;AAEjF,wBAAgB,wBAAwB,CACtC,MAAM,EAAE,MAAM,GAAG,SAAS,EAC1B,IAAI,EAAE,UAAU,GACf,qBAAqB,CAiEvB;AAED,wBAAgB,eAAe,CAAC,IAAI,EAAE,SAAS,MAAM,EAAE,GAAG,UAAU,CAmDnE"}
|
|
@@ -0,0 +1,134 @@
|
|
|
1
|
+
import { EXIT } from './output.js';
|
|
2
|
+
export function validateMemberActionArgs(action, args) {
|
|
3
|
+
if (args.parseError !== undefined) {
|
|
4
|
+
return {
|
|
5
|
+
ok: false,
|
|
6
|
+
failure: usageError(args.parseError, 'noodle members --help'),
|
|
7
|
+
json: args.json,
|
|
8
|
+
};
|
|
9
|
+
}
|
|
10
|
+
if (args.org === undefined) {
|
|
11
|
+
return {
|
|
12
|
+
ok: false,
|
|
13
|
+
failure: {
|
|
14
|
+
code: 'target_required',
|
|
15
|
+
message: 'members requires --org',
|
|
16
|
+
cause: 'No org was supplied for the members command.',
|
|
17
|
+
fix: 'Pass --org <slug>.',
|
|
18
|
+
next: 'noodle orgs list',
|
|
19
|
+
exitCode: EXIT.USAGE,
|
|
20
|
+
},
|
|
21
|
+
json: args.json,
|
|
22
|
+
};
|
|
23
|
+
}
|
|
24
|
+
if (action === 'list' || action === 'invitations') {
|
|
25
|
+
return { ok: true, action, args, org: args.org };
|
|
26
|
+
}
|
|
27
|
+
if (action === 'add' && args.subject !== undefined && args.email !== undefined) {
|
|
28
|
+
return {
|
|
29
|
+
ok: true,
|
|
30
|
+
action,
|
|
31
|
+
args,
|
|
32
|
+
org: args.org,
|
|
33
|
+
subject: args.subject,
|
|
34
|
+
email: args.email,
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
if (action === 'remove' && args.subject !== undefined) {
|
|
38
|
+
return { ok: true, action, args, org: args.org, subject: args.subject };
|
|
39
|
+
}
|
|
40
|
+
if (action === 'set-role' && args.subject !== undefined && args.role !== undefined) {
|
|
41
|
+
return {
|
|
42
|
+
ok: true,
|
|
43
|
+
action,
|
|
44
|
+
args,
|
|
45
|
+
org: args.org,
|
|
46
|
+
subject: args.subject,
|
|
47
|
+
role: args.role,
|
|
48
|
+
};
|
|
49
|
+
}
|
|
50
|
+
if (action === 'revoke' && args.email !== undefined) {
|
|
51
|
+
return { ok: true, action, args, org: args.org, email: args.email };
|
|
52
|
+
}
|
|
53
|
+
const failure = action === 'add'
|
|
54
|
+
? usageError('members add requires --subject and --email', 'noodle members --help')
|
|
55
|
+
: action === 'remove'
|
|
56
|
+
? usageError('members remove requires --subject', 'noodle members --help')
|
|
57
|
+
: action === 'set-role'
|
|
58
|
+
? usageError('members set-role requires --subject and --role', 'noodle members --help')
|
|
59
|
+
: action === 'revoke'
|
|
60
|
+
? usageError('members revoke requires --email', 'noodle members --help')
|
|
61
|
+
: usageError('usage: noodle members list|add|remove|set-role|invitations|revoke', 'noodle members --help');
|
|
62
|
+
return { ok: false, failure, json: args.json };
|
|
63
|
+
}
|
|
64
|
+
export function parseMemberArgs(rest) {
|
|
65
|
+
let serviceFlag;
|
|
66
|
+
let authFlag;
|
|
67
|
+
let org;
|
|
68
|
+
let subject;
|
|
69
|
+
let email;
|
|
70
|
+
let role;
|
|
71
|
+
let parseError;
|
|
72
|
+
const json = rest.includes('--json');
|
|
73
|
+
const all = rest.includes('--all');
|
|
74
|
+
for (let i = 0; i < rest.length; i++) {
|
|
75
|
+
const arg = rest[i];
|
|
76
|
+
if (arg === '--json' || arg === '--all')
|
|
77
|
+
continue;
|
|
78
|
+
if (arg === '--service' ||
|
|
79
|
+
arg === '--auth-token' ||
|
|
80
|
+
arg === '--org' ||
|
|
81
|
+
arg === '--subject' ||
|
|
82
|
+
arg === '--email' ||
|
|
83
|
+
arg === '--role') {
|
|
84
|
+
const value = rest[i + 1];
|
|
85
|
+
if (value === undefined || value.startsWith('--')) {
|
|
86
|
+
parseError ??= `${arg} requires a value`;
|
|
87
|
+
continue;
|
|
88
|
+
}
|
|
89
|
+
if (arg === '--service')
|
|
90
|
+
serviceFlag = value;
|
|
91
|
+
else if (arg === '--auth-token')
|
|
92
|
+
authFlag = value;
|
|
93
|
+
else if (arg === '--org')
|
|
94
|
+
org = value;
|
|
95
|
+
else if (arg === '--subject')
|
|
96
|
+
subject = value;
|
|
97
|
+
else if (arg === '--email')
|
|
98
|
+
email = value;
|
|
99
|
+
else if (value === 'owner' || value === 'developer')
|
|
100
|
+
role = value;
|
|
101
|
+
else
|
|
102
|
+
parseError ??= '--role must be owner or developer';
|
|
103
|
+
i++;
|
|
104
|
+
}
|
|
105
|
+
else if (arg?.startsWith('-')) {
|
|
106
|
+
parseError ??= `unknown option: ${arg}`;
|
|
107
|
+
}
|
|
108
|
+
else if (arg !== undefined) {
|
|
109
|
+
parseError ??= `unexpected positional argument: ${arg}`;
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
return {
|
|
113
|
+
...(serviceFlag !== undefined ? { serviceFlag } : {}),
|
|
114
|
+
...(authFlag !== undefined ? { authFlag } : {}),
|
|
115
|
+
...(org !== undefined ? { org } : {}),
|
|
116
|
+
...(subject !== undefined ? { subject } : {}),
|
|
117
|
+
...(email !== undefined ? { email } : {}),
|
|
118
|
+
...(role !== undefined ? { role } : {}),
|
|
119
|
+
json,
|
|
120
|
+
all,
|
|
121
|
+
...(parseError !== undefined ? { parseError } : {}),
|
|
122
|
+
};
|
|
123
|
+
}
|
|
124
|
+
function usageError(message, next) {
|
|
125
|
+
return {
|
|
126
|
+
code: 'usage_error',
|
|
127
|
+
message,
|
|
128
|
+
cause: message,
|
|
129
|
+
fix: 'Check the command arguments.',
|
|
130
|
+
next,
|
|
131
|
+
exitCode: EXIT.USAGE,
|
|
132
|
+
};
|
|
133
|
+
}
|
|
134
|
+
//# sourceMappingURL=org-member-args.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"org-member-args.js","sourceRoot":"","sources":["../../src/commands/org-member-args.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"org-openai-challenge.d.ts","sourceRoot":"","sources":["../../src/commands/org-openai-challenge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAenD,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,CAAC,
|
|
1
|
+
{"version":3,"file":"org-openai-challenge.d.ts","sourceRoot":"","sources":["../../src/commands/org-openai-challenge.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAenD,wBAAsB,sBAAsB,CAC1C,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,EAAE,MAAM,CAAC,UAAU,EACtB,IAAI,EAAE,cAAc,GACnB,OAAO,CAAC,MAAM,CAAC,CA6FjB"}
|
|
@@ -3,13 +3,16 @@ import { EXIT, printJsonOk } from './output.js';
|
|
|
3
3
|
import { authRequired } from './resource-shared.js';
|
|
4
4
|
import { printCliFailure } from './shared.js';
|
|
5
5
|
export async function runOrgsOpenAIChallenge(rest, env, home) {
|
|
6
|
-
const
|
|
7
|
-
const
|
|
8
|
-
const json =
|
|
6
|
+
const args = parseOpenAIChallengeArgs(rest);
|
|
7
|
+
const [action, slug] = args.positional;
|
|
8
|
+
const json = args.json;
|
|
9
|
+
if (args.parseError !== undefined) {
|
|
10
|
+
return printCliFailure('orgs', usageError(args.parseError, 'noodle orgs openai-challenge --help'), json);
|
|
11
|
+
}
|
|
9
12
|
if (action !== 'get' && action !== 'set' && action !== 'clear') {
|
|
10
13
|
return printCliFailure('orgs', usageError('orgs openai-challenge requires get, set, or clear', 'noodle orgs openai-challenge get <org>'), json);
|
|
11
14
|
}
|
|
12
|
-
if (slug === undefined) {
|
|
15
|
+
if (slug === undefined || args.positional.length !== 2) {
|
|
13
16
|
return printCliFailure('orgs', usageError('orgs openai-challenge requires an org slug', `noodle orgs openai-challenge ${action} <org>`), json);
|
|
14
17
|
}
|
|
15
18
|
if (action === 'set' && args.code === undefined) {
|
|
@@ -80,19 +83,41 @@ function parseOpenAIChallengeArgs(rest) {
|
|
|
80
83
|
let serviceFlag;
|
|
81
84
|
let authFlag;
|
|
82
85
|
let code;
|
|
86
|
+
let parseError;
|
|
87
|
+
const positional = [];
|
|
88
|
+
const json = rest.includes('--json');
|
|
83
89
|
for (let i = 0; i < rest.length; i++) {
|
|
84
90
|
const arg = rest[i];
|
|
85
|
-
if (arg === '--
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
+
if (arg === '--json')
|
|
92
|
+
continue;
|
|
93
|
+
if (arg === '--service' || arg === '--auth-token' || arg === '--code') {
|
|
94
|
+
const value = rest[i + 1];
|
|
95
|
+
if (value === undefined || value.startsWith('--')) {
|
|
96
|
+
parseError ??= `${arg} requires a value`;
|
|
97
|
+
continue;
|
|
98
|
+
}
|
|
99
|
+
if (arg === '--service')
|
|
100
|
+
serviceFlag = value;
|
|
101
|
+
else if (arg === '--auth-token')
|
|
102
|
+
authFlag = value;
|
|
103
|
+
else
|
|
104
|
+
code = value;
|
|
105
|
+
i++;
|
|
106
|
+
}
|
|
107
|
+
else if (arg?.startsWith('-')) {
|
|
108
|
+
parseError ??= `unknown option: ${arg}`;
|
|
109
|
+
}
|
|
110
|
+
else if (arg !== undefined) {
|
|
111
|
+
positional.push(arg);
|
|
112
|
+
}
|
|
91
113
|
}
|
|
92
114
|
return {
|
|
93
115
|
...(serviceFlag !== undefined ? { serviceFlag } : {}),
|
|
94
116
|
...(authFlag !== undefined ? { authFlag } : {}),
|
|
95
117
|
...(code !== undefined ? { code } : {}),
|
|
118
|
+
json,
|
|
119
|
+
positional,
|
|
120
|
+
...(parseError !== undefined ? { parseError } : {}),
|
|
96
121
|
};
|
|
97
122
|
}
|
|
98
123
|
function usageError(message, next) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"org-openai-challenge.js","sourceRoot":"","sources":["../../src/commands/org-openai-challenge.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,wBAAwB,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAC5E,OAAO,EAAE,IAAI,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AAChD,OAAO,EAAE,YAAY,EAAE,MAAM,sBAAsB,CAAC;AACpD,OAAO,EAAmB,eAAe,EAAE,MAAM,aAAa,CAAC;AAW/D,MAAM,CAAC,KAAK,UAAU,sBAAsB,CAC1C,IAAuB,EACvB,GAAsB,EACtB,IAAoB;IAEpB,MAAM,CAAC,MAAM,
|
|
1
|
+
{"version":3,"file":"org-openai-challenge.js","sourceRoot":"","sources":["../../src/commands/org-openai-challenge.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent-native output contract for
|
|
2
|
+
* Agent-native output contract for every CLI command.
|
|
3
3
|
*
|
|
4
|
-
* The success
|
|
5
|
-
*
|
|
6
|
-
* this is its mirror image so every `--json` command emits one stable, machine-readable shape:
|
|
4
|
+
* The canonical success and failure envelopes ensure every `--json` command emits one stable,
|
|
5
|
+
* machine-readable shape:
|
|
7
6
|
*
|
|
8
7
|
* success → { ok: true, data: <T>, warnings?: string[] }
|
|
9
|
-
* failure → { ok: false, error: { code, message, cause
|
|
8
|
+
* failure → { ok: false, error: { code, message, cause?, fix?, next?, requestId? } }
|
|
10
9
|
*
|
|
11
10
|
* Exit codes are the same taxonomy `serviceFailure()` already returns, named here so new
|
|
12
11
|
* commands and their tests reference the contract instead of magic numbers.
|
|
@@ -62,6 +61,9 @@ export interface JsonError {
|
|
|
62
61
|
readonly requestId?: string;
|
|
63
62
|
readonly errors?: readonly JsonFieldError[];
|
|
64
63
|
readonly fixPrompt?: string;
|
|
64
|
+
readonly suggestions?: readonly string[];
|
|
65
|
+
readonly retryable?: boolean;
|
|
66
|
+
readonly retryAfterSeconds?: number;
|
|
65
67
|
/** An opaque upstream detail (e.g. the raw JSON-RPC error) kept for agent debugging, never a secret. */
|
|
66
68
|
readonly detail?: unknown;
|
|
67
69
|
}
|
|
@@ -76,12 +78,30 @@ export interface NextCommand {
|
|
|
76
78
|
readonly command: string;
|
|
77
79
|
readonly reason: string;
|
|
78
80
|
}
|
|
81
|
+
export interface JsonStreamSnapshot<T> {
|
|
82
|
+
readonly kind: 'snapshot';
|
|
83
|
+
readonly snapshot: T;
|
|
84
|
+
}
|
|
85
|
+
export interface JsonStreamEvent<T> {
|
|
86
|
+
readonly kind: 'event';
|
|
87
|
+
readonly event: T;
|
|
88
|
+
}
|
|
89
|
+
export type JsonStreamRecord<TSnapshot, TEvent> = JsonStreamSnapshot<TSnapshot> | JsonStreamEvent<TEvent>;
|
|
79
90
|
/** Print the success envelope to stdout. Adds `warnings` only when non-empty (matches the error shape). */
|
|
80
|
-
export declare function printJsonOk<T>(data: T, warnings?: readonly string[]): void;
|
|
91
|
+
export declare function printJsonOk<T>(data: T, warnings?: readonly string[], write?: (line: string) => void): void;
|
|
81
92
|
/**
|
|
82
93
|
* Print the failure envelope to stdout and return the exit code. Mirror image of {@link printJsonOk}: every
|
|
83
94
|
* local `--json` command emits `{ ok: false, error }` on failure, and the caller returns the exit code so the
|
|
84
95
|
* command's existing exit taxonomy is preserved.
|
|
85
96
|
*/
|
|
86
|
-
export declare function printJsonFailure(error: JsonError, exitCode?: number): number;
|
|
97
|
+
export declare function printJsonFailure(error: JsonError, exitCode?: number, write?: (line: string) => void): number;
|
|
98
|
+
/** Print the initial state for a streaming command as one NDJSON envelope. */
|
|
99
|
+
export declare function printJsonStreamSnapshot<T>(snapshot: T): void;
|
|
100
|
+
/** Print a subsequent streaming record as one NDJSON envelope. */
|
|
101
|
+
export declare function printJsonStreamEvent<T>(event: T): void;
|
|
102
|
+
/**
|
|
103
|
+
* Print unwrapped JSON only for explicitly human/protocol debugging modes that do not use `--json`.
|
|
104
|
+
* Machine-mode command output must use the envelope or stream helpers above.
|
|
105
|
+
*/
|
|
106
|
+
export declare function printRawJsonForHumanDebug(value: unknown, indentation?: number, write?: (line: string) => void): void;
|
|
87
107
|
//# sourceMappingURL=output.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/commands/output.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"output.d.ts","sourceRoot":"","sources":["../../src/commands/output.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/output.js
CHANGED
|
@@ -1,12 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* Agent-native output contract for
|
|
2
|
+
* Agent-native output contract for every CLI command.
|
|
3
3
|
*
|
|
4
|
-
* The success
|
|
5
|
-
*
|
|
6
|
-
* this is its mirror image so every `--json` command emits one stable, machine-readable shape:
|
|
4
|
+
* The canonical success and failure envelopes ensure every `--json` command emits one stable,
|
|
5
|
+
* machine-readable shape:
|
|
7
6
|
*
|
|
8
7
|
* success → { ok: true, data: <T>, warnings?: string[] }
|
|
9
|
-
* failure → { ok: false, error: { code, message, cause
|
|
8
|
+
* failure → { ok: false, error: { code, message, cause?, fix?, next?, requestId? } }
|
|
10
9
|
*
|
|
11
10
|
* Exit codes are the same taxonomy `serviceFailure()` already returns, named here so new
|
|
12
11
|
* commands and their tests reference the contract instead of magic numbers.
|
|
@@ -27,20 +26,35 @@ export const EXIT = {
|
|
|
27
26
|
MCP: 5,
|
|
28
27
|
};
|
|
29
28
|
/** Print the success envelope to stdout. Adds `warnings` only when non-empty (matches the error shape). */
|
|
30
|
-
export function printJsonOk(data, warnings) {
|
|
29
|
+
export function printJsonOk(data, warnings, write = console.log) {
|
|
31
30
|
const envelope = warnings !== undefined && warnings.length > 0
|
|
32
31
|
? { ok: true, data, warnings }
|
|
33
32
|
: { ok: true, data };
|
|
34
|
-
|
|
33
|
+
write(JSON.stringify(envelope));
|
|
35
34
|
}
|
|
36
35
|
/**
|
|
37
36
|
* Print the failure envelope to stdout and return the exit code. Mirror image of {@link printJsonOk}: every
|
|
38
37
|
* local `--json` command emits `{ ok: false, error }` on failure, and the caller returns the exit code so the
|
|
39
38
|
* command's existing exit taxonomy is preserved.
|
|
40
39
|
*/
|
|
41
|
-
export function printJsonFailure(error, exitCode = 1) {
|
|
40
|
+
export function printJsonFailure(error, exitCode = 1, write = console.log) {
|
|
42
41
|
const envelope = { ok: false, error };
|
|
43
|
-
|
|
42
|
+
write(JSON.stringify(envelope));
|
|
44
43
|
return exitCode;
|
|
45
44
|
}
|
|
45
|
+
/** Print the initial state for a streaming command as one NDJSON envelope. */
|
|
46
|
+
export function printJsonStreamSnapshot(snapshot) {
|
|
47
|
+
printJsonOk({ kind: 'snapshot', snapshot });
|
|
48
|
+
}
|
|
49
|
+
/** Print a subsequent streaming record as one NDJSON envelope. */
|
|
50
|
+
export function printJsonStreamEvent(event) {
|
|
51
|
+
printJsonOk({ kind: 'event', event });
|
|
52
|
+
}
|
|
53
|
+
/**
|
|
54
|
+
* Print unwrapped JSON only for explicitly human/protocol debugging modes that do not use `--json`.
|
|
55
|
+
* Machine-mode command output must use the envelope or stream helpers above.
|
|
56
|
+
*/
|
|
57
|
+
export function printRawJsonForHumanDebug(value, indentation, write = console.log) {
|
|
58
|
+
write(JSON.stringify(value, null, indentation));
|
|
59
|
+
}
|
|
46
60
|
//# sourceMappingURL=output.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/commands/output.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"output.js","sourceRoot":"","sources":["../../src/commands/output.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,kGAAkG;AAClG,MAAM,CAAC,MAAM,IAAI,GAAG;IAClB,eAAe;IACf,EAAE,EAAE,CAAC;IACL,sEAAsE;IACtE,OAAO,EAAE,CAAC;IACV,8EAA8E;IAC9E,KAAK,EAAE,CAAC;IACR,2DAA2D;IAC3D,IAAI,EAAE,CAAC;IACP,wDAAwD;IACxD,WAAW,EAAE,CAAC;IACd,4EAA4E;IAC5E,GAAG,EAAE,CAAC;CACE,CAAC;AA4EX,2GAA2G;AAC3G,MAAM,UAAU,WAAW,CACzB,IAAO,EACP,QAA4B,EAC5B,QAAgC,OAAO,CAAC,GAAG;IAE3C,MAAM,QAAQ,GACZ,QAAQ,KAAK,SAAS,IAAI,QAAQ,CAAC,MAAM,GAAG,CAAC;QAC3C,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,QAAQ,EAAE;QAC9B,CAAC,CAAC,EAAE,EAAE,EAAE,IAAI,EAAE,IAAI,EAAE,CAAC;IACzB,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;AAClC,CAAC;AAED;;;;GAIG;AACH,MAAM,UAAU,gBAAgB,CAC9B,KAAgB,EAChB,QAAQ,GAAG,CAAC,EACZ,QAAgC,OAAO,CAAC,GAAG;IAE3C,MAAM,QAAQ,GAAgB,EAAE,EAAE,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC;IACnD,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC,CAAC;IAChC,OAAO,QAAQ,CAAC;AAClB,CAAC;AAED,8EAA8E;AAC9E,MAAM,UAAU,uBAAuB,CAAI,QAAW;IACpD,WAAW,CAAwB,EAAE,IAAI,EAAE,UAAU,EAAE,QAAQ,EAAE,CAAC,CAAC;AACrE,CAAC;AAED,kEAAkE;AAClE,MAAM,UAAU,oBAAoB,CAAI,KAAQ;IAC9C,WAAW,CAAqB,EAAE,IAAI,EAAE,OAAO,EAAE,KAAK,EAAE,CAAC,CAAC;AAC5D,CAAC;AAED;;;GAGG;AACH,MAAM,UAAU,yBAAyB,CACvC,KAAc,EACd,WAAoB,EACpB,QAAgC,OAAO,CAAC,GAAG;IAE3C,KAAK,CAAC,IAAI,CAAC,SAAS,CAAC,KAAK,EAAE,IAAI,EAAE,WAAW,CAAC,CAAC,CAAC;AAClD,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"policy-ops.d.ts","sourceRoot":"","sources":["../../src/commands/policy-ops.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"policy-ops.d.ts","sourceRoot":"","sources":["../../src/commands/policy-ops.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,cAAc,CAAC;AAInD,OAAO,EAA4B,KAAK,YAAY,EAAE,MAAM,aAAa,CAAC;AAgD1E,wBAAsB,SAAS,CAC7B,IAAI,EAAE,SAAS,MAAM,EAAE,EACvB,GAAG,GAAE,MAAM,CAAC,UAAwB,EACpC,IAAI,GAAE,cAA0B,GAC/B,OAAO,CAAC,MAAM,CAAC,CAwDjB;AAgHD,gGAAgG;AAChG,wBAAgB,mBAAmB,CACjC,QAAQ,EAAE,SAAS,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,EAAE,EAC5C,IAAI,EAAE,YAAY,GACjB,MAAM,CAER"}
|