@copado/agentia-cli 0.42.0-alpha.0 → 0.45.0-alpha.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/README.md +471 -106
- package/dist/commands/ai/agent/ask.d.ts +28 -0
- package/dist/commands/ai/agent/ask.js +124 -0
- package/dist/commands/ai/agent/ask.js.map +1 -0
- package/dist/commands/ai/agent/chat.d.ts +29 -0
- package/dist/commands/ai/agent/chat.js +97 -0
- package/dist/commands/ai/agent/chat.js.map +1 -0
- package/dist/commands/auth/get.d.ts +3 -0
- package/dist/commands/auth/get.js +46 -1
- package/dist/commands/auth/get.js.map +1 -1
- package/dist/commands/auth/set.d.ts +5 -0
- package/dist/commands/auth/set.js +39 -0
- package/dist/commands/auth/set.js.map +1 -1
- package/dist/commands/auth/unset.d.ts +1 -0
- package/dist/commands/auth/unset.js +4 -0
- package/dist/commands/auth/unset.js.map +1 -1
- package/dist/commands/cicd/repository/create.d.ts +25 -0
- package/dist/commands/cicd/repository/create.js +45 -0
- package/dist/commands/cicd/repository/create.js.map +1 -0
- package/dist/commands/cicd/repository/delete.d.ts +11 -0
- package/dist/commands/cicd/repository/delete.js +29 -0
- package/dist/commands/cicd/repository/delete.js.map +1 -0
- package/dist/commands/cicd/repository/get.d.ts +10 -0
- package/dist/commands/cicd/repository/get.js +30 -0
- package/dist/commands/cicd/repository/get.js.map +1 -0
- package/dist/commands/cicd/repository/list.d.ts +8 -0
- package/dist/commands/cicd/repository/list.js +26 -0
- package/dist/commands/cicd/repository/list.js.map +1 -0
- package/dist/commands/cicd/repository/reset.d.ts +12 -0
- package/dist/commands/cicd/repository/reset.js +29 -0
- package/dist/commands/cicd/repository/reset.js.map +1 -0
- package/dist/commands/cicd/repository/update.d.ts +34 -0
- package/dist/commands/cicd/repository/update.js +64 -0
- package/dist/commands/cicd/repository/update.js.map +1 -0
- package/dist/commands/cicd/repository/validate.d.ts +10 -0
- package/dist/commands/cicd/repository/validate.js +33 -0
- package/dist/commands/cicd/repository/validate.js.map +1 -0
- package/dist/lib/ai-chat-session.d.ts +17 -0
- package/dist/lib/ai-chat-session.js +144 -0
- package/dist/lib/ai-chat-session.js.map +1 -0
- package/dist/lib/ai-config.d.ts +26 -0
- package/dist/lib/ai-config.js +113 -0
- package/dist/lib/ai-config.js.map +1 -0
- package/dist/lib/ai-gateway.d.ts +48 -0
- package/dist/lib/ai-gateway.js +298 -0
- package/dist/lib/ai-gateway.js.map +1 -0
- package/dist/lib/ai-operations.d.ts +26 -0
- package/dist/lib/ai-operations.js +177 -0
- package/dist/lib/ai-operations.js.map +1 -0
- package/dist/lib/ai-stream-parser.d.ts +12 -0
- package/dist/lib/ai-stream-parser.js +59 -0
- package/dist/lib/ai-stream-parser.js.map +1 -0
- package/dist/lib/ai-types.d.ts +80 -0
- package/dist/lib/ai-types.js +66 -0
- package/dist/lib/ai-types.js.map +1 -0
- package/dist/lib/auth-config.d.ts +21 -0
- package/dist/lib/auth-config.js +158 -6
- package/dist/lib/auth-config.js.map +1 -1
- package/dist/lib/credential-store.d.ts +13 -1
- package/dist/lib/credential-store.js +47 -2
- package/dist/lib/credential-store.js.map +1 -1
- package/dist/lib/mcp/ai-tools.d.ts +22 -0
- package/dist/lib/mcp/ai-tools.js +45 -0
- package/dist/lib/mcp/ai-tools.js.map +1 -0
- package/dist/lib/mcp/tools.d.ts +77 -2
- package/dist/lib/mcp/tools.js +169 -0
- package/dist/lib/mcp/tools.js.map +1 -1
- package/dist/lib/repository-flags.d.ts +117 -0
- package/dist/lib/repository-flags.js +208 -0
- package/dist/lib/repository-flags.js.map +1 -0
- package/dist/lib/repository-types.d.ts +94 -0
- package/dist/lib/repository-types.js +110 -0
- package/dist/lib/repository-types.js.map +1 -0
- package/oclif.manifest.json +891 -1
- package/package.json +10 -1
|
@@ -0,0 +1,28 @@
|
|
|
1
|
+
import { Interfaces } from '@oclif/core';
|
|
2
|
+
import { AgentiaCommand } from '../../../lib/agentia-command.js';
|
|
3
|
+
export default class AiAgentAsk extends AgentiaCommand {
|
|
4
|
+
static description: string;
|
|
5
|
+
static examples: string[];
|
|
6
|
+
static flags: {
|
|
7
|
+
build: Interfaces.BooleanFlag<boolean>;
|
|
8
|
+
component: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
9
|
+
dialogue: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
10
|
+
domain: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
11
|
+
'gateway-url': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
12
|
+
'no-stream': Interfaces.BooleanFlag<boolean>;
|
|
13
|
+
operate: Interfaces.BooleanFlag<boolean>;
|
|
14
|
+
org: Interfaces.OptionFlag<number | undefined, Interfaces.CustomOptions>;
|
|
15
|
+
pat: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
16
|
+
plan: Interfaces.BooleanFlag<boolean>;
|
|
17
|
+
prompt: Interfaces.OptionFlag<string, Interfaces.CustomOptions>;
|
|
18
|
+
release: Interfaces.BooleanFlag<boolean>;
|
|
19
|
+
'sf-org': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
20
|
+
test: Interfaces.BooleanFlag<boolean>;
|
|
21
|
+
timeout: Interfaces.OptionFlag<number | undefined, Interfaces.CustomOptions>;
|
|
22
|
+
'user-story': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
23
|
+
'work-item': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
24
|
+
workspace: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
25
|
+
};
|
|
26
|
+
run(): Promise<import("../../../lib/ai-types.js").AiAskResult>;
|
|
27
|
+
private resolveAgent;
|
|
28
|
+
}
|
|
@@ -0,0 +1,124 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { AgentiaCommand } from '../../../lib/agentia-command.js';
|
|
3
|
+
import { runAiAsk } from '../../../lib/ai-operations.js';
|
|
4
|
+
import { AI_ASK_AGENTS } from '../../../lib/ai-types.js';
|
|
5
|
+
export default class AiAgentAsk extends AgentiaCommand {
|
|
6
|
+
static description = 'Send a single-turn prompt to a Copado AI agent';
|
|
7
|
+
static examples = [
|
|
8
|
+
'<%= config.bin %> <%= command.id %> --plan -p "Break this requirement into implementation steps"',
|
|
9
|
+
'<%= config.bin %> <%= command.id %> --build -p "Generate an Apex handler outline" --sf-org test14 --user-story US-1042',
|
|
10
|
+
'<%= config.bin %> <%= command.id %> --test -p "Create regression checks" --component LeadScoringHandler --json',
|
|
11
|
+
'<%= config.bin %> <%= command.id %> --operate -p "Diagnose this deployment error" --timeout 240',
|
|
12
|
+
];
|
|
13
|
+
static flags = {
|
|
14
|
+
build: Flags.boolean({
|
|
15
|
+
description: 'Target the Build agent',
|
|
16
|
+
}),
|
|
17
|
+
component: Flags.string({
|
|
18
|
+
description: 'Metadata component name to include in prompt context',
|
|
19
|
+
}),
|
|
20
|
+
dialogue: Flags.string({
|
|
21
|
+
description: 'Copado AI dialogue UUID to reuse',
|
|
22
|
+
}),
|
|
23
|
+
domain: Flags.string({
|
|
24
|
+
description: 'Copado AI domain hostname used to derive the gateway URL, for example robotic.copado.com',
|
|
25
|
+
}),
|
|
26
|
+
'gateway-url': Flags.string({
|
|
27
|
+
description: 'Full Copado AI gateway base URL used instead of deriving from domain and organization; HTTP is allowed for local testing',
|
|
28
|
+
}),
|
|
29
|
+
'no-stream': Flags.boolean({
|
|
30
|
+
default: false,
|
|
31
|
+
description: 'Buffer the full response before printing in human mode',
|
|
32
|
+
}),
|
|
33
|
+
operate: Flags.boolean({
|
|
34
|
+
description: 'Target the Operate agent',
|
|
35
|
+
}),
|
|
36
|
+
org: Flags.integer({
|
|
37
|
+
description: 'Copado AI organization ID used with --domain',
|
|
38
|
+
}),
|
|
39
|
+
pat: Flags.string({
|
|
40
|
+
description: 'Copado AI PAT token override',
|
|
41
|
+
}),
|
|
42
|
+
plan: Flags.boolean({
|
|
43
|
+
description: 'Target the Plan agent',
|
|
44
|
+
}),
|
|
45
|
+
prompt: Flags.string({
|
|
46
|
+
char: 'p',
|
|
47
|
+
description: 'Natural language instruction for the agent',
|
|
48
|
+
required: true,
|
|
49
|
+
}),
|
|
50
|
+
release: Flags.boolean({
|
|
51
|
+
description: 'Target the Release agent',
|
|
52
|
+
}),
|
|
53
|
+
'sf-org': Flags.string({
|
|
54
|
+
description: 'Salesforce org or environment name to include in prompt context',
|
|
55
|
+
}),
|
|
56
|
+
test: Flags.boolean({
|
|
57
|
+
description: 'Target the Test agent',
|
|
58
|
+
}),
|
|
59
|
+
timeout: Flags.integer({
|
|
60
|
+
description: 'AI gateway timeout in seconds for workspace, dialogue, and message calls',
|
|
61
|
+
}),
|
|
62
|
+
'user-story': Flags.string({
|
|
63
|
+
description: 'User story identifier to include in prompt context',
|
|
64
|
+
}),
|
|
65
|
+
'work-item': Flags.string({
|
|
66
|
+
description: 'Work item identifier to include in prompt context',
|
|
67
|
+
}),
|
|
68
|
+
workspace: Flags.string({
|
|
69
|
+
description: 'Copado AI workspace UUID to reuse for a new dialogue',
|
|
70
|
+
}),
|
|
71
|
+
};
|
|
72
|
+
async run() {
|
|
73
|
+
const { flags } = await this.parse(AiAgentAsk);
|
|
74
|
+
const agent = this.resolveAgent(flags);
|
|
75
|
+
const options = {
|
|
76
|
+
agent,
|
|
77
|
+
component: flags.component,
|
|
78
|
+
dialogue: flags.dialogue,
|
|
79
|
+
domain: flags.domain,
|
|
80
|
+
gatewayUrl: flags['gateway-url'],
|
|
81
|
+
org: flags.org,
|
|
82
|
+
pat: flags.pat,
|
|
83
|
+
prompt: flags.prompt,
|
|
84
|
+
sfOrg: flags['sf-org'],
|
|
85
|
+
timeoutMs: flags.timeout === undefined ? undefined : flags.timeout * 1000,
|
|
86
|
+
userStory: flags['user-story'],
|
|
87
|
+
workItem: flags['work-item'],
|
|
88
|
+
workspace: flags.workspace,
|
|
89
|
+
};
|
|
90
|
+
const shouldStream = !this.jsonEnabled() && !flags['no-stream'];
|
|
91
|
+
const result = await runAiAsk(options, {
|
|
92
|
+
onStatus: shouldStream ? (status) => process.stderr.write(`${status}\n`) : undefined,
|
|
93
|
+
onToken: shouldStream ? (token) => process.stdout.write(token) : undefined,
|
|
94
|
+
onWarning: shouldStream ? (warning) => process.stderr.write(`${warning}\n`) : undefined,
|
|
95
|
+
});
|
|
96
|
+
this.display(() => {
|
|
97
|
+
if (shouldStream)
|
|
98
|
+
this.log();
|
|
99
|
+
if (!shouldStream)
|
|
100
|
+
this.log(result.content);
|
|
101
|
+
for (const warning of result.warnings)
|
|
102
|
+
this.warn(warning);
|
|
103
|
+
if (result.followups.length > 0) {
|
|
104
|
+
this.log('Follow-ups:');
|
|
105
|
+
for (const followup of result.followups)
|
|
106
|
+
this.log(`- ${followup.content}`);
|
|
107
|
+
}
|
|
108
|
+
if (result.links.length > 0) {
|
|
109
|
+
this.log('Links:');
|
|
110
|
+
for (const link of result.links)
|
|
111
|
+
this.log(`- ${link.title ?? link.url ?? 'Related link'}${link.url === undefined ? '' : `: ${link.url}`}`);
|
|
112
|
+
}
|
|
113
|
+
});
|
|
114
|
+
return result;
|
|
115
|
+
}
|
|
116
|
+
resolveAgent(flags) {
|
|
117
|
+
const selected = AI_ASK_AGENTS.filter((agent) => flags[agent] === true);
|
|
118
|
+
if (selected.length !== 1) {
|
|
119
|
+
this.error('Exactly one AI agent flag is required: --plan, --build, --test, --release, or --operate.', { exit: 2 });
|
|
120
|
+
}
|
|
121
|
+
return selected[0];
|
|
122
|
+
}
|
|
123
|
+
}
|
|
124
|
+
//# sourceMappingURL=ask.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../../../src/commands/ai/agent/ask.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { Interfaces } from '@oclif/core';
|
|
2
|
+
import { AgentiaCommand } from '../../../lib/agentia-command.js';
|
|
3
|
+
import { type AiChatSessionResult } from '../../../lib/ai-chat-session.js';
|
|
4
|
+
export default class AiAgentChat extends AgentiaCommand {
|
|
5
|
+
static description: string;
|
|
6
|
+
static enableJsonFlag: boolean;
|
|
7
|
+
static examples: string[];
|
|
8
|
+
static flags: {
|
|
9
|
+
build: Interfaces.BooleanFlag<boolean>;
|
|
10
|
+
component: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
11
|
+
dialogue: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
12
|
+
domain: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
13
|
+
'gateway-url': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
14
|
+
operate: Interfaces.BooleanFlag<boolean>;
|
|
15
|
+
orchestrate: Interfaces.BooleanFlag<boolean>;
|
|
16
|
+
org: Interfaces.OptionFlag<number | undefined, Interfaces.CustomOptions>;
|
|
17
|
+
pat: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
18
|
+
plan: Interfaces.BooleanFlag<boolean>;
|
|
19
|
+
release: Interfaces.BooleanFlag<boolean>;
|
|
20
|
+
'sf-org': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
21
|
+
test: Interfaces.BooleanFlag<boolean>;
|
|
22
|
+
timeout: Interfaces.OptionFlag<number | undefined, Interfaces.CustomOptions>;
|
|
23
|
+
'user-story': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
24
|
+
'work-item': Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
25
|
+
workspace: Interfaces.OptionFlag<string | undefined, Interfaces.CustomOptions>;
|
|
26
|
+
};
|
|
27
|
+
run(): Promise<AiChatSessionResult>;
|
|
28
|
+
private resolveAgent;
|
|
29
|
+
}
|
|
@@ -0,0 +1,97 @@
|
|
|
1
|
+
import { Flags } from '@oclif/core';
|
|
2
|
+
import { stdin as input } from 'node:process';
|
|
3
|
+
import { AgentiaCommand } from '../../../lib/agentia-command.js';
|
|
4
|
+
import { runAiChatSession } from '../../../lib/ai-chat-session.js';
|
|
5
|
+
import { AI_CHAT_AGENTS } from '../../../lib/ai-types.js';
|
|
6
|
+
export default class AiAgentChat extends AgentiaCommand {
|
|
7
|
+
static description = 'Start an interactive Copado AI agent chat session';
|
|
8
|
+
static enableJsonFlag = false;
|
|
9
|
+
static examples = [
|
|
10
|
+
'<%= config.bin %> <%= command.id %> --plan --sf-org test14',
|
|
11
|
+
'<%= config.bin %> <%= command.id %> --build --user-story US-1042 --timeout 240',
|
|
12
|
+
'<%= config.bin %> <%= command.id %> --orchestrate --workspace 42d0b908-37b7-4565-9ec9-86eda40c9782',
|
|
13
|
+
];
|
|
14
|
+
static flags = {
|
|
15
|
+
build: Flags.boolean({
|
|
16
|
+
description: 'Target the Build agent',
|
|
17
|
+
}),
|
|
18
|
+
component: Flags.string({
|
|
19
|
+
description: 'Metadata component name to include in prompt context',
|
|
20
|
+
}),
|
|
21
|
+
dialogue: Flags.string({
|
|
22
|
+
description: 'Copado AI dialogue UUID to reuse',
|
|
23
|
+
}),
|
|
24
|
+
domain: Flags.string({
|
|
25
|
+
description: 'Copado AI domain hostname used to derive the gateway URL, for example robotic.copado.com',
|
|
26
|
+
}),
|
|
27
|
+
'gateway-url': Flags.string({
|
|
28
|
+
description: 'Full Copado AI gateway base URL used instead of deriving from domain and organization; HTTP is allowed for local testing',
|
|
29
|
+
}),
|
|
30
|
+
operate: Flags.boolean({
|
|
31
|
+
description: 'Target the Operate agent',
|
|
32
|
+
}),
|
|
33
|
+
orchestrate: Flags.boolean({
|
|
34
|
+
description: 'Target the Orchestrate agent',
|
|
35
|
+
}),
|
|
36
|
+
org: Flags.integer({
|
|
37
|
+
description: 'Copado AI organization ID used with --domain',
|
|
38
|
+
}),
|
|
39
|
+
pat: Flags.string({
|
|
40
|
+
description: 'Copado AI PAT token override',
|
|
41
|
+
}),
|
|
42
|
+
plan: Flags.boolean({
|
|
43
|
+
description: 'Target the Plan agent',
|
|
44
|
+
}),
|
|
45
|
+
release: Flags.boolean({
|
|
46
|
+
description: 'Target the Release agent',
|
|
47
|
+
}),
|
|
48
|
+
'sf-org': Flags.string({
|
|
49
|
+
description: 'Salesforce org or environment name to include in prompt context',
|
|
50
|
+
}),
|
|
51
|
+
test: Flags.boolean({
|
|
52
|
+
description: 'Target the Test agent',
|
|
53
|
+
}),
|
|
54
|
+
timeout: Flags.integer({
|
|
55
|
+
description: 'AI gateway timeout in seconds for workspace, dialogue, and message calls',
|
|
56
|
+
}),
|
|
57
|
+
'user-story': Flags.string({
|
|
58
|
+
description: 'User story identifier to include in prompt context',
|
|
59
|
+
}),
|
|
60
|
+
'work-item': Flags.string({
|
|
61
|
+
description: 'Work item identifier to include in prompt context',
|
|
62
|
+
}),
|
|
63
|
+
workspace: Flags.string({
|
|
64
|
+
description: 'Copado AI workspace UUID to reuse for a new dialogue',
|
|
65
|
+
}),
|
|
66
|
+
};
|
|
67
|
+
async run() {
|
|
68
|
+
const { flags } = await this.parse(AiAgentChat);
|
|
69
|
+
if (!input.isTTY) {
|
|
70
|
+
this.error('AI chat requires an interactive terminal. Use `agentia ai agent ask` for headless prompts.', { exit: 2 });
|
|
71
|
+
}
|
|
72
|
+
const agent = this.resolveAgent(flags);
|
|
73
|
+
const options = {
|
|
74
|
+
agent,
|
|
75
|
+
component: flags.component,
|
|
76
|
+
dialogue: flags.dialogue,
|
|
77
|
+
domain: flags.domain,
|
|
78
|
+
gatewayUrl: flags['gateway-url'],
|
|
79
|
+
org: flags.org,
|
|
80
|
+
pat: flags.pat,
|
|
81
|
+
sfOrg: flags['sf-org'],
|
|
82
|
+
timeoutMs: flags.timeout === undefined ? undefined : flags.timeout * 1000,
|
|
83
|
+
userStory: flags['user-story'],
|
|
84
|
+
workItem: flags['work-item'],
|
|
85
|
+
workspace: flags.workspace,
|
|
86
|
+
};
|
|
87
|
+
return runAiChatSession(options);
|
|
88
|
+
}
|
|
89
|
+
resolveAgent(flags) {
|
|
90
|
+
const selected = AI_CHAT_AGENTS.filter((agent) => flags[agent] === true);
|
|
91
|
+
if (selected.length !== 1) {
|
|
92
|
+
this.error('Exactly one AI agent flag is required: --plan, --build, --test, --release, --operate, or --orchestrate.', { exit: 2 });
|
|
93
|
+
}
|
|
94
|
+
return selected[0];
|
|
95
|
+
}
|
|
96
|
+
}
|
|
97
|
+
//# sourceMappingURL=chat.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../../../src/commands/ai/agent/chat.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,12 +3,14 @@ import { type CredentialType } from '../../lib/credential-store.js';
|
|
|
3
3
|
export type AuthCredentialResult = {
|
|
4
4
|
baseUrl?: null | string;
|
|
5
5
|
domain?: null | string;
|
|
6
|
+
gatewayUrl?: null | string;
|
|
6
7
|
label: string;
|
|
7
8
|
local?: boolean;
|
|
8
9
|
masked?: string;
|
|
9
10
|
orgId?: null | string;
|
|
10
11
|
set: boolean;
|
|
11
12
|
type: CredentialType;
|
|
13
|
+
workspaceId?: null | string;
|
|
12
14
|
};
|
|
13
15
|
export type AuthGetResult = {
|
|
14
16
|
credentials: AuthCredentialResult[];
|
|
@@ -17,6 +19,7 @@ export default class AuthGet extends AgentiaCommand {
|
|
|
17
19
|
static description: string;
|
|
18
20
|
static examples: string[];
|
|
19
21
|
static flags: {
|
|
22
|
+
ai: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
20
23
|
cicd: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
21
24
|
crt: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
25
|
};
|
|
@@ -1,17 +1,21 @@
|
|
|
1
1
|
import { Flags } from '@oclif/core';
|
|
2
2
|
import { AgentiaCommand } from '../../lib/agentia-command.js';
|
|
3
|
-
import { ALL_CREDENTIAL_TYPES, credentialLabel, getCicdBaseUrl, getCredential, getCrtDomain, getCrtOrgId, maskSecret, } from '../../lib/credential-store.js';
|
|
3
|
+
import { ALL_CREDENTIAL_TYPES, credentialLabel, getAiDomain, getAiGatewayUrl, getAiOrgId, getAiWorkspaceId, getCicdBaseUrl, getCredential, getCrtDomain, getCrtOrgId, maskSecret, } from '../../lib/credential-store.js';
|
|
4
4
|
import { normalizeLocalGatewayBaseUrl, readLocalGatewayConfig } from '../../lib/local-gateway-config.js';
|
|
5
5
|
export default class AuthGet extends AgentiaCommand {
|
|
6
6
|
static description = 'Show stored authentication credentials from the system keychain';
|
|
7
7
|
static examples = [
|
|
8
8
|
'<%= config.bin %> <%= command.id %>',
|
|
9
|
+
'<%= config.bin %> <%= command.id %> --ai',
|
|
9
10
|
'<%= config.bin %> <%= command.id %> --cicd',
|
|
10
11
|
'<%= config.bin %> <%= command.id %> --crt',
|
|
11
12
|
'<%= config.bin %> <%= command.id %> --cicd --crt',
|
|
12
13
|
'<%= config.bin %> <%= command.id %> --json',
|
|
13
14
|
];
|
|
14
15
|
static flags = {
|
|
16
|
+
ai: Flags.boolean({
|
|
17
|
+
description: 'Show PAT token for Copado AI authentication',
|
|
18
|
+
}),
|
|
15
19
|
cicd: Flags.boolean({
|
|
16
20
|
description: 'Show Copado API key for CICD authentication',
|
|
17
21
|
}),
|
|
@@ -28,6 +32,9 @@ export default class AuthGet extends AgentiaCommand {
|
|
|
28
32
|
if (flags.crt) {
|
|
29
33
|
types.push('crt');
|
|
30
34
|
}
|
|
35
|
+
if (flags.ai) {
|
|
36
|
+
types.push('ai');
|
|
37
|
+
}
|
|
31
38
|
const selectedTypes = types.length > 0 ? types : ALL_CREDENTIAL_TYPES;
|
|
32
39
|
const credentials = selectedTypes.map((type) => this.buildCredentialResult(type));
|
|
33
40
|
for (const credential of credentials) {
|
|
@@ -78,6 +85,30 @@ export default class AuthGet extends AgentiaCommand {
|
|
|
78
85
|
if (type === 'cicd') {
|
|
79
86
|
return this.buildCicdCredentialResult();
|
|
80
87
|
}
|
|
88
|
+
if (type === 'ai') {
|
|
89
|
+
const credential = getCredential(type);
|
|
90
|
+
if (credential === null) {
|
|
91
|
+
return {
|
|
92
|
+
domain: getAiDomain(),
|
|
93
|
+
gatewayUrl: getAiGatewayUrl(),
|
|
94
|
+
label: credentialLabel(type),
|
|
95
|
+
orgId: getAiOrgId(),
|
|
96
|
+
set: false,
|
|
97
|
+
type,
|
|
98
|
+
workspaceId: getAiWorkspaceId(),
|
|
99
|
+
};
|
|
100
|
+
}
|
|
101
|
+
return {
|
|
102
|
+
domain: getAiDomain(),
|
|
103
|
+
gatewayUrl: getAiGatewayUrl(),
|
|
104
|
+
label: credentialLabel(type),
|
|
105
|
+
masked: maskSecret(credential),
|
|
106
|
+
orgId: getAiOrgId(),
|
|
107
|
+
set: true,
|
|
108
|
+
type,
|
|
109
|
+
workspaceId: getAiWorkspaceId(),
|
|
110
|
+
};
|
|
111
|
+
}
|
|
81
112
|
const credential = getCredential(type);
|
|
82
113
|
if (credential === null) {
|
|
83
114
|
return {
|
|
@@ -107,6 +138,13 @@ export default class AuthGet extends AgentiaCommand {
|
|
|
107
138
|
const orgId = credential.orgId === null || credential.orgId === undefined ? 'not set' : credential.orgId;
|
|
108
139
|
return `${credential.label}: not set (domain: ${domain}, org: ${orgId})`;
|
|
109
140
|
}
|
|
141
|
+
if (credential.type === 'ai') {
|
|
142
|
+
const domain = credential.domain === null || credential.domain === undefined ? 'not set' : credential.domain;
|
|
143
|
+
const orgId = credential.orgId === null || credential.orgId === undefined ? 'not set' : credential.orgId;
|
|
144
|
+
const workspaceId = credential.workspaceId === null || credential.workspaceId === undefined ? 'not set' : credential.workspaceId;
|
|
145
|
+
const gatewayUrl = credential.gatewayUrl === null || credential.gatewayUrl === undefined ? 'derived' : credential.gatewayUrl;
|
|
146
|
+
return `${credential.label}: not set (domain: ${domain}, org: ${orgId}, workspace: ${workspaceId}, gateway: ${gatewayUrl})`;
|
|
147
|
+
}
|
|
110
148
|
return `${credential.label}: not set`;
|
|
111
149
|
}
|
|
112
150
|
if (credential.type === 'cicd') {
|
|
@@ -114,6 +152,13 @@ export default class AuthGet extends AgentiaCommand {
|
|
|
114
152
|
const localSuffix = credential.local ? ', local' : '';
|
|
115
153
|
return `${credential.label}: ${credential.masked} (endpoint: ${endpointLabel}${localSuffix})`;
|
|
116
154
|
}
|
|
155
|
+
if (credential.type === 'ai') {
|
|
156
|
+
const domain = credential.domain === null || credential.domain === undefined ? 'not set' : credential.domain;
|
|
157
|
+
const orgId = credential.orgId === null || credential.orgId === undefined ? 'not set' : credential.orgId;
|
|
158
|
+
const workspaceId = credential.workspaceId === null || credential.workspaceId === undefined ? 'not set' : credential.workspaceId;
|
|
159
|
+
const gatewayUrl = credential.gatewayUrl === null || credential.gatewayUrl === undefined ? 'derived' : credential.gatewayUrl;
|
|
160
|
+
return `${credential.label}: ${credential.masked} (domain: ${domain}, org: ${orgId}, workspace: ${workspaceId}, gateway: ${gatewayUrl})`;
|
|
161
|
+
}
|
|
117
162
|
const domain = credential.domain === null || credential.domain === undefined ? 'not set' : credential.domain;
|
|
118
163
|
const orgId = credential.orgId === null || credential.orgId === undefined ? 'not set' : credential.orgId;
|
|
119
164
|
return `${credential.label}: ${credential.masked} (domain: ${domain}, org: ${orgId})`;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/auth/get.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAA;AAEjC,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EACL,oBAAoB,EACpB,eAAe,EAEf,cAAc,EACd,aAAa,EACb,YAAY,EACZ,WAAW,EACX,UAAU,GACX,MAAM,+BAA+B,CAAA;AACtC,OAAO,EAAC,4BAA4B,EAAE,sBAAsB,EAAC,MAAM,mCAAmC,CAAA;
|
|
1
|
+
{"version":3,"file":"get.js","sourceRoot":"","sources":["../../../src/commands/auth/get.ts"],"names":[],"mappings":"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"}
|
|
@@ -4,6 +4,11 @@ export default class AuthSet extends AgentiaCommand {
|
|
|
4
4
|
static description: string;
|
|
5
5
|
static examples: string[];
|
|
6
6
|
static flags: {
|
|
7
|
+
ai: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
|
+
'ai-domain': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
|
+
'ai-gateway-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
10
|
+
'ai-org': import("@oclif/core/interfaces").OptionFlag<number | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
'ai-workspace': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
7
12
|
cicd: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
8
13
|
crt: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
9
14
|
'crt-domain': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
@@ -5,6 +5,10 @@ import { CICD_REGIONS } from '../../lib/cicd-region.js';
|
|
|
5
5
|
export default class AuthSet extends AgentiaCommand {
|
|
6
6
|
static description = 'Store authentication credentials securely in the system keychain';
|
|
7
7
|
static examples = [
|
|
8
|
+
'<%= config.bin %> <%= command.id %> --ai <pat-token> --ai-domain robotic.copado.com --ai-org 42888',
|
|
9
|
+
'<%= config.bin %> <%= command.id %> --ai <pat-token> --ai-domain robotic.copado.com --ai-org 42888 --ai-workspace 42d0b908-37b7-4565-9ec9-86eda40c9782',
|
|
10
|
+
'<%= config.bin %> <%= command.id %> --ai <pat-token> --ai-gateway-url http://localhost:8080/organizations/42888',
|
|
11
|
+
'<%= config.bin %> <%= command.id %> --ai-workspace 42d0b908-37b7-4565-9ec9-86eda40c9782',
|
|
8
12
|
'<%= config.bin %> <%= command.id %> --cicd <copado-api-key> --region na',
|
|
9
13
|
'<%= config.bin %> <%= command.id %> --cicd <copado-api-key> --custom-url https://dev.api.copado.com',
|
|
10
14
|
'<%= config.bin %> <%= command.id %> --cicd <copado-api-key>',
|
|
@@ -15,6 +19,21 @@ export default class AuthSet extends AgentiaCommand {
|
|
|
15
19
|
'<%= config.bin %> <%= command.id %> --cicd <copado-api-key> --region na --json',
|
|
16
20
|
];
|
|
17
21
|
static flags = {
|
|
22
|
+
ai: Flags.string({
|
|
23
|
+
description: 'PAT token for Copado AI authentication',
|
|
24
|
+
}),
|
|
25
|
+
'ai-domain': Flags.string({
|
|
26
|
+
description: 'Copado AI domain hostname used to derive the gateway URL, for example robotic.copado.com',
|
|
27
|
+
}),
|
|
28
|
+
'ai-gateway-url': Flags.string({
|
|
29
|
+
description: 'Full Copado AI gateway base URL used instead of deriving from domain and organization; HTTP is allowed for local testing',
|
|
30
|
+
}),
|
|
31
|
+
'ai-org': Flags.integer({
|
|
32
|
+
description: 'Copado AI organization ID used with --ai-domain',
|
|
33
|
+
}),
|
|
34
|
+
'ai-workspace': Flags.string({
|
|
35
|
+
description: 'Copado AI workspace UUID to validate and store as the default',
|
|
36
|
+
}),
|
|
18
37
|
cicd: Flags.string({
|
|
19
38
|
description: 'Copado API key for CICD authentication',
|
|
20
39
|
}),
|
|
@@ -40,6 +59,11 @@ export default class AuthSet extends AgentiaCommand {
|
|
|
40
59
|
let result;
|
|
41
60
|
try {
|
|
42
61
|
result = await this.withSpinnerForAuth(flags, () => applyAuthSet({
|
|
62
|
+
ai: flags.ai,
|
|
63
|
+
aiDomain: flags['ai-domain'],
|
|
64
|
+
aiGatewayUrl: flags['ai-gateway-url'],
|
|
65
|
+
aiOrg: flags['ai-org'],
|
|
66
|
+
aiWorkspace: flags['ai-workspace'],
|
|
43
67
|
cicd: flags.cicd,
|
|
44
68
|
crt: flags.crt,
|
|
45
69
|
crtDomain: flags['crt-domain'],
|
|
@@ -66,6 +90,18 @@ export default class AuthSet extends AgentiaCommand {
|
|
|
66
90
|
if (result.crt?.orgId !== undefined) {
|
|
67
91
|
this.log(`Stored CRT organization ID: ${result.crt.orgId}.`);
|
|
68
92
|
}
|
|
93
|
+
if (result.ai?.domain !== undefined) {
|
|
94
|
+
this.log(`Stored AI domain: ${result.ai.domain}.`);
|
|
95
|
+
}
|
|
96
|
+
if (result.ai?.orgId !== undefined) {
|
|
97
|
+
this.log(`Stored AI organization ID: ${result.ai.orgId}.`);
|
|
98
|
+
}
|
|
99
|
+
if (result.ai?.gatewayUrl !== undefined) {
|
|
100
|
+
this.log(`Stored AI gateway URL: ${result.ai.gatewayUrl}.`);
|
|
101
|
+
}
|
|
102
|
+
if (result.ai?.workspaceId !== undefined) {
|
|
103
|
+
this.log(`Stored AI workspace ID: ${result.ai.workspaceId}.`);
|
|
104
|
+
}
|
|
69
105
|
return result;
|
|
70
106
|
}
|
|
71
107
|
async withSpinnerForAuth(flags, action) {
|
|
@@ -85,6 +121,9 @@ export default class AuthSet extends AgentiaCommand {
|
|
|
85
121
|
: 'Validating CRT credentials for custom domain';
|
|
86
122
|
return this.withSpinner(spinnerMessage, action);
|
|
87
123
|
}
|
|
124
|
+
if (flags.ai !== undefined) {
|
|
125
|
+
return this.withSpinner('Validating AI credentials', action);
|
|
126
|
+
}
|
|
88
127
|
return action();
|
|
89
128
|
}
|
|
90
129
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../src/commands/auth/set.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"set.js","sourceRoot":"","sources":["../../../src/commands/auth/set.ts"],"names":[],"mappings":"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"}
|
|
@@ -7,6 +7,7 @@ export default class AuthUnset extends AgentiaCommand {
|
|
|
7
7
|
static description: string;
|
|
8
8
|
static examples: string[];
|
|
9
9
|
static flags: {
|
|
10
|
+
ai: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
10
11
|
cicd: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
11
12
|
crt: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
12
13
|
yes: import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
@@ -7,12 +7,16 @@ export default class AuthUnset extends AgentiaCommand {
|
|
|
7
7
|
static description = 'Remove stored authentication credentials from the system keychain';
|
|
8
8
|
static examples = [
|
|
9
9
|
'<%= config.bin %> <%= command.id %>',
|
|
10
|
+
'<%= config.bin %> <%= command.id %> --ai',
|
|
10
11
|
'<%= config.bin %> <%= command.id %> --cicd',
|
|
11
12
|
'<%= config.bin %> <%= command.id %> --crt',
|
|
12
13
|
'<%= config.bin %> <%= command.id %> --cicd --crt --yes',
|
|
13
14
|
'<%= config.bin %> <%= command.id %> --json --yes',
|
|
14
15
|
];
|
|
15
16
|
static flags = {
|
|
17
|
+
ai: Flags.boolean({
|
|
18
|
+
description: 'Remove Copado AI PAT, domain, organization, workspace, and gateway URL configuration',
|
|
19
|
+
}),
|
|
16
20
|
cicd: Flags.boolean({
|
|
17
21
|
description: 'Remove Copado API key and CICD endpoint configuration',
|
|
18
22
|
}),
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"unset.js","sourceRoot":"","sources":["../../../src/commands/auth/unset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAA;AACjC,OAAO,EAAC,KAAK,IAAI,KAAK,EAAC,MAAM,cAAc,CAAA;AAE3C,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EACL,cAAc,EAEd,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAA;AAM3D,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAAc;IACnD,MAAM,CAAU,WAAW,GAAG,mEAAmE,CAAA;IACjG,MAAM,CAAU,QAAQ,GAAG;QACzB,qCAAqC;QACrC,4CAA4C;QAC5C,2CAA2C;QAC3C,wDAAwD;QACxD,kDAAkD;KACnD,CAAA;IACD,MAAM,CAAU,KAAK,GAAG;QACtB,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,WAAW,EAAE,uDAAuD;SACrE,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,wDAAwD;SACtE,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,yDAAyD;SACvE,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;QAC1C,MAAM,mBAAmB,GACvB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAEpE,IAAI,mBAAmB,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,wEAAwE,EAAE,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAA;QACjG,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAE/C,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;oBAC9D,OAAO;wBACL,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,EAAE;qBACZ,CAAA;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAA;gBAChD,CAAC;gBAED,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;QAE1C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;gBACnC,SAAQ;YACV,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,cAAc,CAAC,CAAA;QAC3C,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC"}
|
|
1
|
+
{"version":3,"file":"unset.js","sourceRoot":"","sources":["../../../src/commands/auth/unset.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,KAAK,EAAC,MAAM,aAAa,CAAA;AACjC,OAAO,EAAC,KAAK,IAAI,KAAK,EAAC,MAAM,cAAc,CAAA;AAE3C,OAAO,EAAC,cAAc,EAAC,MAAM,8BAA8B,CAAA;AAC3D,OAAO,EACL,cAAc,EAEd,gBAAgB,EAChB,uBAAuB,EACvB,qBAAqB,GACtB,MAAM,0BAA0B,CAAA;AACjC,OAAO,EAAC,gBAAgB,EAAC,MAAM,4BAA4B,CAAA;AAM3D,MAAM,CAAC,OAAO,OAAO,SAAU,SAAQ,cAAc;IACnD,MAAM,CAAU,WAAW,GAAG,mEAAmE,CAAA;IACjG,MAAM,CAAU,QAAQ,GAAG;QACzB,qCAAqC;QACrC,0CAA0C;QAC1C,4CAA4C;QAC5C,2CAA2C;QAC3C,wDAAwD;QACxD,kDAAkD;KACnD,CAAA;IACD,MAAM,CAAU,KAAK,GAAG;QACtB,EAAE,EAAE,KAAK,CAAC,OAAO,CAAC;YAChB,WAAW,EAAE,sFAAsF;SACpG,CAAC;QACF,IAAI,EAAE,KAAK,CAAC,OAAO,CAAC;YAClB,WAAW,EAAE,uDAAuD;SACrE,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,WAAW,EAAE,wDAAwD;SACtE,CAAC;QACF,GAAG,EAAE,KAAK,CAAC,OAAO,CAAC;YACjB,IAAI,EAAE,GAAG;YACT,OAAO,EAAE,KAAK;YACd,WAAW,EAAE,yDAAyD;SACvE,CAAC;KACH,CAAA;IAEM,KAAK,CAAC,GAAG;QACd,MAAM,EAAC,KAAK,EAAC,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,SAAS,CAAC,CAAA;QAC3C,MAAM,KAAK,GAAG,qBAAqB,CAAC,KAAK,CAAC,CAAA;QAC1C,MAAM,mBAAmB,GACvB,CAAC,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,uBAAuB,EAAE,CAAA;QAEpE,IAAI,mBAAmB,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACtC,IAAI,CAAC,KAAK,CAAC,wEAAwE,EAAE,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAA;QACjG,CAAC;QAED,IAAI,CAAC,KAAK,CAAC,GAAG,EAAE,CAAC;YACf,IAAI,CAAC;gBACH,MAAM,SAAS,GAAG,MAAM,gBAAgB,CAAC,KAAK,CAAC,CAAA;gBAE/C,IAAI,CAAC,SAAS,EAAE,CAAC;oBACf,IAAI,CAAC,GAAG,CAAC,oDAAoD,CAAC,CAAA;oBAC9D,OAAO;wBACL,SAAS,EAAE,IAAI;wBACf,OAAO,EAAE,EAAE;qBACZ,CAAA;gBACH,CAAC;YACH,CAAC;YAAC,OAAO,KAAK,EAAE,CAAC;gBACf,IAAI,gBAAgB,CAAC,KAAK,CAAC,EAAE,CAAC;oBAC5B,IAAI,CAAC,KAAK,CAAC,uBAAuB,EAAE,EAAC,IAAI,EAAE,CAAC,EAAC,CAAC,CAAA;gBAChD,CAAC;gBAED,MAAM,KAAK,CAAA;YACb,CAAC;QACH,CAAC;QAED,MAAM,MAAM,GAAG,MAAM,cAAc,CAAC,KAAK,CAAC,CAAA;QAE1C,KAAK,MAAM,KAAK,IAAI,MAAM,CAAC,OAAO,EAAE,CAAC;YACnC,IAAI,KAAK,CAAC,OAAO,EAAE,CAAC;gBAClB,IAAI,CAAC,GAAG,CAAC,WAAW,KAAK,CAAC,KAAK,GAAG,CAAC,CAAA;gBACnC,SAAQ;YACV,CAAC;YAED,IAAI,CAAC,GAAG,CAAC,MAAM,KAAK,CAAC,KAAK,cAAc,CAAC,CAAA;QAC3C,CAAC;QAED,OAAO,MAAM,CAAA;IACf,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { AgentiaCommand } from '../../../lib/agentia-command.js';
|
|
2
|
+
import { type GitRepository } from '../../../lib/repository-types.js';
|
|
3
|
+
export default class RepositoryCreate extends AgentiaCommand {
|
|
4
|
+
static args: {
|
|
5
|
+
name: import("@oclif/core/interfaces").Arg<string, Record<string, unknown>>;
|
|
6
|
+
};
|
|
7
|
+
static description: string;
|
|
8
|
+
static examples: string[];
|
|
9
|
+
static flags: {
|
|
10
|
+
readonly provider: import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
11
|
+
readonly 'source-format': import("@oclif/core/interfaces").OptionFlag<string, import("@oclif/core/interfaces").CustomOptions>;
|
|
12
|
+
readonly 'auth-type': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
13
|
+
readonly 'branch-base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
14
|
+
readonly 'commit-base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
15
|
+
readonly 'extra-headers': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
16
|
+
readonly password: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
17
|
+
readonly 'pull-request-base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
18
|
+
readonly 'tag-base-url': import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
19
|
+
readonly uri: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
20
|
+
readonly username: import("@oclif/core/interfaces").OptionFlag<string | undefined, import("@oclif/core/interfaces").CustomOptions>;
|
|
21
|
+
readonly 'allow-functions-git-cache': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
22
|
+
readonly 'copado-tunnel-enabled': import("@oclif/core/interfaces").BooleanFlag<boolean>;
|
|
23
|
+
};
|
|
24
|
+
run(): Promise<GitRepository>;
|
|
25
|
+
}
|