matex-cli 1.2.1 → 1.2.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.
- package/dist/commands/ask.js +1 -1
- package/dist/commands/ask.js.map +1 -1
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +35 -35
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/config.js +1 -1
- package/dist/commands/config.js.map +1 -1
- package/dist/commands/dev.d.ts.map +1 -1
- package/dist/commands/dev.js +23 -35
- package/dist/commands/dev.js.map +1 -1
- package/dist/utils/agent-orchestrator.d.ts +1 -1
- package/dist/utils/agent-orchestrator.d.ts.map +1 -1
- package/dist/utils/agent-orchestrator.js +9 -4
- package/dist/utils/agent-orchestrator.js.map +1 -1
- package/dist/utils/command-executor.d.ts +4 -0
- package/dist/utils/command-executor.d.ts.map +1 -1
- package/dist/utils/command-executor.js +14 -0
- package/dist/utils/command-executor.js.map +1 -1
- package/dist/utils/config.js +1 -1
- package/dist/utils/config.js.map +1 -1
- package/dist/utils/repo-mapper.d.ts +1 -1
- package/dist/utils/repo-mapper.d.ts.map +1 -1
- package/dist/utils/repo-mapper.js +26 -4
- package/dist/utils/repo-mapper.js.map +1 -1
- package/package.json +1 -1
- package/src/commands/ask.ts +1 -1
- package/src/commands/chat.ts +37 -39
- package/src/commands/config.ts +1 -1
- package/src/commands/dev.ts +25 -39
- package/src/utils/agent-orchestrator.ts +10 -5
- package/src/utils/command-executor.ts +16 -0
- package/src/utils/config.ts +1 -1
- package/src/utils/repo-mapper.ts +30 -4
package/dist/commands/ask.js
CHANGED
|
@@ -12,7 +12,7 @@ const spinner_1 = require("../utils/spinner");
|
|
|
12
12
|
exports.askCommand = new commander_1.Command('ask')
|
|
13
13
|
.description('Ask a single question to MATEX AI')
|
|
14
14
|
.argument('<question>', 'Your question')
|
|
15
|
-
.option('-m, --model <model>', 'AI model to use (matexcodex, matexai, elite, matexspirit)', config_1.configManager.getDefaultModel())
|
|
15
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', config_1.configManager.getDefaultModel())
|
|
16
16
|
.option('-t, --temperature <number>', 'Temperature (0-1)', '0.7')
|
|
17
17
|
.option('--max-tokens <number>', 'Maximum tokens in response', '4000')
|
|
18
18
|
.action(async (question, options) => {
|
package/dist/commands/ask.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/commands/ask.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4CAAgD;AAChD,0CAA+C;AAC/C,8CAA2C;AAE9B,QAAA,UAAU,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC;KACvC,WAAW,CAAC,mCAAmC,CAAC;KAChD,QAAQ,CAAC,YAAY,EAAE,eAAe,CAAC;KACvC,MAAM,CAAC,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"ask.js","sourceRoot":"","sources":["../../src/commands/ask.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,WAAW,
|
|
1
|
+
{"version":3,"file":"chat.d.ts","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,WAAW,SA4MlB,CAAC"}
|
package/dist/commands/chat.js
CHANGED
|
@@ -47,7 +47,7 @@ const agent_orchestrator_1 = require("../utils/agent-orchestrator");
|
|
|
47
47
|
const repo_mapper_1 = require("../utils/repo-mapper");
|
|
48
48
|
exports.chatCommand = new commander_1.Command('chat')
|
|
49
49
|
.description('Start an interactive chat session with MATEX AI')
|
|
50
|
-
.option('-m, --model <model>', 'AI model to use (matexcodex, matexai, elite, matexspirit)', config_1.configManager.getDefaultModel())
|
|
50
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', config_1.configManager.getDefaultModel())
|
|
51
51
|
.option('--no-execute', 'Disable auto-prompt for command execution')
|
|
52
52
|
.action(async (options) => {
|
|
53
53
|
try {
|
|
@@ -73,42 +73,38 @@ exports.chatCommand = new commander_1.Command('chat')
|
|
|
73
73
|
const messages = [
|
|
74
74
|
{
|
|
75
75
|
role: 'system',
|
|
76
|
-
content:
|
|
77
|
-
|
|
76
|
+
content: `## 🧬 SYSTEM IDENTITY & MISSION
|
|
77
|
+
You are the **Matex Research Commander** (🚀) and **Matex Code Architect** (🧬), an elite technical swarm.
|
|
78
|
+
You operate under the **OODA Loop** with a distinctive Aussie Bro personality.
|
|
78
79
|
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
|
|
80
|
+
### 🧠 CORE PERSONA: RESEARCH COMMANDER (The Matex Vibe)
|
|
81
|
+
- **Identity:** Aussie Bro expert developer. Technically elite, confident, high-energy.
|
|
82
|
+
- **Tone:** Helpful partner, not a robotic servant.
|
|
83
|
+
- **Vocabulary:** Use authentic Aussie slang naturally (e.g., "Too easy," "Ripper," "Mate," "Legend," "Give it a burl").
|
|
84
|
+
- **Formatting:** Use emojis purposefully (🚀, 🔥, 🧠, 🕵️♂️) to keep engagement high.
|
|
82
85
|
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
- **
|
|
86
|
+
### 🛠️ OPERATIONAL PROTOCOLS (The Loop)
|
|
87
|
+
1. **PHASE 1: RECON (Search & Verify)**: You MUST use your whitelisted tools (\`cat\`, \`grep\`, \`find\`) to find the latest documentation and project facts. NEVER guess. Verify.
|
|
88
|
+
2. **PHASE 2: SYNTHESIS (The Brain)**: Don't just dump code. Synthesize. "Righto! React 19 just dropped. The big change is the Compiler..."
|
|
89
|
+
3. **PHASE 3: RESPONSE (The Delivery)**:
|
|
90
|
+
- **The Hook:** A high-energy, friendly Aussie opener. ("G'day legend!", "I'm on it!")
|
|
91
|
+
- **The Meat:** The technical answer/code.
|
|
92
|
+
- **The Outro:** A supportive closing. ("Give that a crack!", "You got this!")
|
|
88
93
|
|
|
89
|
-
|
|
90
|
-
- **
|
|
91
|
-
- **
|
|
92
|
-
- **
|
|
93
|
-
- **
|
|
94
|
-
|
|
94
|
+
### 🧬 CODE ARCHITECT STANDARDS
|
|
95
|
+
- **Role:** Take the technical plan from the Commander and BUILD.
|
|
96
|
+
- **No Placeholders:** Never write \`// code goes here\`. Write full implementation.
|
|
97
|
+
- **Modern Syntax:** Latest stable syntax only.
|
|
98
|
+
- **Safety First:** Always include error handling and type-safety.
|
|
99
|
+
|
|
100
|
+
### 🛠️ ENVIRONMENT CONTEXT
|
|
101
|
+
${repoMap}`
|
|
95
102
|
}
|
|
96
103
|
];
|
|
97
104
|
// Chat loop
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
spinner_1.spinner.start('Thinking...');
|
|
102
|
-
const response = await client.chat({
|
|
103
|
-
messages,
|
|
104
|
-
model: 'matexcodex',
|
|
105
|
-
temperature: 0.3,
|
|
106
|
-
max_tokens: 8000,
|
|
107
|
-
stream: false,
|
|
108
|
-
});
|
|
109
|
-
spinner_1.spinner.stop();
|
|
110
|
-
// Display response
|
|
111
|
-
console.log(chalk_1.default.cyan(loopCount > 1 ? `🧠 MATEX (Step ${loopCount}):` : '🧠 MATEX:'), chalk_1.default.white(response));
|
|
105
|
+
// Ready for chat
|
|
106
|
+
console.log(chalk_1.default.green('\n🧠 MATEX Codex Core Ready.'));
|
|
107
|
+
console.log(chalk_1.default.gray('Ask me anything about your codebase...'));
|
|
112
108
|
// Chat loop
|
|
113
109
|
while (true) {
|
|
114
110
|
// Get user input
|
|
@@ -153,15 +149,15 @@ ${repoMap}
|
|
|
153
149
|
spinner_1.spinner.stop();
|
|
154
150
|
// Add assistant response to history
|
|
155
151
|
messages.push({ role: 'assistant', content: response });
|
|
156
|
-
// Enhanced Multi-Agent Display
|
|
157
|
-
const segments = response.split(/(\[
|
|
152
|
+
// Enhanced Multi-Agent Display (Updated for Vertex AI ADK)
|
|
153
|
+
const segments = response.split(/(\[MatexCodeArchitect\]|\[SyntaxGuard\]|\[VisualAgent\]|\[CoreAgent\]|\[CrawlerAgent\]|\[DetailedResearch\]|\[MatexResearchCommander\])/);
|
|
158
154
|
let hasAgents = false;
|
|
159
155
|
for (let i = 0; i < segments.length; i++) {
|
|
160
156
|
const segment = segments[i].trim();
|
|
161
157
|
if (!segment)
|
|
162
158
|
continue;
|
|
163
|
-
if (segment === '[
|
|
164
|
-
agent_orchestrator_1.AgentOrchestrator.speak('
|
|
159
|
+
if (segment === '[MatexCodeArchitect]') {
|
|
160
|
+
agent_orchestrator_1.AgentOrchestrator.speak('Architect', segments[++i]?.split('[')[0].trim());
|
|
165
161
|
hasAgents = true;
|
|
166
162
|
}
|
|
167
163
|
else if (segment === '[SyntaxGuard]') {
|
|
@@ -176,6 +172,10 @@ ${repoMap}
|
|
|
176
172
|
agent_orchestrator_1.AgentOrchestrator.speak('Backend', segments[++i]?.split('[')[0].trim());
|
|
177
173
|
hasAgents = true;
|
|
178
174
|
}
|
|
175
|
+
else if (segment === '[MatexResearchCommander]' || segment === '[CrawlerAgent]' || segment === '[DetailedResearch]') {
|
|
176
|
+
agent_orchestrator_1.AgentOrchestrator.speak('Commander', segments[++i]?.split('[')[0].trim());
|
|
177
|
+
hasAgents = true;
|
|
178
|
+
}
|
|
179
179
|
else if (!hasAgents || i === segments.length - 1) {
|
|
180
180
|
// Final summary or fallback
|
|
181
181
|
if (segment.includes('`')) {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,wDAAgC;AAChC,4CAAgD;AAChD,0CAA4D;AAC5D,8CAA2C;AAC3C,oEAAgE;AAChE,sDAAkD;AAErC,QAAA,WAAW,GAAG,IAAI,mBAAO,CAAC,MAAM,CAAC;KACzC,WAAW,CAAC,iDAAiD,CAAC;KAC9D,MAAM,CAAC,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"chat.js","sourceRoot":"","sources":["../../src/commands/chat.ts"],"names":[],"mappings":"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"}
|
package/dist/commands/config.js
CHANGED
|
@@ -63,7 +63,7 @@ exports.configCommand
|
|
|
63
63
|
.command('set-model <model>')
|
|
64
64
|
.description('Set default AI model')
|
|
65
65
|
.action((model) => {
|
|
66
|
-
const validModels = ['matexcodex', 'matexai', 'elite', 'matexspirit'];
|
|
66
|
+
const validModels = ['matexcore', 'matexcodex', 'matexai', 'elite', 'matexspirit'];
|
|
67
67
|
if (!validModels.includes(model.toLowerCase())) {
|
|
68
68
|
console.error(chalk_1.default.red(`❌ Invalid model. Choose from: ${validModels.join(', ')}`));
|
|
69
69
|
process.exit(1);
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/commands/config.ts"],"names":[],"mappings":";;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,4CAAgD;AAGnC,QAAA,aAAa,GAAG,IAAI,mBAAO,CAAC,QAAQ,CAAC;KAC7C,WAAW,CAAC,gCAAgC,CAAC,CAAC;AAEnD,cAAc;AACd,qBAAa;KACR,OAAO,CAAC,kBAAkB,CAAC;KAC3B,WAAW,CAAC,2BAA2B,CAAC;KACxC,MAAM,CAAC,CAAC,MAAc,EAAE,EAAE;IACvB,IAAI,CAAC;QACD,0BAA0B;QAC1B,IAAI,CAAC,MAAM,CAAC,UAAU,CAAC,WAAW,CAAC,EAAE,CAAC;YAClC,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,kEAAkE,CAAC,CAAC,CAAC;YAC7F,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;QACpB,CAAC;QAED,sBAAa,CAAC,SAAS,CAAC,MAAM,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,+BAA+B,CAAC,CAAC,CAAC;QAC1D,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,yDAAyD,CAAC,CAAC,CAAC;QACnF,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,2CAA2C,CAAC,CAAC,CAAC;IACzE,CAAC;IAAC,OAAO,KAAU,EAAE,CAAC;QAClB,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,6BAA6B,KAAK,CAAC,OAAO,EAAE,CAAC,CAAC,CAAC;QACvE,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;AACL,CAAC,CAAC,CAAC;AAEP,qBAAqB;AACrB,qBAAa;KACR,OAAO,CAAC,MAAM,CAAC;KACf,WAAW,CAAC,4BAA4B,CAAC;KACzC,MAAM,CAAC,GAAG,EAAE;IACT,MAAM,MAAM,GAAG,sBAAa,CAAC,MAAM,EAAE,CAAC;IAEtC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,IAAI,CAAC,gCAAgC,CAAC,CAAC,CAAC;IAE/D,IAAI,MAAM,CAAC,MAAM,EAAE,CAAC;QAChB,MAAM,SAAS,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,CAAC,EAAE,EAAE,CAAC,GAAG,KAAK,GAAG,MAAM,CAAC,MAAM,CAAC,SAAS,CAAC,MAAM,CAAC,MAAM,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC;QAC7G,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,SAAS,CAAC,CAAC,CAAC;IACxE,CAAC;SAAM,CAAC;QACJ,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,eAAK,CAAC,GAAG,CAAC,SAAS,CAAC,CAAC,CAAC;IACvE,CAAC;IAED,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC;IAC9F,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,iBAAiB,CAAC,GAAG,eAAK,CAAC,IAAI,CAAC,MAAM,CAAC,OAAO,IAAI,0DAA0D,CAAC,CAAC,CAAC;IAEvI,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,CAAC;QACjB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,MAAM,CAAC,wFAAwF,CAAC,CAAC,CAAC;IACxH,CAAC;AACL,CAAC,CAAC,CAAC;AAEP,sBAAsB;AACtB,qBAAa;KACR,OAAO,CAAC,OAAO,CAAC;KAChB,WAAW,CAAC,yBAAyB,CAAC;KACtC,MAAM,CAAC,GAAG,EAAE;IACT,sBAAa,CAAC,KAAK,EAAE,CAAC;IACtB,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,uCAAuC,CAAC,CAAC,CAAC;AACtE,CAAC,CAAC,CAAC;AAEP,oBAAoB;AACpB,qBAAa;KACR,OAAO,CAAC,mBAAmB,CAAC;KAC5B,WAAW,CAAC,sBAAsB,CAAC;KACnC,MAAM,CAAC,CAAC,KAAa,EAAE,EAAE;IACtB,MAAM,WAAW,GAAG,CAAC,WAAW,EAAE,YAAY,EAAE,SAAS,EAAE,OAAO,EAAE,aAAa,CAAC,CAAC;IAEnF,IAAI,CAAC,WAAW,CAAC,QAAQ,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,EAAE,CAAC;QAC7C,OAAO,CAAC,KAAK,CAAC,eAAK,CAAC,GAAG,CAAC,iCAAiC,WAAW,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC,CAAC;QACpF,OAAO,CAAC,IAAI,CAAC,CAAC,CAAC,CAAC;IACpB,CAAC;IAED,sBAAa,CAAC,eAAe,CAAC,KAAK,CAAC,WAAW,EAAE,CAAC,CAAC;IACnD,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,KAAK,CAAC,2BAA2B,KAAK,EAAE,CAAC,CAAC,CAAC;AACjE,CAAC,CAAC,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,UAAU,
|
|
1
|
+
{"version":3,"file":"dev.d.ts","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,WAAW,CAAC;AASpC,eAAO,MAAM,UAAU,SAkMjB,CAAC"}
|
package/dist/commands/dev.js
CHANGED
|
@@ -47,7 +47,7 @@ const agent_orchestrator_1 = require("../utils/agent-orchestrator");
|
|
|
47
47
|
const repo_mapper_1 = require("../utils/repo-mapper");
|
|
48
48
|
exports.devCommand = new commander_1.Command('dev')
|
|
49
49
|
.description('Start interactive development session with MATEXCodex')
|
|
50
|
-
.option('-m, --model <model>', 'AI model to use
|
|
50
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', config_1.configManager.getDefaultModel())
|
|
51
51
|
.option('--no-execute', 'Disable auto-prompt for command execution')
|
|
52
52
|
.action(async (options) => {
|
|
53
53
|
try {
|
|
@@ -74,41 +74,25 @@ exports.devCommand = new commander_1.Command('dev')
|
|
|
74
74
|
const messages = [
|
|
75
75
|
{
|
|
76
76
|
role: 'system',
|
|
77
|
-
content:
|
|
78
|
-
|
|
77
|
+
content: `## 🧬 SYSTEM IDENTITY: MATEX CODEX DEV MASTER
|
|
78
|
+
You are the **Matex Research Commander** (🚀) and **Matex Code Architect** (🧬).
|
|
79
|
+
You operate as a high-fidelity engineering swarm with an Aussie Bro persona.
|
|
79
80
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
81
|
+
### 🧠 CORE PERSONA: RESEARCH COMMANDER
|
|
82
|
+
- **Vibe:** Aussie expert developer. "Too easy," "Ripper," "Mate."
|
|
83
|
+
- **Duty:** Verify all facts before building. Use whitelisted tools (\`cat\`, \`grep\`, \`ls\`, \`find\`) autonomously.
|
|
83
84
|
|
|
84
|
-
|
|
85
|
-
- **
|
|
86
|
-
- **
|
|
87
|
-
- **VisualAgent**: UI/UX & CSS.
|
|
88
|
-
- **CoreAgent**: Backend/API.
|
|
85
|
+
### 🧬 CODE ARCHITECT STANDARDS
|
|
86
|
+
- **Duty:** Build production-ready, modular, type-safe code.
|
|
87
|
+
- **Rules:** No placeholders. Modern syntax only. Safety first.
|
|
89
88
|
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
- **SMART CHUNKING**: If you need to read a file details, ask for it. Do not hallucinate content.
|
|
93
|
-
- **SAFETY**: All file operations require approval (approximated by user prompts).
|
|
94
|
-
- **INTERNAL DIALOG**: [Role] Thought: ...`
|
|
89
|
+
### 🛠️ ENVIRONMENT CONTEXT
|
|
90
|
+
${repoMap}`
|
|
95
91
|
}
|
|
96
92
|
];
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
spinner_1.spinner.start('Thinking...');
|
|
101
|
-
const response = await client.chat({
|
|
102
|
-
messages,
|
|
103
|
-
model: options.model,
|
|
104
|
-
temperature: 0.3,
|
|
105
|
-
max_tokens: 8000,
|
|
106
|
-
stream: false,
|
|
107
|
-
});
|
|
108
|
-
spinner_1.spinner.stop();
|
|
109
|
-
// Display response
|
|
110
|
-
console.log(chalk_1.default.green(`\n🧠 MATEX${loopCount > 1 ? ` (Step ${loopCount})` : ''}:`));
|
|
111
|
-
console.log(chalk_1.default.white(response));
|
|
93
|
+
// Ready for user input
|
|
94
|
+
console.log(chalk_1.default.green('\n🧠 MATEX Codex Core Ready.'));
|
|
95
|
+
console.log(chalk_1.default.gray('State your request to begin...'));
|
|
112
96
|
// Interactive loop
|
|
113
97
|
let continueChat = true;
|
|
114
98
|
while (continueChat) {
|
|
@@ -157,15 +141,15 @@ ${repoMap}
|
|
|
157
141
|
spinner_1.spinner.stop();
|
|
158
142
|
// Add assistant response to history
|
|
159
143
|
messages.push({ role: 'assistant', content: response });
|
|
160
|
-
// Enhanced Multi-Agent Display
|
|
161
|
-
const segments = response.split(/(\[
|
|
144
|
+
// Enhanced Multi-Agent Display (Updated for Vertex AI ADK)
|
|
145
|
+
const segments = response.split(/(\[MatexCodeArchitect\]|\[SyntaxGuard\]|\[VisualAgent\]|\[CoreAgent\]|\[CrawlerAgent\]|\[DetailedResearch\]|\[MatexResearchCommander\])/);
|
|
162
146
|
let hasAgents = false;
|
|
163
147
|
for (let i = 0; i < segments.length; i++) {
|
|
164
148
|
const segment = segments[i].trim();
|
|
165
149
|
if (!segment)
|
|
166
150
|
continue;
|
|
167
|
-
if (segment === '[
|
|
168
|
-
agent_orchestrator_1.AgentOrchestrator.speak('
|
|
151
|
+
if (segment === '[MatexCodeArchitect]') {
|
|
152
|
+
agent_orchestrator_1.AgentOrchestrator.speak('Architect', segments[++i]?.split('[')[0].trim());
|
|
169
153
|
hasAgents = true;
|
|
170
154
|
}
|
|
171
155
|
else if (segment === '[SyntaxGuard]') {
|
|
@@ -180,6 +164,10 @@ ${repoMap}
|
|
|
180
164
|
agent_orchestrator_1.AgentOrchestrator.speak('Backend', segments[++i]?.split('[')[0].trim());
|
|
181
165
|
hasAgents = true;
|
|
182
166
|
}
|
|
167
|
+
else if (segment === '[MatexResearchCommander]' || segment === '[CrawlerAgent]' || segment === '[DetailedResearch]') {
|
|
168
|
+
agent_orchestrator_1.AgentOrchestrator.speak('Commander', segments[++i]?.split('[')[0].trim());
|
|
169
|
+
hasAgents = true;
|
|
170
|
+
}
|
|
183
171
|
else if (!hasAgents || i === segments.length - 1) {
|
|
184
172
|
// Final summary or fallback
|
|
185
173
|
if (segment.includes('`')) {
|
package/dist/commands/dev.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,yCAAoC;AACpC,kDAA0B;AAC1B,wDAAgC;AAChC,4CAAgD;AAChD,0CAA4D;AAC5D,8CAA2C;AAC3C,oEAAgE;AAChE,sDAAkD;AAErC,QAAA,UAAU,GAAG,IAAI,mBAAO,CAAC,KAAK,CAAC;KACvC,WAAW,CAAC,uDAAuD,CAAC;KACpE,MAAM,CAAC,qBAAqB,EAAE,
|
|
1
|
+
{"version":3,"file":"dev.js","sourceRoot":"","sources":["../../src/commands/dev.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-orchestrator.d.ts","sourceRoot":"","sources":["../../src/utils/agent-orchestrator.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,SAAS,GAAG,
|
|
1
|
+
{"version":3,"file":"agent-orchestrator.d.ts","sourceRoot":"","sources":["../../src/utils/agent-orchestrator.ts"],"names":[],"mappings":"AAEA,MAAM,MAAM,SAAS,GAAG,WAAW,GAAG,QAAQ,GAAG,UAAU,GAAG,SAAS,GAAG,QAAQ,GAAG,WAAW,CAAC;AAEjG,MAAM,WAAW,WAAW;IACxB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,CAAC;IACb,KAAK,EAAE,CAAC,IAAI,EAAE,MAAM,KAAK,MAAM,CAAC;CACnC;AAmCD,qBAAa,iBAAiB;IAC1B;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,SAAS,EAAE,OAAO,EAAE,MAAM;IAK7C;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE,SAAS;IAMhD;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAO,EAAE,MAAM;CAGlC"}
|
|
@@ -6,9 +6,9 @@ Object.defineProperty(exports, "__esModule", { value: true });
|
|
|
6
6
|
exports.AgentOrchestrator = void 0;
|
|
7
7
|
const chalk_1 = __importDefault(require("chalk"));
|
|
8
8
|
const AGENT_CONFIGS = {
|
|
9
|
-
|
|
10
|
-
name: '
|
|
11
|
-
icon: '
|
|
9
|
+
Architect: {
|
|
10
|
+
name: 'MatexCodeArchitect',
|
|
11
|
+
icon: '🧬',
|
|
12
12
|
color: chalk_1.default.blue,
|
|
13
13
|
},
|
|
14
14
|
Syntax: {
|
|
@@ -27,9 +27,14 @@ const AGENT_CONFIGS = {
|
|
|
27
27
|
color: chalk_1.default.cyan,
|
|
28
28
|
},
|
|
29
29
|
System: {
|
|
30
|
-
name: '
|
|
30
|
+
name: 'Matex_Orchestrator',
|
|
31
31
|
icon: '🧠',
|
|
32
32
|
color: chalk_1.default.white,
|
|
33
|
+
},
|
|
34
|
+
Commander: {
|
|
35
|
+
name: 'MatexResearchCommander',
|
|
36
|
+
icon: '🚀',
|
|
37
|
+
color: chalk_1.default.green,
|
|
33
38
|
}
|
|
34
39
|
};
|
|
35
40
|
class AgentOrchestrator {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"agent-orchestrator.js","sourceRoot":"","sources":["../../src/utils/agent-orchestrator.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAU1B,MAAM,aAAa,GAAmC;IAClD,
|
|
1
|
+
{"version":3,"file":"agent-orchestrator.js","sourceRoot":"","sources":["../../src/utils/agent-orchestrator.ts"],"names":[],"mappings":";;;;;;AAAA,kDAA0B;AAU1B,MAAM,aAAa,GAAmC;IAClD,SAAS,EAAE;QACP,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,eAAK,CAAC,IAAI;KACpB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,KAAK;QACX,KAAK,EAAE,eAAK,CAAC,MAAM;KACtB;IACD,QAAQ,EAAE;QACN,IAAI,EAAE,aAAa;QACnB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,eAAK,CAAC,OAAO;KACvB;IACD,OAAO,EAAE;QACL,IAAI,EAAE,WAAW;QACjB,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,eAAK,CAAC,IAAI;KACpB;IACD,MAAM,EAAE;QACJ,IAAI,EAAE,oBAAoB;QAC1B,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,eAAK,CAAC,KAAK;KACrB;IACD,SAAS,EAAE;QACP,IAAI,EAAE,wBAAwB;QAC9B,IAAI,EAAE,IAAI;QACV,KAAK,EAAE,eAAK,CAAC,KAAK;KACrB;CACJ,CAAC;AAEF,MAAa,iBAAiB;IAC1B;;OAEG;IACH,MAAM,CAAC,KAAK,CAAC,IAAe,EAAE,OAAe;QACzC,MAAM,MAAM,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACnC,OAAO,CAAC,GAAG,CAAC,KAAK,MAAM,CAAC,IAAI,IAAI,MAAM,CAAC,KAAK,CAAC,GAAG,MAAM,CAAC,IAAI,GAAG,CAAC,IAAI,eAAK,CAAC,KAAK,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC;IAC/F,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,UAAU,CAAC,IAAe,EAAE,EAAa;QAC5C,MAAM,OAAO,GAAG,aAAa,CAAC,IAAI,CAAC,CAAC;QACpC,MAAM,KAAK,GAAG,aAAa,CAAC,EAAE,CAAC,CAAC;QAChC,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,QAAQ,OAAO,CAAC,IAAI,MAAM,KAAK,CAAC,IAAI,gBAAgB,KAAK,CAAC,IAAI,KAAK,CAAC,CAAC,CAAC;IACjG,CAAC;IAED;;OAEG;IACH,MAAM,CAAC,QAAQ,CAAC,OAAe;QAC3B,OAAO,CAAC,GAAG,CAAC,eAAK,CAAC,IAAI,CAAC,KAAK,CAAC,OAAO,OAAO,EAAE,CAAC,CAAC,CAAC;IACpD,CAAC;CACJ;AAxBD,8CAwBC"}
|
|
@@ -8,6 +8,10 @@ export interface CommandBlock {
|
|
|
8
8
|
* Extract executable commands from AI response
|
|
9
9
|
*/
|
|
10
10
|
export declare function extractCommands(response: string): CommandBlock[];
|
|
11
|
+
/**
|
|
12
|
+
* Check if command is safe to auto-execute
|
|
13
|
+
*/
|
|
14
|
+
export declare function isSafeAutoCommand(command: string): boolean;
|
|
11
15
|
/**
|
|
12
16
|
* Ask user for permission to execute command
|
|
13
17
|
*/
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-executor.d.ts","sourceRoot":"","sources":["../../src/utils/command-executor.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAsBhE;AA0BD;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,
|
|
1
|
+
{"version":3,"file":"command-executor.d.ts","sourceRoot":"","sources":["../../src/utils/command-executor.ts"],"names":[],"mappings":"AAOA,MAAM,WAAW,YAAY;IACzB,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,SAAS,EAAE,OAAO,CAAC;IACnB,WAAW,CAAC,EAAE,MAAM,CAAC;CACxB;AAED;;GAEG;AACH,wBAAgB,eAAe,CAAC,QAAQ,EAAE,MAAM,GAAG,YAAY,EAAE,CAsBhE;AA0BD;;GAEG;AACH,wBAAgB,iBAAiB,CAAC,OAAO,EAAE,MAAM,GAAG,OAAO,CAI1D;AAED;;GAEG;AACH,wBAAsB,aAAa,CAAC,OAAO,EAAE,YAAY,GAAG,OAAO,CAAC,OAAO,CAAC,CA4B3E;AAED;;GAEG;AACH,wBAAsB,cAAc,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,CAAC,EAAE,MAAM,GAAG,OAAO,CAAC;IAAE,MAAM,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,MAAM,CAAA;CAAE,CAAC,CAYjH;AAED;;GAEG;AACH,MAAM,WAAW,eAAe;IAC5B,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,EAAE,OAAO,CAAC;IAClB,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,KAAK,CAAC,EAAE,MAAM,CAAC;CAClB;AAED;;GAEG;AACH,wBAAsB,qBAAqB,CAAC,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,eAAe,CAAC,CA4CtF;AAED;;GAEG;AACH,qBAAa,cAAc;IACvB,OAAO,CAAC,OAAO,CAAqE;IAEpF,GAAG,CAAC,OAAO,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO;IAQrC,UAAU;iBAVwB,MAAM;mBAAa,IAAI;iBAAW,OAAO;;IAc3E,KAAK;CAGR;AAED,eAAO,MAAM,cAAc,gBAAuB,CAAC"}
|
|
@@ -5,6 +5,7 @@ var __importDefault = (this && this.__importDefault) || function (mod) {
|
|
|
5
5
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
6
6
|
exports.commandHistory = exports.CommandHistory = void 0;
|
|
7
7
|
exports.extractCommands = extractCommands;
|
|
8
|
+
exports.isSafeAutoCommand = isSafeAutoCommand;
|
|
8
9
|
exports.askPermission = askPermission;
|
|
9
10
|
exports.executeCommand = executeCommand;
|
|
10
11
|
exports.executeWithPermission = executeWithPermission;
|
|
@@ -57,12 +58,25 @@ function isDangerousCommand(command) {
|
|
|
57
58
|
];
|
|
58
59
|
return dangerousPatterns.some(pattern => pattern.test(command));
|
|
59
60
|
}
|
|
61
|
+
/**
|
|
62
|
+
* Check if command is safe to auto-execute
|
|
63
|
+
*/
|
|
64
|
+
function isSafeAutoCommand(command) {
|
|
65
|
+
const safePrefixes = ['cat ', 'ls ', 'grep ', 'find ', 'pwd', 'echo ', 'read '];
|
|
66
|
+
const trimmed = command.trim();
|
|
67
|
+
return safePrefixes.some(prefix => trimmed.startsWith(prefix));
|
|
68
|
+
}
|
|
60
69
|
/**
|
|
61
70
|
* Ask user for permission to execute command
|
|
62
71
|
*/
|
|
63
72
|
async function askPermission(command) {
|
|
64
73
|
// Clean Codex-style Prompt with Multi-Agent Iconography
|
|
65
74
|
console.log();
|
|
75
|
+
// Check for Safe Auto-Execution
|
|
76
|
+
if (isSafeAutoCommand(command.code)) {
|
|
77
|
+
console.log(chalk_1.default.cyan('⚡ Auto-Executing Safe Command: ') + chalk_1.default.white(command.code));
|
|
78
|
+
return true;
|
|
79
|
+
}
|
|
66
80
|
console.log(chalk_1.default.yellow('🛡️ SyntaxGuard ') + chalk_1.default.white('Analysis:'));
|
|
67
81
|
console.log(chalk_1.default.gray('> ') + chalk_1.default.white(command.code));
|
|
68
82
|
console.log();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"command-executor.js","sourceRoot":"","sources":["../../src/utils/command-executor.ts"],"names":[],"mappings":";;;;;;AAiBA,0CAsBC;AA6BD,
|
|
1
|
+
{"version":3,"file":"command-executor.js","sourceRoot":"","sources":["../../src/utils/command-executor.ts"],"names":[],"mappings":"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"}
|
package/dist/utils/config.js
CHANGED
package/dist/utils/config.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,uCAAyB;AAQzB,MAAa,aAAa;IAItB;QACI,IAAI,CAAC,SAAS,GAAG,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,OAAO,EAAE,EAAE,QAAQ,CAAC,CAAC;QACnD,IAAI,CAAC,UAAU,GAAG,IAAI,CAAC,IAAI,CAAC,IAAI,CAAC,SAAS,EAAE,aAAa,CAAC,CAAC;QAE3D,iCAAiC;QACjC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,SAAS,CAAC,EAAE,CAAC;YACjC,EAAE,CAAC,SAAS,CAAC,IAAI,CAAC,SAAS,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;QACtD,CAAC;IACL,CAAC;IAED;;OAEG;IACK,UAAU;QACd,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,IAAI,CAAC,UAAU,CAAC,EAAE,CAAC;YAClC,OAAO,EAAE,CAAC;QACd,CAAC;QAED,IAAI,CAAC;YACD,MAAM,IAAI,GAAG,EAAE,CAAC,YAAY,CAAC,IAAI,CAAC,UAAU,EAAE,OAAO,CAAC,CAAC;YACvD,OAAO,IAAI,CAAC,KAAK,CAAC,IAAI,CAAC,CAAC;QAC5B,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,OAAO,EAAE,CAAC;QACd,CAAC;IACL,CAAC;IAED;;OAEG;IACK,UAAU,CAAC,MAAc;QAC7B,EAAE,CAAC,aAAa,CAAC,IAAI,CAAC,UAAU,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,EAAE,OAAO,CAAC,CAAC;IAChF,CAAC;IAED;;OAEG;IACH,SAAS,CAAC,MAAc;QACpB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,CAAC,MAAM,GAAG,MAAM,CAAC;QACvB,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,SAAS;QACL,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,MAAM,CAAC;IACpC,CAAC;IAED;;OAEG;IACH,eAAe,CAAC,KAAa;QACzB,MAAM,MAAM,GAAG,IAAI,CAAC,UAAU,EAAE,CAAC;QACjC,MAAM,CAAC,YAAY,GAAG,KAAK,CAAC;QAC5B,IAAI,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC;IAC5B,CAAC;IAED;;OAEG;IACH,eAAe;QACX,OAAO,IAAI,CAAC,UAAU,EAAE,CAAC,YAAY,IAAI,
|
|
1
|
+
{"version":3,"file":"config.js","sourceRoot":"","sources":["../../src/utils/config.ts"],"names":[],"mappings":"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"}
|
|
@@ -9,7 +9,7 @@ export declare class RepoMapper {
|
|
|
9
9
|
private ignoreList;
|
|
10
10
|
constructor(rootPath: string);
|
|
11
11
|
/**
|
|
12
|
-
* Generate a hierarchical map of the repository
|
|
12
|
+
* Generate a hierarchical map of the repository with deep entry-point analysis
|
|
13
13
|
*/
|
|
14
14
|
generateMap(): Promise<string>;
|
|
15
15
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-mapper.d.ts","sourceRoot":"","sources":["../../src/utils/repo-mapper.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAGhB;gBAEU,QAAQ,EAAE,MAAM;IAI5B;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;
|
|
1
|
+
{"version":3,"file":"repo-mapper.d.ts","sourceRoot":"","sources":["../../src/utils/repo-mapper.ts"],"names":[],"mappings":"AAIA,MAAM,WAAW,QAAQ;IACrB,IAAI,EAAE,MAAM,CAAC;IACb,IAAI,EAAE,MAAM,GAAG,WAAW,CAAC;IAC3B,QAAQ,CAAC,EAAE,QAAQ,EAAE,CAAC;IACtB,OAAO,CAAC,EAAE,MAAM,CAAC;CACpB;AAED,qBAAa,UAAU;IACnB,OAAO,CAAC,QAAQ,CAAS;IACzB,OAAO,CAAC,UAAU,CAGhB;gBAEU,QAAQ,EAAE,MAAM;IAI5B;;OAEG;IACU,WAAW,IAAI,OAAO,CAAC,MAAM,CAAC;IAmB3C;;OAEG;IACH,OAAO,CAAC,aAAa;IAmDrB;;;OAGG;IACH,OAAO,CAAC,cAAc;IAiCtB;;OAEG;IACH,OAAO,CAAC,UAAU;CAiBrB"}
|
|
@@ -46,12 +46,22 @@ class RepoMapper {
|
|
|
46
46
|
this.rootPath = rootPath;
|
|
47
47
|
}
|
|
48
48
|
/**
|
|
49
|
-
* Generate a hierarchical map of the repository
|
|
49
|
+
* Generate a hierarchical map of the repository with deep entry-point analysis
|
|
50
50
|
*/
|
|
51
51
|
async generateMap() {
|
|
52
|
-
agent_orchestrator_1.AgentOrchestrator.speak('System', `
|
|
52
|
+
agent_orchestrator_1.AgentOrchestrator.speak('System', `God-Mode Research: Indexing ${this.rootPath}...`);
|
|
53
|
+
// 1. Identify Entry Points
|
|
54
|
+
const entryPoints = ['README.md', 'package.json', 'index.ts', 'App.tsx', 'main.go', 'requirements.txt'];
|
|
55
|
+
let entryPointContext = '\n--- CRITICAL PROJECT CONTEXT ---\n';
|
|
56
|
+
for (const file of entryPoints) {
|
|
57
|
+
const fullPath = path.join(this.rootPath, file);
|
|
58
|
+
if (fs.existsSync(fullPath)) {
|
|
59
|
+
const content = fs.readFileSync(fullPath, 'utf-8').slice(0, 5000); // 5KB limit for entry points
|
|
60
|
+
entryPointContext += `\nFILE: ${file}\n${content}\n----------------\n`;
|
|
61
|
+
}
|
|
62
|
+
}
|
|
53
63
|
const tree = this.scanDirectory(this.rootPath, 0);
|
|
54
|
-
return this.formatTree(tree);
|
|
64
|
+
return entryPointContext + '\n--- DIRECTORY STRUCTURE ---\n' + this.formatTree(tree);
|
|
55
65
|
}
|
|
56
66
|
/**
|
|
57
67
|
* Recursive directory scan
|
|
@@ -60,10 +70,22 @@ class RepoMapper {
|
|
|
60
70
|
const stats = fs.statSync(currentPath);
|
|
61
71
|
const name = path.basename(currentPath);
|
|
62
72
|
if (stats.isFile()) {
|
|
73
|
+
let summary = this.extractSummary(currentPath);
|
|
74
|
+
// Auto-read small files (< 10KB) for "Crawler" capability
|
|
75
|
+
if (stats.size < 10240) {
|
|
76
|
+
try {
|
|
77
|
+
const content = fs.readFileSync(currentPath, 'utf-8');
|
|
78
|
+
// Add content preview to summary
|
|
79
|
+
summary += `\n--- CONTENT START ---\n${content}\n--- CONTENT END ---`;
|
|
80
|
+
}
|
|
81
|
+
catch (e) {
|
|
82
|
+
// Ignore read errors
|
|
83
|
+
}
|
|
84
|
+
}
|
|
63
85
|
return {
|
|
64
86
|
path: currentPath,
|
|
65
87
|
type: 'file',
|
|
66
|
-
summary:
|
|
88
|
+
summary: summary
|
|
67
89
|
};
|
|
68
90
|
}
|
|
69
91
|
// It's a directory
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"repo-mapper.js","sourceRoot":"","sources":["../../src/utils/repo-mapper.ts"],"names":[],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,uCAAyB;AACzB,2CAA6B;AAC7B,6DAAyD;AASzD,MAAa,UAAU;IAOnB,YAAY,QAAgB;QALpB,eAAU,GAAa;YAC3B,MAAM,EAAE,cAAc,EAAE,MAAM,EAAE,OAAO,EAAE,OAAO,EAAE,WAAW;YAC7D,UAAU,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,QAAQ;SACtD,CAAC;QAGE,IAAI,CAAC,QAAQ,GAAG,QAAQ,CAAC;IAC7B,CAAC;IAED;;OAEG;IACI,KAAK,CAAC,WAAW;QACpB,sCAAiB,CAAC,KAAK,CAAC,QAAQ,EAAE,
|
|
1
|
+
{"version":3,"file":"repo-mapper.js","sourceRoot":"","sources":["../../src/utils/repo-mapper.ts"],"names":[],"mappings":"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"}
|
package/package.json
CHANGED
package/src/commands/ask.ts
CHANGED
|
@@ -7,7 +7,7 @@ import { spinner } from '../utils/spinner';
|
|
|
7
7
|
export const askCommand = new Command('ask')
|
|
8
8
|
.description('Ask a single question to MATEX AI')
|
|
9
9
|
.argument('<question>', 'Your question')
|
|
10
|
-
.option('-m, --model <model>', 'AI model to use (matexcodex, matexai, elite, matexspirit)', configManager.getDefaultModel())
|
|
10
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', configManager.getDefaultModel())
|
|
11
11
|
.option('-t, --temperature <number>', 'Temperature (0-1)', '0.7')
|
|
12
12
|
.option('--max-tokens <number>', 'Maximum tokens in response', '4000')
|
|
13
13
|
.action(async (question: string, options: any) => {
|
package/src/commands/chat.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { RepoMapper } from '../utils/repo-mapper';
|
|
|
9
9
|
|
|
10
10
|
export const chatCommand = new Command('chat')
|
|
11
11
|
.description('Start an interactive chat session with MATEX AI')
|
|
12
|
-
.option('-m, --model <model>', 'AI model to use (matexcodex, matexai, elite, matexspirit)', configManager.getDefaultModel())
|
|
12
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', configManager.getDefaultModel())
|
|
13
13
|
.option('--no-execute', 'Disable auto-prompt for command execution')
|
|
14
14
|
.action(async (options: any) => {
|
|
15
15
|
try {
|
|
@@ -40,44 +40,39 @@ export const chatCommand = new Command('chat')
|
|
|
40
40
|
const messages: ChatMessage[] = [
|
|
41
41
|
{
|
|
42
42
|
role: 'system',
|
|
43
|
-
content:
|
|
44
|
-
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
**
|
|
51
|
-
- **
|
|
52
|
-
|
|
53
|
-
|
|
54
|
-
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
- **
|
|
58
|
-
- **
|
|
59
|
-
- **
|
|
60
|
-
|
|
61
|
-
|
|
43
|
+
content: `## 🧬 SYSTEM IDENTITY & MISSION
|
|
44
|
+
You are the **Matex Research Commander** (🚀) and **Matex Code Architect** (🧬), an elite technical swarm.
|
|
45
|
+
You operate under the **OODA Loop** with a distinctive Aussie Bro personality.
|
|
46
|
+
|
|
47
|
+
### 🧠 CORE PERSONA: RESEARCH COMMANDER (The Matex Vibe)
|
|
48
|
+
- **Identity:** Aussie Bro expert developer. Technically elite, confident, high-energy.
|
|
49
|
+
- **Tone:** Helpful partner, not a robotic servant.
|
|
50
|
+
- **Vocabulary:** Use authentic Aussie slang naturally (e.g., "Too easy," "Ripper," "Mate," "Legend," "Give it a burl").
|
|
51
|
+
- **Formatting:** Use emojis purposefully (🚀, 🔥, 🧠, 🕵️♂️) to keep engagement high.
|
|
52
|
+
|
|
53
|
+
### 🛠️ OPERATIONAL PROTOCOLS (The Loop)
|
|
54
|
+
1. **PHASE 1: RECON (Search & Verify)**: You MUST use your whitelisted tools (\`cat\`, \`grep\`, \`find\`) to find the latest documentation and project facts. NEVER guess. Verify.
|
|
55
|
+
2. **PHASE 2: SYNTHESIS (The Brain)**: Don't just dump code. Synthesize. "Righto! React 19 just dropped. The big change is the Compiler..."
|
|
56
|
+
3. **PHASE 3: RESPONSE (The Delivery)**:
|
|
57
|
+
- **The Hook:** A high-energy, friendly Aussie opener. ("G'day legend!", "I'm on it!")
|
|
58
|
+
- **The Meat:** The technical answer/code.
|
|
59
|
+
- **The Outro:** A supportive closing. ("Give that a crack!", "You got this!")
|
|
60
|
+
|
|
61
|
+
### 🧬 CODE ARCHITECT STANDARDS
|
|
62
|
+
- **Role:** Take the technical plan from the Commander and BUILD.
|
|
63
|
+
- **No Placeholders:** Never write \`// code goes here\`. Write full implementation.
|
|
64
|
+
- **Modern Syntax:** Latest stable syntax only.
|
|
65
|
+
- **Safety First:** Always include error handling and type-safety.
|
|
66
|
+
|
|
67
|
+
### 🛠️ ENVIRONMENT CONTEXT
|
|
68
|
+
${repoMap}`
|
|
62
69
|
}
|
|
63
70
|
];
|
|
64
71
|
|
|
65
72
|
// Chat loop
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
|
|
69
|
-
spinner.start('Thinking...');
|
|
70
|
-
const response = await client.chat({
|
|
71
|
-
messages,
|
|
72
|
-
model: 'matexcodex',
|
|
73
|
-
temperature: 0.3,
|
|
74
|
-
max_tokens: 8000,
|
|
75
|
-
stream: false,
|
|
76
|
-
});
|
|
77
|
-
spinner.stop();
|
|
78
|
-
|
|
79
|
-
// Display response
|
|
80
|
-
console.log(chalk.cyan(loopCount > 1 ? `🧠 MATEX (Step ${loopCount}):` : '🧠 MATEX:'), chalk.white(response));
|
|
73
|
+
// Ready for chat
|
|
74
|
+
console.log(chalk.green('\n🧠 MATEX Codex Core Ready.'));
|
|
75
|
+
console.log(chalk.gray('Ask me anything about your codebase...'));
|
|
81
76
|
|
|
82
77
|
// Chat loop
|
|
83
78
|
while (true) {
|
|
@@ -132,16 +127,16 @@ ${repoMap}
|
|
|
132
127
|
// Add assistant response to history
|
|
133
128
|
messages.push({ role: 'assistant', content: response });
|
|
134
129
|
|
|
135
|
-
// Enhanced Multi-Agent Display
|
|
136
|
-
const segments = response.split(/(\[
|
|
130
|
+
// Enhanced Multi-Agent Display (Updated for Vertex AI ADK)
|
|
131
|
+
const segments = response.split(/(\[MatexCodeArchitect\]|\[SyntaxGuard\]|\[VisualAgent\]|\[CoreAgent\]|\[CrawlerAgent\]|\[DetailedResearch\]|\[MatexResearchCommander\])/);
|
|
137
132
|
let hasAgents = false;
|
|
138
133
|
|
|
139
134
|
for (let i = 0; i < segments.length; i++) {
|
|
140
135
|
const segment = segments[i].trim();
|
|
141
136
|
if (!segment) continue;
|
|
142
137
|
|
|
143
|
-
if (segment === '[
|
|
144
|
-
AgentOrchestrator.speak('
|
|
138
|
+
if (segment === '[MatexCodeArchitect]') {
|
|
139
|
+
AgentOrchestrator.speak('Architect', segments[++i]?.split('[')[0].trim());
|
|
145
140
|
hasAgents = true;
|
|
146
141
|
} else if (segment === '[SyntaxGuard]') {
|
|
147
142
|
AgentOrchestrator.speak('Syntax', segments[++i]?.split('[')[0].trim());
|
|
@@ -152,6 +147,9 @@ ${repoMap}
|
|
|
152
147
|
} else if (segment === '[CoreAgent]') {
|
|
153
148
|
AgentOrchestrator.speak('Backend', segments[++i]?.split('[')[0].trim());
|
|
154
149
|
hasAgents = true;
|
|
150
|
+
} else if (segment === '[MatexResearchCommander]' || segment === '[CrawlerAgent]' || segment === '[DetailedResearch]') {
|
|
151
|
+
AgentOrchestrator.speak('Commander', segments[++i]?.split('[')[0].trim());
|
|
152
|
+
hasAgents = true;
|
|
155
153
|
} else if (!hasAgents || i === segments.length - 1) {
|
|
156
154
|
// Final summary or fallback
|
|
157
155
|
if (segment.includes('`')) {
|
package/src/commands/config.ts
CHANGED
|
@@ -66,7 +66,7 @@ configCommand
|
|
|
66
66
|
.command('set-model <model>')
|
|
67
67
|
.description('Set default AI model')
|
|
68
68
|
.action((model: string) => {
|
|
69
|
-
const validModels = ['matexcodex', 'matexai', 'elite', 'matexspirit'];
|
|
69
|
+
const validModels = ['matexcore', 'matexcodex', 'matexai', 'elite', 'matexspirit'];
|
|
70
70
|
|
|
71
71
|
if (!validModels.includes(model.toLowerCase())) {
|
|
72
72
|
console.error(chalk.red(`❌ Invalid model. Choose from: ${validModels.join(', ')}`));
|
package/src/commands/dev.ts
CHANGED
|
@@ -9,7 +9,7 @@ import { RepoMapper } from '../utils/repo-mapper';
|
|
|
9
9
|
|
|
10
10
|
export const devCommand = new Command('dev')
|
|
11
11
|
.description('Start interactive development session with MATEXCodex')
|
|
12
|
-
.option('-m, --model <model>', 'AI model to use
|
|
12
|
+
.option('-m, --model <model>', 'AI model to use (matexcore, matexcodex, matexai, elite, matexspirit)', configManager.getDefaultModel())
|
|
13
13
|
.option('--no-execute', 'Disable auto-prompt for command execution')
|
|
14
14
|
.action(async (options: any) => {
|
|
15
15
|
try {
|
|
@@ -41,43 +41,26 @@ export const devCommand = new Command('dev')
|
|
|
41
41
|
const messages: ChatMessage[] = [
|
|
42
42
|
{
|
|
43
43
|
role: 'system',
|
|
44
|
-
content:
|
|
45
|
-
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
|
|
50
|
-
|
|
51
|
-
|
|
52
|
-
|
|
53
|
-
- **
|
|
54
|
-
- **
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
- **PLANNING**: Always outline your plan before writing code.
|
|
59
|
-
- **SMART CHUNKING**: If you need to read a file details, ask for it. Do not hallucinate content.
|
|
60
|
-
- **SAFETY**: All file operations require approval (approximated by user prompts).
|
|
61
|
-
- **INTERNAL DIALOG**: [Role] Thought: ...`
|
|
44
|
+
content: `## 🧬 SYSTEM IDENTITY: MATEX CODEX DEV MASTER
|
|
45
|
+
You are the **Matex Research Commander** (🚀) and **Matex Code Architect** (🧬).
|
|
46
|
+
You operate as a high-fidelity engineering swarm with an Aussie Bro persona.
|
|
47
|
+
|
|
48
|
+
### 🧠 CORE PERSONA: RESEARCH COMMANDER
|
|
49
|
+
- **Vibe:** Aussie expert developer. "Too easy," "Ripper," "Mate."
|
|
50
|
+
- **Duty:** Verify all facts before building. Use whitelisted tools (\`cat\`, \`grep\`, \`ls\`, \`find\`) autonomously.
|
|
51
|
+
|
|
52
|
+
### 🧬 CODE ARCHITECT STANDARDS
|
|
53
|
+
- **Duty:** Build production-ready, modular, type-safe code.
|
|
54
|
+
- **Rules:** No placeholders. Modern syntax only. Safety first.
|
|
55
|
+
|
|
56
|
+
### 🛠️ ENVIRONMENT CONTEXT
|
|
57
|
+
${repoMap}`
|
|
62
58
|
}
|
|
63
59
|
];
|
|
64
60
|
|
|
65
|
-
|
|
66
|
-
|
|
67
|
-
|
|
68
|
-
spinner.start('Thinking...');
|
|
69
|
-
const response = await client.chat({
|
|
70
|
-
messages,
|
|
71
|
-
model: options.model,
|
|
72
|
-
temperature: 0.3,
|
|
73
|
-
max_tokens: 8000,
|
|
74
|
-
stream: false,
|
|
75
|
-
});
|
|
76
|
-
spinner.stop();
|
|
77
|
-
|
|
78
|
-
// Display response
|
|
79
|
-
console.log(chalk.green(`\n🧠 MATEX${loopCount > 1 ? ` (Step ${loopCount})` : ''}:`));
|
|
80
|
-
console.log(chalk.white(response));
|
|
61
|
+
// Ready for user input
|
|
62
|
+
console.log(chalk.green('\n🧠 MATEX Codex Core Ready.'));
|
|
63
|
+
console.log(chalk.gray('State your request to begin...'));
|
|
81
64
|
|
|
82
65
|
// Interactive loop
|
|
83
66
|
let continueChat = true;
|
|
@@ -137,16 +120,16 @@ ${repoMap}
|
|
|
137
120
|
// Add assistant response to history
|
|
138
121
|
messages.push({ role: 'assistant', content: response });
|
|
139
122
|
|
|
140
|
-
// Enhanced Multi-Agent Display
|
|
141
|
-
const segments = response.split(/(\[
|
|
123
|
+
// Enhanced Multi-Agent Display (Updated for Vertex AI ADK)
|
|
124
|
+
const segments = response.split(/(\[MatexCodeArchitect\]|\[SyntaxGuard\]|\[VisualAgent\]|\[CoreAgent\]|\[CrawlerAgent\]|\[DetailedResearch\]|\[MatexResearchCommander\])/);
|
|
142
125
|
let hasAgents = false;
|
|
143
126
|
|
|
144
127
|
for (let i = 0; i < segments.length; i++) {
|
|
145
128
|
const segment = segments[i].trim();
|
|
146
129
|
if (!segment) continue;
|
|
147
130
|
|
|
148
|
-
if (segment === '[
|
|
149
|
-
AgentOrchestrator.speak('
|
|
131
|
+
if (segment === '[MatexCodeArchitect]') {
|
|
132
|
+
AgentOrchestrator.speak('Architect', segments[++i]?.split('[')[0].trim());
|
|
150
133
|
hasAgents = true;
|
|
151
134
|
} else if (segment === '[SyntaxGuard]') {
|
|
152
135
|
AgentOrchestrator.speak('Syntax', segments[++i]?.split('[')[0].trim());
|
|
@@ -157,6 +140,9 @@ ${repoMap}
|
|
|
157
140
|
} else if (segment === '[CoreAgent]') {
|
|
158
141
|
AgentOrchestrator.speak('Backend', segments[++i]?.split('[')[0].trim());
|
|
159
142
|
hasAgents = true;
|
|
143
|
+
} else if (segment === '[MatexResearchCommander]' || segment === '[CrawlerAgent]' || segment === '[DetailedResearch]') {
|
|
144
|
+
AgentOrchestrator.speak('Commander', segments[++i]?.split('[')[0].trim());
|
|
145
|
+
hasAgents = true;
|
|
160
146
|
} else if (!hasAgents || i === segments.length - 1) {
|
|
161
147
|
// Final summary or fallback
|
|
162
148
|
if (segment.includes('`')) {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import chalk from 'chalk';
|
|
2
2
|
|
|
3
|
-
export type AgentRole = '
|
|
3
|
+
export type AgentRole = 'Architect' | 'Syntax' | 'Frontend' | 'Backend' | 'System' | 'Commander';
|
|
4
4
|
|
|
5
5
|
export interface AgentConfig {
|
|
6
6
|
name: string;
|
|
@@ -9,9 +9,9 @@ export interface AgentConfig {
|
|
|
9
9
|
}
|
|
10
10
|
|
|
11
11
|
const AGENT_CONFIGS: Record<AgentRole, AgentConfig> = {
|
|
12
|
-
|
|
13
|
-
name: '
|
|
14
|
-
icon: '
|
|
12
|
+
Architect: {
|
|
13
|
+
name: 'MatexCodeArchitect',
|
|
14
|
+
icon: '🧬',
|
|
15
15
|
color: chalk.blue,
|
|
16
16
|
},
|
|
17
17
|
Syntax: {
|
|
@@ -30,9 +30,14 @@ const AGENT_CONFIGS: Record<AgentRole, AgentConfig> = {
|
|
|
30
30
|
color: chalk.cyan,
|
|
31
31
|
},
|
|
32
32
|
System: {
|
|
33
|
-
name: '
|
|
33
|
+
name: 'Matex_Orchestrator',
|
|
34
34
|
icon: '🧠',
|
|
35
35
|
color: chalk.white,
|
|
36
|
+
},
|
|
37
|
+
Commander: {
|
|
38
|
+
name: 'MatexResearchCommander',
|
|
39
|
+
icon: '🚀',
|
|
40
|
+
color: chalk.green,
|
|
36
41
|
}
|
|
37
42
|
};
|
|
38
43
|
|
|
@@ -63,12 +63,28 @@ function isDangerousCommand(command: string): boolean {
|
|
|
63
63
|
return dangerousPatterns.some(pattern => pattern.test(command));
|
|
64
64
|
}
|
|
65
65
|
|
|
66
|
+
/**
|
|
67
|
+
* Check if command is safe to auto-execute
|
|
68
|
+
*/
|
|
69
|
+
export function isSafeAutoCommand(command: string): boolean {
|
|
70
|
+
const safePrefixes = ['cat ', 'ls ', 'grep ', 'find ', 'pwd', 'echo ', 'read '];
|
|
71
|
+
const trimmed = command.trim();
|
|
72
|
+
return safePrefixes.some(prefix => trimmed.startsWith(prefix));
|
|
73
|
+
}
|
|
74
|
+
|
|
66
75
|
/**
|
|
67
76
|
* Ask user for permission to execute command
|
|
68
77
|
*/
|
|
69
78
|
export async function askPermission(command: CommandBlock): Promise<boolean> {
|
|
70
79
|
// Clean Codex-style Prompt with Multi-Agent Iconography
|
|
71
80
|
console.log();
|
|
81
|
+
|
|
82
|
+
// Check for Safe Auto-Execution
|
|
83
|
+
if (isSafeAutoCommand(command.code)) {
|
|
84
|
+
console.log(chalk.cyan('⚡ Auto-Executing Safe Command: ') + chalk.white(command.code));
|
|
85
|
+
return true;
|
|
86
|
+
}
|
|
87
|
+
|
|
72
88
|
console.log(chalk.yellow('🛡️ SyntaxGuard ') + chalk.white('Analysis:'));
|
|
73
89
|
console.log(chalk.gray('> ') + chalk.white(command.code));
|
|
74
90
|
console.log();
|
package/src/utils/config.ts
CHANGED
package/src/utils/repo-mapper.ts
CHANGED
|
@@ -21,12 +21,25 @@ export class RepoMapper {
|
|
|
21
21
|
}
|
|
22
22
|
|
|
23
23
|
/**
|
|
24
|
-
* Generate a hierarchical map of the repository
|
|
24
|
+
* Generate a hierarchical map of the repository with deep entry-point analysis
|
|
25
25
|
*/
|
|
26
26
|
public async generateMap(): Promise<string> {
|
|
27
|
-
AgentOrchestrator.speak('System', `
|
|
27
|
+
AgentOrchestrator.speak('System', `God-Mode Research: Indexing ${this.rootPath}...`);
|
|
28
|
+
|
|
29
|
+
// 1. Identify Entry Points
|
|
30
|
+
const entryPoints = ['README.md', 'package.json', 'index.ts', 'App.tsx', 'main.go', 'requirements.txt'];
|
|
31
|
+
let entryPointContext = '\n--- CRITICAL PROJECT CONTEXT ---\n';
|
|
32
|
+
|
|
33
|
+
for (const file of entryPoints) {
|
|
34
|
+
const fullPath = path.join(this.rootPath, file);
|
|
35
|
+
if (fs.existsSync(fullPath)) {
|
|
36
|
+
const content = fs.readFileSync(fullPath, 'utf-8').slice(0, 5000); // 5KB limit for entry points
|
|
37
|
+
entryPointContext += `\nFILE: ${file}\n${content}\n----------------\n`;
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
|
|
28
41
|
const tree = this.scanDirectory(this.rootPath, 0);
|
|
29
|
-
return this.formatTree(tree);
|
|
42
|
+
return entryPointContext + '\n--- DIRECTORY STRUCTURE ---\n' + this.formatTree(tree);
|
|
30
43
|
}
|
|
31
44
|
|
|
32
45
|
/**
|
|
@@ -37,10 +50,23 @@ export class RepoMapper {
|
|
|
37
50
|
const name = path.basename(currentPath);
|
|
38
51
|
|
|
39
52
|
if (stats.isFile()) {
|
|
53
|
+
let summary = this.extractSummary(currentPath);
|
|
54
|
+
|
|
55
|
+
// Auto-read small files (< 10KB) for "Crawler" capability
|
|
56
|
+
if (stats.size < 10240) {
|
|
57
|
+
try {
|
|
58
|
+
const content = fs.readFileSync(currentPath, 'utf-8');
|
|
59
|
+
// Add content preview to summary
|
|
60
|
+
summary += `\n--- CONTENT START ---\n${content}\n--- CONTENT END ---`;
|
|
61
|
+
} catch (e) {
|
|
62
|
+
// Ignore read errors
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
|
|
40
66
|
return {
|
|
41
67
|
path: currentPath,
|
|
42
68
|
type: 'file',
|
|
43
|
-
summary:
|
|
69
|
+
summary: summary
|
|
44
70
|
};
|
|
45
71
|
}
|
|
46
72
|
|