@minicor/mcp-server 3.1.5 → 3.2.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (54) hide show
  1. package/README.md +251 -61
  2. package/dist/index.d.ts.map +1 -1
  3. package/dist/index.js +2 -0
  4. package/dist/index.js.map +1 -1
  5. package/dist/laminar-client.d.ts +5 -0
  6. package/dist/laminar-client.d.ts.map +1 -1
  7. package/dist/laminar-client.js +6 -0
  8. package/dist/laminar-client.js.map +1 -1
  9. package/dist/lib.d.ts.map +1 -1
  10. package/dist/lib.js +2 -0
  11. package/dist/lib.js.map +1 -1
  12. package/dist/prompts/build-rpa.d.ts.map +1 -1
  13. package/dist/prompts/build-rpa.js +86 -272
  14. package/dist/prompts/build-rpa.js.map +1 -1
  15. package/dist/prompts/debug-execution.js +1 -1
  16. package/dist/seed-skills.d.ts +13 -0
  17. package/dist/seed-skills.d.ts.map +1 -0
  18. package/dist/seed-skills.js +82 -0
  19. package/dist/seed-skills.js.map +1 -0
  20. package/dist/skills-service-client.d.ts +54 -0
  21. package/dist/skills-service-client.d.ts.map +1 -0
  22. package/dist/skills-service-client.js +93 -0
  23. package/dist/skills-service-client.js.map +1 -0
  24. package/dist/skills.d.ts +34 -0
  25. package/dist/skills.d.ts.map +1 -0
  26. package/dist/skills.js +152 -0
  27. package/dist/skills.js.map +1 -0
  28. package/dist/sync.d.ts +18 -2
  29. package/dist/sync.d.ts.map +1 -1
  30. package/dist/sync.js +404 -104
  31. package/dist/sync.js.map +1 -1
  32. package/dist/tools/core.d.ts.map +1 -1
  33. package/dist/tools/core.js +12 -0
  34. package/dist/tools/core.js.map +1 -1
  35. package/dist/tools/skills.d.ts +3 -0
  36. package/dist/tools/skills.d.ts.map +1 -0
  37. package/dist/tools/skills.js +429 -0
  38. package/dist/tools/skills.js.map +1 -0
  39. package/dist/tools/sync-tools.d.ts.map +1 -1
  40. package/dist/tools/sync-tools.js +53 -12
  41. package/dist/tools/sync-tools.js.map +1 -1
  42. package/dist/tools/vm.js +1 -1
  43. package/dist/tools/workflow-ops.js +1 -1
  44. package/dist/tools/workflow-ops.js.map +1 -1
  45. package/package.json +4 -2
  46. package/skills/general/cdp-browser-automation.md +97 -0
  47. package/skills/general/data-extraction-strategies.md +64 -0
  48. package/skills/general/data-hydration-patterns.md +167 -0
  49. package/skills/general/data-passing-between-steps.md +46 -0
  50. package/skills/general/desktop-uiautomation.md +80 -0
  51. package/skills/general/rpa-testing-workflow.md +145 -0
  52. package/skills/general/session-keepalive.md +101 -0
  53. package/skills/general/smart-launch-patterns.md +213 -0
  54. package/skills/general/state-verification.md +56 -0
package/dist/sync.js CHANGED
@@ -1,10 +1,13 @@
1
1
  /**
2
- * Workflow sync — pull/push workflows between Laminar and local filesystem.
3
- * Supports per-workflow operations and workspace-level manifests (laminar.json).
2
+ * Workflow sync — pull/push workflows between Minicor and local filesystem.
3
+ * Supports per-workflow operations and workspace-level manifests (minicor.json).
4
4
  */
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
7
  import { computeDiff } from "./diff.js";
8
+ import { loadAllSkills, buildSkillIndex } from "./skills.js";
9
+ import { listVms } from "./vm-service-client.js";
10
+ import { apiToPlatformBase } from "./agent-service-client.js";
8
11
  // ── Helpers ──────────────────────────────────────────────────
9
12
  export function sanitize(name) {
10
13
  return name
@@ -15,16 +18,21 @@ export function sanitize(name) {
15
18
  .replace(/-+/g, "-")
16
19
  .replace(/^-|-$/g, "");
17
20
  }
21
+ function findManifestPath(projectDir) {
22
+ const minicor = path.join(projectDir, "minicor.json");
23
+ if (fs.existsSync(minicor))
24
+ return minicor;
25
+ const laminar = path.join(projectDir, "laminar.json");
26
+ if (fs.existsSync(laminar))
27
+ return laminar;
28
+ throw new Error(`No minicor.json (or laminar.json) found in ${projectDir}`);
29
+ }
18
30
  export function readManifest(projectDir) {
19
- const p = path.join(projectDir, "laminar.json");
20
- if (!fs.existsSync(p)) {
21
- throw new Error(`No laminar.json found in ${projectDir}`);
22
- }
23
- return JSON.parse(fs.readFileSync(p, "utf-8"));
31
+ return JSON.parse(fs.readFileSync(findManifestPath(projectDir), "utf-8"));
24
32
  }
25
33
  export function writeManifest(projectDir, manifest) {
26
34
  fs.mkdirSync(projectDir, { recursive: true });
27
- fs.writeFileSync(path.join(projectDir, "laminar.json"), JSON.stringify(manifest, null, 2) + "\n", "utf-8");
35
+ fs.writeFileSync(path.join(projectDir, "minicor.json"), JSON.stringify(manifest, null, 2) + "\n", "utf-8");
28
36
  }
29
37
  // ── Pull ─────────────────────────────────────────────────────
30
38
  export async function pullWorkflow(client, workflowId, outputDir) {
@@ -214,13 +222,15 @@ export async function initProject(client, workspaceId, outputDir, opts) {
214
222
  writeManifest(outputDir, manifest);
215
223
  // .gitignore
216
224
  fs.writeFileSync(path.join(outputDir, ".gitignore"), "node_modules/\n.DS_Store\n", "utf-8");
217
- // GitHub Actions
218
- const ghDir = path.join(outputDir, ".github", "workflows");
219
- fs.mkdirSync(ghDir, { recursive: true });
220
- fs.writeFileSync(path.join(ghDir, "laminar-deploy.yml"), DEPLOY_YML, "utf-8");
221
- fs.writeFileSync(path.join(ghDir, "laminar-preview.yml"), PREVIEW_YML, "utf-8");
225
+ // Workspace name for README
226
+ let workspaceName = `Workspace ${workspaceId}`;
227
+ try {
228
+ const ws = await client.getWorkspace(workspaceId);
229
+ workspaceName = ws.name || workspaceName;
230
+ }
231
+ catch { /* best-effort */ }
222
232
  // README
223
- fs.writeFileSync(path.join(outputDir, "README.md"), generateReadme(workspaceId, manifest), "utf-8");
233
+ fs.writeFileSync(path.join(outputDir, "README.md"), generateReadme(workspaceId, workspaceName, manifest), "utf-8");
224
234
  return {
225
235
  projectDir: outputDir,
226
236
  workflowsPulled: Object.keys(manifest.workflows).length,
@@ -271,124 +281,414 @@ export async function pushChanged(client, projectDir) {
271
281
  }
272
282
  return { pushed, unchanged, errors };
273
283
  }
274
- // ── GitHub Action templates ──────────────────────────────────
275
- const DEPLOY_YML = `name: Deploy Laminar Workflows
276
-
277
- on:
278
- push:
279
- branches: [main]
280
- paths: ['workflows/**']
281
-
282
- jobs:
283
- deploy:
284
- runs-on: ubuntu-latest
285
- steps:
286
- - uses: actions/checkout@v4
287
-
288
- - uses: actions/setup-node@v4
289
- with:
290
- node-version: '20'
291
-
292
- - name: Deploy changed workflows
293
- env:
294
- LAMINAR_API_KEY: \${{ secrets.LAMINAR_API_KEY }}
295
- run: |
296
- npx @laminar/mcp-server push --changed
297
- `;
298
- const PREVIEW_YML = `name: Preview Laminar Changes
299
-
300
- on:
301
- pull_request:
302
- paths: ['workflows/**']
303
-
304
- jobs:
305
- preview:
306
- runs-on: ubuntu-latest
307
- steps:
308
- - uses: actions/checkout@v4
309
-
310
- - uses: actions/setup-node@v4
311
- with:
312
- node-version: '20'
313
-
314
- - name: Diff workflows
315
- id: diff
316
- env:
317
- LAMINAR_API_KEY: \${{ secrets.LAMINAR_API_KEY }}
318
- run: |
319
- npx @laminar/mcp-server diff --json > diff-output.json
320
-
321
- - name: Comment PR
322
- if: always()
323
- uses: actions/github-script@v7
324
- with:
325
- script: |
326
- const fs = require('fs');
284
+ export async function cloneWorkspace(client, workspaceId, outputDir, opts) {
285
+ const initResult = await initProject(client, workspaceId, outputDir, opts);
286
+ const minicorDir = path.join(outputDir, ".minicor");
287
+ fs.mkdirSync(minicorDir, { recursive: true });
288
+ // Workspace metadata
289
+ let workspaceName = `Workspace ${workspaceId}`;
290
+ try {
291
+ const ws = await client.getWorkspace(workspaceId);
292
+ workspaceName = ws.name || workspaceName;
293
+ }
294
+ catch { /* best-effort */ }
295
+ const region = opts?.apiBase?.includes("ca.api") ? "ca" : "us";
296
+ fs.writeFileSync(path.join(minicorDir, "workspace.json"), JSON.stringify({ id: workspaceId, name: workspaceName, region, clonedAt: new Date().toISOString() }, null, 2) + "\n", "utf-8");
297
+ // Pull issues → .minicor/issues/
298
+ let issuesPulled = 0;
299
+ try {
300
+ const issues = await client.listIssues(workspaceId);
301
+ if (issues.length > 0) {
302
+ const issuesDir = path.join(minicorDir, "issues");
303
+ fs.mkdirSync(issuesDir, { recursive: true });
304
+ for (const issue of issues) {
305
+ const filename = `${issue.id}-${sanitize(issue.title || "untitled")}.md`;
306
+ const content = [
307
+ `# ${issue.title}`,
308
+ "",
309
+ `**Status:** ${issue.status || "OPEN"}`,
310
+ `**ID:** ${issue.id}`,
311
+ issue.assignee ? `**Assignee:** ${issue.assignee.firstName} ${issue.assignee.lastName}` : "",
312
+ `**Created:** ${issue.createdAt || "unknown"}`,
313
+ "",
314
+ "---",
315
+ "",
316
+ issue.description || "",
317
+ ]
318
+ .filter((line) => line !== undefined)
319
+ .join("\n");
320
+ fs.writeFileSync(path.join(issuesDir, filename), content, "utf-8");
321
+ issuesPulled++;
322
+ }
323
+ }
324
+ }
325
+ catch {
326
+ // best-effort
327
+ }
328
+ // Copy bundled general skills → .minicor/skills/general/
329
+ const skills = loadAllSkills();
330
+ const skillsGeneralDir = path.join(minicorDir, "skills", "general");
331
+ fs.mkdirSync(skillsGeneralDir, { recursive: true });
332
+ let skillsCopied = 0;
333
+ for (const skill of skills) {
334
+ if (skill.category === "general" && skill.filePath) {
327
335
  try {
328
- const diff = JSON.parse(fs.readFileSync('diff-output.json', 'utf8'));
329
- const body = ['## Laminar Workflow Changes', ''];
330
- for (const [wf, changes] of Object.entries(diff)) {
331
- body.push('### ' + wf);
332
- for (const c of changes) {
333
- body.push('- **' + c.step + '**: ' + c.status);
334
- if (c.diff) body.push('\\n' + '\`\`\`diff' + '\\n' + c.diff + '\\n' + '\`\`\`');
335
- }
336
- }
337
- await github.rest.issues.createComment({
338
- issue_number: context.issue.number,
339
- owner: context.repo.owner,
340
- repo: context.repo.repo,
341
- body: body.join('\\n')
342
- });
343
- } catch (e) {
344
- console.error('No diff output or error:', e.message);
336
+ fs.copyFileSync(skill.filePath, path.join(skillsGeneralDir, path.basename(skill.filePath)));
337
+ skillsCopied++;
345
338
  }
346
- `;
347
- function generateReadme(workspaceId, manifest) {
339
+ catch { /* skip */ }
340
+ }
341
+ }
342
+ fs.mkdirSync(path.join(minicorDir, "skills", "workspace"), { recursive: true });
343
+ // Skill index — rewrite filePath to portable relative paths
344
+ const skillIndex = buildSkillIndex(skills).map((s) => ({
345
+ ...s,
346
+ filePath: `.minicor/skills/${s.category}/${path.basename(s.filePath)}`,
347
+ }));
348
+ fs.writeFileSync(path.join(minicorDir, "skill-index.json"), JSON.stringify(skillIndex, null, 2) + "\n", "utf-8");
349
+ // Pull VMs → .minicor/vms.json
350
+ let vms = [];
351
+ let vmsPulled = 0;
352
+ if (opts?.vmServiceBase) {
353
+ try {
354
+ const keys = await client.listApiKeys(workspaceId);
355
+ const apiKeyList = Array.isArray(keys) ? keys : keys?.api_keys ?? keys?.data ?? [];
356
+ if (apiKeyList.length > 0) {
357
+ const workspaceApiKey = apiKeyList[0].apiKey ?? apiKeyList[0].api_key ?? apiKeyList[0].key ?? String(apiKeyList[0]);
358
+ vms = await listVms(opts.vmServiceBase, typeof workspaceApiKey === "string" ? workspaceApiKey : String(workspaceApiKey), { region });
359
+ vmsPulled = vms.length;
360
+ }
361
+ }
362
+ catch { /* best-effort */ }
363
+ }
364
+ const vmsSafe = vms.map((vm) => ({
365
+ id: vm.id,
366
+ vm_name: vm.vm_name,
367
+ status: vm.status || vm.deployment_status || "unknown",
368
+ tunnel_url: vm.tunnel_url,
369
+ channel_id: vm.channel_id,
370
+ service_id: vm.service_id,
371
+ }));
372
+ fs.writeFileSync(path.join(minicorDir, "vms.json"), JSON.stringify(vmsSafe, null, 2) + "\n", "utf-8");
373
+ // Pull agents → .minicor/agents.json
374
+ let agents = [];
375
+ let agentsPulled = 0;
376
+ if (opts?.apiBase) {
377
+ try {
378
+ const platformBase = apiToPlatformBase(opts.apiBase).replace(/\/+$/, "");
379
+ const authToken = client.getToken();
380
+ const headers = { "Content-Type": "application/json" };
381
+ if (authToken)
382
+ headers["Authorization"] = `Bearer ${authToken}`;
383
+ const res = await fetch(`${platformBase}/api/agents/agents?workspace_id=${workspaceId}`, { headers });
384
+ if (res.ok) {
385
+ const data = await res.json();
386
+ agents = data.agents || [];
387
+ agentsPulled = agents.length;
388
+ }
389
+ }
390
+ catch { /* best-effort */ }
391
+ }
392
+ const agentsSafe = agents.map((a) => ({
393
+ id: a.id,
394
+ name: a.name,
395
+ task: a.task,
396
+ mode: a.mode,
397
+ vm_url: a.vm_url,
398
+ watch_workflow_id: a.watch_workflow_id,
399
+ watch_workflow_name: a.watch_workflow_name,
400
+ cron_schedule: a.cron_schedule,
401
+ last_run_status: a.last_run_status,
402
+ total_runs: a.total_runs,
403
+ }));
404
+ fs.writeFileSync(path.join(minicorDir, "agents.json"), JSON.stringify(agentsSafe, null, 2) + "\n", "utf-8");
405
+ // Session.json — check platform for [Workspace:Session] issue first
406
+ let sessionSeeded = false;
407
+ try {
408
+ const allIssues = await client.listIssues(workspaceId);
409
+ const sessionIssue = allIssues.find((i) => i.title === "[Workspace:Session]" && i.status === "OPEN");
410
+ if (sessionIssue) {
411
+ const fullIssue = await client.getIssue(workspaceId, sessionIssue.id);
412
+ if (fullIssue?.description) {
413
+ // Try to extract JSON from the issue description, or store raw
414
+ const sessionData = {
415
+ lastUpdated: fullIssue.updatedAt || new Date().toISOString(),
416
+ lastAgent: "platform-sync",
417
+ currentPhase: "unknown",
418
+ status: "resumed-from-platform",
419
+ workingOn: null,
420
+ completed: [],
421
+ blocked: [],
422
+ nextSteps: ["Review the session context below and continue from where the last agent left off"],
423
+ notes: fullIssue.description,
424
+ syncedFromIssueId: sessionIssue.id,
425
+ };
426
+ // Try to parse structured fields from the description
427
+ const phaseMatch = fullIssue.description.match(/\*\*Phase:\*\*\s*(\S+)/);
428
+ if (phaseMatch)
429
+ sessionData.currentPhase = phaseMatch[1];
430
+ const statusMatch = fullIssue.description.match(/\*\*Status:\*\*\s*(\S+)/);
431
+ if (statusMatch)
432
+ sessionData.status = statusMatch[1];
433
+ fs.writeFileSync(path.join(minicorDir, "session.json"), JSON.stringify(sessionData, null, 2) + "\n", "utf-8");
434
+ sessionSeeded = true;
435
+ }
436
+ }
437
+ }
438
+ catch { /* best-effort */ }
439
+ if (!sessionSeeded) {
440
+ fs.writeFileSync(path.join(minicorDir, "session.json"), JSON.stringify({
441
+ lastUpdated: new Date().toISOString(),
442
+ lastAgent: "clone_workspace",
443
+ currentPhase: "gather-context",
444
+ status: "fresh-clone",
445
+ workingOn: null,
446
+ completed: [
447
+ `Cloned workspace: ${initResult.workflowsPulled} workflows, ${issuesPulled} issues, ${skillsCopied} skills, ${vmsPulled} VMs`,
448
+ ],
449
+ blocked: [],
450
+ nextSteps: [
451
+ "Run get_workspace_context to orient",
452
+ "Follow Phase 0: read intake folder, study workflows, build context.md",
453
+ "Then ask the user what to build or fix",
454
+ ],
455
+ notes: `Fresh clone of ${workspaceName} (workspace ${workspaceId}).`,
456
+ }, null, 2) + "\n", "utf-8");
457
+ }
458
+ // Intake folder for transcripts/instructions
459
+ fs.mkdirSync(path.join(minicorDir, "intake"), { recursive: true });
460
+ fs.writeFileSync(path.join(minicorDir, "intake", "README.md"), "# Intake\n\nDrop raw inputs here: Loom transcripts, customer instructions, scoping documents.\n\nThe agent reads these during Phase 0 (Gather Context) and incorporates them into `.minicor/context.md`.\n", "utf-8");
461
+ // AGENTS.md
462
+ fs.writeFileSync(path.join(outputDir, "AGENTS.md"), generateAgentsMd(workspaceName, workspaceId, vmsSafe, agentsSafe), "utf-8");
463
+ // Cursor harness — auto-loads and points to get_workspace_context
464
+ const cursorRulesDir = path.join(outputDir, ".cursor", "rules");
465
+ fs.mkdirSync(cursorRulesDir, { recursive: true });
466
+ fs.writeFileSync(path.join(cursorRulesDir, "workspace.mdc"), `---\ndescription: Minicor workspace clone\nalwaysApply: true\n---\nYou are in a Minicor workspace clone (${workspaceName}). Call \`get_workspace_context(directory: "${outputDir}")\` to orient yourself before doing anything else. It returns AGENTS.md, workspace metadata, VMs, skills, session state, and any prior context. If there is an active session, resume from where the last agent left off. Before ending your session, write .minicor/session.json and sync it to a [Workspace:Session] issue.\n`, "utf-8");
467
+ // Update README with workspace name
468
+ fs.writeFileSync(path.join(outputDir, "README.md"), generateReadme(workspaceId, workspaceName, initResult.manifest), "utf-8");
469
+ return {
470
+ projectDir: outputDir,
471
+ workflowsPulled: initResult.workflowsPulled,
472
+ issuesPulled,
473
+ skillsCopied,
474
+ vmsPulled,
475
+ agentsPulled,
476
+ manifest: initResult.manifest,
477
+ skillIndex,
478
+ };
479
+ }
480
+ // ── Templates ────────────────────────────────────────────────
481
+ function generateReadme(workspaceId, workspaceName, manifest) {
348
482
  const wfList = Object.entries(manifest.workflows)
349
483
  .map(([dir, wf]) => `- \`workflows/${dir}/\` — ${wf.name} (ID: ${wf.id})`)
350
484
  .join("\n");
351
- return `# Laminar Workflows
485
+ return `# ${workspaceName}
352
486
 
353
- This repository contains version-controlled [Laminar](https://laminar.run) workflows for workspace **${workspaceId}**.
487
+ Minicor workspace **${workspaceId}** — cloned workflows, skills, and agent context.
354
488
 
355
489
  ## Workflows
356
490
 
357
491
  ${wfList}
358
492
 
359
- ## Setup
360
-
361
- 1. Add your \`LAMINAR_API_KEY\` as a repository secret in GitHub Settings > Secrets
362
- 2. Push to \`main\` to deploy, open PRs to preview changes
363
-
364
493
  ## Development
365
494
 
366
- Edit step files directly in \`workflows/<name>/steps/\`. Each file is a standalone JS or Python function.
495
+ Edit step files in \`workflows/<name>/steps/\`. Each file is a JS wrapper around a Python RPA script.
367
496
 
368
- ### Pull latest from Laminar
497
+ ### Pull latest
369
498
 
370
499
  \`\`\`bash
371
- npx @laminar/mcp-server pull --all
500
+ npx @minicor/mcp-server pull --all
372
501
  \`\`\`
373
502
 
374
- ### Push changes to Laminar
503
+ ### Push changes
375
504
 
376
505
  \`\`\`bash
377
- npx @laminar/mcp-server push --changed
506
+ npx @minicor/mcp-server push --changed
378
507
  \`\`\`
379
508
 
380
- ### Check what's different
509
+ ### Check diff
381
510
 
382
511
  \`\`\`bash
383
- npx @laminar/mcp-server diff
512
+ npx @minicor/mcp-server diff
384
513
  \`\`\`
385
514
 
386
515
  ## Structure
387
516
 
388
- - \`laminar.json\` — Project manifest (workspace ID, workflow mappings)
389
- - \`workflows/<name>/workflow.json\` — Step metadata (names, types, execution order)
390
- - \`workflows/<name>/steps/\` — Individual step files (JS/Python)
391
- - \`.github/workflows/\` — CI/CD automation
517
+ - \`minicor.json\` — Workspace manifest (ID, workflow mappings)
518
+ - \`workflows/<name>/workflow.json\` — Step metadata
519
+ - \`workflows/<name>/steps/\` — Step files (JS/Python)
520
+ - \`.minicor/\` — Skills, issues, workspace metadata, VM info
521
+ - \`AGENTS.md\` — Instructions for AI agents working in this workspace
522
+ `;
523
+ }
524
+ function generateAgentsMd(workspaceName, workspaceId, vms, agents) {
525
+ const vmSection = vms.length > 0
526
+ ? vms.map((vm) => `- **${vm.vm_name}** (ID: ${vm.id}) — ${vm.tunnel_url || "no tunnel"} — ${vm.status || "unknown"}`).join("\n")
527
+ : "No VMs found. Use `deploy_vm` to provision one.";
528
+ const agentSection = agents.length > 0
529
+ ? agents.map((a) => `- **${a.name}** (${a.mode}) — ${a.task?.slice(0, 80) || "no task"}${a.watch_workflow_name ? ` — watches: ${a.watch_workflow_name}` : ""}${a.cron_schedule ? ` — schedule: ${a.cron_schedule}` : ""}`).join("\n")
530
+ : "No agents configured. Use `create_agent` to set up monitoring or scheduled agents.";
531
+ return `# ${workspaceName} — Agent Instructions
532
+
533
+ This workspace was cloned from Minicor workspace **${workspaceId}**. Follow this loop when working here.
534
+
535
+ ## Resuming Work
536
+
537
+ Before starting any phase, call \`get_workspace_context\` and check the \`session\` field:
538
+
539
+ - If a session exists, read \`currentPhase\`, \`workingOn\`, and \`nextSteps\` to understand where the last agent left off
540
+ - Resume from the indicated phase and task — don't start over
541
+ - Check \`blocked\` for known issues to avoid
542
+ - If no session exists, start from Phase 0
543
+
544
+ **Before ending your session**, write \`.minicor/session.json\`:
545
+
546
+ \`\`\`json
547
+ {
548
+ "lastUpdated": "<ISO timestamp>",
549
+ "lastAgent": "<your name or 'cursor-session'>",
550
+ "currentPhase": "<phase you're in: gather-context|orient|scope|build|test|harden|learn>",
551
+ "status": "<in-progress|completed|blocked>",
552
+ "workingOn": {
553
+ "workflow": "<workflow name>",
554
+ "workflowId": 0,
555
+ "step": 0,
556
+ "stepName": "<step name>",
557
+ "description": "<what you were doing>"
558
+ },
559
+ "completed": ["<list of things you finished>"],
560
+ "blocked": ["<list of blockers if any>"],
561
+ "nextSteps": ["<clear instructions for the next agent>"],
562
+ "notes": "<anything the next agent should know>"
563
+ }
564
+ \`\`\`
565
+
566
+ Also sync the session to the platform: call \`update_issue\` to create/update a \`[Workspace:Session]\` issue (workspace ${workspaceId}) with the same content as markdown. This ensures agents on other machines or bedrock-minicor agents can pick up where you left off.
567
+
568
+ ## The Loop
569
+
570
+ ### Phase 0: Gather Context
571
+
572
+ First time (or if \`.minicor/context.md\` is missing):
573
+ 1. Check \`.minicor/intake/\` for raw inputs (transcripts, instructions, requirements) — read and incorporate
574
+ 2. Read every workflow in \`workflows/\` — understand what's automated
575
+ 3. Read all issues in \`.minicor/issues/\` — bugs, agent context, gap analyses
576
+ 4. Call \`get_workflow_overview\` for each workflow to see execution history
577
+ 5. Write \`.minicor/context.md\` summarizing: what apps, what works, what's broken, what patterns, intake findings
578
+ 6. Create/update a \`[Workspace:Context]\` issue via \`create_issue\` so other agents benefit
579
+
580
+ If \`.minicor/context.md\` exists, read it and skip full analysis. Update it at the end of the session.
581
+
582
+ ### Phase 1: Orient
583
+
584
+ - Read \`.minicor/context.md\` (workspace understanding)
585
+ - Read \`.minicor/workspace.json\` (name, ID, region)
586
+ - Read \`.minicor/vms.json\` (available VMs and tunnel URLs)
587
+ - Read \`.minicor/agents.json\` (configured agents — monitors, scheduled, on-demand)
588
+ - Scan \`.minicor/issues/\` for \`[Agent:*]\` context from previous runs
589
+ - Run \`list_skills()\` to see available skills
590
+
591
+ ### Phase 2: Scope
592
+
593
+ - Study existing workflow code in \`workflows/\`
594
+ - Ask the user what to build or fix
595
+ - Load relevant skills: \`get_skill("cdp-browser-automation")\` or \`get_skill("desktop-uiautomation")\`
596
+ - For session management: \`get_skill("smart-launch-patterns")\`
597
+ - For data workflows: \`get_skill("data-hydration-patterns")\`
598
+ - Always load \`get_skill("rpa-testing-workflow")\` — mandatory
599
+
600
+ ### Phase 3: Build
601
+
602
+ - Connect to a VM: \`vm_connect\` with tunnel URL from \`.minicor/vms.json\`
603
+ - Screenshot, inspect UI, write Python scripts
604
+ - Save steps with \`create_rpa_flow\` (never \`create_flow\` for RPA)
605
+
606
+ ### Phase 4: Test
607
+
608
+ Follow the \`rpa-testing-workflow\` skill exactly:
609
+ - Each step: \`execute_workflow_async\` with \`start_from_step\`/\`end_at_step\`
610
+ - Poll \`get_execution_status\`, take \`vm_screenshot\` during runs
611
+ - Fix failures through the executor, NOT \`vm_execute_script\`
612
+ - Full e2e test after all steps pass individually
613
+
614
+ ### Phase 5: Harden (production only)
615
+
616
+ - Load \`get_skill("state-verification")\`, add pre/post state checks
617
+ - Load \`get_skill("smart-launch-patterns")\` — build a Smart Launch workflow if none exists
618
+ - Load \`get_skill("session-keepalive")\` — set up scheduled health checks
619
+ - Run workflow twice for idempotency
620
+ - Set up monitoring agent via \`create_agent\`
621
+
622
+ ### Phase 6: Learn
623
+
624
+ - \`generate_skill\` to extract patterns from successful workflows
625
+ - \`save_skill\` to persist for future builds
626
+ - Update/create issues: \`[Agent:<name>] Rules\`, \`[Agent:<name>] Context\`
627
+ - Update \`.minicor/context.md\` with anything new
628
+ - Update \`[Workspace:Context]\` issue on the platform
629
+ - \`push_changed\` to sync updates back
630
+
631
+ ## VMs
632
+
633
+ ${vmSection}
634
+
635
+ ## Agents
636
+
637
+ ${agentSection}
638
+
639
+ ## Multi-Agent Context Handoff
640
+
641
+ Agents working in this workspace pass context to each other through:
642
+
643
+ 1. \`.minicor/context.md\` — workspace-level understanding (updated by each agent)
644
+ 2. \`.minicor/intake/\` — raw inputs (transcripts, instructions) that get processed into context
645
+ 3. \`[Agent:<name>] Rules\` issues — per-agent behavioral rules
646
+ 4. \`[Agent:<name>] Context\` issues — per-agent persistent state
647
+ 5. \`[Agent:<name>] Session YYYY-MM-DD\` issues — what happened in each run
648
+ 6. \`[Workspace:Context]\` issue — shared workspace understanding (platform-synced)
649
+
650
+ **When starting a task:**
651
+ - Read \`context.md\` and all \`[Agent:*]\` issues to understand what previous agents did
652
+ - Check \`.minicor/intake/\` for new raw inputs to process
653
+ - Check \`[Workspace:Context]\` for the latest shared understanding
654
+
655
+ **When finishing a task:**
656
+ - Update \`context.md\` with what you learned
657
+ - Create/update your \`[Agent:<name>] Session\` issue with what you did
658
+ - If you discovered something reusable, call \`save_skill\`
659
+
660
+ ## Workspace Structure
661
+
662
+ \`\`\`
663
+ minicor.json — manifest (workspace ID, workflow mappings)
664
+ AGENTS.md — this file
665
+ workflows/<name>/
666
+ workflow.json — step metadata (names, types, execution order)
667
+ steps/*.js — step implementations (JS wrappers around Python RPA)
668
+ .minicor/
669
+ workspace.json — workspace name, ID, region, clone timestamp
670
+ vms.json — available VMs with names, IDs, tunnel URLs
671
+ agents.json — configured agents (monitors, scheduled, on-demand)
672
+ context.md — workspace understanding (built/updated by agents)
673
+ skill-index.json — compact skill summaries
674
+ skills/general/*.md — bundled general skills
675
+ skills/workspace/*.md — workspace-specific learned skills
676
+ issues/*.md — serialized issues from previous agent runs
677
+ intake/ — raw inputs (transcripts, instructions, requirements)
678
+ \`\`\`
679
+
680
+ ## Skills
681
+
682
+ Run \`list_skills()\` to see all available skills. Key ones:
683
+ - \`rpa-testing-workflow\` — **mandatory**, testing sequences
684
+ - \`smart-launch-patterns\` — session management, app launch, login detection
685
+ - \`data-hydration-patterns\` — standard CRUD data workflows
686
+ - \`session-keepalive\` — scheduled health checks, auto-recovery
687
+ - \`cdp-browser-automation\` — Chrome CDP patterns
688
+ - \`desktop-uiautomation\` — Windows desktop patterns
689
+ - \`data-extraction-strategies\` — reading data from screen
690
+ - \`data-passing-between-steps\` — multi-step data flow
691
+ - \`state-verification\` — production UI verification
392
692
  `;
393
693
  }
394
694
  //# sourceMappingURL=sync.js.map
package/dist/sync.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"sync.js","sourceRoot":"","sources":["../src/sync.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/tools/core.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgB5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAqhBtC"}
1
+ {"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../../src/tools/core.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,aAAa,CAAC;AAgB5C,wBAAgB,QAAQ,CAAC,IAAI,EAAE,QAAQ,QAsiBtC"}