@gzoo/cortex 0.5.9
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/CHANGELOG.md +21 -0
- package/CLAUDE.md +180 -0
- package/CONTRIBUTING.md +52 -0
- package/LICENSE +21 -0
- package/README.md +259 -0
- package/dist/cortex-mcp.mjs +3153 -0
- package/dist/cortex.mjs +8213 -0
- package/icon.png +0 -0
- package/logo.png +0 -0
- package/package.json +86 -0
- package/packages/cli/dist/commands/config.d.ts +4 -0
- package/packages/cli/dist/commands/config.d.ts.map +1 -0
- package/packages/cli/dist/commands/config.js +419 -0
- package/packages/cli/dist/commands/config.js.map +1 -0
- package/packages/cli/dist/commands/contradictions.d.ts +3 -0
- package/packages/cli/dist/commands/contradictions.d.ts.map +1 -0
- package/packages/cli/dist/commands/contradictions.js +74 -0
- package/packages/cli/dist/commands/contradictions.js.map +1 -0
- package/packages/cli/dist/commands/costs.d.ts +3 -0
- package/packages/cli/dist/commands/costs.d.ts.map +1 -0
- package/packages/cli/dist/commands/costs.js +168 -0
- package/packages/cli/dist/commands/costs.js.map +1 -0
- package/packages/cli/dist/commands/db.d.ts +3 -0
- package/packages/cli/dist/commands/db.d.ts.map +1 -0
- package/packages/cli/dist/commands/db.js +139 -0
- package/packages/cli/dist/commands/db.js.map +1 -0
- package/packages/cli/dist/commands/find.d.ts +3 -0
- package/packages/cli/dist/commands/find.d.ts.map +1 -0
- package/packages/cli/dist/commands/find.js +139 -0
- package/packages/cli/dist/commands/find.js.map +1 -0
- package/packages/cli/dist/commands/ingest.d.ts +3 -0
- package/packages/cli/dist/commands/ingest.d.ts.map +1 -0
- package/packages/cli/dist/commands/ingest.js +179 -0
- package/packages/cli/dist/commands/ingest.js.map +1 -0
- package/packages/cli/dist/commands/init.d.ts +3 -0
- package/packages/cli/dist/commands/init.d.ts.map +1 -0
- package/packages/cli/dist/commands/init.js +285 -0
- package/packages/cli/dist/commands/init.js.map +1 -0
- package/packages/cli/dist/commands/mcp.d.ts +3 -0
- package/packages/cli/dist/commands/mcp.d.ts.map +1 -0
- package/packages/cli/dist/commands/mcp.js +65 -0
- package/packages/cli/dist/commands/mcp.js.map +1 -0
- package/packages/cli/dist/commands/models.d.ts +3 -0
- package/packages/cli/dist/commands/models.d.ts.map +1 -0
- package/packages/cli/dist/commands/models.js +245 -0
- package/packages/cli/dist/commands/models.js.map +1 -0
- package/packages/cli/dist/commands/privacy.d.ts +3 -0
- package/packages/cli/dist/commands/privacy.d.ts.map +1 -0
- package/packages/cli/dist/commands/privacy.js +140 -0
- package/packages/cli/dist/commands/privacy.js.map +1 -0
- package/packages/cli/dist/commands/projects.d.ts +3 -0
- package/packages/cli/dist/commands/projects.d.ts.map +1 -0
- package/packages/cli/dist/commands/projects.js +142 -0
- package/packages/cli/dist/commands/projects.js.map +1 -0
- package/packages/cli/dist/commands/query.d.ts +3 -0
- package/packages/cli/dist/commands/query.d.ts.map +1 -0
- package/packages/cli/dist/commands/query.js +153 -0
- package/packages/cli/dist/commands/query.js.map +1 -0
- package/packages/cli/dist/commands/report.d.ts +3 -0
- package/packages/cli/dist/commands/report.d.ts.map +1 -0
- package/packages/cli/dist/commands/report.js +144 -0
- package/packages/cli/dist/commands/report.js.map +1 -0
- package/packages/cli/dist/commands/resolve.d.ts +3 -0
- package/packages/cli/dist/commands/resolve.d.ts.map +1 -0
- package/packages/cli/dist/commands/resolve.js +119 -0
- package/packages/cli/dist/commands/resolve.js.map +1 -0
- package/packages/cli/dist/commands/serve.d.ts +3 -0
- package/packages/cli/dist/commands/serve.d.ts.map +1 -0
- package/packages/cli/dist/commands/serve.js +108 -0
- package/packages/cli/dist/commands/serve.js.map +1 -0
- package/packages/cli/dist/commands/status.d.ts +3 -0
- package/packages/cli/dist/commands/status.d.ts.map +1 -0
- package/packages/cli/dist/commands/status.js +230 -0
- package/packages/cli/dist/commands/status.js.map +1 -0
- package/packages/cli/dist/commands/stop.d.ts +5 -0
- package/packages/cli/dist/commands/stop.d.ts.map +1 -0
- package/packages/cli/dist/commands/stop.js +80 -0
- package/packages/cli/dist/commands/stop.js.map +1 -0
- package/packages/cli/dist/commands/watch.d.ts +3 -0
- package/packages/cli/dist/commands/watch.d.ts.map +1 -0
- package/packages/cli/dist/commands/watch.js +235 -0
- package/packages/cli/dist/commands/watch.js.map +1 -0
- package/packages/cli/dist/index.d.ts +9 -0
- package/packages/cli/dist/index.d.ts.map +1 -0
- package/packages/cli/dist/index.js +68 -0
- package/packages/cli/dist/index.js.map +1 -0
- package/packages/cli/package.json +37 -0
- package/packages/cli/tsconfig.json +16 -0
- package/packages/core/dist/config/loader.d.ts +11 -0
- package/packages/core/dist/config/loader.d.ts.map +1 -0
- package/packages/core/dist/config/loader.js +133 -0
- package/packages/core/dist/config/loader.js.map +1 -0
- package/packages/core/dist/config/project-registry.d.ts +71 -0
- package/packages/core/dist/config/project-registry.d.ts.map +1 -0
- package/packages/core/dist/config/project-registry.js +89 -0
- package/packages/core/dist/config/project-registry.js.map +1 -0
- package/packages/core/dist/config/schema.d.ts +909 -0
- package/packages/core/dist/config/schema.d.ts.map +1 -0
- package/packages/core/dist/config/schema.js +125 -0
- package/packages/core/dist/config/schema.js.map +1 -0
- package/packages/core/dist/errors/cortex-error.d.ts +58 -0
- package/packages/core/dist/errors/cortex-error.d.ts.map +1 -0
- package/packages/core/dist/errors/cortex-error.js +68 -0
- package/packages/core/dist/errors/cortex-error.js.map +1 -0
- package/packages/core/dist/events/event-bus.d.ts +10 -0
- package/packages/core/dist/events/event-bus.d.ts.map +1 -0
- package/packages/core/dist/events/event-bus.js +42 -0
- package/packages/core/dist/events/event-bus.js.map +1 -0
- package/packages/core/dist/index.d.ts +8 -0
- package/packages/core/dist/index.d.ts.map +1 -0
- package/packages/core/dist/index.js +22 -0
- package/packages/core/dist/index.js.map +1 -0
- package/packages/core/dist/logger.d.ts +16 -0
- package/packages/core/dist/logger.d.ts.map +1 -0
- package/packages/core/dist/logger.js +57 -0
- package/packages/core/dist/logger.js.map +1 -0
- package/packages/core/dist/types/config.d.ts +107 -0
- package/packages/core/dist/types/config.d.ts.map +1 -0
- package/packages/core/dist/types/config.js +2 -0
- package/packages/core/dist/types/config.js.map +1 -0
- package/packages/core/dist/types/entity.d.ts +35 -0
- package/packages/core/dist/types/entity.d.ts.map +1 -0
- package/packages/core/dist/types/entity.js +2 -0
- package/packages/core/dist/types/entity.js.map +1 -0
- package/packages/core/dist/types/events.d.ts +76 -0
- package/packages/core/dist/types/events.d.ts.map +1 -0
- package/packages/core/dist/types/events.js +2 -0
- package/packages/core/dist/types/events.js.map +1 -0
- package/packages/core/dist/types/file.d.ts +15 -0
- package/packages/core/dist/types/file.d.ts.map +1 -0
- package/packages/core/dist/types/file.js +2 -0
- package/packages/core/dist/types/file.js.map +1 -0
- package/packages/core/dist/types/graph.d.ts +93 -0
- package/packages/core/dist/types/graph.d.ts.map +1 -0
- package/packages/core/dist/types/graph.js +2 -0
- package/packages/core/dist/types/graph.js.map +1 -0
- package/packages/core/dist/types/index.d.ts +10 -0
- package/packages/core/dist/types/index.d.ts.map +1 -0
- package/packages/core/dist/types/index.js +2 -0
- package/packages/core/dist/types/index.js.map +1 -0
- package/packages/core/dist/types/llm.d.ts +95 -0
- package/packages/core/dist/types/llm.d.ts.map +1 -0
- package/packages/core/dist/types/llm.js +10 -0
- package/packages/core/dist/types/llm.js.map +1 -0
- package/packages/core/dist/types/project.d.ts +11 -0
- package/packages/core/dist/types/project.d.ts.map +1 -0
- package/packages/core/dist/types/project.js +2 -0
- package/packages/core/dist/types/project.js.map +1 -0
- package/packages/core/dist/types/relationship.d.ts +26 -0
- package/packages/core/dist/types/relationship.d.ts.map +1 -0
- package/packages/core/dist/types/relationship.js +2 -0
- package/packages/core/dist/types/relationship.js.map +1 -0
- package/packages/core/package.json +22 -0
- package/packages/core/tsconfig.json +9 -0
- package/packages/graph/dist/index.d.ts +4 -0
- package/packages/graph/dist/index.d.ts.map +1 -0
- package/packages/graph/dist/index.js +4 -0
- package/packages/graph/dist/index.js.map +1 -0
- package/packages/graph/dist/migrations/001-initial.d.ts +4 -0
- package/packages/graph/dist/migrations/001-initial.d.ts.map +1 -0
- package/packages/graph/dist/migrations/001-initial.js +134 -0
- package/packages/graph/dist/migrations/001-initial.js.map +1 -0
- package/packages/graph/dist/query-engine.d.ts +35 -0
- package/packages/graph/dist/query-engine.d.ts.map +1 -0
- package/packages/graph/dist/query-engine.js +185 -0
- package/packages/graph/dist/query-engine.js.map +1 -0
- package/packages/graph/dist/sqlite-store.d.ts +125 -0
- package/packages/graph/dist/sqlite-store.d.ts.map +1 -0
- package/packages/graph/dist/sqlite-store.js +632 -0
- package/packages/graph/dist/sqlite-store.js.map +1 -0
- package/packages/graph/dist/vector-store.d.ts +27 -0
- package/packages/graph/dist/vector-store.d.ts.map +1 -0
- package/packages/graph/dist/vector-store.js +85 -0
- package/packages/graph/dist/vector-store.js.map +1 -0
- package/packages/graph/package.json +27 -0
- package/packages/graph/tsconfig.json +12 -0
- package/packages/ingest/dist/chunker.d.ts +21 -0
- package/packages/ingest/dist/chunker.d.ts.map +1 -0
- package/packages/ingest/dist/chunker.js +118 -0
- package/packages/ingest/dist/chunker.js.map +1 -0
- package/packages/ingest/dist/index.d.ts +11 -0
- package/packages/ingest/dist/index.d.ts.map +1 -0
- package/packages/ingest/dist/index.js +14 -0
- package/packages/ingest/dist/index.js.map +1 -0
- package/packages/ingest/dist/parsers/conversation.d.ts +10 -0
- package/packages/ingest/dist/parsers/conversation.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/conversation.js +150 -0
- package/packages/ingest/dist/parsers/conversation.js.map +1 -0
- package/packages/ingest/dist/parsers/index.d.ts +11 -0
- package/packages/ingest/dist/parsers/index.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/index.js +42 -0
- package/packages/ingest/dist/parsers/index.js.map +1 -0
- package/packages/ingest/dist/parsers/json-parser.d.ts +6 -0
- package/packages/ingest/dist/parsers/json-parser.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/json-parser.js +114 -0
- package/packages/ingest/dist/parsers/json-parser.js.map +1 -0
- package/packages/ingest/dist/parsers/markdown.d.ts +6 -0
- package/packages/ingest/dist/parsers/markdown.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/markdown.js +116 -0
- package/packages/ingest/dist/parsers/markdown.js.map +1 -0
- package/packages/ingest/dist/parsers/types.d.ts +18 -0
- package/packages/ingest/dist/parsers/types.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/types.js +2 -0
- package/packages/ingest/dist/parsers/types.js.map +1 -0
- package/packages/ingest/dist/parsers/typescript.d.ts +11 -0
- package/packages/ingest/dist/parsers/typescript.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/typescript.js +197 -0
- package/packages/ingest/dist/parsers/typescript.js.map +1 -0
- package/packages/ingest/dist/parsers/yaml-parser.d.ts +6 -0
- package/packages/ingest/dist/parsers/yaml-parser.d.ts.map +1 -0
- package/packages/ingest/dist/parsers/yaml-parser.js +52 -0
- package/packages/ingest/dist/parsers/yaml-parser.js.map +1 -0
- package/packages/ingest/dist/pipeline.d.ts +30 -0
- package/packages/ingest/dist/pipeline.d.ts.map +1 -0
- package/packages/ingest/dist/pipeline.js +311 -0
- package/packages/ingest/dist/pipeline.js.map +1 -0
- package/packages/ingest/dist/post-ingest.d.ts +25 -0
- package/packages/ingest/dist/post-ingest.d.ts.map +1 -0
- package/packages/ingest/dist/post-ingest.js +171 -0
- package/packages/ingest/dist/post-ingest.js.map +1 -0
- package/packages/ingest/dist/watcher.d.ts +26 -0
- package/packages/ingest/dist/watcher.d.ts.map +1 -0
- package/packages/ingest/dist/watcher.js +142 -0
- package/packages/ingest/dist/watcher.js.map +1 -0
- package/packages/ingest/package.json +30 -0
- package/packages/ingest/tsconfig.json +14 -0
- package/packages/llm/dist/cache.d.ts +26 -0
- package/packages/llm/dist/cache.d.ts.map +1 -0
- package/packages/llm/dist/cache.js +60 -0
- package/packages/llm/dist/cache.js.map +1 -0
- package/packages/llm/dist/index.d.ts +15 -0
- package/packages/llm/dist/index.d.ts.map +1 -0
- package/packages/llm/dist/index.js +19 -0
- package/packages/llm/dist/index.js.map +1 -0
- package/packages/llm/dist/output-parser.d.ts +4 -0
- package/packages/llm/dist/output-parser.d.ts.map +1 -0
- package/packages/llm/dist/output-parser.js +207 -0
- package/packages/llm/dist/output-parser.js.map +1 -0
- package/packages/llm/dist/prompts/context-ranking.d.ts +33 -0
- package/packages/llm/dist/prompts/context-ranking.d.ts.map +1 -0
- package/packages/llm/dist/prompts/context-ranking.js +30 -0
- package/packages/llm/dist/prompts/context-ranking.js.map +1 -0
- package/packages/llm/dist/prompts/contradiction-detection.d.ts +46 -0
- package/packages/llm/dist/prompts/contradiction-detection.d.ts.map +1 -0
- package/packages/llm/dist/prompts/contradiction-detection.js +45 -0
- package/packages/llm/dist/prompts/contradiction-detection.js.map +1 -0
- package/packages/llm/dist/prompts/conversational-query.d.ts +29 -0
- package/packages/llm/dist/prompts/conversational-query.d.ts.map +1 -0
- package/packages/llm/dist/prompts/conversational-query.js +34 -0
- package/packages/llm/dist/prompts/conversational-query.js.map +1 -0
- package/packages/llm/dist/prompts/entity-extraction.d.ts +67 -0
- package/packages/llm/dist/prompts/entity-extraction.d.ts.map +1 -0
- package/packages/llm/dist/prompts/entity-extraction.js +76 -0
- package/packages/llm/dist/prompts/entity-extraction.js.map +1 -0
- package/packages/llm/dist/prompts/follow-up-generation.d.ts +25 -0
- package/packages/llm/dist/prompts/follow-up-generation.d.ts.map +1 -0
- package/packages/llm/dist/prompts/follow-up-generation.js +25 -0
- package/packages/llm/dist/prompts/follow-up-generation.js.map +1 -0
- package/packages/llm/dist/prompts/merge-detection.d.ts +41 -0
- package/packages/llm/dist/prompts/merge-detection.d.ts.map +1 -0
- package/packages/llm/dist/prompts/merge-detection.js +31 -0
- package/packages/llm/dist/prompts/merge-detection.js.map +1 -0
- package/packages/llm/dist/prompts/relationship-inference.d.ts +60 -0
- package/packages/llm/dist/prompts/relationship-inference.d.ts.map +1 -0
- package/packages/llm/dist/prompts/relationship-inference.js +66 -0
- package/packages/llm/dist/prompts/relationship-inference.js.map +1 -0
- package/packages/llm/dist/providers/anthropic.d.ts +39 -0
- package/packages/llm/dist/providers/anthropic.d.ts.map +1 -0
- package/packages/llm/dist/providers/anthropic.js +157 -0
- package/packages/llm/dist/providers/anthropic.js.map +1 -0
- package/packages/llm/dist/providers/ollama.d.ts +52 -0
- package/packages/llm/dist/providers/ollama.d.ts.map +1 -0
- package/packages/llm/dist/providers/ollama.js +297 -0
- package/packages/llm/dist/providers/ollama.js.map +1 -0
- package/packages/llm/dist/providers/openai-compatible.d.ts +40 -0
- package/packages/llm/dist/providers/openai-compatible.d.ts.map +1 -0
- package/packages/llm/dist/providers/openai-compatible.js +164 -0
- package/packages/llm/dist/providers/openai-compatible.js.map +1 -0
- package/packages/llm/dist/router.d.ts +87 -0
- package/packages/llm/dist/router.d.ts.map +1 -0
- package/packages/llm/dist/router.js +399 -0
- package/packages/llm/dist/router.js.map +1 -0
- package/packages/llm/dist/token-tracker.d.ts +24 -0
- package/packages/llm/dist/token-tracker.d.ts.map +1 -0
- package/packages/llm/dist/token-tracker.js +114 -0
- package/packages/llm/dist/token-tracker.js.map +1 -0
- package/packages/llm/package.json +25 -0
- package/packages/llm/tsconfig.json +12 -0
- package/packages/mcp/dist/index.d.ts +10 -0
- package/packages/mcp/dist/index.d.ts.map +1 -0
- package/packages/mcp/dist/index.js +33 -0
- package/packages/mcp/dist/index.js.map +1 -0
- package/packages/mcp/dist/server.d.ts +5 -0
- package/packages/mcp/dist/server.d.ts.map +1 -0
- package/packages/mcp/dist/server.js +87 -0
- package/packages/mcp/dist/server.js.map +1 -0
- package/packages/mcp/dist/store-factory.d.ts +8 -0
- package/packages/mcp/dist/store-factory.d.ts.map +1 -0
- package/packages/mcp/dist/store-factory.js +24 -0
- package/packages/mcp/dist/store-factory.js.map +1 -0
- package/packages/mcp/dist/tools/contradictions.d.ts +14 -0
- package/packages/mcp/dist/tools/contradictions.d.ts.map +1 -0
- package/packages/mcp/dist/tools/contradictions.js +33 -0
- package/packages/mcp/dist/tools/contradictions.js.map +1 -0
- package/packages/mcp/dist/tools/find.d.ts +37 -0
- package/packages/mcp/dist/tools/find.d.ts.map +1 -0
- package/packages/mcp/dist/tools/find.js +52 -0
- package/packages/mcp/dist/tools/find.js.map +1 -0
- package/packages/mcp/dist/tools/projects.d.ts +16 -0
- package/packages/mcp/dist/tools/projects.d.ts.map +1 -0
- package/packages/mcp/dist/tools/projects.js +17 -0
- package/packages/mcp/dist/tools/projects.js.map +1 -0
- package/packages/mcp/dist/tools/query.d.ts +20 -0
- package/packages/mcp/dist/tools/query.d.ts.map +1 -0
- package/packages/mcp/dist/tools/query.js +65 -0
- package/packages/mcp/dist/tools/query.js.map +1 -0
- package/packages/mcp/dist/tools/status.d.ts +15 -0
- package/packages/mcp/dist/tools/status.d.ts.map +1 -0
- package/packages/mcp/dist/tools/status.js +17 -0
- package/packages/mcp/dist/tools/status.js.map +1 -0
- package/packages/mcp/package.json +27 -0
- package/packages/mcp/tsconfig.json +14 -0
- package/packages/server/dist/index.d.ts +17 -0
- package/packages/server/dist/index.d.ts.map +1 -0
- package/packages/server/dist/index.js +170 -0
- package/packages/server/dist/index.js.map +1 -0
- package/packages/server/dist/middleware/auth.d.ts +9 -0
- package/packages/server/dist/middleware/auth.d.ts.map +1 -0
- package/packages/server/dist/middleware/auth.js +94 -0
- package/packages/server/dist/middleware/auth.js.map +1 -0
- package/packages/server/dist/routes/contradictions.d.ts +4 -0
- package/packages/server/dist/routes/contradictions.d.ts.map +1 -0
- package/packages/server/dist/routes/contradictions.js +63 -0
- package/packages/server/dist/routes/contradictions.js.map +1 -0
- package/packages/server/dist/routes/entities.d.ts +4 -0
- package/packages/server/dist/routes/entities.d.ts.map +1 -0
- package/packages/server/dist/routes/entities.js +61 -0
- package/packages/server/dist/routes/entities.js.map +1 -0
- package/packages/server/dist/routes/projects.d.ts +4 -0
- package/packages/server/dist/routes/projects.d.ts.map +1 -0
- package/packages/server/dist/routes/projects.js +35 -0
- package/packages/server/dist/routes/projects.js.map +1 -0
- package/packages/server/dist/routes/query.d.ts +4 -0
- package/packages/server/dist/routes/query.d.ts.map +1 -0
- package/packages/server/dist/routes/query.js +93 -0
- package/packages/server/dist/routes/query.js.map +1 -0
- package/packages/server/dist/routes/relationships.d.ts +4 -0
- package/packages/server/dist/routes/relationships.d.ts.map +1 -0
- package/packages/server/dist/routes/relationships.js +52 -0
- package/packages/server/dist/routes/relationships.js.map +1 -0
- package/packages/server/dist/routes/status.d.ts +4 -0
- package/packages/server/dist/routes/status.d.ts.map +1 -0
- package/packages/server/dist/routes/status.js +85 -0
- package/packages/server/dist/routes/status.js.map +1 -0
- package/packages/server/dist/ws/event-relay.d.ts +10 -0
- package/packages/server/dist/ws/event-relay.d.ts.map +1 -0
- package/packages/server/dist/ws/event-relay.js +83 -0
- package/packages/server/dist/ws/event-relay.js.map +1 -0
- package/packages/server/package.json +32 -0
- package/packages/server/tsconfig.json +15 -0
- package/packages/web/dist/assets/index-Bxjfq4I0.css +1 -0
- package/packages/web/dist/assets/index-MqwNS5FD.js +248 -0
- package/packages/web/dist/assets/index-MqwNS5FD.js.map +1 -0
- package/packages/web/dist/cortex-icon.svg +9 -0
- package/packages/web/dist/icon.png +0 -0
- package/packages/web/dist/index.html +14 -0
- package/packages/web/dist/logo.png +0 -0
- package/packages/web/index.html +13 -0
- package/packages/web/package.json +34 -0
- package/packages/web/public/cortex-icon.svg +9 -0
- package/packages/web/public/icon.png +0 -0
- package/packages/web/public/logo.png +0 -0
- package/packages/web/tsconfig.json +22 -0
- package/packages/web/vite.config.ts +20 -0
- package/tsconfig.base.json +18 -0
- package/tsconfig.json +12 -0
- package/vitest.config.ts +14 -0
|
@@ -0,0 +1,46 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export declare const PROMPT_ID = "contradiction_detection";
|
|
4
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
5
|
+
export declare const systemPrompt = "You detect contradictions between knowledge entities. Return ONLY valid JSON.";
|
|
6
|
+
export declare function buildUserPrompt(vars: {
|
|
7
|
+
a: {
|
|
8
|
+
type: string;
|
|
9
|
+
name: string;
|
|
10
|
+
content: string;
|
|
11
|
+
createdAt: string;
|
|
12
|
+
sourceFile: string;
|
|
13
|
+
};
|
|
14
|
+
b: {
|
|
15
|
+
type: string;
|
|
16
|
+
name: string;
|
|
17
|
+
content: string;
|
|
18
|
+
createdAt: string;
|
|
19
|
+
sourceFile: string;
|
|
20
|
+
};
|
|
21
|
+
}): string;
|
|
22
|
+
export declare const outputSchema: z.ZodObject<{
|
|
23
|
+
isContradiction: z.ZodBoolean;
|
|
24
|
+
severity: z.ZodEnum<["low", "medium", "high"]>;
|
|
25
|
+
description: z.ZodString;
|
|
26
|
+
suggestedResolution: z.ZodString;
|
|
27
|
+
}, "strip", z.ZodTypeAny, {
|
|
28
|
+
description: string;
|
|
29
|
+
isContradiction: boolean;
|
|
30
|
+
severity: "high" | "medium" | "low";
|
|
31
|
+
suggestedResolution: string;
|
|
32
|
+
}, {
|
|
33
|
+
description: string;
|
|
34
|
+
isContradiction: boolean;
|
|
35
|
+
severity: "high" | "medium" | "low";
|
|
36
|
+
suggestedResolution: string;
|
|
37
|
+
}>;
|
|
38
|
+
export type ContradictionDetectionOutput = z.infer<typeof outputSchema>;
|
|
39
|
+
export declare const config: {
|
|
40
|
+
provider: "cloud";
|
|
41
|
+
model: "fast";
|
|
42
|
+
temperature: number;
|
|
43
|
+
maxTokens: number;
|
|
44
|
+
task: LLMTask;
|
|
45
|
+
};
|
|
46
|
+
//# sourceMappingURL=contradiction-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contradiction-detection.d.ts","sourceRoot":"","sources":["../../src/prompts/contradiction-detection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,4BAA4B,CAAC;AACnD,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,kFAAkF,CAAC;AAE5G,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IAC1F,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CAC3F,GAAG,MAAM,CAyBT;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;EAKvB,CAAC;AAEH,MAAM,MAAM,4BAA4B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAExE,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
|
@@ -0,0 +1,45 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export const PROMPT_ID = 'contradiction_detection';
|
|
4
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
5
|
+
export const systemPrompt = `You detect contradictions between knowledge entities. Return ONLY valid JSON.`;
|
|
6
|
+
export function buildUserPrompt(vars) {
|
|
7
|
+
return `Do these two entities DIRECTLY contradict each other?
|
|
8
|
+
|
|
9
|
+
Entity A: [${vars.a.type}] ${vars.a.name}
|
|
10
|
+
Content: ${vars.a.content}
|
|
11
|
+
Source: ${vars.a.sourceFile}
|
|
12
|
+
|
|
13
|
+
Entity B: [${vars.b.type}] ${vars.b.name}
|
|
14
|
+
Content: ${vars.b.content}
|
|
15
|
+
Source: ${vars.b.sourceFile}
|
|
16
|
+
|
|
17
|
+
RULES — return isContradiction=false if:
|
|
18
|
+
- The entities are about different topics or concerns (most pairs)
|
|
19
|
+
- One entity doesn't affect or conflict with the other
|
|
20
|
+
- They are independent requirements that can both be satisfied simultaneously
|
|
21
|
+
|
|
22
|
+
Only return isContradiction=true if BOTH entities are about the SAME specific topic AND they make conflicting claims that cannot both be true.
|
|
23
|
+
|
|
24
|
+
Return JSON:
|
|
25
|
+
{
|
|
26
|
+
"isContradiction": boolean,
|
|
27
|
+
"severity": "low" | "medium" | "high",
|
|
28
|
+
"description": "what specifically conflicts and why",
|
|
29
|
+
"suggestedResolution": "how to resolve this"
|
|
30
|
+
}`;
|
|
31
|
+
}
|
|
32
|
+
export const outputSchema = z.object({
|
|
33
|
+
isContradiction: z.boolean(),
|
|
34
|
+
severity: z.enum(['low', 'medium', 'high']),
|
|
35
|
+
description: z.string(),
|
|
36
|
+
suggestedResolution: z.string(),
|
|
37
|
+
});
|
|
38
|
+
export const config = {
|
|
39
|
+
provider: 'cloud',
|
|
40
|
+
model: 'fast',
|
|
41
|
+
temperature: 0.1,
|
|
42
|
+
maxTokens: 1000,
|
|
43
|
+
task: LLMTask.CONTRADICTION_DETECTION,
|
|
44
|
+
};
|
|
45
|
+
//# sourceMappingURL=contradiction-detection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"contradiction-detection.js","sourceRoot":"","sources":["../../src/prompts/contradiction-detection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,yBAAyB,CAAC;AACnD,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,+EAA+E,CAAC;AAE5G,MAAM,UAAU,eAAe,CAAC,IAG/B;IACC,OAAO;;aAEI,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;aAC3B,IAAI,CAAC,CAAC,CAAC,OAAO;YACf,IAAI,CAAC,CAAC,CAAC,UAAU;;aAEhB,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;aAC3B,IAAI,CAAC,CAAC,CAAC,OAAO;YACf,IAAI,CAAC,CAAC,CAAC,UAAU;;;;;;;;;;;;;;;EAe3B,CAAC;AACH,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,eAAe,EAAE,CAAC,CAAC,OAAO,EAAE;IAC5B,QAAQ,EAAE,CAAC,CAAC,IAAI,CAAC,CAAC,KAAK,EAAE,QAAQ,EAAE,MAAM,CAAC,CAAC;IAC3C,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;IACvB,mBAAmB,EAAE,CAAC,CAAC,MAAM,EAAE;CAChC,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,MAAe;IACtB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,OAAO,CAAC,uBAAuB;CACtC,CAAC"}
|
|
@@ -0,0 +1,29 @@
|
|
|
1
|
+
import { LLMTask } from '@cortex/core';
|
|
2
|
+
export declare const PROMPT_ID = "conversational_query";
|
|
3
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
4
|
+
export declare const systemPrompt = "You are Cortex, a knowledge assistant. Answer questions using the provided context from the user's knowledge graph.\nBe concise and specific. Refer to decisions, patterns, and components by name.\nMention the source file when citing a fact. If the context lacks enough information, say so briefly.";
|
|
5
|
+
export declare function buildUserPrompt(vars: {
|
|
6
|
+
contextEntities: Array<{
|
|
7
|
+
id: string;
|
|
8
|
+
type: string;
|
|
9
|
+
name: string;
|
|
10
|
+
content: string;
|
|
11
|
+
sourceFile: string;
|
|
12
|
+
createdAt: string;
|
|
13
|
+
relationships: Array<{
|
|
14
|
+
type: string;
|
|
15
|
+
targetEntityId: string;
|
|
16
|
+
}>;
|
|
17
|
+
}>;
|
|
18
|
+
userQuery: string;
|
|
19
|
+
graphSummary?: string;
|
|
20
|
+
}): string;
|
|
21
|
+
export declare const config: {
|
|
22
|
+
provider: "cloud";
|
|
23
|
+
model: "primary";
|
|
24
|
+
temperature: number;
|
|
25
|
+
maxTokens: number;
|
|
26
|
+
task: LLMTask;
|
|
27
|
+
stream: boolean;
|
|
28
|
+
};
|
|
29
|
+
//# sourceMappingURL=conversational-query.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversational-query.d.ts","sourceRoot":"","sources":["../../src/prompts/conversational-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,yBAAyB,CAAC;AAChD,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,8SAE4E,CAAC;AAEtG,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,eAAe,EAAE,KAAK,CAAC;QACrB,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,EAAE,MAAM,CAAC;QAChB,UAAU,EAAE,MAAM,CAAC;QACnB,SAAS,EAAE,MAAM,CAAC;QAClB,aAAa,EAAE,KAAK,CAAC;YAAE,IAAI,EAAE,MAAM,CAAC;YAAC,cAAc,EAAE,MAAM,CAAA;SAAE,CAAC,CAAC;KAChE,CAAC,CAAC;IACH,SAAS,EAAE,MAAM,CAAC;IAClB,YAAY,CAAC,EAAE,MAAM,CAAC;CACvB,GAAG,MAAM,CAqBT;AAED,eAAO,MAAM,MAAM;;;;;;;CAOlB,CAAC"}
|
|
@@ -0,0 +1,34 @@
|
|
|
1
|
+
import { LLMTask } from '@cortex/core';
|
|
2
|
+
export const PROMPT_ID = 'conversational_query';
|
|
3
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
4
|
+
export const systemPrompt = `You are Cortex, a knowledge assistant. Answer questions using the provided context from the user's knowledge graph.
|
|
5
|
+
Be concise and specific. Refer to decisions, patterns, and components by name.
|
|
6
|
+
Mention the source file when citing a fact. If the context lacks enough information, say so briefly.`;
|
|
7
|
+
export function buildUserPrompt(vars) {
|
|
8
|
+
const parts = [];
|
|
9
|
+
if (vars.graphSummary) {
|
|
10
|
+
parts.push(`Graph stats:\n${vars.graphSummary}`);
|
|
11
|
+
}
|
|
12
|
+
if (vars.contextEntities.length > 0) {
|
|
13
|
+
const context = vars.contextEntities
|
|
14
|
+
.map((e) => {
|
|
15
|
+
const file = e.sourceFile.replace(/\\/g, '/').split('/').pop() ?? e.sourceFile;
|
|
16
|
+
const rels = e.relationships.length > 0
|
|
17
|
+
? `\n Relations: ${e.relationships.map((r) => r.type).join(', ')}`
|
|
18
|
+
: '';
|
|
19
|
+
return `[${e.type}] ${e.name}\n ${e.content}\n (${file})${rels}`;
|
|
20
|
+
})
|
|
21
|
+
.join('\n\n');
|
|
22
|
+
parts.push(`Relevant entities:\n${context}`);
|
|
23
|
+
}
|
|
24
|
+
return `${parts.join('\n\n')}\n\nQuestion: ${vars.userQuery}`;
|
|
25
|
+
}
|
|
26
|
+
export const config = {
|
|
27
|
+
provider: 'cloud',
|
|
28
|
+
model: 'primary',
|
|
29
|
+
temperature: 0.7,
|
|
30
|
+
maxTokens: 600,
|
|
31
|
+
task: LLMTask.CONVERSATIONAL_QUERY,
|
|
32
|
+
stream: true,
|
|
33
|
+
};
|
|
34
|
+
//# sourceMappingURL=conversational-query.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"conversational-query.js","sourceRoot":"","sources":["../../src/prompts/conversational-query.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAChD,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG;;qGAEyE,CAAC;AAEtG,MAAM,UAAU,eAAe,CAAC,IAY/B;IACC,MAAM,KAAK,GAAa,EAAE,CAAC;IAE3B,IAAI,IAAI,CAAC,YAAY,EAAE,CAAC;QACtB,KAAK,CAAC,IAAI,CAAC,iBAAiB,IAAI,CAAC,YAAY,EAAE,CAAC,CAAC;IACnD,CAAC;IAED,IAAI,IAAI,CAAC,eAAe,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC;QACpC,MAAM,OAAO,GAAG,IAAI,CAAC,eAAe;aACjC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE;YACT,MAAM,IAAI,GAAG,CAAC,CAAC,UAAU,CAAC,OAAO,CAAC,KAAK,EAAE,GAAG,CAAC,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,EAAE,IAAI,CAAC,CAAC,UAAU,CAAC;YAC/E,MAAM,IAAI,GAAG,CAAC,CAAC,aAAa,CAAC,MAAM,GAAG,CAAC;gBACrC,CAAC,CAAC,kBAAkB,CAAC,CAAC,aAAa,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE;gBACnE,CAAC,CAAC,EAAE,CAAC;YACP,OAAO,IAAI,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,OAAO,CAAC,CAAC,OAAO,QAAQ,IAAI,IAAI,IAAI,EAAE,CAAC;QACrE,CAAC,CAAC;aACD,IAAI,CAAC,MAAM,CAAC,CAAC;QAChB,KAAK,CAAC,IAAI,CAAC,uBAAuB,OAAO,EAAE,CAAC,CAAC;IAC/C,CAAC;IAED,OAAO,GAAG,KAAK,CAAC,IAAI,CAAC,MAAM,CAAC,iBAAiB,IAAI,CAAC,SAAS,EAAE,CAAC;AAChE,CAAC;AAED,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,SAAkB;IACzB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,OAAO,CAAC,oBAAoB;IAClC,MAAM,EAAE,IAAI;CACb,CAAC"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export declare const PROMPT_ID = "entity_extraction";
|
|
4
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
5
|
+
export declare const systemPrompt = "You are a knowledge extraction engine for a software development context.\nExtract structured entities from the provided content. Each entity represents\na discrete piece of knowledge: a decision made, a requirement stated, a pattern\nused, a component described, a dependency identified, an interface defined, a\nconstraint established, an action item assigned, a risk identified, or a note\nrecorded.\n\nReturn ONLY valid JSON matching the provided schema. No markdown, no explanation.";
|
|
6
|
+
export declare function buildUserPrompt(vars: {
|
|
7
|
+
filePath: string;
|
|
8
|
+
projectName: string;
|
|
9
|
+
fileType: string;
|
|
10
|
+
content: string;
|
|
11
|
+
}): string;
|
|
12
|
+
export declare const outputSchema: z.ZodObject<{
|
|
13
|
+
entities: z.ZodArray<z.ZodObject<{
|
|
14
|
+
type: z.ZodCatch<z.ZodEnum<["Decision", "Requirement", "Pattern", "Component", "Dependency", "Interface", "Constraint", "ActionItem", "Risk", "Note"]>>;
|
|
15
|
+
name: z.ZodString;
|
|
16
|
+
content: z.ZodString;
|
|
17
|
+
summary: z.ZodString;
|
|
18
|
+
confidence: z.ZodNumber;
|
|
19
|
+
tags: z.ZodArray<z.ZodString, "many">;
|
|
20
|
+
properties: z.ZodRecord<z.ZodString, z.ZodUnknown>;
|
|
21
|
+
}, "strip", z.ZodTypeAny, {
|
|
22
|
+
content: string;
|
|
23
|
+
type: "Decision" | "Requirement" | "Pattern" | "Component" | "Dependency" | "Interface" | "Constraint" | "ActionItem" | "Risk" | "Note";
|
|
24
|
+
name: string;
|
|
25
|
+
confidence: number;
|
|
26
|
+
summary: string;
|
|
27
|
+
tags: string[];
|
|
28
|
+
properties: Record<string, unknown>;
|
|
29
|
+
}, {
|
|
30
|
+
content: string;
|
|
31
|
+
name: string;
|
|
32
|
+
confidence: number;
|
|
33
|
+
summary: string;
|
|
34
|
+
tags: string[];
|
|
35
|
+
properties: Record<string, unknown>;
|
|
36
|
+
type?: unknown;
|
|
37
|
+
}>, "many">;
|
|
38
|
+
}, "strip", z.ZodTypeAny, {
|
|
39
|
+
entities: {
|
|
40
|
+
content: string;
|
|
41
|
+
type: "Decision" | "Requirement" | "Pattern" | "Component" | "Dependency" | "Interface" | "Constraint" | "ActionItem" | "Risk" | "Note";
|
|
42
|
+
name: string;
|
|
43
|
+
confidence: number;
|
|
44
|
+
summary: string;
|
|
45
|
+
tags: string[];
|
|
46
|
+
properties: Record<string, unknown>;
|
|
47
|
+
}[];
|
|
48
|
+
}, {
|
|
49
|
+
entities: {
|
|
50
|
+
content: string;
|
|
51
|
+
name: string;
|
|
52
|
+
confidence: number;
|
|
53
|
+
summary: string;
|
|
54
|
+
tags: string[];
|
|
55
|
+
properties: Record<string, unknown>;
|
|
56
|
+
type?: unknown;
|
|
57
|
+
}[];
|
|
58
|
+
}>;
|
|
59
|
+
export type EntityExtractionOutput = z.infer<typeof outputSchema>;
|
|
60
|
+
export declare const config: {
|
|
61
|
+
provider: "cloud";
|
|
62
|
+
model: "fast";
|
|
63
|
+
temperature: number;
|
|
64
|
+
maxTokens: number;
|
|
65
|
+
task: LLMTask;
|
|
66
|
+
};
|
|
67
|
+
//# sourceMappingURL=entity-extraction.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity-extraction.d.ts","sourceRoot":"","sources":["../../src/prompts/entity-extraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,sBAAsB,CAAC;AAC7C,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,4eAOyD,CAAC;AAEnF,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,QAAQ,EAAE,MAAM,CAAC;IACjB,WAAW,EAAE,MAAM,CAAC;IACpB,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;CACjB,GAAG,MAAM,CAwBT;AAmBD,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAUvB,CAAC;AAEH,MAAM,MAAM,sBAAsB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAElE,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export const PROMPT_ID = 'entity_extraction';
|
|
4
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
5
|
+
export const systemPrompt = `You are a knowledge extraction engine for a software development context.
|
|
6
|
+
Extract structured entities from the provided content. Each entity represents
|
|
7
|
+
a discrete piece of knowledge: a decision made, a requirement stated, a pattern
|
|
8
|
+
used, a component described, a dependency identified, an interface defined, a
|
|
9
|
+
constraint established, an action item assigned, a risk identified, or a note
|
|
10
|
+
recorded.
|
|
11
|
+
|
|
12
|
+
Return ONLY valid JSON matching the provided schema. No markdown, no explanation.`;
|
|
13
|
+
export function buildUserPrompt(vars) {
|
|
14
|
+
return `Extract entities from this content.
|
|
15
|
+
File: ${vars.filePath}
|
|
16
|
+
Project: ${vars.projectName}
|
|
17
|
+
File type: ${vars.fileType}
|
|
18
|
+
|
|
19
|
+
---CONTENT START---
|
|
20
|
+
${vars.content}
|
|
21
|
+
---CONTENT END---
|
|
22
|
+
|
|
23
|
+
Return a JSON object with an "entities" array (maximum 20 entities per response). For each entity:
|
|
24
|
+
- type: one of Decision, Requirement, Pattern, Component, Dependency, Interface, Constraint, ActionItem, Risk, Note
|
|
25
|
+
- name: concise identifier (3-8 words)
|
|
26
|
+
- content: the relevant text from the source (minimum 10 characters)
|
|
27
|
+
- summary: 1-2 sentence summary
|
|
28
|
+
- confidence: 0.0-1.0 (how confident you are this is a real entity)
|
|
29
|
+
- tags: relevant keywords
|
|
30
|
+
- properties: type-specific metadata (e.g., for Decision: {rationale, alternatives, date})
|
|
31
|
+
|
|
32
|
+
IMPORTANT: Focus on high-value entities only. For dependency lists (package.json, requirements.txt, go.mod), extract only the primary infrastructure/framework dependencies (e.g., the database driver, the main framework, the auth library) — NOT every single package. Group trivial dev tools into a single Note entity if needed.
|
|
33
|
+
|
|
34
|
+
Example format: {"entities": [{"type": "Decision", "name": "Use PostgreSQL", "content": "We decided to use PostgreSQL for the main database", "summary": "Team chose PostgreSQL.", "confidence": 0.9, "tags": ["database"], "properties": {}}]}
|
|
35
|
+
|
|
36
|
+
If no meaningful entities exist, return: {"entities": []}`;
|
|
37
|
+
}
|
|
38
|
+
const VALID_TYPES = [
|
|
39
|
+
'Decision', 'Requirement', 'Pattern', 'Component', 'Dependency',
|
|
40
|
+
'Interface', 'Constraint', 'ActionItem', 'Risk', 'Note',
|
|
41
|
+
];
|
|
42
|
+
function coerceEntityType(val) {
|
|
43
|
+
if (VALID_TYPES.includes(val)) {
|
|
44
|
+
return val;
|
|
45
|
+
}
|
|
46
|
+
if (/rule|lint|option|setting|config/i.test(val))
|
|
47
|
+
return 'Constraint';
|
|
48
|
+
if (/action|task|todo/i.test(val))
|
|
49
|
+
return 'ActionItem';
|
|
50
|
+
if (/component|module|class|service/i.test(val))
|
|
51
|
+
return 'Component';
|
|
52
|
+
if (/depend|import|library|package/i.test(val))
|
|
53
|
+
return 'Dependency';
|
|
54
|
+
if (/require|must|shall|need/i.test(val))
|
|
55
|
+
return 'Requirement';
|
|
56
|
+
return 'Note';
|
|
57
|
+
}
|
|
58
|
+
export const outputSchema = z.object({
|
|
59
|
+
entities: z.array(z.object({
|
|
60
|
+
type: z.enum(VALID_TYPES).catch((ctx) => coerceEntityType(String(ctx.input))),
|
|
61
|
+
name: z.string().min(3).max(100),
|
|
62
|
+
content: z.string().min(10),
|
|
63
|
+
summary: z.string().max(300),
|
|
64
|
+
confidence: z.number().min(0).max(1),
|
|
65
|
+
tags: z.array(z.string()),
|
|
66
|
+
properties: z.record(z.unknown()),
|
|
67
|
+
})),
|
|
68
|
+
});
|
|
69
|
+
export const config = {
|
|
70
|
+
provider: 'cloud',
|
|
71
|
+
model: 'fast',
|
|
72
|
+
temperature: 0.1,
|
|
73
|
+
maxTokens: 8192,
|
|
74
|
+
task: LLMTask.ENTITY_EXTRACTION,
|
|
75
|
+
};
|
|
76
|
+
//# sourceMappingURL=entity-extraction.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"entity-extraction.js","sourceRoot":"","sources":["../../src/prompts/entity-extraction.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,mBAAmB,CAAC;AAC7C,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;kFAOsD,CAAC;AAEnF,MAAM,UAAU,eAAe,CAAC,IAK/B;IACC,OAAO;QACD,IAAI,CAAC,QAAQ;WACV,IAAI,CAAC,WAAW;aACd,IAAI,CAAC,QAAQ;;;EAGxB,IAAI,CAAC,OAAO;;;;;;;;;;;;;;;;0DAgB4C,CAAC;AAC3D,CAAC;AAED,MAAM,WAAW,GAAG;IAClB,UAAU,EAAE,aAAa,EAAE,SAAS,EAAE,WAAW,EAAE,YAAY;IAC/D,WAAW,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,EAAE,MAAM;CAC/C,CAAC;AAEX,SAAS,gBAAgB,CAAC,GAAW;IACnC,IAAK,WAAiC,CAAC,QAAQ,CAAC,GAAG,CAAC,EAAE,CAAC;QACrD,OAAO,GAAiC,CAAC;IAC3C,CAAC;IACD,IAAI,kCAAkC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IACtE,IAAI,mBAAmB,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IACvD,IAAI,iCAAiC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,WAAW,CAAC;IACpE,IAAI,gCAAgC,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,YAAY,CAAC;IACpE,IAAI,0BAA0B,CAAC,IAAI,CAAC,GAAG,CAAC;QAAE,OAAO,aAAa,CAAC;IAC/D,OAAO,MAAM,CAAC;AAChB,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,QAAQ,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QACzB,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC,WAAW,CAAC,CAAC,KAAK,CAAC,CAAC,GAAG,EAAE,EAAE,CAAC,gBAAgB,CAAC,MAAM,CAAC,GAAG,CAAC,KAAK,CAAC,CAAC,CAAC;QAC7E,IAAI,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,GAAG,CAAC;QAChC,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,EAAE,CAAC;QAC3B,OAAO,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,GAAG,CAAC;QAC5B,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;QACpC,IAAI,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;QACzB,UAAU,EAAE,CAAC,CAAC,MAAM,CAAC,CAAC,CAAC,OAAO,EAAE,CAAC;KAClC,CAAC,CAAC;CACJ,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,MAAe;IACtB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,OAAO,CAAC,iBAAiB;CAChC,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export declare const PROMPT_ID = "follow_up_generation";
|
|
4
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
5
|
+
export declare const systemPrompt = "You suggest follow-up questions based on a Q&A exchange. Return ONLY valid JSON.";
|
|
6
|
+
export declare function buildUserPrompt(vars: {
|
|
7
|
+
userQuery: string;
|
|
8
|
+
answerSummary: string;
|
|
9
|
+
}): string;
|
|
10
|
+
export declare const outputSchema: z.ZodObject<{
|
|
11
|
+
followUps: z.ZodArray<z.ZodString, "many">;
|
|
12
|
+
}, "strip", z.ZodTypeAny, {
|
|
13
|
+
followUps: string[];
|
|
14
|
+
}, {
|
|
15
|
+
followUps: string[];
|
|
16
|
+
}>;
|
|
17
|
+
export type FollowUpGenerationOutput = z.infer<typeof outputSchema>;
|
|
18
|
+
export declare const config: {
|
|
19
|
+
provider: "cloud";
|
|
20
|
+
model: "fast";
|
|
21
|
+
temperature: number;
|
|
22
|
+
maxTokens: number;
|
|
23
|
+
task: LLMTask;
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=follow-up-generation.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"follow-up-generation.d.ts","sourceRoot":"","sources":["../../src/prompts/follow-up-generation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,yBAAyB,CAAC;AAChD,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,qFAAqF,CAAC;AAE/G,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,SAAS,EAAE,MAAM,CAAC;IAClB,aAAa,EAAE,MAAM,CAAC;CACvB,GAAG,MAAM,CAQT;AAED,eAAO,MAAM,YAAY;;;;;;EAEvB,CAAC;AAEH,MAAM,MAAM,wBAAwB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEpE,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export const PROMPT_ID = 'follow_up_generation';
|
|
4
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
5
|
+
export const systemPrompt = `You suggest follow-up questions based on a Q&A exchange. Return ONLY valid JSON.`;
|
|
6
|
+
export function buildUserPrompt(vars) {
|
|
7
|
+
return `Suggest 2-3 follow-up questions based on this exchange.
|
|
8
|
+
|
|
9
|
+
Question: ${vars.userQuery}
|
|
10
|
+
Answer: ${vars.answerSummary}
|
|
11
|
+
|
|
12
|
+
Respond with ONLY this JSON, no other text:
|
|
13
|
+
{"followUps":["<question 1>","<question 2>","<question 3>"]}`;
|
|
14
|
+
}
|
|
15
|
+
export const outputSchema = z.object({
|
|
16
|
+
followUps: z.array(z.string()).min(1).max(5),
|
|
17
|
+
});
|
|
18
|
+
export const config = {
|
|
19
|
+
provider: 'cloud',
|
|
20
|
+
model: 'fast',
|
|
21
|
+
temperature: 0.8,
|
|
22
|
+
maxTokens: 300,
|
|
23
|
+
task: LLMTask.CONVERSATIONAL_QUERY,
|
|
24
|
+
};
|
|
25
|
+
//# sourceMappingURL=follow-up-generation.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"follow-up-generation.js","sourceRoot":"","sources":["../../src/prompts/follow-up-generation.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,sBAAsB,CAAC;AAChD,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,kFAAkF,CAAC;AAE/G,MAAM,UAAU,eAAe,CAAC,IAG/B;IACC,OAAO;;YAEG,IAAI,CAAC,SAAS;UAChB,IAAI,CAAC,aAAa;;;6DAGiC,CAAC;AAC9D,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,SAAS,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;CAC7C,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,MAAe;IACtB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,OAAO,CAAC,oBAAoB;CACnC,CAAC"}
|
|
@@ -0,0 +1,41 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export declare const PROMPT_ID = "merge_detection";
|
|
4
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
5
|
+
export declare const systemPrompt = "You determine if two entities represent the same concept described differently. Return ONLY valid JSON.";
|
|
6
|
+
export declare function buildUserPrompt(vars: {
|
|
7
|
+
a: {
|
|
8
|
+
type: string;
|
|
9
|
+
name: string;
|
|
10
|
+
summary?: string;
|
|
11
|
+
sourceFile: string;
|
|
12
|
+
};
|
|
13
|
+
b: {
|
|
14
|
+
type: string;
|
|
15
|
+
name: string;
|
|
16
|
+
summary?: string;
|
|
17
|
+
sourceFile: string;
|
|
18
|
+
};
|
|
19
|
+
}): string;
|
|
20
|
+
export declare const outputSchema: z.ZodObject<{
|
|
21
|
+
shouldMerge: z.ZodBoolean;
|
|
22
|
+
confidence: z.ZodNumber;
|
|
23
|
+
reason: z.ZodString;
|
|
24
|
+
}, "strip", z.ZodTypeAny, {
|
|
25
|
+
confidence: number;
|
|
26
|
+
shouldMerge: boolean;
|
|
27
|
+
reason: string;
|
|
28
|
+
}, {
|
|
29
|
+
confidence: number;
|
|
30
|
+
shouldMerge: boolean;
|
|
31
|
+
reason: string;
|
|
32
|
+
}>;
|
|
33
|
+
export type MergeDetectionOutput = z.infer<typeof outputSchema>;
|
|
34
|
+
export declare const config: {
|
|
35
|
+
provider: "cloud";
|
|
36
|
+
model: "fast";
|
|
37
|
+
temperature: number;
|
|
38
|
+
maxTokens: number;
|
|
39
|
+
task: LLMTask;
|
|
40
|
+
};
|
|
41
|
+
//# sourceMappingURL=merge-detection.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-detection.d.ts","sourceRoot":"","sources":["../../src/prompts/merge-detection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,oBAAoB,CAAC;AAC3C,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,4GAA4G,CAAC;AAEtI,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;IACxE,CAAC,EAAE;QAAE,IAAI,EAAE,MAAM,CAAC;QAAC,IAAI,EAAE,MAAM,CAAC;QAAC,OAAO,CAAC,EAAE,MAAM,CAAC;QAAC,UAAU,EAAE,MAAM,CAAA;KAAE,CAAC;CACzE,GAAG,MAAM,CAYT;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;EAIvB,CAAC;AAEH,MAAM,MAAM,oBAAoB,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEhE,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export const PROMPT_ID = 'merge_detection';
|
|
4
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
5
|
+
export const systemPrompt = `You determine if two entities represent the same concept described differently. Return ONLY valid JSON.`;
|
|
6
|
+
export function buildUserPrompt(vars) {
|
|
7
|
+
return `Are these two entities the same thing described differently?
|
|
8
|
+
|
|
9
|
+
Entity A: [${vars.a.type}] ${vars.a.name}
|
|
10
|
+
Content: ${vars.a.summary ?? 'N/A'}
|
|
11
|
+
Source: ${vars.a.sourceFile}
|
|
12
|
+
|
|
13
|
+
Entity B: [${vars.b.type}] ${vars.b.name}
|
|
14
|
+
Content: ${vars.b.summary ?? 'N/A'}
|
|
15
|
+
Source: ${vars.b.sourceFile}
|
|
16
|
+
|
|
17
|
+
Return JSON: { "shouldMerge": boolean, "confidence": 0.0-1.0, "reason": "..." }`;
|
|
18
|
+
}
|
|
19
|
+
export const outputSchema = z.object({
|
|
20
|
+
shouldMerge: z.boolean(),
|
|
21
|
+
confidence: z.number().min(0).max(1),
|
|
22
|
+
reason: z.string(),
|
|
23
|
+
});
|
|
24
|
+
export const config = {
|
|
25
|
+
provider: 'cloud',
|
|
26
|
+
model: 'fast',
|
|
27
|
+
temperature: 0.1,
|
|
28
|
+
maxTokens: 500,
|
|
29
|
+
task: LLMTask.ENTITY_EXTRACTION,
|
|
30
|
+
};
|
|
31
|
+
//# sourceMappingURL=merge-detection.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"merge-detection.js","sourceRoot":"","sources":["../../src/prompts/merge-detection.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,iBAAiB,CAAC;AAC3C,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG,yGAAyG,CAAC;AAEtI,MAAM,UAAU,eAAe,CAAC,IAG/B;IACC,OAAO;;aAEI,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;aAC3B,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK;YACxB,IAAI,CAAC,CAAC,CAAC,UAAU;;aAEhB,IAAI,CAAC,CAAC,CAAC,IAAI,KAAK,IAAI,CAAC,CAAC,CAAC,IAAI;aAC3B,IAAI,CAAC,CAAC,CAAC,OAAO,IAAI,KAAK;YACxB,IAAI,CAAC,CAAC,CAAC,UAAU;;gFAEmD,CAAC;AACjF,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,WAAW,EAAE,CAAC,CAAC,OAAO,EAAE;IACxB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;IACpC,MAAM,EAAE,CAAC,CAAC,MAAM,EAAE;CACnB,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,MAAe;IACtB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,GAAG;IACd,IAAI,EAAE,OAAO,CAAC,iBAAiB;CAChC,CAAC"}
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export declare const PROMPT_ID = "relationship_inference";
|
|
4
|
+
export declare const PROMPT_VERSION = "1.0.0";
|
|
5
|
+
export declare const systemPrompt = "You are a knowledge graph relationship engine. Given a set of entities, identify\nmeaningful relationships between them. Relationships must be factual and\ngrounded in the content, not speculative.\n\nValid relationship types:\n- depends_on: A requires B to function\n- implements: A is an implementation of B\n- contradicts: A conflicts with B\n- evolved_from: A is a newer version/evolution of B\n- relates_to: A and B are connected (general)\n- uses: A uses/consumes B\n- constrains: A places limits on B\n- resolves: A addresses/solves B\n- documents: A describes/documents B\n- derived_from: A was created based on B\n\nIMPORTANT: Return ONLY valid JSON with this EXACT structure:\n{\"relationships\": [...]}\n\nIf no relationships found, return: {\"relationships\": []}\nNo markdown, no code fences, no explanations. Just JSON.";
|
|
6
|
+
export declare function buildUserPrompt(vars: {
|
|
7
|
+
entities: Array<{
|
|
8
|
+
id: string;
|
|
9
|
+
type: string;
|
|
10
|
+
name: string;
|
|
11
|
+
summary?: string;
|
|
12
|
+
sourceFile: string;
|
|
13
|
+
}>;
|
|
14
|
+
}): string;
|
|
15
|
+
export declare const outputSchema: z.ZodObject<{
|
|
16
|
+
relationships: z.ZodArray<z.ZodObject<{
|
|
17
|
+
type: z.ZodEnum<["depends_on", "implements", "contradicts", "evolved_from", "relates_to", "uses", "constrains", "resolves", "documents", "derived_from"]>;
|
|
18
|
+
sourceEntityId: z.ZodString;
|
|
19
|
+
targetEntityId: z.ZodString;
|
|
20
|
+
description: z.ZodString;
|
|
21
|
+
confidence: z.ZodNumber;
|
|
22
|
+
}, "strip", z.ZodTypeAny, {
|
|
23
|
+
type: "depends_on" | "implements" | "contradicts" | "evolved_from" | "relates_to" | "uses" | "constrains" | "resolves" | "documents" | "derived_from";
|
|
24
|
+
confidence: number;
|
|
25
|
+
sourceEntityId: string;
|
|
26
|
+
targetEntityId: string;
|
|
27
|
+
description: string;
|
|
28
|
+
}, {
|
|
29
|
+
type: "depends_on" | "implements" | "contradicts" | "evolved_from" | "relates_to" | "uses" | "constrains" | "resolves" | "documents" | "derived_from";
|
|
30
|
+
confidence: number;
|
|
31
|
+
sourceEntityId: string;
|
|
32
|
+
targetEntityId: string;
|
|
33
|
+
description: string;
|
|
34
|
+
}>, "many">;
|
|
35
|
+
}, "strip", z.ZodTypeAny, {
|
|
36
|
+
relationships: {
|
|
37
|
+
type: "depends_on" | "implements" | "contradicts" | "evolved_from" | "relates_to" | "uses" | "constrains" | "resolves" | "documents" | "derived_from";
|
|
38
|
+
confidence: number;
|
|
39
|
+
sourceEntityId: string;
|
|
40
|
+
targetEntityId: string;
|
|
41
|
+
description: string;
|
|
42
|
+
}[];
|
|
43
|
+
}, {
|
|
44
|
+
relationships: {
|
|
45
|
+
type: "depends_on" | "implements" | "contradicts" | "evolved_from" | "relates_to" | "uses" | "constrains" | "resolves" | "documents" | "derived_from";
|
|
46
|
+
confidence: number;
|
|
47
|
+
sourceEntityId: string;
|
|
48
|
+
targetEntityId: string;
|
|
49
|
+
description: string;
|
|
50
|
+
}[];
|
|
51
|
+
}>;
|
|
52
|
+
export type RelationshipInferenceOutput = z.infer<typeof outputSchema>;
|
|
53
|
+
export declare const config: {
|
|
54
|
+
provider: "cloud";
|
|
55
|
+
model: "fast";
|
|
56
|
+
temperature: number;
|
|
57
|
+
maxTokens: number;
|
|
58
|
+
task: LLMTask;
|
|
59
|
+
};
|
|
60
|
+
//# sourceMappingURL=relationship-inference.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relationship-inference.d.ts","sourceRoot":"","sources":["../../src/prompts/relationship-inference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,eAAO,MAAM,SAAS,2BAA2B,CAAC;AAClD,eAAO,MAAM,cAAc,UAAU,CAAC;AAEtC,eAAO,MAAM,YAAY,s0BAoBgC,CAAC;AAE1D,wBAAgB,eAAe,CAAC,IAAI,EAAE;IACpC,QAAQ,EAAE,KAAK,CAAC;QACd,EAAE,EAAE,MAAM,CAAC;QACX,IAAI,EAAE,MAAM,CAAC;QACb,IAAI,EAAE,MAAM,CAAC;QACb,OAAO,CAAC,EAAE,MAAM,CAAC;QACjB,UAAU,EAAE,MAAM,CAAC;KACpB,CAAC,CAAC;CACJ,GAAG,MAAM,CAqBT;AAED,eAAO,MAAM,YAAY;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;EAWvB,CAAC;AAEH,MAAM,MAAM,2BAA2B,GAAG,CAAC,CAAC,KAAK,CAAC,OAAO,YAAY,CAAC,CAAC;AAEvE,eAAO,MAAM,MAAM;;;;;;CAMlB,CAAC"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
import { z } from 'zod';
|
|
2
|
+
import { LLMTask } from '@cortex/core';
|
|
3
|
+
export const PROMPT_ID = 'relationship_inference';
|
|
4
|
+
export const PROMPT_VERSION = '1.0.0';
|
|
5
|
+
export const systemPrompt = `You are a knowledge graph relationship engine. Given a set of entities, identify
|
|
6
|
+
meaningful relationships between them. Relationships must be factual and
|
|
7
|
+
grounded in the content, not speculative.
|
|
8
|
+
|
|
9
|
+
Valid relationship types:
|
|
10
|
+
- depends_on: A requires B to function
|
|
11
|
+
- implements: A is an implementation of B
|
|
12
|
+
- contradicts: A conflicts with B
|
|
13
|
+
- evolved_from: A is a newer version/evolution of B
|
|
14
|
+
- relates_to: A and B are connected (general)
|
|
15
|
+
- uses: A uses/consumes B
|
|
16
|
+
- constrains: A places limits on B
|
|
17
|
+
- resolves: A addresses/solves B
|
|
18
|
+
- documents: A describes/documents B
|
|
19
|
+
- derived_from: A was created based on B
|
|
20
|
+
|
|
21
|
+
IMPORTANT: Return ONLY valid JSON with this EXACT structure:
|
|
22
|
+
{"relationships": [...]}
|
|
23
|
+
|
|
24
|
+
If no relationships found, return: {"relationships": []}
|
|
25
|
+
No markdown, no code fences, no explanations. Just JSON.`;
|
|
26
|
+
export function buildUserPrompt(vars) {
|
|
27
|
+
const entityList = vars.entities
|
|
28
|
+
.map((e) => `[${e.id}] ${e.type}: ${e.name}\n Summary: ${e.summary ?? 'N/A'}\n Source: ${e.sourceFile}`)
|
|
29
|
+
.join('\n\n');
|
|
30
|
+
return `Identify relationships between these entities.
|
|
31
|
+
|
|
32
|
+
ENTITIES:
|
|
33
|
+
${entityList}
|
|
34
|
+
|
|
35
|
+
For each relationship found:
|
|
36
|
+
- type: one of the valid relationship types
|
|
37
|
+
- sourceEntityId: the ID of the "from" entity
|
|
38
|
+
- targetEntityId: the ID of the "to" entity
|
|
39
|
+
- description: why this relationship exists (1 sentence)
|
|
40
|
+
- confidence: 0.0-1.0
|
|
41
|
+
|
|
42
|
+
Respond with ONLY this JSON structure:
|
|
43
|
+
{"relationships": [{"type": "...", "sourceEntityId": "...", "targetEntityId": "...", "description": "...", "confidence": 0.9}]}
|
|
44
|
+
|
|
45
|
+
If no relationships exist, respond: {"relationships": []}`;
|
|
46
|
+
}
|
|
47
|
+
export const outputSchema = z.object({
|
|
48
|
+
relationships: z.array(z.object({
|
|
49
|
+
type: z.enum([
|
|
50
|
+
'depends_on', 'implements', 'contradicts', 'evolved_from',
|
|
51
|
+
'relates_to', 'uses', 'constrains', 'resolves', 'documents', 'derived_from',
|
|
52
|
+
]),
|
|
53
|
+
sourceEntityId: z.string(),
|
|
54
|
+
targetEntityId: z.string(),
|
|
55
|
+
description: z.string(),
|
|
56
|
+
confidence: z.number().min(0).max(1),
|
|
57
|
+
})),
|
|
58
|
+
});
|
|
59
|
+
export const config = {
|
|
60
|
+
provider: 'cloud',
|
|
61
|
+
model: 'fast',
|
|
62
|
+
temperature: 0.1,
|
|
63
|
+
maxTokens: 8192,
|
|
64
|
+
task: LLMTask.RELATIONSHIP_INFERENCE,
|
|
65
|
+
};
|
|
66
|
+
//# sourceMappingURL=relationship-inference.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"relationship-inference.js","sourceRoot":"","sources":["../../src/prompts/relationship-inference.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AACxB,OAAO,EAAE,OAAO,EAAE,MAAM,cAAc,CAAC;AAEvC,MAAM,CAAC,MAAM,SAAS,GAAG,wBAAwB,CAAC;AAClD,MAAM,CAAC,MAAM,cAAc,GAAG,OAAO,CAAC;AAEtC,MAAM,CAAC,MAAM,YAAY,GAAG;;;;;;;;;;;;;;;;;;;;yDAoB6B,CAAC;AAE1D,MAAM,UAAU,eAAe,CAAC,IAQ/B;IACC,MAAM,UAAU,GAAG,IAAI,CAAC,QAAQ;SAC7B,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,IAAI,CAAC,CAAC,EAAE,KAAK,CAAC,CAAC,IAAI,KAAK,CAAC,CAAC,IAAI,gBAAgB,CAAC,CAAC,OAAO,IAAI,KAAK,eAAe,CAAC,CAAC,UAAU,EAAE,CAAC;SACzG,IAAI,CAAC,MAAM,CAAC,CAAC;IAEhB,OAAO;;;EAGP,UAAU;;;;;;;;;;;;0DAY8C,CAAC;AAC3D,CAAC;AAED,MAAM,CAAC,MAAM,YAAY,GAAG,CAAC,CAAC,MAAM,CAAC;IACnC,aAAa,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,CAAC;QAC9B,IAAI,EAAE,CAAC,CAAC,IAAI,CAAC;YACX,YAAY,EAAE,YAAY,EAAE,aAAa,EAAE,cAAc;YACzD,YAAY,EAAE,MAAM,EAAE,YAAY,EAAE,UAAU,EAAE,WAAW,EAAE,cAAc;SAC5E,CAAC;QACF,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;QAC1B,cAAc,EAAE,CAAC,CAAC,MAAM,EAAE;QAC1B,WAAW,EAAE,CAAC,CAAC,MAAM,EAAE;QACvB,UAAU,EAAE,CAAC,CAAC,MAAM,EAAE,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC;KACrC,CAAC,CAAC;CACJ,CAAC,CAAC;AAIH,MAAM,CAAC,MAAM,MAAM,GAAG;IACpB,QAAQ,EAAE,OAAgB;IAC1B,KAAK,EAAE,MAAe;IACtB,WAAW,EAAE,GAAG;IAChB,SAAS,EAAE,IAAI;IACf,IAAI,EAAE,OAAO,CAAC,sBAAsB;CACrC,CAAC"}
|