@knowsuchagency/fulcrum 2.3.5 → 2.4.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/bin/fulcrum.js +3 -3
- package/package.json +1 -1
- package/server/index.js +28 -46
package/bin/fulcrum.js
CHANGED
|
@@ -45641,7 +45641,7 @@ async function runMcpServer(urlOverride, portOverride) {
|
|
|
45641
45641
|
const client = new FulcrumClient(urlOverride, portOverride);
|
|
45642
45642
|
const server = new McpServer({
|
|
45643
45643
|
name: "fulcrum",
|
|
45644
|
-
version: "2.
|
|
45644
|
+
version: "2.4.1"
|
|
45645
45645
|
});
|
|
45646
45646
|
registerTools(server, client);
|
|
45647
45647
|
const transport = new StdioServerTransport;
|
|
@@ -47990,7 +47990,7 @@ var marketplace_default = `{
|
|
|
47990
47990
|
"name": "fulcrum",
|
|
47991
47991
|
"source": "./",
|
|
47992
47992
|
"description": "Task orchestration for Claude Code",
|
|
47993
|
-
"version": "2.
|
|
47993
|
+
"version": "2.4.1",
|
|
47994
47994
|
"skills": [
|
|
47995
47995
|
"./skills/fulcrum"
|
|
47996
47996
|
],
|
|
@@ -49178,7 +49178,7 @@ function compareVersions(v1, v2) {
|
|
|
49178
49178
|
var package_default = {
|
|
49179
49179
|
name: "@knowsuchagency/fulcrum",
|
|
49180
49180
|
private: true,
|
|
49181
|
-
version: "2.
|
|
49181
|
+
version: "2.4.1",
|
|
49182
49182
|
description: "Harness Attention. Orchestrate Agents. Ship.",
|
|
49183
49183
|
license: "PolyForm-Perimeter-1.0.0",
|
|
49184
49184
|
type: "module",
|
package/package.json
CHANGED
package/server/index.js
CHANGED
|
@@ -16083,11 +16083,7 @@ function getClaudeCodePathForSdk() {
|
|
|
16083
16083
|
log2.claude.debug("Claude Code executable not found");
|
|
16084
16084
|
return;
|
|
16085
16085
|
}
|
|
16086
|
-
|
|
16087
|
-
log2.claude.debug("Claude Code found in PATH, using default resolution");
|
|
16088
|
-
return;
|
|
16089
|
-
}
|
|
16090
|
-
log2.claude.debug("Claude Code found via custom path", { path: result.path, source: result.source });
|
|
16086
|
+
log2.claude.debug("Claude Code found", { path: result.path, source: result.source });
|
|
16091
16087
|
return result.path;
|
|
16092
16088
|
}
|
|
16093
16089
|
var init_claude_code_path = __esm(() => {
|
|
@@ -409569,6 +409565,27 @@ class EmailChannel {
|
|
|
409569
409565
|
this.connectionId = connectionId;
|
|
409570
409566
|
this.credentials = credentials ?? null;
|
|
409571
409567
|
}
|
|
409568
|
+
createImapClient() {
|
|
409569
|
+
if (!this.credentials)
|
|
409570
|
+
throw new Error("No credentials available");
|
|
409571
|
+
const client3 = new $ImapFlow({
|
|
409572
|
+
host: this.credentials.imap.host,
|
|
409573
|
+
port: this.credentials.imap.port,
|
|
409574
|
+
secure: this.credentials.imap.secure,
|
|
409575
|
+
auth: {
|
|
409576
|
+
user: this.credentials.imap.user,
|
|
409577
|
+
pass: this.credentials.imap.password
|
|
409578
|
+
},
|
|
409579
|
+
logger: false
|
|
409580
|
+
});
|
|
409581
|
+
client3.on("error", (err) => {
|
|
409582
|
+
log2.messaging.error("IMAP client error", {
|
|
409583
|
+
connectionId: this.connectionId,
|
|
409584
|
+
error: String(err)
|
|
409585
|
+
});
|
|
409586
|
+
});
|
|
409587
|
+
return client3;
|
|
409588
|
+
}
|
|
409572
409589
|
async initialize(events) {
|
|
409573
409590
|
this.events = events;
|
|
409574
409591
|
this.isShuttingDown = false;
|
|
@@ -409609,16 +409626,7 @@ class EmailChannel {
|
|
|
409609
409626
|
connectionId: this.connectionId,
|
|
409610
409627
|
host: this.credentials.smtp.host
|
|
409611
409628
|
});
|
|
409612
|
-
this.imapClient =
|
|
409613
|
-
host: this.credentials.imap.host,
|
|
409614
|
-
port: this.credentials.imap.port,
|
|
409615
|
-
secure: this.credentials.imap.secure,
|
|
409616
|
-
auth: {
|
|
409617
|
-
user: this.credentials.imap.user,
|
|
409618
|
-
pass: this.credentials.imap.password
|
|
409619
|
-
},
|
|
409620
|
-
logger: false
|
|
409621
|
-
});
|
|
409629
|
+
this.imapClient = this.createImapClient();
|
|
409622
409630
|
await this.imapClient.connect();
|
|
409623
409631
|
log2.messaging.info("IMAP connection established", {
|
|
409624
409632
|
connectionId: this.connectionId,
|
|
@@ -409655,16 +409663,7 @@ class EmailChannel {
|
|
|
409655
409663
|
if (this.isShuttingDown || !this.credentials)
|
|
409656
409664
|
return;
|
|
409657
409665
|
try {
|
|
409658
|
-
const client3 =
|
|
409659
|
-
host: this.credentials.imap.host,
|
|
409660
|
-
port: this.credentials.imap.port,
|
|
409661
|
-
secure: this.credentials.imap.secure,
|
|
409662
|
-
auth: {
|
|
409663
|
-
user: this.credentials.imap.user,
|
|
409664
|
-
pass: this.credentials.imap.password
|
|
409665
|
-
},
|
|
409666
|
-
logger: false
|
|
409667
|
-
});
|
|
409666
|
+
const client3 = this.createImapClient();
|
|
409668
409667
|
await client3.connect();
|
|
409669
409668
|
const lock = await client3.getMailboxLock("INBOX");
|
|
409670
409669
|
try {
|
|
@@ -409813,16 +409812,7 @@ class EmailChannel {
|
|
|
409813
409812
|
if (!this.credentials) {
|
|
409814
409813
|
throw new Error("Not connected - no credentials available");
|
|
409815
409814
|
}
|
|
409816
|
-
const client3 =
|
|
409817
|
-
host: this.credentials.imap.host,
|
|
409818
|
-
port: this.credentials.imap.port,
|
|
409819
|
-
secure: this.credentials.imap.secure,
|
|
409820
|
-
auth: {
|
|
409821
|
-
user: this.credentials.imap.user,
|
|
409822
|
-
pass: this.credentials.imap.password
|
|
409823
|
-
},
|
|
409824
|
-
logger: false
|
|
409825
|
-
});
|
|
409815
|
+
const client3 = this.createImapClient();
|
|
409826
409816
|
try {
|
|
409827
409817
|
await client3.connect();
|
|
409828
409818
|
const lock = await client3.getMailboxLock("INBOX");
|
|
@@ -409861,16 +409851,7 @@ class EmailChannel {
|
|
|
409861
409851
|
}
|
|
409862
409852
|
const limit2 = options?.limit ?? 50;
|
|
409863
409853
|
const uidsToFetch = uids.slice(0, limit2);
|
|
409864
|
-
const client3 =
|
|
409865
|
-
host: this.credentials.imap.host,
|
|
409866
|
-
port: this.credentials.imap.port,
|
|
409867
|
-
secure: this.credentials.imap.secure,
|
|
409868
|
-
auth: {
|
|
409869
|
-
user: this.credentials.imap.user,
|
|
409870
|
-
pass: this.credentials.imap.password
|
|
409871
|
-
},
|
|
409872
|
-
logger: false
|
|
409873
|
-
});
|
|
409854
|
+
const client3 = this.createImapClient();
|
|
409874
409855
|
const storedEmails = [];
|
|
409875
409856
|
try {
|
|
409876
409857
|
await client3.connect();
|
|
@@ -409953,6 +409934,7 @@ async function testEmailCredentials(credentials) {
|
|
|
409953
409934
|
},
|
|
409954
409935
|
logger: false
|
|
409955
409936
|
});
|
|
409937
|
+
client3.on("error", () => {});
|
|
409956
409938
|
await client3.connect();
|
|
409957
409939
|
await client3.logout();
|
|
409958
409940
|
} catch (err) {
|
|
@@ -463739,7 +463721,7 @@ mcpRoutes.all("/", async (c) => {
|
|
|
463739
463721
|
});
|
|
463740
463722
|
const server = new McpServer({
|
|
463741
463723
|
name: "fulcrum",
|
|
463742
|
-
version: "2.
|
|
463724
|
+
version: "2.4.1"
|
|
463743
463725
|
});
|
|
463744
463726
|
const client = new FulcrumClient(`http://localhost:${port}`);
|
|
463745
463727
|
registerTools(server, client);
|