@hiveforge/hivemind-mcp 3.4.0 → 3.5.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.
Files changed (78) hide show
  1. package/README.md +89 -309
  2. package/dist/cli/fix/fixer.js +1 -1
  3. package/dist/cli/fix/fixer.js.map +1 -1
  4. package/dist/cli/fix/writer.d.ts.map +1 -1
  5. package/dist/cli/fix/writer.js +75 -3
  6. package/dist/cli/fix/writer.js.map +1 -1
  7. package/dist/cli/init/output.d.ts.map +1 -1
  8. package/dist/cli/init/output.js +6 -5
  9. package/dist/cli/init/output.js.map +1 -1
  10. package/dist/cli/validate/formatter.d.ts.map +1 -1
  11. package/dist/cli/validate/formatter.js +16 -0
  12. package/dist/cli/validate/formatter.js.map +1 -1
  13. package/dist/cli/validate/types.d.ts +3 -0
  14. package/dist/cli/validate/types.d.ts.map +1 -1
  15. package/dist/cli/validate/validator.d.ts.map +1 -1
  16. package/dist/cli/validate/validator.js +32 -1
  17. package/dist/cli/validate/validator.js.map +1 -1
  18. package/dist/cli.js +2 -1
  19. package/dist/cli.js.map +1 -1
  20. package/dist/graph/database.d.ts +152 -0
  21. package/dist/graph/database.d.ts.map +1 -1
  22. package/dist/graph/database.js +418 -30
  23. package/dist/graph/database.js.map +1 -1
  24. package/dist/mcp/graph-tools.d.ts +78 -0
  25. package/dist/mcp/graph-tools.d.ts.map +1 -0
  26. package/dist/mcp/graph-tools.js +284 -0
  27. package/dist/mcp/graph-tools.js.map +1 -0
  28. package/dist/mcp/timeline-tools.d.ts +116 -0
  29. package/dist/mcp/timeline-tools.d.ts.map +1 -0
  30. package/dist/mcp/timeline-tools.js +317 -0
  31. package/dist/mcp/timeline-tools.js.map +1 -0
  32. package/dist/search/engine.d.ts +186 -0
  33. package/dist/search/engine.d.ts.map +1 -1
  34. package/dist/search/engine.js +263 -0
  35. package/dist/search/engine.js.map +1 -1
  36. package/dist/server.d.ts +52 -0
  37. package/dist/server.d.ts.map +1 -1
  38. package/dist/server.js +472 -0
  39. package/dist/server.js.map +1 -1
  40. package/dist/templates/builtin/worldbuilding.d.ts.map +1 -1
  41. package/dist/templates/builtin/worldbuilding.js +401 -1
  42. package/dist/templates/builtin/worldbuilding.js.map +1 -1
  43. package/dist/templates/community/dnd-35e.d.ts +18 -0
  44. package/dist/templates/community/dnd-35e.d.ts.map +1 -0
  45. package/dist/templates/community/dnd-35e.js +859 -0
  46. package/dist/templates/community/dnd-35e.js.map +1 -0
  47. package/dist/templates/community/dnd-5e.d.ts +16 -0
  48. package/dist/templates/community/dnd-5e.d.ts.map +1 -0
  49. package/dist/templates/community/dnd-5e.js +509 -0
  50. package/dist/templates/community/dnd-5e.js.map +1 -0
  51. package/dist/templates/community/index.d.ts +9 -0
  52. package/dist/templates/community/index.d.ts.map +1 -1
  53. package/dist/templates/community/index.js +16 -0
  54. package/dist/templates/community/index.js.map +1 -1
  55. package/dist/templates/community/pathfinder-2e.d.ts +16 -0
  56. package/dist/templates/community/pathfinder-2e.d.ts.map +1 -0
  57. package/dist/templates/community/pathfinder-2e.js +711 -0
  58. package/dist/templates/community/pathfinder-2e.js.map +1 -0
  59. package/dist/templates/community/ttrpg-base.d.ts +17 -0
  60. package/dist/templates/community/ttrpg-base.d.ts.map +1 -0
  61. package/dist/templates/community/ttrpg-base.js +889 -0
  62. package/dist/templates/community/ttrpg-base.js.map +1 -0
  63. package/dist/templates/loader.d.ts +2 -0
  64. package/dist/templates/loader.d.ts.map +1 -1
  65. package/dist/templates/loader.js +45 -1
  66. package/dist/templates/loader.js.map +1 -1
  67. package/dist/templates/registry.d.ts +49 -2
  68. package/dist/templates/registry.d.ts.map +1 -1
  69. package/dist/templates/registry.js +276 -6
  70. package/dist/templates/registry.js.map +1 -1
  71. package/dist/templates/types.d.ts +28 -1
  72. package/dist/templates/types.d.ts.map +1 -1
  73. package/dist/templates/validator.d.ts +80 -1
  74. package/dist/templates/validator.d.ts.map +1 -1
  75. package/dist/templates/validator.js +22 -5
  76. package/dist/templates/validator.js.map +1 -1
  77. package/dist/types/index.d.ts +18 -18
  78. package/package.json +1 -1
@@ -68,6 +68,10 @@ export interface RelationshipTypeConfig {
68
68
  *
69
69
  * Defines a new entity type (e.g., "character", "location") with its
70
70
  * custom fields and metadata.
71
+ *
72
+ * In child templates (templates with extendsTemplate), entity types can either:
73
+ * - Define new entity types with `fields` (not in parent)
74
+ * - Extend parent entity types with `additionalFields` (adds to parent's fields)
71
75
  */
72
76
  export interface EntityTypeConfig {
73
77
  /** Entity type name (lowercase, alphanumeric, e.g., "character") */
@@ -78,8 +82,17 @@ export interface EntityTypeConfig {
78
82
  pluralName: string;
79
83
  /** Description of this entity type for documentation */
80
84
  description?: string;
81
- /** Custom fields beyond base entity fields */
85
+ /**
86
+ * Custom fields beyond base entity fields.
87
+ * Required for new entity types, optional when extending parent types.
88
+ */
82
89
  fields: FieldConfig[];
90
+ /**
91
+ * Additional fields to add when extending a parent entity type.
92
+ * Only valid in child templates for entity types that exist in the parent.
93
+ * These fields are merged with the parent's fields during template registration.
94
+ */
95
+ additionalFields?: FieldConfig[];
83
96
  /** Optional icon identifier for UI rendering */
84
97
  icon?: string;
85
98
  }
@@ -103,6 +116,13 @@ export interface TemplateAuthor {
103
116
  *
104
117
  * A template is a collection of entity types that work together
105
118
  * (e.g., "worldbuilding" template with characters, locations, events).
119
+ *
120
+ * Templates can extend other templates using `extendsTemplate`, which enables:
121
+ * - Inheriting all entity types from the parent
122
+ * - Extending parent entity types with additional fields
123
+ * - Adding new entity types specific to the child template
124
+ * - Inheriting and extending relationship types
125
+ * - Inheriting and extending folder mappings
106
126
  */
107
127
  export interface TemplateDefinition {
108
128
  /** Unique template identifier (e.g., "worldbuilding") */
@@ -113,6 +133,13 @@ export interface TemplateDefinition {
113
133
  version: string;
114
134
  /** Description of what this template is for */
115
135
  description?: string;
136
+ /**
137
+ * ID of the parent template to extend.
138
+ * When specified, this template inherits all entity types, relationship types,
139
+ * and folder mappings from the parent. Child definitions can override or extend
140
+ * parent definitions.
141
+ */
142
+ extendsTemplate?: string;
116
143
  /** Entity types included in this template */
117
144
  entityTypes: EntityTypeConfig[];
118
145
  /** Custom relationship type definitions */
@@ -1 +1 @@
1
- {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/templates/types.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../src/templates/types.ts"],"names":[],"mappings":"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"}
@@ -47,6 +47,7 @@ export declare const FieldConfigSchema: z.ZodObject<{
47
47
  * - Entity type names are lowercase alphanumeric
48
48
  * - Display names and plural names are provided
49
49
  * - Fields array is valid
50
+ * - Additional fields (for template inheritance) are valid
50
51
  */
51
52
  export declare const EntityTypeConfigSchema: z.ZodObject<{
52
53
  name: z.ZodString;
@@ -78,6 +79,31 @@ export declare const EntityTypeConfigSchema: z.ZodObject<{
78
79
  }>>;
79
80
  description: z.ZodOptional<z.ZodString>;
80
81
  }, z.core.$strip>>;
82
+ additionalFields: z.ZodOptional<z.ZodArray<z.ZodObject<{
83
+ name: z.ZodString;
84
+ type: z.ZodEnum<{
85
+ string: "string";
86
+ number: "number";
87
+ boolean: "boolean";
88
+ enum: "enum";
89
+ array: "array";
90
+ date: "date";
91
+ record: "record";
92
+ }>;
93
+ required: z.ZodOptional<z.ZodBoolean>;
94
+ default: z.ZodOptional<z.ZodUnknown>;
95
+ enumValues: z.ZodOptional<z.ZodArray<z.ZodString>>;
96
+ arrayItemType: z.ZodOptional<z.ZodEnum<{
97
+ string: "string";
98
+ number: "number";
99
+ boolean: "boolean";
100
+ enum: "enum";
101
+ array: "array";
102
+ date: "date";
103
+ record: "record";
104
+ }>>;
105
+ description: z.ZodOptional<z.ZodString>;
106
+ }, z.core.$strip>>>;
81
107
  icon: z.ZodOptional<z.ZodString>;
82
108
  }, z.core.$strip>;
83
109
  /**
@@ -154,7 +180,8 @@ export declare const FolderMappingRuleSchema: z.ZodObject<{
154
180
  * Validates:
155
181
  * - Template ID is lowercase alphanumeric with hyphens
156
182
  * - Version follows semantic versioning (X.Y.Z)
157
- * - Entity types array is valid and non-empty
183
+ * - Entity types array is valid (can be empty for child templates that only extend)
184
+ * - Optional extendsTemplate for inheritance
158
185
  * - Optional metadata fields for discovery
159
186
  */
160
187
  export declare const TemplateDefinitionSchema: z.ZodObject<{
@@ -162,6 +189,7 @@ export declare const TemplateDefinitionSchema: z.ZodObject<{
162
189
  name: z.ZodString;
163
190
  version: z.ZodString;
164
191
  description: z.ZodOptional<z.ZodString>;
192
+ extendsTemplate: z.ZodOptional<z.ZodString>;
165
193
  entityTypes: z.ZodArray<z.ZodObject<{
166
194
  name: z.ZodString;
167
195
  displayName: z.ZodString;
@@ -192,6 +220,31 @@ export declare const TemplateDefinitionSchema: z.ZodObject<{
192
220
  }>>;
193
221
  description: z.ZodOptional<z.ZodString>;
194
222
  }, z.core.$strip>>;
223
+ additionalFields: z.ZodOptional<z.ZodArray<z.ZodObject<{
224
+ name: z.ZodString;
225
+ type: z.ZodEnum<{
226
+ string: "string";
227
+ number: "number";
228
+ boolean: "boolean";
229
+ enum: "enum";
230
+ array: "array";
231
+ date: "date";
232
+ record: "record";
233
+ }>;
234
+ required: z.ZodOptional<z.ZodBoolean>;
235
+ default: z.ZodOptional<z.ZodUnknown>;
236
+ enumValues: z.ZodOptional<z.ZodArray<z.ZodString>>;
237
+ arrayItemType: z.ZodOptional<z.ZodEnum<{
238
+ string: "string";
239
+ number: "number";
240
+ boolean: "boolean";
241
+ enum: "enum";
242
+ array: "array";
243
+ date: "date";
244
+ record: "record";
245
+ }>>;
246
+ description: z.ZodOptional<z.ZodString>;
247
+ }, z.core.$strip>>>;
195
248
  icon: z.ZodOptional<z.ZodString>;
196
249
  }, z.core.$strip>>;
197
250
  relationshipTypes: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -264,6 +317,7 @@ export declare const TemplateConfigSchema: z.ZodObject<{
264
317
  name: z.ZodString;
265
318
  version: z.ZodString;
266
319
  description: z.ZodOptional<z.ZodString>;
320
+ extendsTemplate: z.ZodOptional<z.ZodString>;
267
321
  entityTypes: z.ZodArray<z.ZodObject<{
268
322
  name: z.ZodString;
269
323
  displayName: z.ZodString;
@@ -294,6 +348,31 @@ export declare const TemplateConfigSchema: z.ZodObject<{
294
348
  }>>;
295
349
  description: z.ZodOptional<z.ZodString>;
296
350
  }, z.core.$strip>>;
351
+ additionalFields: z.ZodOptional<z.ZodArray<z.ZodObject<{
352
+ name: z.ZodString;
353
+ type: z.ZodEnum<{
354
+ string: "string";
355
+ number: "number";
356
+ boolean: "boolean";
357
+ enum: "enum";
358
+ array: "array";
359
+ date: "date";
360
+ record: "record";
361
+ }>;
362
+ required: z.ZodOptional<z.ZodBoolean>;
363
+ default: z.ZodOptional<z.ZodUnknown>;
364
+ enumValues: z.ZodOptional<z.ZodArray<z.ZodString>>;
365
+ arrayItemType: z.ZodOptional<z.ZodEnum<{
366
+ string: "string";
367
+ number: "number";
368
+ boolean: "boolean";
369
+ enum: "enum";
370
+ array: "array";
371
+ date: "date";
372
+ record: "record";
373
+ }>>;
374
+ description: z.ZodOptional<z.ZodString>;
375
+ }, z.core.$strip>>>;
297
376
  icon: z.ZodOptional<z.ZodString>;
298
377
  }, z.core.$strip>>;
299
378
  relationshipTypes: z.ZodOptional<z.ZodArray<z.ZodObject<{
@@ -1 +1 @@
1
- {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/templates/validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAKV,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;iBAgCM,CAAC;AAErC;;;;;;;GAOG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAaK,CAAC;AAEzC;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BM,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;EAOK,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;iBAIK,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH;;;;;;;;GAQG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA+BK,CAAC;AAE3C;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGK,CAAC;AAEvC;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;aAG9B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;gBAD1C,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;IAM5C;;;;OAIG;IACH,aAAa,IAAI,MAAM;CAUxB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAQtE"}
1
+ {"version":3,"file":"validator.d.ts","sourceRoot":"","sources":["../../src/templates/validator.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAEH,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,KAAK,EAKV,cAAc,EAGf,MAAM,YAAY,CAAC;AAEpB;;;;;;;;GAQG;AACH,eAAO,MAAM,iBAAiB;;;;;;;;;;;;;;;;;;;;;;;;iBAgCM,CAAC;AAErC;;;;;;;;GAQG;AACH,eAAO,MAAM,sBAAsB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAcK,CAAC;AAEzC;;;;;;;GAOG;AACH,eAAO,MAAM,4BAA4B;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBA6BM,CAAC;AAEhD;;GAEG;AACH,eAAO,MAAM,sBAAsB;;;;;;;EAOK,CAAC;AAEzC;;GAEG;AACH,eAAO,MAAM,oBAAoB;;;;iBAIK,CAAC;AAEvC;;GAEG;AACH,eAAO,MAAM,uBAAuB;;;iBAGlC,CAAC;AAEH;;;;;;;;;GASG;AACH,eAAO,MAAM,wBAAwB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAqDM,CAAC;AAE5C;;;;;;GAMG;AACH,eAAO,MAAM,oBAAoB;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;iBAGK,CAAC;AAEvC;;;;GAIG;AACH,qBAAa,uBAAwB,SAAQ,KAAK;aAG9B,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;gBAD1C,OAAO,EAAE,MAAM,EACC,MAAM,EAAE,CAAC,CAAC,IAAI,CAAC,SAAS,EAAE;IAM5C;;;;OAIG;IACH,aAAa,IAAI,MAAM;CAUxB;AAED;;;;;;GAMG;AACH,wBAAgB,sBAAsB,CAAC,MAAM,EAAE,OAAO,GAAG,cAAc,CAQtE"}
@@ -48,6 +48,7 @@ export const FieldConfigSchema = z
48
48
  * - Entity type names are lowercase alphanumeric
49
49
  * - Display names and plural names are provided
50
50
  * - Fields array is valid
51
+ * - Additional fields (for template inheritance) are valid
51
52
  */
52
53
  export const EntityTypeConfigSchema = z.object({
53
54
  name: z
@@ -58,6 +59,7 @@ export const EntityTypeConfigSchema = z.object({
58
59
  pluralName: z.string().min(1, 'Plural name cannot be empty'),
59
60
  description: z.string().optional(),
60
61
  fields: z.array(FieldConfigSchema),
62
+ additionalFields: z.array(FieldConfigSchema).optional(),
61
63
  icon: z.string().optional(),
62
64
  });
63
65
  /**
@@ -124,10 +126,12 @@ export const FolderMappingRuleSchema = z.object({
124
126
  * Validates:
125
127
  * - Template ID is lowercase alphanumeric with hyphens
126
128
  * - Version follows semantic versioning (X.Y.Z)
127
- * - Entity types array is valid and non-empty
129
+ * - Entity types array is valid (can be empty for child templates that only extend)
130
+ * - Optional extendsTemplate for inheritance
128
131
  * - Optional metadata fields for discovery
129
132
  */
130
- export const TemplateDefinitionSchema = z.object({
133
+ export const TemplateDefinitionSchema = z
134
+ .object({
131
135
  // Required fields
132
136
  id: z
133
137
  .string()
@@ -138,9 +142,12 @@ export const TemplateDefinitionSchema = z.object({
138
142
  .string()
139
143
  .regex(/^\d+\.\d+\.\d+$/, 'Version must follow semantic versioning (e.g., "1.0.0")'),
140
144
  description: z.string().optional(),
141
- entityTypes: z
142
- .array(EntityTypeConfigSchema)
143
- .min(1, 'Template must define at least one entity type'),
145
+ // Template inheritance
146
+ extendsTemplate: z
147
+ .string()
148
+ .regex(/^[a-z][a-z0-9-]*$/, 'extendsTemplate must be a valid template ID (lowercase alphanumeric with hyphens)')
149
+ .optional(),
150
+ entityTypes: z.array(EntityTypeConfigSchema),
144
151
  relationshipTypes: z.array(RelationshipTypeConfigSchema).optional(),
145
152
  // Discovery metadata (optional)
146
153
  category: TemplateCategorySchema.optional(),
@@ -154,6 +161,16 @@ export const TemplateDefinitionSchema = z.object({
154
161
  .regex(/^\d+\.\d+\.\d+$/, 'minHivemindVersion must follow semantic versioning')
155
162
  .optional(),
156
163
  folderMappings: z.array(FolderMappingRuleSchema).optional(),
164
+ })
165
+ .refine((template) => {
166
+ // Templates must have at least one entity type, unless they extend another template
167
+ if (!template.extendsTemplate && template.entityTypes.length === 0) {
168
+ return false;
169
+ }
170
+ return true;
171
+ }, {
172
+ message: 'Template must define at least one entity type (unless extending another template)',
173
+ path: ['entityTypes'],
157
174
  });
158
175
  /**
159
176
  * Zod schema for full template configuration validation.
@@ -1 +1 @@
1
- {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/templates/validator.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"validator.js","sourceRoot":"","sources":["../../src/templates/validator.ts"],"names":[],"mappings":"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"}
@@ -29,8 +29,8 @@ export declare const NoteTypeSchema: z.ZodEnum<{
29
29
  export type NoteType = z.infer<typeof NoteTypeSchema>;
30
30
  export declare const ImportanceSchema: z.ZodEnum<{
31
31
  background: "background";
32
- major: "major";
33
32
  minor: "minor";
33
+ major: "major";
34
34
  }>;
35
35
  export type Importance = z.infer<typeof ImportanceSchema>;
36
36
  /**
@@ -54,16 +54,16 @@ export declare function createBaseFrontmatterSchema(noteTypeSchema: z.ZodType<st
54
54
  world: z.ZodOptional<z.ZodString>;
55
55
  importance: z.ZodOptional<z.ZodEnum<{
56
56
  background: "background";
57
- major: "major";
58
57
  minor: "minor";
58
+ major: "major";
59
59
  }>>;
60
60
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
61
61
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
62
62
  created: z.ZodOptional<z.ZodString>;
63
63
  updated: z.ZodOptional<z.ZodString>;
64
64
  canon_authority: z.ZodOptional<z.ZodEnum<{
65
- high: "high";
66
65
  medium: "medium";
66
+ high: "high";
67
67
  low: "low";
68
68
  }>>;
69
69
  }, z.core.$strip>;
@@ -81,16 +81,16 @@ export declare const BaseFrontmatterSchema: z.ZodObject<{
81
81
  world: z.ZodOptional<z.ZodString>;
82
82
  importance: z.ZodOptional<z.ZodEnum<{
83
83
  background: "background";
84
- major: "major";
85
84
  minor: "minor";
85
+ major: "major";
86
86
  }>>;
87
87
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
88
88
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
89
89
  created: z.ZodOptional<z.ZodString>;
90
90
  updated: z.ZodOptional<z.ZodString>;
91
91
  canon_authority: z.ZodOptional<z.ZodEnum<{
92
- high: "high";
93
92
  medium: "medium";
93
+ high: "high";
94
94
  low: "low";
95
95
  }>>;
96
96
  }, z.core.$strip>;
@@ -108,16 +108,16 @@ export declare const CharacterFrontmatterSchema: z.ZodObject<{
108
108
  world: z.ZodOptional<z.ZodString>;
109
109
  importance: z.ZodOptional<z.ZodEnum<{
110
110
  background: "background";
111
- major: "major";
112
111
  minor: "minor";
112
+ major: "major";
113
113
  }>>;
114
114
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
115
115
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
116
116
  created: z.ZodOptional<z.ZodString>;
117
117
  updated: z.ZodOptional<z.ZodString>;
118
118
  canon_authority: z.ZodOptional<z.ZodEnum<{
119
- high: "high";
120
119
  medium: "medium";
120
+ high: "high";
121
121
  low: "low";
122
122
  }>>;
123
123
  type: z.ZodLiteral<"character">;
@@ -144,16 +144,16 @@ export declare const LocationFrontmatterSchema: z.ZodObject<{
144
144
  world: z.ZodOptional<z.ZodString>;
145
145
  importance: z.ZodOptional<z.ZodEnum<{
146
146
  background: "background";
147
- major: "major";
148
147
  minor: "minor";
148
+ major: "major";
149
149
  }>>;
150
150
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
151
151
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
152
152
  created: z.ZodOptional<z.ZodString>;
153
153
  updated: z.ZodOptional<z.ZodString>;
154
154
  canon_authority: z.ZodOptional<z.ZodEnum<{
155
- high: "high";
156
155
  medium: "medium";
156
+ high: "high";
157
157
  low: "low";
158
158
  }>>;
159
159
  type: z.ZodLiteral<"location">;
@@ -189,16 +189,16 @@ export declare const EventFrontmatterSchema: z.ZodObject<{
189
189
  world: z.ZodOptional<z.ZodString>;
190
190
  importance: z.ZodOptional<z.ZodEnum<{
191
191
  background: "background";
192
- major: "major";
193
192
  minor: "minor";
193
+ major: "major";
194
194
  }>>;
195
195
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
196
196
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
197
197
  created: z.ZodOptional<z.ZodString>;
198
198
  updated: z.ZodOptional<z.ZodString>;
199
199
  canon_authority: z.ZodOptional<z.ZodEnum<{
200
- high: "high";
201
200
  medium: "medium";
201
+ high: "high";
202
202
  low: "low";
203
203
  }>>;
204
204
  type: z.ZodLiteral<"event">;
@@ -231,16 +231,16 @@ export declare const FactionFrontmatterSchema: z.ZodObject<{
231
231
  world: z.ZodOptional<z.ZodString>;
232
232
  importance: z.ZodOptional<z.ZodEnum<{
233
233
  background: "background";
234
- major: "major";
235
234
  minor: "minor";
235
+ major: "major";
236
236
  }>>;
237
237
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
238
238
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
239
239
  created: z.ZodOptional<z.ZodString>;
240
240
  updated: z.ZodOptional<z.ZodString>;
241
241
  canon_authority: z.ZodOptional<z.ZodEnum<{
242
- high: "high";
243
242
  medium: "medium";
243
+ high: "high";
244
244
  low: "low";
245
245
  }>>;
246
246
  type: z.ZodLiteral<"faction">;
@@ -277,16 +277,16 @@ export declare const LoreFrontmatterSchema: z.ZodObject<{
277
277
  world: z.ZodOptional<z.ZodString>;
278
278
  importance: z.ZodOptional<z.ZodEnum<{
279
279
  background: "background";
280
- major: "major";
281
280
  minor: "minor";
281
+ major: "major";
282
282
  }>>;
283
283
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
284
284
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
285
285
  created: z.ZodOptional<z.ZodString>;
286
286
  updated: z.ZodOptional<z.ZodString>;
287
287
  canon_authority: z.ZodOptional<z.ZodEnum<{
288
- high: "high";
289
288
  medium: "medium";
289
+ high: "high";
290
290
  low: "low";
291
291
  }>>;
292
292
  type: z.ZodLiteral<"lore">;
@@ -321,16 +321,16 @@ export declare const AssetFrontmatterSchema: z.ZodObject<{
321
321
  world: z.ZodOptional<z.ZodString>;
322
322
  importance: z.ZodOptional<z.ZodEnum<{
323
323
  background: "background";
324
- major: "major";
325
324
  minor: "minor";
325
+ major: "major";
326
326
  }>>;
327
327
  tags: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
328
328
  aliases: z.ZodDefault<z.ZodOptional<z.ZodArray<z.ZodString>>>;
329
329
  created: z.ZodOptional<z.ZodString>;
330
330
  updated: z.ZodOptional<z.ZodString>;
331
331
  canon_authority: z.ZodOptional<z.ZodEnum<{
332
- high: "high";
333
332
  medium: "medium";
333
+ high: "high";
334
334
  low: "low";
335
335
  }>>;
336
336
  type: z.ZodLiteral<"asset">;
@@ -465,8 +465,8 @@ export declare const SearchVaultArgsSchema: z.ZodObject<{
465
465
  }>>>;
466
466
  importance: z.ZodOptional<z.ZodArray<z.ZodEnum<{
467
467
  background: "background";
468
- major: "major";
469
468
  minor: "minor";
469
+ major: "major";
470
470
  }>>>;
471
471
  tags: z.ZodOptional<z.ZodArray<z.ZodString>>;
472
472
  world: z.ZodOptional<z.ZodString>;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@hiveforge/hivemind-mcp",
3
- "version": "3.4.0",
3
+ "version": "3.5.1",
4
4
  "description": "MCP server for Obsidian worldbuilding vaults - provides AI tools with consistent canonical context",
5
5
  "main": "dist/index.js",
6
6
  "type": "module",