@minicor/mcp-server 3.2.0 → 3.2.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -34,10 +34,46 @@ npx @minicor/mcp-server-setup
34
34
 
35
35
  Opens a browser to sign in. Tokens stored at `~/.minicor/tokens.json` with auto-refresh. For headless: `npx @minicor/mcp-server-setup --cli`.
36
36
 
37
- ### 3. Update
37
+ ### 3. Bootstrap Workspace (optional)
38
+
39
+ After cloning a workspace, generate harness-specific config files:
40
+
41
+ ```bash
42
+ # For Claude Code — creates CLAUDE.md + .claude/settings.local.json
43
+ npx @minicor/mcp-server minicor-bootstrap claude-code --dir ./my-workspace
44
+
45
+ # For Cursor — creates .cursor/rules/workspace.mdc
46
+ npx @minicor/mcp-server minicor-bootstrap cursor --dir ./my-workspace
47
+
48
+ # All harnesses at once
49
+ npx @minicor/mcp-server minicor-bootstrap all --dir ./my-workspace
50
+ ```
51
+
52
+ ### 4. Update
38
53
 
39
54
  `npx` users: restart your editor (auto-fetches latest). Global: `npm update -g @minicor/mcp-server`.
40
55
 
56
+ ## Session Lifecycle
57
+
58
+ The MCP server sends **instructions** to every client on connect, telling agents to call `session_start` first when in a workspace clone. This works across all harnesses — Claude Code, Cursor, Bedrock, etc.
59
+
60
+ ### Session Tools
61
+
62
+ | Tool | What it does |
63
+ | --- | --- |
64
+ | `session_start` | Load workspace context (AGENTS.md, VMs, skills, issues, prior session). Call FIRST in a workspace clone. |
65
+ | `session_checkpoint` | Save progress mid-session. Writes `.minicor/session.json` + syncs `[Workspace:Session]` issue. |
66
+ | `session_end` | Persist final state, sync to platform, optionally update context.md. Call before ending work. |
67
+ | `set_workspaces_root` | Set default root directory for cloning workspaces (saved to `~/.minicor/config.json`). |
68
+
69
+ ### Auto-Save on Disconnect
70
+
71
+ If the agent crashes or the user closes the IDE, the server auto-checkpoints with `status: "interrupted"` so no session state is lost. The next agent resumes from that checkpoint.
72
+
73
+ ### Multi-Agent Handoff
74
+
75
+ Sessions are synced to `[Workspace:Session]` issues on the platform, so agents on other machines (or scheduled Bedrock agents) can resume where the last agent left off.
76
+
41
77
  ## The RPA Lifecycle
42
78
 
43
79
  This is the complete flow from zero to production automation. The agent handles each phase using MCP tools and skills.
@@ -310,24 +346,36 @@ Agents are autonomous runners that execute tasks on VMs using MCP tools. After b
310
346
  ### Workspace Sync
311
347
 
312
348
 
313
- | Tool | What it does |
314
- | --------------------------------- | -------------------------------------------------------------- |
315
- | `clone_workspace` | Full workspace clone: workflows + skills + issues + metadata |
316
- | `init_project` | Scaffold a git-ready project from a workspace (workflows only) |
317
- | `pull_workflow` / `push_workflow` | Sync individual workflows |
318
- | `pull_all` / `push_changed` | Bulk sync |
319
- | `sync_status` | Diff local vs deployed |
349
+ | Tool | What it does |
350
+ | --------------------------------- | ------------------------------------------------------------------------------ |
351
+ | `clone_workspace` | Full workspace clone: workflows + skills + issues + metadata. Defaults to configured workspaces root if outputDir omitted. |
352
+ | `init_project` | Scaffold a git-ready project from a workspace (workflows only) |
353
+ | `pull_workflow` / `push_workflow` | Sync individual workflows |
354
+ | `pull_all` / `push_changed` | Bulk sync |
355
+ | `sync_status` | Diff local vs deployed |
356
+ | `set_workspaces_root` | Set default root directory for cloning workspaces (`~/.minicor/config.json`) |
357
+
358
+
359
+ ### Session Lifecycle
360
+
361
+
362
+ | Tool | What it does |
363
+ | --------------------- | --------------------------------------------------------------------------------------------- |
364
+ | `session_start` | Load full workspace context + begin session tracking. Call FIRST in a workspace clone. |
365
+ | `session_checkpoint` | Save progress: writes `.minicor/session.json` + syncs `[Workspace:Session]` issue. |
366
+ | `session_end` | End session: persist final state, sync to platform, optionally update context.md. |
320
367
 
321
368
 
322
369
  ## Prompts
323
370
 
324
371
 
325
- | Prompt | What it does |
326
- | -------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
327
- | `build-rpa-workflow` | Guided automation building with POC/production mode. Loads skills, iterative build loop, per-step Minicor testing, optional hardening. |
328
- | `debug-workflow-execution` | Analyze a failed execution with VM-aware debugging and replay |
329
- | `minicor-workflow-guide` | Full workflow specification: step types, data access, keywords, libraries |
330
- | `2fa-workflow-guide` | Handling 2FA in workflows: provisioning channels, TOTP secrets, auto-resolving OTP codes |
372
+ | Prompt | What it does |
373
+ | ---------------------------- | -------------------------------------------------------------------------------------------------------------------------------------- |
374
+ | `build-rpa-workflow` | Guided automation building with POC/production mode. Loads skills, iterative build loop, per-step Minicor testing, optional hardening. |
375
+ | `debug-workflow-execution` | Analyze a failed execution with VM-aware debugging and replay |
376
+ | `minicor-workflow-guide` | Full workflow specification: step types, data access, keywords, libraries |
377
+ | `2fa-workflow-guide` | Handling 2FA in workflows: provisioning channels, TOTP secrets, auto-resolving OTP codes |
378
+ | `workspace-session-guide` | Returns AGENTS.md rules and session state for any workspace clone |
331
379
 
332
380
 
333
381
  The `build-rpa-workflow` prompt accepts a `mode` parameter:
@@ -363,27 +411,24 @@ npm test
363
411
 
364
412
  ```
365
413
  src/
366
- index.ts — CLI MCP entry (stdio transport, token management)
414
+ index.ts — CLI MCP entry (stdio transport, token management, disconnect hooks)
367
415
  lib.ts — Embeddable server factory (in-process, no side effects)
416
+ bootstrap.ts — CLI to generate harness configs (CLAUDE.md, .cursor/rules, etc.)
417
+ config.ts — User config (~/.minicor/config.json) — workspacesRoot, etc.
418
+ state.ts — Shared mutable state (VM connections, active session tracking)
368
419
  skills.ts — Skill loader, parser, index builder
369
- skills-service-client.ts — HTTP client for skills service
370
- seed-skills.ts — CLI to seed skills service from bundled files
371
420
  tools/
421
+ session.ts — session_start, session_checkpoint, session_end, auto-checkpoint
372
422
  skills.ts — list_skills, get_skill, save_skill, generate_skill
423
+ sync-tools.ts — clone_workspace, init_project, pull/push, set_workspaces_root
373
424
  vm.ts, vm-rpa.ts — VM and RPA tools
374
425
  core.ts — Workflows, flows, executions
375
- sync-tools.ts — clone_workspace, init_project, pull/push
376
426
  ...
377
427
  prompts/
428
+ workspace-session.ts — Workspace session guide prompt
378
429
  build-rpa.ts — Guided RPA building (POC/production modes)
379
430
  ...
380
431
  skills/
381
432
  general/ — Bundled skill files (shipped with npm package)
382
- rpa-testing-workflow.md
383
- cdp-browser-automation.md
384
- desktop-uiautomation.md
385
- data-extraction-strategies.md
386
- data-passing-between-steps.md
387
- state-verification.md
388
433
  ```
389
434
 
@@ -0,0 +1,12 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Bootstrap CLI — generates harness-specific config files for a Minicor workspace clone.
4
+ *
5
+ * Usage:
6
+ * minicor-bootstrap claude-code [--dir <workspace-dir>]
7
+ * minicor-bootstrap cursor [--dir <workspace-dir>]
8
+ * minicor-bootstrap generic [--dir <workspace-dir>]
9
+ * minicor-bootstrap all [--dir <workspace-dir>]
10
+ */
11
+ export {};
12
+ //# sourceMappingURL=bootstrap.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.d.ts","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG"}
@@ -0,0 +1,244 @@
1
+ #!/usr/bin/env node
2
+ /**
3
+ * Bootstrap CLI — generates harness-specific config files for a Minicor workspace clone.
4
+ *
5
+ * Usage:
6
+ * minicor-bootstrap claude-code [--dir <workspace-dir>]
7
+ * minicor-bootstrap cursor [--dir <workspace-dir>]
8
+ * minicor-bootstrap generic [--dir <workspace-dir>]
9
+ * minicor-bootstrap all [--dir <workspace-dir>]
10
+ */
11
+ import fs from "node:fs";
12
+ import path from "node:path";
13
+ function resolveDir(args) {
14
+ const idx = args.indexOf("--dir");
15
+ if (idx !== -1 && args[idx + 1]) {
16
+ return path.resolve(args[idx + 1]);
17
+ }
18
+ return process.cwd();
19
+ }
20
+ function loadWorkspaceInfo(dir) {
21
+ const manifestPath = path.join(dir, "minicor.json");
22
+ if (!fs.existsSync(manifestPath)) {
23
+ console.error(`Error: ${dir} is not a Minicor workspace clone (no minicor.json found).`);
24
+ process.exit(1);
25
+ }
26
+ const manifest = JSON.parse(fs.readFileSync(manifestPath, "utf-8"));
27
+ let name = "Minicor Workspace";
28
+ let region;
29
+ const wsPath = path.join(dir, ".minicor", "workspace.json");
30
+ if (fs.existsSync(wsPath)) {
31
+ const ws = JSON.parse(fs.readFileSync(wsPath, "utf-8"));
32
+ name = ws.name || name;
33
+ region = ws.region;
34
+ }
35
+ return {
36
+ dir,
37
+ name,
38
+ workspaceId: manifest.workspace ?? 0,
39
+ region,
40
+ hasAgentsMd: fs.existsSync(path.join(dir, "AGENTS.md")),
41
+ };
42
+ }
43
+ function bootstrapClaudeCode(info) {
44
+ const claudeMd = `# ${info.name} — Minicor Workspace
45
+
46
+ This workspace is a Minicor workspace clone (workspace **${info.workspaceId}**).
47
+
48
+ ## CRITICAL: First Action
49
+
50
+ Call \`session_start(directory: "${info.dir}")\` as your FIRST action in every session.
51
+ It returns the workspace rules (AGENTS.md), prior session state for resuming, and all
52
+ context you need. Follow the phase loop it describes.
53
+
54
+ ## Session Management
55
+
56
+ - **Resume**: If session_start returns a prior session, resume from where the last agent left off.
57
+ Do NOT start over.
58
+ - **Checkpoint**: Call \`session_checkpoint\` between phases or after significant progress.
59
+ - **End**: Call \`session_end\` before ending your work. Other agents depend on this to resume.
60
+
61
+ ## Key Rules
62
+
63
+ - Use \`create_rpa_flow\` for RPA steps, never \`create_flow\`
64
+ - Follow the \`rpa-testing-workflow\` skill for testing
65
+ - Fix failures through the executor, NOT \`vm_execute_script\`
66
+ - Update \`.minicor/context.md\` when you learn something new
67
+ - Create/update \`[Workspace:Session]\` and \`[Workspace:Context]\` issues
68
+ `;
69
+ const claudeMdPath = path.join(info.dir, "CLAUDE.md");
70
+ fs.writeFileSync(claudeMdPath, claudeMd, "utf-8");
71
+ console.log(` Created ${claudeMdPath}`);
72
+ const claudeDir = path.join(info.dir, ".claude");
73
+ if (!fs.existsSync(claudeDir))
74
+ fs.mkdirSync(claudeDir, { recursive: true });
75
+ const settingsPath = path.join(claudeDir, "settings.local.json");
76
+ let settings = {};
77
+ if (fs.existsSync(settingsPath)) {
78
+ try {
79
+ settings = JSON.parse(fs.readFileSync(settingsPath, "utf-8"));
80
+ }
81
+ catch {
82
+ settings = {};
83
+ }
84
+ }
85
+ if (!settings.permissions)
86
+ settings.permissions = {};
87
+ if (!settings.permissions.allow)
88
+ settings.permissions.allow = [];
89
+ const requiredPerms = [
90
+ "mcp__minicor__session_start",
91
+ "mcp__minicor__session_checkpoint",
92
+ "mcp__minicor__session_end",
93
+ "mcp__minicor__get_workspace_context",
94
+ "mcp__minicor__list_workspaces",
95
+ "mcp__minicor__list_workflows",
96
+ "mcp__minicor__get_workflow",
97
+ "mcp__minicor__get_workflow_overview",
98
+ "mcp__minicor__list_executions",
99
+ "mcp__minicor__get_execution",
100
+ "mcp__minicor__get_execution_status",
101
+ "mcp__minicor__get_execution_result",
102
+ "mcp__minicor__execute_workflow",
103
+ "mcp__minicor__execute_workflow_async",
104
+ "mcp__minicor__create_rpa_flow",
105
+ "mcp__minicor__debug_rpa_step",
106
+ "mcp__minicor__vm_connect",
107
+ "mcp__minicor__vm_disconnect",
108
+ "mcp__minicor__vm_status",
109
+ "mcp__minicor__vm_screenshot",
110
+ "mcp__minicor__vm_execute_script",
111
+ "mcp__minicor__vm_inspect_ui",
112
+ "mcp__minicor__vm_list",
113
+ "mcp__minicor__list_issues",
114
+ "mcp__minicor__get_issue",
115
+ "mcp__minicor__create_issue",
116
+ "mcp__minicor__update_issue",
117
+ "mcp__minicor__list_skills",
118
+ "mcp__minicor__get_skill",
119
+ "mcp__minicor__save_skill",
120
+ "mcp__minicor__generate_skill",
121
+ "mcp__minicor__push_changed",
122
+ "mcp__minicor__pull_all",
123
+ "mcp__minicor__sync_status",
124
+ "mcp__minicor__create_agent",
125
+ "mcp__minicor__list_agents",
126
+ "mcp__minicor__test_workflow_step",
127
+ "mcp__minicor__diagnose_execution",
128
+ ];
129
+ const existing = new Set(settings.permissions.allow);
130
+ for (const perm of requiredPerms) {
131
+ if (!existing.has(perm)) {
132
+ settings.permissions.allow.push(perm);
133
+ }
134
+ }
135
+ fs.writeFileSync(settingsPath, JSON.stringify(settings, null, 2) + "\n", "utf-8");
136
+ console.log(` Updated ${settingsPath}`);
137
+ }
138
+ function bootstrapCursor(info) {
139
+ const cursorDir = path.join(info.dir, ".cursor", "rules");
140
+ if (!fs.existsSync(cursorDir))
141
+ fs.mkdirSync(cursorDir, { recursive: true });
142
+ const mdc = `---
143
+ description: Minicor workspace clone
144
+ alwaysApply: true
145
+ ---
146
+ You are in a Minicor workspace clone (${info.name}). Call \`session_start(directory: "${info.dir}")\` as your FIRST action. 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, call \`session_end()\` to persist progress and sync it to a [Workspace:Session] issue.
147
+ `;
148
+ const mdcPath = path.join(cursorDir, "workspace.mdc");
149
+ fs.writeFileSync(mdcPath, mdc, "utf-8");
150
+ console.log(` Created ${mdcPath}`);
151
+ }
152
+ function bootstrapGeneric(info) {
153
+ const minicorDir = path.join(info.dir, ".minicor");
154
+ if (!fs.existsSync(minicorDir))
155
+ fs.mkdirSync(minicorDir, { recursive: true });
156
+ const prompt = `# ${info.name} — System Prompt
157
+
158
+ You are working in a Minicor workspace clone (workspace ${info.workspaceId}).
159
+
160
+ ## Required First Action
161
+
162
+ Call \`session_start(directory: "${info.dir}")\` as your FIRST action.
163
+ It returns:
164
+ - AGENTS.md with the full agent phase loop
165
+ - Workspace metadata (VMs, agents, skills)
166
+ - Prior session state for resuming
167
+ - Context from previous agent runs
168
+
169
+ ## Session Lifecycle
170
+
171
+ 1. **Start**: \`session_start\` — loads context and begins tracking
172
+ 2. **Checkpoint**: \`session_checkpoint\` — saves progress between phases
173
+ 3. **End**: \`session_end\` — persists final state, syncs to platform
174
+
175
+ ## Key Rules
176
+
177
+ - Follow the phase loop from AGENTS.md: gather-context → orient → scope → build → test → harden → learn
178
+ - If a prior session exists, resume from where it left off
179
+ - Use \`create_rpa_flow\` for RPA steps (never \`create_flow\`)
180
+ - Always call \`session_end\` before finishing
181
+ `;
182
+ const promptPath = path.join(minicorDir, "system-prompt.md");
183
+ fs.writeFileSync(promptPath, prompt, "utf-8");
184
+ console.log(` Created ${promptPath}`);
185
+ }
186
+ function showHelp() {
187
+ console.log(`
188
+ minicor-bootstrap — Generate harness-specific config for a Minicor workspace clone
189
+
190
+ Usage:
191
+ minicor-bootstrap <target> [--dir <workspace-dir>]
192
+
193
+ Targets:
194
+ claude-code Generate CLAUDE.md + .claude/settings.local.json
195
+ cursor Generate .cursor/rules/workspace.mdc
196
+ generic Generate .minicor/system-prompt.md
197
+ all Generate all of the above
198
+
199
+ Options:
200
+ --dir <path> Workspace directory (default: current directory)
201
+
202
+ Examples:
203
+ minicor-bootstrap all
204
+ minicor-bootstrap claude-code --dir /path/to/workspace
205
+ minicor-bootstrap cursor --dir ./my-workspace
206
+ `);
207
+ }
208
+ async function main() {
209
+ const args = process.argv.slice(2);
210
+ const target = args[0];
211
+ if (!target || target === "help" || target === "--help") {
212
+ showHelp();
213
+ return;
214
+ }
215
+ const dir = resolveDir(args);
216
+ const info = loadWorkspaceInfo(dir);
217
+ console.log(`Bootstrapping "${info.name}" (workspace ${info.workspaceId}) at ${dir}\n`);
218
+ switch (target) {
219
+ case "claude-code":
220
+ bootstrapClaudeCode(info);
221
+ break;
222
+ case "cursor":
223
+ bootstrapCursor(info);
224
+ break;
225
+ case "generic":
226
+ bootstrapGeneric(info);
227
+ break;
228
+ case "all":
229
+ bootstrapClaudeCode(info);
230
+ bootstrapCursor(info);
231
+ bootstrapGeneric(info);
232
+ break;
233
+ default:
234
+ console.error(`Unknown target: ${target}`);
235
+ showHelp();
236
+ process.exit(1);
237
+ }
238
+ console.log("\nDone. Re-run after updating AGENTS.md to regenerate configs.");
239
+ }
240
+ main().catch((err) => {
241
+ console.error(`Error: ${err.message}`);
242
+ process.exit(1);
243
+ });
244
+ //# sourceMappingURL=bootstrap.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"bootstrap.js","sourceRoot":"","sources":["../src/bootstrap.ts"],"names":[],"mappings":"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"}
package/dist/config.d.ts CHANGED
@@ -1,11 +1,14 @@
1
1
  /**
2
2
  * Configuration helpers for Minicor MCP.
3
3
  *
4
- * Previously housed Elasticsearch + CRON service config.
5
- * Kept for future extensibility; config file paths still used by setup.
4
+ * Stores user preferences in ~/.minicor/config.json:
5
+ * - workspacesRoot: default directory for cloning workspaces
6
6
  */
7
7
  export interface ServiceConfig {
8
+ /** Default root directory for cloning workspaces (e.g. ~/laminar/customers) */
9
+ workspacesRoot?: string;
8
10
  }
9
11
  export declare function loadServiceConfig(): ServiceConfig;
10
- export declare function saveServiceConfig(update: ServiceConfig): void;
12
+ export declare function saveServiceConfig(update: Partial<ServiceConfig>): void;
13
+ export declare function getWorkspacesRoot(): string | undefined;
11
14
  //# sourceMappingURL=config.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,aAAa;CAAG;AAEjC,wBAAgB,iBAAiB,IAAI,aAAa,CAEjD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,aAAa,QAiBtD"}
1
+ {"version":3,"file":"config.d.ts","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAMH,MAAM,WAAW,aAAa;IAC5B,+EAA+E;IAC/E,cAAc,CAAC,EAAE,MAAM,CAAC;CACzB;AAED,wBAAgB,iBAAiB,IAAI,aAAa,CAQjD;AAED,wBAAgB,iBAAiB,CAAC,MAAM,EAAE,OAAO,CAAC,aAAa,CAAC,QAU/D;AAED,wBAAgB,iBAAiB,IAAI,MAAM,GAAG,SAAS,CAGtD"}
package/dist/config.js CHANGED
@@ -1,13 +1,20 @@
1
1
  /**
2
2
  * Configuration helpers for Minicor MCP.
3
3
  *
4
- * Previously housed Elasticsearch + CRON service config.
5
- * Kept for future extensibility; config file paths still used by setup.
4
+ * Stores user preferences in ~/.minicor/config.json:
5
+ * - workspacesRoot: default directory for cloning workspaces
6
6
  */
7
7
  import fs from "node:fs";
8
8
  import path from "node:path";
9
9
  import { getConfigPath, getWriteConfigPath } from "./paths.js";
10
10
  export function loadServiceConfig() {
11
+ try {
12
+ const readPath = getConfigPath();
13
+ if (fs.existsSync(readPath)) {
14
+ return JSON.parse(fs.readFileSync(readPath, "utf-8"));
15
+ }
16
+ }
17
+ catch { }
11
18
  return {};
12
19
  }
13
20
  export function saveServiceConfig(update) {
@@ -15,17 +22,14 @@ export function saveServiceConfig(update) {
15
22
  const dir = path.dirname(writePath);
16
23
  if (!fs.existsSync(dir))
17
24
  fs.mkdirSync(dir, { recursive: true });
18
- let existing = {};
19
- try {
20
- const readPath = getConfigPath();
21
- if (fs.existsSync(readPath)) {
22
- existing = JSON.parse(fs.readFileSync(readPath, "utf-8"));
23
- }
24
- }
25
- catch { }
25
+ const existing = loadServiceConfig();
26
26
  const merged = { ...existing, ...update };
27
27
  fs.writeFileSync(writePath, JSON.stringify(merged, null, 2) + "\n", {
28
28
  mode: 0o600,
29
29
  });
30
30
  }
31
+ export function getWorkspacesRoot() {
32
+ const config = loadServiceConfig();
33
+ return config.workspacesRoot;
34
+ }
31
35
  //# sourceMappingURL=config.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAI/D,MAAM,UAAU,iBAAiB;IAC/B,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAAqB;IACrD,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,IAAI,QAAQ,GAAkB,EAAE,CAAC;IACjC,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,QAAQ,GAAG,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QAC5D,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IAEV,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1C,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE;QAClE,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;AACL,CAAC"}
1
+ {"version":3,"file":"config.js","sourceRoot":"","sources":["../src/config.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,MAAM,SAAS,CAAC;AACzB,OAAO,IAAI,MAAM,WAAW,CAAC;AAC7B,OAAO,EAAE,aAAa,EAAE,kBAAkB,EAAE,MAAM,YAAY,CAAC;AAO/D,MAAM,UAAU,iBAAiB;IAC/B,IAAI,CAAC;QACH,MAAM,QAAQ,GAAG,aAAa,EAAE,CAAC;QACjC,IAAI,EAAE,CAAC,UAAU,CAAC,QAAQ,CAAC,EAAE,CAAC;YAC5B,OAAO,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,YAAY,CAAC,QAAQ,EAAE,OAAO,CAAC,CAAC,CAAC;QACxD,CAAC;IACH,CAAC;IAAC,MAAM,CAAC,CAAA,CAAC;IACV,OAAO,EAAE,CAAC;AACZ,CAAC;AAED,MAAM,UAAU,iBAAiB,CAAC,MAA8B;IAC9D,MAAM,SAAS,GAAG,kBAAkB,EAAE,CAAC;IACvC,MAAM,GAAG,GAAG,IAAI,CAAC,OAAO,CAAC,SAAS,CAAC,CAAC;IACpC,IAAI,CAAC,EAAE,CAAC,UAAU,CAAC,GAAG,CAAC;QAAE,EAAE,CAAC,SAAS,CAAC,GAAG,EAAE,EAAE,SAAS,EAAE,IAAI,EAAE,CAAC,CAAC;IAEhE,MAAM,QAAQ,GAAG,iBAAiB,EAAE,CAAC;IACrC,MAAM,MAAM,GAAG,EAAE,GAAG,QAAQ,EAAE,GAAG,MAAM,EAAE,CAAC;IAC1C,EAAE,CAAC,aAAa,CAAC,SAAS,EAAE,IAAI,CAAC,SAAS,CAAC,MAAM,EAAE,IAAI,EAAE,CAAC,CAAC,GAAG,IAAI,EAAE;QAClE,IAAI,EAAE,KAAK;KACZ,CAAC,CAAC;AACL,CAAC;AAED,MAAM,UAAU,iBAAiB;IAC/B,MAAM,MAAM,GAAG,iBAAiB,EAAE,CAAC;IACnC,OAAO,MAAM,CAAC,cAAc,CAAC;AAC/B,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAOH,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,YAAY,CAAC;AA4EpB,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAOlD"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":";AAEA;;;;;;;;GAQG;AAOH,OAAO,EAKL,KAAK,MAAM,EACZ,MAAM,YAAY,CAAC;AA8EpB,wBAAgB,UAAU,CAAC,MAAM,CAAC,EAAE,MAAM,GAAG,MAAM,CAOlD"}
package/dist/index.js CHANGED
@@ -24,10 +24,12 @@ import { register as registerTfa } from "./tools/tfa.js";
24
24
  import { register as registerIssues } from "./tools/issues.js";
25
25
  import { register as registerAgents } from "./tools/agents.js";
26
26
  import { register as registerSkills } from "./tools/skills.js";
27
+ import { register as registerSession, autoCheckpoint } from "./tools/session.js";
27
28
  import { register as registerWorkflowGuide } from "./prompts/workflow-guide.js";
28
29
  import { register as registerDebugExecution } from "./prompts/debug-execution.js";
29
30
  import { register as registerBuildRpa } from "./prompts/build-rpa.js";
30
31
  import { register as registerTfaGuide } from "./prompts/tfa-guide.js";
32
+ import { register as registerWorkspaceSession } from "./prompts/workspace-session.js";
31
33
  // ─── Token management ────────────────────────────────────────
32
34
  const REFRESH_BUFFER_MS = 5 * 60 * 1000;
33
35
  /**
@@ -148,10 +150,18 @@ async function resolveAllAuth() {
148
150
  // ─── Server state ────────────────────────────────────────────
149
151
  const clients = new Map();
150
152
  const currentTokens = new Map();
151
- const server = new McpServer({
152
- name: "minicor",
153
- version: "3.0.0",
154
- });
153
+ const MINICOR_INSTRUCTIONS = `You are connected to the Minicor MCP server for RPA workflow automation.
154
+
155
+ CRITICAL: If the current directory contains a minicor.json file, you are in a workspace clone.
156
+ You MUST call session_start(directory) as your FIRST action. It returns the workspace rules
157
+ (AGENTS.md), prior session state for resuming, and all context you need. Follow the phase loop
158
+ it describes.
159
+
160
+ Before ending your session, call session_end() to persist your progress. Other agents (on other
161
+ machines, scheduled, or human-triggered) depend on this to resume where you left off.
162
+
163
+ If you are NOT in a workspace clone, use the tools freely — list_workspaces, clone_workspace, etc.`;
164
+ const server = new McpServer({ name: "minicor", version: "3.0.0" }, { instructions: MINICOR_INSTRUCTIONS });
155
165
  function scheduleTokenRefresh(region) {
156
166
  const tokens = readRegionTokens(region);
157
167
  if (!tokens?.refresh_token)
@@ -219,14 +229,18 @@ function registerAll() {
219
229
  registerIssues(deps);
220
230
  registerAgents(deps);
221
231
  registerSkills(deps);
232
+ registerSession(deps);
222
233
  registerWorkflowGuide(deps);
223
234
  registerDebugExecution(deps);
224
235
  registerBuildRpa(deps);
225
236
  registerTfaGuide(deps);
237
+ registerWorkspaceSession(deps);
238
+ return deps;
226
239
  }
227
240
  // ─── Main ────────────────────────────────────────────────────
228
241
  async function main() {
229
242
  const authResults = await resolveAllAuth();
243
+ let toolDeps = null;
230
244
  if (authResults.length === 0) {
231
245
  console.error("No credentials found. Starting in limited mode.");
232
246
  registerUnauthenticated();
@@ -239,10 +253,27 @@ async function main() {
239
253
  }
240
254
  const regions = authResults.map((a) => a.region.toUpperCase()).join(" + ");
241
255
  console.error(`Authenticated regions: ${regions}`);
242
- registerAll();
256
+ toolDeps = registerAll();
243
257
  }
244
258
  const transport = new StdioServerTransport();
245
259
  await server.connect(transport);
260
+ // Auto-checkpoint active sessions on transport close or process signals
261
+ const handleShutdown = async () => {
262
+ if (toolDeps) {
263
+ await autoCheckpoint(toolDeps);
264
+ }
265
+ };
266
+ transport.onclose = async () => {
267
+ await handleShutdown();
268
+ };
269
+ process.on("SIGINT", async () => {
270
+ await handleShutdown();
271
+ process.exit(0);
272
+ });
273
+ process.on("SIGTERM", async () => {
274
+ await handleShutdown();
275
+ process.exit(0);
276
+ });
246
277
  console.error(authResults.length > 0
247
278
  ? "Minicor MCP server running on stdio"
248
279
  : "Minicor MCP server running (limited mode — run minicor-mcp-setup to authenticate)");
package/dist/index.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.js","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
package/dist/lib.d.ts.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAmB,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAqB1D,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC9E,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAsBD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAyE5D;AAED,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}
1
+ {"version":3,"file":"lib.d.ts","sourceRoot":"","sources":["../src/lib.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;GAaG;AAEH,OAAO,EAAE,SAAS,EAAE,MAAM,yCAAyC,CAAC;AACpE,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,+CAA+C,CAAC;AAC/E,OAAO,EAAiB,KAAK,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACtE,OAAO,EAAmB,KAAK,MAAM,EAAE,MAAM,YAAY,CAAC;AAuB1D,MAAM,WAAW,oBAAoB;IACnC,sFAAsF;IACtF,IAAI,CAAC,EAAE,WAAW,CAAC;IACnB,gDAAgD;IAChD,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,oFAAoF;IACpF,UAAU,CAAC,EAAE,OAAO,CAAC,MAAM,CAAC,MAAM,EAAE;QAAE,IAAI,EAAE,WAAW,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC,CAAC;IAC9E,uEAAuE;IACvE,gBAAgB,CAAC,EAAE,MAAM,CAAC;CAC3B;AAoCD;;;GAGG;AACH,wBAAsB,mBAAmB,CACvC,SAAS,EAAE,SAAS,EACpB,IAAI,GAAE,oBAAyB,GAC9B,OAAO,CAAC;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAA;CAAE,CAAC,CAiF5D;AAED,YAAY,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AACvD,YAAY,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC"}