@starascendin/lifeos-mcp 0.7.64 → 0.7.65

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.
@@ -1,2 +1,2 @@
1
- export declare const VERSION = "0.7.64";
2
- export declare const BUILD_TIME = "2026-05-17T14:08:51.738Z";
1
+ export declare const VERSION = "0.7.65";
2
+ export declare const BUILD_TIME = "2026-05-17T14:10:05.245Z";
@@ -1,3 +1,3 @@
1
1
  // AUTO-GENERATED — do not edit. Regenerated on every build.
2
- export const VERSION = "0.7.64";
3
- export const BUILD_TIME = "2026-05-17T14:08:51.738Z";
2
+ export const VERSION = "0.7.65";
3
+ export const BUILD_TIME = "2026-05-17T14:10:05.245Z";
package/dist/index.js CHANGED
@@ -4590,8 +4590,14 @@ const TOOLS = [
4590
4590
  type: "object",
4591
4591
  properties: {
4592
4592
  userId: { type: "string", description: "Override user ID" },
4593
- projectIdOrKey: { type: "string", description: "Project ID or key like ACME" },
4594
- maxHops: { type: "number", description: "Neighborhood radius (default 2)" },
4593
+ projectIdOrKey: {
4594
+ type: "string",
4595
+ description: "Project ID or key like ACME",
4596
+ },
4597
+ maxHops: {
4598
+ type: "number",
4599
+ description: "Neighborhood radius (default 2)",
4600
+ },
4595
4601
  },
4596
4602
  required: ["projectIdOrKey"],
4597
4603
  },
@@ -4604,7 +4610,10 @@ const TOOLS = [
4604
4610
  properties: {
4605
4611
  userId: { type: "string", description: "Override user ID" },
4606
4612
  initiativeId: { type: "string", description: "Initiative ID" },
4607
- maxHops: { type: "number", description: "Neighborhood radius (default 2)" },
4613
+ maxHops: {
4614
+ type: "number",
4615
+ description: "Neighborhood radius (default 2)",
4616
+ },
4608
4617
  },
4609
4618
  required: ["initiativeId"],
4610
4619
  },
@@ -4617,7 +4626,10 @@ const TOOLS = [
4617
4626
  properties: {
4618
4627
  userId: { type: "string", description: "Override user ID" },
4619
4628
  personId: { type: "string", description: "Person ID" },
4620
- maxHops: { type: "number", description: "Neighborhood radius (default 2)" },
4629
+ maxHops: {
4630
+ type: "number",
4631
+ description: "Neighborhood radius (default 2)",
4632
+ },
4621
4633
  },
4622
4634
  required: ["personId"],
4623
4635
  },
@@ -4630,7 +4642,10 @@ const TOOLS = [
4630
4642
  properties: {
4631
4643
  userId: { type: "string", description: "Override user ID" },
4632
4644
  memoId: { type: "string", description: "Voice memo ID" },
4633
- maxHops: { type: "number", description: "Neighborhood radius (default 2)" },
4645
+ maxHops: {
4646
+ type: "number",
4647
+ description: "Neighborhood radius (default 2)",
4648
+ },
4634
4649
  },
4635
4650
  required: ["memoId"],
4636
4651
  },
@@ -4666,7 +4681,13 @@ const TOOLS = [
4666
4681
  toNodeId: { type: "string", description: "Destination node ID" },
4667
4682
  kind: {
4668
4683
  type: "string",
4669
- enum: ["contains", "references", "derived_from", "supports", "related_to"],
4684
+ enum: [
4685
+ "contains",
4686
+ "references",
4687
+ "derived_from",
4688
+ "supports",
4689
+ "related_to",
4690
+ ],
4670
4691
  description: "Edge kind",
4671
4692
  },
4672
4693
  status: {
@@ -4676,7 +4697,10 @@ const TOOLS = [
4676
4697
  },
4677
4698
  weight: { type: "number", description: "Optional confidence/weight" },
4678
4699
  evidence: { type: "string", description: "Why this link exists" },
4679
- metadataJson: { type: "string", description: "Optional JSON metadata string" },
4700
+ metadataJson: {
4701
+ type: "string",
4702
+ description: "Optional JSON metadata string",
4703
+ },
4680
4704
  },
4681
4705
  required: ["fromNodeId", "toNodeId", "kind"],
4682
4706
  },
@@ -4692,7 +4716,13 @@ const TOOLS = [
4692
4716
  toNodeId: { type: "string", description: "Destination node ID" },
4693
4717
  kind: {
4694
4718
  type: "string",
4695
- enum: ["contains", "references", "derived_from", "supports", "related_to"],
4719
+ enum: [
4720
+ "contains",
4721
+ "references",
4722
+ "derived_from",
4723
+ "supports",
4724
+ "related_to",
4725
+ ],
4696
4726
  description: "Edge kind",
4697
4727
  },
4698
4728
  },
@@ -4779,10 +4809,19 @@ const TOOLS = [
4779
4809
  type: "object",
4780
4810
  properties: {
4781
4811
  fromTable: { type: "string", description: "Source Surreal table." },
4782
- fromId: { type: "string", description: "Source record id without table prefix." },
4812
+ fromId: {
4813
+ type: "string",
4814
+ description: "Source record id without table prefix.",
4815
+ },
4783
4816
  toTable: { type: "string", description: "Target Surreal table." },
4784
- toId: { type: "string", description: "Target record id without table prefix." },
4785
- kind: { type: "string", description: "Relationship kind used when linking." },
4817
+ toId: {
4818
+ type: "string",
4819
+ description: "Target record id without table prefix.",
4820
+ },
4821
+ kind: {
4822
+ type: "string",
4823
+ description: "Relationship kind used when linking.",
4824
+ },
4786
4825
  },
4787
4826
  required: ["fromTable", "fromId", "toTable", "toId", "kind"],
4788
4827
  },
@@ -5551,10 +5590,10 @@ Do not ask for confirmation; the user intends this planning workflow to mutate L
5551
5590
  ${intentClause}
5552
5591
 
5553
5592
  Use the LifeOS MCP PPV tools:
5554
- 1. Call get_ppv_workspace first to inspect all owned visions, the selected/active vision, identity, pillars, linked projects, weekly actions, reflections, adjustments, and available LifeOS projects.
5593
+ 1. Call get_ppv_workspace first to inspect all owned visions, the selected/current vision, identity, pillars, linked projects, weekly actions, reflections, adjustments, and available LifeOS projects.
5555
5594
  2. If there is no vision and the user wants the example, call seed_ppv_beijing_workspace.
5556
5595
  3. For vision changes, call upsert_ppv_vision.
5557
- 4. If the user wants to switch between existing visions without editing content, call set_active_ppv_vision.
5596
+ 4. If the user wants to change a vision lifecycle without editing content, call set_ppv_vision_status.
5558
5597
  5. For identity changes, call upsert_ppv_identity.
5559
5598
  6. For pillars, call create_ppv_pillar or update_ppv_pillar. Link only existing LifeOS project IDs from get_ppv_workspace.projects.
5560
5599
  7. For execution, call create_ppv_weekly_action or update_ppv_weekly_action.
@@ -6719,7 +6758,8 @@ function stripSqlCommentsAndStrings(sql) {
6719
6758
  if (current === "/" && next === "*") {
6720
6759
  output += " ";
6721
6760
  index += 2;
6722
- while (index < sql.length && !(sql[index] === "*" && sql[index + 1] === "/")) {
6761
+ while (index < sql.length &&
6762
+ !(sql[index] === "*" && sql[index + 1] === "/")) {
6723
6763
  output += " ";
6724
6764
  index += 1;
6725
6765
  }
@@ -6729,7 +6769,7 @@ function stripSqlCommentsAndStrings(sql) {
6729
6769
  }
6730
6770
  continue;
6731
6771
  }
6732
- if (current === "'" || current === "\"" || current === "`") {
6772
+ if (current === "'" || current === '"' || current === "`") {
6733
6773
  quote = current;
6734
6774
  output += " ";
6735
6775
  index += 1;
@@ -6768,7 +6808,9 @@ function assertReadOnlySurrealSql(sql) {
6768
6808
  }
6769
6809
  }
6770
6810
  const isAggregateCount = /\bCOUNT\s*\(/i.test(statement);
6771
- if (upper.startsWith("SELECT ") && !/\bLIMIT\b/i.test(statement) && !isAggregateCount) {
6811
+ if (upper.startsWith("SELECT ") &&
6812
+ !/\bLIMIT\b/i.test(statement) &&
6813
+ !isAggregateCount) {
6772
6814
  throw new Error("SELECT queries must include LIMIT unless they are aggregate count queries.");
6773
6815
  }
6774
6816
  }
@@ -6828,13 +6870,7 @@ function surrealThing(table, id) {
6828
6870
  return `${table}:\`${escapeSurrealRecordId(id)}\``;
6829
6871
  }
6830
6872
  function agentLinkId(parts) {
6831
- return [
6832
- parts.kind,
6833
- parts.fromTable,
6834
- parts.fromId,
6835
- parts.toTable,
6836
- parts.toId,
6837
- ]
6873
+ return [parts.kind, parts.fromTable, parts.fromId, parts.toTable, parts.toId]
6838
6874
  .join("__")
6839
6875
  .replace(/[^A-Za-z0-9_:-]/g, "_")
6840
6876
  .slice(0, 512);
@@ -6881,7 +6917,7 @@ function surrealGraphSchema() {
6881
6917
  "Every agent link must include a reason and confidence.",
6882
6918
  ],
6883
6919
  examples: {
6884
- activePpvProjects: "SELECT id, title, ->ppv_has_pillar->ppv1_pillars.{id, name, ->ppv_pillar_supports_project->lifeos_pmProjects.{id, name, status}} AS pillars FROM ppv1_visions WHERE isActive = true LIMIT 1;",
6920
+ activePpvProjects: 'SELECT id, title, ->ppv_has_pillar->ppv1_pillars.{id, name, ->ppv_pillar_supports_project->lifeos_pmProjects.{id, name, status}} AS pillars FROM ppv1_visions WHERE status = "in_progress" LIMIT 1;',
6885
6921
  projectInboundLinks: "SELECT <-ppv_pillar_supports_project<-ppv1_pillars.{id, name, purpose} AS supportedByPillars FROM lifeos_pmProjects:`PROJECT_ID` LIMIT 1;",
6886
6922
  agentLinks: "SELECT id, in, out, kind, reason, confidence, createdBy, createdAt FROM lifeos_agent_links LIMIT 25;",
6887
6923
  },
@@ -6909,7 +6945,9 @@ async function surrealGraphLink(args) {
6909
6945
  const confidence = typeof args.confidence === "number" && Number.isFinite(args.confidence)
6910
6946
  ? Math.max(0, Math.min(1, args.confidence))
6911
6947
  : 0.7;
6912
- const metadata = args.metadata && typeof args.metadata === "object" && !Array.isArray(args.metadata)
6948
+ const metadata = args.metadata &&
6949
+ typeof args.metadata === "object" &&
6950
+ !Array.isArray(args.metadata)
6913
6951
  ? args.metadata
6914
6952
  : {};
6915
6953
  const now = new Date().toISOString();
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@starascendin/lifeos-mcp",
3
- "version": "0.7.64",
3
+ "version": "0.7.65",
4
4
  "description": "MCP server for LifeOS Project Management - manage projects, tasks, notes, and contacts via AI assistants",
5
5
  "type": "module",
6
6
  "main": "dist/index.js",