@darkhorseprojects/circuitry 0.4.3 → 0.4.4

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 CHANGED
@@ -37,7 +37,7 @@ resources:
37
37
  inputs: [system, turn]
38
38
  tools: []
39
39
  instructions: Answer the user.
40
- expect:
40
+ output:
41
41
  response: str
42
42
 
43
43
  outputs:
@@ -49,12 +49,13 @@ outputs:
49
49
 
50
50
  A Circuitry file separates the graph boundary from the graph body.
51
51
 
52
- - `inputs` declare values supplied by a caller.
52
+ - `inputs` are graph invocation inputs/arguments.
53
53
  - `resources` define the internal graph.
54
- - `resource.inputs` wire resources together.
55
- - `outputs` expose final or important results back to the caller.
54
+ - `resources.*.inputs` are resource dependencies.
55
+ - `resources.*.output` is the resource output schema/contract.
56
+ - top-level `outputs` are named graph-level exported outputs.
56
57
 
57
- Prompts are inputs. Tools are runtime functions. Graphs are executable topology. Resources are the graph.
58
+ Prompts are inputs/text resources. Tools are runtime functions explicitly declared by a graph resource. Graphs are executable topology. Resources are the graph.
58
59
 
59
60
  A model can consume the graph. A human can review it. A runtime can execute it. Another graph can import it. An agent can write a new one.
60
61
 
@@ -119,17 +120,73 @@ resources:
119
120
  type: input
120
121
  from: user_turn
121
122
 
123
+ assistant:
124
+ type: agent
125
+ inputs: [turn]
126
+ output:
127
+ answer: str
128
+
122
129
  outputs:
123
- response:
124
- from: assistant.response
130
+ final:
131
+ from: assistant.answer
125
132
  ```
126
133
 
127
134
  `resources.turn.from` binds the external input `user_turn` into the internal resource graph.
128
135
 
129
- `outputs.response.from` exposes `assistant.response` as the graph result named `response`.
136
+ `assistant.output` declares the expected schema of the assistant resource's materialized value.
137
+
138
+ `outputs.final.from` exports `assistant.answer` as the graph result named `final`.
139
+
140
+ In `from: assistant.answer`, `assistant` is the resource id and `answer` selects a field/path inside that materialized resource value. Without a dot, the whole materialized resource value is referenced.
141
+
142
+ Internal graph wiring uses `resource.inputs`, not top-level `outputs`. `output` is schema-only and does not define graph exports.
143
+
144
+ ## Imports
145
+
146
+ Import renaming is assignment-style.
147
+
148
+ ```yaml
149
+ imports:
150
+ - path: ./shared.circuitry.yaml
151
+ resources:
152
+ system: base_system
153
+ ```
154
+
155
+ ```txt
156
+ system = imported.base_system
157
+ ```
158
+
159
+ This imports `base_system` from the imported graph and binds it locally as `system`. The current graph should reference `system`.
160
+
161
+ ## Entries
162
+
163
+ `entry` is the default resource to run. `entries` are named entry aliases, so one graph can expose multiple useful executable entrypoints.
164
+
165
+ ```yaml
166
+ entry: assistant
167
+ entries:
168
+ chat: assistant
169
+ recover: recovered_context
170
+ ```
171
+
172
+ Runtimes may run a graph from any explicit entry, alias, or resource they support.
173
+
174
+ ## Tools
175
+
176
+ Tools are an explicit graph-declared tool surface.
177
+
178
+ ```yaml
179
+ resources:
180
+ assistant:
181
+ type: agent
182
+ tools: [read, write, bash]
183
+ ```
184
+
185
+ A runtime must not expose undeclared tools to that resource. Circuitry only declares tool names; the runtime defines what each tool means and how it executes. Zinc implements tools such as `read`, `write`, `edit`, `bash`, and `run_graph`.
130
186
 
131
- Internal graph wiring uses `resource.inputs`, not top-level `outputs`.
187
+ ## Extensions
132
188
 
189
+ Circuitry preserves unknown/runtime-specific fields. Runtime-specific fields should generally use `x-*`, and unknown resource types are allowed so runtimes can extend behavior. Circuitry stays small by defining stable graph primitives instead of encoding every workflow feature.
133
190
 
134
191
  ## Run resources
135
192
 
@@ -159,7 +216,7 @@ resources:
159
216
  tools: [read, write, bash, run_graph]
160
217
  ```
161
218
 
162
- `type: run` is declarative topology. A runtime tool like `run_graph` is dynamic capability.
219
+ `type: run` is declarative topology. Its `output` describes the result of the graph run. A runtime tool like `run_graph` is dynamic capability.
163
220
 
164
221
  ## Learn more
165
222
 
package/SPEC.md CHANGED
@@ -22,10 +22,12 @@ Only `circuitry` and `resources` are required.
22
22
  ## Concepts
23
23
 
24
24
  - A **resource** is a named part of the graph.
25
- - An **input** is a caller-supplied value.
26
- - An **entry** is the resource a runtime resolves when the graph is run.
27
- - An **output** maps a public graph result to a resource path.
28
- - A **tool** is a runtime function name. Circuitry does not implement tools.
25
+ - A top-level **input** is a graph invocation input/argument.
26
+ - `resources.*.inputs` are resource dependencies.
27
+ - An **entry** is the default resource a runtime resolves when the graph is run.
28
+ - `resources.*.output` is the resource's output schema/contract.
29
+ - Top-level **outputs** are named graph-level exported outputs.
30
+ - A **tool** is a graph-declared runtime function name. Circuitry does not implement tools.
29
31
  - A **prompt** is ordinary text/input. Circuitry has no special prompt primitive.
30
32
 
31
33
  ## Resource fields
@@ -52,14 +54,16 @@ resources:
52
54
  graph: string
53
55
  entry: string
54
56
 
55
- expect: {}
57
+ output: {}
56
58
 
57
59
  x-runtime-name: any
58
60
  ```
59
61
 
60
- Unknown resource `type` values are allowed. Runtimes decide what they support.
62
+ Unknown resource `type` values are allowed so runtimes can extend behavior.
61
63
 
62
- `x-*` fields are extensions. Portable tooling preserves them and does not interpret them.
64
+ Unknown fields are preserved. Runtime-specific fields should generally use `x-*`. Portable tooling preserves `x-*` fields and does not interpret them.
65
+
66
+ Circuitry stays small by defining stable graph primitives instead of encoding every workflow feature a runtime might provide.
63
67
 
64
68
  ## Inputs
65
69
 
@@ -103,12 +107,14 @@ assistant:
103
107
  tools: [read, search]
104
108
  instructions: |
105
109
  Answer carefully.
106
- expect:
110
+ output:
107
111
  answer: str
108
112
  ```
109
113
 
110
114
  Circuitry does not call a model. A runtime resolves the agent resource.
111
115
 
116
+ `output` describes the expected schema of the agent resource's materialized result. It does not define graph exports.
117
+
112
118
  ## Runs
113
119
 
114
120
  `type: run` composes graphs.
@@ -124,9 +130,11 @@ recovered_context:
124
130
 
125
131
  A run resource asks the runtime to resolve another Circuitry graph. `inputs` maps child input names to resources in the current graph.
126
132
 
133
+ For `type: run`, `output` describes the expected schema of the child graph run result.
134
+
127
135
  ## Entries
128
136
 
129
- `entry` is the default resource to resolve.
137
+ `entry` is the default resource to run.
130
138
 
131
139
  ```yaml
132
140
  entry: assistant
@@ -140,17 +148,29 @@ entries:
140
148
  recover: recovered_context
141
149
  ```
142
150
 
151
+ Runtimes may run a graph from any explicit entry, alias, or resource they support. This lets one graph expose multiple useful executable entrypoints without changing the resource graph.
152
+
143
153
  ## Outputs
144
154
 
145
- Top-level outputs describe graph return values.
155
+ Top-level `outputs` define named exports from the graph. Each output points to a resource or to a field/path inside a resource's materialized value.
146
156
 
147
157
  ```yaml
158
+ resources:
159
+ assistant:
160
+ type: agent
161
+ output:
162
+ answer: str
163
+
148
164
  outputs:
149
- answer:
165
+ final:
150
166
  from: assistant.answer
151
167
  ```
152
168
 
153
- `expect` describes a resource result. `outputs` describes graph boundary values.
169
+ `assistant.output` declares the schema of the assistant resource's materialized value. `outputs.final` exports `assistant.answer` as a named graph output.
170
+
171
+ `outputs` is separate from `output`. `output` is schema-only and never defines graph exports.
172
+
173
+ Output paths are intentionally simple: in `from: assistant.answer`, `assistant` is the resource id before the first dot. The remaining `answer` path selects a field/path within that resource's materialized value. If no dot is present, the whole materialized resource value is referenced.
154
174
 
155
175
  ## Imports
156
176
 
@@ -166,9 +186,18 @@ imports:
166
186
  imports:
167
187
  - path: ./shared.circuitry.yaml
168
188
  resources:
169
- shared_system: system
189
+ system: base_system
190
+ ```
191
+
192
+ Import renaming is assignment-style:
193
+
194
+ ```txt
195
+ local_name = imported.imported_name
196
+ system = imported.base_system
170
197
  ```
171
198
 
199
+ This imports `base_system` from the imported graph and binds it locally as `system`. The current graph should reference `system`.
200
+
172
201
  Imports do not merge top-level inputs, entries, outputs, or extension fields.
173
202
 
174
203
  ## Resolution
@@ -183,6 +212,21 @@ Resource resolution semantics:
183
212
  - `run`: resolves mapped inputs, then asks the runtime to run another Circuitry graph.
184
213
  - unknown `type`: runtime-defined.
185
214
 
215
+ For static resources, `output` describes the resolved/materialized value. For executable resources, `output` describes the produced result.
216
+
217
+ ## Tools
218
+
219
+ Tools are an explicit graph-declared tool surface.
220
+
221
+ ```yaml
222
+ resources:
223
+ assistant:
224
+ type: agent
225
+ tools: [read, write, bash]
226
+ ```
227
+
228
+ A runtime must not expose undeclared tools to that resource. Circuitry only declares tool names. The runtime defines what each tool means and how it executes. Zinc implements tools such as `read`, `write`, `edit`, `bash`, and `run_graph`.
229
+
186
230
  Circuitry tooling validates graph shape and resolves imports. It does not execute runtime behavior.
187
231
 
188
232
  ## Validation
@@ -201,3 +245,4 @@ A valid 0.4 graph:
201
245
  - has `type: input` resources with valid `from`
202
246
  - has `type: run` resources with `graph`
203
247
  - has outputs with valid `from` roots
248
+ - only uses supported resource fields
package/dist/graph.d.ts CHANGED
@@ -39,7 +39,7 @@ export type CircuitryResource = {
39
39
  tools?: string[];
40
40
  graph?: string;
41
41
  entry?: string;
42
- expect?: CircuitrySchema;
42
+ output?: CircuitrySchema;
43
43
  [key: `x-${string}`]: unknown;
44
44
  };
45
45
  export type CircuitryOutput = {
package/dist/graph.js CHANGED
@@ -122,6 +122,9 @@ export function validateCircuitrySource(value) {
122
122
  if (!resource.type || typeof resource.type !== "string") {
123
123
  issue("missing_resource_type", `resource ${id} missing type`, ["resources", id, "type"]);
124
124
  }
125
+ if ("expect" in resource) {
126
+ issue("unsupported_resource_field", "resource field is not supported", ["resources", id, "expect"]);
127
+ }
125
128
  if (resource.inputs !== undefined && !Array.isArray(resource.inputs) && (typeof resource.inputs !== "object" || resource.inputs === null)) {
126
129
  issue("invalid_resource_inputs", `resource ${id} inputs must be an array or object`, ["resources", id, "inputs"]);
127
130
  }
package/dist/graph.js.map CHANGED
@@ -1 +1 @@
1
- {"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"graph.js","sourceRoot":"","sources":["../src/graph.ts"],"names":[],"mappings":"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"}
@@ -20,7 +20,7 @@ resources:
20
20
  tools: [read, search]
21
21
  instructions: |
22
22
  Answer with the smallest sufficient explanation.
23
- expect:
23
+ output:
24
24
  answer: str
25
25
  outputs:
26
26
  answer:
@@ -15,7 +15,7 @@ resources:
15
15
  inputs: [question]
16
16
  instructions: |
17
17
  Return only context relevant to the question.
18
- expect:
18
+ output:
19
19
  context: str
20
20
  outputs:
21
21
  context:
@@ -2,7 +2,8 @@ circuitry: "0.4"
2
2
  title: Imports
3
3
  imports:
4
4
  - path: ./shared.circuitry.yaml
5
- resources: "*"
5
+ resources:
6
+ system: base_system
6
7
  entry: system
7
8
  resources: {}
8
9
  outputs:
@@ -5,6 +5,7 @@ resources:
5
5
  message:
6
6
  type: text
7
7
  value: Hello from Circuitry.
8
+ x-demo-note: preserved runtime extension
8
9
  outputs:
9
10
  message:
10
11
  from: message
@@ -5,6 +5,9 @@ inputs:
5
5
  type: text
6
6
  required: true
7
7
  entry: assistant
8
+ entries:
9
+ chat: assistant
10
+ recover: recovered_context
8
11
  resources:
9
12
  question:
10
13
  type: input
@@ -15,11 +18,13 @@ resources:
15
18
  entry: recover
16
19
  inputs:
17
20
  question: question
21
+ output:
22
+ context: str
18
23
  assistant:
19
24
  type: agent
20
25
  identity: Researcher
21
26
  inputs: [question, recovered_context]
22
- expect:
27
+ output:
23
28
  answer: str
24
29
  outputs:
25
30
  answer:
@@ -1,6 +1,6 @@
1
1
  circuitry: "0.4"
2
2
  title: Shared resources
3
3
  resources:
4
- system:
4
+ base_system:
5
5
  type: text
6
6
  value: You are concise and careful.
package/package.json CHANGED
@@ -1,10 +1,10 @@
1
1
  {
2
2
  "name": "@darkhorseprojects/circuitry",
3
- "version": "0.4.3",
3
+ "version": "0.4.4",
4
4
  "description": "A tiny file format and CLI for executable resource graphs.",
5
5
  "type": "module",
6
6
  "bin": {
7
- "circuitry": "./dist/cli.js"
7
+ "circuitry": "dist/cli.js"
8
8
  },
9
9
  "exports": {
10
10
  ".": {
@@ -12,10 +12,7 @@
12
12
  "import": "./dist/index.js"
13
13
  }
14
14
  },
15
- "repository": {
16
- "type": "git",
17
- "url": "https://github.com/darkhorseprojects/circuitry"
18
- },
15
+ "repository": "https://github.com/darkhorseprojects/circuitry",
19
16
  "files": [
20
17
  "dist",
21
18
  "README.md",
package/schema.json CHANGED
@@ -69,7 +69,7 @@
69
69
  "tools": { "type": "array", "items": { "type": "string" } },
70
70
  "graph": { "type": "string" },
71
71
  "entry": { "type": "string" },
72
- "expect": {}
72
+ "output": {}
73
73
  }
74
74
  },
75
75
  "output": {