phaibel 4.0.7 → 4.0.21
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 +229 -245
- package/dist/commands/chat.d.ts +5 -2
- package/dist/commands/chat.d.ts.map +1 -1
- package/dist/commands/chat.js +168 -172
- package/dist/commands/chat.js.map +1 -1
- package/dist/commands/cron.d.ts.map +1 -1
- package/dist/commands/cron.js +1 -0
- package/dist/commands/cron.js.map +1 -1
- package/dist/commands/init.d.ts.map +1 -1
- package/dist/commands/init.js +54 -52
- package/dist/commands/init.js.map +1 -1
- package/dist/config.js +2 -2
- package/dist/config.js.map +1 -1
- package/dist/entities/entity-summary.js +3 -3
- package/dist/entities/entity-type-config.d.ts +3 -0
- package/dist/entities/entity-type-config.d.ts.map +1 -1
- package/dist/entities/entity-type-config.js +67 -1
- package/dist/entities/entity-type-config.js.map +1 -1
- package/dist/entities/entity-types-defaults.d.ts.map +1 -1
- package/dist/entities/entity-types-defaults.js +2 -0
- package/dist/entities/entity-types-defaults.js.map +1 -1
- package/dist/entities/spawner.d.ts.map +1 -1
- package/dist/entities/spawner.js +4 -2
- package/dist/entities/spawner.js.map +1 -1
- package/dist/feral/catalog/entity-catalog-source.js +31 -31
- package/dist/feral/node-code/abstract-node-code.js +1 -1
- package/dist/feral/node-code/abstract-node-code.js.map +1 -1
- package/dist/feral/node-code/data/set-context-value-node-code.d.ts.map +1 -1
- package/dist/feral/node-code/data/set-context-value-node-code.js +10 -1
- package/dist/feral/node-code/data/set-context-value-node-code.js.map +1 -1
- package/dist/feral/node-code/entity/create-entity-type-node-code.js +20 -20
- package/dist/feral/node-code/entity/load-vault-context-node-code.d.ts.map +1 -1
- package/dist/feral/node-code/entity/load-vault-context-node-code.js +7 -15
- package/dist/feral/node-code/entity/load-vault-context-node-code.js.map +1 -1
- package/dist/feral/node-code/entity/update-entity-type-node-code.js +20 -20
- package/dist/feral/node-code/input/prompt-input-node-code.d.ts.map +1 -1
- package/dist/feral/node-code/input/prompt-input-node-code.js +6 -0
- package/dist/feral/node-code/input/prompt-input-node-code.js.map +1 -1
- package/dist/feral/node-code/input/prompt-select-node-code.d.ts.map +1 -1
- package/dist/feral/node-code/input/prompt-select-node-code.js +6 -0
- package/dist/feral/node-code/input/prompt-select-node-code.js.map +1 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -39
- package/dist/index.js.map +1 -1
- package/dist/llm/router.js +27 -27
- package/dist/personalities.js +4 -4
- package/dist/phaibel.txt +81 -81
- package/dist/service/api-router.d.ts.map +1 -1
- package/dist/service/api-router.js +42 -2
- package/dist/service/api-router.js.map +1 -1
- package/dist/service/cron/feedback-analysis.js +14 -14
- package/dist/service/cron/innovate.d.ts +2 -0
- package/dist/service/cron/innovate.d.ts.map +1 -0
- package/dist/service/cron/innovate.js +354 -0
- package/dist/service/cron/innovate.js.map +1 -0
- package/dist/service/cron/process-lifecycle.js +36 -36
- package/dist/service/cron/scheduler.d.ts.map +1 -1
- package/dist/service/cron/scheduler.js +8 -0
- package/dist/service/cron/scheduler.js.map +1 -1
- package/dist/service/index.d.ts.map +1 -1
- package/dist/service/index.js +27 -20
- package/dist/service/index.js.map +1 -1
- package/dist/service/web-client.html +1984 -1569
- package/dist/service/web-server.d.ts +1 -0
- package/dist/service/web-server.d.ts.map +1 -1
- package/dist/service/web-server.js +188 -6
- package/dist/service/web-server.js.map +1 -1
- package/dist/tools/daily.js +2 -2
- package/package.json +69 -66
- package/dist/agentary.txt +0 -82
- package/dist/commands/event.d.ts +0 -4
- package/dist/commands/event.d.ts.map +0 -1
- package/dist/commands/event.js +0 -515
- package/dist/commands/event.js.map +0 -1
- package/dist/commands/goal.d.ts +0 -4
- package/dist/commands/goal.d.ts.map +0 -1
- package/dist/commands/goal.js +0 -14
- package/dist/commands/goal.js.map +0 -1
- package/dist/commands/interview.d.ts +0 -14
- package/dist/commands/interview.d.ts.map +0 -1
- package/dist/commands/interview.js +0 -343
- package/dist/commands/interview.js.map +0 -1
- package/dist/commands/note.d.ts +0 -4
- package/dist/commands/note.d.ts.map +0 -1
- package/dist/commands/note.js +0 -548
- package/dist/commands/note.js.map +0 -1
- package/dist/commands/pamp.d.ts +0 -4
- package/dist/commands/pamp.d.ts.map +0 -1
- package/dist/commands/pamp.js +0 -323
- package/dist/commands/pamp.js.map +0 -1
- package/dist/commands/person.d.ts +0 -4
- package/dist/commands/person.d.ts.map +0 -1
- package/dist/commands/person.js +0 -185
- package/dist/commands/person.js.map +0 -1
- package/dist/commands/project.d.ts +0 -4
- package/dist/commands/project.d.ts.map +0 -1
- package/dist/commands/project.js +0 -70
- package/dist/commands/project.js.map +0 -1
- package/dist/commands/remember.d.ts +0 -4
- package/dist/commands/remember.d.ts.map +0 -1
- package/dist/commands/remember.js +0 -70
- package/dist/commands/remember.js.map +0 -1
- package/dist/commands/research.d.ts +0 -4
- package/dist/commands/research.d.ts.map +0 -1
- package/dist/commands/research.js +0 -14
- package/dist/commands/research.js.map +0 -1
- package/dist/commands/shell.d.ts +0 -3
- package/dist/commands/shell.d.ts.map +0 -1
- package/dist/commands/shell.js +0 -346
- package/dist/commands/shell.js.map +0 -1
- package/dist/commands/today.d.ts +0 -4
- package/dist/commands/today.d.ts.map +0 -1
- package/dist/commands/today.js +0 -112
- package/dist/commands/today.js.map +0 -1
- package/dist/commands/todo.d.ts +0 -4
- package/dist/commands/todo.d.ts.map +0 -1
- package/dist/commands/todo.js +0 -678
- package/dist/commands/todo.js.map +0 -1
- package/dist/commands/todont.d.ts +0 -19
- package/dist/commands/todont.d.ts.map +0 -1
- package/dist/commands/todont.js +0 -209
- package/dist/commands/todont.js.map +0 -1
- package/dist/commands/week.d.ts +0 -4
- package/dist/commands/week.d.ts.map +0 -1
- package/dist/commands/week.js +0 -267
- package/dist/commands/week.js.map +0 -1
- package/dist/dobbai.txt +0 -55
- package/dist/dobbi.txt +0 -55
- package/dist/dobbie-bundle.cjs +0 -73313
- package/dist/dobbie.txt +0 -55
- package/dist/feral/node-code/output/dobbai-speak-node-code.d.ts +0 -11
- package/dist/feral/node-code/output/dobbai-speak-node-code.d.ts.map +0 -1
- package/dist/feral/node-code/output/dobbai-speak-node-code.js +0 -56
- package/dist/feral/node-code/output/dobbai-speak-node-code.js.map +0 -1
- package/dist/feral/node-code/output/dobbi-speak-node-code.d.ts +0 -15
- package/dist/feral/node-code/output/dobbi-speak-node-code.d.ts.map +0 -1
- package/dist/feral/node-code/output/dobbi-speak-node-code.js +0 -60
- package/dist/feral/node-code/output/dobbi-speak-node-code.js.map +0 -1
- package/dist/feral/node-code/output/dobbie-speak-node-code.d.ts +0 -11
- package/dist/feral/node-code/output/dobbie-speak-node-code.d.ts.map +0 -1
- package/dist/feral/node-code/output/dobbie-speak-node-code.js +0 -56
- package/dist/feral/node-code/output/dobbie-speak-node-code.js.map +0 -1
- package/dist/service/cron/process-evaluator.d.ts +0 -6
- package/dist/service/cron/process-evaluator.d.ts.map +0 -1
- package/dist/service/cron/process-evaluator.js +0 -126
- package/dist/service/cron/process-evaluator.js.map +0 -1
- package/dist/tools/project.d.ts +0 -2
- package/dist/tools/project.d.ts.map +0 -1
- package/dist/tools/project.js +0 -112
- package/dist/tools/project.js.map +0 -1
|
@@ -0,0 +1,354 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Innovate Cron Job — Vault-local improvement loop
|
|
3
|
+
//
|
|
4
|
+
// Reads recent execution logs, finds failures, asks the LLM to diagnose and
|
|
5
|
+
// propose a vault-local change (process or .vault.md), tests it by replaying
|
|
6
|
+
// the failing input, and keeps or reverts based on the result.
|
|
7
|
+
// Limited to 3 loops to avoid hogging service resources.
|
|
8
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
9
|
+
import { promises as fs } from 'fs';
|
|
10
|
+
import path from 'path';
|
|
11
|
+
import { findVaultRoot } from '../../state/manager.js';
|
|
12
|
+
import { readRecentExecutionLogs } from '../../utils/execution-logger.js';
|
|
13
|
+
import { getModelForCapability } from '../../llm/router.js';
|
|
14
|
+
import { getVaultContext } from '../../context/reader.js';
|
|
15
|
+
import { feralChatHeadless } from '../../commands/chat.js';
|
|
16
|
+
import { listEntities } from '../../entities/entity.js';
|
|
17
|
+
import { parseJsonResponse } from '../../utils/json-parser.js';
|
|
18
|
+
import { getProcessesDir, getLogsDir } from '../../paths.js';
|
|
19
|
+
import { debug } from '../../utils/debug.js';
|
|
20
|
+
const MAX_LOOPS = 3;
|
|
21
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
22
|
+
// Main entry
|
|
23
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
24
|
+
export async function runInnovation() {
|
|
25
|
+
const vaultRoot = await findVaultRoot();
|
|
26
|
+
if (!vaultRoot) {
|
|
27
|
+
return 'No vault found — skipping innovation';
|
|
28
|
+
}
|
|
29
|
+
// Phase 1: Gather data
|
|
30
|
+
const logs = await readRecentExecutionLogs(7);
|
|
31
|
+
const failures = logs.filter(l => !l.success);
|
|
32
|
+
if (failures.length === 0) {
|
|
33
|
+
return 'No recent failures — nothing to improve';
|
|
34
|
+
}
|
|
35
|
+
const processDir = await getProcessesDir();
|
|
36
|
+
const currentProcesses = await loadProcessFiles(processDir);
|
|
37
|
+
const vaultContext = await getVaultContext();
|
|
38
|
+
const feedbackSummary = await readFeedbackSummary(vaultRoot);
|
|
39
|
+
const loopResults = [];
|
|
40
|
+
let improvementsApplied = 0;
|
|
41
|
+
// Track which failures we've already tried so we don't repeat
|
|
42
|
+
const triedChatIds = new Set();
|
|
43
|
+
for (let loop = 0; loop < MAX_LOOPS; loop++) {
|
|
44
|
+
// Pick untried failures for this loop
|
|
45
|
+
const untried = failures.filter(f => !triedChatIds.has(f.chat_id));
|
|
46
|
+
if (untried.length === 0) {
|
|
47
|
+
debug('innovate', `Loop ${loop + 1}: no more untried failures`);
|
|
48
|
+
break;
|
|
49
|
+
}
|
|
50
|
+
debug('innovate', `Loop ${loop + 1}/${MAX_LOOPS}: ${untried.length} untried failures`);
|
|
51
|
+
// Phase 2: Diagnose
|
|
52
|
+
const diagnosis = await diagnose(untried, currentProcesses, vaultContext, feedbackSummary);
|
|
53
|
+
if (diagnosis.action === 'none') {
|
|
54
|
+
loopResults.push({
|
|
55
|
+
loop: loop + 1,
|
|
56
|
+
targetChatId: '',
|
|
57
|
+
action: 'none',
|
|
58
|
+
detail: 'LLM found no actionable improvement',
|
|
59
|
+
improved: false,
|
|
60
|
+
reasoning: diagnosis.reasoning,
|
|
61
|
+
});
|
|
62
|
+
break;
|
|
63
|
+
}
|
|
64
|
+
triedChatIds.add(diagnosis.targetChatId);
|
|
65
|
+
// Phase 3: Apply change (with backup)
|
|
66
|
+
const backup = await applyChange(diagnosis, processDir, vaultRoot);
|
|
67
|
+
// Phase 4: Test by replaying the failing input
|
|
68
|
+
const improved = await testReplay(diagnosis.replayInput, diagnosis.targetChatId);
|
|
69
|
+
// Phase 5: Keep or revert
|
|
70
|
+
const detail = describeChange(diagnosis);
|
|
71
|
+
if (improved) {
|
|
72
|
+
improvementsApplied++;
|
|
73
|
+
// Update in-memory process list if we changed a process
|
|
74
|
+
if (diagnosis.action === 'create_process' || diagnosis.action === 'update_process') {
|
|
75
|
+
await refreshProcessList(currentProcesses, processDir, diagnosis);
|
|
76
|
+
}
|
|
77
|
+
debug('innovate', `Loop ${loop + 1}: KEPT — ${detail}`);
|
|
78
|
+
}
|
|
79
|
+
else {
|
|
80
|
+
await revertChange(backup);
|
|
81
|
+
debug('innovate', `Loop ${loop + 1}: REVERTED — ${detail}`);
|
|
82
|
+
}
|
|
83
|
+
loopResults.push({
|
|
84
|
+
loop: loop + 1,
|
|
85
|
+
targetChatId: diagnosis.targetChatId,
|
|
86
|
+
action: diagnosis.action,
|
|
87
|
+
detail,
|
|
88
|
+
improved,
|
|
89
|
+
reasoning: diagnosis.reasoning,
|
|
90
|
+
});
|
|
91
|
+
}
|
|
92
|
+
// Write log file
|
|
93
|
+
const summary = buildSummary(loopResults, improvementsApplied);
|
|
94
|
+
await writeInnovateLog(vaultRoot, { loopResults, improvementsApplied, summary });
|
|
95
|
+
return summary;
|
|
96
|
+
}
|
|
97
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
98
|
+
// Phase 2: LLM Diagnosis
|
|
99
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
100
|
+
async function diagnose(failures, processes, vaultContext, feedbackSummary) {
|
|
101
|
+
const llm = await getModelForCapability('reason');
|
|
102
|
+
const failureSummaries = failures.slice(0, 10).map(f => ({
|
|
103
|
+
chat_id: f.chat_id,
|
|
104
|
+
user_input: f.user_input,
|
|
105
|
+
process_key: f.process_key,
|
|
106
|
+
process_source: f.process_source,
|
|
107
|
+
outcome_summary: f.outcome_summary,
|
|
108
|
+
process_json: f.process_json,
|
|
109
|
+
}));
|
|
110
|
+
const processSummaries = processes.map(p => ({
|
|
111
|
+
key: p.key,
|
|
112
|
+
description: p.description,
|
|
113
|
+
filename: p.filename,
|
|
114
|
+
}));
|
|
115
|
+
const prompt = `You are the innovation engine for Phaibel, a Personal Digital Agent. Analyze recent failures and propose ONE targeted change to vault-local content to fix the most impactful failure.
|
|
116
|
+
|
|
117
|
+
RECENT FAILURES (${failures.length}):
|
|
118
|
+
${JSON.stringify(failureSummaries, null, 2)}
|
|
119
|
+
|
|
120
|
+
CURRENT SAVED PROCESSES (${processes.length}):
|
|
121
|
+
${JSON.stringify(processSummaries, null, 2)}
|
|
122
|
+
|
|
123
|
+
VAULT CONTEXT:
|
|
124
|
+
${vaultContext || '(none)'}
|
|
125
|
+
|
|
126
|
+
${feedbackSummary ? `FEEDBACK SUMMARY:\n${feedbackSummary}\n` : ''}
|
|
127
|
+
RULES:
|
|
128
|
+
- You can ONLY change vault-local content: saved processes (.phaibel/processes/*.json) or .vault.md context files
|
|
129
|
+
- Do NOT suggest code changes — that's outside your scope
|
|
130
|
+
- Pick the single most impactful failure to fix
|
|
131
|
+
- Propose exactly ONE change
|
|
132
|
+
- For processes: provide the FULL valid process JSON with schema_version, key, description, context, nodes[], edges[]
|
|
133
|
+
- Every process must have a "start" node and a "stop" node
|
|
134
|
+
- For .vault.md: provide the full new content for the file
|
|
135
|
+
- Use {context_key} interpolation for variable parts in processes
|
|
136
|
+
|
|
137
|
+
Return a JSON object:
|
|
138
|
+
{
|
|
139
|
+
"action": "update_process" | "create_process" | "update_vault_context" | "none",
|
|
140
|
+
"processKey": "key of process to update (for update_process only)",
|
|
141
|
+
"processJson": { ... full process JSON ... },
|
|
142
|
+
"directory": "subdirectory for .vault.md (e.g. 'todos')",
|
|
143
|
+
"content": "new .vault.md content",
|
|
144
|
+
"reasoning": "What you think the root cause is and why this change should help",
|
|
145
|
+
"targetChatId": "chat_id of the failure you're targeting",
|
|
146
|
+
"replayInput": "the user_input to replay for testing"
|
|
147
|
+
}
|
|
148
|
+
|
|
149
|
+
If no actionable improvement is possible, return: { "action": "none", "reasoning": "...", "targetChatId": "", "replayInput": "" }
|
|
150
|
+
|
|
151
|
+
Return ONLY the JSON object, no markdown fences.`;
|
|
152
|
+
const response = await llm.chat([{ role: 'user', content: prompt }], {
|
|
153
|
+
systemPrompt: 'You are a diagnostic engine for improving a Personal Digital Agent. Analyze failures and propose targeted, minimal fixes to vault-local content. Be precise and conservative.',
|
|
154
|
+
temperature: 0.3,
|
|
155
|
+
});
|
|
156
|
+
try {
|
|
157
|
+
return parseJsonResponse(response);
|
|
158
|
+
}
|
|
159
|
+
catch {
|
|
160
|
+
return {
|
|
161
|
+
action: 'none',
|
|
162
|
+
reasoning: 'Failed to parse LLM diagnosis response',
|
|
163
|
+
targetChatId: '',
|
|
164
|
+
replayInput: '',
|
|
165
|
+
};
|
|
166
|
+
}
|
|
167
|
+
}
|
|
168
|
+
async function applyChange(diagnosis, processDir, vaultRoot) {
|
|
169
|
+
await fs.mkdir(processDir, { recursive: true });
|
|
170
|
+
if (diagnosis.action === 'update_process' && diagnosis.processKey && diagnosis.processJson) {
|
|
171
|
+
const filename = `${diagnosis.processKey.replace(/\./g, '-')}.json`;
|
|
172
|
+
const filepath = path.join(processDir, filename);
|
|
173
|
+
const original = await safeRead(filepath);
|
|
174
|
+
await fs.writeFile(filepath, JSON.stringify(diagnosis.processJson, null, 2));
|
|
175
|
+
return { filePath: filepath, originalContent: original };
|
|
176
|
+
}
|
|
177
|
+
if (diagnosis.action === 'create_process' && diagnosis.processJson) {
|
|
178
|
+
const key = diagnosis.processJson.key || 'new-process';
|
|
179
|
+
const filename = `${key.replace(/\./g, '-')}.json`;
|
|
180
|
+
const filepath = path.join(processDir, filename);
|
|
181
|
+
const original = await safeRead(filepath);
|
|
182
|
+
await fs.writeFile(filepath, JSON.stringify(diagnosis.processJson, null, 2));
|
|
183
|
+
return { filePath: filepath, originalContent: original };
|
|
184
|
+
}
|
|
185
|
+
if (diagnosis.action === 'update_vault_context' && diagnosis.directory && diagnosis.content) {
|
|
186
|
+
const dir = path.join(vaultRoot, diagnosis.directory);
|
|
187
|
+
await fs.mkdir(dir, { recursive: true });
|
|
188
|
+
const filepath = path.join(dir, '.vault.md');
|
|
189
|
+
const original = await safeRead(filepath);
|
|
190
|
+
await fs.writeFile(filepath, diagnosis.content);
|
|
191
|
+
return { filePath: filepath, originalContent: original };
|
|
192
|
+
}
|
|
193
|
+
return { filePath: '', originalContent: null };
|
|
194
|
+
}
|
|
195
|
+
async function revertChange(backup) {
|
|
196
|
+
if (!backup.filePath)
|
|
197
|
+
return;
|
|
198
|
+
if (backup.originalContent === null) {
|
|
199
|
+
// File didn't exist before — remove it
|
|
200
|
+
try {
|
|
201
|
+
await fs.unlink(backup.filePath);
|
|
202
|
+
}
|
|
203
|
+
catch {
|
|
204
|
+
// Already gone
|
|
205
|
+
}
|
|
206
|
+
}
|
|
207
|
+
else {
|
|
208
|
+
await fs.writeFile(backup.filePath, backup.originalContent);
|
|
209
|
+
}
|
|
210
|
+
}
|
|
211
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
212
|
+
// Phase 4: Test by replaying
|
|
213
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
214
|
+
async function testReplay(userInput, _originalChatId) {
|
|
215
|
+
if (!userInput)
|
|
216
|
+
return false;
|
|
217
|
+
try {
|
|
218
|
+
// Snapshot entity counts before
|
|
219
|
+
const entityTypes = ['task', 'event', 'note', 'goal', 'person', 'todont'];
|
|
220
|
+
const beforeCounts = {};
|
|
221
|
+
for (const type of entityTypes) {
|
|
222
|
+
try {
|
|
223
|
+
const entities = await listEntities(type);
|
|
224
|
+
beforeCounts[type] = entities.length;
|
|
225
|
+
}
|
|
226
|
+
catch {
|
|
227
|
+
beforeCounts[type] = 0;
|
|
228
|
+
}
|
|
229
|
+
}
|
|
230
|
+
// Replay via feralChatHeadless
|
|
231
|
+
const responseText = await Promise.race([
|
|
232
|
+
feralChatHeadless(userInput, () => { }, // onStatus: no-op
|
|
233
|
+
() => { }, // onProcess: no-op
|
|
234
|
+
async (_q, options) => {
|
|
235
|
+
// Auto-answer questions: pick first option or give reasonable default
|
|
236
|
+
if (options && options.length > 0)
|
|
237
|
+
return options[0];
|
|
238
|
+
return '12:00';
|
|
239
|
+
}, () => { }),
|
|
240
|
+
new Promise((_, reject) => setTimeout(() => reject(new Error('Replay timed out')), 60_000)),
|
|
241
|
+
]);
|
|
242
|
+
// Check for improvement signals
|
|
243
|
+
const hasError = /error|fail|invalid|could not|unable to/i.test(responseText);
|
|
244
|
+
const hasValidation = /validation|required field|missing/i.test(responseText);
|
|
245
|
+
// Check if entities were created
|
|
246
|
+
const afterCounts = {};
|
|
247
|
+
for (const type of entityTypes) {
|
|
248
|
+
try {
|
|
249
|
+
const entities = await listEntities(type);
|
|
250
|
+
afterCounts[type] = entities.length;
|
|
251
|
+
}
|
|
252
|
+
catch {
|
|
253
|
+
afterCounts[type] = 0;
|
|
254
|
+
}
|
|
255
|
+
}
|
|
256
|
+
const entityCreated = entityTypes.some(t => afterCounts[t] > beforeCounts[t]);
|
|
257
|
+
// Score: improved if no errors and either entity was created or response is clean
|
|
258
|
+
const improved = !hasError && !hasValidation && (entityCreated || responseText.length > 20);
|
|
259
|
+
debug('innovate', `Replay result: error=${hasError}, validation=${hasValidation}, entityCreated=${entityCreated}, improved=${improved}`);
|
|
260
|
+
return improved;
|
|
261
|
+
}
|
|
262
|
+
catch (err) {
|
|
263
|
+
debug('innovate', `Replay failed: ${err instanceof Error ? err.message : err}`);
|
|
264
|
+
return false;
|
|
265
|
+
}
|
|
266
|
+
}
|
|
267
|
+
async function loadProcessFiles(processDir) {
|
|
268
|
+
let files;
|
|
269
|
+
try {
|
|
270
|
+
files = await fs.readdir(processDir);
|
|
271
|
+
}
|
|
272
|
+
catch {
|
|
273
|
+
return [];
|
|
274
|
+
}
|
|
275
|
+
const processes = [];
|
|
276
|
+
for (const file of files) {
|
|
277
|
+
if (!file.endsWith('.json'))
|
|
278
|
+
continue;
|
|
279
|
+
try {
|
|
280
|
+
const raw = await fs.readFile(path.join(processDir, file), 'utf-8');
|
|
281
|
+
const parsed = JSON.parse(raw);
|
|
282
|
+
processes.push({
|
|
283
|
+
key: parsed.key || file.replace('.json', ''),
|
|
284
|
+
description: parsed.description || '',
|
|
285
|
+
filename: file,
|
|
286
|
+
});
|
|
287
|
+
}
|
|
288
|
+
catch {
|
|
289
|
+
// skip invalid
|
|
290
|
+
}
|
|
291
|
+
}
|
|
292
|
+
return processes;
|
|
293
|
+
}
|
|
294
|
+
async function readFeedbackSummary(vaultRoot) {
|
|
295
|
+
try {
|
|
296
|
+
return await fs.readFile(path.join(vaultRoot, '.phaibel', 'feedback-summary.md'), 'utf-8');
|
|
297
|
+
}
|
|
298
|
+
catch {
|
|
299
|
+
return '';
|
|
300
|
+
}
|
|
301
|
+
}
|
|
302
|
+
async function safeRead(filepath) {
|
|
303
|
+
try {
|
|
304
|
+
return await fs.readFile(filepath, 'utf-8');
|
|
305
|
+
}
|
|
306
|
+
catch {
|
|
307
|
+
return null;
|
|
308
|
+
}
|
|
309
|
+
}
|
|
310
|
+
function describeChange(diagnosis) {
|
|
311
|
+
switch (diagnosis.action) {
|
|
312
|
+
case 'update_process':
|
|
313
|
+
return `updated process '${diagnosis.processKey}'`;
|
|
314
|
+
case 'create_process':
|
|
315
|
+
return `created process '${diagnosis.processJson?.key || 'unknown'}'`;
|
|
316
|
+
case 'update_vault_context':
|
|
317
|
+
return `updated ${diagnosis.directory}/.vault.md`;
|
|
318
|
+
default:
|
|
319
|
+
return 'no change';
|
|
320
|
+
}
|
|
321
|
+
}
|
|
322
|
+
async function refreshProcessList(processes, processDir, diagnosis) {
|
|
323
|
+
if (diagnosis.action === 'create_process' && diagnosis.processJson) {
|
|
324
|
+
const key = diagnosis.processJson.key || 'new-process';
|
|
325
|
+
processes.push({
|
|
326
|
+
key,
|
|
327
|
+
description: diagnosis.processJson.description || '',
|
|
328
|
+
filename: `${key.replace(/\./g, '-')}.json`,
|
|
329
|
+
});
|
|
330
|
+
}
|
|
331
|
+
}
|
|
332
|
+
function buildSummary(results, improvements) {
|
|
333
|
+
const details = results
|
|
334
|
+
.filter(r => r.improved)
|
|
335
|
+
.map(r => r.detail)
|
|
336
|
+
.join(', ');
|
|
337
|
+
if (improvements === 0) {
|
|
338
|
+
return `Innovate: ${results.length} loop(s), no improvements found`;
|
|
339
|
+
}
|
|
340
|
+
return `Innovate: ${results.length} loop(s), ${improvements} improvement(s) applied (${details})`;
|
|
341
|
+
}
|
|
342
|
+
async function writeInnovateLog(vaultRoot, data) {
|
|
343
|
+
const logsDir = await getLogsDir();
|
|
344
|
+
await fs.mkdir(logsDir, { recursive: true });
|
|
345
|
+
const timestamp = new Date().toISOString().replace(/[:.]/g, '-').slice(0, 19);
|
|
346
|
+
const log = {
|
|
347
|
+
timestamp: new Date().toISOString(),
|
|
348
|
+
loops: data.loopResults,
|
|
349
|
+
improvementsApplied: data.improvementsApplied,
|
|
350
|
+
summary: data.summary,
|
|
351
|
+
};
|
|
352
|
+
await fs.writeFile(path.join(logsDir, `innovate-${timestamp}.json`), JSON.stringify(log, null, 2));
|
|
353
|
+
}
|
|
354
|
+
//# sourceMappingURL=innovate.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"innovate.js","sourceRoot":"","sources":["../../../src/service/cron/innovate.ts"],"names":[],"mappings":"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"}
|
|
@@ -51,42 +51,42 @@ export async function evaluateProcessLifecycle() {
|
|
|
51
51
|
}));
|
|
52
52
|
const response = await llm.chat([{
|
|
53
53
|
role: 'user',
|
|
54
|
-
content: `EXISTING PROCESSES (${existingProcesses.length}):
|
|
55
|
-
${JSON.stringify(existingProcessSummaries, null, 2)}
|
|
56
|
-
|
|
57
|
-
USAGE STATS (last 14 days):
|
|
58
|
-
${statsSection}
|
|
59
|
-
|
|
60
|
-
RECENT CUSTOM EXECUTIONS (${customLogs.length}):
|
|
61
|
-
${JSON.stringify(customLogSummaries, null, 2)}
|
|
62
|
-
|
|
63
|
-
RECENT REUSE EXECUTIONS (${reuseLogs.length}):
|
|
64
|
-
${JSON.stringify(reuseLogSummaries, null, 2)}
|
|
65
|
-
|
|
66
|
-
RULES:
|
|
67
|
-
- CREATE when 2+ similar custom executions show a repeatable pattern
|
|
68
|
-
- UPDATE when an existing process has success rate < 70%, or custom logs show a better approach for the same task
|
|
69
|
-
- RETIRE when a process is unused for 14+ days, or always failing — but never retire processes less than 3 days old
|
|
70
|
-
- Use {context_key} interpolation for variable parts (e.g. {user_input}, {entity_title})
|
|
71
|
-
- Prefer simple, focused processes (5-8 nodes max)
|
|
72
|
-
- Every process must start with a "start" node and end with a "stop" node
|
|
73
|
-
- Process key should be descriptive (e.g. "create-task-with-tag", "list-events-today")
|
|
74
|
-
- Don't create duplicates of existing processes
|
|
75
|
-
|
|
76
|
-
Return a JSON object:
|
|
77
|
-
{
|
|
78
|
-
"create": [
|
|
79
|
-
{ "key": "process-key", "description": "What it does", "process": { ... valid process JSON ... } }
|
|
80
|
-
],
|
|
81
|
-
"update": [
|
|
82
|
-
{ "key": "existing-key", "description": "Updated description", "process": { ... improved process JSON ... } }
|
|
83
|
-
],
|
|
84
|
-
"retire": [
|
|
85
|
-
{ "key": "existing-key", "reason": "Why it should be retired" }
|
|
86
|
-
],
|
|
87
|
-
"reasoning": "Overall analysis"
|
|
88
|
-
}
|
|
89
|
-
|
|
54
|
+
content: `EXISTING PROCESSES (${existingProcesses.length}):
|
|
55
|
+
${JSON.stringify(existingProcessSummaries, null, 2)}
|
|
56
|
+
|
|
57
|
+
USAGE STATS (last 14 days):
|
|
58
|
+
${statsSection}
|
|
59
|
+
|
|
60
|
+
RECENT CUSTOM EXECUTIONS (${customLogs.length}):
|
|
61
|
+
${JSON.stringify(customLogSummaries, null, 2)}
|
|
62
|
+
|
|
63
|
+
RECENT REUSE EXECUTIONS (${reuseLogs.length}):
|
|
64
|
+
${JSON.stringify(reuseLogSummaries, null, 2)}
|
|
65
|
+
|
|
66
|
+
RULES:
|
|
67
|
+
- CREATE when 2+ similar custom executions show a repeatable pattern
|
|
68
|
+
- UPDATE when an existing process has success rate < 70%, or custom logs show a better approach for the same task
|
|
69
|
+
- RETIRE when a process is unused for 14+ days, or always failing — but never retire processes less than 3 days old
|
|
70
|
+
- Use {context_key} interpolation for variable parts (e.g. {user_input}, {entity_title})
|
|
71
|
+
- Prefer simple, focused processes (5-8 nodes max)
|
|
72
|
+
- Every process must start with a "start" node and end with a "stop" node
|
|
73
|
+
- Process key should be descriptive (e.g. "create-task-with-tag", "list-events-today")
|
|
74
|
+
- Don't create duplicates of existing processes
|
|
75
|
+
|
|
76
|
+
Return a JSON object:
|
|
77
|
+
{
|
|
78
|
+
"create": [
|
|
79
|
+
{ "key": "process-key", "description": "What it does", "process": { ... valid process JSON ... } }
|
|
80
|
+
],
|
|
81
|
+
"update": [
|
|
82
|
+
{ "key": "existing-key", "description": "Updated description", "process": { ... improved process JSON ... } }
|
|
83
|
+
],
|
|
84
|
+
"retire": [
|
|
85
|
+
{ "key": "existing-key", "reason": "Why it should be retired" }
|
|
86
|
+
],
|
|
87
|
+
"reasoning": "Overall analysis"
|
|
88
|
+
}
|
|
89
|
+
|
|
90
90
|
If no actions needed, return empty arrays. Return ONLY the JSON object, no markdown fences.`,
|
|
91
91
|
}], {
|
|
92
92
|
systemPrompt: 'You are the process lifecycle engine for Phaibel, a Personal Digital Agent. Analyze execution logs and process performance to create new processes, improve underperforming ones, and retire broken or unused ones. Quality over quantity — only act when the data clearly supports it.',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/service/cron/scheduler.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"scheduler.d.ts","sourceRoot":"","sources":["../../../src/service/cron/scheduler.ts"],"names":[],"mappings":"AAuBA,MAAM,WAAW,aAAa;IAC1B,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;CAC3B;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,aAAa,CAAC,CAAC;CACvC;AAeD,wBAAsB,cAAc,IAAI,OAAO,CAAC,UAAU,CAAC,CAY1D;AAED,wBAAsB,cAAc,CAAC,MAAM,EAAE,UAAU,GAAG,OAAO,CAAC,IAAI,CAAC,CAKtE;AA4ED,MAAM,WAAW,aAAa;IAC1B,IAAI,EAAE,MAAM,CAAC;IACb,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,MAAM,CAAC;IACxB,OAAO,EAAE,OAAO,CAAC;IACjB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,UAAU,EAAE,MAAM,GAAG,IAAI,CAAC;IAC1B,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;IACzB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC5B;AAED,MAAM,WAAW,UAAU;IACvB,IAAI,EAAE,aAAa,EAAE,CAAC;CACzB;AAeD,qBAAa,aAAa;IACtB,OAAO,CAAC,IAAI,CAAiC;IAC7C,OAAO,CAAC,MAAM,CAA2B;IAEnC,KAAK,IAAI,OAAO,CAAC,IAAI,CAAC;IAgB5B,IAAI,IAAI,IAAI;IAOZ,SAAS,IAAI,UAAU;IAwBjB,MAAM,CAAC,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC;IAcrC,MAAM,IAAI,OAAO,CAAC,IAAI,CAAC;IAK7B,OAAO,CAAC,QAAQ;YAgBF,IAAI;YAOJ,UAAU;CAwC3B;AAKD,wBAAgB,gBAAgB,IAAI,aAAa,CAKhD"}
|
|
@@ -13,6 +13,7 @@ import { checkPampMail } from './pamp-checker.js';
|
|
|
13
13
|
import { getEntityIndex } from '../../entities/entity-index.js';
|
|
14
14
|
import { getEmbeddingIndex } from '../../entities/embedding-index.js';
|
|
15
15
|
import { analyzeFeedback } from './feedback-analysis.js';
|
|
16
|
+
import { runInnovation } from './innovate.js';
|
|
16
17
|
import { getCronConfigPath, getVaultConfigDir } from '../../paths.js';
|
|
17
18
|
const DEFAULT_CONFIG = {
|
|
18
19
|
jobs: {
|
|
@@ -23,6 +24,7 @@ const DEFAULT_CONFIG = {
|
|
|
23
24
|
'pamp-check': { enabled: false, intervalMinutes: 15 },
|
|
24
25
|
'embedding-sync': { enabled: false, intervalMinutes: 1440 },
|
|
25
26
|
'feedback-analysis': { enabled: false, intervalMinutes: 1440 },
|
|
27
|
+
'innovate': { enabled: false, intervalMinutes: 1440 },
|
|
26
28
|
},
|
|
27
29
|
};
|
|
28
30
|
export async function loadCronConfig() {
|
|
@@ -101,6 +103,12 @@ const JOB_DEFS = [
|
|
|
101
103
|
return analyzeFeedback();
|
|
102
104
|
},
|
|
103
105
|
},
|
|
106
|
+
{
|
|
107
|
+
name: 'innovate',
|
|
108
|
+
async run() {
|
|
109
|
+
return runInnovation();
|
|
110
|
+
},
|
|
111
|
+
},
|
|
104
112
|
];
|
|
105
113
|
export class CronScheduler {
|
|
106
114
|
jobs = new Map();
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/service/cron/scheduler.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"scheduler.js","sourceRoot":"","sources":["../../../src/service/cron/scheduler.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAWH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAQ,MAAM,eAAe,CAAC;AAK3E,iBAAe,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CA0L9E;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":";AAEA;;;;;GAKG;AAWH,OAAO,KAAK,EAAE,cAAc,EAAE,eAAe,EAAQ,MAAM,eAAe,CAAC;AAK3E,iBAAe,aAAa,CAAC,OAAO,EAAE,cAAc,GAAG,OAAO,CAAC,eAAe,CAAC,CA0L9E;AAiFD,OAAO,EAAE,aAAa,EAAE,CAAC"}
|
package/dist/service/index.js
CHANGED
|
@@ -208,34 +208,41 @@ async function main() {
|
|
|
208
208
|
// Start server and processor
|
|
209
209
|
await server.start(SOCKET_PATH);
|
|
210
210
|
await processor.start();
|
|
211
|
-
//
|
|
211
|
+
// Vault-dependent startup — skip gracefully if no vault exists yet.
|
|
212
|
+
// The web server can still serve the HTML client for onboarding.
|
|
212
213
|
try {
|
|
213
|
-
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
|
|
220
|
-
|
|
221
|
-
await index.build();
|
|
222
|
-
const stats = index.getStats();
|
|
223
|
-
console.log(`Entity index: ${stats.nodeCount} nodes, ${stats.edgeCount} edges`);
|
|
224
|
-
// Load and sync embedding index
|
|
214
|
+
// Start cron scheduler
|
|
215
|
+
try {
|
|
216
|
+
await cron.start();
|
|
217
|
+
}
|
|
218
|
+
catch (err) {
|
|
219
|
+
debug('service', `Cron scheduler skipped: ${err}`);
|
|
220
|
+
}
|
|
221
|
+
// Build entity index
|
|
225
222
|
try {
|
|
226
|
-
const
|
|
227
|
-
await
|
|
228
|
-
const
|
|
229
|
-
console.log(`
|
|
223
|
+
const index = getEntityIndex();
|
|
224
|
+
await index.build();
|
|
225
|
+
const stats = index.getStats();
|
|
226
|
+
console.log(`Entity index: ${stats.nodeCount} nodes, ${stats.edgeCount} edges`);
|
|
227
|
+
// Load and sync embedding index
|
|
228
|
+
try {
|
|
229
|
+
const embeddingIndex = getEmbeddingIndex();
|
|
230
|
+
await embeddingIndex.load();
|
|
231
|
+
const result = await embeddingIndex.sync(index);
|
|
232
|
+
console.log(`Embedding index: ${result.added} added, ${result.updated} updated, ${result.removed} removed`);
|
|
233
|
+
}
|
|
234
|
+
catch (err) {
|
|
235
|
+
debug('embeddings', `Embedding index sync skipped: ${err}`);
|
|
236
|
+
}
|
|
230
237
|
}
|
|
231
238
|
catch (err) {
|
|
232
|
-
debug('
|
|
239
|
+
debug('service', `Entity index skipped: ${err}`);
|
|
233
240
|
}
|
|
234
241
|
}
|
|
235
242
|
catch (err) {
|
|
236
|
-
console.
|
|
243
|
+
console.log('No vault found — skipping vault-dependent startup. Use the web client to set up.');
|
|
237
244
|
}
|
|
238
|
-
// Start web server
|
|
245
|
+
// Start web server (always — needed for onboarding)
|
|
239
246
|
try {
|
|
240
247
|
await webServer.start(3737);
|
|
241
248
|
console.log('Web client at http://localhost:3737');
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/service/index.ts"],"names":[],"mappings":"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"}
|