@q1k-oss/btree-workflows 0.0.1 → 0.0.2
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 +13 -13
- package/dist/index.cjs +5011 -0
- package/dist/index.d.cts +3320 -0
- package/dist/index.d.ts +3320 -0
- package/dist/index.js +4879 -0
- package/package.json +33 -3
- package/.claude/settings.local.json +0 -31
- package/CLAUDE.md +0 -181
- package/behaviour-tree-workflows-landing/index.html +0 -16
- package/behaviour-tree-workflows-landing/package-lock.json +0 -2074
- package/behaviour-tree-workflows-landing/package.json +0 -31
- package/behaviour-tree-workflows-landing/public/favicon.svg +0 -17
- package/behaviour-tree-workflows-landing/src/App.css +0 -103
- package/behaviour-tree-workflows-landing/src/App.tsx +0 -176
- package/behaviour-tree-workflows-landing/src/components/BlackboardInspector.css +0 -89
- package/behaviour-tree-workflows-landing/src/components/BlackboardInspector.tsx +0 -64
- package/behaviour-tree-workflows-landing/src/components/ExampleSelector.css +0 -64
- package/behaviour-tree-workflows-landing/src/components/ExampleSelector.tsx +0 -34
- package/behaviour-tree-workflows-landing/src/components/ExecutionLog.css +0 -107
- package/behaviour-tree-workflows-landing/src/components/ExecutionLog.tsx +0 -85
- package/behaviour-tree-workflows-landing/src/components/Header.css +0 -50
- package/behaviour-tree-workflows-landing/src/components/Header.tsx +0 -26
- package/behaviour-tree-workflows-landing/src/components/StatusBadge.css +0 -45
- package/behaviour-tree-workflows-landing/src/components/StatusBadge.tsx +0 -15
- package/behaviour-tree-workflows-landing/src/components/Toolbar.css +0 -74
- package/behaviour-tree-workflows-landing/src/components/Toolbar.tsx +0 -53
- package/behaviour-tree-workflows-landing/src/components/TreeVisualizer.css +0 -67
- package/behaviour-tree-workflows-landing/src/components/TreeVisualizer.tsx +0 -192
- package/behaviour-tree-workflows-landing/src/components/YamlEditor.css +0 -18
- package/behaviour-tree-workflows-landing/src/components/YamlEditor.tsx +0 -96
- package/behaviour-tree-workflows-landing/src/lib/count-nodes.ts +0 -11
- package/behaviour-tree-workflows-landing/src/lib/execution-engine.ts +0 -96
- package/behaviour-tree-workflows-landing/src/lib/tree-layout.ts +0 -136
- package/behaviour-tree-workflows-landing/src/lib/yaml-examples.ts +0 -549
- package/behaviour-tree-workflows-landing/src/main.tsx +0 -9
- package/behaviour-tree-workflows-landing/src/stubs/activepieces.ts +0 -18
- package/behaviour-tree-workflows-landing/src/stubs/fs.ts +0 -24
- package/behaviour-tree-workflows-landing/src/stubs/path.ts +0 -16
- package/behaviour-tree-workflows-landing/src/stubs/temporal-activity.ts +0 -6
- package/behaviour-tree-workflows-landing/src/stubs/temporal-workflow.ts +0 -22
- package/behaviour-tree-workflows-landing/tsconfig.json +0 -25
- package/behaviour-tree-workflows-landing/vite.config.ts +0 -40
- package/demo-google-sheets.ts +0 -181
- package/demo-runtime-variables.ts +0 -174
- package/demo-template.ts +0 -208
- package/docs/ARCHITECTURE_SUMMARY.md +0 -613
- package/docs/NODE_REFERENCE.md +0 -504
- package/docs/README.md +0 -53
- package/docs/custom-nodes-architecture.md +0 -826
- package/docs/observability.md +0 -175
- package/docs/yaml-specification.md +0 -990
- package/examples/temporal/README.md +0 -117
- package/examples/temporal/activities.ts +0 -373
- package/examples/temporal/client.ts +0 -115
- package/examples/temporal/python-worker/activities.py +0 -339
- package/examples/temporal/python-worker/requirements.txt +0 -12
- package/examples/temporal/python-worker/worker.py +0 -106
- package/examples/temporal/worker.ts +0 -66
- package/examples/temporal/workflows.ts +0 -6
- package/examples/temporal/yaml-workflow-loader.ts +0 -105
- package/examples/yaml-test.ts +0 -97
- package/examples/yaml-workflows/01-simple-sequence.yaml +0 -25
- package/examples/yaml-workflows/02-parallel-timeout.yaml +0 -45
- package/examples/yaml-workflows/03-ecommerce-checkout.yaml +0 -94
- package/examples/yaml-workflows/04-ai-agent-workflow.yaml +0 -346
- package/examples/yaml-workflows/05-order-processing.yaml +0 -146
- package/examples/yaml-workflows/06-activity-test.yaml +0 -71
- package/examples/yaml-workflows/07-activity-simple-test.yaml +0 -43
- package/examples/yaml-workflows/08-file-processing.yaml +0 -141
- package/examples/yaml-workflows/09-http-request.yaml +0 -137
- package/examples/yaml-workflows/README.md +0 -211
- package/src/actions/code-execution.schema.ts +0 -27
- package/src/actions/code-execution.ts +0 -218
- package/src/actions/generate-file.test.ts +0 -516
- package/src/actions/generate-file.ts +0 -166
- package/src/actions/http-request.test.ts +0 -784
- package/src/actions/http-request.ts +0 -228
- package/src/actions/index.ts +0 -20
- package/src/actions/parse-file.test.ts +0 -448
- package/src/actions/parse-file.ts +0 -139
- package/src/actions/python-script.test.ts +0 -439
- package/src/actions/python-script.ts +0 -154
- package/src/base-node.test.ts +0 -511
- package/src/base-node.ts +0 -605
- package/src/behavior-tree.test.ts +0 -431
- package/src/behavior-tree.ts +0 -283
- package/src/blackboard.test.ts +0 -222
- package/src/blackboard.ts +0 -192
- package/src/composites/conditional.schema.ts +0 -19
- package/src/composites/conditional.test.ts +0 -309
- package/src/composites/conditional.ts +0 -129
- package/src/composites/for-each.schema.ts +0 -23
- package/src/composites/for-each.test.ts +0 -254
- package/src/composites/for-each.ts +0 -132
- package/src/composites/index.ts +0 -15
- package/src/composites/memory-sequence.schema.ts +0 -19
- package/src/composites/memory-sequence.test.ts +0 -223
- package/src/composites/memory-sequence.ts +0 -98
- package/src/composites/parallel.schema.ts +0 -28
- package/src/composites/parallel.test.ts +0 -502
- package/src/composites/parallel.ts +0 -157
- package/src/composites/reactive-sequence.schema.ts +0 -19
- package/src/composites/reactive-sequence.test.ts +0 -170
- package/src/composites/reactive-sequence.ts +0 -85
- package/src/composites/recovery.schema.ts +0 -19
- package/src/composites/recovery.test.ts +0 -366
- package/src/composites/recovery.ts +0 -90
- package/src/composites/selector.schema.ts +0 -19
- package/src/composites/selector.test.ts +0 -387
- package/src/composites/selector.ts +0 -85
- package/src/composites/sequence.schema.ts +0 -19
- package/src/composites/sequence.test.ts +0 -337
- package/src/composites/sequence.ts +0 -72
- package/src/composites/sub-tree.schema.ts +0 -21
- package/src/composites/sub-tree.test.ts +0 -893
- package/src/composites/sub-tree.ts +0 -177
- package/src/composites/while.schema.ts +0 -24
- package/src/composites/while.test.ts +0 -381
- package/src/composites/while.ts +0 -149
- package/src/data-store/index.ts +0 -10
- package/src/data-store/memory-store.ts +0 -161
- package/src/data-store/types.ts +0 -94
- package/src/debug/breakpoint.test.ts +0 -47
- package/src/debug/breakpoint.ts +0 -30
- package/src/debug/index.ts +0 -17
- package/src/debug/resume-point.test.ts +0 -49
- package/src/debug/resume-point.ts +0 -29
- package/src/decorators/delay.schema.ts +0 -21
- package/src/decorators/delay.test.ts +0 -261
- package/src/decorators/delay.ts +0 -140
- package/src/decorators/force-result.schema.ts +0 -32
- package/src/decorators/force-result.test.ts +0 -133
- package/src/decorators/force-result.ts +0 -63
- package/src/decorators/index.ts +0 -13
- package/src/decorators/invert.schema.ts +0 -19
- package/src/decorators/invert.test.ts +0 -135
- package/src/decorators/invert.ts +0 -42
- package/src/decorators/keep-running.schema.ts +0 -20
- package/src/decorators/keep-running.test.ts +0 -105
- package/src/decorators/keep-running.ts +0 -49
- package/src/decorators/precondition.schema.ts +0 -19
- package/src/decorators/precondition.test.ts +0 -351
- package/src/decorators/precondition.ts +0 -139
- package/src/decorators/repeat.schema.ts +0 -21
- package/src/decorators/repeat.test.ts +0 -187
- package/src/decorators/repeat.ts +0 -94
- package/src/decorators/run-once.schema.ts +0 -19
- package/src/decorators/run-once.test.ts +0 -140
- package/src/decorators/run-once.ts +0 -61
- package/src/decorators/soft-assert.schema.ts +0 -19
- package/src/decorators/soft-assert.test.ts +0 -107
- package/src/decorators/soft-assert.ts +0 -68
- package/src/decorators/timeout.schema.ts +0 -21
- package/src/decorators/timeout.test.ts +0 -274
- package/src/decorators/timeout.ts +0 -159
- package/src/errors.test.ts +0 -63
- package/src/errors.ts +0 -34
- package/src/events.test.ts +0 -347
- package/src/events.ts +0 -183
- package/src/index.ts +0 -80
- package/src/integrations/index.ts +0 -30
- package/src/integrations/integration-action.test.ts +0 -571
- package/src/integrations/integration-action.ts +0 -233
- package/src/integrations/piece-executor.ts +0 -320
- package/src/observability/execution-tracker.ts +0 -320
- package/src/observability/index.ts +0 -23
- package/src/observability/sinks.ts +0 -138
- package/src/observability/types.ts +0 -130
- package/src/registry-utils.ts +0 -147
- package/src/registry.test.ts +0 -466
- package/src/registry.ts +0 -334
- package/src/schemas/base.schema.ts +0 -104
- package/src/schemas/index.ts +0 -223
- package/src/schemas/integration.test.ts +0 -238
- package/src/schemas/tree-definition.schema.ts +0 -170
- package/src/schemas/validation.test.ts +0 -146
- package/src/schemas/validation.ts +0 -122
- package/src/scripting/index.ts +0 -22
- package/src/templates/template-loader.test.ts +0 -281
- package/src/templates/template-loader.ts +0 -152
- package/src/temporal-integration.test.ts +0 -213
- package/src/test-nodes.ts +0 -259
- package/src/types.ts +0 -503
- package/src/utilities/index.ts +0 -17
- package/src/utilities/log-message.test.ts +0 -275
- package/src/utilities/log-message.ts +0 -134
- package/src/utilities/regex-extract.test.ts +0 -138
- package/src/utilities/regex-extract.ts +0 -108
- package/src/utilities/variable-resolver.test.ts +0 -416
- package/src/utilities/variable-resolver.ts +0 -318
- package/src/utils/error-handler.test.ts +0 -117
- package/src/utils/error-handler.ts +0 -48
- package/src/utils/signal-check.test.ts +0 -234
- package/src/utils/signal-check.ts +0 -140
- package/src/yaml/errors.ts +0 -143
- package/src/yaml/index.ts +0 -30
- package/src/yaml/loader.ts +0 -39
- package/src/yaml/parser.ts +0 -286
- package/src/yaml/validation/semantic-validator.ts +0 -196
- package/templates/google-sheets/insert-row.yaml +0 -76
- package/templates/notification-sender.yaml +0 -33
- package/templates/order-validation.yaml +0 -44
- package/tsconfig.json +0 -24
- package/vitest.config.ts +0 -25
- package/workflows/order-processor.yaml +0 -59
- package/workflows/process-order-workflow.yaml +0 -142
package/README.md
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
# @
|
|
1
|
+
# @q1k-oss/btree-workflows
|
|
2
2
|
|
|
3
3
|
Core behavior tree implementation for TypeScript, designed for AI-native workflows.
|
|
4
4
|
|
|
@@ -15,7 +15,7 @@ Core behavior tree implementation for TypeScript, designed for AI-native workflo
|
|
|
15
15
|
## Installation
|
|
16
16
|
|
|
17
17
|
```bash
|
|
18
|
-
npm install @
|
|
18
|
+
npm install @q1k-oss/btree
|
|
19
19
|
```
|
|
20
20
|
|
|
21
21
|
## Quick Start
|
|
@@ -28,7 +28,7 @@ import {
|
|
|
28
28
|
PrintAction,
|
|
29
29
|
ScopedBlackboard,
|
|
30
30
|
TickEngine
|
|
31
|
-
} from '@
|
|
31
|
+
} from '@q1k-oss/btree';
|
|
32
32
|
|
|
33
33
|
// Create a behavior tree
|
|
34
34
|
const sequence = new Sequence({ id: 'main' });
|
|
@@ -46,7 +46,7 @@ await engine.tick(blackboard);
|
|
|
46
46
|
### YAML Workflows (Recommended)
|
|
47
47
|
|
|
48
48
|
```typescript
|
|
49
|
-
import { Registry, registerStandardNodes, loadTreeFromYaml } from '@
|
|
49
|
+
import { Registry, registerStandardNodes, loadTreeFromYaml } from '@q1k-oss/btree';
|
|
50
50
|
|
|
51
51
|
// Setup registry with all built-in nodes
|
|
52
52
|
const registry = new Registry();
|
|
@@ -119,7 +119,7 @@ import {
|
|
|
119
119
|
registerStandardNodes,
|
|
120
120
|
loadTreeFromYaml,
|
|
121
121
|
loadTreeFromFile
|
|
122
|
-
} from '@
|
|
122
|
+
} from '@q1k-oss/btree';
|
|
123
123
|
|
|
124
124
|
// Setup registry with all 32 built-in nodes
|
|
125
125
|
const registry = new Registry();
|
|
@@ -164,7 +164,7 @@ YAML workflows undergo comprehensive validation before execution:
|
|
|
164
164
|
4. **Semantic Rules** - Checks ID uniqueness, child counts, circular references
|
|
165
165
|
|
|
166
166
|
```typescript
|
|
167
|
-
import { validateYaml } from '@
|
|
167
|
+
import { validateYaml } from '@q1k-oss/btree';
|
|
168
168
|
|
|
169
169
|
// Validate without executing
|
|
170
170
|
const result = validateYaml(yamlString, registry);
|
|
@@ -379,7 +379,7 @@ The **Script node** provides built-in functions to load test data and environmen
|
|
|
379
379
|
Access test parameters from CSV files, data tables, or test runs:
|
|
380
380
|
|
|
381
381
|
```typescript
|
|
382
|
-
import { Script } from '@
|
|
382
|
+
import { Script } from '@q1k-oss/btree';
|
|
383
383
|
|
|
384
384
|
// Setup test data
|
|
385
385
|
const context = {
|
|
@@ -498,7 +498,7 @@ import {
|
|
|
498
498
|
loadTreeFromYaml,
|
|
499
499
|
type WorkflowArgs,
|
|
500
500
|
type WorkflowResult,
|
|
501
|
-
} from '@
|
|
501
|
+
} from '@q1k-oss/btree';
|
|
502
502
|
|
|
503
503
|
export interface YamlWorkflowArgs extends WorkflowArgs {
|
|
504
504
|
yamlContent: string;
|
|
@@ -570,8 +570,8 @@ children:
|
|
|
570
570
|
#### Programmatic Workflows
|
|
571
571
|
|
|
572
572
|
```typescript
|
|
573
|
-
import { BehaviorTree, Sequence, PrintAction } from '@
|
|
574
|
-
import type { WorkflowArgs, WorkflowResult } from '@
|
|
573
|
+
import { BehaviorTree, Sequence, PrintAction } from '@q1k-oss/btree';
|
|
574
|
+
import type { WorkflowArgs, WorkflowResult } from '@q1k-oss/btree';
|
|
575
575
|
|
|
576
576
|
export async function myWorkflow(args: WorkflowArgs): Promise<WorkflowResult> {
|
|
577
577
|
const root = new Sequence({ id: 'root' });
|
|
@@ -599,7 +599,7 @@ See [`examples/temporal/`](./examples/temporal/) and [`examples/yaml-workflows/`
|
|
|
599
599
|
Subscribe to node lifecycle events for real-time monitoring and observability:
|
|
600
600
|
|
|
601
601
|
```typescript
|
|
602
|
-
import { NodeEventEmitter } from '@
|
|
602
|
+
import { NodeEventEmitter } from '@q1k-oss/btree';
|
|
603
603
|
|
|
604
604
|
const eventEmitter = new NodeEventEmitter();
|
|
605
605
|
|
|
@@ -822,8 +822,8 @@ src/
|
|
|
822
822
|
1. **Create node file** in `src/composites/` or `src/decorators/`
|
|
823
823
|
2. **Extend base class**:
|
|
824
824
|
```typescript
|
|
825
|
-
import { CompositeNode } from '@
|
|
826
|
-
import { TemporalContext, NodeStatus } from '@
|
|
825
|
+
import { CompositeNode } from '@q1k-oss/btree';
|
|
826
|
+
import { TemporalContext, NodeStatus } from '@q1k-oss/btree';
|
|
827
827
|
|
|
828
828
|
export class MyNode extends CompositeNode {
|
|
829
829
|
protected async executeTick(context: TemporalContext): Promise<NodeStatus> {
|