@nio-cli/cli 0.10.1 → 0.11.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (52) hide show
  1. package/.env.example +5 -1
  2. package/dist/adapters/pg/client.js +28 -4
  3. package/dist/adapters/pg/client.js.map +1 -1
  4. package/dist/app/ai-client.js +4 -1
  5. package/dist/app/ai-client.js.map +1 -1
  6. package/dist/cli/commands/auth.js +38 -16
  7. package/dist/cli/commands/auth.js.map +1 -1
  8. package/dist/cli.js +3 -7
  9. package/dist/cli.js.map +1 -1
  10. package/dist/gateway/index.js +11 -1
  11. package/dist/gateway/index.js.map +1 -1
  12. package/dist/lib/auth/gateway-process.js +59 -2
  13. package/dist/lib/auth/gateway-process.js.map +1 -1
  14. package/dist/lib/auth/nio-config.js +25 -5
  15. package/dist/lib/auth/nio-config.js.map +1 -1
  16. package/dist/lib/clients/client-configs.js +14 -6
  17. package/dist/lib/clients/client-configs.js.map +1 -1
  18. package/dist/lib/clients/nio-oc-config.js +96 -0
  19. package/dist/lib/clients/nio-oc-config.js.map +1 -0
  20. package/dist/lib/exec/map-reduce.js +56 -0
  21. package/dist/lib/exec/map-reduce.js.map +1 -0
  22. package/dist/lib/exec/plan-delegate.js.map +1 -1
  23. package/dist/lib/provision/provision.js.map +1 -1
  24. package/dist/lib/shutdown.js +29 -0
  25. package/dist/lib/shutdown.js.map +1 -0
  26. package/dist/profiles/analyst.js +1 -0
  27. package/dist/profiles/analyst.js.map +1 -1
  28. package/dist/profiles/bi.js +1 -0
  29. package/dist/profiles/bi.js.map +1 -1
  30. package/dist/profiles/dba.js +3 -2
  31. package/dist/profiles/dba.js.map +1 -1
  32. package/dist/profiles/mcps.js.map +1 -1
  33. package/dist/profiles/scientist.js +3 -1
  34. package/dist/profiles/scientist.js.map +1 -1
  35. package/dist/tui/app.js +64 -15
  36. package/dist/tui/app.js.map +1 -1
  37. package/dist/tui/attachments.js +117 -0
  38. package/dist/tui/attachments.js.map +1 -0
  39. package/dist/tui/components.js +30 -13
  40. package/dist/tui/components.js.map +1 -1
  41. package/dist/tui/debug.js +1 -1
  42. package/dist/tui/debug.js.map +1 -1
  43. package/dist/tui/launch.js +13 -1
  44. package/dist/tui/launch.js.map +1 -1
  45. package/dist/tui/opencode.js +20 -3
  46. package/dist/tui/opencode.js.map +1 -1
  47. package/dist/tui/palette.js +32 -3
  48. package/dist/tui/palette.js.map +1 -1
  49. package/dist/tui/state.js +199 -92
  50. package/dist/tui/state.js.map +1 -1
  51. package/docker/kong.yml +4 -0
  52. package/package.json +4 -2
package/dist/tui/app.js CHANGED
@@ -4,11 +4,14 @@ import { Box, Text, Static, useInput, useStdout } from 'ink';
4
4
  import { renderMatrixLogo } from '../matrix-logo.js';
5
5
  import { tlog } from './debug.js';
6
6
  import { theme } from './theme.js';
7
- import { Footer, MessageView, LiveMessage, StatusLine, InputBox, Toasts, ErrorBlock, DiffSummary, } from './components.js';
8
- import { InfoPanel, CommandRunner, PermissionModal } from './palette.js';
7
+ import { Footer, MessageView, LiveMessage, StatusLine, InputBox, Toasts, ErrorBlock, DiffSummary, AttachChips, } from './components.js';
8
+ import { InfoPanel, CommandRunner, PermissionModal, QuestionModal } from './palette.js';
9
9
  import { buildPalette } from './palette-source.js';
10
- import { applyEvent, messageUsage, pendingQuestion, questionOptions, pushUserMessage, syncMessages, reconcilePendingPermissions, emptyChat, } from './state.js';
11
- import { listPrimaryAgents, subscribeEvents, fetchPendingPermissions, } from './opencode.js';
10
+ import { applyEvent, contextUsage, pendingQuestion, questionOptions, pushUserMessage, syncMessages, reconcilePendingPermissions, reconcilePendingQuestions, emptyChat, } from './state.js';
11
+ import { listPrimaryAgents, subscribeEvents, fetchPendingPermissions, fetchPendingQuestions, } from './opencode.js';
12
+ import { NIO_AI_CONTEXT } from '../lib/clients/client-configs.js';
13
+ import { compactInput } from '../lib/exec/map-reduce.js';
14
+ import { buildAttachedInput, detectPaths } from './attachments.js';
12
15
  function useTerminalSize() {
13
16
  const { stdout } = useStdout();
14
17
  const [size, setSize] = useState({ rows: stdout?.rows ?? 24, columns: stdout?.columns ?? 80 });
@@ -39,6 +42,7 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
39
42
  const abortRef = useRef(new AbortController());
40
43
  const busyStartedAt = useRef(0);
41
44
  const tuiCommandRef = useRef(() => { });
45
+ const userTurnActive = useRef(false);
42
46
  const [splash, setSplash] = useState(splashMs > 0);
43
47
  useEffect(() => {
44
48
  if (splashMs <= 0)
@@ -58,15 +62,16 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
58
62
  if (!id)
59
63
  return;
60
64
  try {
61
- const [st, msgs, perms] = await Promise.all([
65
+ const [st, msgs, perms, ques] = await Promise.all([
62
66
  handle.client.session.status(),
63
67
  handle.client.session.messages({ path: { id } }),
64
68
  fetchPendingPermissions(handle.url),
69
+ fetchPendingQuestions(handle.url, id),
65
70
  ]);
66
71
  const status = st.data?.[id]?.type;
67
72
  const busy = status === 'busy' || status === 'retry';
68
73
  const raw = (msgs.data ?? []);
69
- setChat((prev) => reconcilePendingPermissions(syncMessages(prev, raw, busy), perms));
74
+ setChat((prev) => reconcilePendingQuestions(reconcilePendingPermissions(syncMessages(prev, raw, busy), perms), ques));
70
75
  }
71
76
  catch (err) {
72
77
  tlog('resync falhou', err.message);
@@ -99,6 +104,18 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
99
104
  const et = evt.type;
100
105
  if (et === 'message.part.delta')
101
106
  continue;
107
+ const props = evt.properties ?? {};
108
+ const stType = props.status?.type;
109
+ if (et === 'session.idle' || (et === 'session.status' && stType === 'idle')) {
110
+ userTurnActive.current = false;
111
+ }
112
+ const info = (props.info ?? props);
113
+ if (et === 'message.updated' && info.mode === 'compaction' && !userTurnActive.current) {
114
+ if (sessionId.current)
115
+ handle.client.session.abort({ path: { id: sessionId.current } }).catch(() => { });
116
+ setChat((prev) => ({ ...prev, busy: false }));
117
+ continue;
118
+ }
102
119
  if (et === 'tui.prompt.append') {
103
120
  const text = evt.properties?.text ?? '';
104
121
  if (text)
@@ -143,15 +160,35 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
143
160
  handle.client.session.abort({ path: { id: sessionId.current } }).catch(() => { });
144
161
  setChat((prev) => ({ ...prev, busy: false }));
145
162
  }
146
- }, { isActive: overlay.kind === 'none' && chat.permissions.length === 0 });
163
+ }, { isActive: overlay.kind === 'none' && chat.permissions.length === 0 && chat.questions.length === 0 });
147
164
  useEffect(() => () => handle.close(), [handle]);
148
- const send = (text) => {
165
+ const send = async (text) => {
149
166
  if (!sessionId.current)
150
167
  return;
151
168
  setDraft('');
169
+ userTurnActive.current = true;
152
170
  setChat((prev) => pushUserMessage(prev, text));
171
+ let enriched = text;
172
+ let fileParts = [];
173
+ try {
174
+ const built = await buildAttachedInput(text);
175
+ enriched = built.text;
176
+ fileParts = built.fileParts;
177
+ }
178
+ catch (err) {
179
+ tlog('buildAttachedInput falhou, texto cru', err.message);
180
+ }
181
+ let payload = enriched;
182
+ try {
183
+ payload = await compactInput(enriched, {
184
+ onProgress: (n) => toast(`compactando input · ${n} trecho(s)`),
185
+ });
186
+ }
187
+ catch (err) {
188
+ tlog('compactInput falhou, enviando cru', err.message);
189
+ }
153
190
  handle.client.session
154
- .prompt({ path: { id: sessionId.current }, body: { model, agent: mode, parts: [{ type: 'text', text }] } })
191
+ .prompt({ path: { id: sessionId.current }, body: { model, agent: mode, parts: [...fileParts, { type: 'text', text: payload }] } })
155
192
  .catch((err) => tlog('prompt falhou', err.message));
156
193
  };
157
194
  const cycleMode = (reverse) => {
@@ -212,6 +249,19 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
212
249
  void resync();
213
250
  });
214
251
  };
252
+ const settleQuestion = (path, answers) => {
253
+ const q = chat.questions[0];
254
+ if (!q)
255
+ return;
256
+ setChat((prev) => ({ ...prev, questions: prev.questions.slice(1) }));
257
+ fetch(new URL(`/session/${q.sessionId}/question/${q.id}/${path}`, handle.url), {
258
+ method: 'POST',
259
+ headers: { 'content-type': 'application/json' },
260
+ body: answers ? JSON.stringify({ answers }) : undefined,
261
+ })
262
+ .catch((err) => tlog('question respond falhou', err.message))
263
+ .finally(() => void resync());
264
+ };
215
265
  const { finished, live } = useMemo(() => {
216
266
  const msgs = chat.messages;
217
267
  const lastIsLive = chat.busy && msgs.length > 0 && msgs[msgs.length - 1].role === 'assistant';
@@ -238,20 +288,19 @@ export function App({ handle, program, cwd, session, splashMs = 1200, model }) {
238
288
  const elapsed = chat.busy ? Math.max(0, Math.floor((Date.now() - busyStartedAt.current) / 1000)) : 0;
239
289
  const question = useMemo(() => pendingQuestion(chat), [chat]);
240
290
  const options = useMemo(() => questionOptions(chat), [chat]);
291
+ const usage = useMemo(() => contextUsage(chat.messages), [chat.messages]);
292
+ const attachLabels = useMemo(() => detectPaths(draft).map((d) => `${d.path.split(/[\\/]/).pop() ?? d.path} [${d.kind}]`), [draft]);
241
293
  if (splash) {
242
294
  return (_jsxs(Box, { flexDirection: "column", alignItems: "center", paddingY: 1, children: [_jsx(Text, { children: renderMatrixLogo({ width: Math.min(70, columns), height: 16 }) }), _jsxs(Text, { color: theme.accent, children: ["operador NIO \u00B7 ", engineLabel] })] }));
243
295
  }
244
296
  const disabled = chat.busy || !ready;
245
297
  const pendingPerm = chat.permissions[0] ?? null;
246
- const overlayUp = overlay.kind !== 'none' || !!pendingPerm;
298
+ const pendingQ = !pendingPerm ? (chat.questions[0] ?? null) : null;
299
+ const overlayUp = overlay.kind !== 'none' || !!pendingPerm || !!pendingQ;
247
300
  const paletteOpen = draft.startsWith('/') && !overlayUp;
248
301
  const paletteMaxItems = Math.max(3, Math.min(6, rows - 16));
249
302
  const liveMax = Math.max(3, Math.floor(rows * 0.45) - (paletteOpen ? paletteMaxItems + 3 : 0));
250
303
  const inputActive = !overlayUp;
251
- const sessionTokens = chat.messages.reduce((n, m) => {
252
- const u = messageUsage(m);
253
- return n + (u ? u.tokensIn + u.tokensOut : 0);
254
- }, 0);
255
- return (_jsxs(Box, { flexDirection: "column", width: columns, children: [_jsx(Static, { items: finished, children: (m) => _jsx(MessageView, { message: m }, m.id) }), live && (_jsx(LiveMessage, { message: live, maxLines: liveMax, todos: chat.todos, files: chat.files, retry: chat.retry, expandReasoning: showReasoning })), _jsx(DiffSummary, { changes: chat.diff }), _jsx(StatusLine, { busy: chat.busy, frame: frame, seconds: elapsed, label: phase }), chat.error && _jsx(ErrorBlock, { error: chat.error }), _jsx(Toasts, { toasts: chat.toasts }), question && !overlayUp && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.accentBright, wrap: "truncate-end", children: ['↳ o nio perguntou: ', _jsx(Text, { color: theme.text, children: question.length > columns - 24 ? question.slice(0, columns - 27) + '…' : question })] }) })), _jsx(InputBox, { value: draft, onChange: setDraft, disabled: disabled, active: inputActive, palette: palette, onSubmit: send, onDispatch: onDispatch, onCycleMode: cycleMode, options: overlayUp ? [] : options, width: Math.max(24, columns - 6), maxItems: paletteMaxItems }), pendingPerm ? (_jsx(PermissionModal, { req: pendingPerm, queued: chat.permissions.length, onRespond: respondPermission })) : overlay.kind === 'info' ? (_jsx(InfoPanel, { item: overlay.item, onClose: closeOverlay })) : overlay.kind === 'run' ? (_jsx(CommandRunner, { item: overlay.item, cwd: cwd, onClose: closeOverlay })) : null, _jsx(Footer, { model: modelLabel, cwd: cwd, session: session, mode: mode, sessionTokens: sessionTokens })] }));
304
+ return (_jsxs(Box, { flexDirection: "column", width: columns, children: [_jsx(Static, { items: finished, children: (m) => _jsx(MessageView, { message: m }, m.id) }), live && (_jsx(LiveMessage, { message: live, maxLines: liveMax, todos: chat.todos, files: chat.files, retry: chat.retry, expandReasoning: showReasoning })), _jsx(DiffSummary, { changes: chat.diff }), _jsx(StatusLine, { busy: chat.busy, frame: frame, seconds: elapsed, label: phase }), chat.error && _jsx(ErrorBlock, { error: chat.error }), _jsx(Toasts, { toasts: chat.toasts }), question && !overlayUp && (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.accentBright, wrap: "truncate-end", children: ['↳ o nio perguntou: ', _jsx(Text, { color: theme.text, children: question.length > columns - 24 ? question.slice(0, columns - 27) + '…' : question })] }) })), !overlayUp && _jsx(AttachChips, { files: attachLabels }), _jsx(InputBox, { value: draft, onChange: setDraft, disabled: disabled, active: inputActive, palette: palette, onSubmit: send, onDispatch: onDispatch, onCycleMode: cycleMode, options: overlayUp ? [] : options, width: Math.max(24, columns - 6), maxItems: paletteMaxItems }), pendingPerm ? (_jsx(PermissionModal, { req: pendingPerm, queued: chat.permissions.length, onRespond: respondPermission })) : pendingQ ? (_jsx(QuestionModal, { req: pendingQ, queued: chat.questions.length, onAnswer: (answers) => settleQuestion('reply', answers), onReject: () => settleQuestion('reject') })) : overlay.kind === 'info' ? (_jsx(InfoPanel, { item: overlay.item, onClose: closeOverlay })) : overlay.kind === 'run' ? (_jsx(CommandRunner, { item: overlay.item, cwd: cwd, onClose: closeOverlay })) : null, _jsx(Footer, { model: modelLabel, cwd: cwd, session: session, mode: mode, tokensIn: usage.tokensIn, tokensOut: usage.tokensOut, contextLimit: NIO_AI_CONTEXT })] }));
256
305
  }
257
306
  //# sourceMappingURL=app.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/tui/app.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"app.js","sourceRoot":"","sources":["../../src/tui/app.tsx"],"names":[],"mappings":"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"}
@@ -0,0 +1,117 @@
1
+ import { existsSync, statSync, readFileSync } from 'node:fs';
2
+ import { basename, extname } from 'node:path';
3
+ import { NIO_AI_MAX_IMAGE_BYTES, NIO_AI_IMAGE_MAX_DIM } from '../lib/clients/client-configs.js';
4
+ const fmtMB = (bytes) => `${(bytes / 1_000_000).toFixed(1)} MB`;
5
+ const EXT_KIND = {
6
+ '.png': 'image', '.jpg': 'image', '.jpeg': 'image', '.gif': 'image', '.webp': 'image',
7
+ '.csv': 'csv',
8
+ '.txt': 'txt', '.md': 'txt', '.log': 'txt',
9
+ '.xlsx': 'xlsx', '.xls': 'xlsx',
10
+ };
11
+ function candidates(text) {
12
+ const out = [];
13
+ let rest = text;
14
+ for (const m of text.matchAll(/"([^"]+)"|'([^']+)'/g)) {
15
+ const path = (m[1] ?? m[2]);
16
+ out.push({ path, token: m[0] });
17
+ rest = rest.replace(m[0], ' ');
18
+ }
19
+ for (const tok of rest.split(/\s+/))
20
+ if (tok)
21
+ out.push({ path: tok, token: tok });
22
+ return out;
23
+ }
24
+ export function detectPaths(text) {
25
+ const found = [];
26
+ for (const { path, token } of candidates(text)) {
27
+ const kind = EXT_KIND[extname(path).toLowerCase()];
28
+ if (!kind)
29
+ continue;
30
+ try {
31
+ if (existsSync(path) && statSync(path).isFile())
32
+ found.push({ path, token, kind });
33
+ }
34
+ catch {
35
+ }
36
+ }
37
+ return found;
38
+ }
39
+ async function readAsText(det) {
40
+ if (det.kind === 'xlsx') {
41
+ const XLSX = await import('xlsx');
42
+ const wb = XLSX.readFile(det.path);
43
+ return wb.SheetNames.map((n) => XLSX.utils.sheet_to_csv(wb.Sheets[n])).join('\n\n');
44
+ }
45
+ return readFileSync(det.path, 'utf8');
46
+ }
47
+ function stripToken(text, token) {
48
+ const i = text.indexOf(token);
49
+ return i < 0 ? text : text.slice(0, i) + text.slice(i + token.length);
50
+ }
51
+ const IMAGE_MIME = {
52
+ '.png': 'image/png', '.jpg': 'image/jpeg', '.jpeg': 'image/jpeg',
53
+ '.gif': 'image/gif', '.webp': 'image/webp',
54
+ };
55
+ function imagePart(det) {
56
+ const mime = IMAGE_MIME[extname(det.path).toLowerCase()] ?? 'application/octet-stream';
57
+ const b64 = readFileSync(det.path).toString('base64');
58
+ return { type: 'file', mime, filename: basename(det.path), url: `data:${mime};base64,${b64}` };
59
+ }
60
+ async function downscaleImage(path, maxBytes, maxDim) {
61
+ try {
62
+ const { Jimp, JimpMime } = await import('jimp');
63
+ const img = await Jimp.read(path);
64
+ img.scaleToFit({ w: maxDim, h: maxDim });
65
+ const buf = await img.getBuffer(JimpMime.jpeg, { quality: 72 });
66
+ if (maxBytes > 0 && buf.length > maxBytes)
67
+ return null;
68
+ return {
69
+ type: 'file', mime: 'image/jpeg', filename: basename(path),
70
+ url: `data:image/jpeg;base64,${buf.toString('base64')}`,
71
+ };
72
+ }
73
+ catch {
74
+ return null;
75
+ }
76
+ }
77
+ export async function buildAttachedInput(text, opts = {}) {
78
+ const maxImageBytes = opts.maxImageBytes ?? NIO_AI_MAX_IMAGE_BYTES;
79
+ const maxDim = opts.maxDim ?? NIO_AI_IMAGE_MAX_DIM;
80
+ const dets = detectPaths(text);
81
+ if (dets.length === 0)
82
+ return { fileParts: [], text };
83
+ let stripped = text;
84
+ const blocks = [];
85
+ const fileParts = [];
86
+ for (const det of dets) {
87
+ stripped = stripToken(stripped, det.token);
88
+ const name = basename(det.path);
89
+ if (det.kind === 'image') {
90
+ try {
91
+ const size = statSync(det.path).size;
92
+ if (maxImageBytes <= 0 || size <= maxImageBytes) {
93
+ fileParts.push(imagePart(det));
94
+ }
95
+ else {
96
+ const reduced = await downscaleImage(det.path, maxImageBytes, maxDim);
97
+ if (reduced)
98
+ fileParts.push(reduced);
99
+ else
100
+ blocks.push(`\n\n--- imagem ${name} (${fmtMB(size)}) grande demais e não coube nem reduzida (teto ${fmtMB(maxImageBytes)}) — reduza manualmente ---`);
101
+ }
102
+ }
103
+ catch {
104
+ blocks.push(`\n\n--- imagem ${name} (falha ao ler) ---`);
105
+ }
106
+ continue;
107
+ }
108
+ try {
109
+ blocks.push(`\n\n--- arquivo anexado: ${name} ---\n${await readAsText(det)}`);
110
+ }
111
+ catch {
112
+ blocks.push(`\n\n--- arquivo anexado: ${name} (falha ao ler) ---`);
113
+ }
114
+ }
115
+ return { fileParts, text: `${stripped.trim()}${blocks.join('')}` };
116
+ }
117
+ //# sourceMappingURL=attachments.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"attachments.js","sourceRoot":"","sources":["../../src/tui/attachments.ts"],"names":[],"mappings":"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"}
@@ -5,7 +5,7 @@ import { theme, sym } from './theme.js';
5
5
  import { Markdown } from './markdown.js';
6
6
  import { PromptInput } from './prompt-input.js';
7
7
  import { filterPalette } from './palette-source.js';
8
- import { messageUsage, summarizeToolInput, } from './state.js';
8
+ import { messageUsage, summarizeToolInput, isInternalMessage, } from './state.js';
9
9
  const KIND_LABEL = {
10
10
  command: 'cmd',
11
11
  capability: 'agente',
@@ -31,6 +31,11 @@ export function DiffSummary({ changes, }) {
31
31
  const more = changes.length - parts.length;
32
32
  return (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.accent, wrap: "truncate-end", children: ['✎ ', changes.length, " arquivo(s): ", _jsxs(Text, { color: theme.dim, children: [parts.join(' · '), more > 0 ? ` · +${more}` : ''] })] }) }));
33
33
  }
34
+ export function AttachChips({ files }) {
35
+ if (files.length === 0)
36
+ return null;
37
+ return (_jsx(Box, { paddingX: 1, children: _jsxs(Text, { color: theme.accent, wrap: "truncate-end", children: ['anexos: ', _jsx(Text, { color: theme.dim, children: files.join(' · ') })] }) }));
38
+ }
34
39
  export function QuestionPicker({ options, sel, }) {
35
40
  return (_jsxs(Box, { flexDirection: "column", borderStyle: "round", borderColor: theme.accentBright, paddingX: 1, children: [options.map((o, i) => (_jsxs(Text, { inverse: i === sel, color: i === sel ? theme.accentBright : undefined, wrap: "truncate-end", children: [' ', i + 1, ". ", o] }, i))), _jsx(Text, { color: theme.dim, children: "\u2191\u2193 escolher \u00B7 \u21B5 responder \u00B7 ou digite a sua" })] }));
36
41
  }
@@ -45,14 +50,18 @@ export function Toasts({ toasts }) {
45
50
  return (_jsxs(Text, { color: s.color, wrap: "truncate-end", children: [s.icon, " ", t.message] }, t.id));
46
51
  }) }));
47
52
  }
48
- export function Footer({ model, cwd, session, mode, sessionTokens = 0, }) {
53
+ export function Footer({ model, cwd, session, mode, tokensIn = 0, tokensOut = 0, contextLimit = 0, }) {
49
54
  const folder = cwd.replace(/\/+$/, '').split('/').pop() || cwd;
55
+ const used = tokensIn + tokensOut;
56
+ const pct = contextLimit > 0 ? used / contextLimit : 0;
57
+ const tokenColor = pct >= 0.9 ? theme.err : pct >= 0.7 ? theme.warn : theme.dim;
58
+ const tokenLabel = used > 0
59
+ ? `↑${kfmt(tokensIn)} ↓${kfmt(tokensOut)}${contextLimit > 0 ? ` · ${Math.round(pct * 100)}%` : ''}`
60
+ : null;
50
61
  const bits = [`⏵ ${model}`, folder];
51
62
  if (session)
52
63
  bits.push(`${session.name} · ${session.profile}`);
53
- if (sessionTokens > 0)
54
- bits.push(`${kfmt(sessionTokens)} tok`);
55
- return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: theme.dim, children: bits.join(' · ') }), mode ? _jsx(Text, { color: theme.accentBright, children: ` [${mode}]` }) : null] }), _jsxs(Text, { color: theme.dim, children: [_jsx(Text, { color: theme.accent, children: "/" }), " paleta", ' ', _jsx(Text, { color: theme.accent, children: "^R" }), " racioc\u00EDnio", ' ', _jsx(Text, { color: theme.accent, children: "Tab" }), " modo", ' ', _jsx(Text, { color: theme.accent, children: "Esc" }), " abortar", ' ', _jsx(Text, { color: theme.accent, children: "^C" }), " sair"] })] }));
64
+ return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: theme.dim, children: bits.join(' · ') }), mode ? _jsx(Text, { color: theme.accentBright, children: ` [${mode}]` }) : null, tokenLabel ? _jsx(Text, { color: tokenColor, children: ` ${tokenLabel}` }) : null] }), _jsxs(Text, { color: theme.dim, children: [_jsx(Text, { color: theme.accent, children: "/" }), " paleta", ' ', _jsx(Text, { color: theme.accent, children: "^R" }), " racioc\u00EDnio", ' ', _jsx(Text, { color: theme.accent, children: "Tab" }), " modo", ' ', _jsx(Text, { color: theme.accent, children: "Esc" }), " abortar", ' ', _jsx(Text, { color: theme.accent, children: "^C" }), " sair"] })] }));
56
65
  }
57
66
  function ToolBlock({ part }) {
58
67
  const t = part.tool;
@@ -62,6 +71,10 @@ function ToolBlock({ part }) {
62
71
  const outLine = (t?.output ?? '').split('\n').find((l) => l.trim()) ?? '';
63
72
  return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { wrap: "truncate-end", children: [_jsxs(Text, { color: theme.accent, children: [sym.dot, " "] }), _jsx(Text, { color: theme.text, children: t?.name ?? part.text }), arg ? _jsxs(Text, { color: theme.dim, children: ["(", arg, ")"] }) : null, ' ', _jsx(Text, { color: badge, children: t?.status ?? '' })] }), outLine && !running && (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ⎿ ', clip(outLine, 66)] }))] }));
64
73
  }
74
+ function ForkBlock({ part }) {
75
+ const f = part.fork;
76
+ return (_jsxs(Text, { wrap: "truncate-end", children: [_jsx(Text, { color: theme.accent, children: '⑂ ' }), _jsx(Text, { color: theme.accentBright, children: f?.agent ?? part.text }), f?.description ? _jsx(Text, { color: theme.dim, children: ` · ${clip(f.description, 60)}` }) : null] }));
77
+ }
65
78
  const TODO_MARK = {
66
79
  completed: '☑',
67
80
  in_progress: '◐',
@@ -94,25 +107,28 @@ function UsageFooter({ usage, files = 0, }) {
94
107
  function Author({ role }) {
95
108
  return (_jsx(Text, { bold: true, color: role === 'user' ? theme.user : theme.accentBright, children: role === 'user' ? '> você' : '⏺ nio' }));
96
109
  }
97
- function ReasoningSummary({ text }) {
98
- const lines = text.split('\n').map((l) => l.trim()).filter(Boolean);
99
- if (lines.length === 0)
100
- return null;
101
- return (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: theme.dim, children: [' ✻ raciocínio', lines.length > 2 ? ` · ${lines.length} linhas` : ''] }), lines.slice(0, 2).map((l, i) => (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ', l] }, i)))] }));
102
- }
103
110
  function Part({ part }) {
104
111
  if (part.kind === 'step')
105
112
  return null;
106
113
  if (part.kind === 'tool')
107
114
  return _jsx(ToolBlock, { part: part });
115
+ if (part.kind === 'fork')
116
+ return _jsx(ForkBlock, { part: part });
108
117
  if (part.kind === 'reasoning')
109
- return _jsx(ReasoningSummary, { text: part.text });
118
+ return null;
110
119
  return part.text.trim() ? _jsx(Markdown, { text: part.text }) : null;
111
120
  }
121
+ function InternalMarker() {
122
+ return (_jsx(Box, { marginBottom: 1, paddingX: 1, children: _jsx(Text, { color: theme.dim, children: '✂ resumo interno ocultado' }) }));
123
+ }
112
124
  export function MessageView({ message }) {
125
+ if (isInternalMessage(message))
126
+ return _jsx(InternalMarker, {});
113
127
  return (_jsxs(Box, { flexDirection: "column", marginBottom: 1, paddingX: 1, children: [_jsx(Author, { role: message.role }), message.parts.map((p) => (_jsx(Part, { part: p }, p.id))), message.role === 'assistant' && _jsx(UsageFooter, { usage: messageUsage(message) })] }));
114
128
  }
115
129
  export function LiveMessage({ message, maxLines, todos = [], files = [], retry = null, expandReasoning = false, }) {
130
+ if (isInternalMessage(message))
131
+ return _jsx(InternalMarker, {});
116
132
  const text = message.parts.filter((p) => p.kind === 'text').map((p) => p.text).join('');
117
133
  const reasoningRaw = message.parts
118
134
  .filter((p) => p.kind === 'reasoning')
@@ -124,6 +140,7 @@ export function LiveMessage({ message, maxLines, todos = [], files = [], retry =
124
140
  const allTools = message.parts.filter((p) => p.kind === 'tool');
125
141
  const tools = allTools.slice(-4);
126
142
  const toolsHidden = allTools.length - tools.length;
143
+ const forks = message.parts.filter((p) => p.kind === 'fork');
127
144
  const reasoningShown = expandReasoning && reasoningLines.length
128
145
  ? reasoningLines.slice(-Math.min(10, Math.max(3, maxLines - 6)))
129
146
  : [];
@@ -132,7 +149,7 @@ export function LiveMessage({ message, maxLines, todos = [], files = [], retry =
132
149
  const lines = text.split('\n');
133
150
  const shown = lines.slice(-textBudget);
134
151
  const clipped = lines.length > shown.length;
135
- return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(Author, { role: message.role }), retry && (_jsxs(Text, { color: theme.warn, wrap: "truncate-end", children: [' ↻ tentativa ', retry.attempt, ' — ', retry.note] })), _jsx(TodoList, { todos: todos }), toolsHidden > 0 && (_jsx(Text, { color: theme.dim, children: ` · +${toolsHidden} ferramenta(s) acima` })), tools.map((t) => (_jsx(ToolBlock, { part: t }, t.id))), reasoningRaw && !expandReasoning && (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ✻ raciocínio ', _jsx(Text, { color: theme.accent, children: "Ctrl-R" }), ' ', reasoningFlat.slice(-120)] })), reasoningRaw && expandReasoning && (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: theme.accent, children: [' ✻ raciocínio', reasoningLines.length > reasoningShown.length ? ` · ${reasoningLines.length} linhas` : ''] }), reasoningShown.map((l, i) => (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ', l] }, i)))] })), clipped && _jsx(Text, { color: theme.dim, children: " \u2026 (rolagem acima)" }), shown.map((l, i) => (_jsx(Text, { wrap: "truncate-end", children: l || ' ' }, i))), _jsx(UsageFooter, { usage: messageUsage(message), files: files.length })] }));
152
+ return (_jsxs(Box, { flexDirection: "column", paddingX: 1, children: [_jsx(Author, { role: message.role }), retry && (_jsxs(Text, { color: theme.warn, wrap: "truncate-end", children: [' ↻ tentativa ', retry.attempt, ' — ', retry.note] })), _jsx(TodoList, { todos: todos }), toolsHidden > 0 && (_jsx(Text, { color: theme.dim, children: ` · +${toolsHidden} ferramenta(s) acima` })), tools.map((t) => (_jsx(ToolBlock, { part: t }, t.id))), forks.map((f) => (_jsx(ForkBlock, { part: f }, f.id))), reasoningRaw && !expandReasoning && (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ✻ raciocínio ', _jsx(Text, { color: theme.accent, children: "Ctrl-R" }), ' ', reasoningFlat.slice(-120)] })), reasoningRaw && expandReasoning && (_jsxs(Box, { flexDirection: "column", children: [_jsxs(Text, { color: theme.accent, children: [' ✻ raciocínio', reasoningLines.length > reasoningShown.length ? ` · ${reasoningLines.length} linhas` : ''] }), reasoningShown.map((l, i) => (_jsxs(Text, { color: theme.dim, wrap: "truncate-end", children: [' ', l] }, i)))] })), clipped && _jsx(Text, { color: theme.dim, children: " \u2026 (rolagem acima)" }), shown.map((l, i) => (_jsx(Text, { wrap: "truncate-end", children: l || ' ' }, i))), _jsx(UsageFooter, { usage: messageUsage(message), files: files.length })] }));
136
153
  }
137
154
  const FRAMES = ['⠋', '⠙', '⠹', '⠸', '⠼', '⠴', '⠦', '⠧', '⠇', '⠏'];
138
155
  export function StatusLine({ busy, frame, seconds = 0, label = 'processando', }) {
@@ -1 +1 @@
1
- {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/tui/components.tsx"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"components.js","sourceRoot":"","sources":["../../src/tui/components.tsx"],"names":[],"mappings":"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"}
package/dist/tui/debug.js CHANGED
@@ -7,7 +7,7 @@ export function tlog(...args) {
7
7
  if (!DEBUG)
8
8
  return;
9
9
  try {
10
- const line = args.map((a) => (typeof a === 'string' ? a : JSON.stringify(a))).join(' ');
10
+ const line = args.map((a) => (typeof a === 'string' ? a : JSON.stringify(a).slice(0, 2000))).join(' ');
11
11
  appendFileSync(FILE, `${new Date().toISOString()} ${line}\n`);
12
12
  }
13
13
  catch {
@@ -1 +1 @@
1
- {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../src/tui/debug.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAEhD,MAAM,UAAU,IAAI,CAAC,GAAG,IAAe;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,IAAI,CAAC;QACH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACxF,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC"}
1
+ {"version":3,"file":"debug.js","sourceRoot":"","sources":["../../src/tui/debug.ts"],"names":[],"mappings":"AAIA,OAAO,EAAE,cAAc,EAAE,MAAM,SAAS,CAAC;AACzC,OAAO,EAAE,OAAO,EAAE,MAAM,SAAS,CAAC;AAClC,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AACjC,OAAO,EAAE,KAAK,EAAE,MAAM,iBAAiB,CAAC;AAExC,MAAM,IAAI,GAAG,IAAI,CAAC,OAAO,EAAE,EAAE,MAAM,EAAE,SAAS,CAAC,CAAC;AAEhD,MAAM,UAAU,IAAI,CAAC,GAAG,IAAe;IACrC,IAAI,CAAC,KAAK;QAAE,OAAO;IACnB,IAAI,CAAC;QAGH,MAAM,IAAI,GAAG,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,OAAO,CAAC,KAAK,QAAQ,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC;QACvG,cAAc,CAAC,IAAI,EAAE,GAAG,IAAI,IAAI,EAAE,CAAC,WAAW,EAAE,IAAI,IAAI,IAAI,CAAC,CAAC;IAChE,CAAC;IAAC,MAAM,CAAC;IAET,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,IAAI,CAAC"}
@@ -3,6 +3,7 @@ import { spawnPortable } from '../lib/proc.js';
3
3
  import { render } from 'ink';
4
4
  import { ensureHeadroomAndWire } from '../app/ai-client.js';
5
5
  import { NIO_AI_PROVIDER, NIO_AI_MODEL_ID } from '../lib/clients/client-configs.js';
6
+ import { installNioOpencodeConfig } from '../lib/clients/nio-oc-config.js';
6
7
  import { isBinaryInstalled, opencodeVersionSkew } from '../lib/clients/client-install.js';
7
8
  import { loadSession } from '../lib/auth/session-store.js';
8
9
  import { createSessionRepository } from '../adapters/pg/session-repository.js';
@@ -45,6 +46,18 @@ export async function launchNioTui({ cwd }) {
45
46
  console.log(` ${c.yellow(sym.warn)} opencode ${skew.binary} no PATH, mas a NIO fala com o SDK ${skew.sdk}. ` +
46
47
  `Se o chat travar ou os eventos sumirem, alinhe: \`npm i -g opencode-ai@${skew.sdk}\`.`);
47
48
  }
49
+ const session = await resolveSessionMeta();
50
+ try {
51
+ const { xdgDir, missingInherited } = installNioOpencodeConfig(session?.profile ?? null);
52
+ process.env.XDG_CONFIG_HOME = xdgDir;
53
+ process.env.OPENCODE_DISABLE_PROJECT_CONFIG = '1';
54
+ if (missingInherited.length > 0) {
55
+ console.log(` ${c.yellow(sym.warn)} MCP(s) do perfil ausentes no seu global (ignorados): ${missingInherited.join(', ')}`);
56
+ }
57
+ }
58
+ catch (err) {
59
+ console.warn(` ${c.yellow(sym.warn)} config dedicado do NIO falhou (segue no global): ${err.message}`);
60
+ }
48
61
  let handle;
49
62
  try {
50
63
  handle = await startOpencode(cwd);
@@ -54,7 +67,6 @@ export async function launchNioTui({ cwd }) {
54
67
  return fallbackToOpencodeTui(cwd);
55
68
  }
56
69
  const program = buildProgram();
57
- const session = await resolveSessionMeta();
58
70
  const model = { providerID: NIO_AI_PROVIDER, modelID: NIO_AI_MODEL_ID };
59
71
  const app = render(_jsx(App, { handle: handle, program: program, cwd: cwd, session: session, model: model }), {
60
72
  patchConsole: false,