@orkestrel/brief 0.0.6 → 0.0.8
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 +26 -12
- package/dist/src/core/index.cjs +465 -279
- package/dist/src/core/index.cjs.map +1 -1
- package/dist/src/core/index.d.cts +907 -631
- package/dist/src/core/index.d.ts +907 -631
- package/dist/src/core/index.js +454 -268
- package/dist/src/core/index.js.map +1 -1
- package/package.json +18 -18
package/README.md
CHANGED
|
@@ -1,32 +1,44 @@
|
|
|
1
1
|
# @orkestrel/brief
|
|
2
2
|
|
|
3
|
-
|
|
4
|
-
`Brief` — a closed,
|
|
5
|
-
interpretation left to do —
|
|
6
|
-
|
|
3
|
+
> The specification compiler: a synchronous, deterministic pipeline that resolves a rough
|
|
4
|
+
> request into a `Brief` — a closed, content-hashed execution contract another agent can run
|
|
5
|
+
> with no interpretation left to do — gated by a traceable reasoner and projected into every
|
|
6
|
+
> downstream artifact.
|
|
7
7
|
|
|
8
|
-
|
|
9
|
-
|
|
8
|
+
Compile a request with the `createBriefCompiler` factory, read the `Briefing` it returns, and
|
|
9
|
+
project the brief it carries into the prompt a model reads, a completion condition, or a
|
|
10
|
+
subagent dispatch. A brief with blocking gaps never emits: the readiness gate is a
|
|
11
|
+
`@orkestrel/reason` `LogicalDefinition`, so every verdict carries a traceable account of which
|
|
12
|
+
check missed. Part of the `@orkestrel` line.
|
|
13
|
+
|
|
14
|
+
## Install
|
|
10
15
|
|
|
11
16
|
```sh
|
|
12
17
|
npm install @orkestrel/brief
|
|
13
18
|
```
|
|
14
19
|
|
|
20
|
+
## Requirements
|
|
21
|
+
|
|
22
|
+
- Node.js >= 22.12.0, matching the `engines` field in `package.json`
|
|
23
|
+
- ESM and CommonJS entry points, selected by the `exports` field in `package.json`
|
|
24
|
+
|
|
25
|
+
## Usage
|
|
26
|
+
|
|
15
27
|
```ts
|
|
16
28
|
import {
|
|
17
29
|
createBriefCompiler,
|
|
18
30
|
briefToGoal,
|
|
19
31
|
briefToMarkdown,
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
32
|
+
buildOutcome,
|
|
33
|
+
buildProof,
|
|
34
|
+
buildTask,
|
|
23
35
|
} from '@orkestrel/brief'
|
|
24
36
|
|
|
25
37
|
const compiler = createBriefCompiler()
|
|
26
38
|
const briefing = compiler.compile({
|
|
27
|
-
task:
|
|
28
|
-
outcomes: [
|
|
29
|
-
proofs: [
|
|
39
|
+
task: buildTask('refactor', 'code', 'Refactor useForm to native browser form APIs.'),
|
|
40
|
+
outcomes: [buildOutcome(1, 'useForm uses native FormData with no behavior change')],
|
|
41
|
+
proofs: [buildProof('type-check and lint pass', 'npm run check')],
|
|
30
42
|
})
|
|
31
43
|
|
|
32
44
|
if (briefing.brief !== undefined) {
|
|
@@ -36,6 +48,8 @@ if (briefing.brief !== undefined) {
|
|
|
36
48
|
compiler.destroy()
|
|
37
49
|
```
|
|
38
50
|
|
|
51
|
+
## Guide
|
|
52
|
+
|
|
39
53
|
Full documentation: [`guides/brief.md`](guides/brief.md). The guides index lives at
|
|
40
54
|
[`guides/README.md`](guides/README.md).
|
|
41
55
|
|