melchizedek-agents 0.15.0 → 0.16.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.
- package/.env.example +272 -0
- package/AGENT_SETUP.md +19 -14
- package/CHANGELOG.md +623 -0
- package/DOCUMENTATION.md +375 -109
- package/QUICKSTART.md +55 -10
- package/README.md +23 -3
- package/config/agents/README.md +34 -0
- package/config/agents/examples/ares.yaml +116 -40
- package/config/agents/examples/assistant.yaml +74 -24
- package/config/agents/examples/augustin.yaml +105 -44
- package/config/agents/examples/cartographers.yaml +90 -23
- package/config/agents/examples/claude.yaml +44 -6
- package/config/agents/examples/council.yaml +22 -8
- package/config/agents/examples/critic.yaml +56 -21
- package/config/agents/examples/delegation.yaml +75 -9
- package/config/agents/examples/hierarchical.yaml +54 -8
- package/config/agents/examples/image_production.yaml +53 -16
- package/config/agents/examples/librarian.yaml +69 -14
- package/config/agents/examples/model_zoo.yaml +102 -27
- package/config/agents/examples/patient_advocate.yaml +101 -34
- package/config/agents/examples/research.yaml +49 -8
- package/config/agents/examples/scribe.yaml +111 -79
- package/config/agents/examples/scriptorium.yaml +86 -24
- package/config/agents/examples/style_council.yaml +30 -9
- package/config/agents/examples/syndicate.yaml +28 -10
- package/config/agents/examples/tutor.yaml +9 -3
- package/config/agents/syndicateSchema.yaml +39 -9
- package/config/agents/templates/README.md +7 -2
- package/config/agents/templates/account_memory.yaml +76 -18
- package/config/agents/templates/case_desk.yaml +84 -13
- package/config/agents/templates/conversational.yaml +38 -9
- package/config/agents/templates/draft_review.yaml +40 -13
- package/config/agents/templates/intake_extractor.yaml +33 -16
- package/config/agents/templates/research_brief.yaml +72 -26
- package/config/agents/templates/research_desk.yaml +74 -30
- package/config/agents/templates/review_panel.yaml +65 -30
- package/config/agents/templates/support_triage.yaml +107 -40
- package/config/agents/templates/systems_operator.yaml +76 -25
- package/db/hardening.sql +202 -0
- package/db/memory_v2.sql +77 -0
- package/db/migrations/0001_base.sql +167 -0
- package/db/migrations/0002_erase_scope.sql +172 -0
- package/db/migrations/0003_postgres_storage.sql +58 -0
- package/db/migrations/0004_usage.sql +94 -0
- package/db/migrations/0005_agent_registry.sql +200 -0
- package/db/migrations/0006_task_leases.sql +25 -0
- package/db/migrations/0007_memory_commit.sql +134 -0
- package/db/migrations/0008_memory_retention.sql +37 -0
- package/db/migrations/0009_task_queue.sql +51 -0
- package/db/migrations/0010_erase_complete.sql +180 -0
- package/db/telemetry.sql +401 -0
- package/demo/README.md +77 -0
- package/demo/a2a_demo.mjs +95 -0
- package/dist/lib/a2a/app.d.ts +253 -0
- package/dist/lib/a2a/app.js +751 -0
- package/dist/lib/a2a/executor.d.ts +167 -0
- package/dist/lib/a2a/executor.js +548 -0
- package/dist/lib/a2a/identity.d.ts +122 -0
- package/dist/lib/a2a/identity.js +254 -0
- package/dist/lib/a2a/policy.d.ts +110 -0
- package/dist/lib/a2a/policy.js +178 -0
- package/dist/lib/a2a/redisLimits.d.ts +26 -0
- package/dist/lib/a2a/redisLimits.js +31 -0
- package/dist/lib/a2a/remoteAgent.d.ts +91 -0
- package/dist/lib/a2a/remoteAgent.js +268 -0
- package/dist/lib/a2a/turnLock.d.ts +28 -0
- package/dist/lib/a2a/turnLock.js +76 -0
- package/dist/lib/compile.d.ts +11 -1
- package/dist/lib/compile.js +92 -9
- package/dist/lib/config.d.ts +2 -2
- package/dist/lib/config.js +2 -2
- package/dist/lib/doctor.d.ts +49 -2
- package/dist/lib/doctor.js +159 -12
- package/dist/lib/grounding.d.ts +2 -2
- package/dist/lib/grounding.js +2 -2
- package/dist/lib/guards/index.d.ts +12 -3
- package/dist/lib/guards/index.js +19 -4
- package/dist/lib/guards/science.js +1 -1
- package/dist/lib/index.d.ts +37 -2
- package/dist/lib/index.js +35 -4
- package/dist/lib/loadEnv.d.ts +23 -11
- package/dist/lib/loadEnv.js +77 -29
- package/dist/lib/loadSyndicate.d.ts +69 -5
- package/dist/lib/loadSyndicate.js +127 -71
- package/dist/lib/memory/erase.d.ts +24 -0
- package/dist/lib/memory/erase.js +47 -0
- package/dist/lib/memory/namespace.d.ts +37 -0
- package/dist/lib/memory/namespace.js +74 -0
- package/dist/lib/memory/providers.d.ts +99 -0
- package/dist/lib/memory/providers.js +240 -0
- package/dist/lib/memory/store.d.ts +74 -0
- package/dist/lib/memory/store.js +108 -0
- package/dist/lib/memory/supabaseMemoryService.d.ts +69 -9
- package/dist/lib/memory/supabaseMemoryService.js +239 -125
- package/dist/lib/models/capabilities.d.ts +50 -0
- package/dist/lib/models/capabilities.js +214 -4
- package/dist/lib/models/claudeLlm.d.ts +10 -1
- package/dist/lib/models/claudeLlm.js +57 -27
- package/dist/lib/models/endpoints.d.ts +100 -0
- package/dist/lib/models/endpoints.js +282 -0
- package/dist/lib/models/gateway.d.ts +1 -1
- package/dist/lib/models/gateway.js +4 -3
- package/dist/lib/models/gatewayLlm.d.ts +2 -2
- package/dist/lib/models/gatewayLlm.js +5 -5
- package/dist/lib/models/gptLlm.d.ts +22 -1
- package/dist/lib/models/gptLlm.js +77 -23
- package/dist/lib/models/grokLlm.d.ts +13 -4
- package/dist/lib/models/grokLlm.js +22 -7
- package/dist/lib/models/ollamaLlm.d.ts +26 -0
- package/dist/lib/models/ollamaLlm.js +43 -1
- package/dist/lib/models/openAiCompatibleLlm.d.ts +60 -2
- package/dist/lib/models/openAiCompatibleLlm.js +185 -36
- package/dist/lib/models/providerMap.js +9 -2
- package/dist/lib/models/registry.d.ts +24 -3
- package/dist/lib/models/registry.js +83 -23
- package/dist/lib/models/retry.d.ts +146 -0
- package/dist/lib/models/retry.js +305 -0
- package/dist/lib/models/schemaNormalize.d.ts +20 -0
- package/dist/lib/models/schemaNormalize.js +43 -0
- package/dist/lib/net/addressGuard.d.ts +60 -0
- package/dist/lib/net/addressGuard.js +216 -0
- package/dist/lib/observability/embeddings.d.ts +11 -2
- package/dist/lib/observability/embeddings.js +18 -14
- package/dist/lib/observability/metrics.d.ts +36 -0
- package/dist/lib/observability/metrics.js +86 -0
- package/dist/lib/observability/redact.d.ts +29 -0
- package/dist/lib/observability/redact.js +102 -0
- package/dist/lib/observability/supabaseSpanExporter.d.ts +2 -0
- package/dist/lib/observability/supabaseSpanExporter.js +22 -6
- package/dist/lib/observability/tracer.js +33 -3
- package/dist/lib/persistence/supabaseProvider.d.ts +11 -0
- package/dist/lib/persistence/supabaseProvider.js +32 -6
- package/dist/lib/registry.d.ts +87 -0
- package/dist/lib/registry.js +146 -0
- package/dist/lib/runtime/approvals.d.ts +44 -0
- package/dist/lib/runtime/approvals.js +67 -0
- package/dist/lib/runtime/syndicateTurn.d.ts +233 -0
- package/dist/lib/runtime/syndicateTurn.js +597 -0
- package/dist/lib/runtime/turnControl.d.ts +90 -0
- package/dist/lib/runtime/turnControl.js +131 -0
- package/dist/lib/session/supabaseSessionService.js +1 -1
- package/dist/lib/session/transcript.d.ts +9 -1
- package/dist/lib/session/transcript.js +15 -7
- package/dist/lib/storage/postgres/index.d.ts +98 -0
- package/dist/lib/storage/postgres/index.js +146 -0
- package/dist/lib/storage/postgres/memoryStore.d.ts +11 -0
- package/dist/lib/storage/postgres/memoryStore.js +82 -0
- package/dist/lib/storage/postgres/sessionService.d.ts +51 -0
- package/dist/lib/storage/postgres/sessionService.js +225 -0
- package/dist/lib/storage/postgres/taskQueue.d.ts +22 -0
- package/dist/lib/storage/postgres/taskQueue.js +101 -0
- package/dist/lib/storage/postgres/taskStore.d.ts +55 -0
- package/dist/lib/storage/postgres/taskStore.js +168 -0
- package/dist/lib/storage/schema.d.ts +27 -0
- package/dist/lib/storage/schema.js +50 -0
- package/dist/lib/storage/schemaVersion.d.ts +25 -0
- package/dist/lib/storage/schemaVersion.js +46 -0
- package/dist/lib/syndicateSchema.d.ts +275 -0
- package/dist/lib/syndicateSchema.js +534 -0
- package/dist/lib/toolRegistry.d.ts +15 -0
- package/dist/lib/toolRegistry.js +48 -15
- package/dist/lib/tools/collectionsSearchTool.js +1 -1
- package/dist/lib/tools/mcpServe.d.ts +2 -3
- package/dist/lib/tools/mcpServe.js +3 -4
- package/dist/lib/tools/mcpToolFactory.d.ts +1 -0
- package/dist/lib/tools/mcpToolFactory.js +13 -21
- package/dist/lib/tools/science/corrections.js +2 -2
- package/dist/lib/tools/science/europepmc.js +2 -2
- package/dist/lib/tools/science/openalex.js +2 -2
- package/dist/lib/tools/science/trials.d.ts +1 -1
- package/dist/lib/tools/science/trials.js +2 -2
- package/dist/lib/tools/scienceTools.d.ts +5 -5
- package/dist/lib/tools/scienceTools.js +5 -5
- package/dist/lib/tools/taskTools.d.ts +75 -26
- package/dist/lib/tools/taskTools.js +83 -51
- package/dist/lib/tools/toolContract.d.ts +17 -4
- package/dist/lib/tools/toolContract.js +13 -5
- package/dist/lib/tools/webExtractTool.d.ts +7 -10
- package/dist/lib/tools/webExtractTool.js +15 -51
- package/dist/lib/tools/webSearchTool.d.ts +2 -1
- package/dist/lib/tools/webSearchTool.js +4 -3
- package/dist/lib/tools/wikiTools.d.ts +2 -2
- package/dist/lib/tools/wikiTools.js +12 -12
- package/dist/lib/tools/xApiSearchTool.d.ts +10 -10
- package/dist/lib/tools/xApiSearchTool.js +6 -6
- package/dist/lib/tools/xSearchTool.js +1 -1
- package/dist/lib/wiki/agentRun.js +1 -1
- package/dist/lib/wiki/builder.js +21 -6
- package/dist/lib/wiki/dive.js +2 -2
- package/dist/lib/wiki/entities.d.ts +2 -2
- package/dist/lib/wiki/entities.js +7 -7
- package/dist/lib/wiki/extract.js +5 -1
- package/dist/lib/wiki/fill.js +5 -5
- package/dist/lib/wiki/format.d.ts +7 -5
- package/dist/lib/wiki/format.js +2 -2
- package/dist/lib/wiki/graph.js +2 -2
- package/dist/lib/wiki/lint.js +2 -2
- package/dist/lib/wiki/markdown.d.ts +1 -1
- package/dist/lib/wiki/markdown.js +6 -1
- package/dist/lib/wiki/pipeline.js +2 -2
- package/dist/lib/wiki/vault.js +2 -2
- package/dist/scripts/a2a_server.d.ts +17 -11
- package/dist/scripts/a2a_server.js +405 -1094
- package/dist/scripts/assistant_worker.d.ts +5 -3
- package/dist/scripts/assistant_worker.js +88 -58
- package/dist/scripts/db.d.ts +26 -0
- package/dist/scripts/db.js +179 -0
- package/dist/scripts/doctor.d.ts +2 -0
- package/dist/scripts/doctor.js +45 -2
- package/dist/scripts/init.d.ts +43 -0
- package/dist/scripts/init.js +152 -0
- package/dist/scripts/registry.d.ts +25 -0
- package/dist/scripts/registry.js +182 -0
- package/dist/scripts/skills_install.js +1 -1
- package/dist/scripts/syndicate_chat.js +159 -276
- package/package.json +75 -13
- package/skills/README.md +1 -1
- package/skills/briefs/melchizedek-author.md +3 -3
- package/skills/briefs/melchizedek-memory.md +3 -1
- package/skills/briefs/melchizedek-models.md +2 -2
- package/skills/briefs/melchizedek-serve.md +16 -12
- package/skills/briefs/skills-readme.md +2 -2
- package/skills/melchizedek-author/SKILL.md +2 -2
- package/skills/melchizedek-author/templates/minimal.yaml +1 -1
- package/skills/melchizedek-memory/SKILL.md +2 -0
- package/skills/melchizedek-models/SKILL.md +1 -1
- package/skills/melchizedek-serve/SKILL.md +18 -9
- package/dist/lib/tools/xPacket.d.ts +0 -102
- package/dist/lib/tools/xPacket.js +0 -226
package/dist/lib/wiki/graph.js
CHANGED
|
@@ -14,8 +14,8 @@
|
|
|
14
14
|
* index could. `wiki:build --graph` merely snapshots this derivation for
|
|
15
15
|
* visualisation.
|
|
16
16
|
*/
|
|
17
|
-
import { effectiveStatus, trustTier } from
|
|
18
|
-
import { lookupTarget, resolveLinkTarget, } from
|
|
17
|
+
import { effectiveStatus, trustTier } from './format.js';
|
|
18
|
+
import { lookupTarget, resolveLinkTarget, } from './vault.js';
|
|
19
19
|
// ── Construction ─────────────────────────────────────────────────────────────
|
|
20
20
|
export function buildGraph(vault) {
|
|
21
21
|
const nodes = new Map();
|
package/dist/lib/wiki/lint.js
CHANGED
|
@@ -25,8 +25,8 @@
|
|
|
25
25
|
* itself know any private vocabulary.
|
|
26
26
|
*/
|
|
27
27
|
import { posix } from 'node:path';
|
|
28
|
-
import { CONCEPT_TYPES, isStale, LOG_ENTRY_RE, } from
|
|
29
|
-
import { docsInDirectory, lookupTarget, resolveLinkTarget, } from
|
|
28
|
+
import { CONCEPT_TYPES, isStale, LOG_ENTRY_RE, } from './format.js';
|
|
29
|
+
import { docsInDirectory, lookupTarget, resolveLinkTarget, } from './vault.js';
|
|
30
30
|
function report(findings) {
|
|
31
31
|
const errors = findings.filter((f) => f.severity === 'error').length;
|
|
32
32
|
const warnings = findings.filter((f) => f.severity === 'warning').length;
|
|
@@ -118,7 +118,7 @@ export declare function generatedBlock(id: string, source: string, content: stri
|
|
|
118
118
|
/** Splice `content` between a slot's markers. Null when the slot is absent. */
|
|
119
119
|
export declare function setSlotContent(raw: string, slotId: string, content: string): string | null;
|
|
120
120
|
/** Splice `content` between a generated block's markers. Null when absent. */
|
|
121
|
-
export declare function setGeneratedContent(raw: string, blockId: string, content: string): string | null;
|
|
121
|
+
export declare function setGeneratedContent(raw: string, blockId: string, content: string, source?: string): string | null;
|
|
122
122
|
/**
|
|
123
123
|
* Insert a log entry newest-first: after the preamble (everything before the
|
|
124
124
|
* first `## [` entry), before existing entries. log.md stays chronologically
|
|
@@ -304,12 +304,17 @@ export function setSlotContent(raw, slotId, content) {
|
|
|
304
304
|
].join('\n');
|
|
305
305
|
}
|
|
306
306
|
/** Splice `content` between a generated block's markers. Null when absent. */
|
|
307
|
-
export function setGeneratedContent(raw, blockId, content) {
|
|
307
|
+
export function setGeneratedContent(raw, blockId, content, source) {
|
|
308
308
|
const doc = parseDoc(raw);
|
|
309
309
|
const block = doc.generated.find((b) => b.id === blockId);
|
|
310
310
|
if (!block)
|
|
311
311
|
return null;
|
|
312
312
|
const lines = raw.split('\n');
|
|
313
|
+
// A source that moved (a file relocated in the repo) rewrites the opening
|
|
314
|
+
// marker too, so the attribution never outlives the file it names.
|
|
315
|
+
if (source !== undefined && block.source !== source) {
|
|
316
|
+
lines[block.startLine - 1] = generatedBlock(blockId, source, '').split('\n')[0];
|
|
317
|
+
}
|
|
313
318
|
return [
|
|
314
319
|
...lines.slice(0, block.startLine),
|
|
315
320
|
content.trim(),
|
|
@@ -15,8 +15,8 @@
|
|
|
15
15
|
* caller extracted from its own truth. This module never guesses what a
|
|
16
16
|
* repo contains.
|
|
17
17
|
*/
|
|
18
|
-
import { buildEntityGraph, entityStats, lintEntityGraph, loadRelations, NODE_KINDS, relationEdges, RELATIONS, writeSnapshot, } from
|
|
19
|
-
import { table } from
|
|
18
|
+
import { buildEntityGraph, entityStats, lintEntityGraph, loadRelations, NODE_KINDS, relationEdges, RELATIONS, writeSnapshot, } from './entities.js';
|
|
19
|
+
import { table } from './markdown.js';
|
|
20
20
|
/**
|
|
21
21
|
* Merge the derived layer with the asserted relations and (unless this is a
|
|
22
22
|
* lint-only run) refresh the snapshot the wiki tools read. The snapshot
|
package/dist/lib/wiki/vault.js
CHANGED
|
@@ -19,8 +19,8 @@
|
|
|
19
19
|
*/
|
|
20
20
|
import { existsSync, mkdirSync, readdirSync, readFileSync, writeFileSync, } from 'node:fs';
|
|
21
21
|
import { dirname, join, posix, resolve, sep } from 'node:path';
|
|
22
|
-
import { conceptFrontmatterSchema, isPrivatePath, isReservedFilename, } from
|
|
23
|
-
import { parseDoc } from
|
|
22
|
+
import { conceptFrontmatterSchema, isPrivatePath, isReservedFilename, } from './format.js';
|
|
23
|
+
import { parseDoc } from './markdown.js';
|
|
24
24
|
// ── Bundle root ──────────────────────────────────────────────────────────────
|
|
25
25
|
/**
|
|
26
26
|
* WIKI_ROOT env var wins; default is `<cwd>/wiki`. The default used to be
|
|
@@ -1,12 +1,18 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
|
-
|
|
3
|
-
|
|
4
|
-
|
|
5
|
-
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
|
|
9
|
-
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
export
|
|
2
|
+
import type { Server } from 'node:http';
|
|
3
|
+
import { createA2AApp } from '../lib/a2a/app.ts';
|
|
4
|
+
export { describeTurnError } from '../lib/a2a/executor.ts';
|
|
5
|
+
/**
|
|
6
|
+
* What a deployment adds on top of the environment-driven server: its own
|
|
7
|
+
* routes and any createA2AApp option. A private deployment imports
|
|
8
|
+
* `startServer` from `melchizedek-agents/server`, registers its tools with
|
|
9
|
+
* `registerTool`, and passes its routes here, so it inherits every
|
|
10
|
+
* environment variable this file reads (ADR 0022).
|
|
11
|
+
*/
|
|
12
|
+
export interface ServerExtensions {
|
|
13
|
+
/** Mounted after authentication, before the built-in routes. */
|
|
14
|
+
routes?: (app: import('express').Express) => void;
|
|
15
|
+
/** Any other createA2AApp option; wins over what the environment sets. */
|
|
16
|
+
options?: Partial<Parameters<typeof createA2AApp>[0]>;
|
|
17
|
+
}
|
|
18
|
+
export declare function startServer(syndicateName?: string, extensions?: ServerExtensions): Promise<Server>;
|