zelari-code 0.7.5 → 0.7.8
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/bin/zelari-code.js +1 -1
- package/dist/agents/councilApi.js +7 -7
- package/dist/agents/councilApi.js.map +1 -1
- package/dist/agents/councilDirectives.js +3 -3
- package/dist/agents/promoteMember.js +2 -2
- package/dist/agents/roles.js +32 -50
- package/dist/agents/roles.js.map +1 -1
- package/dist/agents/skills/builtin/debugging.js +4 -4
- package/dist/agents/skills/builtin/debugging.js.map +1 -1
- package/dist/agents/skills/builtin/docs.js +13 -23
- package/dist/agents/skills/builtin/docs.js.map +1 -1
- package/dist/agents/skills/builtin/git-ops.js +3 -3
- package/dist/agents/skills/builtin/git-ops.js.map +1 -1
- package/dist/agents/skills/builtin/planning.js +4 -4
- package/dist/agents/skills/builtin/planning.js.map +1 -1
- package/dist/agents/skills/builtin/refactoring.js +3 -3
- package/dist/agents/skills/builtin/refactoring.js.map +1 -1
- package/dist/agents/skills/builtin/review.js +9 -9
- package/dist/agents/skills/builtin/review.js.map +1 -1
- package/dist/agents/skills/builtin/testing.js +3 -3
- package/dist/agents/skills/builtin/testing.js.map +1 -1
- package/dist/agents/tools.js +9 -2
- package/dist/agents/tools.js.map +1 -1
- package/dist/cli/app.js +2 -1
- package/dist/cli/app.js.map +1 -1
- package/dist/cli/components/CollapsibleToolOutput.js +26 -8
- package/dist/cli/components/CollapsibleToolOutput.js.map +1 -1
- package/dist/cli/components/Header.js +18 -6
- package/dist/cli/components/Header.js.map +1 -1
- package/dist/cli/components/Sidebar.js +31 -33
- package/dist/cli/components/Sidebar.js.map +1 -1
- package/dist/cli/components/SplashScreen.js +158 -0
- package/dist/cli/components/SplashScreen.js.map +1 -0
- package/dist/cli/councilDispatcher.js +20 -0
- package/dist/cli/councilDispatcher.js.map +1 -1
- package/dist/cli/main.bundled.js +983 -171
- package/dist/cli/main.bundled.js.map +4 -4
- package/dist/cli/main.js +9 -2
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/mcp/mcpClient.js +1 -1
- package/dist/cli/oauthCallbackServer.js +207 -0
- package/dist/cli/oauthCallbackServer.js.map +1 -0
- package/dist/cli/wizard/index.js +1 -1
- package/dist/cli/wizard/index.js.map +1 -1
- package/dist/cli/workspace/completeDesign.js +128 -0
- package/dist/cli/workspace/completeDesign.js.map +1 -0
- package/dist/cli/workspace/postCouncilHook.js +146 -20
- package/dist/cli/workspace/postCouncilHook.js.map +1 -1
- package/dist/cli/workspace/stubs.js +231 -95
- package/dist/cli/workspace/stubs.js.map +1 -1
- package/dist/main/core/AgentHarness.js +7 -36
- package/dist/main/core/AgentHarness.js.map +1 -1
- package/dist/main/core/tools/builtin/_walk.js +129 -0
- package/dist/main/core/tools/builtin/_walk.js.map +1 -0
- package/dist/main/core/tools/builtin/diff.js +477 -0
- package/dist/main/core/tools/builtin/diff.js.map +1 -0
- package/dist/main/core/tools/builtin/listFiles.js +5 -43
- package/dist/main/core/tools/builtin/listFiles.js.map +1 -1
- package/dist/main/core/tools/builtin/search.js +120 -28
- package/dist/main/core/tools/builtin/search.js.map +1 -1
- package/package.json +2 -2
|
@@ -0,0 +1,158 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* SplashScreen — one-shot startup splash (v0.7.8).
|
|
3
|
+
*
|
|
4
|
+
* Shows the N-THEM / Zelari emblem (downscaled from the original 400-col
|
|
5
|
+
* ASCII art) centered in the terminal for ~2 seconds — or until any key is
|
|
6
|
+
* pressed — then unmounts and gives way to the normal App.
|
|
7
|
+
*
|
|
8
|
+
* Sizing: two pre-rendered variants (64 and 44 columns wide) are embedded
|
|
9
|
+
* as constants; `pickSplashArt` chooses the largest one that fits the
|
|
10
|
+
* current terminal, or returns null when even the small one doesn't fit
|
|
11
|
+
* (the splash is then skipped entirely).
|
|
12
|
+
*
|
|
13
|
+
* Skipped when stdout is not a TTY (pipes, CI) or `ZELARI_NO_SPLASH=1`.
|
|
14
|
+
*/
|
|
15
|
+
// NOTE: no import from '../main.js' here — main.ts executes `main()` at
|
|
16
|
+
// module scope, so importing it from a component (or a unit test that
|
|
17
|
+
// imports this component) would boot the whole CLI. The version string is
|
|
18
|
+
// passed in as a prop instead.
|
|
19
|
+
import React, { useEffect, useState } from 'react';
|
|
20
|
+
import { Box, Text, useInput, useStdin } from 'ink';
|
|
21
|
+
/** How long the splash stays up before auto-dismissing (ms). */
|
|
22
|
+
export const SPLASH_DURATION_MS = 2000;
|
|
23
|
+
// Downscaled from the source emblem (142×79) by block-averaging glyph
|
|
24
|
+
// density — see docs/plans/2026-07-03-cli-splash-screen.md.
|
|
25
|
+
const EMBLEM_LARGE = ` =%@*-
|
|
26
|
+
=%@@@@@#:
|
|
27
|
+
*%%%%%%@@%-
|
|
28
|
+
:#%%%%%%%%%@@*
|
|
29
|
+
:*%%%%%%%%%%%%%@%*.
|
|
30
|
+
=%%%%%%%%%%%%%%%%@@%.
|
|
31
|
+
=%%%%%%%%%%%%%%%%%%%@%-
|
|
32
|
+
*%%%%%%%%%%%%%%%%%%%%%@@=
|
|
33
|
+
.#%%%%%%%%@@@@@@@@%%%%%%@@@+
|
|
34
|
+
:#%%%%%%@@@@@@@@@@@@@@@%%%%@@+
|
|
35
|
+
-%%%%%@@@@@@@@@@@@@@@@@@@@@%%@@#.
|
|
36
|
+
-%%%%%@@@@@@@@@@@@@@@@@@@@@@@%%@@%:
|
|
37
|
+
=%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%.
|
|
38
|
+
+%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%@@%:
|
|
39
|
+
=%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@-
|
|
40
|
+
-%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%:
|
|
41
|
+
:%%%%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@%
|
|
42
|
+
#%%%%%@@@@@@@@@@@@@@@%--#%@@@@@@@@@@@@@%%@@@=
|
|
43
|
+
#@@%%%%@@@@@@@@@@@@@@%: -*@@@@@@@@@@@%%@@@@=
|
|
44
|
+
#@@%%%%@@@@@@@@@@@@@%: .. -#@@@@@@@%%%%@@@=
|
|
45
|
+
+@@@%%%@@@@@@@@@@@@%: :#= =%@@@@%%%@@@%-
|
|
46
|
+
=@@@@%%%@@@@@@@@@@%: -%%*: +%@@%%@@@#
|
|
47
|
+
+%@@@@%%@@@@@@@@@%: -%@@%*=.:+#@@@@#:
|
|
48
|
+
.+*@@@@@@@@@%%%@@@@@@%: -%@@@@@#- +@@@@@@*=
|
|
49
|
+
=*%%%%@@@@@@@@@@@%%@@@@%: -#@@@@@@@*: :*@@@@@@%+=
|
|
50
|
+
-*%%%%%%%%%%@@@@@@@@@@@@@@@: -%@@@@@@@@#- -#@@@@@@@@*
|
|
51
|
+
#%%%%%%%%%%%%%@@@@@@@@@@@@@: -#@@@@@%+-::. *@@@@@@@@=
|
|
52
|
+
=%%%%%%%%%%%%%%%@@@@@@@@@@@@: :*+--=%#. :+++++*@@@@@@@@%
|
|
53
|
+
#@%%%%%%%%%%%%%@@@@@@@@@@@@%: .. - -## *@@@@@@@@@@@@@@=
|
|
54
|
+
:@@%%%%%%%%%%%%@@@@@@@@@@@@@%: .**= *%= :%@@@@@@@@@@@@@%
|
|
55
|
+
#@@@%%%%%%%%%%%@@@@@@@@@@@@@@- =#@@%- :**: =%@@@@@@@@@@@@@+
|
|
56
|
+
=@@@@@%%%@@%%%%@@@@@@@@@@@@@@@@@@@@@@%- :: .-#@@@@@@@@@@@@@%.
|
|
57
|
+
:@@@@@@%%@@@%%@@@@@@@@@@@@@@@@@@@@@@@@@%==*%%@@@@@@@@@@@@@@@@#
|
|
58
|
+
*@@@@@@@%@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@:
|
|
59
|
+
:@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@+
|
|
60
|
+
=##########*######**##**#*********##**#*#######################*`;
|
|
61
|
+
const EMBLEM_SMALL = ` =%%*:
|
|
62
|
+
:#%%@@@+
|
|
63
|
+
=%%%%%%%@#.
|
|
64
|
+
.*%%%%%%%%%@%-
|
|
65
|
+
=%%%%%%%%%%%%%@*.
|
|
66
|
+
+%%%%%%@@@@@%%%%@%:
|
|
67
|
+
*%%%%@@@@@@@@@@@%%@%:
|
|
68
|
+
*%%%@@@@@@@@@@@@@@@%@%-
|
|
69
|
+
:#%%@@@@@@@@@@@@@@@@@@@@@+
|
|
70
|
+
:%%%@@@@@@@@@@@@@@@@@@@@@@@+
|
|
71
|
+
#%%@@@@@@@@@@@@@@@@@@@@@@@@@-
|
|
72
|
+
+%%@@@@@@@@@@@@#@@@@@@@@@@@@@%:
|
|
73
|
+
%%%%@@@@@@@@@@%::*@@@@@@@@@%@@=
|
|
74
|
+
-%@%%@@@@@@@@@%:.::*@@@@@%%@@*.
|
|
75
|
+
:%@@%%@@@@@@@%.:%#::*@@%@@@-
|
|
76
|
+
:#@@@%@@@@@@%.:%@%+.-#@@@=
|
|
77
|
+
:+#@@@@@@@%@@@@%.:%@@@%=.+@@@%*-
|
|
78
|
+
.*#%%%%%%@@@@@@@@@@.:%@@@@@*:.+%@@@@#-
|
|
79
|
+
+%%%%%%%%%%@@@@@@@@::##*%* :----%@@@@%.
|
|
80
|
+
.@%%%%%%%%%@@@@@@@@@:.-..-#=:%@@@@@@@@@+
|
|
81
|
+
*@@%%%%%%%%@@@@@@@@@: =#+ +#.-@@@@@@@@@@.
|
|
82
|
+
-@@@%%%%%%%@@@@@@@@@@#%@@@- -.:*@@@@@@@@@*
|
|
83
|
+
%@@@@%@@%@@@@@@@@@@@@@@@@@%**%@@@@@@@@@@@@:
|
|
84
|
+
=@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@*`;
|
|
85
|
+
/** Rows the footer (wordmark + version + hint + margins) needs below the art. */
|
|
86
|
+
const FOOTER_ROWS = 5;
|
|
87
|
+
function measure(art) {
|
|
88
|
+
const lines = art.split('\n');
|
|
89
|
+
return {
|
|
90
|
+
art,
|
|
91
|
+
width: Math.max(...lines.map((l) => l.length)),
|
|
92
|
+
height: lines.length,
|
|
93
|
+
};
|
|
94
|
+
}
|
|
95
|
+
const VARIANTS = [measure(EMBLEM_LARGE), measure(EMBLEM_SMALL)];
|
|
96
|
+
/**
|
|
97
|
+
* Pure helper: pick the largest emblem variant that fits `columns`×`rows`
|
|
98
|
+
* (leaving room for the wordmark footer), or null when none fits.
|
|
99
|
+
*/
|
|
100
|
+
export function pickSplashArt(columns, rows) {
|
|
101
|
+
for (const v of VARIANTS) {
|
|
102
|
+
if (v.width <= columns - 2 && v.height + FOOTER_ROWS <= rows)
|
|
103
|
+
return v;
|
|
104
|
+
}
|
|
105
|
+
return null;
|
|
106
|
+
}
|
|
107
|
+
/**
|
|
108
|
+
* Pure helper: should the splash be shown at all?
|
|
109
|
+
* Skipped for non-TTY stdout (pipes/CI), when ZELARI_NO_SPLASH=1, or when
|
|
110
|
+
* the terminal is too small for even the small variant.
|
|
111
|
+
*/
|
|
112
|
+
export function shouldShowSplash(opts) {
|
|
113
|
+
if (!opts.isTTY)
|
|
114
|
+
return false;
|
|
115
|
+
if (opts.env['ZELARI_NO_SPLASH'] === '1')
|
|
116
|
+
return false;
|
|
117
|
+
return pickSplashArt(opts.columns, opts.rows) !== null;
|
|
118
|
+
}
|
|
119
|
+
function Splash({ onDone, version }) {
|
|
120
|
+
const { isRawModeSupported } = useStdin();
|
|
121
|
+
const columns = process.stdout.columns ?? 80;
|
|
122
|
+
const rows = process.stdout.rows ?? 24;
|
|
123
|
+
const picked = pickSplashArt(columns, rows);
|
|
124
|
+
useEffect(() => {
|
|
125
|
+
const t = setTimeout(onDone, SPLASH_DURATION_MS);
|
|
126
|
+
return () => clearTimeout(t);
|
|
127
|
+
}, [onDone]);
|
|
128
|
+
// Any key skips the splash. Guarded: useInput throws without raw mode.
|
|
129
|
+
useInput(() => {
|
|
130
|
+
onDone();
|
|
131
|
+
}, { isActive: isRawModeSupported === true });
|
|
132
|
+
if (!picked)
|
|
133
|
+
return null;
|
|
134
|
+
return (React.createElement(Box, { flexDirection: "column", alignItems: "center", justifyContent: "center", width: columns, height: rows - 1 },
|
|
135
|
+
React.createElement(Text, { color: "cyan" }, picked.art),
|
|
136
|
+
React.createElement(Box, { marginTop: 1 },
|
|
137
|
+
React.createElement(Text, { bold: true, color: "white" }, 'Z E L A R I C O D E')),
|
|
138
|
+
React.createElement(Text, { dimColor: true }, `${version ? `v${version} — ` : ''}N-THEM Studio`),
|
|
139
|
+
React.createElement(Text, { dimColor: true, italic: true }, "press any key to skip")));
|
|
140
|
+
}
|
|
141
|
+
/**
|
|
142
|
+
* SplashGate — renders the splash first, then swaps in `children` (the
|
|
143
|
+
* real App). The App therefore mounts only after the splash dismisses,
|
|
144
|
+
* so its <Static> banner and raw-mode input never fight the splash.
|
|
145
|
+
*/
|
|
146
|
+
export function SplashGate({ children, version, }) {
|
|
147
|
+
const [show, setShow] = useState(() => shouldShowSplash({
|
|
148
|
+
isTTY: process.stdout.isTTY === true,
|
|
149
|
+
env: process.env,
|
|
150
|
+
columns: process.stdout.columns ?? 80,
|
|
151
|
+
rows: process.stdout.rows ?? 24,
|
|
152
|
+
}));
|
|
153
|
+
if (show) {
|
|
154
|
+
return React.createElement(Splash, { onDone: () => setShow(false), version: version });
|
|
155
|
+
}
|
|
156
|
+
return React.createElement(React.Fragment, null, children);
|
|
157
|
+
}
|
|
158
|
+
//# sourceMappingURL=SplashScreen.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SplashScreen.js","sourceRoot":"","sources":["../../../src/cli/components/SplashScreen.tsx"],"names":[],"mappings":"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"}
|
|
@@ -59,6 +59,26 @@ export async function* dispatchCouncil(userMessage, options) {
|
|
|
59
59
|
maxToolCallsPerTurn: options.maxToolCallsPerTurn,
|
|
60
60
|
feedbackStore: options.feedbackStore,
|
|
61
61
|
};
|
|
62
|
+
// Bug A fix (v0.7.5): also register workspace stubs in the global static
|
|
63
|
+
// (setWorkspaceStubs from @zelari/core/skills) so that getAllTools() —
|
|
64
|
+
// called by buildSystemPrompt when constructing the AVAILABLE TOOLS block —
|
|
65
|
+
// exposes them to the model. Without this, the per-call ToolRegistry can
|
|
66
|
+
// execute workspace tool calls, but the model never sees the names in its
|
|
67
|
+
// system prompt and either guesses them or skips them.
|
|
68
|
+
//
|
|
69
|
+
// Mirrors the pattern in src/cli/runHeadless.ts:141-152 and
|
|
70
|
+
// src/cli/hooks/useChatTurn.ts:572-586. Dynamic import avoids the load-
|
|
71
|
+
// order cycle that a static import would create (councilDispatcher is
|
|
72
|
+
// imported by hooks/runHeadless, and @zelari/core/skills is consumed by
|
|
73
|
+
// those same modules — see Gotcha #9 of zelari-code-headless-driver).
|
|
74
|
+
if (!options.disableWorkspaceTools) {
|
|
75
|
+
const { setWorkspaceStubs } = await import('@zelari/core/skills');
|
|
76
|
+
const { createWorkspaceContext: buildCtx, createWorkspaceStubs: buildStubs } = await import('./workspace/stubs.js');
|
|
77
|
+
const wsCtx = options.workspaceRoot
|
|
78
|
+
? buildCtx(options.workspaceRoot)
|
|
79
|
+
: buildCtx();
|
|
80
|
+
setWorkspaceStubs(buildStubs(wsCtx));
|
|
81
|
+
}
|
|
62
82
|
yield* runCouncilPure(userMessage, config, {});
|
|
63
83
|
}
|
|
64
84
|
//# sourceMappingURL=councilDispatcher.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"councilDispatcher.js","sourceRoot":"","sources":["../../src/cli/councilDispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,cAAc,GAEf,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;
|
|
1
|
+
{"version":3,"file":"councilDispatcher.js","sourceRoot":"","sources":["../../src/cli/councilDispatcher.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;GAgBG;AAEH,OAAO,EACL,cAAc,GAEf,MAAM,sBAAsB,CAAC;AAM9B,OAAO,EAAE,sBAAsB,EAAE,MAAM,sBAAsB,CAAC;AAC9D,OAAO,EAAE,2BAA2B,EAAE,MAAM,6BAA6B,CAAC;AA4D1E,MAAM,OAAO,oBAAqB,SAAQ,KAAK;IAC7C,YAAY,OAAe;QACzB,KAAK,CAAC,OAAO,CAAC,CAAC;QACf,IAAI,CAAC,IAAI,GAAG,sBAAsB,CAAC;IACrC,CAAC;CACF;AAED;;;;;;GAMG;AACH,MAAM,CAAC,KAAK,SAAS,CAAC,CAAC,eAAe,CACpC,WAAmB,EACnB,OAA+B;IAE/B,IAAI,CAAC,OAAO,CAAC,MAAM,IAAI,OAAO,CAAC,MAAM,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QAC1D,MAAM,IAAI,oBAAoB,CAC5B,oFAAoF,CACrF,CAAC;IACJ,CAAC;IACD,IAAI,CAAC,WAAW,IAAI,WAAW,CAAC,IAAI,EAAE,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;QACpD,MAAM,IAAI,oBAAoB,CAAC,0DAA0D,CAAC,CAAC;IAC7F,CAAC;IAED,MAAM,MAAM,GAAsB;QAChC,MAAM,EAAE,OAAO,CAAC,MAAM;QACtB,QAAQ,EAAE,OAAO,CAAC,QAAQ,IAAI,mBAAmB;QACjD,KAAK,EAAE,OAAO,CAAC,KAAK;QACpB,WAAW,EAAE,OAAO,CAAC,WAAW,IAAI,CAAC;QACrC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,KAAK;QACvC,UAAU,EAAE,OAAO,CAAC,UAAU,IAAI,EAAE;QACpC,gBAAgB,EAAE,OAAO,CAAC,gBAAgB,IAAI,EAAE;QAChD,cAAc,EAAE,OAAO,CAAC,cAAc;QACtC,QAAQ,EAAE,OAAO,CAAC,QAAQ;QAC1B,SAAS,EAAE,OAAO,CAAC,SAAS;QAC5B,gEAAgE;QAChE,mEAAmE;QACnE,4CAA4C;QAC5C,KAAK,EAAE,OAAO,CAAC,KAAK;eACf,CAAC,OAAO,CAAC,qBAAqB;gBAC/B,CAAC,CAAC,SAAS;gBACX,CAAC,CAAC,2BAA2B,CAAC,sBAAsB,EAAE,CAAC,CAAC;QAC5D,mBAAmB,EAAE,OAAO,CAAC,mBAAmB;QAChD,aAAa,EAAE,OAAO,CAAC,aAAa;KACrC,CAAC;IAEF,yEAAyE;IACzE,uEAAuE;IACvE,4EAA4E;IAC5E,yEAAyE;IACzE,0EAA0E;IAC1E,uDAAuD;IACvD,EAAE;IACF,4DAA4D;IAC5D,wEAAwE;IACxE,sEAAsE;IACtE,wEAAwE;IACxE,sEAAsE;IACtE,IAAI,CAAC,OAAO,CAAC,qBAAqB,EAAE,CAAC;QACnC,MAAM,EAAE,iBAAiB,EAAE,GAAG,MAAM,MAAM,CAAC,qBAAqB,CAAC,CAAC;QAClE,MAAM,EAAE,sBAAsB,EAAE,QAAQ,EAAE,oBAAoB,EAAE,UAAU,EAAE,GAAG,MAAM,MAAM,CAAC,sBAAsB,CAAC,CAAC;QACpH,MAAM,KAAK,GAAG,OAAO,CAAC,aAAa;YACjC,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,aAAa,CAAC;YACjC,CAAC,CAAC,QAAQ,EAAE,CAAC;QACf,iBAAiB,CAAC,UAAU,CAAC,KAAK,CAAC,CAAC,CAAC;IACvC,CAAC;IAED,KAAK,CAAC,CAAC,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,EAAE,CAAC,CAAC;AACjD,CAAC"}
|