@copado/agentia-cli 0.118.0-alpha.0 → 0.120.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.
Files changed (88) hide show
  1. package/README.md +224 -293
  2. package/dist/commands/cicd/notification/configure.d.ts +1 -1
  3. package/dist/commands/cicd/work/deployment-step/create.d.ts +1 -1
  4. package/dist/commands/testing/build/run.d.ts +2 -2
  5. package/dist/commands/testing/data-table/create.d.ts +1 -1
  6. package/dist/commands/testing/data-table/update.d.ts +1 -1
  7. package/dist/commands/testing/job/create.d.ts +1 -1
  8. package/dist/commands/testing/job/schedule/set.d.ts +1 -1
  9. package/dist/commands/testing/job/update.d.ts +1 -1
  10. package/dist/commands/testing/robot/update.d.ts +1 -1
  11. package/dist/commands/testing/run.d.ts +2 -2
  12. package/dist/commands/testing/test/run.d.ts +2 -2
  13. package/dist/lib/ai-chat-session.d.ts +0 -3
  14. package/dist/lib/ai-chat-session.js +66 -182
  15. package/dist/lib/ai-chat-session.js.map +1 -1
  16. package/dist/lib/ai-gateway.d.ts +1 -8
  17. package/dist/lib/ai-gateway.js +2 -34
  18. package/dist/lib/ai-gateway.js.map +1 -1
  19. package/dist/lib/ai-types.d.ts +0 -18
  20. package/dist/lib/ai-types.js +1 -45
  21. package/dist/lib/ai-types.js.map +1 -1
  22. package/dist/lib/format.d.ts +0 -2
  23. package/dist/lib/format.js +2 -5
  24. package/dist/lib/format.js.map +1 -1
  25. package/dist/lib/loopback-callback-server.d.ts +1 -0
  26. package/dist/lib/loopback-callback-server.js +13 -6
  27. package/dist/lib/loopback-callback-server.js.map +1 -1
  28. package/dist/lib/mcp/tools.d.ts +2 -2
  29. package/dist/lib/testing-data-command.d.ts +1 -1
  30. package/dist/lib/testing-flags.d.ts +2 -2
  31. package/oclif.manifest.json +691 -842
  32. package/package.json +13 -12
  33. package/templates/skills/agentia-ai/SKILL.md +5 -5
  34. package/templates/skills/agentia-ai/references/ai-agents.md +3 -18
  35. package/dist/commands/ai/session/list.d.ts +0 -14
  36. package/dist/commands/ai/session/list.js +0 -46
  37. package/dist/commands/ai/session/list.js.map +0 -1
  38. package/dist/commands/ai/session/start.d.ts +0 -17
  39. package/dist/commands/ai/session/start.js +0 -60
  40. package/dist/commands/ai/session/start.js.map +0 -1
  41. package/dist/lib/ai-session-banner.d.ts +0 -5
  42. package/dist/lib/ai-session-banner.js +0 -20
  43. package/dist/lib/ai-session-banner.js.map +0 -1
  44. package/dist/lib/ai-session-tui-blocks.d.ts +0 -9
  45. package/dist/lib/ai-session-tui-blocks.js +0 -36
  46. package/dist/lib/ai-session-tui-blocks.js.map +0 -1
  47. package/dist/lib/ai-session-tui-clipboard.d.ts +0 -22
  48. package/dist/lib/ai-session-tui-clipboard.js +0 -78
  49. package/dist/lib/ai-session-tui-clipboard.js.map +0 -1
  50. package/dist/lib/ai-session-tui-composer.d.ts +0 -35
  51. package/dist/lib/ai-session-tui-composer.js +0 -96
  52. package/dist/lib/ai-session-tui-composer.js.map +0 -1
  53. package/dist/lib/ai-session-tui-highlight.d.ts +0 -11
  54. package/dist/lib/ai-session-tui-highlight.js +0 -310
  55. package/dist/lib/ai-session-tui-highlight.js.map +0 -1
  56. package/dist/lib/ai-session-tui-keys.d.ts +0 -42
  57. package/dist/lib/ai-session-tui-keys.js +0 -159
  58. package/dist/lib/ai-session-tui-keys.js.map +0 -1
  59. package/dist/lib/ai-session-tui-mermaid-image.d.ts +0 -43
  60. package/dist/lib/ai-session-tui-mermaid-image.js +0 -444
  61. package/dist/lib/ai-session-tui-mermaid-image.js.map +0 -1
  62. package/dist/lib/ai-session-tui-mermaid-paint.d.ts +0 -3
  63. package/dist/lib/ai-session-tui-mermaid-paint.js +0 -182
  64. package/dist/lib/ai-session-tui-mermaid-paint.js.map +0 -1
  65. package/dist/lib/ai-session-tui-mermaid.d.ts +0 -19
  66. package/dist/lib/ai-session-tui-mermaid.js +0 -158
  67. package/dist/lib/ai-session-tui-mermaid.js.map +0 -1
  68. package/dist/lib/ai-session-tui-message.d.ts +0 -9
  69. package/dist/lib/ai-session-tui-message.js +0 -24
  70. package/dist/lib/ai-session-tui-message.js.map +0 -1
  71. package/dist/lib/ai-session-tui-scroll.d.ts +0 -32
  72. package/dist/lib/ai-session-tui-scroll.js +0 -148
  73. package/dist/lib/ai-session-tui-scroll.js.map +0 -1
  74. package/dist/lib/ai-session-tui-slash.d.ts +0 -14
  75. package/dist/lib/ai-session-tui-slash.js +0 -53
  76. package/dist/lib/ai-session-tui-slash.js.map +0 -1
  77. package/dist/lib/ai-session-tui-welcome.d.ts +0 -12
  78. package/dist/lib/ai-session-tui-welcome.js +0 -33
  79. package/dist/lib/ai-session-tui-welcome.js.map +0 -1
  80. package/dist/lib/ai-session-tui-wrap.d.ts +0 -2
  81. package/dist/lib/ai-session-tui-wrap.js +0 -24
  82. package/dist/lib/ai-session-tui-wrap.js.map +0 -1
  83. package/dist/lib/ai-session-tui.d.ts +0 -7
  84. package/dist/lib/ai-session-tui.js +0 -859
  85. package/dist/lib/ai-session-tui.js.map +0 -1
  86. package/dist/lib/ai-sessions.d.ts +0 -17
  87. package/dist/lib/ai-sessions.js +0 -142
  88. package/dist/lib/ai-sessions.js.map +0 -1
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-mermaid-paint.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-mermaid-paint.ts"],"names":[],"mappings":"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"}
@@ -1,19 +0,0 @@
1
- import { type HighlightSpan } from './ai-session-tui-highlight.js';
2
- import { type MermaidImageProtocol, type MermaidImageRecord, type MermaidImageSlot } from './ai-session-tui-mermaid-image.js';
3
- export type MermaidRenderMode = 'ascii' | 'auto' | 'image';
4
- export type MermaidDiagramView = {
5
- image?: MermaidImageRecord;
6
- lines: string[];
7
- protocol: MermaidImageProtocol;
8
- shapeKey?: HighlightSpan[];
9
- slotKind?: MermaidImageSlot['kind'];
10
- };
11
- export declare function isMermaidLanguage(language: string): boolean;
12
- export declare function normalizeMermaidSource(source: string): string;
13
- export declare function renderMermaidDiagram(source: string): string | undefined;
14
- export declare function mermaidDiagramRows(source: string, width: number): string[] | undefined;
15
- export declare function mermaidShapeKey(source: string): HighlightSpan[] | undefined;
16
- export declare function colorizeMermaidArtLine(line: string): HighlightSpan[];
17
- export declare function mermaidImageRowText(slot: MermaidImageSlot): string;
18
- export declare function mermaidDiagramView(source: string, width: number, mode?: MermaidRenderMode): MermaidDiagramView | undefined;
19
- export declare function mermaidSlotColor(slot: MermaidImageSlot): string | undefined;
@@ -1,158 +0,0 @@
1
- import { parseMermaid, renderMermaidASCII } from 'beautiful-mermaid';
2
- import { detectMermaidImageProtocol, kittyPlaceholderRow, mermaidImageColor, mermaidImageSlotKind, overlaySlotText, rasterizeMermaidPng, } from './ai-session-tui-mermaid-image.js';
3
- import { paintMermaidShapeKey } from './ai-session-tui-mermaid-paint.js';
4
- const MERMAID_LANGUAGES = new Set(['mermaid', 'mmd']);
5
- const MAX_MERMAID_SOURCE = 16_384;
6
- const MAX_CACHE = 24;
7
- const FLOWCHART_ONE_LINE = /^(graph|flowchart)\s+(TD|TB|LR|BT|RL)\s*;\s*(.+)$/iu;
8
- const ART_COLORS = {
9
- '(': 'cyan',
10
- ')': 'cyan',
11
- '⌜': 'magenta',
12
- '⌝': 'magenta',
13
- '⌞': 'magenta',
14
- '⌟': 'magenta',
15
- '┌': 'blue',
16
- '┐': 'blue',
17
- '└': 'blue',
18
- '┘': 'blue',
19
- '╭': 'cyan',
20
- '╮': 'cyan',
21
- '╯': 'cyan',
22
- '╰': 'cyan',
23
- '▲': 'green',
24
- '►': 'green',
25
- '▼': 'green',
26
- '◄': 'green',
27
- '◇': 'yellow',
28
- '◎': 'magenta',
29
- '◯': 'magenta',
30
- };
31
- const cache = new Map();
32
- export function isMermaidLanguage(language) {
33
- const first = language.trim().split(/\s+/u)[0]?.toLowerCase();
34
- return first !== undefined && MERMAID_LANGUAGES.has(first);
35
- }
36
- export function normalizeMermaidSource(source) {
37
- const trimmed = source.replaceAll('\r\n', '\n').trim();
38
- if (trimmed.length === 0)
39
- return trimmed;
40
- const lines = trimmed.split('\n');
41
- const first = lines[0]?.trim() ?? '';
42
- const oneLine = FLOWCHART_ONE_LINE.exec(first);
43
- if (oneLine === null)
44
- return trimmed;
45
- const kind = oneLine[1];
46
- const direction = oneLine[2];
47
- const rest = oneLine[3];
48
- if (kind === undefined || direction === undefined || rest === undefined)
49
- return trimmed;
50
- return [`${kind} ${direction}`, rest, ...lines.slice(1)].join('\n');
51
- }
52
- function cacheGet(key) {
53
- return cache.get(key);
54
- }
55
- function cacheSet(key, value) {
56
- if (cache.size >= MAX_CACHE) {
57
- const oldest = cache.keys().next().value;
58
- if (oldest !== undefined)
59
- cache.delete(oldest);
60
- }
61
- cache.set(key, value);
62
- }
63
- export function renderMermaidDiagram(source) {
64
- const normalized = normalizeMermaidSource(source);
65
- if (normalized.length === 0 || normalized.length > MAX_MERMAID_SOURCE)
66
- return undefined;
67
- const cached = cacheGet(normalized);
68
- if (cached !== undefined)
69
- return cached;
70
- try {
71
- const art = renderMermaidASCII(normalized, {
72
- boxBorderPadding: 0,
73
- colorMode: 'none',
74
- paddingX: 3,
75
- paddingY: 2,
76
- }).replaceAll(/\s+$/gmu, '');
77
- if (art.trim().length === 0)
78
- return undefined;
79
- cacheSet(normalized, art);
80
- return art;
81
- }
82
- catch {
83
- return undefined;
84
- }
85
- }
86
- export function mermaidDiagramRows(source, width) {
87
- const art = renderMermaidDiagram(source);
88
- if (art === undefined)
89
- return undefined;
90
- const inner = Math.max(1, width - 2);
91
- return art.split('\n').map((line) => (line.length <= inner ? line : `${line.slice(0, Math.max(1, inner - 1))}…`));
92
- }
93
- export function mermaidShapeKey(source) {
94
- try {
95
- const graph = parseMermaid(normalizeMermaidSource(source));
96
- const shapes = new Set();
97
- for (const node of graph.nodes.values())
98
- shapes.add(node.shape);
99
- return paintMermaidShapeKey(shapes);
100
- }
101
- catch {
102
- return undefined;
103
- }
104
- }
105
- export function colorizeMermaidArtLine(line) {
106
- const spans = [];
107
- let current = '';
108
- let color;
109
- const flush = () => {
110
- if (current.length === 0)
111
- return;
112
- spans.push({ ...(color === undefined ? {} : { color }), text: current });
113
- current = '';
114
- };
115
- for (const char of line) {
116
- const next = ART_COLORS[char];
117
- if (next !== color) {
118
- flush();
119
- color = next;
120
- }
121
- current += char;
122
- }
123
- flush();
124
- return spans.length === 0 ? [{ text: ' ' }] : spans;
125
- }
126
- function resolveMermaidProtocol(mode) {
127
- if (mode === 'ascii')
128
- return 'none';
129
- const detected = detectMermaidImageProtocol();
130
- if (mode === 'auto')
131
- return detected;
132
- return detected === 'none' ? 'kitty-placeholder' : detected;
133
- }
134
- export function mermaidImageRowText(slot) {
135
- if (slot.kind === 'placeholder')
136
- return kittyPlaceholderRow(slot.row, slot.cols);
137
- return overlaySlotText(slot.id, slot.row, slot.cols);
138
- }
139
- export function mermaidDiagramView(source, width, mode = 'auto') {
140
- const lines = mermaidDiagramRows(source, width);
141
- if (lines === undefined)
142
- return undefined;
143
- const normalized = normalizeMermaidSource(source);
144
- const protocol = resolveMermaidProtocol(mode);
145
- const slotKind = mermaidImageSlotKind(protocol);
146
- const shapeKey = mermaidShapeKey(normalized);
147
- if (slotKind !== undefined) {
148
- const image = rasterizeMermaidPng(normalized, width);
149
- if (image === undefined)
150
- return { lines, protocol: 'none', ...(shapeKey === undefined ? {} : { shapeKey }) };
151
- return { image, lines, protocol, slotKind };
152
- }
153
- return { lines, protocol: 'none', ...(shapeKey === undefined ? {} : { shapeKey }) };
154
- }
155
- export function mermaidSlotColor(slot) {
156
- return slot.kind === 'placeholder' ? mermaidImageColor(slot.id) : undefined;
157
- }
158
- //# sourceMappingURL=ai-session-tui-mermaid.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-mermaid.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-mermaid.ts"],"names":[],"mappings":"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"}
@@ -1,9 +0,0 @@
1
- export declare function TranscriptLineView(props: {
2
- line: {
3
- kind: 'agent' | 'system' | 'you';
4
- text: string;
5
- };
6
- }): JSX.Element;
7
- export declare function AgentMessage(props: {
8
- text: string;
9
- }): JSX.Element;
@@ -1,24 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Box, Text } from 'ink';
3
- import { splitAgentMarkdown } from './ai-session-tui-blocks.js';
4
- import { renderMarkdown } from './ai-terminal-renderer.js';
5
- export function TranscriptLineView(props) {
6
- if (props.line.kind === 'agent') {
7
- return _jsx(AgentMessage, { text: props.line.text });
8
- }
9
- return (_jsxs(Text, { color: props.line.kind === 'system' ? 'yellow' : undefined, children: [props.line.kind === 'you' ? 'You: ' : '', props.line.text] }));
10
- }
11
- export function AgentMessage(props) {
12
- const blocks = splitAgentMarkdown(props.text);
13
- if (blocks.length === 0) {
14
- return _jsx(Text, { children: "Agent:" });
15
- }
16
- return (_jsxs(Box, { flexDirection: "column", children: [_jsx(Text, { children: "Agent:" }), blocks.map((block, index) => (_jsx(AgentBlockView, { block: block }, index)))] }));
17
- }
18
- function AgentBlockView(props) {
19
- if (props.block.type === 'prose') {
20
- return _jsx(Text, { children: renderMarkdown(props.block.text, { colors: false }) });
21
- }
22
- return (_jsxs(Box, { borderColor: "cyan", borderStyle: "round", flexDirection: "column", marginY: 0, paddingX: 1, children: [props.block.language.length > 0 ? _jsx(Text, { dimColor: true, children: props.block.language }) : null, props.block.code.split('\n').map((line, index) => (_jsx(Text, { color: "cyan", children: line.length === 0 ? ' ' : line }, index)))] }));
23
- }
24
- //# sourceMappingURL=ai-session-tui-message.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-message.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-message.tsx"],"names":[],"mappings":";AAAA,OAAO,EAAC,GAAG,EAAE,IAAI,EAAC,MAAM,KAAK,CAAA;AAE7B,OAAO,EAA0B,kBAAkB,EAAC,MAAM,4BAA4B,CAAA;AACtF,OAAO,EAAC,cAAc,EAAC,MAAM,2BAA2B,CAAA;AAExD,MAAM,UAAU,kBAAkB,CAAC,KAA+D;IAChG,IAAI,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QAChC,OAAO,KAAC,YAAY,IAAC,IAAI,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,GAAI,CAAA;IAChD,CAAC;IAED,OAAO,CACL,MAAC,IAAI,IAAC,KAAK,EAAE,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,QAAQ,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,SAAS,aAC7D,KAAK,CAAC,IAAI,CAAC,IAAI,KAAK,KAAK,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,EACxC,KAAK,CAAC,IAAI,CAAC,IAAI,IACX,CACR,CAAA;AACH,CAAC;AAED,MAAM,UAAU,YAAY,CAAC,KAAqB;IAChD,MAAM,MAAM,GAAG,kBAAkB,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;IAC7C,IAAI,MAAM,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACxB,OAAO,KAAC,IAAI,yBAAc,CAAA;IAC5B,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,aAAa,EAAC,QAAQ,aACzB,KAAC,IAAI,yBAAc,EAClB,MAAM,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,KAAK,EAAE,EAAE,CAAC,CAC5B,KAAC,cAAc,IAAC,KAAK,EAAE,KAAK,IAAO,KAAK,CAAI,CAC7C,CAAC,IACE,CACP,CAAA;AACH,CAAC;AAED,SAAS,cAAc,CAAC,KAAkC;IACxD,IAAI,KAAK,CAAC,KAAK,CAAC,IAAI,KAAK,OAAO,EAAE,CAAC;QACjC,OAAO,KAAC,IAAI,cAAE,cAAc,CAAC,KAAK,CAAC,KAAK,CAAC,IAAI,EAAE,EAAC,MAAM,EAAE,KAAK,EAAC,CAAC,GAAQ,CAAA;IACzE,CAAC;IAED,OAAO,CACL,MAAC,GAAG,IAAC,WAAW,EAAC,MAAM,EAAC,WAAW,EAAC,OAAO,EAAC,aAAa,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,EAAE,QAAQ,EAAE,CAAC,aACvF,KAAK,CAAC,KAAK,CAAC,QAAQ,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,KAAC,IAAI,IAAC,QAAQ,kBAAE,KAAK,CAAC,KAAK,CAAC,QAAQ,GAAQ,CAAC,CAAC,CAAC,IAAI,EACrF,KAAK,CAAC,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,KAAK,EAAE,EAAE,CAAC,CACjD,KAAC,IAAI,IAAC,KAAK,EAAC,MAAM,YACf,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,IAAI,IADT,KAAK,CAEtB,CACR,CAAC,IACE,CACP,CAAA;AACH,CAAC"}
@@ -1,32 +0,0 @@
1
- import { type HighlightSpan } from './ai-session-tui-highlight.js';
2
- import { type MermaidImageSlot } from './ai-session-tui-mermaid-image.js';
3
- import { type MermaidRenderMode } from './ai-session-tui-mermaid.js';
4
- export type TranscriptLineKind = 'agent' | 'followups' | 'system' | 'you';
5
- export type FlattenTranscriptOptions = {
6
- mermaid?: MermaidRenderMode;
7
- };
8
- export type TranscriptViewRow = {
9
- bold?: boolean;
10
- color?: 'cyan' | 'green' | 'magenta' | 'yellow';
11
- dim?: boolean;
12
- id: string;
13
- imageColor?: string;
14
- imageSlot?: MermaidImageSlot;
15
- spans?: HighlightSpan[];
16
- text: string;
17
- };
18
- export declare function flattenTranscriptLine(line: {
19
- id: string;
20
- items?: string[];
21
- kind: TranscriptLineKind;
22
- text: string;
23
- }, width?: number, options?: FlattenTranscriptOptions): TranscriptViewRow[];
24
- export declare function flattenTranscript(lines: Array<{
25
- id: string;
26
- items?: string[];
27
- kind: TranscriptLineKind;
28
- text: string;
29
- }>, width?: number, options?: FlattenTranscriptOptions): TranscriptViewRow[];
30
- export declare function clampScrollOffset(rowCount: number, viewport: number, offset: number): number;
31
- export declare function chatViewportHeight(frameHeight: number, hasStatus: boolean, extraRows?: number): number;
32
- export declare function visibleTranscriptRows(rows: TranscriptViewRow[], viewport: number, offsetFromEnd: number): TranscriptViewRow[];
@@ -1,148 +0,0 @@
1
- import { splitAgentMarkdown } from './ai-session-tui-blocks.js';
2
- import { highlightCodeLine, spansText, wrapSpans } from './ai-session-tui-highlight.js';
3
- import { paintMermaidArt } from './ai-session-tui-mermaid-paint.js';
4
- import { colorizeMermaidArtLine, isMermaidLanguage, mermaidDiagramView, mermaidImageRowText, mermaidSlotColor, } from './ai-session-tui-mermaid.js';
5
- import { wrapText } from './ai-session-tui-wrap.js';
6
- import { renderMarkdown } from './ai-terminal-renderer.js';
7
- function flattenCodeBlock(rows, idPrefix, block) {
8
- const diagram = isMermaidLanguage(block.language) ? mermaidDiagramView(block.code, block.columns, block.mermaid) : undefined;
9
- if (diagram !== undefined) {
10
- flattenDiagramBlock(rows, idPrefix, diagram);
11
- return;
12
- }
13
- const header = block.language.length > 0 ? `┌ ${block.language} · /copy` : '┌ code · /copy';
14
- rows.push({ dim: true, id: `${idPrefix}-h`, text: header });
15
- for (const [lineIndex, codeLine] of block.code.split('\n').entries()) {
16
- const spans = [{ dim: true, text: '│ ' }, ...highlightCodeLine(codeLine, block.language)];
17
- for (const [wrapIndex, wrapped] of wrapSpans(spans, block.columns).entries()) {
18
- rows.push({
19
- id: `${idPrefix}-${lineIndex}-${wrapIndex}`,
20
- spans: wrapped,
21
- text: spansText(wrapped),
22
- });
23
- }
24
- }
25
- rows.push({ dim: true, id: `${idPrefix}-f`, text: '└' });
26
- }
27
- function flattenDiagramBlock(rows, idPrefix, diagram) {
28
- rows.push({ dim: true, id: `${idPrefix}-h`, text: '┌ mermaid · /copy' });
29
- if (diagram.image !== undefined && diagram.slotKind !== undefined) {
30
- for (let row = 0; row < diagram.image.rows; row += 1) {
31
- const slot = {
32
- cols: diagram.image.cols,
33
- id: diagram.image.id,
34
- kind: diagram.slotKind,
35
- row,
36
- rows: diagram.image.rows,
37
- };
38
- const color = mermaidSlotColor(slot);
39
- rows.push({
40
- id: `${idPrefix}-${row}`,
41
- ...(color === undefined ? {} : { imageColor: color }),
42
- imageSlot: slot,
43
- text: mermaidImageRowText(slot),
44
- });
45
- }
46
- }
47
- else {
48
- const painted = paintMermaidArt(diagram.lines);
49
- for (const [lineIndex, line] of diagram.lines.entries()) {
50
- if (line.length === 0) {
51
- rows.push({ dim: true, id: `${idPrefix}-${lineIndex}`, text: '│' });
52
- continue;
53
- }
54
- const art = painted?.[lineIndex] ?? colorizeMermaidArtLine(line);
55
- const spans = [{ dim: true, text: '│ ' }, ...art];
56
- rows.push({
57
- id: `${idPrefix}-${lineIndex}`,
58
- spans,
59
- text: `│ ${spansText(art)}`,
60
- });
61
- }
62
- if (diagram.shapeKey !== undefined) {
63
- rows.push({
64
- id: `${idPrefix}-key`,
65
- spans: [{ dim: true, text: '│ ' }, ...diagram.shapeKey],
66
- text: `│ ${spansText(diagram.shapeKey)}`,
67
- });
68
- }
69
- }
70
- rows.push({ dim: true, id: `${idPrefix}-f`, text: '└' });
71
- }
72
- function flattenYouBlock(lineId, text, columns) {
73
- const inner = Math.max(1, columns - 2);
74
- const rows = [{ bold: true, color: 'cyan', id: `${lineId}-you-h`, text: '╭ You' }];
75
- for (const [index, part] of wrapText(text.length === 0 ? ' ' : text, inner).entries()) {
76
- rows.push({
77
- id: `${lineId}-you-${index}`,
78
- spans: [
79
- { color: 'cyan', dim: true, text: '│ ' },
80
- { text: part },
81
- ],
82
- text: `│ ${part}`,
83
- });
84
- }
85
- rows.push({ dim: true, id: `${lineId}-you-f`, text: '╰' });
86
- return rows;
87
- }
88
- function pushWrapped(rows, idPrefix, text, options) {
89
- for (const [index, part] of wrapText(text, options.width).entries()) {
90
- rows.push({
91
- ...(options.color === undefined ? {} : { color: options.color }),
92
- ...(options.dim === true ? { dim: true } : {}),
93
- id: `${idPrefix}-${index}`,
94
- text: part,
95
- });
96
- }
97
- }
98
- export function flattenTranscriptLine(line, width = 80, options = {}) {
99
- const columns = Math.max(20, width);
100
- const mermaid = options.mermaid ?? 'auto';
101
- if (line.kind === 'you') {
102
- return flattenYouBlock(line.id, line.text, columns);
103
- }
104
- if (line.kind === 'system') {
105
- const rows = [];
106
- pushWrapped(rows, `${line.id}-sys`, line.text, { color: 'yellow', width: columns });
107
- return rows;
108
- }
109
- if (line.kind === 'followups') {
110
- const rows = [{ id: `${line.id}-f-h`, text: 'Follow-ups:' }];
111
- for (const [itemIndex, item] of (line.items ?? []).entries()) {
112
- pushWrapped(rows, `${line.id}-f-${itemIndex}`, ` ${itemIndex + 1}. ${item}`, { width: columns });
113
- }
114
- return rows;
115
- }
116
- const rows = [{ bold: true, color: 'green', id: `${line.id}-agent`, text: '● Agent' }];
117
- for (const [blockIndex, block] of splitAgentMarkdown(line.text).entries()) {
118
- if (block.type === 'prose') {
119
- for (const [lineIndex, part] of renderMarkdown(block.text, { colors: false }).split('\n').entries()) {
120
- pushWrapped(rows, `${line.id}-p${blockIndex}-${lineIndex}`, part, { width: columns });
121
- }
122
- continue;
123
- }
124
- flattenCodeBlock(rows, `${line.id}-c${blockIndex}`, { ...block, columns, mermaid });
125
- }
126
- return rows;
127
- }
128
- export function flattenTranscript(lines, width = 80, options = {}) {
129
- return lines.flatMap((line, index) => {
130
- const rows = flattenTranscriptLine(line, width, options);
131
- if (index === 0)
132
- return rows;
133
- return [{ id: `${line.id}-gap`, text: ' ' }, ...rows];
134
- });
135
- }
136
- export function clampScrollOffset(rowCount, viewport, offset) {
137
- return Math.min(Math.max(0, offset), Math.max(0, rowCount - Math.max(1, viewport)));
138
- }
139
- export function chatViewportHeight(frameHeight, hasStatus, extraRows = 0) {
140
- return Math.max(4, frameHeight - (4 + (hasStatus ? 1 : 0) + Math.max(0, extraRows)));
141
- }
142
- export function visibleTranscriptRows(rows, viewport, offsetFromEnd) {
143
- const size = Math.max(1, viewport);
144
- const offset = clampScrollOffset(rows.length, size, offsetFromEnd);
145
- const end = rows.length - offset;
146
- return rows.slice(Math.max(0, end - size), end);
147
- }
148
- //# sourceMappingURL=ai-session-tui-scroll.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-scroll.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-scroll.ts"],"names":[],"mappings":"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"}
@@ -1,14 +0,0 @@
1
- export type SlashCommand = {
2
- command: string;
3
- description: string;
4
- };
5
- export declare const SLASH_PALETTE_MAX = 8;
6
- export declare const SESSION_SLASH_COMMANDS: SlashCommand[];
7
- export declare function filterSlashCommands(input: string): SlashCommand[];
8
- export declare function clampSlashIndex(matchCount: number, index: number): number;
9
- export declare function selectedSlashCommand(matches: SlashCommand[], index: number): SlashCommand | undefined;
10
- export declare function sessionHelpLines(): string[];
11
- export declare function slashPaletteWindow(matches: SlashCommand[], selectedIndex: number, max?: number): {
12
- selectedInWindow: number;
13
- window: SlashCommand[];
14
- };
@@ -1,53 +0,0 @@
1
- import { AI_CHAT_AGENTS } from './ai-types.js';
2
- export const SLASH_PALETTE_MAX = 8;
3
- export const SESSION_SLASH_COMMANDS = [
4
- { command: '/help', description: 'Show commands and keys' },
5
- { command: '/session', description: 'Resume another session' },
6
- { command: '/clear', description: 'Clear the local transcript' },
7
- { command: '/copy', description: 'Copy the last code block' },
8
- { command: '/new', description: 'Start a new session' },
9
- { command: '/exit', description: 'Leave the session' },
10
- { command: '/cancel', description: 'Dismiss overlays' },
11
- ...AI_CHAT_AGENTS.map((agent) => ({
12
- command: `/${agent}`,
13
- description: `Switch to ${agent} on this session`,
14
- })),
15
- ];
16
- export function filterSlashCommands(input) {
17
- if (!input.startsWith('/') || input.includes(' '))
18
- return [];
19
- const needle = input.toLowerCase();
20
- return SESSION_SLASH_COMMANDS.filter((item) => item.command.startsWith(needle));
21
- }
22
- export function clampSlashIndex(matchCount, index) {
23
- if (matchCount <= 0)
24
- return 0;
25
- return Math.min(Math.max(0, index), matchCount - 1);
26
- }
27
- export function selectedSlashCommand(matches, index) {
28
- return matches[clampSlashIndex(matches.length, index)];
29
- }
30
- export function sessionHelpLines() {
31
- return [
32
- 'Type in the prompt and press Enter to send.',
33
- '←/→ move the cursor. Home/End (Fn+← / Fn+→ on a Mac) jump to the start or end of the line.',
34
- '↑/↓ scroll the transcript.',
35
- 'PgUp/PgDn reuse a prompt you already sent. On a Mac that is Fn+↑ / Fn+↓.',
36
- 'Follow-ups: after a reply, numbered suggestions appear. Clear the prompt, then press 1–5 to send that suggestion.',
37
- 'Slash: Tab complete, Enter run, Esc dismiss',
38
- 'Esc: dismiss overlay, cancel in-flight turn, or clear prompt',
39
- 'Copy: drag-select the screen, or /copy last fence without gutters',
40
- 'Mermaid: filled flowchart chips (Kitty can show a local PNG)',
41
- `/clear local transcript · /new new session · /${AI_CHAT_AGENTS.join(' /')}`,
42
- ];
43
- }
44
- export function slashPaletteWindow(matches, selectedIndex, max = SLASH_PALETTE_MAX) {
45
- if (matches.length === 0)
46
- return { selectedInWindow: 0, window: [] };
47
- const selected = clampSlashIndex(matches.length, selectedIndex);
48
- if (matches.length <= max)
49
- return { selectedInWindow: selected, window: matches };
50
- const start = Math.max(0, selected - max + 1);
51
- return { selectedInWindow: selected - start, window: matches.slice(start, start + max) };
52
- }
53
- //# sourceMappingURL=ai-session-tui-slash.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-slash.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-slash.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,eAAe,CAAA;AAO5C,MAAM,CAAC,MAAM,iBAAiB,GAAG,CAAC,CAAA;AAElC,MAAM,CAAC,MAAM,sBAAsB,GAAmB;IACpD,EAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,wBAAwB,EAAC;IACzD,EAAC,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,wBAAwB,EAAC;IAC5D,EAAC,OAAO,EAAE,QAAQ,EAAE,WAAW,EAAE,4BAA4B,EAAC;IAC9D,EAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,0BAA0B,EAAC;IAC3D,EAAC,OAAO,EAAE,MAAM,EAAE,WAAW,EAAE,qBAAqB,EAAC;IACrD,EAAC,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,mBAAmB,EAAC;IACpD,EAAC,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,kBAAkB,EAAC;IACrD,GAAG,cAAc,CAAC,GAAG,CAAC,CAAC,KAAK,EAAE,EAAE,CAAC,CAAC;QAChC,OAAO,EAAE,IAAI,KAAK,EAAE;QACpB,WAAW,EAAE,aAAa,KAAK,kBAAkB;KAClD,CAAC,CAAC;CACJ,CAAA;AAED,MAAM,UAAU,mBAAmB,CAAC,KAAa;IAC/C,IAAI,CAAC,KAAK,CAAC,UAAU,CAAC,GAAG,CAAC,IAAI,KAAK,CAAC,QAAQ,CAAC,GAAG,CAAC;QAAE,OAAO,EAAE,CAAA;IAC5D,MAAM,MAAM,GAAG,KAAK,CAAC,WAAW,EAAE,CAAA;IAClC,OAAO,sBAAsB,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,CAAC,OAAO,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,CAAA;AACjF,CAAC;AAED,MAAM,UAAU,eAAe,CAAC,UAAkB,EAAE,KAAa;IAC/D,IAAI,UAAU,IAAI,CAAC;QAAE,OAAO,CAAC,CAAA;IAC7B,OAAO,IAAI,CAAC,GAAG,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,EAAE,UAAU,GAAG,CAAC,CAAC,CAAA;AACrD,CAAC;AAED,MAAM,UAAU,oBAAoB,CAAC,OAAuB,EAAE,KAAa;IACzE,OAAO,OAAO,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,KAAK,CAAC,CAAC,CAAA;AACxD,CAAC;AAED,MAAM,UAAU,gBAAgB;IAC9B,OAAO;QACL,6CAA6C;QAC7C,4FAA4F;QAC5F,4BAA4B;QAC5B,0EAA0E;QAC1E,mHAAmH;QACnH,6CAA6C;QAC7C,8DAA8D;QAC9D,mEAAmE;QACnE,8DAA8D;QAC9D,iDAAiD,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;KAC7E,CAAA;AACH,CAAC;AAED,MAAM,UAAU,kBAAkB,CAChC,OAAuB,EACvB,aAAqB,EACrB,GAAG,GAAG,iBAAiB;IAEvB,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC;QAAE,OAAO,EAAC,gBAAgB,EAAE,CAAC,EAAE,MAAM,EAAE,EAAE,EAAC,CAAA;IAClE,MAAM,QAAQ,GAAG,eAAe,CAAC,OAAO,CAAC,MAAM,EAAE,aAAa,CAAC,CAAA;IAC/D,IAAI,OAAO,CAAC,MAAM,IAAI,GAAG;QAAE,OAAO,EAAC,gBAAgB,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAC,CAAA;IAC/E,MAAM,KAAK,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,QAAQ,GAAG,GAAG,GAAG,CAAC,CAAC,CAAA;IAC7C,OAAO,EAAC,gBAAgB,EAAE,QAAQ,GAAG,KAAK,EAAE,MAAM,EAAE,OAAO,CAAC,KAAK,CAAC,KAAK,EAAE,KAAK,GAAG,GAAG,CAAC,EAAC,CAAA;AACxF,CAAC"}
@@ -1,12 +0,0 @@
1
- export declare const WELCOME_ACTIONS: readonly [{
2
- readonly id: "new";
3
- readonly label: "Start a new session";
4
- }, {
5
- readonly id: "resume";
6
- readonly label: "Resume a previous session";
7
- }];
8
- export type WelcomeActionId = (typeof WELCOME_ACTIONS)[number]['id'];
9
- export declare function WelcomeScreen(props: {
10
- agent: string;
11
- selectedIndex: number;
12
- }): JSX.Element;
@@ -1,33 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- import { Box, Text } from 'ink';
3
- import { BANNER_GRADIENT, bannerUsesColor, COPADO_CONTEXT_HUB_ART, } from './ai-session-banner.js';
4
- export const WELCOME_ACTIONS = [
5
- { id: 'new', label: 'Start a new session' },
6
- { id: 'resume', label: 'Resume a previous session' },
7
- ];
8
- function displayAgentName(agent) {
9
- if (agent.length === 0)
10
- return agent;
11
- return `${agent.slice(0, 1).toUpperCase()}${agent.slice(1)}`;
12
- }
13
- function welcomeAgentLine(agent) {
14
- const name = displayAgentName(agent);
15
- if (agent === 'orchestrate') {
16
- return 'Orchestrate will route you to Plan, Build, Test, Release, Operate, or Knowledge.';
17
- }
18
- return `This session starts with ${name}. You can switch agents after you start.`;
19
- }
20
- export function WelcomeScreen(props) {
21
- return (_jsxs(Box, { flexDirection: "column", paddingX: 1, paddingY: 1, children: [_jsx(BannerArt, {}), _jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { bold: true, children: "Ask Copado AI about stories, pipelines, tests, and releases." }), _jsx(Text, { children: welcomeAgentLine(props.agent) })] }), _jsxs(Box, { borderStyle: "single", flexDirection: "column", marginTop: 1, paddingX: 1, width: 64, children: [_jsx(Text, { bold: true, children: "How do you want to start?" }), _jsx(Box, { flexDirection: "column", marginTop: 1, children: WELCOME_ACTIONS.map((action, index) => (_jsxs(Text, { color: index === props.selectedIndex ? 'green' : undefined, children: [index === props.selectedIndex ? '●' : ' ', " ", index + 1, ". ", action.label] }, action.id))) }), _jsx(Text, { dimColor: true, children: "\u2191/\u2193 or 1\u20132 \u00B7 Enter to continue" })] }), _jsxs(Box, { flexDirection: "column", marginTop: 1, children: [_jsx(Text, { dimColor: true, children: "After you continue, type a question and press Enter." }), _jsx(Text, { dimColor: true, children: "/help lists commands and shortcuts once the session is open." })] })] }));
22
- }
23
- function BannerArt() {
24
- const colorize = bannerUsesColor();
25
- return (_jsxs(Box, { children: [_jsxs(Text, { bold: true, color: "cyan", children: ['>', ' '] }), _jsx(Box, { flexDirection: "column", children: COPADO_CONTEXT_HUB_ART.split('\n').map((line, row) => (_jsx(BannerLine, { colorize: colorize, line: line, row: row }, row))) })] }));
26
- }
27
- function BannerLine(props) {
28
- if (!props.colorize) {
29
- return _jsx(Text, { children: props.line });
30
- }
31
- return _jsx(Text, { color: BANNER_GRADIENT[props.row % BANNER_GRADIENT.length], children: props.line });
32
- }
33
- //# sourceMappingURL=ai-session-tui-welcome.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-welcome.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-welcome.tsx"],"names":[],"mappings":"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"}
@@ -1,2 +0,0 @@
1
- export declare function wrapText(text: string, width: number): string[];
2
- export declare function wrapPrefixedText(prefix: string, text: string, width: number): string[];
@@ -1,24 +0,0 @@
1
- export function wrapText(text, width) {
2
- const columns = Math.max(1, width);
3
- const rows = [];
4
- for (const paragraph of text.split('\n')) {
5
- if (paragraph.length === 0) {
6
- rows.push('');
7
- continue;
8
- }
9
- let rest = paragraph;
10
- while (rest.length > columns) {
11
- const window = rest.slice(0, columns);
12
- const breakAt = window.lastIndexOf(' ');
13
- const take = breakAt > 0 ? breakAt + 1 : columns;
14
- rows.push(rest.slice(0, take));
15
- rest = rest.slice(take);
16
- }
17
- rows.push(rest);
18
- }
19
- return rows;
20
- }
21
- export function wrapPrefixedText(prefix, text, width) {
22
- return wrapText(`${prefix}${text}`, width);
23
- }
24
- //# sourceMappingURL=ai-session-tui-wrap.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"ai-session-tui-wrap.js","sourceRoot":"","sources":["../../src/lib/ai-session-tui-wrap.ts"],"names":[],"mappings":"AAAA,MAAM,UAAU,QAAQ,CAAC,IAAY,EAAE,KAAa;IAClD,MAAM,OAAO,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,EAAE,KAAK,CAAC,CAAA;IAClC,MAAM,IAAI,GAAa,EAAE,CAAA;IACzB,KAAK,MAAM,SAAS,IAAI,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,EAAE,CAAC;QACzC,IAAI,SAAS,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;YAC3B,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAA;YACb,SAAQ;QACV,CAAC;QAED,IAAI,IAAI,GAAG,SAAS,CAAA;QACpB,OAAO,IAAI,CAAC,MAAM,GAAG,OAAO,EAAE,CAAC;YAC7B,MAAM,MAAM,GAAG,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,OAAO,CAAC,CAAA;YACrC,MAAM,OAAO,GAAG,MAAM,CAAC,WAAW,CAAC,GAAG,CAAC,CAAA;YACvC,MAAM,IAAI,GAAG,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,GAAG,CAAC,CAAC,CAAC,CAAC,OAAO,CAAA;YAChD,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAA;YAC9B,IAAI,GAAG,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAA;QACzB,CAAC;QAED,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,CAAA;IACjB,CAAC;IAED,OAAO,IAAI,CAAA;AACb,CAAC;AAED,MAAM,UAAU,gBAAgB,CAAC,MAAc,EAAE,IAAY,EAAE,KAAa;IAC1E,OAAO,QAAQ,CAAC,GAAG,MAAM,GAAG,IAAI,EAAE,EAAE,KAAK,CAAC,CAAA;AAC5C,CAAC"}
@@ -1,7 +0,0 @@
1
- import { type AiChatSessionOptions, type AiChatSessionResult } from './ai-chat-session.js';
2
- export type SessionAppProps = {
3
- onFinished?: (result: AiChatSessionResult) => void;
4
- options: AiChatSessionOptions;
5
- };
6
- export declare function SessionApp(props: SessionAppProps): JSX.Element;
7
- export declare function runAiSessionTui(options: AiChatSessionOptions): Promise<AiChatSessionResult>;