@hiveforge/hivemind-mcp 2.3.0 → 2.4.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 (39) hide show
  1. package/README.md +107 -27
  2. package/dist/graph/builder.d.ts +7 -3
  3. package/dist/graph/builder.d.ts.map +1 -1
  4. package/dist/graph/builder.js +51 -21
  5. package/dist/graph/builder.js.map +1 -1
  6. package/dist/mcp/tool-generator.d.ts +3 -1
  7. package/dist/mcp/tool-generator.d.ts.map +1 -1
  8. package/dist/mcp/tool-generator.js +41 -5
  9. package/dist/mcp/tool-generator.js.map +1 -1
  10. package/dist/search/engine.d.ts +9 -1
  11. package/dist/search/engine.d.ts.map +1 -1
  12. package/dist/search/engine.js +16 -4
  13. package/dist/search/engine.js.map +1 -1
  14. package/dist/templates/builtin/people-management.d.ts +18 -0
  15. package/dist/templates/builtin/people-management.d.ts.map +1 -0
  16. package/dist/templates/builtin/people-management.js +523 -0
  17. package/dist/templates/builtin/people-management.js.map +1 -0
  18. package/dist/templates/builtin/research.d.ts +18 -0
  19. package/dist/templates/builtin/research.d.ts.map +1 -0
  20. package/dist/templates/builtin/research.js +349 -0
  21. package/dist/templates/builtin/research.js.map +1 -0
  22. package/dist/templates/builtin/worldbuilding.d.ts.map +1 -1
  23. package/dist/templates/builtin/worldbuilding.js +138 -0
  24. package/dist/templates/builtin/worldbuilding.js.map +1 -1
  25. package/dist/templates/loader.d.ts +3 -1
  26. package/dist/templates/loader.d.ts.map +1 -1
  27. package/dist/templates/loader.js +7 -1
  28. package/dist/templates/loader.js.map +1 -1
  29. package/dist/templates/registry.d.ts +31 -1
  30. package/dist/templates/registry.d.ts.map +1 -1
  31. package/dist/templates/registry.js +64 -0
  32. package/dist/templates/registry.js.map +1 -1
  33. package/dist/templates/types.d.ts +28 -0
  34. package/dist/templates/types.d.ts.map +1 -1
  35. package/dist/templates/validator.d.ts +110 -0
  36. package/dist/templates/validator.d.ts.map +1 -1
  37. package/dist/templates/validator.js +35 -2
  38. package/dist/templates/validator.js.map +1 -1
  39. package/package.json +1 -1
@@ -0,0 +1,349 @@
1
+ /**
2
+ * Built-in research template.
3
+ *
4
+ * Defines entity types for academic research and knowledge management:
5
+ * - paper: Academic papers, articles, and publications
6
+ * - citation: References and citation relationships between papers
7
+ * - concept: Key ideas, theories, and definitions
8
+ * - note: General research notes and observations
9
+ */
10
+ /**
11
+ * Research template definition.
12
+ *
13
+ * Designed for academic research, literature reviews, and knowledge management.
14
+ * Supports citation tracking, concept mapping, and research notes.
15
+ */
16
+ export const researchTemplate = {
17
+ id: 'research',
18
+ name: 'Research',
19
+ version: '1.0.0',
20
+ description: 'Template for academic research with papers, citations, concepts, and notes',
21
+ // Relationship type definitions for the knowledge graph
22
+ relationshipTypes: [
23
+ // Citation relationships
24
+ {
25
+ id: 'cites',
26
+ displayName: 'Cites',
27
+ description: 'Paper cites another paper',
28
+ sourceTypes: ['paper'],
29
+ targetTypes: ['paper'],
30
+ bidirectional: true,
31
+ reverseId: 'cited_by',
32
+ },
33
+ {
34
+ id: 'cited_by',
35
+ displayName: 'Cited By',
36
+ description: 'Paper is cited by another paper',
37
+ sourceTypes: ['paper'],
38
+ targetTypes: ['paper'],
39
+ bidirectional: false,
40
+ },
41
+ // Concept relationships
42
+ {
43
+ id: 'defines',
44
+ displayName: 'Defines',
45
+ description: 'Paper defines or introduces a concept',
46
+ sourceTypes: ['paper'],
47
+ targetTypes: ['concept'],
48
+ bidirectional: true,
49
+ reverseId: 'defined_in',
50
+ },
51
+ {
52
+ id: 'defined_in',
53
+ displayName: 'Defined In',
54
+ description: 'Concept is defined in a paper',
55
+ sourceTypes: ['concept'],
56
+ targetTypes: ['paper'],
57
+ bidirectional: false,
58
+ },
59
+ {
60
+ id: 'related_concept',
61
+ displayName: 'Related Concept',
62
+ description: 'Concepts that are related or connected',
63
+ sourceTypes: ['concept'],
64
+ targetTypes: ['concept'],
65
+ bidirectional: true,
66
+ reverseId: 'related_concept',
67
+ },
68
+ {
69
+ id: 'extends',
70
+ displayName: 'Extends',
71
+ description: 'Concept extends or builds upon another concept',
72
+ sourceTypes: ['concept'],
73
+ targetTypes: ['concept'],
74
+ bidirectional: true,
75
+ reverseId: 'extended_by',
76
+ },
77
+ {
78
+ id: 'extended_by',
79
+ displayName: 'Extended By',
80
+ description: 'Concept is extended by another concept',
81
+ sourceTypes: ['concept'],
82
+ targetTypes: ['concept'],
83
+ bidirectional: false,
84
+ },
85
+ // Note relationships
86
+ {
87
+ id: 'about',
88
+ displayName: 'About',
89
+ description: 'Note is about a paper or concept',
90
+ sourceTypes: ['note'],
91
+ targetTypes: ['paper', 'concept'],
92
+ bidirectional: true,
93
+ reverseId: 'has_note',
94
+ },
95
+ {
96
+ id: 'has_note',
97
+ displayName: 'Has Note',
98
+ description: 'Paper or concept has associated notes',
99
+ sourceTypes: ['paper', 'concept'],
100
+ targetTypes: ['note'],
101
+ bidirectional: false,
102
+ },
103
+ // Generic fallback
104
+ {
105
+ id: 'related',
106
+ displayName: 'Related',
107
+ description: 'Generic relationship between any entities',
108
+ sourceTypes: 'any',
109
+ targetTypes: 'any',
110
+ bidirectional: true,
111
+ reverseId: 'related',
112
+ },
113
+ ],
114
+ entityTypes: [
115
+ // Paper entity type
116
+ {
117
+ name: 'paper',
118
+ displayName: 'Paper',
119
+ pluralName: 'Papers',
120
+ description: 'Academic papers, articles, and publications',
121
+ icon: 'file-text',
122
+ fields: [
123
+ {
124
+ name: 'title',
125
+ type: 'string',
126
+ required: true,
127
+ description: 'Paper title',
128
+ },
129
+ {
130
+ name: 'authors',
131
+ type: 'array',
132
+ arrayItemType: 'string',
133
+ required: true,
134
+ description: 'List of authors',
135
+ },
136
+ {
137
+ name: 'year',
138
+ type: 'number',
139
+ description: 'Publication year',
140
+ },
141
+ {
142
+ name: 'venue',
143
+ type: 'string',
144
+ description: 'Publication venue (journal, conference, etc.)',
145
+ },
146
+ {
147
+ name: 'doi',
148
+ type: 'string',
149
+ description: 'Digital Object Identifier',
150
+ },
151
+ {
152
+ name: 'url',
153
+ type: 'string',
154
+ description: 'URL to paper',
155
+ },
156
+ {
157
+ name: 'abstract',
158
+ type: 'string',
159
+ description: 'Paper abstract',
160
+ },
161
+ {
162
+ name: 'keywords',
163
+ type: 'array',
164
+ arrayItemType: 'string',
165
+ description: 'Keywords or topics',
166
+ },
167
+ {
168
+ name: 'paperType',
169
+ type: 'enum',
170
+ enumValues: ['journal', 'conference', 'preprint', 'thesis', 'book', 'chapter', 'report', 'other'],
171
+ description: 'Type of publication',
172
+ },
173
+ {
174
+ name: 'readStatus',
175
+ type: 'enum',
176
+ enumValues: ['unread', 'skimmed', 'read', 'studied'],
177
+ default: 'unread',
178
+ description: 'Reading status',
179
+ },
180
+ {
181
+ name: 'rating',
182
+ type: 'number',
183
+ description: 'Personal rating (1-5)',
184
+ },
185
+ {
186
+ name: 'citedPapers',
187
+ type: 'array',
188
+ arrayItemType: 'string',
189
+ description: 'IDs of papers this paper cites',
190
+ },
191
+ {
192
+ name: 'concepts',
193
+ type: 'array',
194
+ arrayItemType: 'string',
195
+ description: 'IDs of concepts discussed in this paper',
196
+ },
197
+ {
198
+ name: 'pdfPath',
199
+ type: 'string',
200
+ description: 'Path to PDF file in vault',
201
+ },
202
+ ],
203
+ },
204
+ // Citation entity type (for explicit citation tracking)
205
+ {
206
+ name: 'citation',
207
+ displayName: 'Citation',
208
+ pluralName: 'Citations',
209
+ description: 'Citation relationships between papers with context',
210
+ icon: 'quote',
211
+ fields: [
212
+ {
213
+ name: 'sourcePaper',
214
+ type: 'string',
215
+ required: true,
216
+ description: 'ID of the citing paper',
217
+ },
218
+ {
219
+ name: 'targetPaper',
220
+ type: 'string',
221
+ required: true,
222
+ description: 'ID of the cited paper',
223
+ },
224
+ {
225
+ name: 'context',
226
+ type: 'string',
227
+ description: 'Context or reason for the citation',
228
+ },
229
+ {
230
+ name: 'citationType',
231
+ type: 'enum',
232
+ enumValues: ['background', 'method', 'comparison', 'extension', 'critique', 'support', 'other'],
233
+ description: 'Type of citation relationship',
234
+ },
235
+ {
236
+ name: 'page',
237
+ type: 'string',
238
+ description: 'Page number where citation appears',
239
+ },
240
+ {
241
+ name: 'quote',
242
+ type: 'string',
243
+ description: 'Direct quote from the citation context',
244
+ },
245
+ ],
246
+ },
247
+ // Concept entity type
248
+ {
249
+ name: 'concept',
250
+ displayName: 'Concept',
251
+ pluralName: 'Concepts',
252
+ description: 'Key ideas, theories, and definitions',
253
+ icon: 'lightbulb',
254
+ fields: [
255
+ {
256
+ name: 'name',
257
+ type: 'string',
258
+ required: true,
259
+ description: 'Concept name',
260
+ },
261
+ {
262
+ name: 'definition',
263
+ type: 'string',
264
+ description: 'Brief definition',
265
+ },
266
+ {
267
+ name: 'domain',
268
+ type: 'string',
269
+ description: 'Research domain or field',
270
+ },
271
+ {
272
+ name: 'aliases',
273
+ type: 'array',
274
+ arrayItemType: 'string',
275
+ description: 'Alternative names or synonyms',
276
+ },
277
+ {
278
+ name: 'relatedConcepts',
279
+ type: 'array',
280
+ arrayItemType: 'string',
281
+ description: 'IDs of related concepts',
282
+ },
283
+ {
284
+ name: 'keyPapers',
285
+ type: 'array',
286
+ arrayItemType: 'string',
287
+ description: 'IDs of papers that define or explain this concept',
288
+ },
289
+ {
290
+ name: 'parentConcept',
291
+ type: 'string',
292
+ description: 'ID of parent concept (for hierarchies)',
293
+ },
294
+ {
295
+ name: 'childConcepts',
296
+ type: 'array',
297
+ arrayItemType: 'string',
298
+ description: 'IDs of child concepts',
299
+ },
300
+ ],
301
+ },
302
+ // Note entity type
303
+ {
304
+ name: 'note',
305
+ displayName: 'Note',
306
+ pluralName: 'Notes',
307
+ description: 'General research notes and observations',
308
+ icon: 'sticky-note',
309
+ fields: [
310
+ {
311
+ name: 'title',
312
+ type: 'string',
313
+ required: true,
314
+ description: 'Note title',
315
+ },
316
+ {
317
+ name: 'noteType',
318
+ type: 'enum',
319
+ enumValues: ['literature', 'idea', 'question', 'summary', 'critique', 'method', 'other'],
320
+ default: 'other',
321
+ description: 'Type of note',
322
+ },
323
+ {
324
+ name: 'relatedPapers',
325
+ type: 'array',
326
+ arrayItemType: 'string',
327
+ description: 'IDs of related papers',
328
+ },
329
+ {
330
+ name: 'relatedConcepts',
331
+ type: 'array',
332
+ arrayItemType: 'string',
333
+ description: 'IDs of related concepts',
334
+ },
335
+ {
336
+ name: 'project',
337
+ type: 'string',
338
+ description: 'Research project this note belongs to',
339
+ },
340
+ {
341
+ name: 'dateCreated',
342
+ type: 'date',
343
+ description: 'When the note was created',
344
+ },
345
+ ],
346
+ },
347
+ ],
348
+ };
349
+ //# sourceMappingURL=research.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"research.js","sourceRoot":"","sources":["../../../src/templates/builtin/research.ts"],"names":[],"mappings":"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"}
@@ -1 +1 @@
1
- {"version":3,"file":"worldbuilding.d.ts","sourceRoot":"","sources":["../../../src/templates/builtin/worldbuilding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,kBAocnC,CAAC"}
1
+ {"version":3,"file":"worldbuilding.d.ts","sourceRoot":"","sources":["../../../src/templates/builtin/worldbuilding.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;GAUG;AAEH,OAAO,KAAK,EAAE,kBAAkB,EAAE,MAAM,aAAa,CAAC;AAEtD;;;;;GAKG;AACH,eAAO,MAAM,qBAAqB,EAAE,kBAmlBnC,CAAC"}
@@ -20,6 +20,144 @@ export const worldbuildingTemplate = {
20
20
  name: 'Worldbuilding',
21
21
  version: '1.0.0',
22
22
  description: 'Template for fictional world creation with characters, locations, events, factions, lore, and assets',
23
+ // Relationship type definitions for the knowledge graph
24
+ relationshipTypes: [
25
+ // Character relationships
26
+ {
27
+ id: 'knows',
28
+ displayName: 'Knows',
29
+ description: 'Characters who know each other',
30
+ sourceTypes: ['character'],
31
+ targetTypes: ['character'],
32
+ bidirectional: true,
33
+ reverseId: 'knows',
34
+ },
35
+ {
36
+ id: 'located_in',
37
+ displayName: 'Located In',
38
+ description: 'Character is located in or associated with a location',
39
+ sourceTypes: ['character'],
40
+ targetTypes: ['location'],
41
+ bidirectional: true,
42
+ reverseId: 'has_inhabitant',
43
+ },
44
+ {
45
+ id: 'has_inhabitant',
46
+ displayName: 'Has Inhabitant',
47
+ description: 'Location has an inhabitant character',
48
+ sourceTypes: ['location'],
49
+ targetTypes: ['character'],
50
+ bidirectional: false,
51
+ },
52
+ // Faction relationships
53
+ {
54
+ id: 'member_of',
55
+ displayName: 'Member Of',
56
+ description: 'Character is a member of a faction',
57
+ sourceTypes: ['character'],
58
+ targetTypes: ['faction'],
59
+ bidirectional: true,
60
+ reverseId: 'has_member',
61
+ },
62
+ {
63
+ id: 'has_member',
64
+ displayName: 'Has Member',
65
+ description: 'Faction has a member character',
66
+ sourceTypes: ['faction'],
67
+ targetTypes: ['character'],
68
+ bidirectional: false,
69
+ },
70
+ {
71
+ id: 'allied_with',
72
+ displayName: 'Allied With',
73
+ description: 'Factions that are allied',
74
+ sourceTypes: ['faction'],
75
+ targetTypes: ['faction'],
76
+ bidirectional: true,
77
+ reverseId: 'allied_with',
78
+ },
79
+ {
80
+ id: 'rivals_with',
81
+ displayName: 'Rivals With',
82
+ description: 'Factions that are rivals or enemies',
83
+ sourceTypes: ['faction'],
84
+ targetTypes: ['faction'],
85
+ bidirectional: true,
86
+ reverseId: 'rivals_with',
87
+ },
88
+ // Location relationships
89
+ {
90
+ id: 'connected_to',
91
+ displayName: 'Connected To',
92
+ description: 'Locations that are connected or adjacent',
93
+ sourceTypes: ['location'],
94
+ targetTypes: ['location'],
95
+ bidirectional: true,
96
+ reverseId: 'connected_to',
97
+ },
98
+ {
99
+ id: 'contains',
100
+ displayName: 'Contains',
101
+ description: 'Location contains another location (parent-child hierarchy)',
102
+ sourceTypes: ['location'],
103
+ targetTypes: ['location'],
104
+ bidirectional: true,
105
+ reverseId: 'contained_in',
106
+ },
107
+ {
108
+ id: 'contained_in',
109
+ displayName: 'Contained In',
110
+ description: 'Location is contained within another location',
111
+ sourceTypes: ['location'],
112
+ targetTypes: ['location'],
113
+ bidirectional: false,
114
+ },
115
+ // Event relationships
116
+ {
117
+ id: 'participated_in',
118
+ displayName: 'Participated In',
119
+ description: 'Character participated in an event',
120
+ sourceTypes: ['character'],
121
+ targetTypes: ['event'],
122
+ bidirectional: true,
123
+ reverseId: 'has_participant',
124
+ },
125
+ {
126
+ id: 'has_participant',
127
+ displayName: 'Has Participant',
128
+ description: 'Event has a participant character',
129
+ sourceTypes: ['event'],
130
+ targetTypes: ['character'],
131
+ bidirectional: false,
132
+ },
133
+ {
134
+ id: 'occurred_at',
135
+ displayName: 'Occurred At',
136
+ description: 'Event occurred at a location',
137
+ sourceTypes: ['event'],
138
+ targetTypes: ['location'],
139
+ bidirectional: true,
140
+ reverseId: 'hosted_event',
141
+ },
142
+ {
143
+ id: 'hosted_event',
144
+ displayName: 'Hosted Event',
145
+ description: 'Location hosted an event',
146
+ sourceTypes: ['location'],
147
+ targetTypes: ['event'],
148
+ bidirectional: false,
149
+ },
150
+ // Generic fallback relationship
151
+ {
152
+ id: 'related',
153
+ displayName: 'Related',
154
+ description: 'Generic relationship between any entities',
155
+ sourceTypes: 'any',
156
+ targetTypes: 'any',
157
+ bidirectional: true,
158
+ reverseId: 'related',
159
+ },
160
+ ],
23
161
  entityTypes: [
24
162
  // Character entity type
25
163
  {
@@ -1 +1 @@
1
- {"version":3,"file":"worldbuilding.js","sourceRoot":"","sources":["../../../src/templates/builtin/worldbuilding.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"worldbuilding.js","sourceRoot":"","sources":["../../../src/templates/builtin/worldbuilding.ts"],"names":[],"mappings":"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"}
@@ -35,8 +35,10 @@ export declare function loadTemplateConfig(configPath?: string): TemplateConfig;
35
35
  /**
36
36
  * Register all built-in templates.
37
37
  *
38
- * Currently includes:
38
+ * Includes:
39
39
  * - worldbuilding: Characters, locations, events, factions, lore, assets
40
+ * - research: Papers, citations, concepts, notes
41
+ * - people-management: People, goals, teams, 1:1 meetings
40
42
  *
41
43
  * This function should be called before loading user templates to ensure
42
44
  * built-in templates can be referenced by ID.
@@ -1 +1 @@
1
- {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/templates/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAMjD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoBjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CA8BtE;AAED;;;;;;;;GAQG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAE/C;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CASlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAQzC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CAiBvE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,8DAWrD"}
1
+ {"version":3,"file":"loader.d.ts","sourceRoot":"","sources":["../../src/templates/loader.ts"],"names":[],"mappings":"AAAA;;;;;;;;;GASG;AAKH,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,YAAY,CAAC;AAQjD;;;;;;;;;;GAUG;AACH,wBAAgB,cAAc,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,MAAM,GAAG,IAAI,CAoBjE;AAED;;;;;;;;;GASG;AACH,wBAAgB,kBAAkB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CA8BtE;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,wBAAwB,IAAI,IAAI,CAI/C;AAED;;;;;;;GAOG;AACH,wBAAgB,qBAAqB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CASlE;AAED;;;;;;;;GAQG;AACH,wBAAgB,gBAAgB,CAAC,MAAM,EAAE,cAAc,GAAG,IAAI,CAE7D;AAED;;;;;;;GAOG;AACH,wBAAgB,kBAAkB,IAAI,IAAI,CAQzC;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,wBAAgB,mBAAmB,CAAC,UAAU,CAAC,EAAE,MAAM,GAAG,cAAc,CAiBvE;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,eAAe,CAAC,cAAc,EAAE,MAAM,8DAWrD"}
@@ -15,6 +15,8 @@ import { validateTemplateConfig } from './validator.js';
15
15
  import { templateRegistry } from './registry.js';
16
16
  import { schemaFactory } from './schema-factory.js';
17
17
  import { worldbuildingTemplate } from './builtin/worldbuilding.js';
18
+ import { researchTemplate } from './builtin/research.js';
19
+ import { peopleManagementTemplate } from './builtin/people-management.js';
18
20
  /**
19
21
  * Find the config.json file.
20
22
  *
@@ -83,14 +85,18 @@ export function loadTemplateConfig(configPath) {
83
85
  /**
84
86
  * Register all built-in templates.
85
87
  *
86
- * Currently includes:
88
+ * Includes:
87
89
  * - worldbuilding: Characters, locations, events, factions, lore, assets
90
+ * - research: Papers, citations, concepts, notes
91
+ * - people-management: People, goals, teams, 1:1 meetings
88
92
  *
89
93
  * This function should be called before loading user templates to ensure
90
94
  * built-in templates can be referenced by ID.
91
95
  */
92
96
  export function registerBuiltinTemplates() {
93
97
  templateRegistry.register(worldbuildingTemplate, 'builtin');
98
+ templateRegistry.register(researchTemplate, 'builtin');
99
+ templateRegistry.register(peopleManagementTemplate, 'builtin');
94
100
  }
95
101
  /**
96
102
  * Register user-defined templates from config.
@@ -1 +1 @@
1
- {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/templates/loader.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"loader.js","sourceRoot":"","sources":["../../src/templates/loader.ts"],"names":[],"mappings":"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"}
@@ -4,7 +4,7 @@
4
4
  * Provides centralized template management with O(1) lookups
5
5
  * and validation on registration.
6
6
  */
7
- import type { TemplateDefinition, TemplateRegistryEntry, EntityTypeConfig } from './types.js';
7
+ import type { TemplateDefinition, TemplateRegistryEntry, EntityTypeConfig, RelationshipTypeConfig } from './types.js';
8
8
  /**
9
9
  * Source of a template registration.
10
10
  */
@@ -80,6 +80,36 @@ export declare class TemplateRegistry {
80
80
  * @throws {Error} If no template is active
81
81
  */
82
82
  getEntityTypes(): EntityTypeConfig[];
83
+ /**
84
+ * Gets a relationship type config from the active template.
85
+ *
86
+ * O(1) lookup using the relationship type map.
87
+ *
88
+ * @param id - Relationship type ID to retrieve
89
+ * @returns Relationship type config if found, undefined otherwise
90
+ * @throws {Error} If no template is active
91
+ */
92
+ getRelationshipType(id: string): RelationshipTypeConfig | undefined;
93
+ /**
94
+ * Gets all relationship type configs from the active template.
95
+ *
96
+ * @returns Array of relationship type configs
97
+ * @throws {Error} If no template is active
98
+ */
99
+ getRelationshipTypes(): RelationshipTypeConfig[];
100
+ /**
101
+ * Gets valid relationship types for a source-target entity type pair.
102
+ *
103
+ * Returns all relationship types where:
104
+ * - sourceTypes includes the source entity type (or is 'any')
105
+ * - targetTypes includes the target entity type (or is 'any')
106
+ *
107
+ * @param sourceType - Source entity type name
108
+ * @param targetType - Target entity type name
109
+ * @returns Array of valid relationship type configs
110
+ * @throws {Error} If no template is active
111
+ */
112
+ getValidRelationships(sourceType: string, targetType: string): RelationshipTypeConfig[];
83
113
  /**
84
114
  * Clears all registered templates and resets active template.
85
115
  *