@interf/compiler 0.18.0 → 0.22.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/dist/cli/commands/build-plan.d.ts +2 -0
- package/dist/cli/commands/build-plan.js +376 -0
- package/dist/cli/commands/{compile.d.ts → build.d.ts} +2 -2
- package/dist/cli/commands/{compile.js → build.js} +18 -18
- package/dist/cli/commands/doctor.js +2 -2
- package/dist/cli/commands/mcp.d.ts +0 -34
- package/dist/cli/commands/mcp.js +261 -60
- package/dist/cli/commands/prep.js +67 -35
- package/dist/cli/commands/reset.d.ts +1 -1
- package/dist/cli/commands/reset.js +6 -6
- package/dist/cli/commands/runs.js +105 -33
- package/dist/cli/commands/status.js +4 -2
- package/dist/cli/commands/test.d.ts +10 -0
- package/dist/cli/commands/{verify.js → test.js} +19 -21
- package/dist/cli/commands/web.js +82 -8
- package/dist/cli/commands/wizard.js +63 -64
- package/dist/cli/index.d.ts +4 -4
- package/dist/cli/index.js +7 -7
- package/dist/interf-ui/404.html +1 -0
- package/dist/interf-ui/__next.__PAGE__.txt +10 -0
- package/dist/{compiler-ui → interf-ui}/__next._full.txt +12 -12
- package/dist/interf-ui/__next._head.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/__next._index.txt +4 -4
- package/dist/{compiler-ui → interf-ui}/__next._tree.txt +3 -3
- package/dist/interf-ui/_next/static/chunks/0.tjb6f4golw..css +3 -0
- package/dist/interf-ui/_next/static/chunks/085-n_jv2ng_q.css +1 -0
- package/dist/{compiler-ui/_next/static/chunks/0_i-3_5l9t2qe.js → interf-ui/_next/static/chunks/0dn41fa_zvgsl.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/0g-ea0zj5d-0k.js +1 -0
- package/dist/interf-ui/_next/static/chunks/0gwqglc4iz583.js +1 -0
- package/dist/interf-ui/_next/static/chunks/0haldgm65ve6l.js +1 -0
- package/dist/{compiler-ui/_next/static/chunks/08g7lvje.te.u.js → interf-ui/_next/static/chunks/0nv3am99vjzn4.js} +1 -1
- package/dist/{compiler-ui/_next/static/chunks/0n51hrfoufc7g.js → interf-ui/_next/static/chunks/0s77gt_o4jwtx.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/0~a36ujuzpaz..js +116 -0
- package/dist/interf-ui/_next/static/chunks/10jeodxe4nkgj.js +31 -0
- package/dist/interf-ui/_next/static/chunks/119h2rouych2t.js +1 -0
- package/dist/interf-ui/_next/static/chunks/13c8b~m8knjsf.js +1 -0
- package/dist/{compiler-ui/_next/static/chunks/08m7vf5asqlsm.js → interf-ui/_next/static/chunks/14dznb2qpt-ho.js} +5 -5
- package/dist/interf-ui/_next/static/chunks/15z_en80lrq-3.js +5 -0
- package/dist/{compiler-ui/_next/static/chunks/turbopack-10e~t1yzi4svj.js → interf-ui/_next/static/chunks/turbopack-0p.pvcjrtq-jh.js} +1 -1
- package/dist/interf-ui/_next/static/chunks/turbopack-0usj_75.8frlw.js +1 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._full.txt +9 -9
- package/dist/interf-ui/_not-found/__next._head.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._index.txt +4 -4
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._not-found.__PAGE__.txt +2 -2
- package/dist/interf-ui/_not-found/__next._not-found.txt +5 -0
- package/dist/{compiler-ui → interf-ui}/_not-found/__next._tree.txt +2 -2
- package/dist/interf-ui/_not-found.html +1 -0
- package/dist/{compiler-ui → interf-ui}/_not-found.txt +9 -9
- package/dist/interf-ui/index.html +1 -0
- package/dist/{compiler-ui → interf-ui}/index.txt +12 -12
- package/dist/packages/build-plans/authoring/build-plan-authoring.d.ts +36 -0
- package/dist/packages/{methods/authoring/method-authoring.js → build-plans/authoring/build-plan-authoring.js} +57 -88
- package/dist/packages/build-plans/authoring/build-plan-edit-session.d.ts +18 -0
- package/dist/packages/{methods/authoring/method-edit-session.js → build-plans/authoring/build-plan-edit-session.js} +34 -34
- package/dist/packages/build-plans/authoring/build-plan-improvement.d.ts +23 -0
- package/dist/packages/build-plans/authoring/build-plan-improvement.js +216 -0
- package/dist/packages/build-plans/authoring/index.d.ts +4 -0
- package/dist/packages/build-plans/authoring/index.js +4 -0
- package/dist/packages/{methods/authoring/lib/method-edit-utils.d.ts → build-plans/authoring/lib/build-plan-edit-utils.d.ts} +3 -3
- package/dist/packages/build-plans/build-plan-resolution.d.ts +6 -0
- package/dist/packages/build-plans/build-plan-resolution.js +7 -0
- package/dist/packages/build-plans/index.d.ts +2 -0
- package/dist/packages/build-plans/index.js +2 -0
- package/dist/packages/build-plans/package/build-plan-definitions.d.ts +61 -0
- package/dist/packages/build-plans/package/build-plan-definitions.js +214 -0
- package/dist/packages/{methods/package/method-helpers.d.ts → build-plans/package/build-plan-helpers.d.ts} +7 -7
- package/dist/packages/{methods/package/method-helpers.js → build-plans/package/build-plan-helpers.js} +20 -20
- package/dist/packages/build-plans/package/build-plan-review-paths.d.ts +10 -0
- package/dist/packages/build-plans/package/build-plan-review-paths.js +31 -0
- package/dist/packages/{methods/package/method-stage-runner.d.ts → build-plans/package/build-plan-stage-runner.d.ts} +12 -12
- package/dist/packages/{methods/package/method-stage-runner.js → build-plans/package/build-plan-stage-runner.js} +10 -10
- package/dist/packages/build-plans/package/builtin-build-plan.d.ts +37 -0
- package/dist/packages/build-plans/package/builtin-build-plan.js +91 -0
- package/dist/packages/{methods → build-plans}/package/context-interface.d.ts +11 -11
- package/dist/packages/{methods → build-plans}/package/context-interface.js +23 -23
- package/dist/packages/build-plans/package/interf-build-plan-package.d.ts +31 -0
- package/dist/packages/build-plans/package/interf-build-plan-package.js +466 -0
- package/dist/packages/{methods → build-plans}/package/lib/package-root.js +1 -1
- package/dist/packages/build-plans/package/local-build-plans.d.ts +74 -0
- package/dist/packages/build-plans/package/local-build-plans.js +472 -0
- package/dist/packages/build-plans/package/user-build-plans.d.ts +17 -0
- package/dist/packages/build-plans/package/user-build-plans.js +77 -0
- package/dist/packages/contracts/index.d.ts +1 -1
- package/dist/packages/contracts/lib/preparation-paths.d.ts +37 -37
- package/dist/packages/contracts/lib/preparation-paths.js +43 -43
- package/dist/packages/contracts/lib/schema.d.ts +38 -41
- package/dist/packages/contracts/lib/schema.js +44 -35
- package/dist/packages/engine/action-definitions.d.ts +228 -67
- package/dist/packages/engine/action-definitions.js +277 -273
- package/dist/packages/engine/action-planner.d.ts +2 -2
- package/dist/packages/engine/action-planner.js +8 -15
- package/dist/packages/engine/action-values.d.ts +1 -1
- package/dist/packages/engine/action-values.js +1 -1
- package/dist/packages/engine/agents/index.d.ts +2 -2
- package/dist/packages/engine/agents/index.js +1 -1
- package/dist/packages/engine/agents/lib/args.d.ts +2 -2
- package/dist/packages/engine/agents/lib/args.js +1 -1
- package/dist/packages/engine/agents/lib/constants.js +1 -1
- package/dist/packages/engine/agents/lib/execution-profile.d.ts +5 -5
- package/dist/packages/engine/agents/lib/execution-profile.js +3 -3
- package/dist/packages/engine/agents/lib/executors.d.ts +11 -11
- package/dist/packages/engine/agents/lib/render.js +4 -4
- package/dist/packages/engine/agents/lib/shells.d.ts +33 -31
- package/dist/packages/engine/agents/lib/shells.js +254 -250
- package/dist/packages/engine/agents/lib/types.d.ts +2 -2
- package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.d.ts +3 -0
- package/dist/packages/engine/agents/lib/verifiable-context-bootstrap.js +19 -0
- package/dist/packages/engine/agents/role-executors.d.ts +7 -7
- package/dist/packages/engine/agents/role-executors.js +2 -2
- package/dist/packages/engine/agents/role-router.d.ts +2 -2
- package/dist/packages/engine/agents/role-router.js +1 -1
- package/dist/packages/engine/build/artifact-counts.d.ts +1 -0
- package/dist/packages/engine/{compile → build}/artifact-counts.js +7 -7
- package/dist/packages/engine/{compile → build}/artifact-status.d.ts +8 -8
- package/dist/packages/engine/{compile → build}/artifact-status.js +19 -19
- package/dist/packages/engine/{compile → build}/billing-events.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/billing-events.js +4 -4
- package/dist/packages/engine/build/build-execution.d.ts +4 -0
- package/dist/packages/engine/build/build-execution.js +4 -0
- package/dist/packages/engine/build/build-pipeline.d.ts +56 -0
- package/dist/packages/engine/{compile/compiled-pipeline.js → build/build-pipeline.js} +55 -55
- package/dist/packages/engine/build/build-plan-primitives.d.ts +2 -0
- package/dist/packages/engine/{compile/method-primitives.js → build/build-plan-primitives.js} +1 -1
- package/dist/packages/engine/build/build-plan-runs.d.ts +14 -0
- package/dist/packages/engine/build/build-plan-runs.js +31 -0
- package/dist/packages/engine/build/build-stage-plan.d.ts +16 -0
- package/dist/packages/engine/build/build-stage-plan.js +100 -0
- package/dist/packages/engine/build/build-stage-runner.d.ts +15 -0
- package/dist/packages/engine/{compile/compiled-stage-runner.js → build/build-stage-runner.js} +21 -21
- package/dist/packages/engine/build/build-target.d.ts +11 -0
- package/dist/packages/engine/build/build-target.js +16 -0
- package/dist/packages/engine/{compile → build}/check-evaluator.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/check-evaluator.js +1 -1
- package/dist/packages/engine/{compile → build}/discovery.d.ts +2 -2
- package/dist/packages/engine/{compile → build}/discovery.js +4 -4
- package/dist/packages/engine/{compile → build}/index.d.ts +6 -6
- package/dist/packages/engine/{compile → build}/index.js +5 -5
- package/dist/packages/engine/{compile → build}/lib/schema.d.ts +79 -79
- package/dist/packages/engine/{compile → build}/lib/schema.js +71 -71
- package/dist/packages/engine/build/reset.d.ts +2 -0
- package/dist/packages/engine/build/reset.js +74 -0
- package/dist/packages/engine/{compile → build}/runtime-contracts.js +8 -8
- package/dist/packages/engine/build/runtime-inventory.d.ts +7 -0
- package/dist/packages/engine/{compile → build}/runtime-inventory.js +8 -8
- package/dist/packages/engine/{compile → build}/runtime-paths.js +6 -6
- package/dist/packages/engine/{compile → build}/runtime-prompt.js +11 -11
- package/dist/packages/engine/build/runtime-reconcile.d.ts +2 -0
- package/dist/packages/engine/{compile → build}/runtime-reconcile.js +18 -18
- package/dist/packages/engine/{compile → build}/runtime-runs.js +27 -27
- package/dist/packages/engine/{compile → build}/runtime-types.d.ts +10 -10
- package/dist/packages/engine/build/source-files.d.ts +46 -0
- package/dist/packages/engine/{compile → build}/source-files.js +32 -32
- package/dist/packages/engine/build/state-artifacts.d.ts +9 -0
- package/dist/packages/engine/build/state-artifacts.js +14 -0
- package/dist/packages/engine/build/state-health.d.ts +4 -0
- package/dist/packages/engine/{compile → build}/state-health.js +40 -40
- package/dist/packages/engine/build/state-io.d.ts +11 -0
- package/dist/packages/engine/{compile → build}/state-io.js +22 -22
- package/dist/packages/engine/build/state-paths.js +16 -0
- package/dist/packages/engine/build/state-view.d.ts +5 -0
- package/dist/packages/engine/{compile → build}/state-view.js +29 -29
- package/dist/packages/engine/build/state.d.ts +7 -0
- package/dist/packages/engine/build/state.js +12 -0
- package/dist/packages/engine/build/validate-verifiable-context.d.ts +27 -0
- package/dist/packages/engine/{compile/validate-compiled.js → build/validate-verifiable-context.js} +73 -73
- package/dist/packages/engine/{compile → build}/validate.d.ts +4 -4
- package/dist/packages/engine/{compile → build}/validate.js +27 -27
- package/dist/packages/engine/build/verifiable-context-paths.d.ts +47 -0
- package/dist/packages/engine/build/verifiable-context-paths.js +121 -0
- package/dist/packages/engine/build/verifiable-context-schema.d.ts +21 -0
- package/dist/packages/engine/build/verifiable-context-schema.js +126 -0
- package/dist/packages/engine/client.d.ts +16 -16
- package/dist/packages/engine/client.js +21 -21
- package/dist/packages/engine/cloud-seams.d.ts +3 -3
- package/dist/packages/engine/connection-config.js +1 -1
- package/dist/packages/engine/execution/index.d.ts +2 -2
- package/dist/packages/engine/execution/index.js +1 -1
- package/dist/packages/engine/execution/lib/schema.d.ts +100 -95
- package/dist/packages/engine/execution/lib/schema.js +31 -31
- package/dist/packages/engine/index.d.ts +7 -7
- package/dist/packages/engine/index.js +3 -3
- package/dist/packages/engine/instance-paths.d.ts +45 -39
- package/dist/packages/engine/instance-paths.js +54 -48
- package/dist/packages/engine/lib/schema.d.ts +1568 -484
- package/dist/packages/engine/lib/schema.js +172 -161
- package/dist/packages/engine/native-run-handlers.d.ts +12 -12
- package/dist/packages/engine/native-run-handlers.js +138 -136
- package/dist/packages/engine/preparation-store.d.ts +31 -36
- package/dist/packages/engine/preparation-store.js +42 -31
- package/dist/packages/engine/readiness-check-draft.d.ts +2 -2
- package/dist/packages/engine/readiness-check-draft.js +1 -1
- package/dist/packages/engine/requested-artifacts.d.ts +5 -0
- package/dist/packages/engine/requested-artifacts.js +36 -0
- package/dist/packages/engine/routes.d.ts +18 -17
- package/dist/packages/engine/routes.js +20 -19
- package/dist/packages/engine/run-observability.d.ts +5 -3
- package/dist/packages/engine/run-observability.js +103 -90
- package/dist/packages/engine/runtime-caches.d.ts +16 -16
- package/dist/packages/engine/runtime-caches.js +26 -26
- package/dist/packages/engine/runtime-event-applier.d.ts +2 -2
- package/dist/packages/engine/runtime-event-applier.js +1 -1
- package/dist/packages/engine/runtime-persistence.d.ts +9 -9
- package/dist/packages/engine/runtime-persistence.js +16 -16
- package/dist/packages/engine/runtime-proposal-helpers.d.ts +15 -15
- package/dist/packages/engine/runtime-proposal-helpers.js +81 -85
- package/dist/packages/engine/runtime-resource-builders.d.ts +16 -11
- package/dist/packages/engine/runtime-resource-builders.js +32 -21
- package/dist/packages/engine/runtime.d.ts +53 -60
- package/dist/packages/engine/runtime.js +555 -453
- package/dist/packages/engine/server.d.ts +2 -2
- package/dist/packages/engine/server.js +226 -143
- package/dist/packages/engine/service-registry.d.ts +5 -17
- package/dist/packages/engine/service-registry.js +5 -20
- package/dist/packages/engine/verify/lib/schema.d.ts +19 -19
- package/dist/packages/engine/verify/lib/schema.js +36 -8
- package/dist/packages/engine/verify/readiness-check-run.d.ts +15 -16
- package/dist/packages/engine/verify/readiness-check-run.js +46 -46
- package/dist/packages/engine/verify/verify-execution.d.ts +3 -3
- package/dist/packages/engine/verify/verify-execution.js +10 -10
- package/dist/packages/engine/verify/verify-paths.d.ts +4 -4
- package/dist/packages/engine/verify/verify-paths.js +17 -17
- package/dist/packages/engine/verify/verify-sandbox.d.ts +1 -1
- package/dist/packages/engine/verify/verify-sandbox.js +26 -26
- package/dist/packages/engine/verify/verify-targets.d.ts +2 -2
- package/dist/packages/engine/verify/verify-targets.js +17 -17
- package/dist/packages/engine/verify/verify-types.d.ts +2 -2
- package/dist/packages/engine/verify/verify.d.ts +1 -1
- package/dist/packages/engine/verify/verify.js +1 -1
- package/dist/packages/engine/wire-schemas.d.ts +42 -40
- package/dist/packages/engine/wire-schemas.js +13 -13
- package/dist/packages/project/index.d.ts +1 -1
- package/dist/packages/project/interf-bootstrap.d.ts +1 -1
- package/dist/packages/project/interf-bootstrap.js +1 -1
- package/dist/packages/project/interf-detect.d.ts +11 -11
- package/dist/packages/project/interf-detect.js +36 -36
- package/dist/packages/project/interf-scaffold.d.ts +3 -3
- package/dist/packages/project/interf-scaffold.js +72 -72
- package/dist/packages/project/interf.d.ts +4 -4
- package/dist/packages/project/interf.js +3 -3
- package/dist/packages/project/lib/schema.d.ts +205 -12
- package/dist/packages/project/lib/schema.js +59 -14
- package/dist/packages/project/preparation-entries.d.ts +3 -3
- package/dist/packages/project/preparation-entries.js +19 -19
- package/dist/packages/project/source-config.d.ts +10 -10
- package/dist/packages/project/source-config.js +62 -58
- package/dist/packages/project/source-folders.js +1 -1
- package/package.json +14 -17
- package/public-repo/CONTRIBUTING.md +47 -0
- package/public-repo/README.md +327 -0
- package/public-repo/SECURITY.md +67 -0
- package/public-repo/build-plans/interf-default/README.md +33 -0
- package/public-repo/build-plans/interf-default/build/stages/shape/SKILL.md +27 -0
- package/{builtin-methods/interf-default/compile → public-repo/build-plans/interf-default/build}/stages/structure/SKILL.md +2 -2
- package/{builtin-methods/interf-default/compile → public-repo/build-plans/interf-default/build}/stages/summarize/SKILL.md +1 -1
- package/{builtin-methods/interf-default/method.json → public-repo/build-plans/interf-default/build-plan.json} +16 -16
- package/{builtin-methods/interf-default/method.schema.json → public-repo/build-plans/interf-default/build-plan.schema.json} +4 -4
- package/public-repo/build-plans/interf-default/improve/SKILL.md +18 -0
- package/public-repo/build-plans/interf-default/use/query/SKILL.md +23 -0
- package/public-repo/plugins/README.md +9 -0
- package/public-repo/plugins/interf/.claude-plugin/plugin.json +21 -0
- package/public-repo/plugins/interf/.mcp.json +12 -0
- package/public-repo/plugins/interf/README.md +32 -0
- package/public-repo/plugins/interf/skills/interf/SKILL.md +376 -0
- package/public-repo/skills/interf/SKILL.md +376 -0
- package/README.md +0 -311
- package/agent-skills/interf-actions/SKILL.md +0 -185
- package/agent-skills/interf-actions/references/cli.md +0 -243
- package/builtin-methods/interf-default/README.md +0 -29
- package/builtin-methods/interf-default/compile/stages/shape/SKILL.md +0 -31
- package/builtin-methods/interf-default/improve/SKILL.md +0 -18
- package/builtin-methods/interf-default/use/query/SKILL.md +0 -28
- package/dist/cli/commands/method.d.ts +0 -2
- package/dist/cli/commands/method.js +0 -113
- package/dist/cli/commands/verify.d.ts +0 -10
- package/dist/compiler-ui/404.html +0 -1
- package/dist/compiler-ui/__next.__PAGE__.txt +0 -10
- package/dist/compiler-ui/__next._head.txt +0 -5
- package/dist/compiler-ui/_next/static/chunks/06yhdspx~ca5-.js +0 -5
- package/dist/compiler-ui/_next/static/chunks/06z~l3kwb891e.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0_c_tvh-cukjz.css +0 -3
- package/dist/compiler-ui/_next/static/chunks/0b-ywny_j0g~0.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0b52v41o1gixx.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0f_geuwdesg_c.js +0 -114
- package/dist/compiler-ui/_next/static/chunks/0gpzgsv0w.q~m.js +0 -31
- package/dist/compiler-ui/_next/static/chunks/0ilwfezfvu6~-.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/0xxmf45eskdt~.css +0 -1
- package/dist/compiler-ui/_next/static/chunks/14wtz~vq25~qq.js +0 -1
- package/dist/compiler-ui/_next/static/chunks/turbopack-0.uq1k8c0j4s..js +0 -1
- package/dist/compiler-ui/_not-found/__next._head.txt +0 -5
- package/dist/compiler-ui/_not-found/__next._not-found.txt +0 -5
- package/dist/compiler-ui/_not-found.html +0 -1
- package/dist/compiler-ui/index.html +0 -1
- package/dist/packages/engine/agents/lib/compiled-bootstrap.d.ts +0 -3
- package/dist/packages/engine/agents/lib/compiled-bootstrap.js +0 -19
- package/dist/packages/engine/compile/artifact-counts.d.ts +0 -1
- package/dist/packages/engine/compile/compiled-compile.d.ts +0 -4
- package/dist/packages/engine/compile/compiled-compile.js +0 -4
- package/dist/packages/engine/compile/compiled-paths.d.ts +0 -47
- package/dist/packages/engine/compile/compiled-paths.js +0 -121
- package/dist/packages/engine/compile/compiled-pipeline.d.ts +0 -56
- package/dist/packages/engine/compile/compiled-schema.d.ts +0 -21
- package/dist/packages/engine/compile/compiled-schema.js +0 -126
- package/dist/packages/engine/compile/compiled-stage-plan.d.ts +0 -16
- package/dist/packages/engine/compile/compiled-stage-plan.js +0 -100
- package/dist/packages/engine/compile/compiled-stage-runner.d.ts +0 -15
- package/dist/packages/engine/compile/compiled-target.d.ts +0 -11
- package/dist/packages/engine/compile/compiled-target.js +0 -16
- package/dist/packages/engine/compile/method-primitives.d.ts +0 -2
- package/dist/packages/engine/compile/method-runs.d.ts +0 -14
- package/dist/packages/engine/compile/method-runs.js +0 -31
- package/dist/packages/engine/compile/reset.d.ts +0 -2
- package/dist/packages/engine/compile/reset.js +0 -74
- package/dist/packages/engine/compile/runtime-inventory.d.ts +0 -7
- package/dist/packages/engine/compile/runtime-reconcile.d.ts +0 -2
- package/dist/packages/engine/compile/source-files.d.ts +0 -46
- package/dist/packages/engine/compile/state-artifacts.d.ts +0 -9
- package/dist/packages/engine/compile/state-artifacts.js +0 -14
- package/dist/packages/engine/compile/state-health.d.ts +0 -4
- package/dist/packages/engine/compile/state-io.d.ts +0 -11
- package/dist/packages/engine/compile/state-paths.js +0 -16
- package/dist/packages/engine/compile/state-view.d.ts +0 -5
- package/dist/packages/engine/compile/state.d.ts +0 -7
- package/dist/packages/engine/compile/state.js +0 -12
- package/dist/packages/engine/compile/validate-compiled.d.ts +0 -27
- package/dist/packages/methods/authoring/index.d.ts +0 -4
- package/dist/packages/methods/authoring/index.js +0 -4
- package/dist/packages/methods/authoring/method-authoring.d.ts +0 -34
- package/dist/packages/methods/authoring/method-edit-session.d.ts +0 -18
- package/dist/packages/methods/authoring/method-improvement.d.ts +0 -23
- package/dist/packages/methods/authoring/method-improvement.js +0 -217
- package/dist/packages/methods/index.d.ts +0 -2
- package/dist/packages/methods/index.js +0 -2
- package/dist/packages/methods/method-resolution.d.ts +0 -6
- package/dist/packages/methods/method-resolution.js +0 -7
- package/dist/packages/methods/package/builtin-compiled-method.d.ts +0 -37
- package/dist/packages/methods/package/builtin-compiled-method.js +0 -91
- package/dist/packages/methods/package/interf-method-package.d.ts +0 -31
- package/dist/packages/methods/package/interf-method-package.js +0 -466
- package/dist/packages/methods/package/local-methods.d.ts +0 -73
- package/dist/packages/methods/package/local-methods.js +0 -457
- package/dist/packages/methods/package/method-definitions.d.ts +0 -61
- package/dist/packages/methods/package/method-definitions.js +0 -214
- package/dist/packages/methods/package/method-review-paths.d.ts +0 -10
- package/dist/packages/methods/package/method-review-paths.js +0 -31
- package/dist/packages/methods/package/user-methods.d.ts +0 -17
- package/dist/packages/methods/package/user-methods.js +0 -77
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_buildManifest.js +0 -0
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_clientMiddlewareManifest.js +0 -0
- /package/dist/{compiler-ui/_next/static/6qyE1u9m_oBUkvAhhoCmO → interf-ui/_next/static/_qJKnA0dammQ306MG_zMq}/_ssgManifest.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/03~yq9q893hmn.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/0y5z3t-z1c8ks.js.map +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/chunks/turbopack-worker-0sjn--fhq~1cg.js +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/GeistMono_Variable.p.17jn9btb_52pq.woff2 +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/Geist_Variable-s.p.0-te~ja_gpvcf.woff2 +0 -0
- /package/dist/{compiler-ui → interf-ui}/_next/static/media/worker.102zas1s52_pf.js +0 -0
- /package/dist/packages/{methods/authoring/lib/method-edit-utils.js → build-plans/authoring/lib/build-plan-edit-utils.js} +0 -0
- /package/dist/packages/{methods → build-plans}/package/lib/package-root.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-contracts.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-paths.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-prompt.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-runs.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime-types.js +0 -0
- /package/dist/packages/engine/{compile → build}/runtime.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/runtime.js +0 -0
- /package/dist/packages/engine/{compile → build}/state-paths.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/validate-helpers.d.ts +0 -0
- /package/dist/packages/engine/{compile → build}/validate-helpers.js +0 -0
- /package/{LICENSE.md → public-repo/LICENSE.md} +0 -0
- /package/{TRADEMARKS.md → public-repo/TRADEMARKS.md} +0 -0
|
@@ -0,0 +1,327 @@
|
|
|
1
|
+
# Interf
|
|
2
|
+
|
|
3
|
+
**Data preparation for agents.**
|
|
4
|
+
|
|
5
|
+
Agents miss things in files.
|
|
6
|
+
|
|
7
|
+
Interf builds verifiable context for agents from your files.
|
|
8
|
+
|
|
9
|
+
It turns hidden file discovery into traceable artifacts with proof of how they were built.
|
|
10
|
+
|
|
11
|
+
When agents answer from your files, they first have to discover what is in them. That context-building step is hidden, inconsistent, and hard to verify: you cannot see which files were checked, what was extracted, or what the agent skipped. When the agent misses a file or page, the output can sound confident but be wrong.
|
|
12
|
+
|
|
13
|
+
Source discovery should be separate from agent work. Interf separates that step, builds verifiable context, and lets your agent work from traceable artifacts instead of rediscovering the files during the job.
|
|
14
|
+
|
|
15
|
+
```text
|
|
16
|
+
Source files Verifiable context agents use
|
|
17
|
+
|
|
18
|
+
bristol-office-market/ <context-locator>/
|
|
19
|
+
q4-market-report.pdf AGENTS.md
|
|
20
|
+
lease-comps.xlsx .interf/runtime/source-snapshot.json
|
|
21
|
+
planning-notes.md home.md
|
|
22
|
+
exports/availability.csv summaries/
|
|
23
|
+
knowledge/
|
|
24
|
+
```
|
|
25
|
+
|
|
26
|
+
## What a Build Run Produces
|
|
27
|
+
|
|
28
|
+
A Build run produces verifiable context plus proof of work. Verifiable context is what agents use. The proof shows which source files were assigned, which Build Plan stages ran, what each stage wrote, and whether required artifacts exist.
|
|
29
|
+
|
|
30
|
+
For the built-in `interf-default` Build Plan, a Build run looks like this:
|
|
31
|
+
|
|
32
|
+
```text
|
|
33
|
+
Source: bristol-office-market
|
|
34
|
+
Build Plan: interf-default
|
|
35
|
+
Requested Artifacts: atlas, summaries, knowledge, claims, indexes
|
|
36
|
+
|
|
37
|
+
Build run
|
|
38
|
+
record source references
|
|
39
|
+
summarize -> summaries/
|
|
40
|
+
structure -> knowledge/
|
|
41
|
+
shape -> home.md and agent entrypoints
|
|
42
|
+
record proof -> processed files, stage outputs, required artifacts
|
|
43
|
+
|
|
44
|
+
verifiable context
|
|
45
|
+
locator -> { kind: "local-path", value: "<local-path-returned-by-interf>" }
|
|
46
|
+
```
|
|
47
|
+
|
|
48
|
+
The output is not an answer. It is a prepared local folder with routes, artifacts, source snapshots, and agent instructions. Your runtime agent reads that folder when it does the actual agent work.
|
|
49
|
+
|
|
50
|
+
## Design Choices
|
|
51
|
+
|
|
52
|
+
- `Preparation-scoped`: every Preparation starts from a specific Source, requested Artifacts, and agent job, not a generic index over all your files.
|
|
53
|
+
- `Deterministic`: Interf runs each stage, an ordered phase of a Build Plan, and shows stage-by-stage proof of work: which files were processed, what each stage produced, and whether required outputs exist. Agents do not have to rebuild the full picture while they work.
|
|
54
|
+
- `Local-first and private`: your files, readiness checks, and agent runs stay on your machine. No cloud, no uploads, no telemetry.
|
|
55
|
+
- `Bring your own AI`: use Claude Code, Codex, or another local agent.
|
|
56
|
+
- `File over app`: verifiable context is exposed as a local folder owned by the instance — no hidden store, no hidden index. Inspect it, diff it, version it.
|
|
57
|
+
- `Readiness checks you control`: every build can be checked against gates you wrote from the files. If the context is `not ready`, `interf test` shows the readiness evidence behind that status.
|
|
58
|
+
|
|
59
|
+
## Why Not Just Ask Your Agent?
|
|
60
|
+
|
|
61
|
+
You can. Interf can use Claude Code, Codex, or another local agent while it builds verifiable context.
|
|
62
|
+
|
|
63
|
+
A one-off preprocessing prompt gives you another agent answer to trust. Interf puts that work inside a Build Plan you can inspect: requested artifacts, declared stages, stage-by-stage proof of work, and readiness checks that decide whether the context is `ready` or `not ready`.
|
|
64
|
+
|
|
65
|
+
The agent can still execute the stages. Interf shows what ran, which files were processed, what artifacts and evidence were produced, and whether the result is ready for the agent work.
|
|
66
|
+
|
|
67
|
+
## Install
|
|
68
|
+
|
|
69
|
+
```bash
|
|
70
|
+
npm install -g @interf/compiler
|
|
71
|
+
interf # opens the wizard; start or connect an engine when needed
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Requires Node.js 20+ and a local coding agent such as Claude Code or Codex. Run `interf doctor --live` if the executor is not detected.
|
|
75
|
+
|
|
76
|
+
## Quick Start
|
|
77
|
+
|
|
78
|
+
```bash
|
|
79
|
+
interf web # terminal 1: start the local engine
|
|
80
|
+
interf prep create bristol \ # terminal 2: save the source + requested Artifacts
|
|
81
|
+
--source ./bristol-office-market \
|
|
82
|
+
--about "Bristol annual take-up and availability chart lookup" \
|
|
83
|
+
--requested-artifacts-json '[{"title":"Guide to the report","checks":["Every page or file is listed.","Pages about Bristol and annual take-up are marked."]},{"title":"Annual take-up figures","checks":["Every figure has a source reference."]}]'
|
|
84
|
+
interf build-plan draft bristol \ # draft the Build Plan for review
|
|
85
|
+
--task "Bristol annual take-up and availability chart lookup"
|
|
86
|
+
interf build bristol # build verifiable context, returns the locator
|
|
87
|
+
interf test bristol # check readiness
|
|
88
|
+
```
|
|
89
|
+
|
|
90
|
+
`interf web` starts the engine in the foreground and writes the active
|
|
91
|
+
connection record so subsequent CLI commands can connect. Agents can use
|
|
92
|
+
`interf web start` for an explicit managed background engine, then
|
|
93
|
+
`interf web stop` when their work is done. Mutating commands never implicitly
|
|
94
|
+
auto-start an engine — if no instance is connected, they exit with a hint
|
|
95
|
+
pointing at `interf web` / `interf web start` (local) or `interf login`
|
|
96
|
+
(future cloud).
|
|
97
|
+
|
|
98
|
+
`interf build` returns the artifact locator on success — for a local
|
|
99
|
+
engine that's a `local-path` you can open with any tool. Point your agent at
|
|
100
|
+
that path. There's no `--out` flag, no implicit copy, no hidden store: the
|
|
101
|
+
instance owns the bytes and the API tells you where they are.
|
|
102
|
+
|
|
103
|
+
If you want a baseline before building verifiable context, run `interf test bristol --target source-files`. It is optional proof, not the main path.
|
|
104
|
+
|
|
105
|
+
## Verifiable Context
|
|
106
|
+
|
|
107
|
+
Verifiable context is the output Interf builds from your files for agents. The current local engine exposes it as a local folder. Do not hardcode its location. The API returns a typed locator (`{ kind: "local-path" | "remote-url", value }`); your agent reads from there.
|
|
108
|
+
|
|
109
|
+
It gives agents evidence, structure, and cross-file connections for navigating the files. It is not a replacement for your files. For the built-in `interf-default`, it includes:
|
|
110
|
+
|
|
111
|
+
```text
|
|
112
|
+
<context-locator>/
|
|
113
|
+
AGENTS.md # agent-facing entry point and source-checking rules
|
|
114
|
+
CLAUDE.md # same guidance for Claude Code
|
|
115
|
+
.interf/
|
|
116
|
+
runtime/
|
|
117
|
+
source-snapshot.json # source references captured for the latest run
|
|
118
|
+
stages/ # per-stage source input lists
|
|
119
|
+
home.md # overview and routes for agents
|
|
120
|
+
summaries/ # one note per source file
|
|
121
|
+
knowledge/ # linked notes built from the files
|
|
122
|
+
```
|
|
123
|
+
|
|
124
|
+
The source files stay the source of truth. Interf writes verifiable context inside the instance's data dir; it does not modify the source.
|
|
125
|
+
|
|
126
|
+
`AGENTS.md` tells agents how to use the verifiable context: start from the prepared outputs, follow the prepared routes, and use the recorded source references when exact source evidence matters.
|
|
127
|
+
|
|
128
|
+
Interf also records stage-by-stage proof of work: which files were processed, what each stage produced, and whether required outputs were created.
|
|
129
|
+
|
|
130
|
+
The returned local folder carries source references, not a mandatory copy of every source file. The source files remain where you keep them; Interf records which sources were assigned and what artifacts were produced from them.
|
|
131
|
+
|
|
132
|
+
## Build Plans
|
|
133
|
+
|
|
134
|
+
A Build Plan tells Interf how to build requested Artifacts from your source files for the job agents need to do. It can start as a draft inside one Preparation, based on the user's instructions, the agent goal, and the described Source. If it works, save it and reuse it on another Source.
|
|
135
|
+
|
|
136
|
+
The built-in `interf-default` Build Plan ships with `interf`. Save your own local Build Plan with `interf build-plan save <path>`; draft new ones with `interf build-plan draft <prep-id>`.
|
|
137
|
+
|
|
138
|
+
```text
|
|
139
|
+
<build-plan-folder>/
|
|
140
|
+
build-plan.json # Build Plan definition: artifacts, stages, build rules
|
|
141
|
+
build-plan.schema.json # output contract: required verifiable-context files and folders
|
|
142
|
+
README.md # what this Build Plan is for
|
|
143
|
+
build/
|
|
144
|
+
stages/
|
|
145
|
+
summarize/ # stage instructions Interf runs during the Build run
|
|
146
|
+
structure/
|
|
147
|
+
shape/
|
|
148
|
+
use/
|
|
149
|
+
query/ # how agents read the verifiable context
|
|
150
|
+
improve/ # how Interf revises this plan if readiness checks still fail
|
|
151
|
+
```
|
|
152
|
+
|
|
153
|
+
- `build-plan.json` is the current technical filename for the Build Plan definition: source data, requested artifacts, stages, and how the files should be built.
|
|
154
|
+
- `build-plan.schema.json` describes the output contract: what the verifiable context must contain. Interf enforces it when you run `interf build`.
|
|
155
|
+
- `build/stages/<stage>/` is where you author one folder per stage — a small, specific phase like `summarize` or `structure`. You write the instructions; Interf runs them during the Build run.
|
|
156
|
+
- `use/query/` holds the instructions agents follow when they read the verifiable context for live agent work.
|
|
157
|
+
- `improve/` holds the instructions Interf follows when the first build misses and the Build Plan itself needs editing.
|
|
158
|
+
|
|
159
|
+
A Build Plan defines the stages, output contract, proof requirements, and improvement instructions Interf runs on your files. The result is verifiable context your agents can read.
|
|
160
|
+
|
|
161
|
+
## Build Plan Improvement
|
|
162
|
+
|
|
163
|
+
When the first Build run still misses readiness checks, Interf edits the Build Plan and builds again. Same files, same checks, improved plan and verifiable context. Run `interf build-plan improve <prep-id>` to invoke that loop manually.
|
|
164
|
+
|
|
165
|
+
Interf saves every readiness-check run inside the returned local folder under `.interf/tests/`. You can inspect what changed and why a later Build run did better.
|
|
166
|
+
|
|
167
|
+
## How Interf Builds
|
|
168
|
+
|
|
169
|
+
You don't need to think about roles. By default Interf uses your active agent for every stage of every Build run. Roles are available for advanced users who want different agents per stage; defaults are good and stable.
|
|
170
|
+
|
|
171
|
+
Interf treats connected agents as a first-class primitive and uses a small role taxonomy internally to route stages between them. The default behavior is single-active-agent — one installed agent runs everything — but you can opt into per-role specialization without changing any Build Plan.
|
|
172
|
+
|
|
173
|
+
```text
|
|
174
|
+
Connected agents Role map (per-instance)
|
|
175
|
+
claude-code (active) extractor → claude-code
|
|
176
|
+
codex summarizer → claude-code
|
|
177
|
+
pdf-extract (custom) structurer → claude-code
|
|
178
|
+
verifier → claude-code
|
|
179
|
+
general → claude-code
|
|
180
|
+
|
|
181
|
+
A Build run
|
|
182
|
+
for each stage in the Build Plan
|
|
183
|
+
look up the stage's role in the role map
|
|
184
|
+
invoke the mapped agent on the prepared shell
|
|
185
|
+
record which agent ran which stage
|
|
186
|
+
```
|
|
187
|
+
|
|
188
|
+
Build Plans declare an optional `role` per stage — one of `extractor`, `summarizer`, `structurer`, `verifier`, or `general`. Custom role names are allowed; unknown roles fall through to `general`.
|
|
189
|
+
|
|
190
|
+
The role map lives in the instance's agent settings. On a fresh install with one agent installed, every role maps to that agent and you get the same single-active-agent behavior 0.14 had. To change which agent runs which role:
|
|
191
|
+
|
|
192
|
+
```bash
|
|
193
|
+
interf agents ls
|
|
194
|
+
interf agents register opencode --command "opencode --prompt"
|
|
195
|
+
interf agents map structurer codex
|
|
196
|
+
interf agents use claude-code # set the active agent
|
|
197
|
+
interf agents unmap structurer # fall back to active
|
|
198
|
+
```
|
|
199
|
+
|
|
200
|
+
Or use the **Agents** tab in Interf UI. Either surface mutates the same instance agent settings through the local service.
|
|
201
|
+
|
|
202
|
+
Readiness-check runs always resolve to the `verifier` role. Build Plan authoring runs ask the authoring agent to propose a `role` per stage based on the prompt content; missing roles default to `general`.
|
|
203
|
+
|
|
204
|
+
## How the Pieces Fit
|
|
205
|
+
|
|
206
|
+
The instance owns preparation state. A preparation declares a source binding (`{ kind: "local-folder", locator: <path> }`), requested artifacts, and a selected Build Plan. It stores preparation state and generated bytes in the instance data directory. A Build run processes the selected source files and produces the artifact locator the API returns. `interf test` checks source files and verifiable context against the same readiness checks.
|
|
207
|
+
|
|
208
|
+
Readiness is one `ready` / `not ready` status, not a separate score. Interf builds it from evidence primitives: Build Plan Artifact checks, proof records, file coverage, artifact validation, and readiness checks.
|
|
209
|
+
|
|
210
|
+
`interf web` runs the local Interf instance and serves Interf UI. The UI reads local-service resources: Source, Preparations, Build Plans, Build runs, stages, proof, artifacts, readiness checks, and whether verifiable context is `ready` or `not ready`. It renders local instance state; it does not own Build Plan, proof, or readiness semantics.
|
|
211
|
+
|
|
212
|
+
Everywhere Interf shows a resource — Source, context output, Build Plan files, run artifacts — the API returns a single locator shape: `{ kind, value }`. `local-path` means the engine has filesystem access to the same host as the user; `remote-url` is a signed URL the UI opens in a browser tab; `api-served` is a relative API route the UI fetches and renders inline. Local engines today return `local-path`; the same shape carries forward unchanged when a remote instance fronts the API.
|
|
213
|
+
|
|
214
|
+
## CLI Connection
|
|
215
|
+
|
|
216
|
+
The CLI is a thin authorized client of one connected instance. It carries one active connection record:
|
|
217
|
+
|
|
218
|
+
```text
|
|
219
|
+
{
|
|
220
|
+
"url": "http://127.0.0.1:4873",
|
|
221
|
+
"auth_token": null
|
|
222
|
+
}
|
|
223
|
+
```
|
|
224
|
+
|
|
225
|
+
`interf web` and `interf web start` write that record on startup. `interf login --url <remote>` writes a remote one (the cloud backend ships in a future release; the wire shape and config layer ship now). `interf logout` clears it.
|
|
226
|
+
|
|
227
|
+
If the connection is unreachable, every mutating command exits non-zero with:
|
|
228
|
+
|
|
229
|
+
```text
|
|
230
|
+
Not connected to any Interf instance.
|
|
231
|
+
Start one with `interf web` or `interf web start`, or set --url / `interf login` for a remote one.
|
|
232
|
+
```
|
|
233
|
+
|
|
234
|
+
There is no implicit auto-start. There is no per-folder pointer file. One mental model: client connects to instance, explicitly starts one, or doesn't.
|
|
235
|
+
|
|
236
|
+
## Readiness Checks
|
|
237
|
+
|
|
238
|
+
There are two checks in the system, and they answer different questions.
|
|
239
|
+
|
|
240
|
+
Build Plan Artifact checks check the build: did the plan produce the files, folders, Artifacts, and stage outputs it promised? Interf checks those while it builds.
|
|
241
|
+
|
|
242
|
+
Readiness checks check the verifiable context: is this Preparation good enough for the specific agent work? They are the confidence layer on top of the context, not the product output.
|
|
243
|
+
|
|
244
|
+
In the setup flow, readiness checks often look like plain question-and-answer pairs. On the API, they live under each preparation's `checks[]`. They help define whether the context is `ready` or `not ready`. A check should be a small, verifiable fact or condition you already know from the files:
|
|
245
|
+
|
|
246
|
+
- one exact number from a chart, table, or filing
|
|
247
|
+
- one short statement that should be true or false
|
|
248
|
+
- one comparison across years, files, or sections
|
|
249
|
+
|
|
250
|
+
Interf proposes an initial set from the files and the description of the job agents need to do. You confirm, edit, or replace them. `interf test` runs those checks through the configured local agent against source files, verifiable context, or both. The context itself does not answer; the agent answers while using it.
|
|
251
|
+
|
|
252
|
+
A maintained readiness example in this repo uses one market report, two readiness checks, and two agents:
|
|
253
|
+
|
|
254
|
+
<!-- PUBLIC_BENCHMARK_TABLE:START -->
|
|
255
|
+
| Agent | Source files | Verifiable context |
|
|
256
|
+
| --- | --- | --- |
|
|
257
|
+
| Codex (GPT-5.4, xhigh) | `2/2` | `2/2` |
|
|
258
|
+
| Claude Code (Claude Opus 4.6, max) | `0/2` | `2/2` |
|
|
259
|
+
<!-- PUBLIC_BENCHMARK_TABLE:END -->
|
|
260
|
+
|
|
261
|
+
Codex passed from the source files; Claude Code only passed when working from Interf's verifiable context. Both numbers come from the same readiness-check pass. That is evidence about whether this context is `ready` for this agent work.
|
|
262
|
+
|
|
263
|
+
A maintained public test example uses this preparation:
|
|
264
|
+
|
|
265
|
+
<!-- PUBLIC_TEST_CHECKS:START -->
|
|
266
|
+
```text
|
|
267
|
+
{
|
|
268
|
+
"id": "cbre-chart-sanity",
|
|
269
|
+
"source": { "kind": "local-folder", "locator": "./task-files" },
|
|
270
|
+
"build_plan_id": "interf-default",
|
|
271
|
+
"about": "Bristol historical take-up and availability chart lookup.",
|
|
272
|
+
"requested_artifacts": [
|
|
273
|
+
{
|
|
274
|
+
"title": "Guide to the report",
|
|
275
|
+
"checks": ["Every page is listed.", "Pages about Bristol charts are marked."]
|
|
276
|
+
},
|
|
277
|
+
{
|
|
278
|
+
"title": "Annual take-up and availability figures",
|
|
279
|
+
"checks": ["Every figure has a page reference.", "Approximate chart-derived reads are labelled."]
|
|
280
|
+
}
|
|
281
|
+
],
|
|
282
|
+
"checks": [
|
|
283
|
+
{
|
|
284
|
+
"question": "What were Bristol's annual take-up values in 2018 and 2016?",
|
|
285
|
+
"answer": "Around half a million sq ft in 2018, roughly 0.45 to 0.6 million sq ft, and about 0.7 to 0.8 million sq ft in 2016. These are approximate chart-derived reads."
|
|
286
|
+
},
|
|
287
|
+
{
|
|
288
|
+
"question": "What were Bristol's availability values in 2018 and 2016?",
|
|
289
|
+
"answer": "About 0.55 to 0.6 million sq ft in 2018 and about 1.2 to 1.3 million sq ft in 2016. These are approximate chart-derived reads."
|
|
290
|
+
}
|
|
291
|
+
]
|
|
292
|
+
}
|
|
293
|
+
```
|
|
294
|
+
<!-- PUBLIC_TEST_CHECKS:END -->
|
|
295
|
+
|
|
296
|
+
## What Interf Is Not
|
|
297
|
+
|
|
298
|
+
- Not a second brain or memory product. One preparation per agent job; nothing global.
|
|
299
|
+
- Not a vector store or RAG server. The context output is plain files.
|
|
300
|
+
- Not a hosted data platform. The local instance runs on your machine; your bytes never leave it.
|
|
301
|
+
- Not an agent harness. Interf builds verifiable context; your existing agent reads it.
|
|
302
|
+
|
|
303
|
+
## Useful Commands
|
|
304
|
+
|
|
305
|
+
- `interf web` — run the local engine in the foreground (Interf UI + API)
|
|
306
|
+
- `interf web start` — start a managed background local engine for agent sessions
|
|
307
|
+
- `interf web stop` — kill the running local engine
|
|
308
|
+
- `interf prep ls / create / show / rm` — manage preparations
|
|
309
|
+
- `interf build <prep-id>` — build verifiable context, returns the artifact locator
|
|
310
|
+
- `interf test <prep-id>` — run readiness checks against source files and/or verifiable context
|
|
311
|
+
- `interf build-plan list / show / save / draft / select / improve` — manage Build Plans
|
|
312
|
+
- `interf agents ls / use / register / unregister / map / unmap` — manage connected agents and the role map
|
|
313
|
+
- `interf runs ls / status / cancel / fetch` — inspect runs
|
|
314
|
+
- `interf login / logout` — manage the active connection record (remote backend ships in a future release)
|
|
315
|
+
- `interf status` — show the active connection and a preparation summary
|
|
316
|
+
- `interf doctor --live` — check the local executor
|
|
317
|
+
|
|
318
|
+
## Public Assets
|
|
319
|
+
|
|
320
|
+
- [skills/interf](./skills/interf/) — bundled agent Skill for Interf.
|
|
321
|
+
- [plugins/interf](./plugins/interf/) — local MCP host bundle for agents that support local MCP servers.
|
|
322
|
+
- [build-plans/interf-default](./build-plans/interf-default/) — default Build Plan that ships with `interf`.
|
|
323
|
+
|
|
324
|
+
Contributors: see [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|
325
|
+
|
|
326
|
+
License: see [LICENSE.md](./LICENSE.md). © 2026 Interf Inc. All rights reserved.
|
|
327
|
+
Name and branding: see [TRADEMARKS.md](./TRADEMARKS.md).
|
|
@@ -0,0 +1,67 @@
|
|
|
1
|
+
# Security Policy
|
|
2
|
+
|
|
3
|
+
We take security issues seriously. Thank you for helping keep Interf safe for the people who use it.
|
|
4
|
+
|
|
5
|
+
## Supported Versions
|
|
6
|
+
|
|
7
|
+
Only the latest published release of `@interf/compiler` on npm and the current `main` branch of [`interf-labs/interf`](https://github.com/interf-labs/interf) receive security fixes.
|
|
8
|
+
|
|
9
|
+
## Reporting a Vulnerability
|
|
10
|
+
|
|
11
|
+
**Please do not open a public GitHub issue for undisclosed security problems.**
|
|
12
|
+
|
|
13
|
+
Preferred disclosure paths, in order:
|
|
14
|
+
|
|
15
|
+
1. **Email**: [security@interf.com](mailto:security@interf.com) — primary contact for any security report
|
|
16
|
+
2. **GitHub Security Advisories**: use [private vulnerability reporting](https://github.com/interf-labs/interf/security/advisories/new) on the `interf-labs/interf` repository
|
|
17
|
+
3. **PGP**: encrypted reports accepted on request via the email above
|
|
18
|
+
|
|
19
|
+
Please include:
|
|
20
|
+
|
|
21
|
+
- affected version
|
|
22
|
+
- impact (what could an attacker do)
|
|
23
|
+
- reproduction steps or proof-of-concept
|
|
24
|
+
- any suggested mitigation
|
|
25
|
+
|
|
26
|
+
## Response Commitment
|
|
27
|
+
|
|
28
|
+
- We will acknowledge your report within **72 hours**
|
|
29
|
+
- We will provide an initial assessment within **7 days**
|
|
30
|
+
- We will work with you on coordinated disclosure timing — typically a fix released before public disclosure
|
|
31
|
+
|
|
32
|
+
## Safe Harbor
|
|
33
|
+
|
|
34
|
+
We support good-faith security research. We will not pursue legal action or law-enforcement investigation against researchers who:
|
|
35
|
+
|
|
36
|
+
- Make a good-faith effort to avoid privacy violations, data destruction, or service interruption
|
|
37
|
+
- Only interact with their own accounts or test environments
|
|
38
|
+
- Report vulnerabilities promptly and do not exploit them beyond what is necessary to demonstrate impact
|
|
39
|
+
- Give us reasonable time to fix issues before public disclosure
|
|
40
|
+
|
|
41
|
+
## Scope
|
|
42
|
+
|
|
43
|
+
Security reports are especially relevant for:
|
|
44
|
+
|
|
45
|
+
- npm package publish integrity
|
|
46
|
+
- unsafe filesystem writes or path traversal
|
|
47
|
+
- command execution boundaries (subprocess, agent shell-out)
|
|
48
|
+
- accidental leakage of private local files or runtime artifacts
|
|
49
|
+
- authentication or authorization bypasses on `interf web` / `/v1/*` endpoints
|
|
50
|
+
- test or Build Plan files causing unintended code execution
|
|
51
|
+
- supply-chain risks in dependencies
|
|
52
|
+
|
|
53
|
+
## Bug Bounty Program
|
|
54
|
+
|
|
55
|
+
Interf does not currently run a paid bug bounty program. We will introduce one when scale and product maturity justify it. In the meantime, we publicly acknowledge security researchers who responsibly disclose valid issues (with your permission).
|
|
56
|
+
|
|
57
|
+
## Trust Center
|
|
58
|
+
|
|
59
|
+
For our compliance posture, control attestations, and policy documentation see [trust.interf.com](https://trust.interf.com). The Trust Center is the canonical source for SOC 2 status, control implementations, and security questionnaire responses.
|
|
60
|
+
|
|
61
|
+
## Contact
|
|
62
|
+
|
|
63
|
+
- Security reports: [security@interf.com](mailto:security@interf.com)
|
|
64
|
+
- General inquiries: [info@interf.com](mailto:info@interf.com)
|
|
65
|
+
- Trust Center: [trust.interf.com](https://trust.interf.com)
|
|
66
|
+
- Trademark questions: see [TRADEMARKS.md](./TRADEMARKS.md)
|
|
67
|
+
</content>
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Built-in Interf Build Plan
|
|
2
|
+
|
|
3
|
+
Built-in file-processing Build Plan: build traceable artifacts with proof by summarizing source-grounded evidence, structuring cross-file connections, and shaping verifiable context around the saved readiness checks.
|
|
4
|
+
|
|
5
|
+
## Purpose
|
|
6
|
+
|
|
7
|
+
- General Build Plan implementation for building verifiable context agents can use.
|
|
8
|
+
- Build mixed source files into evidence-backed summaries, cross-file structure, and a usable entrypoint for agents running the readiness checks this agent work depends on.
|
|
9
|
+
|
|
10
|
+
## Artifacts
|
|
11
|
+
|
|
12
|
+
- `summaries` — output directory at `summaries`
|
|
13
|
+
- `knowledge-entities` — output directory at `knowledge/entities`
|
|
14
|
+
- `knowledge-claims` — output directory at `knowledge/claims`
|
|
15
|
+
- `knowledge-indexes` — output directory at `knowledge/indexes`
|
|
16
|
+
- `atlas` — output file at `home.md` used as the primary entrypoint for this Build Plan
|
|
17
|
+
|
|
18
|
+
## Stages
|
|
19
|
+
|
|
20
|
+
Each stage is a folder with a `SKILL.md` file. Interf creates the stage shell,
|
|
21
|
+
attaches source references and runtime context, runs the agent against that
|
|
22
|
+
plain-text Skill, and records proof of what the stage wrote.
|
|
23
|
+
|
|
24
|
+
- `summarize` — Turn source files into per-file summaries. (build-file-evidence; reads: none; writes: summaries)
|
|
25
|
+
- `structure` — Build the cross-file knowledge structure from the summaries. (build-knowledge-structure; reads: summaries; writes: knowledge-entities, knowledge-claims, knowledge-indexes)
|
|
26
|
+
- `shape` — Shape the final verifiable context around the saved task focus and readiness checks. (build-query-shape; reads: summaries, knowledge-entities, knowledge-claims, knowledge-indexes; writes: knowledge-indexes, atlas)
|
|
27
|
+
|
|
28
|
+
## Why `home.md` exists here
|
|
29
|
+
|
|
30
|
+
This built-in Build Plan creates `home.md` as the main agent entrypoint for the verifiable context.
|
|
31
|
+
That is behavior of the `interf-default` Build Plan implementation, not a local-engine rule.
|
|
32
|
+
|
|
33
|
+
This package is the built-in seed for `interf-default`.
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
# Shape
|
|
2
|
+
|
|
3
|
+
Shape the final verifiable context around the saved task focus and readiness checks.
|
|
4
|
+
|
|
5
|
+
Contract type: `build-query-shape`
|
|
6
|
+
|
|
7
|
+
## Requirements
|
|
8
|
+
|
|
9
|
+
- Use the Build run task focus plus saved readiness-check text to shape `home.md` and retrieval routes.
|
|
10
|
+
- Rewrite `home.md` into a real entrypoint note. Do not leave the scaffold `Not yet built.` placeholder in place.
|
|
11
|
+
- When you add wikilinks, target real verifiable-context notes by exact basename or explicit relative path.
|
|
12
|
+
- If you introduce a new note name in `home.md` or another shaped output, the same stage must also create that note file.
|
|
13
|
+
- Prefer direct file-reading and search tools over shell commands for routine file inspection.
|
|
14
|
+
- When a source value is approximate, preserve it as a bounded range and say why it is approximate.
|
|
15
|
+
- Do not invent finer precision than the source supports.
|
|
16
|
+
- Keep approximate values consistent across `home.md`, focused indexes, and claim/entity notes.
|
|
17
|
+
- Do not copy expected answers into the verifiable context.
|
|
18
|
+
|
|
19
|
+
## Notes
|
|
20
|
+
|
|
21
|
+
- Use the saved task focus and readiness checks to bias the final verifiable context toward the job it should be especially good at.
|
|
22
|
+
- Do not copy expected answers into the final verifiable context just because the checks imply them.
|
|
23
|
+
- Prefer the saved summary evidence and structured notes when they already preserve the bounded chart/table reads plus provenance you need.
|
|
24
|
+
- Reopen source references during shaping only when the verifiable context is missing the needed value, the metric family is ambiguous, or the earlier bounded read is clearly inconsistent.
|
|
25
|
+
- If a saved readiness check depends on source-derived values, carry the final bounded values into focused notes with provenance instead of repeatedly recomputing them from source files.
|
|
26
|
+
- Prefer better routing, prioritization, and focused navigation over speculative synthesis.
|
|
27
|
+
- Any wikilinks you add to `home.md` or indexes must resolve to real verifiable-context note basenames or explicit relative paths.
|
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
|
|
3
3
|
Build the cross-file knowledge structure from the summaries.
|
|
4
4
|
|
|
5
|
-
Contract type: `
|
|
5
|
+
Contract type: `build-knowledge-structure`
|
|
6
6
|
|
|
7
7
|
## Requirements
|
|
8
8
|
|
|
@@ -16,6 +16,6 @@ Contract type: `compiled-knowledge-structure`
|
|
|
16
16
|
- Bias structure toward canonical entities, claims, timelines, and stable indexes.
|
|
17
17
|
- Use taxonomy and ontology only as means to improve retrieval, navigation, and evidence tracking.
|
|
18
18
|
- For small source folders, prefer a minimal stable substrate over exhaustive graph sprawl.
|
|
19
|
-
- When you add wikilinks, target real
|
|
19
|
+
- When you add wikilinks, target real verifiable-context notes by exact basename or explicit relative path. Do not invent title-style links unless that exact title is also a declared note label or alias.
|
|
20
20
|
- Do not add wikilinks in structure outputs to files that the shape stage creates later. If a route belongs in `home.md` or a later shaped note, leave plain text now and let the later stage add the link.
|
|
21
21
|
- For summary references, prefer explicit links like `[[summaries/<file-stem>]]` or plain code paths. For knowledge notes, prefer the final filename stem under `knowledge/`.
|
|
@@ -1,13 +1,13 @@
|
|
|
1
1
|
{
|
|
2
2
|
"id": "interf-default",
|
|
3
|
-
"type": "
|
|
4
|
-
"
|
|
5
|
-
"kind": "
|
|
3
|
+
"type": "build-plan",
|
|
4
|
+
"engine_api": {
|
|
5
|
+
"kind": "build",
|
|
6
6
|
"version": 1
|
|
7
7
|
},
|
|
8
8
|
"purpose": {
|
|
9
|
-
"label": "Built-in
|
|
10
|
-
"task_hint": "
|
|
9
|
+
"label": "Built-in Build Plan for verifiable context",
|
|
10
|
+
"task_hint": "Build mixed source files into evidence-backed summaries, cross-file structure, and a usable entrypoint for agents running the readiness checks this agent work depends on."
|
|
11
11
|
},
|
|
12
12
|
"inputs": [
|
|
13
13
|
{
|
|
@@ -17,14 +17,14 @@
|
|
|
17
17
|
"required": true
|
|
18
18
|
}
|
|
19
19
|
],
|
|
20
|
-
"label": "Built-in Interf
|
|
21
|
-
"hint": "Built-in file-processing
|
|
20
|
+
"label": "Built-in Interf Build Plan",
|
|
21
|
+
"hint": "Built-in file-processing Build Plan: build traceable artifacts with proof by summarizing source-grounded evidence, structuring cross-file connections, and shaping verifiable context around the saved readiness checks.",
|
|
22
22
|
"stages": [
|
|
23
23
|
{
|
|
24
24
|
"id": "summarize",
|
|
25
25
|
"label": "Summarize",
|
|
26
26
|
"description": "Turn source files into per-file summaries.",
|
|
27
|
-
"contract_type": "
|
|
27
|
+
"contract_type": "build-file-evidence",
|
|
28
28
|
"skill_dir": "summarize",
|
|
29
29
|
"reads": [],
|
|
30
30
|
"writes": [
|
|
@@ -35,7 +35,7 @@
|
|
|
35
35
|
"id": "structure",
|
|
36
36
|
"label": "Structure",
|
|
37
37
|
"description": "Build the cross-file knowledge structure from the summaries.",
|
|
38
|
-
"contract_type": "
|
|
38
|
+
"contract_type": "build-knowledge-structure",
|
|
39
39
|
"skill_dir": "structure",
|
|
40
40
|
"reads": [
|
|
41
41
|
"summaries"
|
|
@@ -49,8 +49,8 @@
|
|
|
49
49
|
{
|
|
50
50
|
"id": "shape",
|
|
51
51
|
"label": "Shape",
|
|
52
|
-
"description": "Shape the final
|
|
53
|
-
"contract_type": "
|
|
52
|
+
"description": "Shape the final verifiable context around the saved task focus and readiness checks.",
|
|
53
|
+
"contract_type": "build-query-shape",
|
|
54
54
|
"skill_dir": "shape",
|
|
55
55
|
"reads": [
|
|
56
56
|
"summaries",
|
|
@@ -75,16 +75,16 @@
|
|
|
75
75
|
"Bias structure toward canonical entities, claims, timelines, and stable indexes.",
|
|
76
76
|
"Use taxonomy and ontology only as means to improve retrieval, navigation, and evidence tracking.",
|
|
77
77
|
"For small Source Folders, prefer a minimal stable substrate over exhaustive graph sprawl.",
|
|
78
|
-
"When you add wikilinks, target real
|
|
78
|
+
"When you add wikilinks, target real verifiable-context notes by exact basename or explicit relative path. Do not invent title-style links unless that exact title is also a declared note label or alias.",
|
|
79
79
|
"Do not add wikilinks in structure outputs to files that the shape stage creates later. If a route belongs in `home.md` or a later shaped note, leave plain text now and let the later stage add the link.",
|
|
80
80
|
"For summary references, prefer explicit links like `[[summaries/<file-stem>]]` or plain code paths. For knowledge notes, prefer the final filename stem under `knowledge/`."
|
|
81
81
|
],
|
|
82
82
|
"shape": [
|
|
83
|
-
"Use the saved task focus and readiness checks to bias the final
|
|
84
|
-
"Do not copy expected answers into the final
|
|
85
|
-
"If a saved readiness check depends on
|
|
83
|
+
"Use the saved task focus and readiness checks to bias the final verifiable context toward the job it should be especially good at.",
|
|
84
|
+
"Do not copy expected answers into the final verifiable context just because the checks imply them.",
|
|
85
|
+
"If a saved readiness check depends on source-derived values that may be approximate, preserve the stated range, limits, and provenance.",
|
|
86
86
|
"Prefer better routing, prioritization, and focused navigation over speculative synthesis.",
|
|
87
|
-
"Any wikilinks you add to `home.md` or indexes must resolve to real
|
|
87
|
+
"Any wikilinks you add to `home.md` or indexes must resolve to real verifiable-context note basenames or explicit relative paths."
|
|
88
88
|
]
|
|
89
89
|
}
|
|
90
90
|
}
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
{
|
|
2
|
-
"kind": "
|
|
2
|
+
"kind": "build-plan-schema",
|
|
3
3
|
"version": 1,
|
|
4
|
-
"target_type": "
|
|
5
|
-
"label": "Interf built-in
|
|
4
|
+
"target_type": "verifiable-context",
|
|
5
|
+
"label": "Interf built-in Build Plan schema",
|
|
6
6
|
"artifacts": [
|
|
7
7
|
{
|
|
8
8
|
"id": "atlas",
|
|
@@ -14,7 +14,7 @@
|
|
|
14
14
|
"id": "no-placeholder",
|
|
15
15
|
"kind": "must_not_contain",
|
|
16
16
|
"required": true,
|
|
17
|
-
"params": { "phrases": ["Not yet
|
|
17
|
+
"params": { "phrases": ["Not yet built."] }
|
|
18
18
|
},
|
|
19
19
|
{ "id": "wikilinks", "kind": "wikilinks_valid", "required": true }
|
|
20
20
|
],
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Build Plan Improvement
|
|
2
|
+
|
|
3
|
+
Build Plan: interf-default
|
|
4
|
+
|
|
5
|
+
This file is the editable authoring source for Interf's generated native Build Plan improver shell.
|
|
6
|
+
The improver edits this local Build Plan directly.
|
|
7
|
+
|
|
8
|
+
Default loop:
|
|
9
|
+
1. Read the loop context first.
|
|
10
|
+
2. Review preserved stage shells, runtime logs, and saved test runs from failed attempts.
|
|
11
|
+
3. Edit only the local Build Plan for this verifiable context to create a better implementation for this agent work.
|
|
12
|
+
4. Keep `build-plan.json`, `build-plan.schema.json`, and any changed stage docs aligned.
|
|
13
|
+
|
|
14
|
+
Guardrails:
|
|
15
|
+
- do not edit checks, test specs, or source files
|
|
16
|
+
- do not hardcode expected answers into Build Plan docs
|
|
17
|
+
- keep this package standalone; do not rely on runtime inheritance
|
|
18
|
+
- prefer small, defensible Build Plan changes over random churn
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# Manual Query Loop
|
|
2
|
+
|
|
3
|
+
This file is the editable authoring source for the generated native local `interf-query` skill.
|
|
4
|
+
|
|
5
|
+
Default loop:
|
|
6
|
+
1. Read `home.md` first.
|
|
7
|
+
2. Browse `knowledge/` before source re-checks.
|
|
8
|
+
3. Use `summaries/` for source-grounded evidence.
|
|
9
|
+
4. Use `.interf/runtime/source-snapshot.json` for direct quotes, verification, and exact source lookups.
|
|
10
|
+
|
|
11
|
+
Answering rule:
|
|
12
|
+
- do not modify source files while answering
|
|
13
|
+
- when a number is approximate or source-derived from a visual, say that explicitly
|
|
14
|
+
- if the verifiable context already contains a bounded value for the exact metric and period the user asked about, answer from that value first
|
|
15
|
+
- use source references to confirm the source page, metric family, or provenance, not to replace a good bounded read with a mismatched range
|
|
16
|
+
- when the verifiable context preserves a bounded range, keep that bounded range in the answer instead of collapsing it to a midpoint or pseudo-exact single value
|
|
17
|
+
- match the source granularity and do not invent finer precision than the source supports
|
|
18
|
+
- when reading visuals, verify you are on the correct metric family and period before answering
|
|
19
|
+
- keep annual, quarterly, sector, and snapshot metrics separate unless the source explicitly connects them
|
|
20
|
+
- if multiple notes mention the same value, keep the answer consistent with the most focused note rather than synthesizing a new midpoint or shifted range
|
|
21
|
+
- when the verifiable context is insufficient, verify against source references and then answer
|
|
22
|
+
|
|
23
|
+
You can edit this file to bias manual question-answering behavior for this verifiable context.
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
# Plugins
|
|
2
|
+
|
|
3
|
+
Host plugin bundles for agent-first Interf use.
|
|
4
|
+
|
|
5
|
+
This directory is the source of truth for package-shipped plugin assets.
|
|
6
|
+
|
|
7
|
+
Each plugin should stay thin: a host manifest, the canonical Interf Skill, and
|
|
8
|
+
configuration that starts `interf mcp`. The MCP server itself ships inside
|
|
9
|
+
`interf`.
|