flavor-code 1.2.1

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 (145) hide show
  1. package/LICENSE +21 -0
  2. package/README.md +1081 -0
  3. package/dist/agent/loop.d.ts +31 -0
  4. package/dist/agent/message-queue.d.ts +19 -0
  5. package/dist/agent/planner.d.ts +28 -0
  6. package/dist/agent/subagents.d.ts +50 -0
  7. package/dist/agent/task-plan.d.ts +60 -0
  8. package/dist/agent/task-tools.d.ts +11 -0
  9. package/dist/agent/types.d.ts +117 -0
  10. package/dist/app-WC2XXGLM.js +3185 -0
  11. package/dist/app-WC2XXGLM.js.map +1 -0
  12. package/dist/auth/oauth-config.d.ts +4 -0
  13. package/dist/auth/oauth.d.ts +21 -0
  14. package/dist/auth/store.d.ts +15 -0
  15. package/dist/auth/types.d.ts +33 -0
  16. package/dist/chunk-BU64GNXE.js +15771 -0
  17. package/dist/chunk-BU64GNXE.js.map +1 -0
  18. package/dist/chunk-DM64TM4Z.js +124 -0
  19. package/dist/chunk-DM64TM4Z.js.map +1 -0
  20. package/dist/chunk-JZ322RCJ.js +40 -0
  21. package/dist/chunk-JZ322RCJ.js.map +1 -0
  22. package/dist/chunk-M744K7MK.js +246 -0
  23. package/dist/chunk-M744K7MK.js.map +1 -0
  24. package/dist/chunk-MVIMQEQT.js +692 -0
  25. package/dist/chunk-MVIMQEQT.js.map +1 -0
  26. package/dist/chunk-VOCZVFP7.js +153 -0
  27. package/dist/chunk-VOCZVFP7.js.map +1 -0
  28. package/dist/chunk-XS2JU6S3.js +35557 -0
  29. package/dist/chunk-XS2JU6S3.js.map +1 -0
  30. package/dist/claude-ink-ZL4UZMFY.js +27 -0
  31. package/dist/claude-ink-ZL4UZMFY.js.map +1 -0
  32. package/dist/cli.js +915 -0
  33. package/dist/cli.js.map +1 -0
  34. package/dist/codeisland/activate.mjs +74 -0
  35. package/dist/codeisland/bridge.mjs +97 -0
  36. package/dist/codeisland/flavor-plugin.json +27 -0
  37. package/dist/config/load.d.ts +19 -0
  38. package/dist/config/protected-file.d.ts +15 -0
  39. package/dist/config/schema.d.ts +176 -0
  40. package/dist/config/secret-envelope.d.ts +8 -0
  41. package/dist/context/compaction.d.ts +44 -0
  42. package/dist/context/manager.d.ts +65 -0
  43. package/dist/context/summarizer.d.ts +15 -0
  44. package/dist/desktop/main.js +17778 -0
  45. package/dist/desktop/main.js.map +1 -0
  46. package/dist/desktop/preload.cjs +90 -0
  47. package/dist/desktop/preload.cjs.map +1 -0
  48. package/dist/desktop-renderer/assets/index-C66pDvHs.js +144 -0
  49. package/dist/desktop-renderer/assets/index-C66pDvHs.js.map +1 -0
  50. package/dist/desktop-renderer/assets/index-Cm_ktmXm.css +1 -0
  51. package/dist/desktop-renderer/index.html +16 -0
  52. package/dist/devtools-SXJBSV2N.js +3 -0
  53. package/dist/devtools-SXJBSV2N.js.map +1 -0
  54. package/dist/execution/docker.d.ts +29 -0
  55. package/dist/execution/factory.d.ts +3 -0
  56. package/dist/execution/types.d.ts +18 -0
  57. package/dist/goal/classifier.d.ts +12 -0
  58. package/dist/goal/orchestrator.d.ts +34 -0
  59. package/dist/goal/planner.d.ts +9 -0
  60. package/dist/goal/store.d.ts +9 -0
  61. package/dist/goal/types.d.ts +190 -0
  62. package/dist/hallucination/confidence.d.ts +12 -0
  63. package/dist/hallucination/evidence-ledger.d.ts +29 -0
  64. package/dist/hallucination/guard.d.ts +27 -0
  65. package/dist/hallucination/messages.d.ts +10 -0
  66. package/dist/hallucination/retry-monitor.d.ts +19 -0
  67. package/dist/hallucination/sliding-window.d.ts +13 -0
  68. package/dist/hallucination/types.d.ts +49 -0
  69. package/dist/harness/local.d.ts +54 -0
  70. package/dist/hooks/bus.d.ts +9 -0
  71. package/dist/hooks/types.d.ts +105 -0
  72. package/dist/ide/client.d.ts +35 -0
  73. package/dist/incidents/reporter.d.ts +38 -0
  74. package/dist/init/project.d.ts +25 -0
  75. package/dist/load-WQGNTCHC.js +20 -0
  76. package/dist/load-WQGNTCHC.js.map +1 -0
  77. package/dist/loop/budget.d.ts +11 -0
  78. package/dist/loop/isolation.d.ts +21 -0
  79. package/dist/loop/orchestrator.d.ts +82 -0
  80. package/dist/loop/store.d.ts +13 -0
  81. package/dist/loop/types.d.ts +142 -0
  82. package/dist/loop/verifier.d.ts +13 -0
  83. package/dist/mcp/client.d.ts +66 -0
  84. package/dist/mcp/sdk.d.ts +27 -0
  85. package/dist/memory/coordinator.d.ts +32 -0
  86. package/dist/memory/extractor.d.ts +15 -0
  87. package/dist/memory/intent.d.ts +2 -0
  88. package/dist/memory/retrieval.d.ts +13 -0
  89. package/dist/memory/review.d.ts +36 -0
  90. package/dist/memory/similarity.d.ts +5 -0
  91. package/dist/memory/store.d.ts +58 -0
  92. package/dist/memory/types.d.ts +37 -0
  93. package/dist/models/anthropic.d.ts +24 -0
  94. package/dist/models/cache-profile.d.ts +23 -0
  95. package/dist/models/openai.d.ts +24 -0
  96. package/dist/models/registry.d.ts +16 -0
  97. package/dist/models/structured.d.ts +75 -0
  98. package/dist/models/types.d.ts +93 -0
  99. package/dist/permissions/classifier.d.ts +9 -0
  100. package/dist/permissions/engine.d.ts +28 -0
  101. package/dist/plugins/host.d.ts +15 -0
  102. package/dist/plugins/types.d.ts +136 -0
  103. package/dist/production.d.ts +59 -0
  104. package/dist/prompts/system.d.ts +28 -0
  105. package/dist/rpc/schema.d.ts +61 -0
  106. package/dist/rpc/server.d.ts +54 -0
  107. package/dist/sdk/index.d.ts +19 -0
  108. package/dist/sdk/index.js +53 -0
  109. package/dist/sdk/index.js.map +1 -0
  110. package/dist/session/checkpoint.d.ts +25 -0
  111. package/dist/session/store.d.ts +154 -0
  112. package/dist/session/tree.d.ts +31 -0
  113. package/dist/skills/builtin-loop.d.ts +12 -0
  114. package/dist/skills/registry.d.ts +47 -0
  115. package/dist/skills/tool.d.ts +9 -0
  116. package/dist/sleep/organizer.d.ts +37 -0
  117. package/dist/tools/ask-user-question.d.ts +49 -0
  118. package/dist/tools/file-diff.d.ts +9 -0
  119. package/dist/tools/files.d.ts +49 -0
  120. package/dist/tools/lsp.d.ts +77 -0
  121. package/dist/tools/managed.d.ts +59 -0
  122. package/dist/tools/runtime.d.ts +58 -0
  123. package/dist/tools/search.d.ts +76 -0
  124. package/dist/tools/shell.d.ts +37 -0
  125. package/dist/tools/task-output.d.ts +53 -0
  126. package/dist/tools/todo-write.d.ts +35 -0
  127. package/dist/tools/types.d.ts +56 -0
  128. package/dist/trace/recorder.d.ts +14 -0
  129. package/dist/trace/replay.d.ts +3 -0
  130. package/dist/trace/schema.d.ts +26 -0
  131. package/dist/ui/commands.d.ts +67 -0
  132. package/dist/ui/session.d.ts +126 -0
  133. package/dist/ui/transcript.d.ts +89 -0
  134. package/dist/utils/async.d.ts +5 -0
  135. package/dist/utils/envUtils.d.ts +1 -0
  136. package/dist/utils/error.d.ts +2 -0
  137. package/dist/utils/execFileNoThrow.d.ts +13 -0
  138. package/dist/utils/intl.d.ts +18 -0
  139. package/dist/utils/json.d.ts +44 -0
  140. package/dist/utils/log.d.ts +28 -0
  141. package/dist/utils/redact.d.ts +10 -0
  142. package/dist/utils/usage-summary.d.ts +34 -0
  143. package/dist/utils/version.d.ts +6 -0
  144. package/package.json +124 -0
  145. package//346/212/200/346/234/257/346/226/271/346/241/210/346/212/245/345/221/212.md +4797 -0
@@ -0,0 +1,90 @@
1
+ "use strict";
2
+
3
+ // src/desktop/preload.ts
4
+ var import_electron = require("electron");
5
+
6
+ // src/desktop/channels.ts
7
+ var DESKTOP_CHANNELS = {
8
+ bootstrap: "desktop:bootstrap",
9
+ appIcon: "desktop:app-icon",
10
+ chooseWorkspace: "desktop:choose-workspace",
11
+ openWorkspace: "desktop:open-workspace",
12
+ startSession: "desktop:start-session",
13
+ deleteSession: "desktop:delete-session",
14
+ showAppMenu: "desktop:show-app-menu",
15
+ submit: "desktop:submit",
16
+ finishTask: "desktop:finish-task",
17
+ interrupt: "desktop:interrupt",
18
+ resolveApproval: "desktop:resolve-approval",
19
+ answerQuestions: "desktop:answer-questions",
20
+ resolveMemoryReview: "desktop:resolve-memory-review",
21
+ listFiles: "desktop:list-files",
22
+ listSkills: "desktop:list-skills",
23
+ getSkill: "desktop:get-skill",
24
+ createSkill: "desktop:create-skill",
25
+ updateSkill: "desktop:update-skill",
26
+ deleteSkill: "desktop:delete-skill",
27
+ setSkillEnabled: "desktop:set-skill-enabled",
28
+ listMcpServers: "desktop:list-mcp-servers",
29
+ saveMcpServer: "desktop:save-mcp-server",
30
+ deleteMcpServer: "desktop:delete-mcp-server",
31
+ setMcpServerEnabled: "desktop:set-mcp-server-enabled",
32
+ listMemory: "desktop:list-memory",
33
+ createMemory: "desktop:create-memory",
34
+ updateMemory: "desktop:update-memory",
35
+ deleteMemory: "desktop:delete-memory",
36
+ switchModel: "desktop:switch-model",
37
+ addModel: "desktop:add-model",
38
+ event: "desktop:event"
39
+ };
40
+
41
+ // src/desktop/preload.ts
42
+ var api = {
43
+ bootstrap: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.bootstrap),
44
+ appIcon: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.appIcon),
45
+ chooseWorkspace: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.chooseWorkspace),
46
+ openWorkspace: (path) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.openWorkspace, { path }),
47
+ startSession: (resumeSession) => import_electron.ipcRenderer.invoke(
48
+ DESKTOP_CHANNELS.startSession,
49
+ resumeSession === void 0 ? {} : { resumeSession }
50
+ ),
51
+ deleteSession: (sessionId) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.deleteSession, { sessionId }),
52
+ showAppMenu: (menu, x, y) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.showAppMenu, { menu, x, y }),
53
+ submit: (prompt, delivery = "prompt", attachments = []) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.submit, {
54
+ prompt,
55
+ delivery,
56
+ ...attachments.length === 0 ? {} : { attachments }
57
+ }),
58
+ finishTask: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.finishTask),
59
+ interrupt: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.interrupt),
60
+ resolveApproval: (decision) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.resolveApproval, { decision }),
61
+ answerQuestions: (answers) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.answerQuestions, { answers }),
62
+ resolveMemoryReview: (id, decision) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.resolveMemoryReview, { id, decision }),
63
+ listFiles: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.listFiles),
64
+ listSkills: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.listSkills),
65
+ getSkill: (name) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.getSkill, { name }),
66
+ createSkill: (draft) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.createSkill, draft),
67
+ updateSkill: (originalName, draft) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.updateSkill, { originalName, draft }),
68
+ deleteSkill: (name) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.deleteSkill, { name }),
69
+ setSkillEnabled: (name, enabled) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.setSkillEnabled, { name, enabled }),
70
+ listMcpServers: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.listMcpServers),
71
+ saveMcpServer: (originalName, draft) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.saveMcpServer, {
72
+ ...originalName === void 0 ? {} : { originalName },
73
+ draft
74
+ }),
75
+ deleteMcpServer: (name) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.deleteMcpServer, { name }),
76
+ setMcpServerEnabled: (name, enabled) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.setMcpServerEnabled, { name, enabled }),
77
+ listMemory: () => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.listMemory),
78
+ createMemory: (candidate) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.createMemory, candidate),
79
+ updateMemory: (id, candidate) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.updateMemory, { id, ...candidate }),
80
+ deleteMemory: (id) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.deleteMemory, { id }),
81
+ switchModel: (modelId) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.switchModel, { modelId }),
82
+ addModel: (input) => import_electron.ipcRenderer.invoke(DESKTOP_CHANNELS.addModel, input),
83
+ onEvent(listener) {
84
+ const handler = (_event, value) => listener(value);
85
+ import_electron.ipcRenderer.on(DESKTOP_CHANNELS.event, handler);
86
+ return () => import_electron.ipcRenderer.removeListener(DESKTOP_CHANNELS.event, handler);
87
+ }
88
+ };
89
+ import_electron.contextBridge.exposeInMainWorld("flavorDesktop", api);
90
+ //# sourceMappingURL=preload.cjs.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../src/desktop/preload.ts","../../src/desktop/channels.ts"],"sourcesContent":["import { contextBridge, ipcRenderer } from \"electron\";\r\n\r\nimport { DESKTOP_CHANNELS } from \"./channels.js\";\r\nimport type { DesktopEvent, FlavorDesktopApi } from \"./contracts.js\";\r\n\r\nconst api: FlavorDesktopApi = {\r\n bootstrap: () => ipcRenderer.invoke(DESKTOP_CHANNELS.bootstrap),\r\n appIcon: () => ipcRenderer.invoke(DESKTOP_CHANNELS.appIcon),\r\n chooseWorkspace: () => ipcRenderer.invoke(DESKTOP_CHANNELS.chooseWorkspace),\r\n openWorkspace: (path) => ipcRenderer.invoke(DESKTOP_CHANNELS.openWorkspace, { path }),\r\n startSession: (resumeSession) => ipcRenderer.invoke(DESKTOP_CHANNELS.startSession,\r\n resumeSession === undefined ? {} : { resumeSession }),\r\n deleteSession: (sessionId) => ipcRenderer.invoke(DESKTOP_CHANNELS.deleteSession, { sessionId }),\r\n showAppMenu: (menu, x, y) => ipcRenderer.invoke(DESKTOP_CHANNELS.showAppMenu, { menu, x, y }),\r\n submit: (prompt, delivery = \"prompt\", attachments = []) => ipcRenderer.invoke(DESKTOP_CHANNELS.submit, {\n prompt, delivery, ...(attachments.length === 0 ? {} : { attachments }),\n }),\n finishTask: () => ipcRenderer.invoke(DESKTOP_CHANNELS.finishTask),\n interrupt: () => ipcRenderer.invoke(DESKTOP_CHANNELS.interrupt),\n resolveApproval: (decision) => ipcRenderer.invoke(DESKTOP_CHANNELS.resolveApproval, { decision }),\r\n answerQuestions: (answers) => ipcRenderer.invoke(DESKTOP_CHANNELS.answerQuestions, { answers }),\n resolveMemoryReview: (id, decision) => ipcRenderer.invoke(DESKTOP_CHANNELS.resolveMemoryReview, { id, decision }),\n listFiles: () => ipcRenderer.invoke(DESKTOP_CHANNELS.listFiles),\n listSkills: () => ipcRenderer.invoke(DESKTOP_CHANNELS.listSkills),\n getSkill: (name) => ipcRenderer.invoke(DESKTOP_CHANNELS.getSkill, { name }),\n createSkill: (draft) => ipcRenderer.invoke(DESKTOP_CHANNELS.createSkill, draft),\n updateSkill: (originalName, draft) => ipcRenderer.invoke(DESKTOP_CHANNELS.updateSkill, { originalName, draft }),\n deleteSkill: (name) => ipcRenderer.invoke(DESKTOP_CHANNELS.deleteSkill, { name }),\n setSkillEnabled: (name, enabled) => ipcRenderer.invoke(DESKTOP_CHANNELS.setSkillEnabled, { name, enabled }),\n listMcpServers: () => ipcRenderer.invoke(DESKTOP_CHANNELS.listMcpServers),\n saveMcpServer: (originalName, draft) => ipcRenderer.invoke(DESKTOP_CHANNELS.saveMcpServer, {\n ...(originalName === undefined ? {} : { originalName }), draft,\n }),\n deleteMcpServer: (name) => ipcRenderer.invoke(DESKTOP_CHANNELS.deleteMcpServer, { name }),\n setMcpServerEnabled: (name, enabled) => ipcRenderer.invoke(DESKTOP_CHANNELS.setMcpServerEnabled, { name, enabled }),\n listMemory: () => ipcRenderer.invoke(DESKTOP_CHANNELS.listMemory),\n createMemory: (candidate) => ipcRenderer.invoke(DESKTOP_CHANNELS.createMemory, candidate),\n updateMemory: (id, candidate) => ipcRenderer.invoke(DESKTOP_CHANNELS.updateMemory, { id, ...candidate }),\n deleteMemory: (id) => ipcRenderer.invoke(DESKTOP_CHANNELS.deleteMemory, { id }),\n switchModel: (modelId) => ipcRenderer.invoke(DESKTOP_CHANNELS.switchModel, { modelId }),\n addModel: (input) => ipcRenderer.invoke(DESKTOP_CHANNELS.addModel, input),\n onEvent(listener) {\r\n const handler = (_event: Electron.IpcRendererEvent, value: DesktopEvent) => listener(value);\r\n ipcRenderer.on(DESKTOP_CHANNELS.event, handler);\r\n return () => ipcRenderer.removeListener(DESKTOP_CHANNELS.event, handler);\r\n },\r\n};\r\n\r\ncontextBridge.exposeInMainWorld(\"flavorDesktop\", api);\r\n","export const DESKTOP_CHANNELS = {\r\n bootstrap: \"desktop:bootstrap\",\r\n appIcon: \"desktop:app-icon\",\r\n chooseWorkspace: \"desktop:choose-workspace\",\r\n openWorkspace: \"desktop:open-workspace\",\r\n startSession: \"desktop:start-session\",\r\n deleteSession: \"desktop:delete-session\",\r\n showAppMenu: \"desktop:show-app-menu\",\r\n submit: \"desktop:submit\",\n finishTask: \"desktop:finish-task\",\n interrupt: \"desktop:interrupt\",\n resolveApproval: \"desktop:resolve-approval\",\r\n answerQuestions: \"desktop:answer-questions\",\n resolveMemoryReview: \"desktop:resolve-memory-review\",\n listFiles: \"desktop:list-files\",\n listSkills: \"desktop:list-skills\",\n getSkill: \"desktop:get-skill\",\n createSkill: \"desktop:create-skill\",\n updateSkill: \"desktop:update-skill\",\n deleteSkill: \"desktop:delete-skill\",\n setSkillEnabled: \"desktop:set-skill-enabled\",\n listMcpServers: \"desktop:list-mcp-servers\",\n saveMcpServer: \"desktop:save-mcp-server\",\n deleteMcpServer: \"desktop:delete-mcp-server\",\n setMcpServerEnabled: \"desktop:set-mcp-server-enabled\",\n listMemory: \"desktop:list-memory\",\n createMemory: \"desktop:create-memory\",\n updateMemory: \"desktop:update-memory\",\n deleteMemory: \"desktop:delete-memory\",\n switchModel: \"desktop:switch-model\",\n addModel: \"desktop:add-model\",\n event: \"desktop:event\",\n} as const;\r\n"],"mappings":"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","names":[]}