phaibel 4.0.7
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/README.md +245 -0
- package/dist/agentary.txt +82 -0
- package/dist/client/index.d.ts +135 -0
- package/dist/client/index.d.ts.map +1 -0
- package/dist/client/index.js +260 -0
- package/dist/client/index.js.map +1 -0
- package/dist/commands/cal.d.ts +31 -0
- package/dist/commands/cal.d.ts.map +1 -0
- package/dist/commands/cal.js +281 -0
- package/dist/commands/cal.js.map +1 -0
- package/dist/commands/chat.d.ts +3 -0
- package/dist/commands/chat.d.ts.map +1 -0
- package/dist/commands/chat.js +762 -0
- package/dist/commands/chat.js.map +1 -0
- package/dist/commands/config.d.ts +4 -0
- package/dist/commands/config.d.ts.map +1 -0
- package/dist/commands/config.js +184 -0
- package/dist/commands/config.js.map +1 -0
- package/dist/commands/cron.d.ts +4 -0
- package/dist/commands/cron.d.ts.map +1 -0
- package/dist/commands/cron.js +165 -0
- package/dist/commands/cron.js.map +1 -0
- package/dist/commands/entity-type.d.ts +3 -0
- package/dist/commands/entity-type.d.ts.map +1 -0
- package/dist/commands/entity-type.js +279 -0
- package/dist/commands/entity-type.js.map +1 -0
- package/dist/commands/entity.d.ts +3 -0
- package/dist/commands/entity.d.ts.map +1 -0
- package/dist/commands/entity.js +262 -0
- package/dist/commands/entity.js.map +1 -0
- package/dist/commands/event.d.ts +4 -0
- package/dist/commands/event.d.ts.map +1 -0
- package/dist/commands/event.js +515 -0
- package/dist/commands/event.js.map +1 -0
- package/dist/commands/feral.d.ts +3 -0
- package/dist/commands/feral.d.ts.map +1 -0
- package/dist/commands/feral.js +272 -0
- package/dist/commands/feral.js.map +1 -0
- package/dist/commands/goal.d.ts +4 -0
- package/dist/commands/goal.d.ts.map +1 -0
- package/dist/commands/goal.js +14 -0
- package/dist/commands/goal.js.map +1 -0
- package/dist/commands/inbox.d.ts +13 -0
- package/dist/commands/inbox.d.ts.map +1 -0
- package/dist/commands/inbox.js +210 -0
- package/dist/commands/inbox.js.map +1 -0
- package/dist/commands/init.d.ts +4 -0
- package/dist/commands/init.d.ts.map +1 -0
- package/dist/commands/init.js +154 -0
- package/dist/commands/init.js.map +1 -0
- package/dist/commands/interview.d.ts +14 -0
- package/dist/commands/interview.d.ts.map +1 -0
- package/dist/commands/interview.js +343 -0
- package/dist/commands/interview.js.map +1 -0
- package/dist/commands/list.d.ts +11 -0
- package/dist/commands/list.d.ts.map +1 -0
- package/dist/commands/list.js +168 -0
- package/dist/commands/list.js.map +1 -0
- package/dist/commands/note.d.ts +4 -0
- package/dist/commands/note.d.ts.map +1 -0
- package/dist/commands/note.js +548 -0
- package/dist/commands/note.js.map +1 -0
- package/dist/commands/pamp.d.ts +4 -0
- package/dist/commands/pamp.d.ts.map +1 -0
- package/dist/commands/pamp.js +323 -0
- package/dist/commands/pamp.js.map +1 -0
- package/dist/commands/person.d.ts +4 -0
- package/dist/commands/person.d.ts.map +1 -0
- package/dist/commands/person.js +185 -0
- package/dist/commands/person.js.map +1 -0
- package/dist/commands/project.d.ts +4 -0
- package/dist/commands/project.d.ts.map +1 -0
- package/dist/commands/project.js +70 -0
- package/dist/commands/project.js.map +1 -0
- package/dist/commands/recurrence.d.ts +17 -0
- package/dist/commands/recurrence.d.ts.map +1 -0
- package/dist/commands/recurrence.js +496 -0
- package/dist/commands/recurrence.js.map +1 -0
- package/dist/commands/remember.d.ts +4 -0
- package/dist/commands/remember.d.ts.map +1 -0
- package/dist/commands/remember.js +70 -0
- package/dist/commands/remember.js.map +1 -0
- package/dist/commands/research.d.ts +4 -0
- package/dist/commands/research.d.ts.map +1 -0
- package/dist/commands/research.js +14 -0
- package/dist/commands/research.js.map +1 -0
- package/dist/commands/service.d.ts +14 -0
- package/dist/commands/service.d.ts.map +1 -0
- package/dist/commands/service.js +313 -0
- package/dist/commands/service.js.map +1 -0
- package/dist/commands/setup.d.ts +4 -0
- package/dist/commands/setup.d.ts.map +1 -0
- package/dist/commands/setup.js +42 -0
- package/dist/commands/setup.js.map +1 -0
- package/dist/commands/shell.d.ts +3 -0
- package/dist/commands/shell.d.ts.map +1 -0
- package/dist/commands/shell.js +346 -0
- package/dist/commands/shell.js.map +1 -0
- package/dist/commands/skill.d.ts +4 -0
- package/dist/commands/skill.d.ts.map +1 -0
- package/dist/commands/skill.js +84 -0
- package/dist/commands/skill.js.map +1 -0
- package/dist/commands/sync.d.ts +4 -0
- package/dist/commands/sync.d.ts.map +1 -0
- package/dist/commands/sync.js +68 -0
- package/dist/commands/sync.js.map +1 -0
- package/dist/commands/time.d.ts +3 -0
- package/dist/commands/time.d.ts.map +1 -0
- package/dist/commands/time.js +12 -0
- package/dist/commands/time.js.map +1 -0
- package/dist/commands/today.d.ts +4 -0
- package/dist/commands/today.d.ts.map +1 -0
- package/dist/commands/today.js +112 -0
- package/dist/commands/today.js.map +1 -0
- package/dist/commands/todo.d.ts +4 -0
- package/dist/commands/todo.d.ts.map +1 -0
- package/dist/commands/todo.js +678 -0
- package/dist/commands/todo.js.map +1 -0
- package/dist/commands/todont.d.ts +19 -0
- package/dist/commands/todont.d.ts.map +1 -0
- package/dist/commands/todont.js +209 -0
- package/dist/commands/todont.js.map +1 -0
- package/dist/commands/week.d.ts +4 -0
- package/dist/commands/week.d.ts.map +1 -0
- package/dist/commands/week.js +267 -0
- package/dist/commands/week.js.map +1 -0
- package/dist/config.d.ts +16 -0
- package/dist/config.d.ts.map +1 -0
- package/dist/config.js +141 -0
- package/dist/config.js.map +1 -0
- package/dist/context/mentions.d.ts +21 -0
- package/dist/context/mentions.d.ts.map +1 -0
- package/dist/context/mentions.js +146 -0
- package/dist/context/mentions.js.map +1 -0
- package/dist/context/reader.d.ts +54 -0
- package/dist/context/reader.d.ts.map +1 -0
- package/dist/context/reader.js +133 -0
- package/dist/context/reader.js.map +1 -0
- package/dist/dobbai.txt +55 -0
- package/dist/dobbi.txt +55 -0
- package/dist/dobbie-bundle.cjs +73313 -0
- package/dist/dobbie.txt +55 -0
- package/dist/entities/embedding-index.d.ts +26 -0
- package/dist/entities/embedding-index.d.ts.map +1 -0
- package/dist/entities/embedding-index.js +200 -0
- package/dist/entities/embedding-index.js.map +1 -0
- package/dist/entities/entity-index.d.ts +74 -0
- package/dist/entities/entity-index.d.ts.map +1 -0
- package/dist/entities/entity-index.js +369 -0
- package/dist/entities/entity-index.js.map +1 -0
- package/dist/entities/entity-summary.d.ts +6 -0
- package/dist/entities/entity-summary.d.ts.map +1 -0
- package/dist/entities/entity-summary.js +36 -0
- package/dist/entities/entity-summary.js.map +1 -0
- package/dist/entities/entity-type-config.d.ts +83 -0
- package/dist/entities/entity-type-config.d.ts.map +1 -0
- package/dist/entities/entity-type-config.js +134 -0
- package/dist/entities/entity-type-config.js.map +1 -0
- package/dist/entities/entity-types-defaults.d.ts +5 -0
- package/dist/entities/entity-types-defaults.d.ts.map +1 -0
- package/dist/entities/entity-types-defaults.js +59 -0
- package/dist/entities/entity-types-defaults.js.map +1 -0
- package/dist/entities/entity-validator.d.ts +21 -0
- package/dist/entities/entity-validator.d.ts.map +1 -0
- package/dist/entities/entity-validator.js +102 -0
- package/dist/entities/entity-validator.js.map +1 -0
- package/dist/entities/entity.d.ts +180 -0
- package/dist/entities/entity.d.ts.map +1 -0
- package/dist/entities/entity.js +357 -0
- package/dist/entities/entity.js.map +1 -0
- package/dist/entities/spawner.d.ts +67 -0
- package/dist/entities/spawner.d.ts.map +1 -0
- package/dist/entities/spawner.js +294 -0
- package/dist/entities/spawner.js.map +1 -0
- package/dist/feral/agent/agent-brain.d.ts +22 -0
- package/dist/feral/agent/agent-brain.d.ts.map +1 -0
- package/dist/feral/agent/agent-brain.js +5 -0
- package/dist/feral/agent/agent-brain.js.map +1 -0
- package/dist/feral/agent/agent.d.ts +27 -0
- package/dist/feral/agent/agent.d.ts.map +1 -0
- package/dist/feral/agent/agent.js +12 -0
- package/dist/feral/agent/agent.js.map +1 -0
- package/dist/feral/agent/chatgpt-brain.d.ts +14 -0
- package/dist/feral/agent/chatgpt-brain.d.ts.map +1 -0
- package/dist/feral/agent/chatgpt-brain.js +73 -0
- package/dist/feral/agent/chatgpt-brain.js.map +1 -0
- package/dist/feral/agent/index.d.ts +10 -0
- package/dist/feral/agent/index.d.ts.map +1 -0
- package/dist/feral/agent/index.js +13 -0
- package/dist/feral/agent/index.js.map +1 -0
- package/dist/feral/agent/model-schema.d.ts +37 -0
- package/dist/feral/agent/model-schema.d.ts.map +1 -0
- package/dist/feral/agent/model-schema.js +43 -0
- package/dist/feral/agent/model-schema.js.map +1 -0
- package/dist/feral/agent/process-agent.d.ts +20 -0
- package/dist/feral/agent/process-agent.d.ts.map +1 -0
- package/dist/feral/agent/process-agent.js +81 -0
- package/dist/feral/agent/process-agent.js.map +1 -0
- package/dist/feral/agent/protoflow-agent.d.ts +20 -0
- package/dist/feral/agent/protoflow-agent.d.ts.map +1 -0
- package/dist/feral/agent/protoflow-agent.js +99 -0
- package/dist/feral/agent/protoflow-agent.js.map +1 -0
- package/dist/feral/agent/render-prompt.d.ts +12 -0
- package/dist/feral/agent/render-prompt.d.ts.map +1 -0
- package/dist/feral/agent/render-prompt.js +26 -0
- package/dist/feral/agent/render-prompt.js.map +1 -0
- package/dist/feral/bootstrap.d.ts +31 -0
- package/dist/feral/bootstrap.d.ts.map +1 -0
- package/dist/feral/bootstrap.js +241 -0
- package/dist/feral/bootstrap.js.map +1 -0
- package/dist/feral/catalog/agent-catalog-source.d.ts +9 -0
- package/dist/feral/catalog/agent-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/agent-catalog-source.js +115 -0
- package/dist/feral/catalog/agent-catalog-source.js.map +1 -0
- package/dist/feral/catalog/built-in-catalog-source.d.ts +14 -0
- package/dist/feral/catalog/built-in-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/built-in-catalog-source.js +25 -0
- package/dist/feral/catalog/built-in-catalog-source.js.map +1 -0
- package/dist/feral/catalog/catalog-node.d.ts +22 -0
- package/dist/feral/catalog/catalog-node.d.ts.map +1 -0
- package/dist/feral/catalog/catalog-node.js +14 -0
- package/dist/feral/catalog/catalog-node.js.map +1 -0
- package/dist/feral/catalog/catalog.d.ts +17 -0
- package/dist/feral/catalog/catalog.d.ts.map +1 -0
- package/dist/feral/catalog/catalog.js +27 -0
- package/dist/feral/catalog/catalog.js.map +1 -0
- package/dist/feral/catalog/entity-catalog-source.d.ts +13 -0
- package/dist/feral/catalog/entity-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/entity-catalog-source.js +327 -0
- package/dist/feral/catalog/entity-catalog-source.js.map +1 -0
- package/dist/feral/catalog/feral-catalog-config.d.ts +26 -0
- package/dist/feral/catalog/feral-catalog-config.d.ts.map +1 -0
- package/dist/feral/catalog/feral-catalog-config.js +32 -0
- package/dist/feral/catalog/feral-catalog-config.js.map +1 -0
- package/dist/feral/catalog/introspect-catalog-source.d.ts +5 -0
- package/dist/feral/catalog/introspect-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/introspect-catalog-source.js +83 -0
- package/dist/feral/catalog/introspect-catalog-source.js.map +1 -0
- package/dist/feral/catalog/json-catalog-source.d.ts +14 -0
- package/dist/feral/catalog/json-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/json-catalog-source.js +26 -0
- package/dist/feral/catalog/json-catalog-source.js.map +1 -0
- package/dist/feral/catalog/mcp-catalog-source.d.ts +13 -0
- package/dist/feral/catalog/mcp-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/mcp-catalog-source.js +28 -0
- package/dist/feral/catalog/mcp-catalog-source.js.map +1 -0
- package/dist/feral/catalog/output-catalog-source.d.ts +5 -0
- package/dist/feral/catalog/output-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/output-catalog-source.js +32 -0
- package/dist/feral/catalog/output-catalog-source.js.map +1 -0
- package/dist/feral/catalog/pamp-catalog-source.d.ts +9 -0
- package/dist/feral/catalog/pamp-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/pamp-catalog-source.js +42 -0
- package/dist/feral/catalog/pamp-catalog-source.js.map +1 -0
- package/dist/feral/catalog/slack-catalog-source.d.ts +10 -0
- package/dist/feral/catalog/slack-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/slack-catalog-source.js +96 -0
- package/dist/feral/catalog/slack-catalog-source.js.map +1 -0
- package/dist/feral/catalog/system-catalog-source.d.ts +5 -0
- package/dist/feral/catalog/system-catalog-source.d.ts.map +1 -0
- package/dist/feral/catalog/system-catalog-source.js +74 -0
- package/dist/feral/catalog/system-catalog-source.js.map +1 -0
- package/dist/feral/configuration/configuration-description.d.ts +24 -0
- package/dist/feral/configuration/configuration-description.d.ts.map +1 -0
- package/dist/feral/configuration/configuration-description.js +5 -0
- package/dist/feral/configuration/configuration-description.js.map +1 -0
- package/dist/feral/configuration/configuration-manager.d.ts +12 -0
- package/dist/feral/configuration/configuration-manager.d.ts.map +1 -0
- package/dist/feral/configuration/configuration-manager.js +41 -0
- package/dist/feral/configuration/configuration-manager.js.map +1 -0
- package/dist/feral/configuration/configuration-value.d.ts +16 -0
- package/dist/feral/configuration/configuration-value.d.ts.map +1 -0
- package/dist/feral/configuration/configuration-value.js +22 -0
- package/dist/feral/configuration/configuration-value.js.map +1 -0
- package/dist/feral/context/context.d.ts +28 -0
- package/dist/feral/context/context.d.ts.map +1 -0
- package/dist/feral/context/context.js +44 -0
- package/dist/feral/context/context.js.map +1 -0
- package/dist/feral/engine/process-engine.d.ts +23 -0
- package/dist/feral/engine/process-engine.d.ts.map +1 -0
- package/dist/feral/engine/process-engine.js +134 -0
- package/dist/feral/engine/process-engine.js.map +1 -0
- package/dist/feral/errors.d.ts +28 -0
- package/dist/feral/errors.d.ts.map +1 -0
- package/dist/feral/errors.js +58 -0
- package/dist/feral/errors.js.map +1 -0
- package/dist/feral/events/event-dispatcher.d.ts +9 -0
- package/dist/feral/events/event-dispatcher.d.ts.map +1 -0
- package/dist/feral/events/event-dispatcher.js +27 -0
- package/dist/feral/events/event-dispatcher.js.map +1 -0
- package/dist/feral/events/events.d.ts +41 -0
- package/dist/feral/events/events.d.ts.map +1 -0
- package/dist/feral/events/events.js +5 -0
- package/dist/feral/events/events.js.map +1 -0
- package/dist/feral/events/subscribers/cycle-detection-subscriber.d.ts +7 -0
- package/dist/feral/events/subscribers/cycle-detection-subscriber.d.ts.map +1 -0
- package/dist/feral/events/subscribers/cycle-detection-subscriber.js +21 -0
- package/dist/feral/events/subscribers/cycle-detection-subscriber.js.map +1 -0
- package/dist/feral/events/subscribers/logger-subscriber.d.ts +6 -0
- package/dist/feral/events/subscribers/logger-subscriber.d.ts.map +1 -0
- package/dist/feral/events/subscribers/logger-subscriber.js +23 -0
- package/dist/feral/events/subscribers/logger-subscriber.js.map +1 -0
- package/dist/feral/events/subscribers/profiler-subscriber.d.ts +8 -0
- package/dist/feral/events/subscribers/profiler-subscriber.d.ts.map +1 -0
- package/dist/feral/events/subscribers/profiler-subscriber.js +27 -0
- package/dist/feral/events/subscribers/profiler-subscriber.js.map +1 -0
- package/dist/feral/feral-tool-registry.d.ts +18 -0
- package/dist/feral/feral-tool-registry.d.ts.map +1 -0
- package/dist/feral/feral-tool-registry.js +78 -0
- package/dist/feral/feral-tool-registry.js.map +1 -0
- package/dist/feral/index.d.ts +88 -0
- package/dist/feral/index.d.ts.map +1 -0
- package/dist/feral/index.js +89 -0
- package/dist/feral/index.js.map +1 -0
- package/dist/feral/node-code/abstract-node-code.d.ts +38 -0
- package/dist/feral/node-code/abstract-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/abstract-node-code.js +127 -0
- package/dist/feral/node-code/abstract-node-code.js.map +1 -0
- package/dist/feral/node-code/data/calculation-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/calculation-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/calculation-node-code.js +65 -0
- package/dist/feral/node-code/data/calculation-node-code.js.map +1 -0
- package/dist/feral/node-code/data/clean-llm-json-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/clean-llm-json-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/clean-llm-json-node-code.js +47 -0
- package/dist/feral/node-code/data/clean-llm-json-node-code.js.map +1 -0
- package/dist/feral/node-code/data/counter-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/counter-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/counter-node-code.js +29 -0
- package/dist/feral/node-code/data/counter-node-code.js.map +1 -0
- package/dist/feral/node-code/data/http-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/http-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/http-node-code.js +66 -0
- package/dist/feral/node-code/data/http-node-code.js.map +1 -0
- package/dist/feral/node-code/data/json-decode-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/json-decode-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/json-decode-node-code.js +34 -0
- package/dist/feral/node-code/data/json-decode-node-code.js.map +1 -0
- package/dist/feral/node-code/data/json-encode-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/json-encode-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/json-encode-node-code.js +30 -0
- package/dist/feral/node-code/data/json-encode-node-code.js.map +1 -0
- package/dist/feral/node-code/data/llm-chat-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/llm-chat-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/llm-chat-node-code.js +93 -0
- package/dist/feral/node-code/data/llm-chat-node-code.js.map +1 -0
- package/dist/feral/node-code/data/log-node-code.d.ts +13 -0
- package/dist/feral/node-code/data/log-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/log-node-code.js +44 -0
- package/dist/feral/node-code/data/log-node-code.js.map +1 -0
- package/dist/feral/node-code/data/random-value-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/random-value-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/random-value-node-code.js +43 -0
- package/dist/feral/node-code/data/random-value-node-code.js.map +1 -0
- package/dist/feral/node-code/data/read-file-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/read-file-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/read-file-node-code.js +50 -0
- package/dist/feral/node-code/data/read-file-node-code.js.map +1 -0
- package/dist/feral/node-code/data/set-context-table-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/set-context-table-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/set-context-table-node-code.js +34 -0
- package/dist/feral/node-code/data/set-context-table-node-code.js.map +1 -0
- package/dist/feral/node-code/data/set-context-value-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/set-context-value-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/set-context-value-node-code.js +43 -0
- package/dist/feral/node-code/data/set-context-value-node-code.js.map +1 -0
- package/dist/feral/node-code/data/weather-node-code.d.ts +11 -0
- package/dist/feral/node-code/data/weather-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/data/weather-node-code.js +88 -0
- package/dist/feral/node-code/data/weather-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/complete-entity-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/complete-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/complete-entity-node-code.js +72 -0
- package/dist/feral/node-code/entity/complete-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/create-entity-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/create-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/create-entity-node-code.js +109 -0
- package/dist/feral/node-code/entity/create-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/create-entity-type-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/create-entity-type-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/create-entity-type-node-code.js +131 -0
- package/dist/feral/node-code/entity/create-entity-type-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/create-recurring-task-node-code.d.ts +15 -0
- package/dist/feral/node-code/entity/create-recurring-task-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/create-recurring-task-node-code.js +146 -0
- package/dist/feral/node-code/entity/create-recurring-task-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/delete-entity-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/delete-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/delete-entity-node-code.js +60 -0
- package/dist/feral/node-code/entity/delete-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/delete-entity-type-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/delete-entity-type-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/delete-entity-type-node-code.js +51 -0
- package/dist/feral/node-code/entity/delete-entity-type-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/find-entity-node-code.d.ts +13 -0
- package/dist/feral/node-code/entity/find-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/find-entity-node-code.js +59 -0
- package/dist/feral/node-code/entity/find-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/link-entities-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/link-entities-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/link-entities-node-code.js +64 -0
- package/dist/feral/node-code/entity/link-entities-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/list-entities-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/list-entities-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/list-entities-node-code.js +44 -0
- package/dist/feral/node-code/entity/list-entities-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/list-entity-types-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/list-entity-types-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/list-entity-types-node-code.js +22 -0
- package/dist/feral/node-code/entity/list-entity-types-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/load-vault-context-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/load-vault-context-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/load-vault-context-node-code.js +66 -0
- package/dist/feral/node-code/entity/load-vault-context-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/search-entities-node-code.d.ts +13 -0
- package/dist/feral/node-code/entity/search-entities-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/search-entities-node-code.js +66 -0
- package/dist/feral/node-code/entity/search-entities-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/set-entity-field-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/set-entity-field-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/set-entity-field-node-code.js +65 -0
- package/dist/feral/node-code/entity/set-entity-field-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/sort-entities-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/sort-entities-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/sort-entities-node-code.js +67 -0
- package/dist/feral/node-code/entity/sort-entities-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/update-entity-node-code.d.ts +13 -0
- package/dist/feral/node-code/entity/update-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/update-entity-node-code.js +131 -0
- package/dist/feral/node-code/entity/update-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/entity/update-entity-type-node-code.d.ts +11 -0
- package/dist/feral/node-code/entity/update-entity-type-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/entity/update-entity-type-node-code.js +118 -0
- package/dist/feral/node-code/entity/update-entity-type-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/array-iterator-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/array-iterator-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/array-iterator-node-code.js +91 -0
- package/dist/feral/node-code/flow/array-iterator-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/comparator-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/comparator-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/comparator-node-code.js +55 -0
- package/dist/feral/node-code/flow/comparator-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/context-value-result-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/context-value-result-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/context-value-result-node-code.js +22 -0
- package/dist/feral/node-code/flow/context-value-result-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/noop-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/noop-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/noop-node-code.js +19 -0
- package/dist/feral/node-code/flow/noop-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/start-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/start-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/start-node-code.js +19 -0
- package/dist/feral/node-code/flow/start-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/stop-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/stop-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/stop-node-code.js +19 -0
- package/dist/feral/node-code/flow/stop-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/sub-process-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/sub-process-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/sub-process-node-code.js +53 -0
- package/dist/feral/node-code/flow/sub-process-node-code.js.map +1 -0
- package/dist/feral/node-code/flow/throw-exception-node-code.d.ts +11 -0
- package/dist/feral/node-code/flow/throw-exception-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/flow/throw-exception-node-code.js +20 -0
- package/dist/feral/node-code/flow/throw-exception-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/data-synthesis-prep-node-code.d.ts +15 -0
- package/dist/feral/node-code/genai/data-synthesis-prep-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/data-synthesis-prep-node-code.js +44 -0
- package/dist/feral/node-code/genai/data-synthesis-prep-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/generate-html-node-code.d.ts +13 -0
- package/dist/feral/node-code/genai/generate-html-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/generate-html-node-code.js +47 -0
- package/dist/feral/node-code/genai/generate-html-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/generate-markdown-node-code.d.ts +27 -0
- package/dist/feral/node-code/genai/generate-markdown-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/generate-markdown-node-code.js +81 -0
- package/dist/feral/node-code/genai/generate-markdown-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/hydrate-model-node-code.d.ts +21 -0
- package/dist/feral/node-code/genai/hydrate-model-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/hydrate-model-node-code.js +83 -0
- package/dist/feral/node-code/genai/hydrate-model-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/merge-strings-node-code.d.ts +14 -0
- package/dist/feral/node-code/genai/merge-strings-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/merge-strings-node-code.js +34 -0
- package/dist/feral/node-code/genai/merge-strings-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/model-to-output-node-code.d.ts +18 -0
- package/dist/feral/node-code/genai/model-to-output-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/model-to-output-node-code.js +49 -0
- package/dist/feral/node-code/genai/model-to-output-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/openai-node-code.d.ts +14 -0
- package/dist/feral/node-code/genai/openai-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/openai-node-code.js +66 -0
- package/dist/feral/node-code/genai/openai-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/write-entity-node-code.d.ts +22 -0
- package/dist/feral/node-code/genai/write-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/write-entity-node-code.js +46 -0
- package/dist/feral/node-code/genai/write-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/write-file-node-code.d.ts +13 -0
- package/dist/feral/node-code/genai/write-file-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/write-file-node-code.js +59 -0
- package/dist/feral/node-code/genai/write-file-node-code.js.map +1 -0
- package/dist/feral/node-code/genai/write-to-redis-node-code.d.ts +23 -0
- package/dist/feral/node-code/genai/write-to-redis-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/genai/write-to-redis-node-code.js +48 -0
- package/dist/feral/node-code/genai/write-to-redis-node-code.js.map +1 -0
- package/dist/feral/node-code/input/prompt-input-node-code.d.ts +11 -0
- package/dist/feral/node-code/input/prompt-input-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/input/prompt-input-node-code.js +70 -0
- package/dist/feral/node-code/input/prompt-input-node-code.js.map +1 -0
- package/dist/feral/node-code/input/prompt-select-node-code.d.ts +11 -0
- package/dist/feral/node-code/input/prompt-select-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/input/prompt-select-node-code.js +65 -0
- package/dist/feral/node-code/input/prompt-select-node-code.js.map +1 -0
- package/dist/feral/node-code/mcp/mcp-call-tool-node-code.d.ts +12 -0
- package/dist/feral/node-code/mcp/mcp-call-tool-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/mcp/mcp-call-tool-node-code.js +44 -0
- package/dist/feral/node-code/mcp/mcp-call-tool-node-code.js.map +1 -0
- package/dist/feral/node-code/node-code-factory.d.ts +20 -0
- package/dist/feral/node-code/node-code-factory.d.ts.map +1 -0
- package/dist/feral/node-code/node-code-factory.js +32 -0
- package/dist/feral/node-code/node-code-factory.js.map +1 -0
- package/dist/feral/node-code/node-code.d.ts +22 -0
- package/dist/feral/node-code/node-code.d.ts.map +1 -0
- package/dist/feral/node-code/node-code.js +9 -0
- package/dist/feral/node-code/node-code.js.map +1 -0
- package/dist/feral/node-code/output/agent-speak-node-code.d.ts +11 -0
- package/dist/feral/node-code/output/agent-speak-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/output/agent-speak-node-code.js +56 -0
- package/dist/feral/node-code/output/agent-speak-node-code.js.map +1 -0
- package/dist/feral/node-code/output/dobbai-speak-node-code.d.ts +11 -0
- package/dist/feral/node-code/output/dobbai-speak-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/output/dobbai-speak-node-code.js +56 -0
- package/dist/feral/node-code/output/dobbai-speak-node-code.js.map +1 -0
- package/dist/feral/node-code/output/dobbi-speak-node-code.d.ts +15 -0
- package/dist/feral/node-code/output/dobbi-speak-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/output/dobbi-speak-node-code.js +60 -0
- package/dist/feral/node-code/output/dobbi-speak-node-code.js.map +1 -0
- package/dist/feral/node-code/output/dobbie-speak-node-code.d.ts +11 -0
- package/dist/feral/node-code/output/dobbie-speak-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/output/dobbie-speak-node-code.js +56 -0
- package/dist/feral/node-code/output/dobbie-speak-node-code.js.map +1 -0
- package/dist/feral/node-code/pamp/pamp-await-reply-node-code.d.ts +11 -0
- package/dist/feral/node-code/pamp/pamp-await-reply-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/pamp/pamp-await-reply-node-code.js +51 -0
- package/dist/feral/node-code/pamp/pamp-await-reply-node-code.js.map +1 -0
- package/dist/feral/node-code/pamp/pamp-check-inbox-node-code.d.ts +11 -0
- package/dist/feral/node-code/pamp/pamp-check-inbox-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/pamp/pamp-check-inbox-node-code.js +37 -0
- package/dist/feral/node-code/pamp/pamp-check-inbox-node-code.js.map +1 -0
- package/dist/feral/node-code/pamp/pamp-send-node-code.d.ts +11 -0
- package/dist/feral/node-code/pamp/pamp-send-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/pamp/pamp-send-node-code.js +48 -0
- package/dist/feral/node-code/pamp/pamp-send-node-code.js.map +1 -0
- package/dist/feral/node-code/pamp/pamp-share-entity-node-code.d.ts +11 -0
- package/dist/feral/node-code/pamp/pamp-share-entity-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/pamp/pamp-share-entity-node-code.js +45 -0
- package/dist/feral/node-code/pamp/pamp-share-entity-node-code.js.map +1 -0
- package/dist/feral/node-code/slack/slack-block-builder-node-code.d.ts +18 -0
- package/dist/feral/node-code/slack/slack-block-builder-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/slack/slack-block-builder-node-code.js +100 -0
- package/dist/feral/node-code/slack/slack-block-builder-node-code.js.map +1 -0
- package/dist/feral/node-code/slack/slack-post-webhook-node-code.d.ts +13 -0
- package/dist/feral/node-code/slack/slack-post-webhook-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/slack/slack-post-webhook-node-code.js +47 -0
- package/dist/feral/node-code/slack/slack-post-webhook-node-code.js.map +1 -0
- package/dist/feral/node-code/slack/slack-process-slash-command-node-code.d.ts +14 -0
- package/dist/feral/node-code/slack/slack-process-slash-command-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/slack/slack-process-slash-command-node-code.js +39 -0
- package/dist/feral/node-code/slack/slack-process-slash-command-node-code.js.map +1 -0
- package/dist/feral/node-code/system/cli-command-node-code.d.ts +11 -0
- package/dist/feral/node-code/system/cli-command-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/system/cli-command-node-code.js +50 -0
- package/dist/feral/node-code/system/cli-command-node-code.js.map +1 -0
- package/dist/feral/node-code/system/introspect-node-code.d.ts +12 -0
- package/dist/feral/node-code/system/introspect-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/system/introspect-node-code.js +98 -0
- package/dist/feral/node-code/system/introspect-node-code.js.map +1 -0
- package/dist/feral/node-code/system/list-catalog-nodes-node-code.d.ts +10 -0
- package/dist/feral/node-code/system/list-catalog-nodes-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/system/list-catalog-nodes-node-code.js +33 -0
- package/dist/feral/node-code/system/list-catalog-nodes-node-code.js.map +1 -0
- package/dist/feral/node-code/system/list-processes-node-code.d.ts +10 -0
- package/dist/feral/node-code/system/list-processes-node-code.d.ts.map +1 -0
- package/dist/feral/node-code/system/list-processes-node-code.js +22 -0
- package/dist/feral/node-code/system/list-processes-node-code.js.map +1 -0
- package/dist/feral/process/edge.d.ts +18 -0
- package/dist/feral/process/edge.d.ts.map +1 -0
- package/dist/feral/process/edge.js +32 -0
- package/dist/feral/process/edge.js.map +1 -0
- package/dist/feral/process/json-process-source.d.ts +18 -0
- package/dist/feral/process/json-process-source.d.ts.map +1 -0
- package/dist/feral/process/json-process-source.js +55 -0
- package/dist/feral/process/json-process-source.js.map +1 -0
- package/dist/feral/process/node.d.ts +14 -0
- package/dist/feral/process/node.d.ts.map +1 -0
- package/dist/feral/process/node.js +5 -0
- package/dist/feral/process/node.js.map +1 -0
- package/dist/feral/process/process-factory.d.ts +18 -0
- package/dist/feral/process/process-factory.d.ts.map +1 -0
- package/dist/feral/process/process-factory.js +30 -0
- package/dist/feral/process/process-factory.js.map +1 -0
- package/dist/feral/process/process-json-hydrator.d.ts +53 -0
- package/dist/feral/process/process-json-hydrator.d.ts.map +1 -0
- package/dist/feral/process/process-json-hydrator.js +48 -0
- package/dist/feral/process/process-json-hydrator.js.map +1 -0
- package/dist/feral/process/process.d.ts +17 -0
- package/dist/feral/process/process.d.ts.map +1 -0
- package/dist/feral/process/process.js +5 -0
- package/dist/feral/process/process.js.map +1 -0
- package/dist/feral/result/result.d.ts +30 -0
- package/dist/feral/result/result.d.ts.map +1 -0
- package/dist/feral/result/result.js +28 -0
- package/dist/feral/result/result.js.map +1 -0
- package/dist/feral/runner/runner.d.ts +13 -0
- package/dist/feral/runner/runner.d.ts.map +1 -0
- package/dist/feral/runner/runner.js +28 -0
- package/dist/feral/runner/runner.js.map +1 -0
- package/dist/feral/security/file-access-guard.d.ts +18 -0
- package/dist/feral/security/file-access-guard.d.ts.map +1 -0
- package/dist/feral/security/file-access-guard.js +69 -0
- package/dist/feral/security/file-access-guard.js.map +1 -0
- package/dist/feral/slack/block-builder.d.ts +61 -0
- package/dist/feral/slack/block-builder.d.ts.map +1 -0
- package/dist/feral/slack/block-builder.js +206 -0
- package/dist/feral/slack/block-builder.js.map +1 -0
- package/dist/feral/slack/blocks.d.ts +86 -0
- package/dist/feral/slack/blocks.d.ts.map +1 -0
- package/dist/feral/slack/blocks.js +181 -0
- package/dist/feral/slack/blocks.js.map +1 -0
- package/dist/feral/slack/composition.d.ts +54 -0
- package/dist/feral/slack/composition.d.ts.map +1 -0
- package/dist/feral/slack/composition.js +114 -0
- package/dist/feral/slack/composition.js.map +1 -0
- package/dist/feral/slack/elements.d.ts +123 -0
- package/dist/feral/slack/elements.d.ts.map +1 -0
- package/dist/feral/slack/elements.js +269 -0
- package/dist/feral/slack/elements.js.map +1 -0
- package/dist/feral/slack/index.d.ts +12 -0
- package/dist/feral/slack/index.d.ts.map +1 -0
- package/dist/feral/slack/index.js +20 -0
- package/dist/feral/slack/index.js.map +1 -0
- package/dist/feral/slack/mapping-factory.d.ts +24 -0
- package/dist/feral/slack/mapping-factory.d.ts.map +1 -0
- package/dist/feral/slack/mapping-factory.js +45 -0
- package/dist/feral/slack/mapping-factory.js.map +1 -0
- package/dist/feral/slack/messages.d.ts +34 -0
- package/dist/feral/slack/messages.d.ts.map +1 -0
- package/dist/feral/slack/messages.js +53 -0
- package/dist/feral/slack/messages.js.map +1 -0
- package/dist/feral/slack/slack-facade.d.ts +20 -0
- package/dist/feral/slack/slack-facade.d.ts.map +1 -0
- package/dist/feral/slack/slack-facade.js +41 -0
- package/dist/feral/slack/slack-facade.js.map +1 -0
- package/dist/feral/slack/slack-markdown-formatter.d.ts +22 -0
- package/dist/feral/slack/slack-markdown-formatter.d.ts.map +1 -0
- package/dist/feral/slack/slack-markdown-formatter.js +36 -0
- package/dist/feral/slack/slack-markdown-formatter.js.map +1 -0
- package/dist/feral/slack/slash-command-input.d.ts +23 -0
- package/dist/feral/slack/slash-command-input.d.ts.map +1 -0
- package/dist/feral/slack/slash-command-input.js +45 -0
- package/dist/feral/slack/slash-command-input.js.map +1 -0
- package/dist/feral/slack/types.d.ts +64 -0
- package/dist/feral/slack/types.d.ts.map +1 -0
- package/dist/feral/slack/types.js +44 -0
- package/dist/feral/slack/types.js.map +1 -0
- package/dist/feral/trace/process-trace.d.ts +44 -0
- package/dist/feral/trace/process-trace.d.ts.map +1 -0
- package/dist/feral/trace/process-trace.js +44 -0
- package/dist/feral/trace/process-trace.js.map +1 -0
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -0
- package/dist/index.js +157 -0
- package/dist/index.js.map +1 -0
- package/dist/llm/providers/claude.d.ts +11 -0
- package/dist/llm/providers/claude.d.ts.map +1 -0
- package/dist/llm/providers/claude.js +45 -0
- package/dist/llm/providers/claude.js.map +1 -0
- package/dist/llm/providers/index.d.ts +5 -0
- package/dist/llm/providers/index.d.ts.map +1 -0
- package/dist/llm/providers/index.js +20 -0
- package/dist/llm/providers/index.js.map +1 -0
- package/dist/llm/providers/openai.d.ts +12 -0
- package/dist/llm/providers/openai.d.ts.map +1 -0
- package/dist/llm/providers/openai.js +62 -0
- package/dist/llm/providers/openai.js.map +1 -0
- package/dist/llm/router.d.ts +32 -0
- package/dist/llm/router.d.ts.map +1 -0
- package/dist/llm/router.js +100 -0
- package/dist/llm/router.js.map +1 -0
- package/dist/llm/types.d.ts +18 -0
- package/dist/llm/types.d.ts.map +1 -0
- package/dist/llm/types.js +2 -0
- package/dist/llm/types.js.map +1 -0
- package/dist/markdown/parser.d.ts +26 -0
- package/dist/markdown/parser.d.ts.map +1 -0
- package/dist/markdown/parser.js +58 -0
- package/dist/markdown/parser.js.map +1 -0
- package/dist/pamp/client.d.ts +39 -0
- package/dist/pamp/client.d.ts.map +1 -0
- package/dist/pamp/client.js +336 -0
- package/dist/pamp/client.js.map +1 -0
- package/dist/pamp/crypto.d.ts +23 -0
- package/dist/pamp/crypto.d.ts.map +1 -0
- package/dist/pamp/crypto.js +130 -0
- package/dist/pamp/crypto.js.map +1 -0
- package/dist/pamp/envelope.d.ts +23 -0
- package/dist/pamp/envelope.d.ts.map +1 -0
- package/dist/pamp/envelope.js +67 -0
- package/dist/pamp/envelope.js.map +1 -0
- package/dist/pamp/index.d.ts +6 -0
- package/dist/pamp/index.d.ts.map +1 -0
- package/dist/pamp/index.js +9 -0
- package/dist/pamp/index.js.map +1 -0
- package/dist/pamp/storage.d.ts +20 -0
- package/dist/pamp/storage.d.ts.map +1 -0
- package/dist/pamp/storage.js +160 -0
- package/dist/pamp/storage.js.map +1 -0
- package/dist/pamp/types.d.ts +80 -0
- package/dist/pamp/types.d.ts.map +1 -0
- package/dist/pamp/types.js +7 -0
- package/dist/pamp/types.js.map +1 -0
- package/dist/paths.d.ts +24 -0
- package/dist/paths.d.ts.map +1 -0
- package/dist/paths.js +70 -0
- package/dist/paths.js.map +1 -0
- package/dist/personalities.d.ts +20 -0
- package/dist/personalities.d.ts.map +1 -0
- package/dist/personalities.js +181 -0
- package/dist/personalities.js.map +1 -0
- package/dist/phaibel.txt +82 -0
- package/dist/responses.d.ts +34 -0
- package/dist/responses.d.ts.map +1 -0
- package/dist/responses.js +467 -0
- package/dist/responses.js.map +1 -0
- package/dist/schemas/index.d.ts +154 -0
- package/dist/schemas/index.d.ts.map +1 -0
- package/dist/schemas/index.js +73 -0
- package/dist/schemas/index.js.map +1 -0
- package/dist/service/api-router.d.ts +7 -0
- package/dist/service/api-router.d.ts.map +1 -0
- package/dist/service/api-router.js +478 -0
- package/dist/service/api-router.js.map +1 -0
- package/dist/service/context/provider.d.ts +76 -0
- package/dist/service/context/provider.d.ts.map +1 -0
- package/dist/service/context/provider.js +140 -0
- package/dist/service/context/provider.js.map +1 -0
- package/dist/service/cron/feedback-analysis.d.ts +2 -0
- package/dist/service/cron/feedback-analysis.d.ts.map +1 -0
- package/dist/service/cron/feedback-analysis.js +100 -0
- package/dist/service/cron/feedback-analysis.js.map +1 -0
- package/dist/service/cron/pamp-checker.d.ts +7 -0
- package/dist/service/cron/pamp-checker.d.ts.map +1 -0
- package/dist/service/cron/pamp-checker.js +29 -0
- package/dist/service/cron/pamp-checker.js.map +1 -0
- package/dist/service/cron/process-evaluator.d.ts +6 -0
- package/dist/service/cron/process-evaluator.d.ts.map +1 -0
- package/dist/service/cron/process-evaluator.js +126 -0
- package/dist/service/cron/process-evaluator.js.map +1 -0
- package/dist/service/cron/process-lifecycle.d.ts +6 -0
- package/dist/service/cron/process-lifecycle.d.ts.map +1 -0
- package/dist/service/cron/process-lifecycle.js +202 -0
- package/dist/service/cron/process-lifecycle.js.map +1 -0
- package/dist/service/cron/scheduler.d.ts +36 -0
- package/dist/service/cron/scheduler.d.ts.map +1 -0
- package/dist/service/cron/scheduler.js +232 -0
- package/dist/service/cron/scheduler.js.map +1 -0
- package/dist/service/daemon.d.ts +24 -0
- package/dist/service/daemon.d.ts.map +1 -0
- package/dist/service/daemon.js +181 -0
- package/dist/service/daemon.js.map +1 -0
- package/dist/service/index.d.ts +11 -0
- package/dist/service/index.d.ts.map +1 -0
- package/dist/service/index.js +255 -0
- package/dist/service/index.js.map +1 -0
- package/dist/service/protocol.d.ts +119 -0
- package/dist/service/protocol.d.ts.map +1 -0
- package/dist/service/protocol.js +17 -0
- package/dist/service/protocol.js.map +1 -0
- package/dist/service/queue/manager.d.ts +66 -0
- package/dist/service/queue/manager.d.ts.map +1 -0
- package/dist/service/queue/manager.js +206 -0
- package/dist/service/queue/manager.js.map +1 -0
- package/dist/service/queue/processor.d.ts +53 -0
- package/dist/service/queue/processor.d.ts.map +1 -0
- package/dist/service/queue/processor.js +288 -0
- package/dist/service/queue/processor.js.map +1 -0
- package/dist/service/queue/queue-persistence.d.ts +27 -0
- package/dist/service/queue/queue-persistence.d.ts.map +1 -0
- package/dist/service/queue/queue-persistence.js +53 -0
- package/dist/service/queue/queue-persistence.js.map +1 -0
- package/dist/service/server.d.ts +28 -0
- package/dist/service/server.d.ts.map +1 -0
- package/dist/service/server.js +101 -0
- package/dist/service/server.js.map +1 -0
- package/dist/service/task/builder.d.ts +43 -0
- package/dist/service/task/builder.d.ts.map +1 -0
- package/dist/service/task/builder.js +100 -0
- package/dist/service/task/builder.js.map +1 -0
- package/dist/service/task/types.d.ts +2 -0
- package/dist/service/task/types.d.ts.map +1 -0
- package/dist/service/task/types.js +3 -0
- package/dist/service/task/types.js.map +1 -0
- package/dist/service/web-client.html +1569 -0
- package/dist/service/web-server.d.ts +18 -0
- package/dist/service/web-server.d.ts.map +1 -0
- package/dist/service/web-server.js +395 -0
- package/dist/service/web-server.js.map +1 -0
- package/dist/shell/banner.d.ts +11 -0
- package/dist/shell/banner.d.ts.map +1 -0
- package/dist/shell/banner.js +66 -0
- package/dist/shell/banner.js.map +1 -0
- package/dist/shell/status-poller.d.ts +27 -0
- package/dist/shell/status-poller.d.ts.map +1 -0
- package/dist/shell/status-poller.js +77 -0
- package/dist/shell/status-poller.js.map +1 -0
- package/dist/shell/tui.d.ts +32 -0
- package/dist/shell/tui.d.ts.map +1 -0
- package/dist/shell/tui.js +69 -0
- package/dist/shell/tui.js.map +1 -0
- package/dist/skills/mcp-manager.d.ts +30 -0
- package/dist/skills/mcp-manager.d.ts.map +1 -0
- package/dist/skills/mcp-manager.js +104 -0
- package/dist/skills/mcp-manager.js.map +1 -0
- package/dist/skills/skill-config.d.ts +13 -0
- package/dist/skills/skill-config.d.ts.map +1 -0
- package/dist/skills/skill-config.js +23 -0
- package/dist/skills/skill-config.js.map +1 -0
- package/dist/state/manager.d.ts +73 -0
- package/dist/state/manager.d.ts.map +1 -0
- package/dist/state/manager.js +201 -0
- package/dist/state/manager.js.map +1 -0
- package/dist/tools/daily.d.ts +2 -0
- package/dist/tools/daily.d.ts.map +1 -0
- package/dist/tools/daily.js +310 -0
- package/dist/tools/daily.js.map +1 -0
- package/dist/tools/events.d.ts +2 -0
- package/dist/tools/events.d.ts.map +1 -0
- package/dist/tools/events.js +132 -0
- package/dist/tools/events.js.map +1 -0
- package/dist/tools/goals.d.ts +2 -0
- package/dist/tools/goals.d.ts.map +1 -0
- package/dist/tools/goals.js +128 -0
- package/dist/tools/goals.js.map +1 -0
- package/dist/tools/index.d.ts +10 -0
- package/dist/tools/index.d.ts.map +1 -0
- package/dist/tools/index.js +13 -0
- package/dist/tools/index.js.map +1 -0
- package/dist/tools/notes.d.ts +2 -0
- package/dist/tools/notes.d.ts.map +1 -0
- package/dist/tools/notes.js +88 -0
- package/dist/tools/notes.js.map +1 -0
- package/dist/tools/project.d.ts +2 -0
- package/dist/tools/project.d.ts.map +1 -0
- package/dist/tools/project.js +112 -0
- package/dist/tools/project.js.map +1 -0
- package/dist/tools/research.d.ts +2 -0
- package/dist/tools/research.d.ts.map +1 -0
- package/dist/tools/research.js +64 -0
- package/dist/tools/research.js.map +1 -0
- package/dist/tools/summarize.d.ts +2 -0
- package/dist/tools/summarize.d.ts.map +1 -0
- package/dist/tools/summarize.js +31 -0
- package/dist/tools/summarize.js.map +1 -0
- package/dist/tools/tasks.d.ts +2 -0
- package/dist/tools/tasks.d.ts.map +1 -0
- package/dist/tools/tasks.js +90 -0
- package/dist/tools/tasks.js.map +1 -0
- package/dist/tools/time.d.ts +2 -0
- package/dist/tools/time.d.ts.map +1 -0
- package/dist/tools/time.js +21 -0
- package/dist/tools/time.js.map +1 -0
- package/dist/tools/types.d.ts +56 -0
- package/dist/tools/types.d.ts.map +1 -0
- package/dist/tools/types.js +17 -0
- package/dist/tools/types.js.map +1 -0
- package/dist/ui/breadcrumb.d.ts +11 -0
- package/dist/ui/breadcrumb.d.ts.map +1 -0
- package/dist/ui/breadcrumb.js +35 -0
- package/dist/ui/breadcrumb.js.map +1 -0
- package/dist/ui/entity-prompt.d.ts +52 -0
- package/dist/ui/entity-prompt.d.ts.map +1 -0
- package/dist/ui/entity-prompt.js +130 -0
- package/dist/ui/entity-prompt.js.map +1 -0
- package/dist/utils/chat-logger.d.ts +28 -0
- package/dist/utils/chat-logger.d.ts.map +1 -0
- package/dist/utils/chat-logger.js +85 -0
- package/dist/utils/chat-logger.js.map +1 -0
- package/dist/utils/debug.d.ts +14 -0
- package/dist/utils/debug.d.ts.map +1 -0
- package/dist/utils/debug.js +31 -0
- package/dist/utils/debug.js.map +1 -0
- package/dist/utils/execution-logger.d.ts +21 -0
- package/dist/utils/execution-logger.d.ts.map +1 -0
- package/dist/utils/execution-logger.js +46 -0
- package/dist/utils/execution-logger.js.map +1 -0
- package/dist/utils/ics-parser.d.ts +14 -0
- package/dist/utils/ics-parser.d.ts.map +1 -0
- package/dist/utils/ics-parser.js +57 -0
- package/dist/utils/ics-parser.js.map +1 -0
- package/dist/utils/json-parser.d.ts +10 -0
- package/dist/utils/json-parser.d.ts.map +1 -0
- package/dist/utils/json-parser.js +164 -0
- package/dist/utils/json-parser.js.map +1 -0
- package/package.json +66 -0
|
@@ -0,0 +1,64 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — Link Entities NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
//
|
|
5
|
+
// Adds a labeled link from one entity to another by appending to the
|
|
6
|
+
// frontmatter `links` array: [{ target: "type:id", label: "..." }]
|
|
7
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
8
|
+
import { ResultStatus } from '../../result/result.js';
|
|
9
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
10
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
11
|
+
import { findEntityByTitle, writeEntity } from '../../../entities/entity.js';
|
|
12
|
+
const NOT_FOUND = 'not_found';
|
|
13
|
+
export class LinkEntitiesNodeCode extends AbstractNodeCode {
|
|
14
|
+
static configDescriptions = [
|
|
15
|
+
{ key: 'source_entity_type', name: 'Source Entity Type', description: 'Entity type of the source (from) entity.', type: 'string' },
|
|
16
|
+
{ key: 'source_entity_title', name: 'Source Entity Title', description: 'Title of the source entity. Supports {context_key} interpolation.', type: 'string' },
|
|
17
|
+
{ key: 'target_entity_type', name: 'Target Entity Type', description: 'Entity type of the target (to) entity.', type: 'string' },
|
|
18
|
+
{ key: 'target_entity_title', name: 'Target Entity Title', description: 'Title of the target entity. Supports {context_key} interpolation.', type: 'string' },
|
|
19
|
+
{ key: 'label', name: 'Link Label', description: 'Relationship label (e.g. "blocks", "relates-to", "parent-of"). Supports {context_key} interpolation.', type: 'string' },
|
|
20
|
+
];
|
|
21
|
+
static resultDescriptions = [
|
|
22
|
+
{ status: ResultStatus.OK, description: 'Link added successfully.' },
|
|
23
|
+
{ status: NOT_FOUND, description: 'Source or target entity not found.' },
|
|
24
|
+
{ status: ResultStatus.ERROR, description: 'Failed to link entities.' },
|
|
25
|
+
];
|
|
26
|
+
constructor() {
|
|
27
|
+
super('link_entities', 'Link Entities', 'Adds a labeled link from one entity to another in frontmatter.', NodeCodeCategory.DATA);
|
|
28
|
+
}
|
|
29
|
+
async process(context) {
|
|
30
|
+
const sourceType = this.getRequiredConfigValue('source_entity_type');
|
|
31
|
+
const rawSourceTitle = this.getRequiredConfigValue('source_entity_title');
|
|
32
|
+
const targetType = this.getRequiredConfigValue('target_entity_type');
|
|
33
|
+
const rawTargetTitle = this.getRequiredConfigValue('target_entity_title');
|
|
34
|
+
const rawLabel = this.getRequiredConfigValue('label');
|
|
35
|
+
const sourceTitle = this.interpolate(rawSourceTitle, context);
|
|
36
|
+
const targetTitle = this.interpolate(rawTargetTitle, context);
|
|
37
|
+
const label = this.interpolate(rawLabel, context);
|
|
38
|
+
// Find both entities
|
|
39
|
+
const source = await findEntityByTitle(sourceType, sourceTitle);
|
|
40
|
+
if (!source) {
|
|
41
|
+
context.set('error', `Source ${sourceType} "${sourceTitle}" not found.`);
|
|
42
|
+
return this.result(NOT_FOUND, `Source ${sourceType} "${sourceTitle}" not found.`);
|
|
43
|
+
}
|
|
44
|
+
const target = await findEntityByTitle(targetType, targetTitle);
|
|
45
|
+
if (!target) {
|
|
46
|
+
context.set('error', `Target ${targetType} "${targetTitle}" not found.`);
|
|
47
|
+
return this.result(NOT_FOUND, `Target ${targetType} "${targetTitle}" not found.`);
|
|
48
|
+
}
|
|
49
|
+
// Build the link target key: "type:id"
|
|
50
|
+
const targetId = target.meta.id;
|
|
51
|
+
const linkTarget = `${targetType}:${targetId}`;
|
|
52
|
+
// Append to existing links array (avoid duplicates)
|
|
53
|
+
const existingLinks = Array.isArray(source.meta.links) ? source.meta.links : [];
|
|
54
|
+
const alreadyLinked = existingLinks.some(l => l.target === linkTarget && l.label === label);
|
|
55
|
+
if (!alreadyLinked) {
|
|
56
|
+
existingLinks.push({ target: linkTarget, label });
|
|
57
|
+
source.meta.links = existingLinks;
|
|
58
|
+
await writeEntity(source.filepath, source.meta, source.content);
|
|
59
|
+
}
|
|
60
|
+
context.set('link', { source: `${sourceType}:${source.meta.id}`, target: linkTarget, label });
|
|
61
|
+
return this.result(ResultStatus.OK, `Linked ${sourceType} "${sourceTitle}" → ${targetType} "${targetTitle}" (${label}).`);
|
|
62
|
+
}
|
|
63
|
+
}
|
|
64
|
+
//# sourceMappingURL=link-entities-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"link-entities-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/link-entities-node-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class ListEntitiesNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
constructor();
|
|
9
|
+
process(context: Context): Promise<Result>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=list-entities-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-entities-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/list-entities-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,qBAAa,oBAAqB,SAAQ,gBAAgB;IACtD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAI5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAGrD;;IAMI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAwBnD"}
|
|
@@ -0,0 +1,44 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — List Entities NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
import { ResultStatus } from '../../result/result.js';
|
|
5
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
6
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
7
|
+
import { listEntities } from '../../../entities/entity.js';
|
|
8
|
+
export class ListEntitiesNodeCode extends AbstractNodeCode {
|
|
9
|
+
static configDescriptions = [
|
|
10
|
+
{ key: 'entity_type', name: 'Entity Type', description: 'The entity type to list (any configured entity type, e.g. task, note, event, goal).', type: 'string' },
|
|
11
|
+
{ key: 'tags', name: 'Tags', description: 'Comma-separated tag names to filter by (case-insensitive exact match). Only entities with at least one matching tag are returned.', type: 'string', isOptional: true },
|
|
12
|
+
{ key: 'context_path', name: 'Context Path', description: 'Context key to store the entity list.', type: 'string', default: 'entities' },
|
|
13
|
+
];
|
|
14
|
+
static resultDescriptions = [
|
|
15
|
+
{ status: ResultStatus.OK, description: 'Entities listed successfully.' },
|
|
16
|
+
{ status: ResultStatus.ERROR, description: 'Failed to list entities.' },
|
|
17
|
+
];
|
|
18
|
+
constructor() {
|
|
19
|
+
super('list_entities', 'List Entities', 'Lists all entities of a given type in the active project.', NodeCodeCategory.DATA);
|
|
20
|
+
}
|
|
21
|
+
async process(context) {
|
|
22
|
+
const entityType = this.getRequiredConfigValue('entity_type');
|
|
23
|
+
const contextPath = this.getRequiredConfigValue('context_path', 'entities');
|
|
24
|
+
const tagsRaw = this.getOptionalConfigValue('tags');
|
|
25
|
+
const tags = tagsRaw ? tagsRaw.split(',').map(t => t.trim()).filter(Boolean) : undefined;
|
|
26
|
+
try {
|
|
27
|
+
const entities = await listEntities(entityType, tags ? { tags } : undefined);
|
|
28
|
+
const result = entities.map(e => ({
|
|
29
|
+
title: e.meta.title,
|
|
30
|
+
filepath: e.filepath,
|
|
31
|
+
content: e.content,
|
|
32
|
+
...e.meta,
|
|
33
|
+
}));
|
|
34
|
+
context.set(contextPath, result);
|
|
35
|
+
return this.result(ResultStatus.OK, `Listed ${result.length} ${entityType}(s).`);
|
|
36
|
+
}
|
|
37
|
+
catch (error) {
|
|
38
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
39
|
+
context.set('error', message);
|
|
40
|
+
return this.result(ResultStatus.ERROR, `Failed to list ${entityType}: ${message}`);
|
|
41
|
+
}
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
//# sourceMappingURL=list-entities-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-entities-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/list-entities-node-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class ListEntityTypesNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
constructor();
|
|
9
|
+
process(context: Context): Promise<Result>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=list-entity-types-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-entity-types-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/list-entity-types-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAI5D,qBAAa,uBAAwB,SAAQ,gBAAgB;IACzD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAAM;IACpE,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAErD;;IAWI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAKnD"}
|
|
@@ -0,0 +1,22 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — List Entity Types NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
import { ResultStatus } from '../../result/result.js';
|
|
5
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
6
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
7
|
+
import { loadEntityTypes } from '../../../entities/entity-type-config.js';
|
|
8
|
+
export class ListEntityTypesNodeCode extends AbstractNodeCode {
|
|
9
|
+
static configDescriptions = [];
|
|
10
|
+
static resultDescriptions = [
|
|
11
|
+
{ status: ResultStatus.OK, description: 'Entity types listed successfully.' },
|
|
12
|
+
];
|
|
13
|
+
constructor() {
|
|
14
|
+
super('list_entity_types', 'List Entity Types', 'Loads all registered entity type schemas and stores them in context as "entity_types".', NodeCodeCategory.DATA);
|
|
15
|
+
}
|
|
16
|
+
async process(context) {
|
|
17
|
+
const types = await loadEntityTypes();
|
|
18
|
+
context.set('entity_types', types);
|
|
19
|
+
return this.result(ResultStatus.OK, `Found ${types.length} entity type(s): ${types.map(t => t.name).join(', ')}`);
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
//# sourceMappingURL=list-entity-types-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"list-entity-types-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/list-entity-types-node-code.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,yCAAyC;AACzC,gFAAgF;AAIhF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,eAAe,EAAE,MAAM,yCAAyC,CAAC;AAE1E,MAAM,OAAO,uBAAwB,SAAQ,gBAAgB;IACzD,MAAM,CAAU,kBAAkB,GAA+B,EAAE,CAAC;IACpE,MAAM,CAAU,kBAAkB,GAAwB;QACtD,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,mCAAmC,EAAE;KAChF,CAAC;IAEF;QACI,KAAK,CACD,mBAAmB,EACnB,mBAAmB,EACnB,wFAAwF,EACxF,gBAAgB,CAAC,IAAI,CACxB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAgB;QAC1B,MAAM,KAAK,GAAG,MAAM,eAAe,EAAE,CAAC;QACtC,OAAO,CAAC,GAAG,CAAC,cAAc,EAAE,KAAK,CAAC,CAAC;QACnC,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,KAAK,CAAC,MAAM,oBAAoB,KAAK,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,EAAE,CAAC,CAAC;IACtH,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class LoadVaultContextNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
constructor();
|
|
9
|
+
process(context: Context): Promise<Result>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=load-vault-context-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-vault-context-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/load-vault-context-node-code.ts"],"names":[],"mappings":"AASA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAgB5D,qBAAa,wBAAyB,SAAQ,gBAAgB;IAC1D,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAc5D;IAEF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAGrD;;IAWI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAqBnD"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — Load Vault Context NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
//
|
|
5
|
+
// Collects the hierarchical .vault.md context chain for an entity type
|
|
6
|
+
// (vault root → projects → project → entity subdirectory) and stores
|
|
7
|
+
// the combined text in the Feral context for downstream LLM nodes.
|
|
8
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
9
|
+
import { ResultStatus } from '../../result/result.js';
|
|
10
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
11
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
12
|
+
import { getSubdirectoryContext } from '../../../context/reader.js';
|
|
13
|
+
/**
|
|
14
|
+
* Maps entity type names to their vault subdirectory names.
|
|
15
|
+
*/
|
|
16
|
+
const ENTITY_DIR_MAP = {
|
|
17
|
+
note: 'notes',
|
|
18
|
+
task: 'todos',
|
|
19
|
+
event: 'events',
|
|
20
|
+
research: 'research',
|
|
21
|
+
goal: 'goals',
|
|
22
|
+
};
|
|
23
|
+
export class LoadVaultContextNodeCode extends AbstractNodeCode {
|
|
24
|
+
static configDescriptions = [
|
|
25
|
+
{
|
|
26
|
+
key: 'entity_type',
|
|
27
|
+
name: 'Entity Type',
|
|
28
|
+
description: 'The entity type whose .vault.md context to collect (note, task, event, research, goal).',
|
|
29
|
+
type: 'string',
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
key: 'context_path',
|
|
33
|
+
name: 'Context Path',
|
|
34
|
+
description: 'Context key to store the combined vault context.',
|
|
35
|
+
type: 'string',
|
|
36
|
+
default: 'vault_context',
|
|
37
|
+
},
|
|
38
|
+
];
|
|
39
|
+
static resultDescriptions = [
|
|
40
|
+
{ status: ResultStatus.OK, description: 'Vault context loaded successfully.' },
|
|
41
|
+
{ status: ResultStatus.ERROR, description: 'Failed to load vault context.' },
|
|
42
|
+
];
|
|
43
|
+
constructor() {
|
|
44
|
+
super('load_vault_context', 'Load Vault Context', 'Collects .vault.md context from vault root through entity subdirectory.', NodeCodeCategory.DATA);
|
|
45
|
+
}
|
|
46
|
+
async process(context) {
|
|
47
|
+
const entityType = this.getRequiredConfigValue('entity_type');
|
|
48
|
+
const contextPath = this.getRequiredConfigValue('context_path', 'vault_context');
|
|
49
|
+
const subdirectory = ENTITY_DIR_MAP[entityType];
|
|
50
|
+
if (!subdirectory) {
|
|
51
|
+
context.set('error', `Unknown entity type: ${entityType}`);
|
|
52
|
+
return this.result(ResultStatus.ERROR, `Unknown entity type "${entityType}".`);
|
|
53
|
+
}
|
|
54
|
+
try {
|
|
55
|
+
const vaultContext = await getSubdirectoryContext(subdirectory);
|
|
56
|
+
context.set(contextPath, vaultContext);
|
|
57
|
+
return this.result(ResultStatus.OK, `Loaded vault context for ${entityType} (${subdirectory}).`);
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
61
|
+
context.set('error', message);
|
|
62
|
+
return this.result(ResultStatus.ERROR, `Failed to load vault context: ${message}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=load-vault-context-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"load-vault-context-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/load-vault-context-node-code.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,0CAA0C;AAC1C,gFAAgF;AAChF,EAAE;AACF,uEAAuE;AACvE,qEAAqE;AACrE,mEAAmE;AACnE,gFAAgF;AAIhF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,sBAAsB,EAAE,MAAM,4BAA4B,CAAC;AAGpE;;GAEG;AACH,MAAM,cAAc,GAA2B;IAC3C,IAAI,EAAE,OAAO;IACb,IAAI,EAAE,OAAO;IACb,KAAK,EAAE,QAAQ;IACf,QAAQ,EAAE,UAAU;IACpB,IAAI,EAAE,OAAO;CAChB,CAAC;AAEF,MAAM,OAAO,wBAAyB,SAAQ,gBAAgB;IAC1D,MAAM,CAAU,kBAAkB,GAA+B;QAC7D;YACI,GAAG,EAAE,aAAa;YAClB,IAAI,EAAE,aAAa;YACnB,WAAW,EAAE,yFAAyF;YACtG,IAAI,EAAE,QAAQ;SACjB;QACD;YACI,GAAG,EAAE,cAAc;YACnB,IAAI,EAAE,cAAc;YACpB,WAAW,EAAE,kDAAkD;YAC/D,IAAI,EAAE,QAAQ;YACd,OAAO,EAAE,eAAe;SAC3B;KACJ,CAAC;IAEF,MAAM,CAAU,kBAAkB,GAAwB;QACtD,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,oCAAoC,EAAE;QAC9E,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,+BAA+B,EAAE;KAC/E,CAAC;IAEF;QACI,KAAK,CACD,oBAAoB,EACpB,oBAAoB,EACpB,yEAAyE,EACzE,gBAAgB,CAAC,IAAI,CACxB,CAAC;IACN,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAgB;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAAmB,CAAC;QAChF,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,eAAe,CAAW,CAAC;QAE3F,MAAM,YAAY,GAAG,cAAc,CAAC,UAAU,CAAC,CAAC;QAChD,IAAI,CAAC,YAAY,EAAE,CAAC;YAChB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,wBAAwB,UAAU,EAAE,CAAC,CAAC;YAC3D,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,wBAAwB,UAAU,IAAI,CAAC,CAAC;QACnF,CAAC;QAED,IAAI,CAAC;YACD,MAAM,YAAY,GAAG,MAAM,sBAAsB,CAAC,YAAY,CAAC,CAAC;YAChE,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,YAAY,CAAC,CAAC;YAEvC,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,4BAA4B,UAAU,KAAK,YAAY,IAAI,CAAC,CAAC;QACrG,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,iCAAiC,OAAO,EAAE,CAAC,CAAC;QACvF,CAAC;IACL,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class SearchEntitiesNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
/** Accept extra config keys (e.g. LLM putting "query" directly in config) */
|
|
9
|
+
get allowExtraConfig(): boolean;
|
|
10
|
+
constructor();
|
|
11
|
+
process(context: Context): Promise<Result>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=search-entities-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-entities-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/search-entities-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAM5D,qBAAa,sBAAuB,SAAQ,gBAAgB;IACxD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAK5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAIrD;IAEF,6EAA6E;IAC7E,IAAI,gBAAgB,IAAI,OAAO,CAAiB;;IAM1C,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CA4CnD"}
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — Search Entities NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
import { ResultStatus } from '../../result/result.js';
|
|
5
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
6
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
7
|
+
import { searchEntities } from '../../../entities/entity.js';
|
|
8
|
+
const NOT_FOUND = 'not_found';
|
|
9
|
+
export class SearchEntitiesNodeCode extends AbstractNodeCode {
|
|
10
|
+
static configDescriptions = [
|
|
11
|
+
{ key: 'entity_type', name: 'Entity Type', description: 'The entity type to search (optional — omit to search all types).', type: 'string', isOptional: true },
|
|
12
|
+
{ key: 'query', name: 'Query', description: 'Search query string. Supports {context_key} interpolation. Use tag:value syntax for exact tag matching.', type: 'string', isOptional: true },
|
|
13
|
+
{ key: 'tags', name: 'Tags', description: 'Comma-separated tag names to pre-filter by before search (case-insensitive exact match). Can be used with or without a query.', type: 'string', isOptional: true },
|
|
14
|
+
{ key: 'context_path', name: 'Context Path', description: 'Context key to store search results.', type: 'string', default: 'entities' },
|
|
15
|
+
];
|
|
16
|
+
static resultDescriptions = [
|
|
17
|
+
{ status: ResultStatus.OK, description: 'Entities found matching query.' },
|
|
18
|
+
{ status: NOT_FOUND, description: 'No entities matched the query.' },
|
|
19
|
+
{ status: ResultStatus.ERROR, description: 'Failed to search entities.' },
|
|
20
|
+
];
|
|
21
|
+
/** Accept extra config keys (e.g. LLM putting "query" directly in config) */
|
|
22
|
+
get allowExtraConfig() { return true; }
|
|
23
|
+
constructor() {
|
|
24
|
+
super('search_entities', 'Search Entities', 'Full-text search across entity titles, tags, and body content. Returns results scored by relevance.', NodeCodeCategory.DATA);
|
|
25
|
+
}
|
|
26
|
+
async process(context) {
|
|
27
|
+
const entityType = this.getOptionalConfigValue('entity_type');
|
|
28
|
+
const contextPath = this.getRequiredConfigValue('context_path', 'entities');
|
|
29
|
+
// Resolve query from config (with interpolation) or context
|
|
30
|
+
let query = this.getOptionalConfigValue('query');
|
|
31
|
+
if (query) {
|
|
32
|
+
query = this.interpolate(query, context);
|
|
33
|
+
}
|
|
34
|
+
else {
|
|
35
|
+
query = context.get('query');
|
|
36
|
+
}
|
|
37
|
+
const tagsRaw = this.getOptionalConfigValue('tags');
|
|
38
|
+
const tags = tagsRaw ? tagsRaw.split(',').map(t => t.trim()).filter(Boolean) : undefined;
|
|
39
|
+
if (!query && (!tags || tags.length === 0)) {
|
|
40
|
+
context.set('error', 'No search query or tags provided.');
|
|
41
|
+
return this.result(ResultStatus.ERROR, 'No search query or tags provided.');
|
|
42
|
+
}
|
|
43
|
+
try {
|
|
44
|
+
const matches = await searchEntities(query ?? '', entityType ?? undefined, tags ? { tags } : undefined);
|
|
45
|
+
if (matches.length === 0) {
|
|
46
|
+
context.set('error', `No entities found matching "${query}".`);
|
|
47
|
+
return this.result(NOT_FOUND, `No entities matched "${query}".`);
|
|
48
|
+
}
|
|
49
|
+
const result = matches.map(e => ({
|
|
50
|
+
title: e.meta.title,
|
|
51
|
+
filepath: e.filepath,
|
|
52
|
+
content: e.content,
|
|
53
|
+
score: e.score,
|
|
54
|
+
...e.meta,
|
|
55
|
+
}));
|
|
56
|
+
context.set(contextPath, result);
|
|
57
|
+
return this.result(ResultStatus.OK, `Found ${result.length} entit${result.length === 1 ? 'y' : 'ies'} matching "${query}".`);
|
|
58
|
+
}
|
|
59
|
+
catch (error) {
|
|
60
|
+
const message = error instanceof Error ? error.message : String(error);
|
|
61
|
+
context.set('error', message);
|
|
62
|
+
return this.result(ResultStatus.ERROR, `Search failed: ${message}`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
}
|
|
66
|
+
//# sourceMappingURL=search-entities-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"search-entities-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/search-entities-node-code.ts"],"names":[],"mappings":"AAAA,gFAAgF;AAChF,uCAAuC;AACvC,gFAAgF;AAIhF,OAAO,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAEtD,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAC5D,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,cAAc,EAAuB,MAAM,6BAA6B,CAAC;AAElF,MAAM,SAAS,GAAG,WAAW,CAAC;AAE9B,MAAM,OAAO,sBAAuB,SAAQ,gBAAgB;IACxD,MAAM,CAAU,kBAAkB,GAA+B;QAC7D,EAAE,GAAG,EAAE,aAAa,EAAE,IAAI,EAAE,aAAa,EAAE,WAAW,EAAE,kEAAkE,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE;QAC9J,EAAE,GAAG,EAAE,OAAO,EAAE,IAAI,EAAE,OAAO,EAAE,WAAW,EAAE,yGAAyG,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE;QACzL,EAAE,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,EAAE,WAAW,EAAE,+HAA+H,EAAE,IAAI,EAAE,QAAQ,EAAE,UAAU,EAAE,IAAI,EAAE;QAC7M,EAAE,GAAG,EAAE,cAAc,EAAE,IAAI,EAAE,cAAc,EAAE,WAAW,EAAE,sCAAsC,EAAE,IAAI,EAAE,QAAQ,EAAE,OAAO,EAAE,UAAU,EAAE;KAC1I,CAAC;IACF,MAAM,CAAU,kBAAkB,GAAwB;QACtD,EAAE,MAAM,EAAE,YAAY,CAAC,EAAE,EAAE,WAAW,EAAE,gCAAgC,EAAE;QAC1E,EAAE,MAAM,EAAE,SAAS,EAAE,WAAW,EAAE,gCAAgC,EAAE;QACpE,EAAE,MAAM,EAAE,YAAY,CAAC,KAAK,EAAE,WAAW,EAAE,4BAA4B,EAAE;KAC5E,CAAC;IAEF,6EAA6E;IAC7E,IAAI,gBAAgB,KAAc,OAAO,IAAI,CAAC,CAAC,CAAC;IAEhD;QACI,KAAK,CAAC,iBAAiB,EAAE,iBAAiB,EAAE,qGAAqG,EAAE,gBAAgB,CAAC,IAAI,CAAC,CAAC;IAC9K,CAAC;IAED,KAAK,CAAC,OAAO,CAAC,OAAgB;QAC1B,MAAM,UAAU,GAAG,IAAI,CAAC,sBAAsB,CAAC,aAAa,CAA0B,CAAC;QACvF,MAAM,WAAW,GAAG,IAAI,CAAC,sBAAsB,CAAC,cAAc,EAAE,UAAU,CAAW,CAAC;QAEtF,4DAA4D;QAC5D,IAAI,KAAK,GAAG,IAAI,CAAC,sBAAsB,CAAC,OAAO,CAAkB,CAAC;QAClE,IAAI,KAAK,EAAE,CAAC;YACR,KAAK,GAAG,IAAI,CAAC,WAAW,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QAC7C,CAAC;aAAM,CAAC;YACJ,KAAK,GAAG,OAAO,CAAC,GAAG,CAAC,OAAO,CAAkB,CAAC;QAClD,CAAC;QAED,MAAM,OAAO,GAAG,IAAI,CAAC,sBAAsB,CAAC,MAAM,CAAkB,CAAC;QACrE,MAAM,IAAI,GAAG,OAAO,CAAC,CAAC,CAAC,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,EAAE,CAAC,CAAC,MAAM,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,SAAS,CAAC;QAEzF,IAAI,CAAC,KAAK,IAAI,CAAC,CAAC,IAAI,IAAI,IAAI,CAAC,MAAM,KAAK,CAAC,CAAC,EAAE,CAAC;YACzC,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,mCAAmC,CAAC,CAAC;YAC1D,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,mCAAmC,CAAC,CAAC;QAChF,CAAC;QAED,IAAI,CAAC;YACD,MAAM,OAAO,GAAG,MAAM,cAAc,CAAC,KAAK,IAAI,EAAE,EAAE,UAAU,IAAI,SAAS,EAAE,IAAI,CAAC,CAAC,CAAC,EAAE,IAAI,EAAE,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC;YAExG,IAAI,OAAO,CAAC,MAAM,KAAK,CAAC,EAAE,CAAC;gBACvB,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,+BAA+B,KAAK,IAAI,CAAC,CAAC;gBAC/D,OAAO,IAAI,CAAC,MAAM,CAAC,SAAS,EAAE,wBAAwB,KAAK,IAAI,CAAC,CAAC;YACrE,CAAC;YAED,MAAM,MAAM,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC;gBAC7B,KAAK,EAAE,CAAC,CAAC,IAAI,CAAC,KAAe;gBAC7B,QAAQ,EAAE,CAAC,CAAC,QAAQ;gBACpB,OAAO,EAAE,CAAC,CAAC,OAAO;gBAClB,KAAK,EAAE,CAAC,CAAC,KAAK;gBACd,GAAG,CAAC,CAAC,IAAI;aACZ,CAAC,CAAC,CAAC;YAEJ,OAAO,CAAC,GAAG,CAAC,WAAW,EAAE,MAAM,CAAC,CAAC;YACjC,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,EAAE,EAAE,SAAS,MAAM,CAAC,MAAM,SAAS,MAAM,CAAC,MAAM,KAAK,CAAC,CAAC,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,cAAc,KAAK,IAAI,CAAC,CAAC;QACjI,CAAC;QAAC,OAAO,KAAK,EAAE,CAAC;YACb,MAAM,OAAO,GAAG,KAAK,YAAY,KAAK,CAAC,CAAC,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,CAAC;YACvE,OAAO,CAAC,GAAG,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;YAC9B,OAAO,IAAI,CAAC,MAAM,CAAC,YAAY,CAAC,KAAK,EAAE,kBAAkB,OAAO,EAAE,CAAC,CAAC;QACxE,CAAC;IACL,CAAC"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class SetEntityFieldNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
constructor();
|
|
9
|
+
process(context: Context): Promise<Result>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=set-entity-field-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-entity-field-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/set-entity-field-node-code.ts"],"names":[],"mappings":"AAaA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAO5D,qBAAa,sBAAuB,SAAQ,gBAAgB;IACxD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAK5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAGrD;;IAWI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAsCnD"}
|
|
@@ -0,0 +1,65 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — Set Entity Field NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
//
|
|
5
|
+
// Sets a single field on an entity found by title.
|
|
6
|
+
// Designed for catalog nodes that target a specific entity type and field —
|
|
7
|
+
// e.g. a "complete_todo" catalog node: entity_type=task, field=status, value=complete.
|
|
8
|
+
//
|
|
9
|
+
// The entity title is resolved from:
|
|
10
|
+
// 1. entity_title config value (supports {context_key} interpolation)
|
|
11
|
+
// 2. context key "title" as fallback
|
|
12
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
13
|
+
import { ResultStatus } from '../../result/result.js';
|
|
14
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
15
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
16
|
+
import { findEntityByTitle, writeEntity } from '../../../entities/entity.js';
|
|
17
|
+
import { getEntityIndex } from '../../../entities/entity-index.js';
|
|
18
|
+
const NOT_FOUND = 'not_found';
|
|
19
|
+
export class SetEntityFieldNodeCode extends AbstractNodeCode {
|
|
20
|
+
static configDescriptions = [
|
|
21
|
+
{ key: 'entity_type', name: 'Entity Type', description: 'The entity type to target (e.g. task, note, car).', type: 'string' },
|
|
22
|
+
{ key: 'field', name: 'Field', description: 'The field name to set (e.g. status, priority, completed).', type: 'string' },
|
|
23
|
+
{ key: 'value', name: 'Value', description: 'The value to set. Supports {context_key} interpolation.', type: 'string' },
|
|
24
|
+
{ key: 'entity_title', name: 'Entity Title', description: 'Title of the entity to update. Supports {context_key} interpolation. Falls back to context "title".', type: 'string', isOptional: true },
|
|
25
|
+
];
|
|
26
|
+
static resultDescriptions = [
|
|
27
|
+
{ status: ResultStatus.OK, description: 'Field set successfully.' },
|
|
28
|
+
{ status: NOT_FOUND, description: 'Entity not found.' },
|
|
29
|
+
];
|
|
30
|
+
constructor() {
|
|
31
|
+
super('set_entity_field', 'Set Entity Field', 'Sets a single field on an entity found by title. Use this to create focused catalog nodes like "complete_todo" or "set_priority".', NodeCodeCategory.DATA);
|
|
32
|
+
}
|
|
33
|
+
async process(context) {
|
|
34
|
+
const entityType = this.getRequiredConfigValue('entity_type');
|
|
35
|
+
const field = this.getRequiredConfigValue('field');
|
|
36
|
+
const rawValue = this.getRequiredConfigValue('value');
|
|
37
|
+
const value = this.interpolate(rawValue, context);
|
|
38
|
+
// Resolve title from config or context
|
|
39
|
+
const configTitle = this.getOptionalConfigValue('entity_title');
|
|
40
|
+
const title = configTitle
|
|
41
|
+
? this.interpolate(configTitle, context)
|
|
42
|
+
: context.get('title');
|
|
43
|
+
if (!title) {
|
|
44
|
+
context.set('error', 'No entity title provided. Set entity_title config or "title" in context.');
|
|
45
|
+
return this.result(NOT_FOUND, 'Missing entity title.');
|
|
46
|
+
}
|
|
47
|
+
const found = await findEntityByTitle(entityType, title);
|
|
48
|
+
if (!found) {
|
|
49
|
+
context.set('error', `${entityType} "${title}" not found.`);
|
|
50
|
+
return this.result(NOT_FOUND, `${entityType} "${title}" not found.`);
|
|
51
|
+
}
|
|
52
|
+
// Set the field and persist
|
|
53
|
+
found.meta[field] = value;
|
|
54
|
+
await writeEntity(found.filepath, found.meta, found.content ?? '');
|
|
55
|
+
context.set('entity', { filepath: found.filepath, content: found.content ?? '', ...found.meta });
|
|
56
|
+
context.set(field, value);
|
|
57
|
+
// Update entity index
|
|
58
|
+
const index = getEntityIndex();
|
|
59
|
+
if (index.isBuilt) {
|
|
60
|
+
await index.addOrUpdate(entityType, String(found.meta.id ?? title), title, found.filepath);
|
|
61
|
+
}
|
|
62
|
+
return this.result(ResultStatus.OK, `Set ${entityType} "${title}" ${field} = ${value}.`);
|
|
63
|
+
}
|
|
64
|
+
}
|
|
65
|
+
//# sourceMappingURL=set-entity-field-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"set-entity-field-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/set-entity-field-node-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,11 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class SortEntitiesNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
constructor();
|
|
9
|
+
process(context: Context): Promise<Result>;
|
|
10
|
+
}
|
|
11
|
+
//# sourceMappingURL=sort-entities-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-entities-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/sort-entities-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAS5D,qBAAa,oBAAqB,SAAQ,gBAAgB;IACtD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAI5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAErD;;IAMI,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CA2CnD"}
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
2
|
+
// Feral CCF — Sort Entities NodeCode
|
|
3
|
+
// ─────────────────────────────────────────────────────────────────────────────
|
|
4
|
+
import { ResultStatus } from '../../result/result.js';
|
|
5
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
6
|
+
import { NodeCodeCategory } from '../node-code.js';
|
|
7
|
+
/**
|
|
8
|
+
* Sort order maps for structured fields.
|
|
9
|
+
*/
|
|
10
|
+
const PRIORITY_ORDER = { critical: 0, high: 1, medium: 2, low: 3 };
|
|
11
|
+
const STATUS_ORDER = { open: 0, 'in-progress': 1, blocked: 2, done: 3 };
|
|
12
|
+
export class SortEntitiesNodeCode extends AbstractNodeCode {
|
|
13
|
+
static configDescriptions = [
|
|
14
|
+
{ key: 'context_path', name: 'Context Path', description: 'Context key holding the entity array to sort.', type: 'string', default: 'entities' },
|
|
15
|
+
{ key: 'sort_by', name: 'Sort By', description: 'Comma-separated field names to sort by (e.g. priority,dueDate).', type: 'string', default: 'title' },
|
|
16
|
+
{ key: 'sort_order', name: 'Sort Order', description: 'Sort order: asc or desc.', type: 'string', default: 'asc' },
|
|
17
|
+
];
|
|
18
|
+
static resultDescriptions = [
|
|
19
|
+
{ status: ResultStatus.OK, description: 'Entities sorted successfully.' },
|
|
20
|
+
];
|
|
21
|
+
constructor() {
|
|
22
|
+
super('sort_entities', 'Sort Entities', 'Sorts an entity array in context by configurable fields.', NodeCodeCategory.DATA);
|
|
23
|
+
}
|
|
24
|
+
async process(context) {
|
|
25
|
+
const contextPath = this.getRequiredConfigValue('context_path', 'entities');
|
|
26
|
+
const sortByStr = this.getRequiredConfigValue('sort_by', 'title');
|
|
27
|
+
const sortOrder = this.getRequiredConfigValue('sort_order', 'asc');
|
|
28
|
+
const entities = context.get(contextPath);
|
|
29
|
+
if (!entities || !Array.isArray(entities)) {
|
|
30
|
+
return this.result(ResultStatus.OK, 'No entities to sort.');
|
|
31
|
+
}
|
|
32
|
+
const sortFields = sortByStr.split(',').map(f => f.trim()).filter(Boolean);
|
|
33
|
+
const desc = sortOrder === 'desc';
|
|
34
|
+
const sorted = [...entities].sort((a, b) => {
|
|
35
|
+
for (const field of sortFields) {
|
|
36
|
+
const va = a[field];
|
|
37
|
+
const vb = b[field];
|
|
38
|
+
let cmp;
|
|
39
|
+
// Use special ordering for known enum fields
|
|
40
|
+
if (field === 'priority') {
|
|
41
|
+
cmp = (PRIORITY_ORDER[String(va)] ?? 99) - (PRIORITY_ORDER[String(vb)] ?? 99);
|
|
42
|
+
}
|
|
43
|
+
else if (field === 'status') {
|
|
44
|
+
cmp = (STATUS_ORDER[String(va)] ?? 99) - (STATUS_ORDER[String(vb)] ?? 99);
|
|
45
|
+
}
|
|
46
|
+
else if (va == null && vb == null) {
|
|
47
|
+
cmp = 0;
|
|
48
|
+
}
|
|
49
|
+
else if (va == null) {
|
|
50
|
+
cmp = 1;
|
|
51
|
+
}
|
|
52
|
+
else if (vb == null) {
|
|
53
|
+
cmp = -1;
|
|
54
|
+
}
|
|
55
|
+
else {
|
|
56
|
+
cmp = String(va).localeCompare(String(vb));
|
|
57
|
+
}
|
|
58
|
+
if (cmp !== 0)
|
|
59
|
+
return desc ? -cmp : cmp;
|
|
60
|
+
}
|
|
61
|
+
return 0;
|
|
62
|
+
});
|
|
63
|
+
context.set(contextPath, sorted);
|
|
64
|
+
return this.result(ResultStatus.OK, `Sorted ${sorted.length} entities by ${sortByStr}.`);
|
|
65
|
+
}
|
|
66
|
+
}
|
|
67
|
+
//# sourceMappingURL=sort-entities-node-code.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"sort-entities-node-code.js","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/sort-entities-node-code.ts"],"names":[],"mappings":"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"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import type { Context } from '../../context/context.js';
|
|
2
|
+
import type { Result } from '../../result/result.js';
|
|
3
|
+
import type { ConfigurationDescription, ResultDescription } from '../../configuration/configuration-description.js';
|
|
4
|
+
import { AbstractNodeCode } from '../abstract-node-code.js';
|
|
5
|
+
export declare class UpdateEntityNodeCode extends AbstractNodeCode {
|
|
6
|
+
static readonly configDescriptions: ConfigurationDescription[];
|
|
7
|
+
static readonly resultDescriptions: ResultDescription[];
|
|
8
|
+
/** Accept any extra config keys that match patch field names */
|
|
9
|
+
get allowExtraConfig(): boolean;
|
|
10
|
+
constructor();
|
|
11
|
+
process(context: Context): Promise<Result>;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=update-entity-node-code.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"update-entity-node-code.d.ts","sourceRoot":"","sources":["../../../../src/feral/node-code/entity/update-entity-node-code.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,OAAO,EAAE,MAAM,0BAA0B,CAAC;AACxD,OAAO,KAAK,EAAE,MAAM,EAAE,MAAM,wBAAwB,CAAC;AAErD,OAAO,KAAK,EAAE,wBAAwB,EAAE,iBAAiB,EAAE,MAAM,kDAAkD,CAAC;AACpH,OAAO,EAAE,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAW5D,qBAAa,oBAAqB,SAAQ,gBAAgB;IACtD,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,wBAAwB,EAAE,CAM5D;IACF,MAAM,CAAC,QAAQ,CAAC,kBAAkB,EAAE,iBAAiB,EAAE,CAGrD;IAEF,gEAAgE;IAChE,IAAI,gBAAgB,IAAI,OAAO,CAAiB;;IAM1C,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO,CAAC,MAAM,CAAC;CAkHnD"}
|