@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
package/README.md
DELETED
|
@@ -1,311 +0,0 @@
|
|
|
1
|
-
# Interf
|
|
2
|
-
|
|
3
|
-
**Prepare your data for AI agents. With proof.**
|
|
4
|
-
|
|
5
|
-
Interf prepares data for agent work. It runs locally, processes your files, shows evidence that your data is ready, and writes portable context: a local folder with verifiable outputs agents can use.
|
|
6
|
-
|
|
7
|
-
**Hallucinations aren't an agent problem. They're a data preparation problem.**
|
|
8
|
-
|
|
9
|
-
When agents start from source files, they have to discover the full picture while they work. That discovery is hidden: you cannot see which files were processed, which evidence was used, or which connections were found.
|
|
10
|
-
|
|
11
|
-
Interf replaces that hidden discovery with a visible Method run over your source files. You connect to a local instance, name a Preparation against your Source Folder and a Method, run compile, and read the portable context Interf returns. Interf records source references, runs the Method locally, and writes the portable context: evidence, structure, and cross-file connections for agents.
|
|
12
|
-
|
|
13
|
-
```text
|
|
14
|
-
Source Folder Portable context agents read
|
|
15
|
-
|
|
16
|
-
bristol-office-market/ ~/.interf/preparations/bristol/portable-context/
|
|
17
|
-
q4-market-report.pdf AGENTS.md
|
|
18
|
-
lease-comps.xlsx .interf/runtime/source-snapshot.json
|
|
19
|
-
planning-notes.md home.md
|
|
20
|
-
exports/availability.csv summaries/
|
|
21
|
-
knowledge/
|
|
22
|
-
```
|
|
23
|
-
|
|
24
|
-
## What a Method Run Produces
|
|
25
|
-
|
|
26
|
-
A Method run produces portable context plus proof of work. The portable context is the folder agents read. The proof shows which source files were assigned, which Method stages ran, what each stage wrote, and whether required outputs exist.
|
|
27
|
-
|
|
28
|
-
For the built-in `interf-default` Method, a compile run looks like this:
|
|
29
|
-
|
|
30
|
-
```text
|
|
31
|
-
Source Files: bristol-office-market
|
|
32
|
-
Method: interf-default
|
|
33
|
-
|
|
34
|
-
compile run
|
|
35
|
-
record source references
|
|
36
|
-
summarize -> summaries/
|
|
37
|
-
structure -> knowledge/
|
|
38
|
-
shape -> home.md and agent entrypoints
|
|
39
|
-
record proof -> processed files, stage outputs, required artifacts
|
|
40
|
-
|
|
41
|
-
output
|
|
42
|
-
portable context -> { kind: "local-path", value: "/Users/me/.interf/preparations/bristol/portable-context" }
|
|
43
|
-
```
|
|
44
|
-
|
|
45
|
-
The output is not an answer. It is a prepared local folder with routes, summaries, linked notes, source snapshots, and agent instructions. Your runtime agent reads that folder when it does the actual agent work.
|
|
46
|
-
|
|
47
|
-
## Design Choices
|
|
48
|
-
|
|
49
|
-
- `Method-scoped`: every Method is for one specific kind of agent work over source files, not a generic index over your Source Folder.
|
|
50
|
-
- `Deterministic`: Interf runs each stage, an ordered phase of a Method, 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.
|
|
51
|
-
- `Local-first and private`: your files, readiness checks, and agent runs stay on your machine. No cloud, no uploads, no telemetry.
|
|
52
|
-
- `Bring your own AI`: use Claude Code, Codex, or another local agent.
|
|
53
|
-
- `File over app`: the portable context is a real local folder owned by the instance — no hidden store, no hidden index. Inspect it, diff it, version it.
|
|
54
|
-
- `Readiness checks you control`: every build can be checked against gates you wrote from the files. If the portable context is `not ready`, `interf test` shows the readiness evidence behind that status.
|
|
55
|
-
|
|
56
|
-
## Why Not Just Ask Your Agent?
|
|
57
|
-
|
|
58
|
-
You can. Interf can use Claude Code, Codex, or another local agent while it builds the portable context.
|
|
59
|
-
|
|
60
|
-
A one-off preprocessing prompt gives you another agent answer to trust. Interf puts that work inside a Method you can inspect: declared stages, required outputs, stage-by-stage proof of work, and readiness checks that decide whether the portable context is `ready` or `not ready`.
|
|
61
|
-
|
|
62
|
-
The agent can still do the processing. Interf shows what ran, which files were processed, what evidence was produced, and whether the result is ready for the agent work.
|
|
63
|
-
|
|
64
|
-
## Install
|
|
65
|
-
|
|
66
|
-
```bash
|
|
67
|
-
npm install -g @interf/compiler
|
|
68
|
-
interf # opens the wizard; start or connect an engine when needed
|
|
69
|
-
```
|
|
70
|
-
|
|
71
|
-
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.
|
|
72
|
-
|
|
73
|
-
## Quick Start
|
|
74
|
-
|
|
75
|
-
```bash
|
|
76
|
-
interf web # terminal 1: start the local engine
|
|
77
|
-
interf prep create bristol \ # terminal 2: name the unit of work
|
|
78
|
-
--source ./bristol-office-market \
|
|
79
|
-
--method interf-default
|
|
80
|
-
interf compile bristol # build portable context, returns the locator
|
|
81
|
-
interf test bristol # check readiness
|
|
82
|
-
```
|
|
83
|
-
|
|
84
|
-
`interf web` starts the engine in the foreground and writes
|
|
85
|
-
`~/.interf/connection.json` so subsequent CLI commands can connect. The
|
|
86
|
-
interactive `interf` wizard can ask whether to start `interf web` or connect a
|
|
87
|
-
remote engine. Mutating commands never auto-start an engine — if no instance is
|
|
88
|
-
connected, they exit with a hint pointing at `interf web` (local) or
|
|
89
|
-
`interf login` (future cloud).
|
|
90
|
-
|
|
91
|
-
`interf compile` returns the artifact locator on success — for a local
|
|
92
|
-
engine that's a `local-path` you can open with any tool. Point your agent at
|
|
93
|
-
that path. There's no `--out` flag, no implicit copy, no hidden store: the
|
|
94
|
-
instance owns the bytes and the API tells you where they are.
|
|
95
|
-
|
|
96
|
-
If you want a baseline before preparing, run `interf test bristol --target source-files`. It is optional proof, not the main path.
|
|
97
|
-
|
|
98
|
-
## Portable Context
|
|
99
|
-
|
|
100
|
-
The portable context is the local folder Interf writes from your files. The instance owns its location — `~/.interf/preparations/<prep-id>/portable-context/` for a local engine, a signed remote URL for a cloud engine. The API returns a typed locator (`{ kind: "local-path" | "remote-url", value }`); your agent reads from there.
|
|
101
|
-
|
|
102
|
-
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:
|
|
103
|
-
|
|
104
|
-
```text
|
|
105
|
-
~/.interf/preparations/bristol/portable-context/
|
|
106
|
-
AGENTS.md # agent-facing entry point and source-checking rules
|
|
107
|
-
CLAUDE.md # same guidance for Claude Code
|
|
108
|
-
.interf/
|
|
109
|
-
runtime/
|
|
110
|
-
source-snapshot.json # source references captured for the latest run
|
|
111
|
-
stages/ # per-stage source input lists
|
|
112
|
-
home.md # overview and routes for agents
|
|
113
|
-
summaries/ # one note per source file
|
|
114
|
-
knowledge/ # linked notes built from the files
|
|
115
|
-
```
|
|
116
|
-
|
|
117
|
-
The source files stay the source of truth. Interf writes portable context inside the instance's data dir; it does not modify the Source Folder.
|
|
118
|
-
|
|
119
|
-
`AGENTS.md` tells agents how to use the portable context: start from the prepared outputs, follow the prepared routes, and use the recorded source references when exact source evidence matters.
|
|
120
|
-
|
|
121
|
-
Interf also records stage-by-stage proof of work: which files were processed, what each stage produced, and whether required outputs were created.
|
|
122
|
-
|
|
123
|
-
The portable context 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.
|
|
124
|
-
|
|
125
|
-
## Methods
|
|
126
|
-
|
|
127
|
-
A Method tells Interf how to process your files for the job agents need to do. When you create one, describe three things: what data is in the Source Folder, what the portable context should contain, and what evidence should show the portable context is `ready`. The built-in `interf-default` Method ships with `@interf/compiler`. Install your own with `interf method install <path>`; draft new ones with `interf method draft <prep-id>`.
|
|
128
|
-
|
|
129
|
-
```text
|
|
130
|
-
~/.interf/methods/interf-default/
|
|
131
|
-
method.json # Method: source data, stages, and processing rules
|
|
132
|
-
method.schema.json # output contract: required portable-context files and folders
|
|
133
|
-
README.md # what this Method is for, for humans and agents
|
|
134
|
-
compile/
|
|
135
|
-
stages/
|
|
136
|
-
summarize/ # stage instructions Interf runs during compile
|
|
137
|
-
structure/
|
|
138
|
-
shape/
|
|
139
|
-
use/
|
|
140
|
-
query/ # how agents read the portable context
|
|
141
|
-
improve/ # how Interf revises this Method if readiness checks still fail
|
|
142
|
-
```
|
|
143
|
-
|
|
144
|
-
- `method.json` describes the Method: source data, stages, and how the files should be processed.
|
|
145
|
-
- `method.schema.json` describes the output contract: what the portable context must contain. Interf enforces it when you run `interf compile`.
|
|
146
|
-
- `compile/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 compile.
|
|
147
|
-
- `use/query/` holds the instructions agents follow when they read the portable context for live agent work.
|
|
148
|
-
- `improve/` holds the instructions Interf follows when the first build misses and the Method itself needs editing.
|
|
149
|
-
|
|
150
|
-
A Method defines the stages, output contract, proof requirements, and improvement instructions Interf runs on your files. Technically, each Method is stored as a Method package with `method.json` and `method.schema.json`. The result is portable context your agents can read.
|
|
151
|
-
|
|
152
|
-
## Method Improvement
|
|
153
|
-
|
|
154
|
-
When the first compile run still misses readiness checks, Interf edits the Method itself and compiles again. Same files, same checks, improved Method and portable context. Run `interf method improve <prep-id>` to invoke that loop manually.
|
|
155
|
-
|
|
156
|
-
Interf saves every readiness-check run inside the preparation's portable context under `.interf/tests/`. You can inspect what changed and why a later compile run did better.
|
|
157
|
-
|
|
158
|
-
## How Interf Compiles
|
|
159
|
-
|
|
160
|
-
You don't need to think about roles. By default Interf uses your active agent for every stage of every compile run, the same way 0.14 did. Roles are available for advanced users who want different agents per stage; defaults are good and stable.
|
|
161
|
-
|
|
162
|
-
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 Method.
|
|
163
|
-
|
|
164
|
-
```text
|
|
165
|
-
Connected agents Role map (per-instance)
|
|
166
|
-
claude-code (active) extractor → claude-code
|
|
167
|
-
codex summarizer → claude-code
|
|
168
|
-
pdf-extract (custom) structurer → claude-code
|
|
169
|
-
verifier → claude-code
|
|
170
|
-
general → claude-code
|
|
171
|
-
|
|
172
|
-
A Method compile run
|
|
173
|
-
for each stage in the Method
|
|
174
|
-
look up the stage's role in the role map
|
|
175
|
-
invoke the mapped agent on the prepared shell
|
|
176
|
-
record which agent ran which stage
|
|
177
|
-
```
|
|
178
|
-
|
|
179
|
-
Methods 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`.
|
|
180
|
-
|
|
181
|
-
The role map lives in `~/.interf/agents.json`. 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:
|
|
182
|
-
|
|
183
|
-
```bash
|
|
184
|
-
interf agents ls
|
|
185
|
-
interf agents register opencode --command "opencode --prompt"
|
|
186
|
-
interf agents map structurer codex
|
|
187
|
-
interf agents use claude-code # set the active agent
|
|
188
|
-
interf agents unmap structurer # fall back to active
|
|
189
|
-
```
|
|
190
|
-
|
|
191
|
-
Or use the **Agents** tab in Interf Compiler UI. Either surface mutates the same `~/.interf/agents.json` through the local service.
|
|
192
|
-
|
|
193
|
-
Verify runs always resolve to the `verifier` role. Method-authoring runs ask the authoring agent to propose a `role` per stage based on the prompt content; missing roles default to `general`.
|
|
194
|
-
|
|
195
|
-
## How the Pieces Fit
|
|
196
|
-
|
|
197
|
-
The instance owns preparation state. A preparation declares a source binding (`{ kind: "local-folder", locator: <path> }`) and a method id; the instance stores its config at `~/.interf/preparations/<prep-id>/config.json` and writes portable context to `~/.interf/preparations/<prep-id>/portable-context/`. A compile run processes the selected source files and produces the artifact locator the API returns. `interf test` checks Source Folder files and portable context against the same readiness checks.
|
|
198
|
-
|
|
199
|
-
Readiness is one `ready` / `not ready` status, not a separate score. Interf builds it from evidence primitives: Method Artifact checks, proof records, file coverage, artifact validation, and readiness checks.
|
|
200
|
-
|
|
201
|
-
`interf web` runs the local Interf instance and serves Interf Compiler UI. The UI reads local-service resources: Source Files, Methods, runs, stages, proof, artifacts, readiness checks, and whether portable context is `ready` or `not ready`. It renders local instance state; it does not own compiler, Method, or readiness semantics.
|
|
202
|
-
|
|
203
|
-
Everywhere Interf shows a resource — Source Folder, portable context, Method 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.
|
|
204
|
-
|
|
205
|
-
## CLI Connection
|
|
206
|
-
|
|
207
|
-
The CLI is a thin authorized client of one connected instance. It carries one piece of state — `~/.interf/connection.json`:
|
|
208
|
-
|
|
209
|
-
```text
|
|
210
|
-
{
|
|
211
|
-
"url": "http://127.0.0.1:4873",
|
|
212
|
-
"auth_token": null
|
|
213
|
-
}
|
|
214
|
-
```
|
|
215
|
-
|
|
216
|
-
`interf web` writes 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.
|
|
217
|
-
|
|
218
|
-
If the connection is unreachable, every mutating command exits non-zero with:
|
|
219
|
-
|
|
220
|
-
```text
|
|
221
|
-
Not connected to any Interf instance.
|
|
222
|
-
Start one with `interf web`, or set --url / `interf login` for a remote one.
|
|
223
|
-
```
|
|
224
|
-
|
|
225
|
-
There is no auto-start. There is no per-folder pointer file. One mental model: client connects to instance, or doesn't.
|
|
226
|
-
|
|
227
|
-
## Readiness Checks
|
|
228
|
-
|
|
229
|
-
There are two checks in the system, and they answer different questions.
|
|
230
|
-
|
|
231
|
-
Method Artifact checks check the build: did the Method produce the files, folders, Artifacts, and stage outputs it promised? Interf checks those while it compiles.
|
|
232
|
-
|
|
233
|
-
Readiness checks check the Method output: is this portable context good enough for the specific agent work? They are the confidence layer on top of the portable context, not the product output.
|
|
234
|
-
|
|
235
|
-
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 portable context is `ready` or `not ready`. A check should be a small, verifiable fact or condition you already know from the files:
|
|
236
|
-
|
|
237
|
-
- one exact number from a chart, table, or filing
|
|
238
|
-
- one short statement that should be true or false
|
|
239
|
-
- one comparison across years, files, or sections
|
|
240
|
-
|
|
241
|
-
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 Folder files, portable context, or both. The portable context itself does not answer; the agent answers while using it.
|
|
242
|
-
|
|
243
|
-
A maintained readiness example in this repo uses one market report, two readiness checks, and two agents:
|
|
244
|
-
|
|
245
|
-
<!-- PUBLIC_BENCHMARK_TABLE:START -->
|
|
246
|
-
| Agent | Source files | Portable context |
|
|
247
|
-
| --- | --- | --- |
|
|
248
|
-
| Codex (GPT-5.4, xhigh) | `2/2` | `2/2` |
|
|
249
|
-
| Claude Code (Claude Opus 4.6, max) | `0/2` | `2/2` |
|
|
250
|
-
<!-- PUBLIC_BENCHMARK_TABLE:END -->
|
|
251
|
-
|
|
252
|
-
Codex passed from the Source Folder files; Claude Code only passed when working from Interf's portable context. Both numbers come from the same readiness-check pass. That is evidence about whether this Method output is `ready` for this agent work.
|
|
253
|
-
|
|
254
|
-
A maintained public test example uses this preparation:
|
|
255
|
-
|
|
256
|
-
<!-- PUBLIC_TEST_CHECKS:START -->
|
|
257
|
-
```text
|
|
258
|
-
{
|
|
259
|
-
"id": "cbre-chart-sanity",
|
|
260
|
-
"source": { "kind": "local-folder", "locator": "./task-files" },
|
|
261
|
-
"method_id": "interf-default",
|
|
262
|
-
"about": "Bristol historical take-up and availability chart lookup.",
|
|
263
|
-
"checks": [
|
|
264
|
-
{
|
|
265
|
-
"question": "What were Bristol's annual take-up values in 2018 and 2016?",
|
|
266
|
-
"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."
|
|
267
|
-
},
|
|
268
|
-
{
|
|
269
|
-
"question": "What were Bristol's availability values in 2018 and 2016?",
|
|
270
|
-
"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."
|
|
271
|
-
}
|
|
272
|
-
]
|
|
273
|
-
}
|
|
274
|
-
```
|
|
275
|
-
<!-- PUBLIC_TEST_CHECKS:END -->
|
|
276
|
-
|
|
277
|
-
## What Interf Is Not
|
|
278
|
-
|
|
279
|
-
- Not a second brain or memory product. One preparation per agent job; nothing global.
|
|
280
|
-
- Not a vector store or RAG server. The portable context is plain files.
|
|
281
|
-
- Not a hosted data platform. The local instance runs on your machine; your bytes never leave it.
|
|
282
|
-
- Not an agent harness. Interf prepares the data; your existing agent reads the portable context.
|
|
283
|
-
|
|
284
|
-
## Useful Commands
|
|
285
|
-
|
|
286
|
-
- `interf web` — run the local engine in the foreground (Compiler UI + API)
|
|
287
|
-
- `interf web stop` — kill the running local engine
|
|
288
|
-
- `interf prep ls / create / show / rm` — manage preparations
|
|
289
|
-
- `interf compile <prep-id>` — build portable context, returns the artifact locator
|
|
290
|
-
- `interf test <prep-id>` — run readiness checks against source files and/or portable context
|
|
291
|
-
- `interf method ls / install / draft / improve` — manage Method packages
|
|
292
|
-
- `interf agents ls / use / register / unregister / map / unmap` — manage connected agents and the role map
|
|
293
|
-
- `interf runs ls / status / watch / cancel / fetch` — inspect runs
|
|
294
|
-
- `interf login / logout` — manage `~/.interf/connection.json` (remote backend ships in a future release)
|
|
295
|
-
- `interf status` — show the active connection and a preparation summary
|
|
296
|
-
- `interf doctor --live` — verify the local executor
|
|
297
|
-
|
|
298
|
-
## Maintainer Docs
|
|
299
|
-
|
|
300
|
-
- [src/README.md](./src/README.md) - source tree index
|
|
301
|
-
- [src/packages/README.md](./src/packages/README.md) - package boundaries
|
|
302
|
-
- [src/cli/README.md](./src/cli/README.md) - CLI orchestration
|
|
303
|
-
- [apps/compiler-ui/README.md](./apps/compiler-ui/README.md) - Interf Compiler UI
|
|
304
|
-
- [apps/compiler-ui/DESIGN.md](./apps/compiler-ui/DESIGN.md) - UI design source of truth
|
|
305
|
-
- [scripts/README.md](./scripts/README.md) - maintainer automation
|
|
306
|
-
- [AGENTS.md](./AGENTS.md) / [CLAUDE.md](./CLAUDE.md) - maintainer compass + navigation index for agent sessions
|
|
307
|
-
|
|
308
|
-
Contributors: see [CONTRIBUTING.md](./CONTRIBUTING.md).
|
|
309
|
-
|
|
310
|
-
License: see [LICENSE.md](./LICENSE.md). © 2026 Interf Inc. All rights reserved.
|
|
311
|
-
Name and branding: see [TRADEMARKS.md](./TRADEMARKS.md).
|
|
@@ -1,185 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: interf-actions
|
|
3
|
-
description: Use when an agent needs to operate Interf from natural language: connect to an instance, manage preparations, compile a Method against a Source Folder, propose safe CLI commands, or write action proposals for Interf Compiler UI.
|
|
4
|
-
---
|
|
5
|
-
|
|
6
|
-
# Interf Actions
|
|
7
|
-
|
|
8
|
-
Interf prepares data for agent work. It runs locally, processes source files, shows evidence that the data is ready, and writes portable context: a local folder agents can read from.
|
|
9
|
-
|
|
10
|
-
The model in 0.13 is **instance + preparation**:
|
|
11
|
-
|
|
12
|
-
- **Instance** = the engine (a local `interf web` process, or a future cloud endpoint). Owns all preparation state. Same wire shape both ends.
|
|
13
|
-
- **Method** = reusable recipe (`method.json` + stage docs). A package, no runtime state. Lives bundled with `@interf/compiler` or installed in the user library at `~/.interf/methods/<id>/`.
|
|
14
|
-
- **Preparation** = a unit of work — `id + source binding + method + readiness checks + run history`. The project-level identifier the agent names. Lives inside an instance.
|
|
15
|
-
- **Compile run** = one execution of a Preparation. Append-only. Produces portable context.
|
|
16
|
-
|
|
17
|
-
A **Source Folder** is the agent's input — files Interf scans by reference, not by copy. The agent's executor reads them; Interf never copies.
|
|
18
|
-
|
|
19
|
-
There is **no workspace concept** in 0.13. The CLI carries one piece of state: the active connection at `~/.interf/connection.json`.
|
|
20
|
-
|
|
21
|
-
## Connection model
|
|
22
|
-
|
|
23
|
-
The CLI is a thin authorized client of one connected instance. Every mutating command requires a reachable connection. If `~/.interf/connection.json` is missing or unreachable, the command exits non-zero with:
|
|
24
|
-
|
|
25
|
-
```text
|
|
26
|
-
Not connected to any Interf instance.
|
|
27
|
-
Start one with `interf web`, or set --url / `interf login` for a remote one.
|
|
28
|
-
```
|
|
29
|
-
|
|
30
|
-
There is **no auto-start**. Agents must verify a connection exists before running mutating commands. To set up a connection:
|
|
31
|
-
|
|
32
|
-
```sh
|
|
33
|
-
interf web # local: starts the engine in the foreground (blocks)
|
|
34
|
-
interf login --url <…> # remote: writes connection.json
|
|
35
|
-
```
|
|
36
|
-
|
|
37
|
-
## Agent flow
|
|
38
|
-
|
|
39
|
-
1. **Confirm a connection** — call `interf status` or `interf prep ls`. If they return `Not connected…`, ask the user to start an instance.
|
|
40
|
-
2. **List or create a preparation** —
|
|
41
|
-
```sh
|
|
42
|
-
interf prep ls # see what exists
|
|
43
|
-
interf prep create <id> --source <path> --method <method-id> # create one
|
|
44
|
-
```
|
|
45
|
-
3. **Compile** — preparation id is positional:
|
|
46
|
-
```sh
|
|
47
|
-
interf compile <prep-id> [--watch] [--quiet] [--idempotency-key <key>]
|
|
48
|
-
```
|
|
49
|
-
Default is async-return: prints `run id`, the artifact `locator`, and current readiness. With `--quiet`, only the locator is printed (suitable for `$(interf compile bristol --quiet)/home.md`). With `--watch`, the CLI tails events until the run reaches a terminal state.
|
|
50
|
-
4. **Inspect runs** —
|
|
51
|
-
```sh
|
|
52
|
-
interf runs status <run-id>
|
|
53
|
-
interf runs watch <run-id>
|
|
54
|
-
interf runs ls [--prep <id>]
|
|
55
|
-
interf runs fetch <run-id> --to <abs-path>
|
|
56
|
-
interf runs cancel <run-id>
|
|
57
|
-
```
|
|
58
|
-
5. **Read the portable context** — for a local engine the locator is a `local-path` you can open directly with any tool. For a remote engine it is a signed `remote-url`; `interf runs fetch` localizes it.
|
|
59
|
-
6. **On `not ready`**, propose method improvement:
|
|
60
|
-
```sh
|
|
61
|
-
interf method improve <prep-id>
|
|
62
|
-
```
|
|
63
|
-
|
|
64
|
-
## Connected agents and the role map
|
|
65
|
-
|
|
66
|
-
Interf treats the agents it can shell out to (Claude Code, Codex, custom CLIs) as a first-class primitive. `GET /v1/instance` reports `agent_count` and `default_agent`; if `agent_count` is `0`, **`interf compile` and `interf verify` will hard-error** — install one or register a custom CLI before retrying.
|
|
67
|
-
|
|
68
|
-
```sh
|
|
69
|
-
interf agents ls # list registered + detected agents
|
|
70
|
-
interf agents use <name> # set the active agent (sweeps role map)
|
|
71
|
-
interf agents register <name> --command "<cmd>" # register a custom CLI
|
|
72
|
-
interf agents unregister <name> # remove a custom CLI
|
|
73
|
-
interf agents map <role> <agent> # pin a role to an agent
|
|
74
|
-
interf agents unmap <role> # fall back to the active agent
|
|
75
|
-
```
|
|
76
|
-
|
|
77
|
-
Roles are: `extractor`, `summarizer`, `structurer`, `verifier`, `general` (Methods may declare custom names; the engine treats unknown roles as `general`). Default behavior is single-active-agent — every role maps to the same agent — so existing agent flows do not change unless the user opts into per-role specialization.
|
|
78
|
-
|
|
79
|
-
## Agent contract — flags every CLI run uses
|
|
80
|
-
|
|
81
|
-
| Flag | What it controls | When the agent passes it |
|
|
82
|
-
|---|---|---|
|
|
83
|
-
| `--url <url>` | Override the active connection URL for one call. | When the user has multiple instances and wants to target a specific one without rewriting `~/.interf/connection.json`. |
|
|
84
|
-
| `--token <token>` | Override the active bearer token for one call. | Cloud / non-loopback connections only. |
|
|
85
|
-
| `--watch` | Block until the run finishes and tail stages. | Only when the agent must wait inline. Default is async return-with-id. |
|
|
86
|
-
| `--quiet` | Print only the artifact locator on success. | Scripting (`$(interf compile bristol --quiet)`). |
|
|
87
|
-
| `--idempotency-key <key>` | Sent as `X-Interf-Idempotency-Key`. The instance caches the key for an hour and returns the original run id on retries instead of starting a fresh run. | Whenever the agent might retry the same compile. |
|
|
88
|
-
| `--to <abs-path>` | (`interf runs fetch`) Absolute destination to copy portable context into. Must be empty or non-existent unless `--overwrite` is set. | When the agent needs portable context outside the instance. |
|
|
89
|
-
| `--overwrite` | (`interf runs fetch`) Allow copying into a destination that already has files. | Only when the agent wants to replace existing files. |
|
|
90
|
-
|
|
91
|
-
## Operating rules
|
|
92
|
-
|
|
93
|
-
- Use exact preparation ids and Method ids returned by the API. Do not invent ids.
|
|
94
|
-
- Always confirm a connection exists before running mutating commands. Agents must not call `interf web` themselves — that command blocks the foreground; running it inside an agent loop hangs the loop.
|
|
95
|
-
- For long-running work, use the async default and check status by id (`interf runs status <id>`). Only use `--watch` when the agent must wait inline.
|
|
96
|
-
- Do not call the local HTTP API directly unless Interf explicitly gives an API-integration task. Use CLI commands for normal agent work.
|
|
97
|
-
- Propose the command first and wait for approval before running commands that write files, start runs, create Method packages, build portable context, or run readiness checks.
|
|
98
|
-
- If the request is ambiguous, ask one concise clarification instead of guessing.
|
|
99
|
-
|
|
100
|
-
## Show your work — always print the run URL
|
|
101
|
-
|
|
102
|
-
Interf Compiler UI is the user's verification surface. The agent does
|
|
103
|
-
the work; the user clicks a URL to see live trace, events, readiness,
|
|
104
|
-
and proof. **Whenever you kick off a run, print a deep-link to the run
|
|
105
|
-
page in the same message as the run id.** The user should never have
|
|
106
|
-
to navigate the UI manually to find what you just started.
|
|
107
|
-
|
|
108
|
-
The base URL is whatever `interf status` reports as the connected
|
|
109
|
-
instance (e.g. `http://127.0.0.1:4873` for a local engine,
|
|
110
|
-
`https://api.interf.cloud/...` for cloud). Append query params:
|
|
111
|
-
|
|
112
|
-
| Param | Value |
|
|
113
|
-
|---|---|
|
|
114
|
-
| `preparation` | the preparation id |
|
|
115
|
-
| `run` | the run id returned by the CLI |
|
|
116
|
-
| `runTab` | optional: `trace` (default), `events`, or `readiness` |
|
|
117
|
-
|
|
118
|
-
**Example output after `interf compile serge`:**
|
|
119
|
-
|
|
120
|
-
```text
|
|
121
|
-
Started compile run compile_8x2abc...
|
|
122
|
-
Watch live: http://127.0.0.1:4873/?preparation=serge&run=compile_8x2abc...
|
|
123
|
-
|
|
124
|
-
I'll check status in a moment with `interf runs status compile_8x2abc...`.
|
|
125
|
-
```
|
|
126
|
-
|
|
127
|
-
The same pattern applies to verify, method-improvement, and method-authoring
|
|
128
|
-
runs. When a run finishes, print the same URL with `runTab=readiness` so the
|
|
129
|
-
user can click through to the readiness summary.
|
|
130
|
-
|
|
131
|
-
The agent stays the executor; the URL is the user's "I can see what's
|
|
132
|
-
happening" handle. It also makes failures self-explanatory — when a run
|
|
133
|
-
errors, the user clicks through to the same trace the agent is reading.
|
|
134
|
-
|
|
135
|
-
## Reading the artifact locator
|
|
136
|
-
|
|
137
|
-
`interf compile <prep-id>` prints a short multi-line block by default. The portable-context locator looks like one of:
|
|
138
|
-
|
|
139
|
-
```text
|
|
140
|
-
Portable context: /Users/me/.interf/preparations/bristol/portable-context
|
|
141
|
-
```
|
|
142
|
-
|
|
143
|
-
```text
|
|
144
|
-
Portable context: https://api.interf.cloud/v1/runs/run_2x4abc.../portable-context
|
|
145
|
-
```
|
|
146
|
-
|
|
147
|
-
For `local-path`, use the agent's filesystem tools to read the directory. For `remote-url`, use HTTP or `interf runs fetch <run-id> --to <path>`.
|
|
148
|
-
|
|
149
|
-
## Interf Compiler UI freeform proposal mode
|
|
150
|
-
|
|
151
|
-
When Interf Compiler UI asks for a proposal, do not run CLI commands. Write a single JSON object to the requested output path. Structured UI controls call the local service directly; this mode is only for freeform planning.
|
|
152
|
-
|
|
153
|
-
Use these action types:
|
|
154
|
-
|
|
155
|
-
- `compile`
|
|
156
|
-
- `test`
|
|
157
|
-
- `readiness-check-draft`
|
|
158
|
-
- `method-authoring`
|
|
159
|
-
- `method-improvement`
|
|
160
|
-
- `clarification`
|
|
161
|
-
|
|
162
|
-
Use `compile` when the user asks to prepare, build, or refresh portable context. Set `method` to the Method id and, if the request named one, `preparation` to the preparation id. CLI equivalent: `interf compile --method`.
|
|
163
|
-
|
|
164
|
-
Readiness-check proposals always run against the compiled portable context in 0.15+. The legacy `values.mode` field is gone — omit it from `test` proposals.
|
|
165
|
-
|
|
166
|
-
Return this shape:
|
|
167
|
-
|
|
168
|
-
```json
|
|
169
|
-
{
|
|
170
|
-
"action_type": "compile",
|
|
171
|
-
"method": "method-id",
|
|
172
|
-
"preparation": "prep-id",
|
|
173
|
-
"values": { "mode": "both if applicable" },
|
|
174
|
-
"title": "short approval card title",
|
|
175
|
-
"summary": "one sentence describing what will run",
|
|
176
|
-
"assistant_message": "concise explanation for the user",
|
|
177
|
-
"command_preview": "interf compile --method method-id"
|
|
178
|
-
}
|
|
179
|
-
```
|
|
180
|
-
|
|
181
|
-
Use `clarification` only when the request cannot be mapped safely to one Interf action.
|
|
182
|
-
|
|
183
|
-
## Reference
|
|
184
|
-
|
|
185
|
-
For the full CLI surface and per-command flags, see [`references/cli.md`](./references/cli.md). It is a generated snapshot of `interf <command> --help` and is checked against the built package in the repo test suite. The installed `interf` command remains the source of truth when available.
|