farmon 0.1.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.
Files changed (106) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +163 -0
  3. package/dist/bin/farmon.js +12 -0
  4. package/dist/bin/farmon.js.map +1 -0
  5. package/dist/execute/agents/index.js +19 -0
  6. package/dist/execute/agents/index.js.map +1 -0
  7. package/dist/execute/agents/instruction-classifier-agent.js +16 -0
  8. package/dist/execute/agents/instruction-classifier-agent.js.map +1 -0
  9. package/dist/execute/agents/mutation-agent.js +272 -0
  10. package/dist/execute/agents/mutation-agent.js.map +1 -0
  11. package/dist/execute/agents/query-agent.js +118 -0
  12. package/dist/execute/agents/query-agent.js.map +1 -0
  13. package/dist/execute/helpers/analyzers.js +8 -0
  14. package/dist/execute/helpers/analyzers.js.map +1 -0
  15. package/dist/execute/helpers/ensurers.js +1053 -0
  16. package/dist/execute/helpers/ensurers.js.map +1 -0
  17. package/dist/execute/helpers/finders.js +1454 -0
  18. package/dist/execute/helpers/finders.js.map +1 -0
  19. package/dist/execute/helpers/general.js +3736 -0
  20. package/dist/execute/helpers/general.js.map +1 -0
  21. package/dist/execute/helpers/import-helpers.js +183 -0
  22. package/dist/execute/helpers/import-helpers.js.map +1 -0
  23. package/dist/execute/helpers/parsers.js +840 -0
  24. package/dist/execute/helpers/parsers.js.map +1 -0
  25. package/dist/execute/helpers/prompt-maker.js +1163 -0
  26. package/dist/execute/helpers/prompt-maker.js.map +1 -0
  27. package/dist/execute/helpers/validators.js +40 -0
  28. package/dist/execute/helpers/validators.js.map +1 -0
  29. package/dist/execute/history/history-manager.js +1030 -0
  30. package/dist/execute/history/history-manager.js.map +1 -0
  31. package/dist/execute/history/rollback-handlers.js +2524 -0
  32. package/dist/execute/history/rollback-handlers.js.map +1 -0
  33. package/dist/execute/index.js +44 -0
  34. package/dist/execute/index.js.map +1 -0
  35. package/dist/execute/llm/call.js +103 -0
  36. package/dist/execute/llm/call.js.map +1 -0
  37. package/dist/execute/tasks/ast.js +3819 -0
  38. package/dist/execute/tasks/ast.js.map +1 -0
  39. package/dist/execute/tasks/generators.js +96 -0
  40. package/dist/execute/tasks/generators.js.map +1 -0
  41. package/dist/execute/tasks/index.js +7 -0
  42. package/dist/execute/tasks/index.js.map +1 -0
  43. package/dist/execute/tasks/mutations.js +8139 -0
  44. package/dist/execute/tasks/mutations.js.map +1 -0
  45. package/dist/execute/tasks/query.js +248 -0
  46. package/dist/execute/tasks/query.js.map +1 -0
  47. package/dist/index.js +6 -0
  48. package/dist/index.js.map +1 -0
  49. package/dist/providers/index.js +15 -0
  50. package/dist/providers/index.js.map +1 -0
  51. package/dist/providers/ollama.js +40 -0
  52. package/dist/providers/ollama.js.map +1 -0
  53. package/dist/providers/openai-compatible.js +52 -0
  54. package/dist/providers/openai-compatible.js.map +1 -0
  55. package/dist/runtime/inject.js +250 -0
  56. package/dist/runtime/inject.js.map +1 -0
  57. package/dist/schemas/agent/action.schema.js +935 -0
  58. package/dist/schemas/agent/action.schema.js.map +1 -0
  59. package/dist/schemas/agent/index.js +4 -0
  60. package/dist/schemas/agent/index.js.map +1 -0
  61. package/dist/schemas/agent/llm.schema.js +16 -0
  62. package/dist/schemas/agent/llm.schema.js.map +1 -0
  63. package/dist/schemas/agent/planner.schema.js +17 -0
  64. package/dist/schemas/agent/planner.schema.js.map +1 -0
  65. package/dist/schemas/index.js +7 -0
  66. package/dist/schemas/index.js.map +1 -0
  67. package/dist/schemas/project/context.schema.js +2 -0
  68. package/dist/schemas/project/context.schema.js.map +1 -0
  69. package/dist/schemas/project/index.js +2 -0
  70. package/dist/schemas/project/index.js.map +1 -0
  71. package/dist/schemas/runtime/index.js +4 -0
  72. package/dist/schemas/runtime/index.js.map +1 -0
  73. package/dist/schemas/runtime/injector.schema.js +11 -0
  74. package/dist/schemas/runtime/injector.schema.js.map +1 -0
  75. package/dist/schemas/runtime/runtime.schema.js +73 -0
  76. package/dist/schemas/runtime/runtime.schema.js.map +1 -0
  77. package/dist/schemas/runtime/sse.schema.js +15 -0
  78. package/dist/schemas/runtime/sse.schema.js.map +1 -0
  79. package/dist/schemas/system/index.js +2 -0
  80. package/dist/schemas/system/index.js.map +1 -0
  81. package/dist/schemas/system/logger.schema.js +56 -0
  82. package/dist/schemas/system/logger.schema.js.map +1 -0
  83. package/dist/schemas/task/index.js +9 -0
  84. package/dist/schemas/task/index.js.map +1 -0
  85. package/dist/server/app-context.js +254 -0
  86. package/dist/server/app-context.js.map +1 -0
  87. package/dist/server/config.js +22 -0
  88. package/dist/server/config.js.map +1 -0
  89. package/dist/server/error.js +22 -0
  90. package/dist/server/error.js.map +1 -0
  91. package/dist/server/event-bus.js +60 -0
  92. package/dist/server/event-bus.js.map +1 -0
  93. package/dist/server/logger.js +57 -0
  94. package/dist/server/logger.js.map +1 -0
  95. package/dist/server/run.js +265 -0
  96. package/dist/server/run.js.map +1 -0
  97. package/dist/server/sse.js +143 -0
  98. package/dist/server/sse.js.map +1 -0
  99. package/dist/ui/assets/index-C4ydQSAw.css +2 -0
  100. package/dist/ui/assets/index-Dzo7S5xs.js +85 -0
  101. package/dist/ui/favicon.svg +1 -0
  102. package/dist/ui/icons.svg +24 -0
  103. package/dist/ui/index.html +14 -0
  104. package/dist/workers/prettier.js +11 -0
  105. package/dist/workers/prettier.js.map +1 -0
  106. package/package.json +114 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"prompt-maker.js","sourceRoot":"","sources":["../../../execute/helpers/prompt-maker.ts"],"names":[],"mappings":"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"}
@@ -0,0 +1,40 @@
1
+ import z from "zod";
2
+ import { componentResponseSchema, cssResponseSchema, jsxResponseSchema, plannerResponseSchema, } from "../../schemas/index.js";
3
+ import sse from "../../server/sse.js";
4
+ function validateCodeResponse(response) {
5
+ try {
6
+ z.union([
7
+ jsxResponseSchema,
8
+ cssResponseSchema,
9
+ componentResponseSchema,
10
+ ]).parse(response);
11
+ }
12
+ catch (error) {
13
+ throw new Error(error.issues.map((i) => i.message).join(","));
14
+ }
15
+ // const schema = z.object({
16
+ // thought: z.string(),
17
+ // updatedCode: z.string(),
18
+ // });
19
+ // schema.parse(response);
20
+ }
21
+ function validateResponse({ response,
22
+ // caller,
23
+ }) {
24
+ sse.emitInfo("Validating LLM Response...");
25
+ // const schemaByCaller = {
26
+ // planner: plannerResponseSchema,
27
+ // jsx: jsxResponseSchema,
28
+ // css: cssResponseSchema,
29
+ // component: componentResponseSchema,
30
+ // } as const;
31
+ // const schema = schemaByCaller[caller];
32
+ const result = plannerResponseSchema.safeParse(response);
33
+ if (!result.success) {
34
+ // do not add LoomaError here as it will be included in retry prompt
35
+ throw new Error(result.error.issues.map((i) => i.message).join(", "));
36
+ }
37
+ return result.data;
38
+ }
39
+ export default { validateCodeResponse, validateResponse };
40
+ //# sourceMappingURL=validators.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"validators.js","sourceRoot":"","sources":["../../../execute/helpers/validators.ts"],"names":[],"mappings":"AAAA,OAAO,CAAC,MAAM,KAAK,CAAC;AACpB,OAAO,EACL,uBAAuB,EACvB,iBAAiB,EACjB,iBAAiB,EAEjB,qBAAqB,GACtB,MAAM,wBAAwB,CAAC;AAChC,OAAO,GAAG,MAAM,qBAAqB,CAAC;AAEtC,SAAS,oBAAoB,CAAC,QAAiB;IAC7C,IAAI,CAAC;QACH,CAAC,CAAC,KAAK,CAAC;YACN,iBAAiB;YACjB,iBAAiB;YACjB,uBAAuB;SACxB,CAAC,CAAC,KAAK,CAAC,QAAQ,CAAC,CAAC;IACrB,CAAC;IAAC,OAAO,KAAK,EAAE,CAAC;QACf,MAAM,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,GAAG,CAAC,CAAC,CAAC;IAChE,CAAC;IACD,4BAA4B;IAC5B,yBAAyB;IACzB,6BAA6B;IAC7B,MAAM;IAEN,0BAA0B;AAC5B,CAAC;AAED,SAAS,gBAAgB,CAAC,EACxB,QAAQ;AACR,UAAU;EAIX;IACC,GAAG,CAAC,QAAQ,CAAC,4BAA4B,CAAC,CAAC;IAC3C,2BAA2B;IAC3B,oCAAoC;IACpC,4BAA4B;IAC5B,4BAA4B;IAC5B,wCAAwC;IACxC,cAAc;IAEd,yCAAyC;IAEzC,MAAM,MAAM,GAAG,qBAAqB,CAAC,SAAS,CAAC,QAAQ,CAAC,CAAC;IACzD,IAAI,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC;QACpB,oEAAoE;QACpE,MAAM,IAAI,KAAK,CAAC,MAAM,CAAC,KAAK,CAAC,MAAM,CAAC,GAAG,CAAC,CAAC,CAAC,EAAE,EAAE,CAAC,CAAC,CAAC,OAAO,CAAC,CAAC,IAAI,CAAC,IAAI,CAAC,CAAC,CAAC;IACxE,CAAC;IAED,OAAO,MAAM,CAAC,IAAI,CAAC;AACrB,CAAC;AAED,eAAe,EAAE,oBAAoB,EAAE,gBAAgB,EAAE,CAAC"}