zelari-code 1.10.0 → 1.12.1
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 +14 -4
- package/dist/cli/headless.js +41 -0
- package/dist/cli/headless.js.map +1 -1
- package/dist/cli/hooks/conversationContext.js +57 -10
- package/dist/cli/hooks/conversationContext.js.map +1 -1
- package/dist/cli/hooks/useChatTurn.js +8 -1
- package/dist/cli/hooks/useChatTurn.js.map +1 -1
- package/dist/cli/main.bundled.js +1803 -647
- package/dist/cli/main.bundled.js.map +4 -4
- package/dist/cli/main.js +208 -0
- package/dist/cli/main.js.map +1 -1
- package/dist/cli/mcp/mcpConfigIo.js +136 -0
- package/dist/cli/mcp/mcpConfigIo.js.map +1 -0
- package/dist/cli/provider/openai-compatible.js +65 -4
- package/dist/cli/provider/openai-compatible.js.map +1 -1
- package/dist/cli/runHeadless.js +303 -38
- package/dist/cli/runHeadless.js.map +1 -1
- package/dist/cli/ssh/targets.js +406 -0
- package/dist/cli/ssh/targets.js.map +1 -0
- package/dist/cli/ssh/tools.js +79 -0
- package/dist/cli/ssh/tools.js.map +1 -0
- package/dist/cli/toolRegistry.js +13 -0
- package/dist/cli/toolRegistry.js.map +1 -1
- package/dist/cli/utils/streamScrub.js +55 -0
- package/dist/cli/utils/streamScrub.js.map +1 -0
- package/dist/cli/workspace/projectInstructions.js +47 -0
- package/dist/cli/workspace/projectInstructions.js.map +1 -0
- package/package.json +2 -2
|
@@ -0,0 +1,47 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Load project instruction files (AGENTS.md / CLAUDE.md) for system prompt
|
|
3
|
+
* injection — coding-CLI baseline (Cursor / Claude Code style).
|
|
4
|
+
*/
|
|
5
|
+
import { existsSync, readFileSync } from 'node:fs';
|
|
6
|
+
import { join } from 'node:path';
|
|
7
|
+
/** Prefer order: Zelari Agents.md family first, then Claude-compatible. */
|
|
8
|
+
const CANDIDATES = [
|
|
9
|
+
'AGENTS.md',
|
|
10
|
+
'Agents.md',
|
|
11
|
+
'agents.md',
|
|
12
|
+
'CLAUDE.md',
|
|
13
|
+
'Claude.md',
|
|
14
|
+
'claude.md',
|
|
15
|
+
];
|
|
16
|
+
/** Soft cap so huge AGENTS.md files don't blow context. */
|
|
17
|
+
const MAX_CHARS = 8_000;
|
|
18
|
+
/**
|
|
19
|
+
* Find and load the first matching instruction file under `projectRoot`.
|
|
20
|
+
*/
|
|
21
|
+
export function loadProjectInstructions(projectRoot = process.cwd(), maxChars = MAX_CHARS) {
|
|
22
|
+
for (const name of CANDIDATES) {
|
|
23
|
+
const full = join(projectRoot, name);
|
|
24
|
+
if (!existsSync(full))
|
|
25
|
+
continue;
|
|
26
|
+
try {
|
|
27
|
+
let raw = readFileSync(full, 'utf8');
|
|
28
|
+
raw = raw.replace(/\r\n/g, '\n').trim();
|
|
29
|
+
if (!raw)
|
|
30
|
+
continue;
|
|
31
|
+
if (raw.length <= maxChars) {
|
|
32
|
+
return { path: full, content: raw, truncated: false };
|
|
33
|
+
}
|
|
34
|
+
return {
|
|
35
|
+
path: full,
|
|
36
|
+
content: raw.slice(0, maxChars) +
|
|
37
|
+
`\n\n… [truncated; full file is ${raw.length} chars at ${name}]`,
|
|
38
|
+
truncated: true,
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
catch {
|
|
42
|
+
continue;
|
|
43
|
+
}
|
|
44
|
+
}
|
|
45
|
+
return { path: null, content: '', truncated: false };
|
|
46
|
+
}
|
|
47
|
+
//# sourceMappingURL=projectInstructions.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"projectInstructions.js","sourceRoot":"","sources":["../../../src/cli/workspace/projectInstructions.ts"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAE,UAAU,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AACnD,OAAO,EAAE,IAAI,EAAE,MAAM,WAAW,CAAC;AAEjC,2EAA2E;AAC3E,MAAM,UAAU,GAAG;IACjB,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;IACX,WAAW;CACH,CAAC;AAEX,2DAA2D;AAC3D,MAAM,SAAS,GAAG,KAAK,CAAC;AAUxB;;GAEG;AACH,MAAM,UAAU,uBAAuB,CACrC,cAAsB,OAAO,CAAC,GAAG,EAAE,EACnC,WAAmB,SAAS;IAE5B,KAAK,MAAM,IAAI,IAAI,UAAU,EAAE,CAAC;QAC9B,MAAM,IAAI,GAAG,IAAI,CAAC,WAAW,EAAE,IAAI,CAAC,CAAC;QACrC,IAAI,CAAC,UAAU,CAAC,IAAI,CAAC;YAAE,SAAS;QAChC,IAAI,CAAC;YACH,IAAI,GAAG,GAAG,YAAY,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;YACrC,GAAG,GAAG,GAAG,CAAC,OAAO,CAAC,OAAO,EAAE,IAAI,CAAC,CAAC,IAAI,EAAE,CAAC;YACxC,IAAI,CAAC,GAAG;gBAAE,SAAS;YACnB,IAAI,GAAG,CAAC,MAAM,IAAI,QAAQ,EAAE,CAAC;gBAC3B,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;YACxD,CAAC;YACD,OAAO;gBACL,IAAI,EAAE,IAAI;gBACV,OAAO,EACL,GAAG,CAAC,KAAK,CAAC,CAAC,EAAE,QAAQ,CAAC;oBACtB,kCAAkC,GAAG,CAAC,MAAM,aAAa,IAAI,GAAG;gBAClE,SAAS,EAAE,IAAI;aAChB,CAAC;QACJ,CAAC;QAAC,MAAM,CAAC;YACP,SAAS;QACX,CAAC;IACH,CAAC;IACD,OAAO,EAAE,IAAI,EAAE,IAAI,EAAE,OAAO,EAAE,EAAE,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC;AACvD,CAAC"}
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "zelari-code",
|
|
3
|
-
"version": "1.
|
|
3
|
+
"version": "1.12.1",
|
|
4
4
|
"description": "Zelari Code — AI Council coding agent CLI. Multi-agent orchestration (Caronte, Nettuno, Gerione, Plutone, Minosse, Lucifero) with slash commands, provider-agnostic LLM streaming, and self-update.",
|
|
5
5
|
"author": "N-THEM Studio",
|
|
6
6
|
"license": "SEE LICENSE IN LICENSE",
|
|
@@ -50,7 +50,7 @@
|
|
|
50
50
|
},
|
|
51
51
|
"devDependencies": {
|
|
52
52
|
"@testing-library/react": "^16.3.2",
|
|
53
|
-
"@zelari/core": "1.
|
|
53
|
+
"@zelari/core": "1.12.1",
|
|
54
54
|
"@types/node": "^25.3.0",
|
|
55
55
|
"@types/react": "^19.0.10",
|
|
56
56
|
"esbuild": "^0.25.0",
|