agency-lang 0.9.0 → 0.11.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/lib/agentTarget.d.ts +52 -0
- package/dist/lib/agentTarget.js +83 -0
- package/dist/lib/agentTarget.test.js +76 -0
- package/dist/lib/agents/agency-agent/agent.agency +19 -534
- package/dist/lib/agents/agency-agent/agent.js +491 -5004
- package/dist/lib/agents/agency-agent/images/images.js +12 -6
- package/dist/lib/agents/agency-agent/lib/args.js +32 -11
- package/dist/lib/agents/agency-agent/lib/attachments.js +71 -23
- package/dist/lib/agents/agency-agent/lib/budget.agency +213 -0
- package/dist/lib/agents/agency-agent/lib/budget.js +1504 -0
- package/dist/lib/agents/agency-agent/lib/capabilities.js +123 -48
- package/dist/lib/agents/agency-agent/lib/capabilitiesUi.js +422 -115
- package/dist/lib/agents/agency-agent/lib/commandPalette.js +15 -6
- package/dist/lib/agents/agency-agent/lib/config.js +22 -11
- package/dist/lib/agents/agency-agent/lib/coordinator.agency +373 -0
- package/dist/lib/agents/agency-agent/lib/coordinator.js +2377 -0
- package/dist/lib/agents/agency-agent/lib/header.js +68 -23
- package/dist/lib/agents/agency-agent/lib/images.js +121 -36
- package/dist/lib/agents/agency-agent/lib/mcp.js +258 -86
- package/dist/lib/agents/agency-agent/lib/modelFilters.js +14 -6
- package/dist/lib/agents/agency-agent/lib/models.agency +6 -4
- package/dist/lib/agents/agency-agent/lib/models.js +194 -72
- package/dist/lib/agents/agency-agent/lib/policy.js +205 -96
- package/dist/lib/agents/agency-agent/lib/repl.agency +415 -0
- package/dist/lib/agents/agency-agent/lib/repl.js +3174 -0
- package/dist/lib/agents/agency-agent/lib/resolution.js +158 -54
- package/dist/lib/agents/agency-agent/lib/search.js +216 -62
- package/dist/lib/agents/agency-agent/lib/session.js +342 -155
- package/dist/lib/agents/agency-agent/lib/settings.js +116 -40
- package/dist/lib/agents/agency-agent/lib/slots.js +49 -14
- package/dist/lib/agents/agency-agent/lib/trace.agency +150 -0
- package/dist/lib/agents/agency-agent/lib/trace.js +2057 -0
- package/dist/lib/agents/agency-agent/lib/utils/renderLLMCallResponse.js +14 -6
- package/dist/lib/agents/agency-agent/lib/utils.agency +12 -0
- package/dist/lib/agents/agency-agent/lib/utils.js +252 -52
- package/dist/lib/agents/agency-agent/prompts/code.md +268 -0
- package/dist/lib/agents/agency-agent/prompts/codeSample.js +27 -21
- package/dist/lib/agents/agency-agent/prompts/main-large.md +4 -0
- package/dist/lib/agents/agency-agent/prompts/main-small.md +4 -0
- package/dist/lib/agents/agency-agent/prompts/oneShot.md +21 -0
- package/dist/lib/agents/agency-agent/shared.agency +1 -1
- package/dist/lib/agents/agency-agent/shared.js +264 -82
- package/dist/lib/agents/agency-agent/subagents/brainstorm.agency +201 -0
- package/dist/lib/agents/agency-agent/subagents/brainstorm.js +1652 -0
- package/dist/lib/agents/agency-agent/subagents/code.agency +328 -478
- package/dist/lib/agents/agency-agent/subagents/code.js +2742 -679
- package/dist/lib/agents/agency-agent/subagents/explorer.agency +18 -130
- package/dist/lib/agents/agency-agent/subagents/explorer.js +91 -228
- package/dist/lib/agents/agency-agent/subagents/oracle.agency +22 -102
- package/dist/lib/agents/agency-agent/subagents/oracle.js +91 -208
- package/dist/lib/agents/agency-agent/subagents/research.agency +57 -140
- package/dist/lib/agents/agency-agent/subagents/research.js +158 -196
- package/dist/lib/agents/agency-agent/subagents/review.agency +21 -40
- package/dist/lib/agents/agency-agent/subagents/review.js +229 -316
- package/dist/lib/agents/agency-agent/subagents/supervisor.agency +378 -0
- package/dist/lib/agents/agency-agent/subagents/supervisor.js +2486 -0
- package/dist/lib/agents/agency-agent/subagents/verify.js +37 -71
- package/dist/lib/agents/agency-agent/tests/agentDir.js +15 -9
- package/dist/lib/agents/agency-agent/tests/agentTurn.agency +1 -1
- package/dist/lib/agents/agency-agent/tests/agentTurn.js +517 -229
- package/dist/lib/agents/agency-agent/tests/agentTurn.test.json +3 -3
- package/dist/lib/agents/agency-agent/tests/attachments.js +85 -86
- package/dist/lib/agents/agency-agent/tests/attachmentsTurn.agency +1 -1
- package/dist/lib/agents/agency-agent/tests/attachmentsTurn.js +130 -46
- package/dist/lib/agents/agency-agent/tests/brainstorm.agency +94 -0
- package/dist/lib/agents/agency-agent/tests/brainstorm.js +1235 -0
- package/dist/lib/agents/agency-agent/tests/brainstorm.test.json +59 -0
- package/dist/lib/agents/agency-agent/tests/capabilities.js +190 -87
- package/dist/lib/agents/agency-agent/tests/execPolicy.js +206 -62
- package/dist/lib/agents/agency-agent/tests/gitPolicy.js +130 -40
- package/dist/lib/agents/agency-agent/tests/imageTool.js +82 -37
- package/dist/lib/agents/agency-agent/tests/mcpGating.js +39 -20
- package/dist/lib/agents/agency-agent/tests/memoryWiring.js +27 -27
- package/dist/lib/agents/agency-agent/tests/modelFilters.js +86 -42
- package/dist/lib/agents/agency-agent/tests/models.js +181 -96
- package/dist/lib/agents/agency-agent/tests/models.test.json +4 -4
- package/dist/lib/agents/agency-agent/tests/oneShotRounds.js +99 -39
- package/dist/lib/agents/agency-agent/tests/resolution.js +487 -141
- package/dist/lib/agents/agency-agent/tests/resolution.test.json +2 -2
- package/dist/lib/agents/agency-agent/tests/search.js +462 -144
- package/dist/lib/agents/agency-agent/tests/settings.js +57 -48
- package/dist/lib/agents/agency-agent/tests/slots.js +23 -21
- package/dist/lib/agents/agency-agent/tests/subagentFailure.js +749 -0
- package/dist/lib/agents/agency-agent/tests/supervisor.agency +197 -0
- package/dist/lib/agents/agency-agent/tests/supervisor.js +2713 -0
- package/dist/lib/agents/agency-agent/tests/supervisor.test.json +169 -0
- package/dist/lib/agents/agency-agent/tests/toolWiring.agency +23 -4
- package/dist/lib/agents/agency-agent/tests/toolWiring.js +296 -28
- package/dist/lib/agents/agency-agent/tests/toolWiring.test.json +14 -0
- package/dist/lib/agents/agency-agent/tests/turnFailure.js +91 -45
- package/dist/lib/agents/eval/goalJudge.agency +4 -2
- package/dist/lib/agents/eval/goalJudge.js +22 -12
- package/dist/lib/agents/eval/judge.agency +4 -2
- package/dist/lib/agents/eval/judge.js +17 -11
- package/dist/lib/agents/eval/judgePairwise.js +15 -9
- package/dist/lib/agents/optimize/gepaReflect.js +15 -9
- package/dist/lib/agents/optimize/mutatePrompt.js +15 -9
- package/dist/lib/agents/policy/agent.agency +5 -4
- package/dist/lib/agents/policy/agent.js +158 -53
- package/dist/lib/agents/review/agent.agency +2 -2
- package/dist/lib/agents/review/agent.js +26 -14
- package/dist/lib/analysis/bodyFacts.d.ts +52 -0
- package/dist/lib/analysis/bodyFacts.js +87 -0
- package/dist/lib/analysis/closure.d.ts +26 -0
- package/dist/lib/analysis/closure.js +99 -0
- package/dist/lib/analysis/closure.test.js +43 -0
- package/dist/lib/analysis/effectPropagation.test.js +167 -0
- package/dist/lib/analysis/effects.d.ts +66 -0
- package/dist/lib/analysis/effects.js +238 -0
- package/dist/lib/analysis/effects.test.js +247 -0
- package/dist/lib/analysis/effectsOracle.test.js +74 -0
- package/dist/lib/analysis/imports.d.ts +10 -0
- package/dist/lib/analysis/imports.js +25 -0
- package/dist/lib/analysis/interrupts.js +6 -1
- package/dist/lib/backends/agencyGenerator.d.ts +54 -7
- package/dist/lib/backends/agencyGenerator.hole.test.d.ts +1 -0
- package/dist/lib/backends/agencyGenerator.hole.test.js +61 -0
- package/dist/lib/backends/agencyGenerator.js +283 -32
- package/dist/lib/backends/agencyGenerator.matchBlock.test.js +100 -0
- package/dist/lib/backends/agencyGenerator.roundtrip.test.js +267 -0
- package/dist/lib/backends/agencyGenerator.splice.test.js +43 -0
- package/dist/lib/backends/agencyGenerator.test.js +44 -1
- package/dist/lib/backends/docstringInterpolationRuntime.test.js +1 -1
- package/dist/lib/backends/draftSchemaCodegen.test.js +32 -0
- package/dist/lib/backends/frameClaims.test.js +58 -0
- package/dist/lib/backends/holeRefusal.test.js +58 -0
- package/dist/lib/backends/topLevelRefusal.test.js +40 -0
- package/dist/lib/backends/typescriptBuilder/directRunArgsCheck.d.ts +11 -0
- package/dist/lib/backends/typescriptBuilder/directRunArgsCheck.js +19 -0
- package/dist/lib/backends/typescriptBuilder/nameClassifier.d.ts +7 -0
- package/dist/lib/backends/typescriptBuilder/nameClassifier.js +3 -2
- package/dist/lib/backends/typescriptBuilder/scopeManager.d.ts +8 -6
- package/dist/lib/backends/typescriptBuilder/scopeManager.js +17 -13
- package/dist/lib/backends/typescriptBuilder/scopeManager.test.js +36 -0
- package/dist/lib/backends/typescriptBuilder/sectionAssembler.js +11 -11
- package/dist/lib/backends/typescriptBuilder.d.ts +7 -0
- package/dist/lib/backends/typescriptBuilder.js +206 -66
- package/dist/lib/backends/typescriptGenerator/typeToString.js +1 -1
- package/dist/lib/backends/typescriptGenerator/validationDescriptor.js +42 -16
- package/dist/lib/cli/bundle.test.js +2 -2
- package/dist/lib/cli/commands.d.ts +5 -24
- package/dist/lib/cli/commands.js +8 -49
- package/dist/lib/cli/coverage.js +1 -1
- package/dist/lib/cli/debug.js +1 -1
- package/dist/lib/cli/definition.js +3 -2
- package/dist/lib/cli/diagnosticsDocs.js +46 -2
- package/dist/lib/cli/diagnosticsDocs.test.js +24 -2
- package/dist/lib/cli/doc.d.ts +1 -0
- package/dist/lib/cli/doc.js +50 -14
- package/dist/lib/cli/doc.test.js +134 -5
- package/dist/lib/cli/eval/grade.d.ts +15 -0
- package/dist/lib/cli/eval/grade.js +33 -0
- package/dist/lib/cli/eval/grade.test.js +89 -0
- package/dist/lib/cli/eval/graders.d.ts +12 -0
- package/dist/lib/cli/eval/graders.js +33 -0
- package/dist/lib/cli/eval/logs.d.ts +7 -0
- package/dist/lib/cli/eval/logs.js +42 -0
- package/dist/lib/cli/eval/logs.test.js +42 -0
- package/dist/lib/cli/eval/optimize.js +20 -42
- package/dist/lib/cli/eval/optimize.test.js +13 -18
- package/dist/lib/cli/eval/run.d.ts +23 -57
- package/dist/lib/cli/eval/run.js +99 -214
- package/dist/lib/cli/eval/run.test.js +230 -21
- package/dist/lib/cli/evalExtract.js +11 -0
- package/dist/lib/cli/evalJudge.d.ts +1 -1
- package/dist/lib/cli/evalJudge.js +8 -34
- package/dist/lib/cli/evalJudge.test.js +10 -29
- package/dist/lib/cli/events.test.js +2 -1
- package/dist/lib/cli/expectedCompileError.d.ts +30 -0
- package/dist/lib/cli/expectedCompileError.js +58 -0
- package/dist/lib/cli/expectedCompileError.test.js +81 -0
- package/dist/lib/cli/explain.js +37 -0
- package/dist/lib/cli/explain.test.js +28 -2
- package/dist/lib/cli/lint.d.ts +4 -0
- package/dist/lib/cli/lint.js +11 -0
- package/dist/lib/cli/lint.test.js +18 -0
- package/dist/lib/cli/literate.d.ts +1 -1
- package/dist/lib/cli/literate.js +90 -10
- package/dist/lib/cli/literate.test.js +96 -1
- package/dist/lib/cli/pack.js +1 -1
- package/dist/lib/cli/policy.d.ts +2 -0
- package/dist/lib/cli/policy.js +1 -1
- package/dist/lib/cli/policyCrossModule.test.js +30 -0
- package/dist/lib/cli/precompile.js +16 -7
- package/dist/lib/cli/precompile.test.js +22 -0
- package/dist/lib/cli/runAgencyAgent.js +4 -3
- package/dist/lib/cli/runBundledAgent.js +9 -4
- package/dist/lib/cli/runBundledAgent.test.js +21 -0
- package/dist/lib/cli/serve.js +2 -1
- package/dist/lib/cli/test.d.ts +8 -2
- package/dist/lib/cli/test.js +199 -12
- package/dist/lib/cli/test.test.js +76 -0
- package/dist/lib/cli/util.d.ts +3 -15
- package/dist/lib/cli/util.js +14 -63
- package/dist/lib/cli/validatorInterrupts.spawn.test.js +167 -0
- package/dist/lib/cli/watch.js +1 -1
- package/dist/lib/cli/watch.test.js +2 -2
- package/dist/lib/compilationUnit.js +3 -2
- package/dist/lib/compiler/buildSession.js +16 -2
- package/dist/lib/compiler/buildSession.test.js +1 -1
- package/dist/lib/compiler/compile.js +25 -2
- package/dist/lib/compiler/compileClosure.d.ts +14 -1
- package/dist/lib/compiler/compileClosure.js +13 -1
- package/dist/lib/compiler/defaultSession.d.ts +24 -0
- package/dist/lib/compiler/defaultSession.js +45 -0
- package/dist/lib/compiler/initDepGraph.js +3 -2
- package/dist/lib/compiler/splice/cache.d.ts +60 -0
- package/dist/lib/compiler/splice/cache.js +126 -0
- package/dist/lib/compiler/splice/cache.test.js +124 -0
- package/dist/lib/compiler/splice/eligibility.d.ts +114 -0
- package/dist/lib/compiler/splice/eligibility.js +253 -0
- package/dist/lib/compiler/splice/eligibility.test.js +153 -0
- package/dist/lib/compiler/splice/generatorEffects.d.ts +18 -0
- package/dist/lib/compiler/splice/generatorEffects.js +210 -0
- package/dist/lib/compiler/splice/rebuild.test.js +124 -0
- package/dist/lib/compiler/splice/report.d.ts +12 -0
- package/dist/lib/compiler/splice/report.js +20 -0
- package/dist/lib/compiler/splice/runGenerator.d.ts +43 -0
- package/dist/lib/compiler/splice/runGenerator.js +385 -0
- package/dist/lib/compiler/splice/runGenerator.test.js +216 -0
- package/dist/lib/compiler/splice/types.d.ts +28 -0
- package/dist/lib/compiler/typecheck.d.ts +10 -0
- package/dist/lib/compiler/typecheck.js +28 -7
- package/dist/lib/compiler/typecheckEffects.test.d.ts +1 -0
- package/dist/lib/compiler/typecheckEffects.test.js +35 -0
- package/dist/lib/config.d.ts +50 -0
- package/dist/lib/config.js +29 -1
- package/dist/lib/constants.d.ts +12 -0
- package/dist/lib/constants.js +12 -0
- package/dist/lib/debugger/driver.test.js +1 -1
- package/dist/lib/debugger/exportFrames.test.js +1 -1
- package/dist/lib/debugger/testSession.test.js +1 -1
- package/dist/lib/debugger/thread.test.js +1 -1
- package/dist/lib/debugger/trace.test.js +1 -1
- package/dist/lib/debugger/uiState.test.js +1 -0
- package/dist/lib/eval/extract.d.ts +0 -6
- package/dist/lib/eval/extract.js +23 -43
- package/dist/lib/eval/extract.test.js +97 -29
- package/dist/lib/eval/grading/agencyRunner.test.d.ts +1 -0
- package/dist/lib/eval/grading/aggregate.test.d.ts +1 -0
- package/dist/lib/eval/grading/baseGrader.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/baseGrader.test.js +3 -2
- package/dist/lib/{optimize → eval}/grading/functionGrader.d.ts +5 -0
- package/dist/lib/{optimize → eval}/grading/functionGrader.js +8 -2
- package/dist/lib/eval/grading/functionGrader.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/functionGrader.test.js +7 -6
- package/dist/lib/eval/grading/getPath.test.d.ts +1 -0
- package/dist/lib/{optimize → eval/grading}/goalJudgeFile.js +1 -1
- package/dist/lib/eval/grading/goalJudgeFile.test.d.ts +1 -0
- package/dist/lib/eval/grading/grade.test.d.ts +1 -0
- package/dist/lib/eval/grading/gradeBreakdown.d.ts +54 -0
- package/dist/lib/eval/grading/gradeBreakdown.js +83 -0
- package/dist/lib/eval/grading/gradeBreakdown.test.d.ts +1 -0
- package/dist/lib/{optimize → eval/grading}/gradeBreakdown.test.js +5 -4
- package/dist/lib/eval/grading/gradeRun.d.ts +44 -0
- package/dist/lib/eval/grading/gradeRun.js +180 -0
- package/dist/lib/eval/grading/gradeRun.test.d.ts +1 -0
- package/dist/lib/eval/grading/gradeRun.test.js +175 -0
- package/dist/lib/eval/grading/gradeSuite.d.ts +10 -0
- package/dist/lib/eval/grading/gradeSuite.js +27 -0
- package/dist/lib/eval/grading/graders/builtinGraders.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/graders/builtinGraders.test.js +7 -6
- package/dist/lib/{optimize → eval}/grading/graders/humanGrader.js +1 -1
- package/dist/lib/eval/grading/graders/humanGrader.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/graders/humanGrader.test.js +3 -2
- package/dist/lib/{optimize → eval}/grading/graders/llmJudge.js +1 -1
- package/dist/lib/eval/grading/graders/llmJudge.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/graders/llmJudge.test.js +6 -5
- package/dist/lib/{optimize → eval/grading}/gradingModule.d.ts +2 -2
- package/dist/lib/{optimize → eval/grading}/gradingModule.js +24 -3
- package/dist/lib/eval/grading/gradingModule.test.d.ts +1 -0
- package/dist/lib/{optimize → eval/grading}/gradingModule.test.js +1 -1
- package/dist/lib/eval/grading/recordGrading.d.ts +12 -0
- package/dist/lib/eval/grading/recordGrading.js +27 -0
- package/dist/lib/{optimize → eval}/grading/scorecard.d.ts +5 -2
- package/dist/lib/eval/grading/scorecard.test.d.ts +1 -0
- package/dist/lib/{optimize → eval}/grading/scorecard.test.js +14 -13
- package/dist/lib/eval/grading/testUtils.d.ts +7 -0
- package/dist/lib/eval/grading/testUtils.js +31 -0
- package/dist/lib/{optimize → eval}/grading/types.d.ts +9 -3
- package/dist/lib/eval/grading/types.js +1 -0
- package/dist/lib/eval/judge/suite.d.ts +4 -5
- package/dist/lib/eval/judge/suite.js +41 -23
- package/dist/lib/eval/judge/suite.test.js +42 -20
- package/dist/lib/eval/judge/types.d.ts +4 -0
- package/dist/lib/eval/loadInputs.d.ts +9 -0
- package/dist/lib/eval/loadInputs.js +138 -21
- package/dist/lib/eval/loadInputs.test.js +192 -16
- package/dist/lib/eval/normalize.d.ts +4 -0
- package/dist/lib/eval/normalize.js +2 -1
- package/dist/lib/eval/public.d.ts +12 -0
- package/dist/lib/eval/public.js +10 -0
- package/dist/lib/eval/public.test.d.ts +1 -0
- package/dist/lib/eval/public.test.js +49 -0
- package/dist/lib/eval/readRun.js +43 -4
- package/dist/lib/eval/readRun.test.js +37 -3
- package/dist/lib/eval/run/commandLine.d.ts +9 -0
- package/dist/lib/eval/run/commandLine.js +54 -0
- package/dist/lib/eval/run/commandLine.test.d.ts +1 -0
- package/dist/lib/eval/run/commandLine.test.js +34 -0
- package/dist/lib/eval/run/costTail.d.ts +8 -0
- package/dist/lib/eval/run/costTail.js +26 -0
- package/dist/lib/eval/run/extract.d.ts +24 -0
- package/dist/lib/eval/run/extract.js +36 -0
- package/dist/lib/eval/run/runAgent.d.ts +68 -0
- package/dist/lib/eval/run/runAgent.js +205 -0
- package/dist/lib/eval/run/runAgent.test.d.ts +1 -0
- package/dist/lib/eval/run/runAgent.test.js +193 -0
- package/dist/lib/eval/run/runSuite.d.ts +52 -0
- package/dist/lib/eval/run/runSuite.js +247 -0
- package/dist/lib/eval/run/runSuite.test.d.ts +1 -0
- package/dist/lib/eval/run/runSuite.test.js +321 -0
- package/dist/lib/eval/run/seed.d.ts +40 -0
- package/dist/lib/eval/run/seed.js +101 -0
- package/dist/lib/eval/run/seed.test.d.ts +1 -0
- package/dist/lib/eval/run/seed.test.js +118 -0
- package/dist/lib/eval/run/spawnRunner.d.ts +27 -0
- package/dist/lib/eval/run/spawnRunner.js +208 -0
- package/dist/lib/eval/run/spawnRunner.test.d.ts +1 -0
- package/dist/lib/eval/run/spawnRunner.test.js +149 -0
- package/dist/lib/eval/run/statusBoard.d.ts +22 -0
- package/dist/lib/eval/run/statusBoard.js +78 -0
- package/dist/lib/eval/run/subprocess.d.ts +54 -0
- package/dist/lib/eval/run/subprocess.js +170 -0
- package/dist/lib/eval/run/subprocess.test.d.ts +1 -0
- package/dist/lib/eval/run/subprocess.test.js +64 -0
- package/dist/lib/eval/runArtifacts.d.ts +55 -14
- package/dist/lib/eval/runArtifacts.js +76 -52
- package/dist/lib/eval/runArtifacts.test.js +11 -30
- package/dist/lib/eval/runTypes.d.ts +59 -21
- package/dist/lib/eval/sources.d.ts +26 -0
- package/dist/lib/eval/sources.js +148 -0
- package/dist/lib/eval/sources.test.d.ts +1 -0
- package/dist/lib/eval/sources.test.js +96 -0
- package/dist/lib/eval/testUtils.d.ts +7 -0
- package/dist/lib/eval/testUtils.js +22 -0
- package/dist/lib/eval/types.d.ts +32 -24
- package/dist/lib/formatter.comprehension.test.d.ts +1 -0
- package/dist/lib/formatter.comprehension.test.js +34 -0
- package/dist/lib/formatter.test.js +36 -0
- package/dist/lib/importPaths.d.ts +3 -0
- package/dist/lib/importPaths.js +23 -18
- package/dist/lib/ir/builders.js +4 -8
- package/dist/lib/linter/diagnosticExplanations.d.ts +3 -0
- package/dist/lib/linter/diagnosticExplanations.js +20 -0
- package/dist/lib/linter/diagnostics.d.ts +35 -0
- package/dist/lib/linter/diagnostics.js +43 -0
- package/dist/lib/linter/diagnostics.test.d.ts +1 -0
- package/dist/lib/linter/diagnostics.test.js +23 -0
- package/dist/lib/linter/registry.d.ts +14 -0
- package/dist/lib/linter/registry.js +28 -0
- package/dist/lib/linter/registry.test.d.ts +1 -0
- package/dist/lib/linter/registry.test.js +23 -0
- package/dist/lib/linter/rules/importFixes.d.ts +8 -0
- package/dist/lib/linter/rules/importFixes.js +71 -0
- package/dist/lib/linter/rules/missingDocstring.d.ts +2 -0
- package/dist/lib/linter/rules/missingDocstring.js +27 -0
- package/dist/lib/linter/rules/missingDocstring.test.d.ts +1 -0
- package/dist/lib/linter/rules/missingDocstring.test.js +62 -0
- package/dist/lib/linter/rules/redundantPreludeImport.d.ts +2 -0
- package/dist/lib/linter/rules/redundantPreludeImport.js +50 -0
- package/dist/lib/linter/rules/redundantPreludeImport.test.d.ts +1 -0
- package/dist/lib/linter/rules/redundantPreludeImport.test.js +74 -0
- package/dist/lib/linter/rules/unusedImports.d.ts +26 -0
- package/dist/lib/linter/rules/unusedImports.fix.test.d.ts +1 -0
- package/dist/lib/linter/rules/unusedImports.fix.test.js +86 -0
- package/dist/lib/linter/rules/unusedImports.js +102 -0
- package/dist/lib/linter/rules/unusedImports.test.d.ts +1 -0
- package/dist/lib/linter/rules/unusedImports.test.js +107 -0
- package/dist/lib/linter/rules/util.d.ts +36 -0
- package/dist/lib/linter/rules/util.js +93 -0
- package/dist/lib/linter/rules/util.test.d.ts +1 -0
- package/dist/lib/linter/rules/util.test.js +37 -0
- package/dist/lib/linter/types.d.ts +41 -0
- package/dist/lib/linter/types.js +1 -0
- package/dist/lib/logsViewer/follow.js +14 -59
- package/dist/lib/logsViewer/parse.d.ts +1 -11
- package/dist/lib/logsViewer/parse.js +5 -61
- package/dist/lib/lowering/comprehensionDesugar.d.ts +26 -0
- package/dist/lib/lowering/comprehensionDesugar.js +228 -0
- package/dist/lib/lowering/comprehensionDesugar.locations.test.d.ts +1 -0
- package/dist/lib/lowering/comprehensionDesugar.locations.test.js +57 -0
- package/dist/lib/lowering/comprehensionDesugar.test.d.ts +1 -0
- package/dist/lib/lowering/comprehensionDesugar.test.js +171 -0
- package/dist/lib/lowering/patternGuards.tripwire.test.d.ts +27 -0
- package/dist/lib/lowering/patternGuards.tripwire.test.js +362 -0
- package/dist/lib/lowering/patternLowering.js +311 -29
- package/dist/lib/lowering/patternLowering.test.js +131 -12
- package/dist/lib/lsp/codeAction.d.ts +13 -1
- package/dist/lib/lsp/codeAction.js +70 -1
- package/dist/lib/lsp/codeAction.test.js +86 -0
- package/dist/lib/lsp/completion.js +2 -1
- package/dist/lib/lsp/diagnostics.d.ts +4 -0
- package/dist/lib/lsp/diagnostics.js +116 -18
- package/dist/lib/lsp/diagnostics.test.js +254 -0
- package/dist/lib/lsp/documentState.d.ts +10 -0
- package/dist/lib/lsp/documentStateCache.d.ts +50 -0
- package/dist/lib/lsp/documentStateCache.js +47 -0
- package/dist/lib/lsp/documentStateCache.test.d.ts +1 -0
- package/dist/lib/lsp/documentStateCache.test.js +95 -0
- package/dist/lib/lsp/documentSymbol.js +3 -2
- package/dist/lib/lsp/scopeResolution.d.ts +17 -0
- package/dist/lib/lsp/scopeResolution.js +42 -22
- package/dist/lib/lsp/semanticTokens.d.ts +32 -0
- package/dist/lib/lsp/semanticTokens.js +220 -0
- package/dist/lib/lsp/semanticTokens.test.d.ts +1 -0
- package/dist/lib/lsp/semanticTokens.test.js +338 -0
- package/dist/lib/lsp/semantics.js +7 -6
- package/dist/lib/lsp/server.js +136 -13
- package/dist/lib/optimize/baseOptimizer.d.ts +15 -25
- package/dist/lib/optimize/baseOptimizer.js +50 -60
- package/dist/lib/optimize/baseOptimizer.test.js +12 -14
- package/dist/lib/optimize/baseOptimizer.workdir.test.js +18 -18
- package/dist/lib/optimize/evalCache.d.ts +2 -3
- package/dist/lib/optimize/evalCache.js +1 -1
- package/dist/lib/optimize/evalCache.test.js +6 -4
- package/dist/lib/optimize/gepaReflect.d.ts +1 -1
- package/dist/lib/optimize/gepaReflect.test.js +1 -1
- package/dist/lib/optimize/mutator.test.js +2 -2
- package/dist/lib/optimize/optimizer.d.ts +2 -2
- package/dist/lib/optimize/optimizers/example.d.ts +2 -2
- package/dist/lib/optimize/optimizers/example.js +1 -1
- package/dist/lib/optimize/optimizers/example.test.js +7 -5
- package/dist/lib/optimize/optimizers/gepa.d.ts +2 -2
- package/dist/lib/optimize/optimizers/gepa.js +1 -1
- package/dist/lib/optimize/optimizers/gepa.test.js +7 -5
- package/dist/lib/optimize/optimizers/greedyReflective.d.ts +1 -1
- package/dist/lib/optimize/optimizers/greedyReflective.test.js +22 -19
- package/dist/lib/optimize/public.d.ts +2 -12
- package/dist/lib/optimize/public.js +4 -10
- package/dist/lib/optimize/reflectionFeedback.d.ts +1 -1
- package/dist/lib/optimize/reflectionFeedback.js +6 -15
- package/dist/lib/optimize/reflectionFeedback.test.js +18 -20
- package/dist/lib/optimize/report.js +1 -1
- package/dist/lib/optimize/report.test.js +3 -3
- package/dist/lib/optimize/reporter.d.ts +2 -62
- package/dist/lib/optimize/reporter.js +0 -100
- package/dist/lib/optimize/reporter.test.js +2 -172
- package/dist/lib/optimize/sourceMutator.js +2 -1
- package/dist/lib/optimize/targets.d.ts +0 -6
- package/dist/lib/optimize/targets.js +7 -59
- package/dist/lib/optimize/testUtils.d.ts +11 -0
- package/dist/lib/optimize/testUtils.js +64 -0
- package/dist/lib/optimize/types.d.ts +1 -35
- package/dist/lib/optimize/validationSplit.test.js +1 -1
- package/dist/lib/optimize/workspace.d.ts +4 -4
- package/dist/lib/optimize/workspace.js +2 -2
- package/dist/lib/optimize/workspace.test.js +1 -1
- package/dist/lib/parseCache.d.ts +10 -0
- package/dist/lib/parseCache.js +13 -0
- package/dist/lib/parseCache.test.js +26 -1
- package/dist/lib/parser.d.ts +1 -1
- package/dist/lib/parser.js +67 -8
- package/dist/lib/parser.test.js +12 -3
- package/dist/lib/parsers/body.test.js +101 -0
- package/dist/lib/parsers/chainNewlineBoundary.test.d.ts +1 -0
- package/dist/lib/parsers/chainNewlineBoundary.test.js +121 -0
- package/dist/lib/parsers/codeLiteral.test.d.ts +1 -0
- package/dist/lib/parsers/codeLiteral.test.js +331 -0
- package/dist/lib/parsers/comprehension.test.d.ts +1 -0
- package/dist/lib/parsers/comprehension.test.js +325 -0
- package/dist/lib/parsers/hashRemoved.test.d.ts +1 -0
- package/dist/lib/parsers/hashRemoved.test.js +11 -0
- package/dist/lib/parsers/hole.test.d.ts +1 -0
- package/dist/lib/parsers/hole.test.js +171 -0
- package/dist/lib/parsers/literalDelimiter.test.d.ts +1 -0
- package/dist/lib/parsers/literalDelimiter.test.js +60 -0
- package/dist/lib/parsers/matchBlock.test.js +100 -0
- package/dist/lib/parsers/objectTypeTags.test.js +0 -13
- package/dist/lib/parsers/parsers.d.ts +83 -7
- package/dist/lib/parsers/parsers.js +860 -55
- package/dist/lib/parsers/pattern.test.js +235 -4
- package/dist/lib/parsers/splice.test.d.ts +1 -0
- package/dist/lib/parsers/splice.test.js +105 -0
- package/dist/lib/parsers/typeHints.test.js +1 -300
- package/dist/lib/perf/compile.perf.test.d.ts +1 -0
- package/dist/lib/perf/compile.perf.test.js +76 -0
- package/dist/lib/perf/doc.perf.test.d.ts +1 -0
- package/dist/lib/perf/doc.perf.test.js +30 -0
- package/dist/lib/perf/fixtures.d.ts +25 -0
- package/dist/lib/perf/fixtures.js +100 -0
- package/dist/lib/perf/fixtures.test.d.ts +1 -0
- package/dist/lib/perf/fixtures.test.js +37 -0
- package/dist/lib/perf/fmt.perf.test.d.ts +1 -0
- package/dist/lib/perf/fmt.perf.test.js +16 -0
- package/dist/lib/perf/harness.d.ts +31 -0
- package/dist/lib/perf/harness.js +114 -0
- package/dist/lib/perf/harness.perf.test.d.ts +1 -0
- package/dist/lib/perf/harness.perf.test.js +45 -0
- package/dist/lib/perf/harness.test.d.ts +1 -0
- package/dist/lib/perf/harness.test.js +79 -0
- package/dist/lib/perf/lint.perf.test.d.ts +1 -0
- package/dist/lib/perf/lint.perf.test.js +76 -0
- package/dist/lib/perf/lsp.perf.test.d.ts +1 -0
- package/dist/lib/perf/lsp.perf.test.js +60 -0
- package/dist/lib/perf/parse.perf.test.d.ts +1 -0
- package/dist/lib/perf/parse.perf.test.js +20 -0
- package/dist/lib/perf/symbolTable.perf.test.d.ts +1 -0
- package/dist/lib/perf/symbolTable.perf.test.js +63 -0
- package/dist/lib/perf/typecheck.perf.test.d.ts +1 -0
- package/dist/lib/perf/typecheck.perf.test.js +35 -0
- package/dist/lib/prelude.d.ts +27 -0
- package/dist/lib/prelude.js +62 -0
- package/dist/lib/prelude.test.d.ts +1 -0
- package/dist/lib/prelude.test.js +41 -0
- package/dist/lib/preprocessors/expandSplices.d.ts +14 -0
- package/dist/lib/preprocessors/expandSplices.js +496 -0
- package/dist/lib/preprocessors/expandSplices.test.d.ts +1 -0
- package/dist/lib/preprocessors/expandSplices.test.js +337 -0
- package/dist/lib/preprocessors/guardDesugar.d.ts +16 -3
- package/dist/lib/preprocessors/guardDesugar.js +63 -34
- package/dist/lib/preprocessors/guardDesugar.test.js +110 -0
- package/dist/lib/preprocessors/hoistCalls.d.ts +83 -0
- package/dist/lib/preprocessors/hoistCalls.js +354 -0
- package/dist/lib/preprocessors/hoistCalls.test.d.ts +1 -0
- package/dist/lib/preprocessors/hoistCalls.test.js +385 -0
- package/dist/lib/preprocessors/importResolver.d.ts +13 -0
- package/dist/lib/preprocessors/importResolver.js +188 -102
- package/dist/lib/preprocessors/importResolver.test.js +115 -0
- package/dist/lib/preprocessors/liftCallbacks.js +5 -3
- package/dist/lib/preprocessors/liftCallbacks.test.js +1 -1
- package/dist/lib/preprocessors/prunePreludeShadows.js +7 -3
- package/dist/lib/preprocessors/typescriptPreprocessor.js +26 -7
- package/dist/lib/runtime/__tests__/testHelpers.js +1 -0
- package/dist/lib/runtime/agency.test.js +9 -0
- package/dist/lib/runtime/agencyFunction.d.ts +8 -0
- package/dist/lib/runtime/agencyFunction.js +14 -0
- package/dist/lib/runtime/agencyInterrupt.js +1 -0
- package/dist/lib/runtime/agencyInterrupt.test.js +79 -53
- package/dist/lib/runtime/asyncContext.d.ts +1 -25
- package/dist/lib/runtime/asyncContext.js +1 -12
- package/dist/lib/runtime/asyncContext.test.js +1 -25
- package/dist/lib/runtime/blockNames.d.ts +17 -0
- package/dist/lib/runtime/blockNames.js +19 -0
- package/dist/lib/runtime/blockNames.test.js +15 -1
- package/dist/lib/runtime/clock.d.ts +48 -0
- package/dist/lib/runtime/clock.js +71 -0
- package/dist/lib/runtime/clock.test.d.ts +1 -0
- package/dist/lib/runtime/clock.test.js +118 -0
- package/dist/lib/runtime/configOverrides.d.ts +17 -0
- package/dist/lib/runtime/configOverrides.js +26 -0
- package/dist/lib/runtime/configOverrides.test.js +26 -1
- package/dist/lib/runtime/crossModuleInitRegistry.d.ts +24 -0
- package/dist/lib/runtime/crossModuleInitRegistry.js +32 -0
- package/dist/lib/runtime/crossModuleInitRegistry.test.d.ts +1 -0
- package/dist/lib/runtime/crossModuleInitRegistry.test.js +31 -0
- package/dist/lib/runtime/effectMerge.test.js +4 -3
- package/dist/lib/runtime/executingHandlers.d.ts +7 -0
- package/dist/lib/runtime/executingHandlers.js +47 -0
- package/dist/lib/runtime/executingHandlers.test.d.ts +1 -0
- package/dist/lib/runtime/executingHandlers.test.js +51 -0
- package/dist/lib/runtime/guard.clock.test.d.ts +1 -0
- package/dist/lib/runtime/guard.clock.test.js +78 -0
- package/dist/lib/runtime/guard.d.ts +10 -4
- package/dist/lib/runtime/guard.js +35 -10
- package/dist/lib/runtime/guard.test.js +28 -0
- package/dist/lib/runtime/guardTripInterrupt.inHandler.test.d.ts +1 -0
- package/dist/lib/runtime/guardTripInterrupt.inHandler.test.js +47 -0
- package/dist/lib/runtime/guardTripInterrupt.js +22 -0
- package/dist/lib/runtime/index.d.ts +5 -2
- package/dist/lib/runtime/index.js +5 -2
- package/dist/lib/runtime/initPlanWorkedExamples.test.js +1 -1
- package/dist/lib/runtime/interrupts.d.ts +0 -2
- package/dist/lib/runtime/interrupts.executingHandlers.test.d.ts +1 -0
- package/dist/lib/runtime/interrupts.executingHandlers.test.js +112 -0
- package/dist/lib/runtime/interrupts.js +107 -15
- package/dist/lib/runtime/interrupts.test.js +38 -9
- package/dist/lib/runtime/intrinsicTools.d.ts +4 -1
- package/dist/lib/runtime/ipc.d.ts +30 -1
- package/dist/lib/runtime/ipc.js +30 -1
- package/dist/lib/runtime/ipc.test.js +28 -1
- package/dist/lib/runtime/jsonValue.d.ts +15 -0
- package/dist/lib/runtime/jsonValue.js +66 -0
- package/dist/lib/runtime/jsonValue.test.d.ts +1 -0
- package/dist/lib/runtime/jsonValue.test.js +52 -0
- package/dist/lib/runtime/memory/cacheEntry.d.ts +10 -0
- package/dist/lib/runtime/memory/cacheEntry.js +10 -0
- package/dist/lib/runtime/memory/compaction.d.ts +8 -3
- package/dist/lib/runtime/memory/compaction.js +10 -4
- package/dist/lib/runtime/memory/compaction.test.js +32 -18
- package/dist/lib/runtime/memory/manager.js +23 -5
- package/dist/lib/runtime/memory/manager.test.js +91 -0
- package/dist/lib/runtime/node.d.ts +2 -6
- package/dist/lib/runtime/node.js +16 -21
- package/dist/lib/runtime/prompt.js +49 -79
- package/dist/lib/runtime/promptRunner.js +1 -0
- package/dist/lib/runtime/promptRunner.test.js +3 -3
- package/dist/lib/runtime/requireLength.d.ts +15 -0
- package/dist/lib/runtime/requireLength.js +21 -0
- package/dist/lib/runtime/resumableScope.js +4 -4
- package/dist/lib/runtime/revivers/functionRefReviver.d.ts +7 -1
- package/dist/lib/runtime/revivers/functionRefReviver.js +168 -18
- package/dist/lib/runtime/revivers/functionRefReviver.test.js +230 -6
- package/dist/lib/runtime/rewind.d.ts +0 -2
- package/dist/lib/runtime/rewind.js +3 -4
- package/dist/lib/runtime/runBatch.js +22 -5
- package/dist/lib/runtime/runBatch.test.js +30 -1
- package/dist/lib/runtime/runner.js +33 -13
- package/dist/lib/runtime/runner.test.js +80 -0
- package/dist/lib/runtime/saveDraftTool.d.ts +8 -6
- package/dist/lib/runtime/saveDraftTool.js +12 -10
- package/dist/lib/runtime/saveDraftTool.test.js +11 -2
- package/dist/lib/runtime/state/checkpointStore.test.js +1 -0
- package/dist/lib/runtime/state/context.clock.test.d.ts +1 -0
- package/dist/lib/runtime/state/context.clock.test.js +47 -0
- package/dist/lib/runtime/state/context.d.ts +24 -0
- package/dist/lib/runtime/state/context.js +42 -2
- package/dist/lib/runtime/state/context.test.js +24 -0
- package/dist/lib/runtime/state/globalStore.js +7 -0
- package/dist/lib/runtime/state/messageThread.d.ts +60 -1
- package/dist/lib/runtime/state/messageThread.js +100 -1
- package/dist/lib/runtime/state/messageThread.test.js +98 -0
- package/dist/lib/runtime/state/pendingPromiseStore.d.ts +10 -1
- package/dist/lib/runtime/state/pendingPromiseStore.js +22 -1
- package/dist/lib/runtime/state/pendingPromiseStore.test.js +41 -0
- package/dist/lib/runtime/state/schemas.d.ts +3 -0
- package/dist/lib/runtime/state/schemas.js +3 -0
- package/dist/lib/runtime/state/stateStack.d.ts +59 -0
- package/dist/lib/runtime/state/stateStack.executingHandlers.test.d.ts +1 -0
- package/dist/lib/runtime/state/stateStack.executingHandlers.test.js +42 -0
- package/dist/lib/runtime/state/stateStack.js +97 -0
- package/dist/lib/runtime/state/stateStack.tripwire.test.d.ts +1 -0
- package/dist/lib/runtime/state/stateStack.tripwire.test.js +47 -0
- package/dist/lib/runtime/staticInit.crossModule.test.js +1 -1
- package/dist/lib/runtime/subprocess-bootstrap.js +9 -4
- package/dist/lib/runtime/template/aliasTable.d.ts +10 -0
- package/dist/lib/runtime/template/aliasTable.js +35 -0
- package/dist/lib/runtime/template/code.d.ts +19 -0
- package/dist/lib/runtime/template/code.js +12 -0
- package/dist/lib/runtime/template/codeLiteral.d.ts +10 -0
- package/dist/lib/runtime/template/codeLiteral.js +40 -0
- package/dist/lib/runtime/template/combine.test.d.ts +1 -0
- package/dist/lib/runtime/template/combine.test.js +97 -0
- package/dist/lib/runtime/template/escaping.test.d.ts +1 -0
- package/dist/lib/runtime/template/escaping.test.js +107 -0
- package/dist/lib/runtime/template/explainMismatch.d.ts +14 -0
- package/dist/lib/runtime/template/explainMismatch.js +49 -0
- package/dist/lib/runtime/template/fill.d.ts +19 -0
- package/dist/lib/runtime/template/fill.js +304 -0
- package/dist/lib/runtime/template/fill.test.d.ts +1 -0
- package/dist/lib/runtime/template/fill.test.js +783 -0
- package/dist/lib/runtime/template/hygiene.d.ts +89 -0
- package/dist/lib/runtime/template/hygiene.js +426 -0
- package/dist/lib/runtime/template/hygiene.test.d.ts +1 -0
- package/dist/lib/runtime/template/hygiene.test.js +253 -0
- package/dist/lib/runtime/template/lift.d.ts +14 -0
- package/dist/lib/runtime/template/lift.js +51 -0
- package/dist/lib/runtime/template/literals.d.ts +17 -0
- package/dist/lib/runtime/template/literals.js +44 -0
- package/dist/lib/runtime/template/origin.d.ts +30 -0
- package/dist/lib/runtime/template/origin.js +47 -0
- package/dist/lib/runtime/template/synthesizeType.d.ts +31 -0
- package/dist/lib/runtime/template/synthesizeType.js +118 -0
- package/dist/lib/runtime/template/synthesizeType.test.d.ts +1 -0
- package/dist/lib/runtime/template/synthesizeType.test.js +111 -0
- package/dist/lib/runtime/threadRepair.d.ts +76 -5
- package/dist/lib/runtime/threadRepair.js +153 -31
- package/dist/lib/runtime/threadRepair.test.js +177 -3
- package/dist/lib/runtime/toolMessageProvider.test.d.ts +1 -0
- package/dist/lib/runtime/toolMessageProvider.test.js +69 -0
- package/dist/lib/runtime/toolSchemaSize.d.ts +70 -0
- package/dist/lib/runtime/toolSchemaSize.js +87 -0
- package/dist/lib/runtime/toolSchemaSize.test.d.ts +1 -0
- package/dist/lib/runtime/toolSchemaSize.test.js +88 -0
- package/dist/lib/runtime/topsortCycleErrors.test.js +1 -1
- package/dist/lib/runtime/trace/eventLog.d.ts +1 -0
- package/dist/lib/runtime/trace/eventLog.js +2 -0
- package/dist/lib/runtime/trace/eventLog.test.js +29 -25
- package/dist/lib/runtime/trace/traceReader.test.js +4 -3
- package/dist/lib/runtime/trace/traceWriter.test.js +2 -2
- package/dist/lib/runtime/turnBoundary.d.ts +81 -0
- package/dist/lib/runtime/turnBoundary.js +89 -0
- package/dist/lib/runtime/turnBoundary.test.d.ts +1 -0
- package/dist/lib/runtime/turnBoundary.test.js +191 -0
- package/dist/lib/runtime/typeTest.d.ts +5 -0
- package/dist/lib/runtime/typeTest.js +21 -0
- package/dist/lib/runtime/typeTest.test.d.ts +1 -0
- package/dist/lib/runtime/typeTest.test.js +43 -0
- package/dist/lib/runtime/utils.d.ts +7 -0
- package/dist/lib/runtime/utils.js +83 -13
- package/dist/lib/runtime/utils.test.js +182 -7
- package/dist/lib/runtime/validateChain.d.ts +16 -3
- package/dist/lib/runtime/validateChain.js +56 -4
- package/dist/lib/runtime/validateChain.test.js +113 -5
- package/dist/lib/serve/http/functionFrame.integration.test.js +1 -1
- package/dist/lib/serve/public.d.ts +1 -0
- package/dist/lib/serve/public.js +4 -0
- package/dist/lib/sourceIsText.test.d.ts +1 -0
- package/dist/lib/sourceIsText.test.js +40 -0
- package/dist/lib/statelog/appendReader.d.ts +20 -0
- package/dist/lib/statelog/appendReader.js +53 -0
- package/dist/lib/statelog/parse.d.ts +11 -0
- package/dist/lib/statelog/parse.js +61 -0
- package/dist/lib/statelog/tail.d.ts +12 -0
- package/dist/lib/statelog/tail.js +21 -0
- package/dist/lib/statelogClient.d.ts +23 -4
- package/dist/lib/statelogClient.js +15 -2
- package/dist/lib/stdlib/abortable.js +34 -0
- package/dist/lib/stdlib/agency.d.ts +27 -0
- package/dist/lib/stdlib/agency.js +207 -2
- package/dist/lib/stdlib/agencyEval.d.ts +1 -62
- package/dist/lib/stdlib/agencyEval.js +1 -125
- package/dist/lib/stdlib/assertContained.js +3 -4
- package/dist/lib/stdlib/builtins.d.ts +20 -0
- package/dist/lib/stdlib/builtins.js +57 -6
- package/dist/lib/stdlib/cli.d.ts +149 -0
- package/dist/lib/stdlib/cli.js +478 -76
- package/dist/lib/stdlib/date.d.ts +15 -12
- package/dist/lib/stdlib/date.js +131 -122
- package/dist/lib/stdlib/expandPath.d.ts +5 -3
- package/dist/lib/stdlib/expandPath.js +5 -3
- package/dist/lib/stdlib/fs.js +7 -7
- package/dist/lib/stdlib/imessage.js +24 -23
- package/dist/lib/stdlib/jsonValue.d.ts +5 -0
- package/dist/lib/stdlib/jsonValue.js +12 -0
- package/dist/lib/stdlib/layout/table.js +22 -4
- package/dist/lib/stdlib/llm.d.ts +19 -0
- package/dist/lib/stdlib/llm.js +44 -2
- package/dist/lib/stdlib/memory.d.ts +2 -2
- package/dist/lib/stdlib/memory.js +2 -2
- package/dist/lib/stdlib/policy.js +1 -1
- package/dist/lib/stdlib/resolveDir.d.ts +9 -8
- package/dist/lib/stdlib/resolveDir.js +13 -13
- package/dist/lib/stdlib/resolvePath.d.ts +8 -16
- package/dist/lib/stdlib/resolvePath.js +10 -52
- package/dist/lib/stdlib/safeBash.d.ts +1 -0
- package/dist/lib/stdlib/safeBash.js +1 -0
- package/dist/lib/stdlib/shell.js +36 -14
- package/dist/lib/stdlib/skills.d.ts +22 -16
- package/dist/lib/stdlib/skills.js +32 -20
- package/dist/lib/stdlib/speech.js +3 -3
- package/dist/lib/stdlib/statelog.js +1 -1
- package/dist/lib/stdlib/system.d.ts +0 -8
- package/dist/lib/stdlib/system.js +2 -12
- package/dist/lib/stdlib/template.d.ts +32 -0
- package/dist/lib/stdlib/template.js +81 -0
- package/dist/lib/stdlib/thread.d.ts +13 -0
- package/dist/lib/stdlib/thread.js +51 -0
- package/dist/lib/symbolTable.d.ts +8 -1
- package/dist/lib/symbolTable.js +66 -13
- package/dist/lib/symbolTable.test.js +68 -8
- package/dist/lib/templates/backends/agency/template.d.ts +2 -1
- package/dist/lib/templates/backends/agency/template.js +1 -1
- package/dist/lib/templates/backends/typescriptGenerator/blockSetup.d.ts +2 -2
- package/dist/lib/templates/backends/typescriptGenerator/blockSetup.js +3 -0
- package/dist/lib/templates/backends/typescriptGenerator/directRunArgsCheck.d.ts +7 -0
- package/dist/lib/templates/backends/typescriptGenerator/directRunArgsCheck.js +13 -0
- package/dist/lib/templates/backends/typescriptGenerator/forkBlockSetup.d.ts +2 -2
- package/dist/lib/templates/backends/typescriptGenerator/forkBlockSetup.js +3 -0
- package/dist/lib/templates/backends/typescriptGenerator/imports.d.ts +1 -1
- package/dist/lib/templates/backends/typescriptGenerator/imports.js +8 -9
- package/dist/lib/typeChecker/assignability.js +74 -5
- package/dist/lib/typeChecker/builtinGenerics.js +13 -6
- package/dist/lib/typeChecker/builtinGenerics.test.js +13 -1
- package/dist/lib/typeChecker/builtinVariables.test.d.ts +1 -0
- package/dist/lib/typeChecker/builtinVariables.test.js +53 -0
- package/dist/lib/typeChecker/builtins.d.ts +6 -0
- package/dist/lib/typeChecker/builtins.js +13 -4
- package/dist/lib/typeChecker/callbackCallEffects.test.js +4 -15
- package/dist/lib/typeChecker/codeLiteral.test.d.ts +1 -0
- package/dist/lib/typeChecker/codeLiteral.test.js +160 -0
- package/dist/lib/typeChecker/conflictingMarkers.js +2 -1
- package/dist/lib/typeChecker/crossModuleEffectDiagnostics.test.d.ts +1 -0
- package/dist/lib/typeChecker/crossModuleEffectDiagnostics.test.js +80 -0
- package/dist/lib/typeChecker/definiteReturns.js +7 -0
- package/dist/lib/typeChecker/diagnosticExplanations.js +96 -2
- package/dist/lib/typeChecker/diagnostics.d.ts +96 -1
- package/dist/lib/typeChecker/diagnostics.js +93 -1
- package/dist/lib/typeChecker/flow.d.ts +10 -0
- package/dist/lib/typeChecker/flowBuilder.js +44 -4
- package/dist/lib/typeChecker/flowNarrowing.test.js +259 -0
- package/dist/lib/typeChecker/forkRaceReturnTypes.test.d.ts +1 -0
- package/dist/lib/typeChecker/forkRaceReturnTypes.test.js +260 -0
- package/dist/lib/typeChecker/handlerParamTyping.d.ts +1 -1
- package/dist/lib/typeChecker/handlerParamTyping.js +1 -1
- package/dist/lib/typeChecker/handlerParamTyping.test.js +7 -7
- package/dist/lib/typeChecker/holes.test.d.ts +1 -0
- package/dist/lib/typeChecker/holes.test.js +75 -0
- package/dist/lib/typeChecker/index.js +24 -5
- package/dist/lib/typeChecker/inference.js +4 -3
- package/dist/lib/typeChecker/interruptAnalysis.d.ts +0 -17
- package/dist/lib/typeChecker/interruptAnalysis.js +40 -120
- package/dist/lib/typeChecker/matchArmNarrowing.test.js +200 -0
- package/dist/lib/typeChecker/matchExhaustiveness.js +64 -2
- package/dist/lib/typeChecker/matchExhaustiveness.test.js +71 -0
- package/dist/lib/typeChecker/missingImportDiagnostic.js +1 -1
- package/dist/lib/typeChecker/narrowing.d.ts +3 -0
- package/dist/lib/typeChecker/narrowing.js +32 -4
- package/dist/lib/typeChecker/raisesDiagnostic.d.ts +2 -2
- package/dist/lib/typeChecker/raisesDiagnostic.js +2 -2
- package/dist/lib/typeChecker/resolveType.test.js +92 -1
- package/dist/lib/typeChecker/resolveVariable.d.ts +4 -2
- package/dist/lib/typeChecker/resolveVariable.js +7 -2
- package/dist/lib/typeChecker/scopes.js +36 -4
- package/dist/lib/typeChecker/spliceDiagnostics.test.d.ts +1 -0
- package/dist/lib/typeChecker/spliceDiagnostics.test.js +69 -0
- package/dist/lib/typeChecker/strictMemberAccess.test.js +62 -0
- package/dist/lib/typeChecker/synthesizer.d.ts +3 -0
- package/dist/lib/typeChecker/synthesizer.js +222 -33
- package/dist/lib/typeChecker/templateHoles.d.ts +17 -0
- package/dist/lib/typeChecker/templateHoles.js +30 -0
- package/dist/lib/typeChecker/testUtils.d.ts +2 -1
- package/dist/lib/typeChecker/testUtils.js +3 -3
- package/dist/lib/typeChecker/toolArgArrayType.test.d.ts +1 -0
- package/dist/lib/typeChecker/toolArgArrayType.test.js +128 -0
- package/dist/lib/typeChecker/topLevelStatements.d.ts +8 -0
- package/dist/lib/typeChecker/topLevelStatements.js +20 -0
- package/dist/lib/typeChecker/topLevelStatements.test.d.ts +1 -0
- package/dist/lib/typeChecker/topLevelStatements.test.js +83 -0
- package/dist/lib/typeChecker/typePatterns.test.d.ts +1 -0
- package/dist/lib/typeChecker/typePatterns.test.js +238 -0
- package/dist/lib/typeChecker/undefinedFunctionDiagnostic.js +4 -0
- package/dist/lib/typeChecker/undefinedFunctionDiagnostic.test.js +43 -0
- package/dist/lib/typeChecker.test.js +37 -19
- package/dist/lib/types/base.d.ts +8 -0
- package/dist/lib/types/blockArgument.d.ts +8 -1
- package/dist/lib/types/codeLiteral.d.ts +13 -0
- package/dist/lib/types/codeLiteral.js +1 -0
- package/dist/lib/types/comprehension.d.ts +55 -0
- package/dist/lib/types/comprehension.js +32 -0
- package/dist/lib/types/function.d.ts +15 -1
- package/dist/lib/types/graphNode.d.ts +4 -1
- package/dist/lib/types/hole.d.ts +26 -0
- package/dist/lib/types/hole.js +18 -0
- package/dist/lib/types/importStatement.d.ts +4 -1
- package/dist/lib/types/importStatement.js +9 -2
- package/dist/lib/types/matchBlock.d.ts +5 -0
- package/dist/lib/types/pattern.d.ts +14 -4
- package/dist/lib/types/splice.d.ts +20 -0
- package/dist/lib/types/splice.js +1 -0
- package/dist/lib/types/typeHints.d.ts +11 -0
- package/dist/lib/types.d.ts +15 -3
- package/dist/lib/types.js +9 -0
- package/dist/lib/utils/agencyTempDir.d.ts +19 -0
- package/dist/lib/utils/agencyTempDir.js +26 -0
- package/dist/lib/utils/bodySlots.d.ts +17 -1
- package/dist/lib/utils/bodySlots.js +33 -4
- package/dist/lib/utils/bodySlots.test.js +16 -0
- package/dist/lib/utils/docStringText.d.ts +7 -0
- package/dist/lib/utils/docStringText.js +7 -0
- package/dist/lib/utils/expressionSlots.d.ts +91 -0
- package/dist/lib/utils/expressionSlots.js +322 -0
- package/dist/lib/utils/expressionSlots.test.d.ts +1 -0
- package/dist/lib/utils/expressionSlots.test.js +505 -0
- package/dist/lib/utils/findRecursively.d.ts +5 -0
- package/dist/lib/utils/findRecursively.js +31 -0
- package/dist/lib/utils/hash.d.ts +1 -0
- package/dist/lib/utils/hash.js +4 -0
- package/dist/lib/utils/holes.d.ts +44 -0
- package/dist/lib/utils/holes.js +77 -0
- package/dist/lib/utils/identifierSlots.d.ts +71 -0
- package/dist/lib/utils/identifierSlots.js +173 -0
- package/dist/lib/utils/identifierSlots.test.d.ts +1 -0
- package/dist/lib/utils/identifierSlots.test.js +148 -0
- package/dist/lib/utils/iteration.d.ts +37 -0
- package/dist/lib/utils/iteration.js +9 -0
- package/dist/lib/utils/iteration.test.d.ts +1 -0
- package/dist/lib/utils/iteration.test.js +26 -0
- package/dist/lib/utils/moduleDoc.d.ts +18 -0
- package/dist/lib/utils/moduleDoc.js +56 -0
- package/dist/lib/utils/node.js +101 -87
- package/dist/lib/utils/topLevel.d.ts +10 -0
- package/dist/lib/utils/topLevel.js +138 -0
- package/dist/lib/utils/topLevel.test.d.ts +1 -0
- package/dist/lib/utils/topLevel.test.js +151 -0
- package/dist/scripts/agency.js +173 -31
- package/dist/scripts/agency.test.js +30 -1
- package/package.json +11 -4
- package/stdlib/agency/eval.agency +16 -214
- package/stdlib/agency/eval.js +22 -693
- package/stdlib/agency/local.agency +1 -0
- package/stdlib/agency/local.js +41 -10
- package/stdlib/agency.agency +195 -359
- package/stdlib/agency.js +799 -2522
- package/stdlib/agent.agency +1 -0
- package/stdlib/agent.js +19 -7
- package/stdlib/agents/agency/coding.agency +313 -0
- package/stdlib/agents/agency/coding.js +2345 -0
- package/stdlib/agents/agency/expert.agency +98 -0
- package/stdlib/agents/agency/expert.js +967 -0
- package/stdlib/agents/agency/researcher.agency +109 -0
- package/stdlib/agents/agency/researcher.js +976 -0
- package/stdlib/agents/agency/review.agency +143 -0
- package/stdlib/agents/agency/review.js +1602 -0
- package/stdlib/agents/agency/verifier.agency +131 -0
- package/stdlib/agents/agency/verifier.js +1241 -0
- package/stdlib/agents/coding.agency +132 -50
- package/stdlib/agents/coding.js +686 -219
- package/stdlib/agents/composable/promptRewriter.agency +27 -0
- package/stdlib/agents/composable/promptRewriter.js +393 -0
- package/stdlib/agents/composable/researcher.agency +52 -0
- package/stdlib/agents/composable/researcher.js +591 -0
- package/stdlib/agents/composable/utils.agency +7 -0
- package/stdlib/agents/composable/utils.js +353 -0
- package/stdlib/agents/data.agency +150 -0
- package/stdlib/agents/data.js +1017 -0
- package/stdlib/agents/expert.agency +89 -175
- package/stdlib/agents/expert.js +372 -1230
- package/stdlib/agents/explorer.agency +199 -0
- package/stdlib/agents/explorer.js +1098 -0
- package/stdlib/agents/lib/expertGuidance.agency +40 -0
- package/stdlib/agents/lib/expertGuidance.js +644 -0
- package/stdlib/agents/lib/feedback.agency +89 -0
- package/stdlib/agents/lib/feedback.js +1216 -0
- package/stdlib/agents/lib/search.agency +78 -0
- package/{dist/lib/agents/agency-agent/lib/defaultPolicy.js → stdlib/agents/lib/search.js} +300 -455
- package/stdlib/agents/lib/shared.agency +59 -0
- package/stdlib/agents/{shared.js → lib/shared.js} +161 -71
- package/stdlib/agents/lib/toolkits.agency +198 -0
- package/stdlib/agents/lib/toolkits.js +1720 -0
- package/stdlib/agents/oracle.agency +172 -0
- package/stdlib/agents/oracle.js +1081 -0
- package/stdlib/agents/planner.agency +144 -36
- package/stdlib/agents/planner.js +808 -266
- package/stdlib/agents/researcher.agency +169 -0
- package/stdlib/agents/researcher.js +1380 -0
- package/stdlib/agents/review.agency +117 -0
- package/stdlib/agents/review.js +1040 -0
- package/stdlib/agents/skills/coding/gh-auth.md +65 -0
- package/stdlib/agents/skills/coding/gh-pr-and-issues.md +150 -0
- package/stdlib/agents/skills/coding/gh-repos-and-releases.md +87 -0
- package/stdlib/agents/skills/data/finding-identifiers.md +26 -0
- package/stdlib/agents/verifier.agency +155 -0
- package/stdlib/agents/verifier.js +1247 -0
- package/stdlib/args.js +14 -6
- package/stdlib/array.agency +1 -0
- package/stdlib/array.js +20 -6
- package/stdlib/auth/keyring.js +17 -6
- package/stdlib/auth/oauth.agency +1 -0
- package/stdlib/auth/oauth.js +18 -7
- package/stdlib/calendar.js +19 -6
- package/stdlib/capabilities.js +12 -6
- package/stdlib/clipboard.js +15 -6
- package/stdlib/concurrency.agency +52 -0
- package/stdlib/concurrency.js +304 -7
- package/stdlib/data/finance/dbnomics.js +100 -37
- package/stdlib/data/finance/edgar.agency +1 -0
- package/stdlib/data/finance/edgar.js +159 -52
- package/stdlib/data/finance/fred.agency +1 -0
- package/stdlib/data/finance/fred.js +308 -104
- package/stdlib/data/finance/gdelt.js +105 -42
- package/stdlib/data/people/littlesis.agency +2 -2
- package/stdlib/data/people/littlesis.js +446 -153
- package/stdlib/data/tech/hackernews.js +578 -193
- package/stdlib/data/tech/yc.js +424 -136
- package/stdlib/data/usaspending.agency +1 -0
- package/stdlib/data/usaspending.js +321 -132
- package/stdlib/data/wikidata.js +408 -153
- package/stdlib/date.agency +136 -87
- package/stdlib/date.js +690 -388
- package/stdlib/docs/agent/index.md +105 -0
- package/stdlib/docs/agent/mcp.md +134 -0
- package/stdlib/docs/agent/memory.md +58 -0
- package/stdlib/docs/agent/models.md +85 -0
- package/stdlib/docs/agent/project-context.md +28 -0
- package/stdlib/docs/cli/editor-integration.md +23 -0
- package/stdlib/docs/cli/eval-judge.md +3 -4
- package/stdlib/docs/cli/eval.md +270 -18
- package/stdlib/docs/cli/format.md +2 -0
- package/stdlib/docs/cli/lint.md +42 -0
- package/stdlib/docs/cli/optimize.md +10 -9
- package/stdlib/docs/cli/run.md +26 -1
- package/stdlib/docs/diagnostics/effects.md +20 -10
- package/stdlib/docs/diagnostics/index.md +34 -3
- package/stdlib/docs/diagnostics/lint.md +48 -0
- package/stdlib/docs/diagnostics/match.md +10 -0
- package/stdlib/docs/diagnostics/templates.md +184 -0
- package/stdlib/docs/diagnostics/types-aliases.md +10 -0
- package/stdlib/docs/guide/agency-config-file.md +1 -0
- package/stdlib/docs/guide/basic-syntax.md +27 -2
- package/stdlib/docs/guide/builtins.md +13 -0
- package/stdlib/docs/guide/comprehensions.md +111 -0
- package/stdlib/docs/guide/concurrency.md +4 -2
- package/stdlib/docs/guide/handlers.md +32 -2
- package/stdlib/docs/guide/llm.md +5 -3
- package/stdlib/docs/guide/match-expressions.md +208 -0
- package/stdlib/docs/guide/memory.md +3 -3
- package/stdlib/docs/guide/partial-results.md +9 -0
- package/stdlib/docs/guide/pattern-matching.md +227 -194
- package/stdlib/docs/guide/splices.md +94 -0
- package/stdlib/docs/guide/state-isolation.md +10 -4
- package/stdlib/docs/guide/template-agency.md +381 -0
- package/stdlib/docs/guide/ts-helpers.md +26 -0
- package/stdlib/docs/guide/type-validation.md +21 -16
- package/stdlib/docs/guide/types.md +18 -2
- package/stdlib/docs/stdlib/agency/eval.md +288 -0
- package/stdlib/docs/stdlib/agency/local.md +319 -0
- package/stdlib/docs/stdlib/agency.md +974 -0
- package/stdlib/docs/stdlib/agent.md +121 -0
- package/stdlib/docs/stdlib/agents/agency/coding.md +118 -0
- package/stdlib/docs/stdlib/agents/agency/expert.md +78 -0
- package/stdlib/docs/stdlib/agents/agency/researcher.md +75 -0
- package/stdlib/docs/stdlib/agents/agency/review.md +96 -0
- package/stdlib/docs/stdlib/agents/agency/verifier.md +75 -0
- package/stdlib/docs/stdlib/agents/coding.md +81 -0
- package/stdlib/docs/stdlib/agents/composable/promptRewriter.md +26 -0
- package/stdlib/docs/stdlib/agents/composable/researcher.md +39 -0
- package/stdlib/docs/stdlib/agents/composable/utils.md +25 -0
- package/stdlib/docs/stdlib/agents/data.md +75 -0
- package/stdlib/docs/stdlib/agents/expert.md +80 -0
- package/stdlib/docs/stdlib/agents/explorer.md +81 -0
- package/stdlib/docs/stdlib/agents/lib/expertGuidance.md +87 -0
- package/stdlib/docs/stdlib/agents/lib/feedback.md +127 -0
- package/stdlib/docs/stdlib/agents/lib/search.md +65 -0
- package/stdlib/docs/stdlib/agents/lib/shared.md +83 -0
- package/stdlib/docs/stdlib/agents/lib/toolkits.md +192 -0
- package/stdlib/docs/stdlib/agents/oracle.md +83 -0
- package/stdlib/docs/stdlib/agents/planner.md +168 -0
- package/stdlib/docs/stdlib/agents/researcher.md +77 -0
- package/stdlib/docs/stdlib/agents/review.md +77 -0
- package/stdlib/docs/stdlib/agents/verifier.md +77 -0
- package/stdlib/docs/stdlib/args.md +235 -0
- package/stdlib/docs/stdlib/array.md +11 -0
- package/stdlib/docs/stdlib/auth/keyring.md +149 -0
- package/stdlib/docs/stdlib/auth/oauth.md +183 -0
- package/stdlib/docs/stdlib/calendar.md +279 -0
- package/stdlib/docs/stdlib/capabilities.md +193 -0
- package/stdlib/docs/stdlib/clipboard.md +71 -0
- package/stdlib/docs/stdlib/concurrency.md +94 -0
- package/stdlib/docs/stdlib/data/finance/dbnomics.md +112 -0
- package/stdlib/docs/stdlib/data/finance/edgar.md +133 -0
- package/stdlib/docs/stdlib/data/finance/fred.md +224 -0
- package/stdlib/docs/stdlib/data/finance/gdelt.md +99 -0
- package/stdlib/docs/stdlib/data/people/littlesis.md +219 -0
- package/stdlib/docs/stdlib/data/tech/hackernews.md +219 -0
- package/stdlib/docs/stdlib/data/tech/yc.md +206 -0
- package/stdlib/docs/stdlib/data/usaspending.md +174 -0
- package/stdlib/docs/stdlib/data/wikidata.md +168 -0
- package/stdlib/docs/stdlib/date.md +433 -0
- package/stdlib/docs/stdlib/fs.md +283 -0
- package/stdlib/docs/stdlib/git.md +916 -0
- package/stdlib/docs/stdlib/http.md +207 -0
- package/stdlib/docs/stdlib/image.md +68 -0
- package/stdlib/docs/stdlib/index.md +746 -0
- package/stdlib/docs/stdlib/llm.md +260 -0
- package/stdlib/docs/stdlib/markdown.md +605 -0
- package/stdlib/docs/stdlib/math.md +109 -0
- package/stdlib/docs/stdlib/mcp.md +128 -0
- package/stdlib/docs/stdlib/memory.md +310 -0
- package/stdlib/docs/stdlib/messaging/email.md +226 -0
- package/stdlib/docs/stdlib/messaging/imessage.md +69 -0
- package/stdlib/docs/stdlib/messaging/sms.md +79 -0
- package/stdlib/docs/stdlib/notes/apple.md +428 -0
- package/stdlib/docs/stdlib/object.md +195 -0
- package/stdlib/docs/stdlib/path.md +165 -0
- package/stdlib/docs/stdlib/policy.md +727 -0
- package/stdlib/docs/stdlib/safeBash/actions.md +236 -0
- package/stdlib/docs/stdlib/safeBash.md +398 -0
- package/stdlib/docs/stdlib/shell.md +405 -0
- package/stdlib/docs/stdlib/skills.md +239 -0
- package/stdlib/docs/stdlib/speech.md +160 -0
- package/stdlib/docs/stdlib/statelog.md +249 -0
- package/stdlib/docs/stdlib/strategy.md +195 -0
- package/stdlib/docs/stdlib/supervise.md +87 -0
- package/stdlib/docs/stdlib/syntax.md +312 -0
- package/stdlib/docs/stdlib/system.md +293 -0
- package/stdlib/docs/stdlib/tag.md +150 -0
- package/stdlib/docs/stdlib/thread.md +430 -0
- package/stdlib/docs/stdlib/ui/chart.md +147 -0
- package/stdlib/docs/stdlib/ui/cli.md +154 -0
- package/stdlib/docs/stdlib/ui/layout.md +408 -0
- package/stdlib/docs/stdlib/ui/table.md +194 -0
- package/stdlib/docs/stdlib/ui.md +883 -0
- package/stdlib/docs/stdlib/validation.md +613 -0
- package/stdlib/docs/stdlib/weather.md +109 -0
- package/stdlib/docs/stdlib/web/browser.md +80 -0
- package/stdlib/docs/stdlib/web/search.md +132 -0
- package/stdlib/docs/stdlib/wikipedia.md +123 -0
- package/stdlib/fs.agency +1 -0
- package/stdlib/fs.js +20 -7
- package/stdlib/git.agency +1 -0
- package/stdlib/git.js +467 -141
- package/stdlib/http.js +16 -6
- package/stdlib/image.agency +3 -1
- package/stdlib/image.js +15 -7
- package/stdlib/index.agency +48 -4
- package/stdlib/index.js +658 -65
- package/stdlib/llm.agency +1 -0
- package/stdlib/llm.js +23 -7
- package/stdlib/markdown.agency +1 -0
- package/stdlib/markdown.js +19 -7
- package/stdlib/math.agency +4 -0
- package/stdlib/math.js +23 -11
- package/stdlib/mcp.agency +6 -6
- package/stdlib/mcp.js +24 -11
- package/stdlib/memory.agency +1 -0
- package/stdlib/memory.js +92 -28
- package/stdlib/messaging/email.agency +1 -0
- package/stdlib/messaging/email.js +17 -7
- package/stdlib/messaging/imessage.js +14 -6
- package/stdlib/messaging/sms.js +14 -6
- package/stdlib/notes/apple.agency +1 -0
- package/stdlib/notes/apple.js +165 -53
- package/stdlib/object.js +158 -47
- package/stdlib/path.js +20 -6
- package/stdlib/policy.agency +25 -3
- package/stdlib/policy.js +182 -65
- package/stdlib/safeBash/actions.agency +166 -0
- package/stdlib/safeBash/actions.js +805 -0
- package/stdlib/safeBash.agency +959 -0
- package/stdlib/safeBash.js +6908 -0
- package/stdlib/shell.agency +9 -4
- package/stdlib/shell.js +26 -10
- package/stdlib/skills.agency +59 -19
- package/stdlib/skills.js +412 -110
- package/stdlib/speech.js +16 -6
- package/stdlib/statelog.agency +1 -0
- package/stdlib/statelog.js +21 -7
- package/stdlib/strategy.agency +40 -0
- package/stdlib/strategy.js +284 -14
- package/stdlib/supervise.agency +116 -0
- package/stdlib/supervise.js +501 -0
- package/stdlib/syntax.agency +19 -12
- package/stdlib/syntax.js +24 -11
- package/stdlib/system.agency +0 -21
- package/stdlib/system.js +26 -113
- package/stdlib/tag.js +19 -6
- package/stdlib/thread.agency +38 -0
- package/stdlib/thread.js +347 -16
- package/stdlib/ui/chart.agency +1 -0
- package/stdlib/ui/chart.js +54 -25
- package/stdlib/ui/cli.agency +35 -0
- package/stdlib/ui/cli.js +244 -10
- package/stdlib/ui/layout.js +160 -75
- package/stdlib/ui/table.agency +1 -0
- package/stdlib/ui/table.js +87 -46
- package/stdlib/ui.agency +1 -0
- package/stdlib/ui.js +560 -253
- package/stdlib/validation.agency +38 -0
- package/stdlib/validation.js +300 -7
- package/stdlib/weather.agency +2 -0
- package/stdlib/weather.js +19 -9
- package/stdlib/web/browser.js +14 -6
- package/stdlib/web/search.js +15 -6
- package/stdlib/wikipedia.js +16 -6
- package/dist/lib/agents/agency-agent/subagents/verify.agency +0 -58
- package/dist/lib/cli/eval/run.workdir.test.js +0 -111
- package/dist/lib/eval/runEvalInput.d.ts +0 -63
- package/dist/lib/eval/runEvalInput.js +0 -79
- package/dist/lib/eval/runWorkdir.d.ts +0 -25
- package/dist/lib/eval/runWorkdir.js +0 -46
- package/dist/lib/eval/runWorkdir.test.js +0 -42
- package/dist/lib/optimize/artifacts.d.ts +0 -46
- package/dist/lib/optimize/artifacts.js +0 -151
- package/dist/lib/optimize/artifacts.test.js +0 -181
- package/dist/lib/optimize/gradeBreakdown.d.ts +0 -22
- package/dist/lib/optimize/gradeBreakdown.js +0 -20
- package/dist/lib/optimize/history.d.ts +0 -16
- package/dist/lib/optimize/history.js +0 -29
- package/dist/lib/optimize/history.test.js +0 -37
- package/dist/lib/optimize/inputs.d.ts +0 -2
- package/dist/lib/optimize/inputs.js +0 -9
- package/dist/lib/optimize/inputs.test.js +0 -17
- package/dist/lib/optimize/loop.d.ts +0 -24
- package/dist/lib/optimize/loop.js +0 -330
- package/dist/lib/optimize/loop.test.js +0 -377
- package/dist/lib/typeChecker/handlerBodyInterrupts.test.js +0 -171
- package/dist/lib/utils/projectTree.d.ts +0 -13
- package/dist/lib/utils/projectTree.js +0 -42
- package/dist/lib/utils/projectTree.test.js +0 -49
- package/stdlib/agents/agency.agency +0 -88
- package/stdlib/agents/agency.js +0 -1415
- package/stdlib/agents/research.agency +0 -64
- package/stdlib/agents/research.js +0 -744
- package/stdlib/agents/shared.agency +0 -21
- /package/dist/lib/{cli/eval/run.workdir.test.d.ts → agentTarget.test.d.ts} +0 -0
- /package/dist/lib/{eval/runWorkdir.test.d.ts → analysis/closure.test.d.ts} +0 -0
- /package/dist/lib/{optimize/artifacts.test.d.ts → analysis/effectPropagation.test.d.ts} +0 -0
- /package/dist/lib/{optimize/goalJudgeFile.test.d.ts → analysis/effects.test.d.ts} +0 -0
- /package/dist/lib/{optimize/gradeBreakdown.test.d.ts → analysis/effectsOracle.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/agencyRunner.test.d.ts → backends/agencyGenerator.roundtrip.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/aggregate.test.d.ts → backends/agencyGenerator.splice.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/baseGrader.test.d.ts → backends/frameClaims.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/functionGrader.test.d.ts → backends/holeRefusal.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/getPath.test.d.ts → backends/topLevelRefusal.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading → cli/eval}/grade.test.d.ts +0 -0
- /package/dist/lib/{optimize/grading/graders/builtinGraders.test.d.ts → cli/eval/logs.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/graders/humanGrader.test.d.ts → cli/expectedCompileError.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/graders/llmJudge.test.d.ts → cli/lint.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/scorecard.test.d.ts → cli/policyCrossModule.test.d.ts} +0 -0
- /package/dist/lib/{optimize/grading/types.js → cli/test.test.d.ts} +0 -0
- /package/dist/lib/{optimize/gradingModule.test.d.ts → cli/validatorInterrupts.spawn.test.d.ts} +0 -0
- /package/dist/lib/{optimize/history.test.d.ts → compiler/splice/cache.test.d.ts} +0 -0
- /package/dist/lib/{optimize/inputs.test.d.ts → compiler/splice/eligibility.test.d.ts} +0 -0
- /package/dist/lib/{optimize/loop.test.d.ts → compiler/splice/rebuild.test.d.ts} +0 -0
- /package/dist/lib/{typeChecker/handlerBodyInterrupts.test.d.ts → compiler/splice/runGenerator.test.d.ts} +0 -0
- /package/dist/lib/{utils/projectTree.test.d.ts → compiler/splice/types.js} +0 -0
- /package/dist/lib/{optimize → eval}/grading/agencyRunner.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/agencyRunner.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/agencyRunner.test.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/aggregate.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/aggregate.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/aggregate.test.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/baseGrader.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/baseGrader.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/getPath.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/getPath.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/getPath.test.js +0 -0
- /package/dist/lib/{optimize → eval/grading}/goalJudgeFile.d.ts +0 -0
- /package/dist/lib/{optimize → eval/grading}/goalJudgeFile.test.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/grade.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/grade.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/grade.test.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/graders/builtinGraders.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/graders/builtinGraders.js +0 -0
- /package/dist/lib/{optimize → eval}/grading/graders/humanGrader.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/graders/llmJudge.d.ts +0 -0
- /package/dist/lib/{optimize → eval}/grading/scorecard.js +0 -0
|
@@ -0,0 +1,52 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* How an agent target string is parsed and resolved. A target names an agent
|
|
3
|
+
* entry point: `path`, `path:node`, or a directory (meaning its main.agency).
|
|
4
|
+
* Consumed by the eval commands, the optimizer, and `agency test`.
|
|
5
|
+
*/
|
|
6
|
+
export declare function parseTarget(target: string): {
|
|
7
|
+
filename: string;
|
|
8
|
+
nodeName: string;
|
|
9
|
+
};
|
|
10
|
+
/** Resolve a target into the agent file, node (default "main"), and the
|
|
11
|
+
* display label run results carry. */
|
|
12
|
+
export declare function resolveEvalRunTarget(target: string): {
|
|
13
|
+
agentFile: string;
|
|
14
|
+
node: string;
|
|
15
|
+
label: string;
|
|
16
|
+
};
|
|
17
|
+
/** What runs as the agent, and what evidence it produces. `file` is the
|
|
18
|
+
* classic seeded-and-compiled .agency target; `command` is a CLI run in the
|
|
19
|
+
* workdir (Agency CLIs only — the statelog is the evidence contract). A
|
|
20
|
+
* future non-Agency variant would be a third kind with a weaker record. */
|
|
21
|
+
export type EvalTarget = {
|
|
22
|
+
kind: "file";
|
|
23
|
+
agentFile: string;
|
|
24
|
+
node: string;
|
|
25
|
+
label: string;
|
|
26
|
+
} | {
|
|
27
|
+
kind: "command";
|
|
28
|
+
tokens: string[];
|
|
29
|
+
label: string;
|
|
30
|
+
};
|
|
31
|
+
/** Resolve the runner-side agent choice. Exactly one of --agent /
|
|
32
|
+
* --agent-cmd; the command's {task} placeholder is validated here, before
|
|
33
|
+
* any run. Commands come ONLY from these flags, never from suite content —
|
|
34
|
+
* suites can be remote git sources, and a suite that named its own command
|
|
35
|
+
* would be remote code execution. */
|
|
36
|
+
export declare function resolveEvalTarget(opts: {
|
|
37
|
+
agent?: string;
|
|
38
|
+
agentCmd?: string;
|
|
39
|
+
}): EvalTarget;
|
|
40
|
+
/**
|
|
41
|
+
* Fail fast when the entry node cannot receive a task: eval delivers the
|
|
42
|
+
* input's task as the node's single positional parameter, so the node must
|
|
43
|
+
* take exactly one. The subprocess bootstrap enforces the same rule at run
|
|
44
|
+
* time (resolveNodeCallArgs), but by then a workdir has been seeded and the
|
|
45
|
+
* agent compiled — and the optimizer would pay that once per candidate.
|
|
46
|
+
* A misconfigured agent should cost one error, not a suite of run failures.
|
|
47
|
+
*
|
|
48
|
+
* Best-effort: an unreadable or unparseable file, or a node defined
|
|
49
|
+
* elsewhere than the entry file, is left for compile/run to report with
|
|
50
|
+
* better errors than a pre-parse could.
|
|
51
|
+
*/
|
|
52
|
+
export declare function assertEvalEntryNodeTakesOneParameter(agentFile: string, node: string): void;
|
|
@@ -0,0 +1,83 @@
|
|
|
1
|
+
import * as fs from "fs";
|
|
2
|
+
import * as path from "path";
|
|
3
|
+
import { MISSING_TASK_PLACEHOLDER_ERROR, TASK_PLACEHOLDER, tokenizeCommand } from "./eval/run/commandLine.js";
|
|
4
|
+
import { parseAgency } from "./parser.js";
|
|
5
|
+
/**
|
|
6
|
+
* How an agent target string is parsed and resolved. A target names an agent
|
|
7
|
+
* entry point: `path`, `path:node`, or a directory (meaning its main.agency).
|
|
8
|
+
* Consumed by the eval commands, the optimizer, and `agency test`.
|
|
9
|
+
*/
|
|
10
|
+
export function parseTarget(target) {
|
|
11
|
+
const colonIndex = target.lastIndexOf(":");
|
|
12
|
+
if (colonIndex === -1) {
|
|
13
|
+
return { filename: target, nodeName: "" };
|
|
14
|
+
}
|
|
15
|
+
const filename = target.slice(0, colonIndex);
|
|
16
|
+
const nodeName = target.slice(colonIndex + 1);
|
|
17
|
+
return { filename, nodeName };
|
|
18
|
+
}
|
|
19
|
+
/** Resolve a target into the agent file, node (default "main"), and the
|
|
20
|
+
* display label run results carry. */
|
|
21
|
+
export function resolveEvalRunTarget(target) {
|
|
22
|
+
const parsed = parseTarget(target);
|
|
23
|
+
const resolved = path.resolve(parsed.filename);
|
|
24
|
+
const agentFile = fs.existsSync(resolved) && fs.statSync(resolved).isDirectory()
|
|
25
|
+
? path.join(resolved, "main.agency")
|
|
26
|
+
: resolved;
|
|
27
|
+
const node = parsed.nodeName || "main";
|
|
28
|
+
return { agentFile, node, label: `${agentFile}:${node}` };
|
|
29
|
+
}
|
|
30
|
+
/** Resolve the runner-side agent choice. Exactly one of --agent /
|
|
31
|
+
* --agent-cmd; the command's {task} placeholder is validated here, before
|
|
32
|
+
* any run. Commands come ONLY from these flags, never from suite content —
|
|
33
|
+
* suites can be remote git sources, and a suite that named its own command
|
|
34
|
+
* would be remote code execution. */
|
|
35
|
+
export function resolveEvalTarget(opts) {
|
|
36
|
+
if ((opts.agent ? 1 : 0) + (opts.agentCmd ? 1 : 0) !== 1) {
|
|
37
|
+
throw new Error("Provide exactly one of --agent or --agent-cmd");
|
|
38
|
+
}
|
|
39
|
+
if (opts.agentCmd) {
|
|
40
|
+
const tokens = tokenizeCommand(opts.agentCmd);
|
|
41
|
+
if (!tokens.some((t) => t.includes(TASK_PLACEHOLDER))) {
|
|
42
|
+
throw new Error(MISSING_TASK_PLACEHOLDER_ERROR);
|
|
43
|
+
}
|
|
44
|
+
return { kind: "command", tokens, label: opts.agentCmd };
|
|
45
|
+
}
|
|
46
|
+
return { kind: "file", ...resolveEvalRunTarget(opts.agent) };
|
|
47
|
+
}
|
|
48
|
+
/**
|
|
49
|
+
* Fail fast when the entry node cannot receive a task: eval delivers the
|
|
50
|
+
* input's task as the node's single positional parameter, so the node must
|
|
51
|
+
* take exactly one. The subprocess bootstrap enforces the same rule at run
|
|
52
|
+
* time (resolveNodeCallArgs), but by then a workdir has been seeded and the
|
|
53
|
+
* agent compiled — and the optimizer would pay that once per candidate.
|
|
54
|
+
* A misconfigured agent should cost one error, not a suite of run failures.
|
|
55
|
+
*
|
|
56
|
+
* Best-effort: an unreadable or unparseable file, or a node defined
|
|
57
|
+
* elsewhere than the entry file, is left for compile/run to report with
|
|
58
|
+
* better errors than a pre-parse could.
|
|
59
|
+
*/
|
|
60
|
+
export function assertEvalEntryNodeTakesOneParameter(agentFile, node) {
|
|
61
|
+
let source;
|
|
62
|
+
try {
|
|
63
|
+
source = fs.readFileSync(agentFile, "utf-8");
|
|
64
|
+
}
|
|
65
|
+
catch {
|
|
66
|
+
return;
|
|
67
|
+
}
|
|
68
|
+
const parsed = parseAgency(source, {}, false);
|
|
69
|
+
if (!parsed.success)
|
|
70
|
+
return;
|
|
71
|
+
for (const candidate of parsed.result.nodes) {
|
|
72
|
+
if (candidate.type !== "graphNode" || candidate.nodeName !== node)
|
|
73
|
+
continue;
|
|
74
|
+
const count = candidate.parameters.length;
|
|
75
|
+
if (count !== 1) {
|
|
76
|
+
const detail = count === 0
|
|
77
|
+
? `takes none — add one (it may go unused: \`node ${node}(task: string) { ... }\`)`
|
|
78
|
+
: `takes ${count} (${candidate.parameters.map((p) => p.name).join(", ")}) — add a one-parameter adapter node`;
|
|
79
|
+
throw new Error(`eval delivers the input's task as the entry node's single parameter, ` +
|
|
80
|
+
`but node "${node}" in ${agentFile} ${detail}.`);
|
|
81
|
+
}
|
|
82
|
+
}
|
|
83
|
+
}
|
|
@@ -0,0 +1,76 @@
|
|
|
1
|
+
import * as fs from "fs";
|
|
2
|
+
import * as os from "os";
|
|
3
|
+
import * as path from "path";
|
|
4
|
+
import { afterEach, describe, expect, it } from "vitest";
|
|
5
|
+
import { assertEvalEntryNodeTakesOneParameter, parseTarget, resolveEvalRunTarget, resolveEvalTarget } from "./agentTarget.js";
|
|
6
|
+
const dirs = [];
|
|
7
|
+
afterEach(() => {
|
|
8
|
+
// Raw rmSync, not safeDelete: mkdtemp paths sit outside any project root,
|
|
9
|
+
// which safeDelete refuses by design. Same reasoning as runArtifacts.ts.
|
|
10
|
+
for (const tempDir of dirs.splice(0)) {
|
|
11
|
+
fs.rmSync(tempDir, { recursive: true, force: true });
|
|
12
|
+
}
|
|
13
|
+
});
|
|
14
|
+
describe("agent targets", () => {
|
|
15
|
+
it("splits path from node on the last colon", () => {
|
|
16
|
+
expect(parseTarget("a.agency:main")).toEqual({ filename: "a.agency", nodeName: "main" });
|
|
17
|
+
expect(parseTarget("a.agency")).toEqual({ filename: "a.agency", nodeName: "" });
|
|
18
|
+
});
|
|
19
|
+
it("resolves file and directory agent targets", () => {
|
|
20
|
+
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), "agent-target-"));
|
|
21
|
+
dirs.push(tmpDir);
|
|
22
|
+
const file = path.join(tmpDir, "agent.agency");
|
|
23
|
+
fs.writeFileSync(file, "node main() {}\n");
|
|
24
|
+
const dir = path.join(tmpDir, "agent-dir");
|
|
25
|
+
fs.mkdirSync(dir);
|
|
26
|
+
fs.writeFileSync(path.join(dir, "main.agency"), "node main() {}\n");
|
|
27
|
+
expect(resolveEvalRunTarget(`${file}:evalMain`)).toEqual({ agentFile: file, node: "evalMain", label: `${file}:evalMain` });
|
|
28
|
+
expect(resolveEvalRunTarget(file)).toEqual({ agentFile: file, node: "main", label: `${file}:main` });
|
|
29
|
+
expect(resolveEvalRunTarget(dir)).toEqual({ agentFile: path.join(dir, "main.agency"), node: "main", label: `${path.join(dir, "main.agency")}:main` });
|
|
30
|
+
});
|
|
31
|
+
});
|
|
32
|
+
describe("resolveEvalTarget", () => {
|
|
33
|
+
it("resolves --agent into a file target", () => {
|
|
34
|
+
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), "target-"));
|
|
35
|
+
dirs.push(tmpDir);
|
|
36
|
+
const file = path.join(tmpDir, "a.agency");
|
|
37
|
+
fs.writeFileSync(file, "node main(task: string) {}\n");
|
|
38
|
+
expect(resolveEvalTarget({ agent: `${file}:main` }))
|
|
39
|
+
.toEqual({ kind: "file", agentFile: file, node: "main", label: `${file}:main` });
|
|
40
|
+
});
|
|
41
|
+
it("resolves --agent-cmd into a command target with the placeholder intact", () => {
|
|
42
|
+
expect(resolveEvalTarget({ agentCmd: `agency agent -p -- {task}` }))
|
|
43
|
+
.toEqual({ kind: "command", tokens: ["agency", "agent", "-p", "--", "{task}"], label: "agency agent -p -- {task}" });
|
|
44
|
+
});
|
|
45
|
+
it("rejects both, neither, and a command without {task}", () => {
|
|
46
|
+
expect(() => resolveEvalTarget({ agent: "a.agency", agentCmd: "x {task}" })).toThrow(/exactly one of/);
|
|
47
|
+
expect(() => resolveEvalTarget({})).toThrow(/exactly one of/);
|
|
48
|
+
expect(() => resolveEvalTarget({ agentCmd: "agency agent -p hello" })).toThrow(/\{task\}/);
|
|
49
|
+
});
|
|
50
|
+
});
|
|
51
|
+
describe("assertEvalEntryNodeTakesOneParameter", () => {
|
|
52
|
+
function agentWith(source) {
|
|
53
|
+
const tmpDir = fs.mkdtempSync(path.join(os.tmpdir(), "agent-shape-"));
|
|
54
|
+
dirs.push(tmpDir);
|
|
55
|
+
const file = path.join(tmpDir, "agent.agency");
|
|
56
|
+
fs.writeFileSync(file, source);
|
|
57
|
+
return file;
|
|
58
|
+
}
|
|
59
|
+
it("accepts a one-parameter node, default value or not", () => {
|
|
60
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith("node main(task: string) {}\n"), "main")).not.toThrow();
|
|
61
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith('node main(task: string = "") {}\n'), "main")).not.toThrow();
|
|
62
|
+
});
|
|
63
|
+
it("rejects a zero-parameter node with the add-one hint", () => {
|
|
64
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith("node main() {}\n"), "main"))
|
|
65
|
+
.toThrow(/takes none — add one/);
|
|
66
|
+
});
|
|
67
|
+
it("rejects a two-parameter node, naming the parameters", () => {
|
|
68
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith("node main(a: string, b: string) {}\n"), "main"))
|
|
69
|
+
.toThrow(/takes 2 \(a, b\)/);
|
|
70
|
+
});
|
|
71
|
+
it("stays quiet on unparseable files and absent nodes — compile/run report those better", () => {
|
|
72
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith("this is not agency"), "main")).not.toThrow();
|
|
73
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(agentWith("node other(x: string) {}\n"), "main")).not.toThrow();
|
|
74
|
+
expect(() => assertEvalEntryNodeTakesOneParameter(path.join(os.tmpdir(), "does-not-exist.agency"), "main")).not.toThrow();
|
|
75
|
+
});
|
|
76
|
+
});
|