@kontourai/flow-agents 1.1.0 → 1.2.0
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/.github/workflows/runtime-compat.yml +5 -2
- package/CHANGELOG.md +26 -0
- package/README.md +26 -5
- package/build/src/cli/{flow-kit.js → kit.js} +122 -108
- package/build/src/cli/validate-source-tree.js +4 -4
- package/build/src/cli.js +3 -3
- package/build/src/flow-kit/validate.js +58 -62
- package/build/src/tools/build-universal-bundles.js +64 -17
- package/build/src/tools/generate-context-map.js +49 -7
- package/build/src/tools/validate-source-tree.js +32 -1
- package/docs/adr/0007-flow-skill-kit-tool-boundary.md +169 -0
- package/docs/adr/0007-skill-audit.md +112 -0
- package/docs/adr/0008-kit-operation-boundary.md +88 -0
- package/docs/context-map.md +18 -22
- package/docs/flow-kit-repository-contract.md +5 -5
- package/docs/getting-started.md +177 -0
- package/docs/index.md +19 -8
- package/docs/kit-authoring-guide.md +26 -7
- package/docs/knowledge-kit.md +2 -2
- package/docs/spec/runtime-hook-surface.md +1 -1
- package/docs/vision.md +1 -1
- package/docs/workflow-usage-guide.md +1 -1
- package/evals/fixtures/builder-kit-workflow-state/happy-path.json +2 -2
- package/evals/fixtures/builder-kit-workflow-state/mid-work-resume.json +2 -2
- package/evals/fixtures/console-learning-projection/artifacts/console-learning-correction/learning.json +1 -1
- package/evals/fixtures/pull-work-provider/github-issues.json +5 -5
- package/evals/integration/test_activate_npx_context.sh +2 -2
- package/evals/integration/test_bundle_install.sh +17 -12
- package/evals/integration/test_console_learning_projection.sh +1 -1
- package/evals/integration/test_flow_kit_install_git.sh +7 -7
- package/evals/integration/test_flow_kit_repository.sh +4 -4
- package/evals/integration/test_kit_conformance_levels.sh +1 -1
- package/evals/integration/test_local_flow_kit_install.sh +7 -7
- package/evals/integration/test_publish_change_helper.sh +1 -1
- package/evals/integration/test_pull_work_provider.sh +1 -1
- package/evals/integration/test_runtime_adapter_activation.sh +3 -3
- package/evals/lib/node.sh +2 -2
- package/evals/static/test_workflow_skills.sh +15 -15
- package/integrations/strands/flow_agents_strands/steering.py +1 -1
- package/integrations/strands-ts/src/hooks.ts +1 -1
- package/kits/builder/kit.json +17 -0
- package/{skills → kits/builder/skills}/builder-shape/SKILL.md +4 -4
- package/{skills → kits/builder/skills}/idea-to-backlog/SKILL.md +1 -1
- package/kits/knowledge/kit.json +16 -9
- package/package.json +8 -5
- package/packaging/packs.json +1 -21
- package/scripts/README.md +1 -1
- package/scripts/kit.js +2 -0
- package/skills/README.md +23 -0
- package/src/cli/{flow-kit.ts → kit.ts} +124 -109
- package/src/cli/validate-source-tree.ts +4 -4
- package/src/cli.ts +3 -3
- package/src/flow-kit/validate.ts +63 -57
- package/src/tools/build-universal-bundles.ts +60 -13
- package/src/tools/generate-context-map.ts +36 -6
- package/src/tools/validate-source-tree.ts +27 -1
- package/scripts/flow-kit.js +0 -2
- package/skills/context-budget/SKILL.md +0 -40
- package/skills/explore/SKILL.md +0 -137
- package/skills/feedback-loop/SKILL.md +0 -87
- package/skills/frontend-design/SKILL.md +0 -80
- /package/{skills → kits/builder/skills}/deliver/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/design-probe/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/evidence-gate/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/execute-plan/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/fix-bug/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/learning-review/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/pickup-probe/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/plan-work/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/pull-work/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/release-readiness/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/review-work/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/tdd-workflow/SKILL.md +0 -0
- /package/{skills → kits/builder/skills}/verify-work/SKILL.md +0 -0
- /package/{skills → kits/knowledge/skills}/knowledge-capture/SKILL.md +0 -0
package/docs/context-map.md
CHANGED
|
@@ -65,18 +65,18 @@ Primary tools: `npm run workflow:sidecar`, `npm run workflow:validate-artifacts`
|
|
|
65
65
|
|
|
66
66
|
| Skill | Source | When To Load |
|
|
67
67
|
| --- | --- | --- |
|
|
68
|
-
| deliver | skills/deliver/SKILL.md | Delivery workflow — selected work to delivered code. Ensures pull-work + pickup-probe preflight, then chains plan-work → execute-plan → review-work → verify-work → loop on failure without requiring user interaction between cleanly determ... |
|
|
69
|
-
| evidence-gate | skills/evidence-gate/SKILL.md | Evaluate whether completed work is trustworthy enough for human review, merge, or release. Use after implementation, verify-work, provider checks, CI, or remediation to map acceptance criteria to evidence, inspect scope integrity, classi... |
|
|
70
|
-
| execute-plan | skills/execute-plan/SKILL.md | Parallel execution primitive — plan artifact path to implemented code via tool-worker (x4). Reads plan directly. Updates session file between waves. |
|
|
71
|
-
| fix-bug | skills/fix-bug/SKILL.md | Bug fix orchestrator — diagnose → plan-work → execute-plan → review-work → verify-work → loop. Diagnosis phase is unique to bugs, then chains the same primitives. |
|
|
72
|
-
| idea-to-backlog | skills/idea-to-backlog/SKILL.md | Turn raw product or technical ideas into shaped, prioritized, executable GitHub issue backlog. Use for idea intake, ideation, product shaping, spike/prototype decisions, PRD-like feature briefs, prioritization, and backlog creation befor... |
|
|
73
|
-
| learning-review | skills/learning-review/SKILL.md | Capture post-merge, post-deploy, or post-incident learnings and feed them back into backlog, workflow skills, tests, docs, or knowledge. Use after release readiness, post-deploy checks, retrospectives, failed gates, or repeated workflow... |
|
|
74
|
-
| plan-work | skills/plan-work/SKILL.md | Code planning primitive — goal + directory to structured execution plan. Delegates to tool-planner. No resume, no ideation. |
|
|
75
|
-
| pull-work | skills/pull-work/SKILL.md | Select ready GitHub issues from the executable backlog and prepare them for implementation. Use when choosing what to work on next, reviewing a kanban-style issue board, enforcing WIP limits, grouping issues, deciding worktree isolation,... |
|
|
76
|
-
| release-readiness | skills/release-readiness/SKILL.md | Decide whether evidence-backed work is ready to merge, release, deploy, or hold. Use after evidence-gate PASS, before merge/release/deploy, and for post-deploy verification planning. |
|
|
77
|
-
| review-work | skills/review-work/SKILL.md | Review primitive - run report-only code, security, dependency, architecture/standards, and IaC/policy critique before verification; records findings through the critique artifact/sink, currently critique.json locally. |
|
|
78
|
-
| tdd-workflow | skills/tdd-workflow/SKILL.md | Test-driven development — RED → GREEN → REFACTOR with git checkpoints. Wraps plan-work → execute-plan → review-work → verify-work with test-first constraints and coverage gates. |
|
|
79
|
-
| verify-work | skills/verify-work/SKILL.md | Verification primitive — session file path to structured evidence verdict via tool-verifier + tool-playwright. Reads acceptance criteria from plan artifact. |
|
|
68
|
+
| deliver | kits/builder/skills/deliver/SKILL.md | Delivery workflow — selected work to delivered code. Ensures pull-work + pickup-probe preflight, then chains plan-work → execute-plan → review-work → verify-work → loop on failure without requiring user interaction between cleanly determ... |
|
|
69
|
+
| evidence-gate | kits/builder/skills/evidence-gate/SKILL.md | Evaluate whether completed work is trustworthy enough for human review, merge, or release. Use after implementation, verify-work, provider checks, CI, or remediation to map acceptance criteria to evidence, inspect scope integrity, classi... |
|
|
70
|
+
| execute-plan | kits/builder/skills/execute-plan/SKILL.md | Parallel execution primitive — plan artifact path to implemented code via tool-worker (x4). Reads plan directly. Updates session file between waves. |
|
|
71
|
+
| fix-bug | kits/builder/skills/fix-bug/SKILL.md | Bug fix orchestrator — diagnose → plan-work → execute-plan → review-work → verify-work → loop. Diagnosis phase is unique to bugs, then chains the same primitives. |
|
|
72
|
+
| idea-to-backlog | kits/builder/skills/idea-to-backlog/SKILL.md | Turn raw product or technical ideas into shaped, prioritized, executable GitHub issue backlog. Use for idea intake, ideation, product shaping, spike/prototype decisions, PRD-like feature briefs, prioritization, and backlog creation befor... |
|
|
73
|
+
| learning-review | kits/builder/skills/learning-review/SKILL.md | Capture post-merge, post-deploy, or post-incident learnings and feed them back into backlog, workflow skills, tests, docs, or knowledge. Use after release readiness, post-deploy checks, retrospectives, failed gates, or repeated workflow... |
|
|
74
|
+
| plan-work | kits/builder/skills/plan-work/SKILL.md | Code planning primitive — goal + directory to structured execution plan. Delegates to tool-planner. No resume, no ideation. |
|
|
75
|
+
| pull-work | kits/builder/skills/pull-work/SKILL.md | Select ready GitHub issues from the executable backlog and prepare them for implementation. Use when choosing what to work on next, reviewing a kanban-style issue board, enforcing WIP limits, grouping issues, deciding worktree isolation,... |
|
|
76
|
+
| release-readiness | kits/builder/skills/release-readiness/SKILL.md | Decide whether evidence-backed work is ready to merge, release, deploy, or hold. Use after evidence-gate PASS, before merge/release/deploy, and for post-deploy verification planning. |
|
|
77
|
+
| review-work | kits/builder/skills/review-work/SKILL.md | Review primitive - run report-only code, security, dependency, architecture/standards, and IaC/policy critique before verification; records findings through the critique artifact/sink, currently critique.json locally. |
|
|
78
|
+
| tdd-workflow | kits/builder/skills/tdd-workflow/SKILL.md | Test-driven development — RED → GREEN → REFACTOR with git checkpoints. Wraps plan-work → execute-plan → review-work → verify-work with test-first constraints and coverage gates. |
|
|
79
|
+
| verify-work | kits/builder/skills/verify-work/SKILL.md | Verification primitive — session file path to structured evidence verdict via tool-verifier + tool-playwright. Reads acceptance criteria from plan artifact. |
|
|
80
80
|
|
|
81
81
|
## Support Skills
|
|
82
82
|
|
|
@@ -84,17 +84,13 @@ Primary tools: `npm run workflow:sidecar`, `npm run workflow:validate-artifacts`
|
|
|
84
84
|
| --- | --- | --- |
|
|
85
85
|
| agentic-engineering | skills/agentic-engineering/SKILL.md | Eval-first execution, task decomposition, and cost-aware model routing for AI-driven development workflows. |
|
|
86
86
|
| browser-test | skills/browser-test/SKILL.md | Headless browser automation via Playwright — screenshots, accessibility checks, form filling, UI testing, DOM inspection. |
|
|
87
|
-
| builder-shape | skills/builder-shape/SKILL.md | Invoke Builder Kit shape from a raw idea or the current conversation context without requiring the user to name idea-to-backlog. Delegates shaping to idea-to-backlog, records the Builder Kit Flow Definition link, and stops at the backlog... |
|
|
88
|
-
| context-budget | skills/context-budget/SKILL.md | Audit token overhead across Flow Agents bundles — agent specs, skills, context files, MCP servers. Produces budget report with per-component breakdown and optimization suggestions. |
|
|
87
|
+
| builder-shape | kits/builder/skills/builder-shape/SKILL.md | Invoke Builder Kit shape from a raw idea or the current conversation context without requiring the user to name idea-to-backlog. Delegates shaping to idea-to-backlog, records the Builder Kit Flow Definition link, and stops at the backlog... |
|
|
89
88
|
| dependency-update | skills/dependency-update/SKILL.md | Analyze and upgrade project dependencies — latest versions, security vulnerabilities, actionable update plan across all package managers. |
|
|
90
|
-
| design-probe | skills/design-probe/SKILL.md | Generic one-question-at-a-time design probing interview for turning unclear goals, designs, or workflow states into shared understanding before planning or execution. |
|
|
89
|
+
| design-probe | kits/builder/skills/design-probe/SKILL.md | Generic one-question-at-a-time design probing interview for turning unclear goals, designs, or workflow states into shared understanding before planning or execution. |
|
|
91
90
|
| eval-rebuild | skills/eval-rebuild/SKILL.md | Project-specific build and install commands for the eval feedback loop. Injected into eval-builder agent. Replace this skill for different build systems. |
|
|
92
|
-
| explore | skills/explore/SKILL.md | Parallel codebase exploration — fans out subagents to map structure, entry points, dependencies, patterns, config, and tests in one pass. |
|
|
93
|
-
| feedback-loop | skills/feedback-loop/SKILL.md | Verify implementation actually works. Visual changes → Playwright; integration changes → commands/tests. Run after completing builds. |
|
|
94
|
-
| frontend-design | skills/frontend-design/SKILL.md | Create distinctive, production-grade frontend interfaces with high design quality. Use this skill when the user asks to build web components, pages, or applications. Generates creative, polished code that avoids generic AI aesthetics. |
|
|
95
91
|
| github-cli | skills/github-cli/SKILL.md | Interact with GitHub via gh CLI — PRs, issues, repos, releases, workflows, gists. |
|
|
96
|
-
| knowledge-capture | skills/knowledge-capture/SKILL.md | Save durable knowledge, lightweight pointers, user corrections, decisions, lessons, relationship context, or source references into the knowledge base. Use when the user says save, remember, capture, file this, bookmark context, or when... |
|
|
97
|
-
| pickup-probe | skills/pickup-probe/SKILL.md | Builder Kit work-item/docs/provider-grounded Probe specialization used at the design-probe flow step before plan-work. |
|
|
92
|
+
| knowledge-capture | kits/knowledge/skills/knowledge-capture/SKILL.md | Save durable knowledge, lightweight pointers, user corrections, decisions, lessons, relationship context, or source references into the knowledge base. Use when the user says save, remember, capture, file this, bookmark context, or when... |
|
|
93
|
+
| pickup-probe | kits/builder/skills/pickup-probe/SKILL.md | Builder Kit work-item/docs/provider-grounded Probe specialization used at the design-probe flow step before plan-work. |
|
|
98
94
|
| search-first | skills/search-first/SKILL.md | Research-before-coding workflow. Search for existing tools, libraries, and patterns before writing custom code. |
|
|
99
95
|
|
|
100
96
|
## Agents
|
|
@@ -129,8 +125,8 @@ Pack composition is defined in `packaging/packs.json`. The current builder expor
|
|
|
129
125
|
|
|
130
126
|
| Pack | Default | Skills | Agents | Powers | Purpose |
|
|
131
127
|
| --- | --- | --- | --- | --- | --- |
|
|
132
|
-
| core | yes |
|
|
133
|
-
| development | no |
|
|
128
|
+
| core | yes | 2 | 5 | 1 | Small default surface for reliable coding and workflow execution. |
|
|
129
|
+
| development | no | 4 | 9 | 1 | Development workflow depth for backlog, release, dependency, GitHub, TDD, and frontend work. |
|
|
134
130
|
|
|
135
131
|
## Current Workflow State
|
|
136
132
|
|
|
@@ -23,11 +23,11 @@ npm run validate:source --
|
|
|
23
23
|
Installed Flow Agents bundles include a local-only install command for Flow Kit repositories that already exist on disk:
|
|
24
24
|
|
|
25
25
|
```bash
|
|
26
|
-
npm run
|
|
27
|
-
npm run
|
|
28
|
-
npm run
|
|
29
|
-
npm run
|
|
30
|
-
npm run
|
|
26
|
+
npm run kit -- install path/to/local-kit --dest /path/to/installed-flow-agents
|
|
27
|
+
npm run kit -- list --dest /path/to/installed-flow-agents
|
|
28
|
+
npm run kit -- status --dest /path/to/installed-flow-agents
|
|
29
|
+
npm run kit -- status example-kit --dest /path/to/installed-flow-agents
|
|
30
|
+
npm run kit -- activate --dest /path/to/installed-flow-agents --format json
|
|
31
31
|
```
|
|
32
32
|
|
|
33
33
|
`--dest` is the installed bundle or workspace root. When omitted, the command uses the current working directory. Tests and automation should pass a temp destination; the command does not need to write to a user home directory.
|
|
@@ -0,0 +1,177 @@
|
|
|
1
|
+
---
|
|
2
|
+
title: Builder Kit Quick Start
|
|
3
|
+
---
|
|
4
|
+
|
|
5
|
+
# Builder Kit Quick Start
|
|
6
|
+
|
|
7
|
+
This guide takes you from nothing to a running, gated build flow in about two minutes. By the end you will have Flow Agents installed in your coding agent's workspace and understand how the Builder Kit's two flows — `builder.shape` and `builder.build` — turn a raw idea into a merged change with evidence.
|
|
8
|
+
|
|
9
|
+
## 1. Install
|
|
10
|
+
|
|
11
|
+
Run this from any workspace you want to add discipline to:
|
|
12
|
+
|
|
13
|
+
```bash
|
|
14
|
+
npx @kontourai/flow-agents init --runtime <your-agent> --dest .
|
|
15
|
+
```
|
|
16
|
+
|
|
17
|
+
Where `--runtime` is one of `claude-code`, `codex`, `kiro`, `opencode`, or `pi`. For a fully unattended install:
|
|
18
|
+
|
|
19
|
+
```bash
|
|
20
|
+
npx @kontourai/flow-agents init --runtime claude-code --dest . --yes
|
|
21
|
+
npx @kontourai/flow-agents init --runtime codex --dest . --yes
|
|
22
|
+
npx @kontourai/flow-agents init --runtime opencode --dest . --yes
|
|
23
|
+
```
|
|
24
|
+
|
|
25
|
+
The installer copies agents, skills, context contracts, hook scripts, Kit assets, and the Flow Agents telemetry descriptor into the workspace. The Builder Kit installs automatically. Your agent reads those files at startup; no plugin registry required.
|
|
26
|
+
|
|
27
|
+
**What lands in the workspace:**
|
|
28
|
+
|
|
29
|
+
- `agents/`, `skills/`, `context/` — skill definitions and shared contracts the agent follows
|
|
30
|
+
- `scripts/hooks/` — four canonical policy scripts (steering, quality gate, stop-goal-fit, config protection) wired to the host's native hook surface
|
|
31
|
+
- `kits/builder/` — Builder Kit flows and skills
|
|
32
|
+
- `console.telemetry.json` — telemetry descriptor (writes locally by default)
|
|
33
|
+
|
|
34
|
+
At L2 conformance (Claude Code, Codex, Kiro) all four hooks are active and the stop hook blocks early exits that lack evidence. At L1 (opencode, pi) steering and stop-goal-fit run but without blocking capability; see the [Runtime Hook Surface spec](spec/runtime-hook-surface.html) for the gaps.
|
|
35
|
+
|
|
36
|
+
## 2. What the Builder Kit gives you
|
|
37
|
+
|
|
38
|
+
The Builder Kit installs two flows:
|
|
39
|
+
|
|
40
|
+
| Flow | ID | What it does |
|
|
41
|
+
|---|---|---|
|
|
42
|
+
| Shape | `builder.shape` | Turns a raw idea into slices and executable work items |
|
|
43
|
+
| Build | `builder.build` | Takes a ready work item through design probe → plan → execute → verify → PR → merge readiness → learn |
|
|
44
|
+
|
|
45
|
+
These are not freeform chat sessions. Each flow has **evidence gates** — named checkpoints that expect specific claims before the next step starts. The agent cannot silently skip a gate; it either satisfies the expectation or the transition is blocked (at L2) or flagged (at L1).
|
|
46
|
+
|
|
47
|
+
**Shape flow gates** (`builder.shape`):
|
|
48
|
+
|
|
49
|
+
- `shape-gate` — problem, outcome, constraints, non-goals, success criteria, and risk are stated
|
|
50
|
+
- `breakdown-gate` — work is split into independently useful slices
|
|
51
|
+
- `file-issues-gate` — each slice becomes a filed work item with enough context to pull later
|
|
52
|
+
|
|
53
|
+
**Build flow gates** (`builder.build`):
|
|
54
|
+
|
|
55
|
+
- `pull-work-gate` — a ready work item is selected with scope and acceptance context
|
|
56
|
+
- `design-probe-gate` — goal fit, blockers, dependencies, and planning readiness are recorded before a plan is written
|
|
57
|
+
- `plan-gate` — the plan names files, changes, acceptance evidence, and sequencing
|
|
58
|
+
- `execute-gate` — changed files are recorded and unrelated work is excluded
|
|
59
|
+
- `verify-gate` — tests or checks have evidence tied to the implementation (up to 3 route-back attempts before blocking)
|
|
60
|
+
- `merge-ready-gate` — scope, evidence, and residual risks support a merge-ready decision
|
|
61
|
+
- `pr-open-gate` — a pull request exists with linked work and verification evidence
|
|
62
|
+
- `merge-ready-ci-gate` — CI and review status support merge
|
|
63
|
+
- `learn-gate` — decisions and delivery learnings are recorded for future work
|
|
64
|
+
|
|
65
|
+
The gate semantics live in [Kontour Flow](https://kontourai.github.io/flow/); Flow Agents compiles them to whatever hook surface your agent exposes.
|
|
66
|
+
|
|
67
|
+
## 3. A two-minute first run
|
|
68
|
+
|
|
69
|
+
### Step 1 — Shape an idea
|
|
70
|
+
|
|
71
|
+
In your coding agent, paste this:
|
|
72
|
+
|
|
73
|
+
```text
|
|
74
|
+
Use Builder Kit shape. I want to add a progress indicator to the CLI output so
|
|
75
|
+
users can see what step the installer is on. Keep it simple — just a step count
|
|
76
|
+
like "[2/5] Copying agents". Shape this into an executable work item and stop
|
|
77
|
+
at the backlog gate.
|
|
78
|
+
```
|
|
79
|
+
|
|
80
|
+
The agent will run the `builder-shape` / `idea-to-backlog` skill, which:
|
|
81
|
+
|
|
82
|
+
1. inventories the idea and classifies it
|
|
83
|
+
2. proposes the thinnest meaningful slice (the step counter) and names what is out of scope
|
|
84
|
+
3. drafts a shaped work item with a stated outcome, non-goals, acceptance criteria, and a verification expectation
|
|
85
|
+
4. stops at the `breakdown-gate` and waits for you to confirm before creating GitHub issues
|
|
86
|
+
|
|
87
|
+
You will see the agent write a local artifact at `.flow-agents/<slug>/<slug>--idea-to-backlog.md`. That artifact is the machine-readable input to the next stage — not a summary in the chat window.
|
|
88
|
+
|
|
89
|
+
To continue and file the GitHub issue:
|
|
90
|
+
|
|
91
|
+
```text
|
|
92
|
+
That looks right. File the GitHub issue and stop.
|
|
93
|
+
```
|
|
94
|
+
|
|
95
|
+
The agent runs the `file-issues` step, checks the `file-issues-gate`, and stops. You now have a shaped, filed work item that the build flow can pull.
|
|
96
|
+
|
|
97
|
+
### Step 2 — Build that work item
|
|
98
|
+
|
|
99
|
+
```text
|
|
100
|
+
Use deliver for the issue you just filed. Pull it, probe the design, plan it,
|
|
101
|
+
implement it, review it, verify it, and stop if any evidence is missing.
|
|
102
|
+
```
|
|
103
|
+
|
|
104
|
+
The `deliver` skill orchestrates the full `builder.build` flow:
|
|
105
|
+
|
|
106
|
+
1. **pull-work** — selects the issue, confirms scope and acceptance criteria (`pull-work-gate`)
|
|
107
|
+
2. **design-probe** — checks goal fit, identifies blockers and dependencies, and records planning readiness before touching a file (`design-probe-gate`)
|
|
108
|
+
3. **plan-work** — delegates to `tool-planner`, which writes a structured plan artifact naming files, changes, sequencing, and acceptance evidence (`plan-gate`)
|
|
109
|
+
4. **execute-plan** — fans out to up to four `tool-worker` subagents in parallel waves (`execute-gate`)
|
|
110
|
+
5. **review-work** — code and optional security review (`critique.json` sidecar)
|
|
111
|
+
6. **verify-work** — tests and checks with evidence tied to the change; if evidence is missing the verify-gate triggers a route-back (`verify-gate`)
|
|
112
|
+
7. **release-readiness** — scope, evidence, and risk assessment (`merge-ready-gate`)
|
|
113
|
+
8. **pull-request** — PR with linked work item and verification evidence (`pr-open-gate`)
|
|
114
|
+
|
|
115
|
+
You can also invoke each skill individually if you want explicit control:
|
|
116
|
+
|
|
117
|
+
```text
|
|
118
|
+
Use pull-work to select issue #42.
|
|
119
|
+
```
|
|
120
|
+
|
|
121
|
+
```text
|
|
122
|
+
Use plan-work on the session artifact from the pull-work step.
|
|
123
|
+
```
|
|
124
|
+
|
|
125
|
+
```text
|
|
126
|
+
Use verify-work on the current branch and report what evidence is present.
|
|
127
|
+
```
|
|
128
|
+
|
|
129
|
+
### What you observe
|
|
130
|
+
|
|
131
|
+
- **Between each step**, the agent writes a local session sidecar under `.flow-agents/<slug>/` — `state.json`, `acceptance.json`, `evidence.json`, and `handoff.json`. These survive compaction, tab close, or a new session. A future session resumes from recorded state.
|
|
132
|
+
- **At each gate**, the agent either presents the evidence and moves forward, or blocks and explains what is missing. It does not make up a confident summary and proceed.
|
|
133
|
+
- **The stop-goal-fit hook** (at L2) prevents the agent from stopping when evidence is still incomplete — you see a warning or block rather than "all done!" on partial work.
|
|
134
|
+
- **If verify fails**, the verify-gate routes back to execution (or plan, or design-probe, depending on the failure class) and tries again — up to three times before hard-blocking.
|
|
135
|
+
|
|
136
|
+
This is guided, not fully automated. The agent handles the mechanics; you make product decisions. Gates are explicit handoff points, not invisible checkboxes.
|
|
137
|
+
|
|
138
|
+
## 4. Inspect what you installed
|
|
139
|
+
|
|
140
|
+
After installing, you can inspect the Builder Kit's declared contents:
|
|
141
|
+
|
|
142
|
+
```bash
|
|
143
|
+
node build/src/cli.js kit inspect kits/builder
|
|
144
|
+
```
|
|
145
|
+
|
|
146
|
+
(Or, from a global install: `flow-agents kit inspect kits/builder`)
|
|
147
|
+
|
|
148
|
+
This prints the kit id, name, declared flows, skills, and conformance level (K0/K1). It does not require a running agent or active session.
|
|
149
|
+
|
|
150
|
+
To see the raw flow definitions with their gate expectations:
|
|
151
|
+
|
|
152
|
+
```bash
|
|
153
|
+
cat kits/builder/flows/shape.flow.json
|
|
154
|
+
cat kits/builder/flows/build.flow.json
|
|
155
|
+
```
|
|
156
|
+
|
|
157
|
+
## 5. Verify your setup
|
|
158
|
+
|
|
159
|
+
After installing, run the source validation to confirm the workspace is coherent:
|
|
160
|
+
|
|
161
|
+
```bash
|
|
162
|
+
npm run validate:source
|
|
163
|
+
```
|
|
164
|
+
|
|
165
|
+
For a full static eval pass (docs layout, legacy-term checks, bundle assertions):
|
|
166
|
+
|
|
167
|
+
```bash
|
|
168
|
+
npm run eval:static
|
|
169
|
+
```
|
|
170
|
+
|
|
171
|
+
## What to read next
|
|
172
|
+
|
|
173
|
+
- [Workflow Usage Guide](workflow-usage-guide.html) — example prompts and expected behavior for every skill and stage
|
|
174
|
+
- [Agent System Guidebook](agent-system-guidebook.html) — how the pieces fit together conceptually
|
|
175
|
+
- [Kit Authoring Guide](kit-authoring-guide.html) — author your own Flow Kit from scratch
|
|
176
|
+
- [Runtime Hook Surface spec](spec/runtime-hook-surface.html) — hook events, conformance levels, and host gaps
|
|
177
|
+
- [Workflow Artifact Lifecycle](workflow-artifact-lifecycle.html) — when to promote local artifacts to durable docs
|
package/docs/index.md
CHANGED
|
@@ -71,24 +71,31 @@ The same canonical policies wire into agent frameworks as in-process language-na
|
|
|
71
71
|
|
|
72
72
|
## Quick Start
|
|
73
73
|
|
|
74
|
+
Install into your workspace in one command:
|
|
75
|
+
|
|
74
76
|
```bash
|
|
75
|
-
npx @kontourai/flow-agents init --dest
|
|
77
|
+
npx @kontourai/flow-agents init --runtime <your-agent> --dest .
|
|
76
78
|
```
|
|
77
79
|
|
|
78
|
-
|
|
80
|
+
Where `--runtime` is `claude-code`, `codex`, `kiro`, `opencode`, or `pi`. The Builder Kit installs automatically and gives your agent two gated flows: `builder.shape` (idea → slices → filed work items) and `builder.build` (selected work item → design probe → plan → execute → verify → PR → learn).
|
|
79
81
|
|
|
80
|
-
|
|
81
|
-
|
|
82
|
-
|
|
83
|
-
|
|
82
|
+
Ask your agent to shape an idea:
|
|
83
|
+
|
|
84
|
+
```text
|
|
85
|
+
Use Builder Kit shape. I want to add a progress indicator to the CLI output
|
|
86
|
+
so users can see what step the installer is on. Shape this into an executable
|
|
87
|
+
work item and stop at the backlog gate.
|
|
84
88
|
```
|
|
85
89
|
|
|
86
|
-
Then
|
|
90
|
+
Then build it:
|
|
87
91
|
|
|
88
92
|
```text
|
|
89
|
-
Use deliver for
|
|
93
|
+
Use deliver for the issue you just filed. Pull it, probe the design, plan it,
|
|
94
|
+
implement it, verify it, and stop if any evidence is missing.
|
|
90
95
|
```
|
|
91
96
|
|
|
97
|
+
Each step has an evidence gate. The agent cannot proceed past a gate without the expected evidence — it either presents it or blocks and explains what is missing. See the <a href="getting-started.html">Builder Kit Quick Start</a> for a full two-minute walkthrough with worked examples and an explanation of what you observe at each gate.
|
|
98
|
+
|
|
92
99
|
For bugs:
|
|
93
100
|
|
|
94
101
|
```text
|
|
@@ -98,6 +105,10 @@ Use fix-bug. Reproduce the problem, diagnose root cause, implement the fix, and
|
|
|
98
105
|
## Explore the docs
|
|
99
106
|
|
|
100
107
|
<div class="doc-grid">
|
|
108
|
+
<a class="doc-card" href="getting-started.html">
|
|
109
|
+
<strong>Builder Kit Quick Start</strong>
|
|
110
|
+
<span>Zero to a running, gated build flow in two minutes: install, shape an idea into a work item, build it through the builder.shape and builder.build flows, and see what the evidence gates do.</span>
|
|
111
|
+
</a>
|
|
101
112
|
<a class="doc-card" href="workflow-usage-guide.html">
|
|
102
113
|
<strong>Workflow Usage Guide</strong>
|
|
103
114
|
<span>Every stage from shaping ideas to learning review, with example prompts and expected behavior.</span>
|
|
@@ -112,7 +112,7 @@ npm run validate:source --
|
|
|
112
112
|
Once validation passes, install the kit into a target workspace:
|
|
113
113
|
|
|
114
114
|
```bash
|
|
115
|
-
npx @kontourai/flow-agents
|
|
115
|
+
npx @kontourai/flow-agents kit install path/to/my-kit --dest /path/to/workspace
|
|
116
116
|
```
|
|
117
117
|
|
|
118
118
|
`--dest` is the installed Flow Agents bundle root. When omitted the command uses the current directory. From a contributor checkout of this repository, the equivalent form is `npm run flow-kit -- <command>`.
|
|
@@ -120,8 +120,8 @@ npx @kontourai/flow-agents flow-kit install-local path/to/my-kit --dest /path/to
|
|
|
120
120
|
Confirm the install:
|
|
121
121
|
|
|
122
122
|
```bash
|
|
123
|
-
npx @kontourai/flow-agents
|
|
124
|
-
npx @kontourai/flow-agents
|
|
123
|
+
npx @kontourai/flow-agents kit list --dest /path/to/workspace
|
|
124
|
+
npx @kontourai/flow-agents kit status my-kit --dest /path/to/workspace
|
|
125
125
|
```
|
|
126
126
|
|
|
127
127
|
`list` prints one summary line per installed kit. `status` prints JSON provenance including the SHA256 content hash and `installed` or `missing` state.
|
|
@@ -129,7 +129,7 @@ npx @kontourai/flow-agents flow-kit status my-kit --dest /path/to/workspace
|
|
|
129
129
|
To replace an existing install after you update the kit source:
|
|
130
130
|
|
|
131
131
|
```bash
|
|
132
|
-
npx @kontourai/flow-agents
|
|
132
|
+
npx @kontourai/flow-agents kit install path/to/my-kit --dest /path/to/workspace --update
|
|
133
133
|
```
|
|
134
134
|
|
|
135
135
|
## Activate
|
|
@@ -137,7 +137,7 @@ npx @kontourai/flow-agents flow-kit install-local path/to/my-kit --dest /path/to
|
|
|
137
137
|
After installing, run activate to write runtime-local files into the workspace:
|
|
138
138
|
|
|
139
139
|
```bash
|
|
140
|
-
npx @kontourai/flow-agents
|
|
140
|
+
npx @kontourai/flow-agents kit activate --dest /path/to/workspace --format json
|
|
141
141
|
```
|
|
142
142
|
|
|
143
143
|
The `codex-local` adapter is selected automatically. To activate for Strands, pass `--adapter strands-local`.
|
|
@@ -194,7 +194,7 @@ The **container contract** is owned by [Kontour Flow](https://kontourai.github.i
|
|
|
194
194
|
- Path rules: all declared paths must be relative, must not contain `..`, and must resolve inside the kit directory.
|
|
195
195
|
- The **extension model**: unknown top-level fields are consumer extensions; core validation ignores-but-permits them.
|
|
196
196
|
|
|
197
|
-
Container validation is surfaced in Flow's CLI as `flow
|
|
197
|
+
Container validation is surfaced in Flow's CLI as `flow kit validate <kit-dir>`. Flow Agents delegates core container validation to `@kontourai/flow`'s `validateKitContainer` library function; the contract lives once, in Flow.
|
|
198
198
|
|
|
199
199
|
For the authoritative container spec and JSON Schema, see [kontourai/flow#67](https://github.com/kontourai/flow/pull/67) (the spec PR) and the published `schemas/flow-kit-container.schema.json` in the `@kontourai/flow` package.
|
|
200
200
|
|
|
@@ -284,7 +284,7 @@ Layering summary:
|
|
|
284
284
|
Use the `inspect` subcommand to derive a kit's conformance level and consumer targets:
|
|
285
285
|
|
|
286
286
|
```bash
|
|
287
|
-
npm run
|
|
287
|
+
npm run kit -- inspect path/to/my-kit
|
|
288
288
|
```
|
|
289
289
|
|
|
290
290
|
Output is stable JSON:
|
|
@@ -310,3 +310,22 @@ The `inspect` command is read-only and safe to run before install.
|
|
|
310
310
|
## Direction
|
|
311
311
|
|
|
312
312
|
Flow Kits are designed to be shareable workflow units — authored once, carried across teams and workspaces. The intended growth path is distribution from git remotes and a curated Kontour kit catalog of Kontour-authored kits covering work modes beyond software delivery. Today install is local-path only; remote fetch is explicitly a non-goal in this version.
|
|
313
|
+
|
|
314
|
+
## Migration: flow-kit → flow-agents kit
|
|
315
|
+
|
|
316
|
+
The standalone `flow-kit` binary was removed in this release. The `flow-agents kit` subcommand is the replacement.
|
|
317
|
+
|
|
318
|
+
| Old command | New command |
|
|
319
|
+
|---|---|
|
|
320
|
+
| `flow-kit install-local <path>` | `flow-agents kit install <path>` |
|
|
321
|
+
| `flow-kit install-git <url>` | `flow-agents kit install <url>` |
|
|
322
|
+
| `flow-kit activate` | `flow-agents kit activate` |
|
|
323
|
+
| `flow-kit inspect <dir>` | `flow-agents kit inspect <dir>` |
|
|
324
|
+
| `flow-kit list` | `flow-agents kit list` |
|
|
325
|
+
| `flow-kit status <id>` | `flow-agents kit status <id>` |
|
|
326
|
+
| `npx @kontourai/flow-agents flow-kit ...` | `npx @kontourai/flow-agents kit ...` |
|
|
327
|
+
| `npm run flow-kit -- ...` | `npm run kit -- ...` |
|
|
328
|
+
|
|
329
|
+
`install-local` and `install-git` are unified into a single `install` command. The source argument auto-detects whether it is a local path or a git URL (http://, https://, git+, ssh://, file://).
|
|
330
|
+
|
|
331
|
+
Running the old `flow-kit` command will produce a "command not found" error from your shell — there is no alias or shim. Update any scripts or CI configurations that call `flow-kit` to use `flow-agents kit`.
|
package/docs/knowledge-kit.md
CHANGED
|
@@ -4,7 +4,7 @@ title: Knowledge Kit
|
|
|
4
4
|
|
|
5
5
|
# Knowledge Kit
|
|
6
6
|
|
|
7
|
-
The Knowledge Kit is a Flow Kit for durable, gated knowledge storage. It packages a store contract, five pipeline flows, pluggable store adapters, and a parameterized contract test suite — all validated and installed through the
|
|
7
|
+
The Knowledge Kit is a Flow Kit for durable, gated knowledge storage. It packages a store contract, five pipeline flows, pluggable store adapters, and a parameterized contract test suite — all validated and installed through the `flow-agents kit` path.
|
|
8
8
|
|
|
9
9
|
## What it ships
|
|
10
10
|
|
|
@@ -44,7 +44,7 @@ The vector detector is fail-closed: infrastructure failures throw `EMBED_FAILURE
|
|
|
44
44
|
|
|
45
45
|
```bash
|
|
46
46
|
# Install the kit into a workspace
|
|
47
|
-
npx @kontourai/flow-agents
|
|
47
|
+
npx @kontourai/flow-agents kit install kits/knowledge --dest /path/to/workspace
|
|
48
48
|
|
|
49
49
|
# Run the contract suite against the default adapter
|
|
50
50
|
node --test kits/knowledge/evals/contract-suite/suite.test.js
|
|
@@ -490,7 +490,7 @@ Kit flow activation for Strands workspaces is implemented as a new runtime adapt
|
|
|
490
490
|
The CLI command is:
|
|
491
491
|
|
|
492
492
|
```bash
|
|
493
|
-
flow-kit activate --adapter strands-local [--dest DIR] [--source-root DIR]
|
|
493
|
+
flow-agents kit activate --adapter strands-local [--dest DIR] [--source-root DIR]
|
|
494
494
|
```
|
|
495
495
|
|
|
496
496
|
This writes activated flow files to `.flow-agents/runtime/strands/flows/<kit-id>/<asset-id>.flow.json` and produces a parity-diagnostic `activation.json` (same schema as codex-local: `schema_version`, `adapter`, `supported_asset_classes`, `generated_runtime_files`, `skipped_assets`, `warnings`, `errors`).
|
package/docs/vision.md
CHANGED
|
@@ -20,7 +20,7 @@ One official framework adapter spike exists: `integrations/strands/` is a Python
|
|
|
20
20
|
|
|
21
21
|
### What ships today
|
|
22
22
|
|
|
23
|
-
Kit authoring is shipped. The `kit.json` contract at schema version 1.0 is validated by the `flow-kit` CLI before any install. The [Kit Authoring Guide](kit-authoring-guide.html) walks from an empty directory to a validated, locally installed kit. Two reference kits ship in `kits/`:
|
|
23
|
+
Kit authoring is shipped. The `kit.json` contract at schema version 1.0 is validated by the `flow-agents kit` CLI before any install. The [Kit Authoring Guide](kit-authoring-guide.html) walks from an empty directory to a validated, locally installed kit. Two reference kits ship in `kits/`:
|
|
24
24
|
|
|
25
25
|
**Builder Kit** packages the full `idea → backlog → plan → build → review → verify → evidence → release → learning` pipeline as two flows (`builder.shape`, `builder.build`). It installs automatically.
|
|
26
26
|
|
|
@@ -43,7 +43,7 @@ Separate these into distinct ideas, use Probe/alignment questions if the outcome
|
|
|
43
43
|
|
|
44
44
|
Expected behavior:
|
|
45
45
|
|
|
46
|
-
- delegate shaping to `skills/idea-to-backlog/SKILL.md`
|
|
46
|
+
- delegate shaping to `kits/builder/skills/idea-to-backlog/SKILL.md`
|
|
47
47
|
- link the artifact to the Builder Kit Flow Definition at `kits/builder/flows/shape.flow.json`
|
|
48
48
|
- inventory each distinct idea separately
|
|
49
49
|
- classify each idea
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
"planning_readiness": "ready",
|
|
50
50
|
"expected_modified_files": [
|
|
51
51
|
"context/contracts/builder-kit-workflow-state-contract.md",
|
|
52
|
-
"skills/design-probe/SKILL.md",
|
|
53
|
-
"skills/pickup-probe/SKILL.md"
|
|
52
|
+
"kits/builder/skills/design-probe/SKILL.md",
|
|
53
|
+
"kits/builder/skills/pickup-probe/SKILL.md"
|
|
54
54
|
],
|
|
55
55
|
"conflict_risks": [
|
|
56
56
|
"workflow guidance shared with downstream Builder Kit automation"
|
|
@@ -54,8 +54,8 @@
|
|
|
54
54
|
"planning_readiness": "completed",
|
|
55
55
|
"expected_modified_files": [
|
|
56
56
|
"context/contracts/builder-kit-workflow-state-contract.md",
|
|
57
|
-
"skills/design-probe/SKILL.md",
|
|
58
|
-
"skills/pickup-probe/SKILL.md",
|
|
57
|
+
"kits/builder/skills/design-probe/SKILL.md",
|
|
58
|
+
"kits/builder/skills/pickup-probe/SKILL.md",
|
|
59
59
|
"evals/fixtures/builder-kit-workflow-state/happy-path.json",
|
|
60
60
|
"evals/fixtures/builder-kit-workflow-state/mid-work-resume.json"
|
|
61
61
|
],
|
|
@@ -73,7 +73,7 @@
|
|
|
73
73
|
"number": 97,
|
|
74
74
|
"title": "Emit source revision metadata and structured blockers",
|
|
75
75
|
"state": "OPEN",
|
|
76
|
-
"body": "## Problem\nDownstream pickup needs durable source revision and blocker metadata.\n\n## Scope\n- Emit provider-neutral work-item metadata.\n- Preserve human-readable blocker prose.\n\n## Acceptance criteria\n- Source revision fields normalize.\n- Structured blockers preserve provider refs and text blockers.\n\n## Dependencies / Blockers\nRequires kontourai/flow#2.\nBlocked by product decision on rollout scope.\n\n## Source artifact\n`.flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md`\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"source_revisions\": [\n {\n \"repo\": \"kontourai/flow-agents\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\n \"planned_at\": \"2026-06-03T03:23:14Z\",\n \"planning_artifact_ref\": \".flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md\",\n \"planning_scope_refs\": [\n \"skills/idea-to-backlog/SKILL.md\",\n \"context/contracts/work-item-contract.md\"\n ]\n },\n {\n \"repo\": \"kontourai/flow\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb\",\n \"planned_at\": \"2026-06-03T03:23:14Z\",\n \"planning_artifact_ref\": \".flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md\",\n \"planning_scope_refs\": [\"context/contracts/work-item-contract.md\"]\n }\n ],\n \"blockers\": [\n {\n \"type\": \"work_item\",\n \"ref\": \"kontourai/flow#2\",\n \"status\": \"blocked\",\n \"summary\": \"Requires Flow contract issue first.\"\n },\n {\n \"type\": \"text\",\n \"status\": \"blocked\",\n \"summary\": \"Product decision on rollout scope.\"\n }\n ]\n}\n-->",
|
|
76
|
+
"body": "## Problem\nDownstream pickup needs durable source revision and blocker metadata.\n\n## Scope\n- Emit provider-neutral work-item metadata.\n- Preserve human-readable blocker prose.\n\n## Acceptance criteria\n- Source revision fields normalize.\n- Structured blockers preserve provider refs and text blockers.\n\n## Dependencies / Blockers\nRequires kontourai/flow#2.\nBlocked by product decision on rollout scope.\n\n## Source artifact\n`.flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md`\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"source_revisions\": [\n {\n \"repo\": \"kontourai/flow-agents\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa\",\n \"planned_at\": \"2026-06-03T03:23:14Z\",\n \"planning_artifact_ref\": \".flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md\",\n \"planning_scope_refs\": [\n \"kits/builder/skills/idea-to-backlog/SKILL.md\",\n \"context/contracts/work-item-contract.md\"\n ]\n },\n {\n \"repo\": \"kontourai/flow\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb\",\n \"planned_at\": \"2026-06-03T03:23:14Z\",\n \"planning_artifact_ref\": \".flow-agents/idea-to-backlog-source-revision-structured-blockers/idea-to-backlog-source-revision-structured-blockers--plan.md\",\n \"planning_scope_refs\": [\"context/contracts/work-item-contract.md\"]\n }\n ],\n \"blockers\": [\n {\n \"type\": \"work_item\",\n \"ref\": \"kontourai/flow#2\",\n \"status\": \"blocked\",\n \"summary\": \"Requires Flow contract issue first.\"\n },\n {\n \"type\": \"text\",\n \"status\": \"blocked\",\n \"summary\": \"Product decision on rollout scope.\"\n }\n ]\n}\n-->",
|
|
77
77
|
"labels": [],
|
|
78
78
|
"assignees": [],
|
|
79
79
|
"milestone": null,
|
|
@@ -101,7 +101,7 @@
|
|
|
101
101
|
"number": 110,
|
|
102
102
|
"title": "Fresh planned item",
|
|
103
103
|
"state": "OPEN",
|
|
104
|
-
"body": "## Scope\nUse fresh source revision metadata.\n\n## Acceptance criteria\nFreshness is verified.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"cccccccccccccccccccccccccccccccccccccccc\",\n \"planned_at\": \"2026-06-02T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/fresh/fresh--plan.md\",\n \"planning_scope_refs\": [\"skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
104
|
+
"body": "## Scope\nUse fresh source revision metadata.\n\n## Acceptance criteria\nFreshness is verified.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"cccccccccccccccccccccccccccccccccccccccc\",\n \"planned_at\": \"2026-06-02T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/fresh/fresh--plan.md\",\n \"planning_scope_refs\": [\"kits/builder/skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
105
105
|
"labels": [],
|
|
106
106
|
"assignees": [],
|
|
107
107
|
"milestone": null,
|
|
@@ -115,7 +115,7 @@
|
|
|
115
115
|
"number": 111,
|
|
116
116
|
"title": "Drifted planned item",
|
|
117
117
|
"state": "OPEN",
|
|
118
|
-
"body": "## Scope\nUse drifted source revision metadata.\n\n## Acceptance criteria\nFreshness reports benign drift.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"dddddddddddddddddddddddddddddddddddddddd\",\n \"planned_at\": \"2026-06-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/drifted/drifted--plan.md\",\n \"planning_scope_refs\": [\"skills/pickup-probe/SKILL.md\"]\n}\n-->",
|
|
118
|
+
"body": "## Scope\nUse drifted source revision metadata.\n\n## Acceptance criteria\nFreshness reports benign drift.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"dddddddddddddddddddddddddddddddddddddddd\",\n \"planned_at\": \"2026-06-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/drifted/drifted--plan.md\",\n \"planning_scope_refs\": [\"kits/builder/skills/pickup-probe/SKILL.md\"]\n}\n-->",
|
|
119
119
|
"labels": [],
|
|
120
120
|
"assignees": [],
|
|
121
121
|
"milestone": null,
|
|
@@ -129,7 +129,7 @@
|
|
|
129
129
|
"number": 112,
|
|
130
130
|
"title": "Stale planned item",
|
|
131
131
|
"state": "OPEN",
|
|
132
|
-
"body": "## Scope\nUse stale source revision metadata.\n\n## Acceptance criteria\nFreshness routes stale work.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee\",\n \"planned_at\": \"2026-04-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/stale/stale--plan.md\",\n \"planning_scope_refs\": [\"context/contracts/work-item-contract.md\", \"skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
132
|
+
"body": "## Scope\nUse stale source revision metadata.\n\n## Acceptance criteria\nFreshness routes stale work.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_base_sha\": \"eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee\",\n \"planned_at\": \"2026-04-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/stale/stale--plan.md\",\n \"planning_scope_refs\": [\"context/contracts/work-item-contract.md\", \"kits/builder/skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
133
133
|
"labels": [],
|
|
134
134
|
"assignees": [],
|
|
135
135
|
"milestone": null,
|
|
@@ -143,7 +143,7 @@
|
|
|
143
143
|
"number": 113,
|
|
144
144
|
"title": "Legacy item missing planned base",
|
|
145
145
|
"state": "OPEN",
|
|
146
|
-
"body": "## Scope\nPreserve legacy gap for missing planned_base_sha.\n\n## Acceptance criteria\nFreshness is not verified.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_at\": \"2026-06-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/legacy/legacy--plan.md\",\n \"planning_scope_refs\": [\"skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
146
|
+
"body": "## Scope\nPreserve legacy gap for missing planned_base_sha.\n\n## Acceptance criteria\nFreshness is not verified.\n\n<!-- flow-agents:work-item-metadata\n{\n \"schema_version\": \"1.0\",\n \"planned_base_ref\": \"main\",\n \"planned_at\": \"2026-06-01T00:00:00Z\",\n \"planning_artifact_ref\": \".flow-agents/legacy/legacy--plan.md\",\n \"planning_scope_refs\": [\"kits/builder/skills/pull-work/SKILL.md\"]\n}\n-->",
|
|
147
147
|
"labels": [],
|
|
148
148
|
"assignees": [],
|
|
149
149
|
"milestone": null,
|
|
@@ -14,7 +14,7 @@ trap 'rm -rf "$TMP_DIR"' EXIT
|
|
|
14
14
|
pass() { echo " ✓ $1"; }
|
|
15
15
|
fail() { echo " ✗ $1"; errors=$((errors + 1)); }
|
|
16
16
|
|
|
17
|
-
CLI="$ROOT/scripts/
|
|
17
|
+
CLI="$ROOT/scripts/kit.js"
|
|
18
18
|
MIXED_SRC="$ROOT/evals/fixtures/flow-kit-repository/mixed-runtime-kit"
|
|
19
19
|
|
|
20
20
|
echo "=== activate npx-context Checks (Issue #57) ==="
|
|
@@ -27,7 +27,7 @@ mkdir -p "$DEST"
|
|
|
27
27
|
|
|
28
28
|
# Install a kit into the destination workspace first.
|
|
29
29
|
install_out="$TMP_DIR/install.out"
|
|
30
|
-
if flow_agents_node "$CLI" install
|
|
30
|
+
if flow_agents_node "$CLI" install "$MIXED_SRC" --dest "$DEST" >"$install_out" 2>&1; then
|
|
31
31
|
pass "mixed-runtime-kit installs into workspace"
|
|
32
32
|
else
|
|
33
33
|
fail "install failed (prerequisite step)"
|