@indexnetwork/protocol 0.1.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/dist/agents/chat.agent.d.ts +218 -0
- package/dist/agents/chat.agent.d.ts.map +1 -0
- package/dist/agents/chat.agent.js +884 -0
- package/dist/agents/chat.agent.js.map +1 -0
- package/dist/agents/chat.prompt.d.ts +18 -0
- package/dist/agents/chat.prompt.d.ts.map +1 -0
- package/dist/agents/chat.prompt.js +372 -0
- package/dist/agents/chat.prompt.js.map +1 -0
- package/dist/agents/chat.prompt.modules.d.ts +61 -0
- package/dist/agents/chat.prompt.modules.d.ts.map +1 -0
- package/dist/agents/chat.prompt.modules.js +366 -0
- package/dist/agents/chat.prompt.modules.js.map +1 -0
- package/dist/agents/chat.title.generator.d.ts +20 -0
- package/dist/agents/chat.title.generator.d.ts.map +1 -0
- package/dist/agents/chat.title.generator.js +66 -0
- package/dist/agents/chat.title.generator.js.map +1 -0
- package/dist/agents/home.categorizer.d.ts +28 -0
- package/dist/agents/home.categorizer.d.ts.map +1 -0
- package/dist/agents/home.categorizer.js +170 -0
- package/dist/agents/home.categorizer.js.map +1 -0
- package/dist/agents/hyde.generator.d.ts +27 -0
- package/dist/agents/hyde.generator.d.ts.map +1 -0
- package/dist/agents/hyde.generator.js +75 -0
- package/dist/agents/hyde.generator.js.map +1 -0
- package/dist/agents/hyde.strategies.d.ts +17 -0
- package/dist/agents/hyde.strategies.d.ts.map +1 -0
- package/dist/agents/hyde.strategies.js +29 -0
- package/dist/agents/hyde.strategies.js.map +1 -0
- package/dist/agents/intent.clarifier.d.ts +29 -0
- package/dist/agents/intent.clarifier.d.ts.map +1 -0
- package/dist/agents/intent.clarifier.js +186 -0
- package/dist/agents/intent.clarifier.js.map +1 -0
- package/dist/agents/intent.indexer.d.ts +77 -0
- package/dist/agents/intent.indexer.d.ts.map +1 -0
- package/dist/agents/intent.indexer.js +164 -0
- package/dist/agents/intent.indexer.js.map +1 -0
- package/dist/agents/intent.inferrer.d.ts +95 -0
- package/dist/agents/intent.inferrer.d.ts.map +1 -0
- package/dist/agents/intent.inferrer.js +238 -0
- package/dist/agents/intent.inferrer.js.map +1 -0
- package/dist/agents/intent.reconciler.d.ts +106 -0
- package/dist/agents/intent.reconciler.d.ts.map +1 -0
- package/dist/agents/intent.reconciler.js +184 -0
- package/dist/agents/intent.reconciler.js.map +1 -0
- package/dist/agents/intent.verifier.d.ts +97 -0
- package/dist/agents/intent.verifier.d.ts.map +1 -0
- package/dist/agents/intent.verifier.js +234 -0
- package/dist/agents/intent.verifier.js.map +1 -0
- package/dist/agents/invite.generator.d.ts +47 -0
- package/dist/agents/invite.generator.d.ts.map +1 -0
- package/dist/agents/invite.generator.js +56 -0
- package/dist/agents/invite.generator.js.map +1 -0
- package/dist/agents/lens.inferrer.d.ts +37 -0
- package/dist/agents/lens.inferrer.d.ts.map +1 -0
- package/dist/agents/lens.inferrer.js +98 -0
- package/dist/agents/lens.inferrer.js.map +1 -0
- package/dist/agents/model.config.d.ts +120 -0
- package/dist/agents/model.config.d.ts.map +1 -0
- package/dist/agents/model.config.js +76 -0
- package/dist/agents/model.config.js.map +1 -0
- package/dist/agents/negotiation.insights.generator.d.ts +32 -0
- package/dist/agents/negotiation.insights.generator.d.ts.map +1 -0
- package/dist/agents/negotiation.insights.generator.js +105 -0
- package/dist/agents/negotiation.insights.generator.js.map +1 -0
- package/dist/agents/negotiation.proposer.d.ts +26 -0
- package/dist/agents/negotiation.proposer.d.ts.map +1 -0
- package/dist/agents/negotiation.proposer.js +67 -0
- package/dist/agents/negotiation.proposer.js.map +1 -0
- package/dist/agents/negotiation.responder.d.ts +26 -0
- package/dist/agents/negotiation.responder.d.ts.map +1 -0
- package/dist/agents/negotiation.responder.js +71 -0
- package/dist/agents/negotiation.responder.js.map +1 -0
- package/dist/agents/opportunity.evaluator.d.ts +253 -0
- package/dist/agents/opportunity.evaluator.d.ts.map +1 -0
- package/dist/agents/opportunity.evaluator.js +413 -0
- package/dist/agents/opportunity.evaluator.js.map +1 -0
- package/dist/agents/opportunity.presenter.d.ts +115 -0
- package/dist/agents/opportunity.presenter.d.ts.map +1 -0
- package/dist/agents/opportunity.presenter.js +524 -0
- package/dist/agents/opportunity.presenter.js.map +1 -0
- package/dist/agents/profile.generator.d.ts +67 -0
- package/dist/agents/profile.generator.d.ts.map +1 -0
- package/dist/agents/profile.generator.js +97 -0
- package/dist/agents/profile.generator.js.map +1 -0
- package/dist/agents/profile.hyde.generator.d.ts +43 -0
- package/dist/agents/profile.hyde.generator.d.ts.map +1 -0
- package/dist/agents/profile.hyde.generator.js +113 -0
- package/dist/agents/profile.hyde.generator.js.map +1 -0
- package/dist/agents/suggestion.generator.d.ts +24 -0
- package/dist/agents/suggestion.generator.d.ts.map +1 -0
- package/dist/agents/suggestion.generator.js +96 -0
- package/dist/agents/suggestion.generator.js.map +1 -0
- package/dist/graphs/chat.graph.d.ts +312 -0
- package/dist/graphs/chat.graph.d.ts.map +1 -0
- package/dist/graphs/chat.graph.js +267 -0
- package/dist/graphs/chat.graph.js.map +1 -0
- package/dist/graphs/home.graph.d.ts +180 -0
- package/dist/graphs/home.graph.d.ts.map +1 -0
- package/dist/graphs/home.graph.js +598 -0
- package/dist/graphs/home.graph.js.map +1 -0
- package/dist/graphs/hyde.graph.d.ts +110 -0
- package/dist/graphs/hyde.graph.d.ts.map +1 -0
- package/dist/graphs/hyde.graph.js +235 -0
- package/dist/graphs/hyde.graph.js.map +1 -0
- package/dist/graphs/index.graph.d.ts +620 -0
- package/dist/graphs/index.graph.d.ts.map +1 -0
- package/dist/graphs/index.graph.js +226 -0
- package/dist/graphs/index.graph.js.map +1 -0
- package/dist/graphs/index_membership.graph.d.ts +250 -0
- package/dist/graphs/index_membership.graph.d.ts.map +1 -0
- package/dist/graphs/index_membership.graph.js +204 -0
- package/dist/graphs/index_membership.graph.js.map +1 -0
- package/dist/graphs/intent.graph.d.ts +490 -0
- package/dist/graphs/intent.graph.d.ts.map +1 -0
- package/dist/graphs/intent.graph.js +787 -0
- package/dist/graphs/intent.graph.js.map +1 -0
- package/dist/graphs/intent_index.graph.d.ts +396 -0
- package/dist/graphs/intent_index.graph.d.ts.map +1 -0
- package/dist/graphs/intent_index.graph.js +331 -0
- package/dist/graphs/intent_index.graph.js.map +1 -0
- package/dist/graphs/maintenance.graph.d.ts +177 -0
- package/dist/graphs/maintenance.graph.d.ts.map +1 -0
- package/dist/graphs/maintenance.graph.js +173 -0
- package/dist/graphs/maintenance.graph.js.map +1 -0
- package/dist/graphs/negotiation.graph.d.ts +819 -0
- package/dist/graphs/negotiation.graph.d.ts.map +1 -0
- package/dist/graphs/negotiation.graph.js +255 -0
- package/dist/graphs/negotiation.graph.js.map +1 -0
- package/dist/graphs/opportunity.graph.d.ts +1082 -0
- package/dist/graphs/opportunity.graph.d.ts.map +1 -0
- package/dist/graphs/opportunity.graph.js +2534 -0
- package/dist/graphs/opportunity.graph.js.map +1 -0
- package/dist/graphs/profile.graph.d.ts +617 -0
- package/dist/graphs/profile.graph.d.ts.map +1 -0
- package/dist/graphs/profile.graph.js +839 -0
- package/dist/graphs/profile.graph.js.map +1 -0
- package/dist/graphs/tests/chat.graph.mocks.d.ts +104 -0
- package/dist/graphs/tests/chat.graph.mocks.d.ts.map +1 -0
- package/dist/graphs/tests/chat.graph.mocks.js +225 -0
- package/dist/graphs/tests/chat.graph.mocks.js.map +1 -0
- package/dist/index.d.ts +62 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +44 -0
- package/dist/index.js.map +1 -0
- package/dist/interfaces/auth.interface.d.ts +15 -0
- package/dist/interfaces/auth.interface.d.ts.map +1 -0
- package/dist/interfaces/auth.interface.js +2 -0
- package/dist/interfaces/auth.interface.js.map +1 -0
- package/dist/interfaces/cache.interface.d.ts +43 -0
- package/dist/interfaces/cache.interface.d.ts.map +1 -0
- package/dist/interfaces/cache.interface.js +6 -0
- package/dist/interfaces/cache.interface.js.map +1 -0
- package/dist/interfaces/chat-session.interface.d.ts +11 -0
- package/dist/interfaces/chat-session.interface.d.ts.map +1 -0
- package/dist/interfaces/chat-session.interface.js +2 -0
- package/dist/interfaces/chat-session.interface.js.map +1 -0
- package/dist/interfaces/contact.interface.d.ts +48 -0
- package/dist/interfaces/contact.interface.d.ts.map +1 -0
- package/dist/interfaces/contact.interface.js +2 -0
- package/dist/interfaces/contact.interface.js.map +1 -0
- package/dist/interfaces/database.interface.d.ts +1495 -0
- package/dist/interfaces/database.interface.d.ts.map +1 -0
- package/dist/interfaces/database.interface.js +2 -0
- package/dist/interfaces/database.interface.js.map +1 -0
- package/dist/interfaces/embedder.interface.d.ts +85 -0
- package/dist/interfaces/embedder.interface.d.ts.map +1 -0
- package/dist/interfaces/embedder.interface.js +5 -0
- package/dist/interfaces/embedder.interface.js.map +1 -0
- package/dist/interfaces/enrichment.interface.d.ts +40 -0
- package/dist/interfaces/enrichment.interface.d.ts.map +1 -0
- package/dist/interfaces/enrichment.interface.js +2 -0
- package/dist/interfaces/enrichment.interface.js.map +1 -0
- package/dist/interfaces/integration.interface.d.ts +91 -0
- package/dist/interfaces/integration.interface.d.ts.map +1 -0
- package/dist/interfaces/integration.interface.js +2 -0
- package/dist/interfaces/integration.interface.js.map +1 -0
- package/dist/interfaces/queue.interface.d.ts +17 -0
- package/dist/interfaces/queue.interface.d.ts.map +1 -0
- package/dist/interfaces/queue.interface.js +5 -0
- package/dist/interfaces/queue.interface.js.map +1 -0
- package/dist/interfaces/scraper.interface.d.ts +31 -0
- package/dist/interfaces/scraper.interface.d.ts.map +1 -0
- package/dist/interfaces/scraper.interface.js +2 -0
- package/dist/interfaces/scraper.interface.js.map +1 -0
- package/dist/interfaces/storage.interface.d.ts +46 -0
- package/dist/interfaces/storage.interface.d.ts.map +1 -0
- package/dist/interfaces/storage.interface.js +6 -0
- package/dist/interfaces/storage.interface.js.map +1 -0
- package/dist/mcp/mcp.server.d.ts +29 -0
- package/dist/mcp/mcp.server.d.ts.map +1 -0
- package/dist/mcp/mcp.server.js +171 -0
- package/dist/mcp/mcp.server.js.map +1 -0
- package/dist/states/chat.state.d.ts +126 -0
- package/dist/states/chat.state.d.ts.map +1 -0
- package/dist/states/chat.state.js +112 -0
- package/dist/states/chat.state.js.map +1 -0
- package/dist/states/home.state.d.ts +100 -0
- package/dist/states/home.state.d.ts.map +1 -0
- package/dist/states/home.state.js +74 -0
- package/dist/states/home.state.js.map +1 -0
- package/dist/states/hyde.state.d.ts +54 -0
- package/dist/states/hyde.state.d.ts.map +1 -0
- package/dist/states/hyde.state.js +66 -0
- package/dist/states/hyde.state.js.map +1 -0
- package/dist/states/index.state.d.ts +179 -0
- package/dist/states/index.state.d.ts.map +1 -0
- package/dist/states/index.state.js +56 -0
- package/dist/states/index.state.js.map +1 -0
- package/dist/states/index_membership.state.d.ts +77 -0
- package/dist/states/index_membership.state.d.ts.map +1 -0
- package/dist/states/index_membership.state.js +43 -0
- package/dist/states/index_membership.state.js.map +1 -0
- package/dist/states/intent.state.d.ts +203 -0
- package/dist/states/intent.state.d.ts.map +1 -0
- package/dist/states/intent.state.js +153 -0
- package/dist/states/intent.state.js.map +1 -0
- package/dist/states/intent_index.state.d.ts +148 -0
- package/dist/states/intent_index.state.d.ts.map +1 -0
- package/dist/states/intent_index.state.js +100 -0
- package/dist/states/intent_index.state.js.map +1 -0
- package/dist/states/maintenance.state.d.ts +36 -0
- package/dist/states/maintenance.state.d.ts.map +1 -0
- package/dist/states/maintenance.state.js +56 -0
- package/dist/states/maintenance.state.js.map +1 -0
- package/dist/states/negotiation.state.d.ts +230 -0
- package/dist/states/negotiation.state.d.ts.map +1 -0
- package/dist/states/negotiation.state.js +82 -0
- package/dist/states/negotiation.state.js.map +1 -0
- package/dist/states/opportunity.state.d.ts +300 -0
- package/dist/states/opportunity.state.d.ts.map +1 -0
- package/dist/states/opportunity.state.js +207 -0
- package/dist/states/opportunity.state.js.map +1 -0
- package/dist/states/profile.state.d.ts +172 -0
- package/dist/states/profile.state.d.ts.map +1 -0
- package/dist/states/profile.state.js +133 -0
- package/dist/states/profile.state.js.map +1 -0
- package/dist/streamers/chat.streamer.d.ts +55 -0
- package/dist/streamers/chat.streamer.d.ts.map +1 -0
- package/dist/streamers/chat.streamer.js +186 -0
- package/dist/streamers/chat.streamer.js.map +1 -0
- package/dist/streamers/index.d.ts +3 -0
- package/dist/streamers/index.d.ts.map +1 -0
- package/dist/streamers/index.js +3 -0
- package/dist/streamers/index.js.map +1 -0
- package/dist/streamers/response.streamer.d.ts +36 -0
- package/dist/streamers/response.streamer.d.ts.map +1 -0
- package/dist/streamers/response.streamer.js +46 -0
- package/dist/streamers/response.streamer.js.map +1 -0
- package/dist/support/chat.utils.d.ts +42 -0
- package/dist/support/chat.utils.d.ts.map +1 -0
- package/dist/support/chat.utils.js +89 -0
- package/dist/support/chat.utils.js.map +1 -0
- package/dist/support/debug-meta.sanitizer.d.ts +18 -0
- package/dist/support/debug-meta.sanitizer.d.ts.map +1 -0
- package/dist/support/debug-meta.sanitizer.js +82 -0
- package/dist/support/debug-meta.sanitizer.js.map +1 -0
- package/dist/support/feed.health.d.ts +32 -0
- package/dist/support/feed.health.d.ts.map +1 -0
- package/dist/support/feed.health.js +76 -0
- package/dist/support/feed.health.js.map +1 -0
- package/dist/support/introducer.discovery.d.ts +78 -0
- package/dist/support/introducer.discovery.d.ts.map +1 -0
- package/dist/support/introducer.discovery.js +101 -0
- package/dist/support/introducer.discovery.js.map +1 -0
- package/dist/support/log.d.ts +65 -0
- package/dist/support/log.d.ts.map +1 -0
- package/dist/support/log.js +76 -0
- package/dist/support/log.js.map +1 -0
- package/dist/support/lucide.icon-catalog.d.ts +22 -0
- package/dist/support/lucide.icon-catalog.d.ts.map +1 -0
- package/dist/support/lucide.icon-catalog.js +101 -0
- package/dist/support/lucide.icon-catalog.js.map +1 -0
- package/dist/support/opportunity.card-text.d.ts +39 -0
- package/dist/support/opportunity.card-text.d.ts.map +1 -0
- package/dist/support/opportunity.card-text.js +333 -0
- package/dist/support/opportunity.card-text.js.map +1 -0
- package/dist/support/opportunity.constants.d.ts +9 -0
- package/dist/support/opportunity.constants.d.ts.map +1 -0
- package/dist/support/opportunity.constants.js +11 -0
- package/dist/support/opportunity.constants.js.map +1 -0
- package/dist/support/opportunity.discover.d.ts +144 -0
- package/dist/support/opportunity.discover.d.ts.map +1 -0
- package/dist/support/opportunity.discover.js +610 -0
- package/dist/support/opportunity.discover.js.map +1 -0
- package/dist/support/opportunity.enricher.d.ts +44 -0
- package/dist/support/opportunity.enricher.d.ts.map +1 -0
- package/dist/support/opportunity.enricher.js +245 -0
- package/dist/support/opportunity.enricher.js.map +1 -0
- package/dist/support/opportunity.persist.d.ts +39 -0
- package/dist/support/opportunity.persist.d.ts.map +1 -0
- package/dist/support/opportunity.persist.js +63 -0
- package/dist/support/opportunity.persist.js.map +1 -0
- package/dist/support/opportunity.presentation.d.ts +21 -0
- package/dist/support/opportunity.presentation.d.ts.map +1 -0
- package/dist/support/opportunity.presentation.js +75 -0
- package/dist/support/opportunity.presentation.js.map +1 -0
- package/dist/support/opportunity.sanitize.d.ts +18 -0
- package/dist/support/opportunity.sanitize.d.ts.map +1 -0
- package/dist/support/opportunity.sanitize.js +89 -0
- package/dist/support/opportunity.sanitize.js.map +1 -0
- package/dist/support/opportunity.utils.d.ts +99 -0
- package/dist/support/opportunity.utils.d.ts.map +1 -0
- package/dist/support/opportunity.utils.js +184 -0
- package/dist/support/opportunity.utils.js.map +1 -0
- package/dist/support/performance.d.ts +19 -0
- package/dist/support/performance.d.ts.map +1 -0
- package/dist/support/performance.js +43 -0
- package/dist/support/performance.js.map +1 -0
- package/dist/support/profile.enrichment-display-name.d.ts +16 -0
- package/dist/support/profile.enrichment-display-name.d.ts.map +1 -0
- package/dist/support/profile.enrichment-display-name.js +22 -0
- package/dist/support/profile.enrichment-display-name.js.map +1 -0
- package/dist/support/protocol.logger.d.ts +22 -0
- package/dist/support/protocol.logger.d.ts.map +1 -0
- package/dist/support/protocol.logger.js +44 -0
- package/dist/support/protocol.logger.js.map +1 -0
- package/dist/support/request-context.d.ts +19 -0
- package/dist/support/request-context.d.ts.map +1 -0
- package/dist/support/request-context.js +7 -0
- package/dist/support/request-context.js.map +1 -0
- package/dist/tools/contact.tools.d.ts +7 -0
- package/dist/tools/contact.tools.d.ts.map +1 -0
- package/dist/tools/contact.tools.js +115 -0
- package/dist/tools/contact.tools.js.map +1 -0
- package/dist/tools/index.d.ts +17 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +140 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/index.tools.d.ts +3 -0
- package/dist/tools/index.tools.d.ts.map +1 -0
- package/dist/tools/index.tools.js +423 -0
- package/dist/tools/index.tools.js.map +1 -0
- package/dist/tools/integration.tools.d.ts +13 -0
- package/dist/tools/integration.tools.d.ts.map +1 -0
- package/dist/tools/integration.tools.js +77 -0
- package/dist/tools/integration.tools.js.map +1 -0
- package/dist/tools/intent.tools.d.ts +3 -0
- package/dist/tools/intent.tools.d.ts.map +1 -0
- package/dist/tools/intent.tools.js +458 -0
- package/dist/tools/intent.tools.js.map +1 -0
- package/dist/tools/opportunity.tools.d.ts +44 -0
- package/dist/tools/opportunity.tools.d.ts.map +1 -0
- package/dist/tools/opportunity.tools.js +814 -0
- package/dist/tools/opportunity.tools.js.map +1 -0
- package/dist/tools/profile.tools.d.ts +3 -0
- package/dist/tools/profile.tools.d.ts.map +1 -0
- package/dist/tools/profile.tools.js +513 -0
- package/dist/tools/profile.tools.js.map +1 -0
- package/dist/tools/tool.helpers.d.ts +225 -0
- package/dist/tools/tool.helpers.d.ts.map +1 -0
- package/dist/tools/tool.helpers.js +172 -0
- package/dist/tools/tool.helpers.js.map +1 -0
- package/dist/tools/tool.registry.d.ts +12 -0
- package/dist/tools/tool.registry.d.ts.map +1 -0
- package/dist/tools/tool.registry.js +62 -0
- package/dist/tools/tool.registry.js.map +1 -0
- package/dist/tools/utility.tools.d.ts +3 -0
- package/dist/tools/utility.tools.d.ts.map +1 -0
- package/dist/tools/utility.tools.js +107 -0
- package/dist/tools/utility.tools.js.map +1 -0
- package/dist/types/chat-streaming.types.d.ts +472 -0
- package/dist/types/chat-streaming.types.d.ts.map +1 -0
- package/dist/types/chat-streaming.types.js +260 -0
- package/dist/types/chat-streaming.types.js.map +1 -0
- package/package.json +32 -0
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
import { createModel } from "./model.config.js";
|
|
2
|
+
import { NegotiationTurnSchema } from "../states/negotiation.state.js";
|
|
3
|
+
const SYSTEM_PROMPT = `You are a negotiation agent representing your user in an opportunity matching system.
|
|
4
|
+
Your role is to EVALUATE proposals and PROTECT your user from poor matches.
|
|
5
|
+
|
|
6
|
+
You will receive:
|
|
7
|
+
- Your user's profile, intents, and context
|
|
8
|
+
- The other user's profile, intents, and context
|
|
9
|
+
- The proposal or counter-proposal from the other agent
|
|
10
|
+
- Full negotiation history
|
|
11
|
+
|
|
12
|
+
Your job:
|
|
13
|
+
1. Critically evaluate whether this match genuinely serves YOUR user's intents.
|
|
14
|
+
2. Respond with one of:
|
|
15
|
+
- "accept" — the match is genuinely valuable for your user. Both sides benefit.
|
|
16
|
+
- "reject" — the match does not serve your user's needs. Explain clearly why.
|
|
17
|
+
- "counter" — partially convinced but have specific objections. State what's missing or weak.
|
|
18
|
+
|
|
19
|
+
Rules:
|
|
20
|
+
- Be skeptical. Your job is to protect your user from noise.
|
|
21
|
+
- Don't accept just because the other agent is enthusiastic.
|
|
22
|
+
- Look for concrete intent alignment, not vague overlap.
|
|
23
|
+
- If the other agent addressed your previous objections well, acknowledge it.
|
|
24
|
+
- If their counter didn't address your concerns, reject.
|
|
25
|
+
- Your fitScore should reflect YOUR independent assessment.
|
|
26
|
+
- suggestedRoles: "agent" = can help, "patient" = seeks help, "peer" = mutual benefit.`;
|
|
27
|
+
/**
|
|
28
|
+
* Negotiation agent that evaluates proposals against its user's interests.
|
|
29
|
+
* @remarks Uses structured output to produce a NegotiationTurn.
|
|
30
|
+
*/
|
|
31
|
+
export class NegotiationResponder {
|
|
32
|
+
constructor() {
|
|
33
|
+
this.model = createModel("negotiationResponder").withStructuredOutput(NegotiationTurnSchema, { name: "negotiation_responder" });
|
|
34
|
+
}
|
|
35
|
+
/**
|
|
36
|
+
* Evaluate a proposal/counter and respond.
|
|
37
|
+
* @param input - User contexts, seed assessment, and negotiation history
|
|
38
|
+
* @returns A structured NegotiationTurn (accept/reject/counter)
|
|
39
|
+
*/
|
|
40
|
+
async invoke(input) {
|
|
41
|
+
const historyText = input.history
|
|
42
|
+
.map((t, i) => `Turn ${i + 1}: ${t.action} — fitScore: ${t.assessment.fitScore}, reasoning: ${t.assessment.reasoning}`)
|
|
43
|
+
.join("\n");
|
|
44
|
+
const userMessage = `YOUR USER:
|
|
45
|
+
Name: ${input.ownUser.profile.name ?? "Unknown"}
|
|
46
|
+
Bio: ${input.ownUser.profile.bio ?? "N/A"}
|
|
47
|
+
Skills: ${input.ownUser.profile.skills?.join(", ") ?? "N/A"}
|
|
48
|
+
Intents: ${input.ownUser.intents.map((i) => `- ${i.title}: ${i.description} (confidence: ${i.confidence})`).join("\n")}
|
|
49
|
+
|
|
50
|
+
OTHER USER (proposing the match):
|
|
51
|
+
Name: ${input.otherUser.profile.name ?? "Unknown"}
|
|
52
|
+
Bio: ${input.otherUser.profile.bio ?? "N/A"}
|
|
53
|
+
Skills: ${input.otherUser.profile.skills?.join(", ") ?? "N/A"}
|
|
54
|
+
Intents: ${input.otherUser.intents.map((i) => `- ${i.title}: ${i.description} (confidence: ${i.confidence})`).join("\n")}
|
|
55
|
+
|
|
56
|
+
INDEX CONTEXT: ${input.indexContext.prompt || "General discovery"}
|
|
57
|
+
|
|
58
|
+
EVALUATOR PRE-SCREEN: Score ${input.seedAssessment.score}/100 — ${input.seedAssessment.reasoning}
|
|
59
|
+
|
|
60
|
+
NEGOTIATION HISTORY:
|
|
61
|
+
${historyText}
|
|
62
|
+
|
|
63
|
+
Evaluate the latest proposal/counter from the other agent. Does this match genuinely serve your user?`;
|
|
64
|
+
const result = await this.model.invoke([
|
|
65
|
+
{ role: "system", content: SYSTEM_PROMPT },
|
|
66
|
+
{ role: "user", content: userMessage },
|
|
67
|
+
]);
|
|
68
|
+
return result;
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
//# sourceMappingURL=negotiation.responder.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"negotiation.responder.js","sourceRoot":"","sources":["../../src/agents/negotiation.responder.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,mBAAmB,CAAC;AAChD,OAAO,EAAE,qBAAqB,EAA0E,MAAM,gCAAgC,CAAC;AAE/I,MAAM,aAAa,GAAG;;;;;;;;;;;;;;;;;;;;;;;uFAuBiE,CAAC;AAUxF;;;GAGG;AACH,MAAM,OAAO,oBAAoB;IAG/B;QACE,IAAI,CAAC,KAAK,GAAG,WAAW,CAAC,sBAAsB,CAAC,CAAC,oBAAoB,CACnE,qBAAqB,EACrB,EAAE,IAAI,EAAE,uBAAuB,EAAE,CAClC,CAAC;IACJ,CAAC;IAED;;;;OAIG;IACH,KAAK,CAAC,MAAM,CAAC,KAAgC;QAC3C,MAAM,WAAW,GAAG,KAAK,CAAC,OAAO;aAC9B,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,QAAQ,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,MAAM,gBAAgB,CAAC,CAAC,UAAU,CAAC,QAAQ,gBAAgB,CAAC,CAAC,UAAU,CAAC,SAAS,EAAE,CAAC;aACtH,IAAI,CAAC,IAAI,CAAC,CAAC;QAEd,MAAM,WAAW,GAAG;QAChB,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS;OACxC,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK;UAC/B,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK;WAChD,KAAK,CAAC,OAAO,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,WAAW,iBAAiB,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;;QAG9G,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,IAAI,IAAI,SAAS;OAC1C,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,IAAI,KAAK;UACjC,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,MAAM,EAAE,IAAI,CAAC,IAAI,CAAC,IAAI,KAAK;WAClD,KAAK,CAAC,SAAS,CAAC,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,KAAK,CAAC,CAAC,KAAK,KAAK,CAAC,CAAC,WAAW,iBAAiB,CAAC,CAAC,UAAU,GAAG,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC;;iBAEvG,KAAK,CAAC,YAAY,CAAC,MAAM,IAAI,mBAAmB;;8BAEnC,KAAK,CAAC,cAAc,CAAC,KAAK,UAAU,KAAK,CAAC,cAAc,CAAC,SAAS;;;EAG9F,WAAW;;sGAEyF,CAAC;QAEnG,MAAM,MAAM,GAAG,MAAM,IAAI,CAAC,KAAK,CAAC,MAAM,CAAC;YACrC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,aAAa,EAAE;YAC1C,EAAE,IAAI,EAAE,MAAM,EAAE,OAAO,EAAE,WAAW,EAAE;SACvC,CAAC,CAAC;QAEH,OAAO,MAAM,CAAC;IAChB,CAAC;CACF"}
|
|
@@ -0,0 +1,253 @@
|
|
|
1
|
+
import type { Runnable } from "@langchain/core/runnables";
|
|
2
|
+
import { z } from "zod";
|
|
3
|
+
import type { Lens } from "./lens.inferrer.js";
|
|
4
|
+
import type { OpportunityStatus } from "../interfaces/database.interface.js";
|
|
5
|
+
declare const OpportunitySchema: z.ZodObject<{
|
|
6
|
+
reasoning: z.ZodString;
|
|
7
|
+
score: z.ZodNumber;
|
|
8
|
+
valencyRole: z.ZodEnum<["Agent", "Patient", "Peer"]>;
|
|
9
|
+
sourceId: z.ZodString;
|
|
10
|
+
candidateId: z.ZodString;
|
|
11
|
+
}, "strip", z.ZodTypeAny, {
|
|
12
|
+
reasoning: string;
|
|
13
|
+
sourceId: string;
|
|
14
|
+
score: number;
|
|
15
|
+
valencyRole: "Agent" | "Patient" | "Peer";
|
|
16
|
+
candidateId: string;
|
|
17
|
+
}, {
|
|
18
|
+
reasoning: string;
|
|
19
|
+
sourceId: string;
|
|
20
|
+
score: number;
|
|
21
|
+
valencyRole: "Agent" | "Patient" | "Peer";
|
|
22
|
+
candidateId: string;
|
|
23
|
+
}>;
|
|
24
|
+
export interface EvaluatorEntity {
|
|
25
|
+
userId: string;
|
|
26
|
+
profile: {
|
|
27
|
+
name?: string;
|
|
28
|
+
bio?: string;
|
|
29
|
+
location?: string;
|
|
30
|
+
interests?: string[];
|
|
31
|
+
skills?: string[];
|
|
32
|
+
context?: string;
|
|
33
|
+
};
|
|
34
|
+
intents?: Array<{
|
|
35
|
+
intentId: string;
|
|
36
|
+
payload: string;
|
|
37
|
+
summary?: string;
|
|
38
|
+
}>;
|
|
39
|
+
indexId: string;
|
|
40
|
+
ragScore?: number;
|
|
41
|
+
matchedVia?: string;
|
|
42
|
+
}
|
|
43
|
+
export interface EvaluatorInput {
|
|
44
|
+
/** The user who triggered discovery (for context, not special treatment). */
|
|
45
|
+
discovererId: string;
|
|
46
|
+
/** All relevant entities. In introduction mode, only the people being introduced (no introducer). */
|
|
47
|
+
entities: EvaluatorEntity[];
|
|
48
|
+
/** Existing opportunities for deduplication. */
|
|
49
|
+
existingOpportunities?: string;
|
|
50
|
+
/** When true, DISCOVERER is the introducer; reasoning and actors must be only among ENTITIES. */
|
|
51
|
+
introductionMode?: boolean;
|
|
52
|
+
/** Name of the introducer (for attribution in reasoning when introductionMode is true). */
|
|
53
|
+
introducerName?: string;
|
|
54
|
+
/** Optional hint/context from the introducer about why these people should meet. */
|
|
55
|
+
introductionHint?: string;
|
|
56
|
+
/** Optional discovery query (e.g. from chat). When set, only suggest opportunities where candidates clearly match this request. */
|
|
57
|
+
discoveryQuery?: string;
|
|
58
|
+
}
|
|
59
|
+
declare const ActorSchema: z.ZodObject<{
|
|
60
|
+
userId: z.ZodString;
|
|
61
|
+
role: z.ZodEnum<["agent", "patient", "peer"]>;
|
|
62
|
+
intentId: z.ZodNullable<z.ZodString>;
|
|
63
|
+
}, "strip", z.ZodTypeAny, {
|
|
64
|
+
userId: string;
|
|
65
|
+
intentId: string | null;
|
|
66
|
+
role: "agent" | "patient" | "peer";
|
|
67
|
+
}, {
|
|
68
|
+
userId: string;
|
|
69
|
+
intentId: string | null;
|
|
70
|
+
role: "agent" | "patient" | "peer";
|
|
71
|
+
}>;
|
|
72
|
+
declare const OpportunityWithActorsSchema: z.ZodObject<{
|
|
73
|
+
reasoning: z.ZodString;
|
|
74
|
+
score: z.ZodNumber;
|
|
75
|
+
actors: z.ZodArray<z.ZodObject<{
|
|
76
|
+
userId: z.ZodString;
|
|
77
|
+
role: z.ZodEnum<["agent", "patient", "peer"]>;
|
|
78
|
+
intentId: z.ZodNullable<z.ZodString>;
|
|
79
|
+
}, "strip", z.ZodTypeAny, {
|
|
80
|
+
userId: string;
|
|
81
|
+
intentId: string | null;
|
|
82
|
+
role: "agent" | "patient" | "peer";
|
|
83
|
+
}, {
|
|
84
|
+
userId: string;
|
|
85
|
+
intentId: string | null;
|
|
86
|
+
role: "agent" | "patient" | "peer";
|
|
87
|
+
}>, "many">;
|
|
88
|
+
}, "strip", z.ZodTypeAny, {
|
|
89
|
+
reasoning: string;
|
|
90
|
+
score: number;
|
|
91
|
+
actors: {
|
|
92
|
+
userId: string;
|
|
93
|
+
intentId: string | null;
|
|
94
|
+
role: "agent" | "patient" | "peer";
|
|
95
|
+
}[];
|
|
96
|
+
}, {
|
|
97
|
+
reasoning: string;
|
|
98
|
+
score: number;
|
|
99
|
+
actors: {
|
|
100
|
+
userId: string;
|
|
101
|
+
intentId: string | null;
|
|
102
|
+
role: "agent" | "patient" | "peer";
|
|
103
|
+
}[];
|
|
104
|
+
}>;
|
|
105
|
+
declare const entityBundleResponseFormat: z.ZodObject<{
|
|
106
|
+
opportunities: z.ZodArray<z.ZodObject<{
|
|
107
|
+
reasoning: z.ZodString;
|
|
108
|
+
score: z.ZodNumber;
|
|
109
|
+
actors: z.ZodArray<z.ZodObject<{
|
|
110
|
+
userId: z.ZodString;
|
|
111
|
+
role: z.ZodEnum<["agent", "patient", "peer"]>;
|
|
112
|
+
intentId: z.ZodNullable<z.ZodString>;
|
|
113
|
+
}, "strip", z.ZodTypeAny, {
|
|
114
|
+
userId: string;
|
|
115
|
+
intentId: string | null;
|
|
116
|
+
role: "agent" | "patient" | "peer";
|
|
117
|
+
}, {
|
|
118
|
+
userId: string;
|
|
119
|
+
intentId: string | null;
|
|
120
|
+
role: "agent" | "patient" | "peer";
|
|
121
|
+
}>, "many">;
|
|
122
|
+
}, "strip", z.ZodTypeAny, {
|
|
123
|
+
reasoning: string;
|
|
124
|
+
score: number;
|
|
125
|
+
actors: {
|
|
126
|
+
userId: string;
|
|
127
|
+
intentId: string | null;
|
|
128
|
+
role: "agent" | "patient" | "peer";
|
|
129
|
+
}[];
|
|
130
|
+
}, {
|
|
131
|
+
reasoning: string;
|
|
132
|
+
score: number;
|
|
133
|
+
actors: {
|
|
134
|
+
userId: string;
|
|
135
|
+
intentId: string | null;
|
|
136
|
+
role: "agent" | "patient" | "peer";
|
|
137
|
+
}[];
|
|
138
|
+
}>, "many">;
|
|
139
|
+
}, "strip", z.ZodTypeAny, {
|
|
140
|
+
opportunities: {
|
|
141
|
+
reasoning: string;
|
|
142
|
+
score: number;
|
|
143
|
+
actors: {
|
|
144
|
+
userId: string;
|
|
145
|
+
intentId: string | null;
|
|
146
|
+
role: "agent" | "patient" | "peer";
|
|
147
|
+
}[];
|
|
148
|
+
}[];
|
|
149
|
+
}, {
|
|
150
|
+
opportunities: {
|
|
151
|
+
reasoning: string;
|
|
152
|
+
score: number;
|
|
153
|
+
actors: {
|
|
154
|
+
userId: string;
|
|
155
|
+
intentId: string | null;
|
|
156
|
+
role: "agent" | "patient" | "peer";
|
|
157
|
+
}[];
|
|
158
|
+
}[];
|
|
159
|
+
}>;
|
|
160
|
+
export type EvaluatorActor = z.infer<typeof ActorSchema>;
|
|
161
|
+
export type EvaluatedOpportunityWithActors = z.infer<typeof OpportunityWithActorsSchema>;
|
|
162
|
+
export type EvaluatorOutputBundle = z.infer<typeof entityBundleResponseFormat>;
|
|
163
|
+
type Opportunity = z.infer<typeof OpportunitySchema>;
|
|
164
|
+
export interface CandidateProfile {
|
|
165
|
+
userId: string;
|
|
166
|
+
identity?: {
|
|
167
|
+
name?: string;
|
|
168
|
+
bio?: string;
|
|
169
|
+
location?: string;
|
|
170
|
+
};
|
|
171
|
+
attributes?: {
|
|
172
|
+
interests?: string[];
|
|
173
|
+
skills?: string[];
|
|
174
|
+
};
|
|
175
|
+
narrative?: {
|
|
176
|
+
context?: string;
|
|
177
|
+
};
|
|
178
|
+
score?: number;
|
|
179
|
+
}
|
|
180
|
+
interface OpportunityEvaluatorOptions {
|
|
181
|
+
minScore?: number;
|
|
182
|
+
limit?: number;
|
|
183
|
+
hydeDescription?: string;
|
|
184
|
+
/** Pre-inferred lenses (if not provided, lens inference runs automatically in HyDE graph). */
|
|
185
|
+
lenses?: Lens[];
|
|
186
|
+
existingOpportunities?: string;
|
|
187
|
+
candidates?: CandidateProfile[];
|
|
188
|
+
filter?: Record<string, unknown>;
|
|
189
|
+
initialStatus?: OpportunityStatus;
|
|
190
|
+
}
|
|
191
|
+
/** Optional test double for entity-bundle model (avoids live LLM in unit tests). */
|
|
192
|
+
export type OpportunityEvaluatorOptionsConstructor = {
|
|
193
|
+
entityBundleModel?: Runnable;
|
|
194
|
+
};
|
|
195
|
+
export declare class OpportunityEvaluator {
|
|
196
|
+
private model;
|
|
197
|
+
private entityBundleModel;
|
|
198
|
+
constructor(options?: OpportunityEvaluatorOptionsConstructor);
|
|
199
|
+
/**
|
|
200
|
+
* Main Entry Point: Batch analysis of candidates.
|
|
201
|
+
*
|
|
202
|
+
* @param sourceProfileContext - The profile context string of the user we are finding opportunities FOR.
|
|
203
|
+
* @param candidates - List of potential matches to evaluate.
|
|
204
|
+
* @param options - Config (minScore, valid types, etc).
|
|
205
|
+
* @returns A sorted list of high-value `Opportunity` objects.
|
|
206
|
+
*/
|
|
207
|
+
invoke(sourceProfileContext: string, candidates: CandidateProfile[], options: OpportunityEvaluatorOptions): Promise<Opportunity[]>;
|
|
208
|
+
/**
|
|
209
|
+
* Analyze a single match pair using the primary Agent model.
|
|
210
|
+
*/
|
|
211
|
+
private analyzeMatch;
|
|
212
|
+
/**
|
|
213
|
+
* Entity-bundle entry point (C3): single LLM call with all entities, returns 0..N opportunities with actors.
|
|
214
|
+
*/
|
|
215
|
+
invokeEntityBundle(input: EvaluatorInput, options?: {
|
|
216
|
+
minScore?: number;
|
|
217
|
+
returnAll?: boolean;
|
|
218
|
+
}): Promise<EvaluatedOpportunityWithActors[]>;
|
|
219
|
+
/**
|
|
220
|
+
* Factory method to expose the agent as a LangChain tool.
|
|
221
|
+
* Simplified to only accept direct evaluation arguments.
|
|
222
|
+
* PURE: Does not perform any database lookups.
|
|
223
|
+
*/
|
|
224
|
+
static asTool(): import("@langchain/core/tools").DynamicStructuredTool<z.ZodObject<{
|
|
225
|
+
sourceProfileContext: z.ZodString;
|
|
226
|
+
candidatesJson: z.ZodOptional<z.ZodString>;
|
|
227
|
+
minScore: z.ZodOptional<z.ZodNumber>;
|
|
228
|
+
}, "strip", z.ZodTypeAny, {
|
|
229
|
+
sourceProfileContext: string;
|
|
230
|
+
minScore?: number | undefined;
|
|
231
|
+
candidatesJson?: string | undefined;
|
|
232
|
+
}, {
|
|
233
|
+
sourceProfileContext: string;
|
|
234
|
+
minScore?: number | undefined;
|
|
235
|
+
candidatesJson?: string | undefined;
|
|
236
|
+
}>, {
|
|
237
|
+
sourceProfileContext: string;
|
|
238
|
+
minScore?: number | undefined;
|
|
239
|
+
candidatesJson?: string | undefined;
|
|
240
|
+
}, {
|
|
241
|
+
sourceProfileContext: string;
|
|
242
|
+
minScore?: number | undefined;
|
|
243
|
+
candidatesJson?: string | undefined;
|
|
244
|
+
}, {
|
|
245
|
+
reasoning: string;
|
|
246
|
+
sourceId: string;
|
|
247
|
+
score: number;
|
|
248
|
+
valencyRole: "Agent" | "Patient" | "Peer";
|
|
249
|
+
candidateId: string;
|
|
250
|
+
}[], unknown, "opportunity_evaluator">;
|
|
251
|
+
}
|
|
252
|
+
export {};
|
|
253
|
+
//# sourceMappingURL=opportunity.evaluator.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"opportunity.evaluator.d.ts","sourceRoot":"","sources":["../../src/agents/opportunity.evaluator.ts"],"names":[],"mappings":"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"}
|