@skt-ai-labs/trayambak-cli 0.6.2 → 0.6.4

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 (391) hide show
  1. package/README.md +20 -18
  2. package/dist/apps/cli/src/command-registry.js +1 -1
  3. package/dist/apps/cli/src/commands/agent.js +1 -1
  4. package/dist/apps/cli/src/commands/archive.js +1 -1
  5. package/dist/apps/cli/src/commands/checkpoint.js +1 -1
  6. package/dist/apps/cli/src/commands/command-dispatch.js +1 -1
  7. package/dist/apps/cli/src/commands/commit.js +1 -1
  8. package/dist/apps/cli/src/commands/compact.js +1 -1
  9. package/dist/apps/cli/src/commands/config.js +1 -1
  10. package/dist/apps/cli/src/commands/db.js +1 -1
  11. package/dist/apps/cli/src/commands/doctor.js +1 -1
  12. package/dist/apps/cli/src/commands/download.js +1 -1
  13. package/dist/apps/cli/src/commands/exec.js +1 -1
  14. package/dist/apps/cli/src/commands/index.js +1 -1
  15. package/dist/apps/cli/src/commands/login.js +1 -1
  16. package/dist/apps/cli/src/commands/manager.js +1 -1
  17. package/dist/apps/cli/src/commands/marketplace.js +1 -1
  18. package/dist/apps/cli/src/commands/mcp.js +1 -1
  19. package/dist/apps/cli/src/commands/mode.js +1 -1
  20. package/dist/apps/cli/src/commands/models.js +1 -1
  21. package/dist/apps/cli/src/commands/plan.js +1 -1
  22. package/dist/apps/cli/src/commands/pr.js +1 -1
  23. package/dist/apps/cli/src/commands/registry.js +1 -1
  24. package/dist/apps/cli/src/commands/run.js +1 -1
  25. package/dist/apps/cli/src/commands/sandbox.js +1 -1
  26. package/dist/apps/cli/src/commands/serve.js +1 -1
  27. package/dist/apps/cli/src/commands/session-export.js +1 -1
  28. package/dist/apps/cli/src/commands/session-resume.js +1 -1
  29. package/dist/apps/cli/src/commands/shortcuts.js +1 -1
  30. package/dist/apps/cli/src/commands/slash-command.js +1 -1
  31. package/dist/apps/cli/src/commands/stats.js +1 -1
  32. package/dist/apps/cli/src/commands/streaming-gate.js +1 -1
  33. package/dist/apps/cli/src/commands/task.js +1 -1
  34. package/dist/apps/cli/src/commands/todo.js +1 -1
  35. package/dist/apps/cli/src/commands/uninstall.js +1 -1
  36. package/dist/apps/cli/src/commands/upgrade.js +1 -1
  37. package/dist/apps/cli/src/commands/worktree.js +1 -1
  38. package/dist/apps/cli/src/flags.js +1 -1
  39. package/dist/apps/cli/src/index.js +1 -1
  40. package/dist/apps/cli/src/integration/board.js +1 -1
  41. package/dist/apps/cli/src/integration/git-refs.js +1 -1
  42. package/dist/apps/cli/src/integration/index.js +1 -1
  43. package/dist/apps/cli/src/integration/indexing.js +1 -1
  44. package/dist/apps/cli/src/integration/notebook.js +1 -1
  45. package/dist/apps/cli/src/integration/parent-watchdog.js +1 -1
  46. package/dist/apps/cli/src/integration/plan.js +1 -1
  47. package/dist/apps/cli/src/integration/presence.js +1 -1
  48. package/dist/apps/cli/src/integration/project-id.js +1 -1
  49. package/dist/apps/cli/src/integration/rules.js +1 -1
  50. package/dist/apps/cli/src/integration/sandbox.js +1 -1
  51. package/dist/apps/cli/src/integration/task-resume.js +1 -1
  52. package/dist/apps/cli/src/integration/text-stream.js +1 -1
  53. package/dist/apps/cli/src/integration/unique-id.js +1 -1
  54. package/dist/apps/cli/src/integration/watcher.js +1 -1
  55. package/dist/apps/cli/src/logger.js +1 -1
  56. package/dist/apps/cli/src/session/index.js +1 -1
  57. package/dist/apps/cli/src/session/session-compaction.js +1 -1
  58. package/dist/apps/cli/src/session/session-continuation.js +1 -1
  59. package/dist/apps/cli/src/session/session-control.js +1 -1
  60. package/dist/apps/cli/src/session/session-fork.js +1 -1
  61. package/dist/apps/cli/src/session/session-manager.js +1 -1
  62. package/dist/apps/cli/src/session/session-transcript.js +1 -1
  63. package/dist/apps/cli/src/tui/index.js +1 -1
  64. package/dist/apps/cli/src/tui/tui-features.js +1 -1
  65. package/dist/apps/cli/src/version.js +1 -1
  66. package/dist/apps/runtime/src/agent/agent-loop.js +1 -1
  67. package/dist/apps/runtime/src/agent/agent.js +1 -1
  68. package/dist/apps/runtime/src/agent/auto-pilot.js +1 -1
  69. package/dist/apps/runtime/src/agent/loop-test-harness.js +1 -1
  70. package/dist/apps/runtime/src/agent/review-init.js +1 -1
  71. package/dist/apps/runtime/src/agent/sota.js +1 -1
  72. package/dist/apps/runtime/src/agent/specialist-agents.js +1 -1
  73. package/dist/apps/runtime/src/artifacts/artifact-manager.js +1 -1
  74. package/dist/apps/runtime/src/checkpoints.js +1 -1
  75. package/dist/apps/runtime/src/compaction.js +1 -1
  76. package/dist/apps/runtime/src/config.js +1 -1
  77. package/dist/apps/runtime/src/controller/controller.js +1 -1
  78. package/dist/apps/runtime/src/controller/executor.js +1 -1
  79. package/dist/apps/runtime/src/controller/reviewer.js +1 -1
  80. package/dist/apps/runtime/src/controller/roles.js +1 -1
  81. package/dist/apps/runtime/src/controller/router.js +1 -1
  82. package/dist/apps/runtime/src/controller/state.js +1 -1
  83. package/dist/apps/runtime/src/developer-mode/bug-fix-auto.js +1 -1
  84. package/dist/apps/runtime/src/developer-mode/developer-mode.js +1 -1
  85. package/dist/apps/runtime/src/developer-mode/rag-cache.js +1 -1
  86. package/dist/apps/runtime/src/developer-mode/sota-mode.js +1 -1
  87. package/dist/apps/runtime/src/developer-mode/subagent-orchestrator.js +1 -1
  88. package/dist/apps/runtime/src/evidence/evidence-store.js +1 -1
  89. package/dist/apps/runtime/src/github-auth.js +1 -1
  90. package/dist/apps/runtime/src/goals.js +1 -1
  91. package/dist/apps/runtime/src/index.js +1 -1
  92. package/dist/apps/runtime/src/knowledge/knowledge-gate.js +1 -1
  93. package/dist/apps/runtime/src/license.js +1 -1
  94. package/dist/apps/runtime/src/llama-cpp-bin.js +1 -1
  95. package/dist/apps/runtime/src/mistakes/mistake-detector.js +1 -1
  96. package/dist/apps/runtime/src/notifications.js +1 -1
  97. package/dist/apps/runtime/src/planner/planner.js +1 -1
  98. package/dist/apps/runtime/src/prompt/auto-title.js +1 -1
  99. package/dist/apps/runtime/src/prompt/enhance-prompt.js +1 -1
  100. package/dist/apps/runtime/src/prompt/power-prompt.js +1 -1
  101. package/dist/apps/runtime/src/prompt/rules.js +1 -1
  102. package/dist/apps/runtime/src/repetition/repetition-detector.js +1 -1
  103. package/dist/apps/runtime/src/self-improvement.js +1 -1
  104. package/dist/apps/runtime/src/session/session.js +1 -1
  105. package/dist/apps/runtime/src/tools/artifacts/artifact.js +1 -1
  106. package/dist/apps/runtime/src/tools/checkpoint/checkpoint.js +1 -1
  107. package/dist/apps/runtime/src/tools/checkpoint/rewind.js +1 -1
  108. package/dist/apps/runtime/src/tools/code/codemode.js +1 -1
  109. package/dist/apps/runtime/src/tools/code/fim.js +1 -1
  110. package/dist/apps/runtime/src/tools/code/next-edit.js +1 -1
  111. package/dist/apps/runtime/src/tools/code-search/code-search.js +1 -1
  112. package/dist/apps/runtime/src/tools/code-search/semantic-search.js +1 -1
  113. package/dist/apps/runtime/src/tools/code-search/symbols.js +1 -1
  114. package/dist/apps/runtime/src/tools/command-exec/bash.js +1 -1
  115. package/dist/apps/runtime/src/tools/command-exec/terminal.js +1 -1
  116. package/dist/apps/runtime/src/tools/commands/commands.js +1 -1
  117. package/dist/apps/runtime/src/tools/custom/custom-tools.js +1 -1
  118. package/dist/apps/runtime/src/tools/diagnostics/diagnostics-tool.js +1 -1
  119. package/dist/apps/runtime/src/tools/diagnostics/tsc-diagnostics.js +1 -1
  120. package/dist/apps/runtime/src/tools/directory/list-dir.js +1 -1
  121. package/dist/apps/runtime/src/tools/file-edit/edit-file.js +1 -1
  122. package/dist/apps/runtime/src/tools/file-edit/fs-walk.js +1 -1
  123. package/dist/apps/runtime/src/tools/file-edit/fuzzy-match.js +1 -1
  124. package/dist/apps/runtime/src/tools/file-edit/read-file.js +1 -1
  125. package/dist/apps/runtime/src/tools/file-edit/write-file.js +1 -1
  126. package/dist/apps/runtime/src/tools/github/github.js +1 -1
  127. package/dist/apps/runtime/src/tools/globber/glob.js +1 -1
  128. package/dist/apps/runtime/src/tools/hook-exec.js +1 -1
  129. package/dist/apps/runtime/src/tools/index.js +1 -1
  130. package/dist/apps/runtime/src/tools/manifest/read-manifest.js +1 -1
  131. package/dist/apps/runtime/src/tools/marketplace/marketplace.js +1 -1
  132. package/dist/apps/runtime/src/tools/mcp/mcp-install.js +1 -1
  133. package/dist/apps/runtime/src/tools/mcp/mcp-runner-tool.js +1 -1
  134. package/dist/apps/runtime/src/tools/mcp/mcp.js +1 -1
  135. package/dist/apps/runtime/src/tools/mcp/registry.js +1 -1
  136. package/dist/apps/runtime/src/tools/mcp/tool-search.js +1 -1
  137. package/dist/apps/runtime/src/tools/memory/dream.js +1 -1
  138. package/dist/apps/runtime/src/tools/memory/memory.js +1 -1
  139. package/dist/apps/runtime/src/tools/mode/mode.js +1 -1
  140. package/dist/apps/runtime/src/tools/pentest/pentest-tools.js +1 -1
  141. package/dist/apps/runtime/src/tools/pentest/security-tool-registry.js +1 -1
  142. package/dist/apps/runtime/src/tools/planning/todo.js +1 -1
  143. package/dist/apps/runtime/src/tools/planning/todoread.js +1 -1
  144. package/dist/apps/runtime/src/tools/regex/grep.js +1 -1
  145. package/dist/apps/runtime/src/tools/search/ripgrep.js +1 -1
  146. package/dist/apps/runtime/src/tools/skills/skill-core.js +1 -1
  147. package/dist/apps/runtime/src/tools/skills/skill-loading.js +1 -1
  148. package/dist/apps/runtime/src/tools/skills/skill-model.js +1 -1
  149. package/dist/apps/runtime/src/tools/skills/skill-parser.js +1 -1
  150. package/dist/apps/runtime/src/tools/skills/skill-selection.js +1 -1
  151. package/dist/apps/runtime/src/tools/skills/skills.js +1 -1
  152. package/dist/apps/runtime/src/tools/text/csv.js +1 -1
  153. package/dist/apps/runtime/src/tools/text/diff-render.js +1 -1
  154. package/dist/apps/runtime/src/tools/text/diff.js +1 -1
  155. package/dist/apps/runtime/src/tools/text/summarize.js +1 -1
  156. package/dist/apps/runtime/src/tools/text/yaml.js +1 -1
  157. package/dist/apps/runtime/src/tools/trayambak/agent-catalog.js +1 -1
  158. package/dist/apps/runtime/src/tools/trayambak/agent-manager.js +1 -1
  159. package/dist/apps/runtime/src/tools/trayambak/agent.js +1 -1
  160. package/dist/apps/runtime/src/tools/trayambak/ask-question.js +1 -1
  161. package/dist/apps/runtime/src/tools/trayambak/cron.js +1 -1
  162. package/dist/apps/runtime/src/tools/trayambak/debate.js +1 -1
  163. package/dist/apps/runtime/src/tools/trayambak/fleet.js +1 -1
  164. package/dist/apps/runtime/src/tools/trayambak/generate-agent.js +1 -1
  165. package/dist/apps/runtime/src/tools/trayambak/monitor.js +1 -1
  166. package/dist/apps/runtime/src/tools/trayambak/notebook-edit.js +1 -1
  167. package/dist/apps/runtime/src/tools/trayambak/parallel-execute.js +1 -1
  168. package/dist/apps/runtime/src/tools/trayambak/parallel-review.js +1 -1
  169. package/dist/apps/runtime/src/tools/trayambak/rules.js +1 -1
  170. package/dist/apps/runtime/src/tools/trayambak/send-message.js +1 -1
  171. package/dist/apps/runtime/src/tools/trayambak/sota-solve.js +1 -1
  172. package/dist/apps/runtime/src/tools/trayambak/swarm.js +1 -1
  173. package/dist/apps/runtime/src/tools/trayambak/tasks.js +1 -1
  174. package/dist/apps/runtime/src/tools/trayambak/team.js +1 -1
  175. package/dist/apps/runtime/src/tools/trayambak/workflow.js +1 -1
  176. package/dist/apps/runtime/src/tools/trayambak/worktree.js +1 -1
  177. package/dist/apps/runtime/src/tools/types.js +1 -1
  178. package/dist/apps/runtime/src/tools/web/multi-search.js +1 -1
  179. package/dist/apps/runtime/src/tools/web/web-search.js +1 -1
  180. package/dist/apps/runtime/src/tools/web/webbrowse.js +1 -1
  181. package/dist/apps/runtime/src/tools/web/webfetch.js +1 -1
  182. package/dist/apps/runtime/src/update/auto-update.js +1 -1
  183. package/dist/packages/acp/src/index.js +1 -1
  184. package/dist/packages/approval/src/index.js +1 -1
  185. package/dist/packages/checkpoints/src/index.js +1 -1
  186. package/dist/packages/cli/src/commands/registry.js +1 -1
  187. package/dist/packages/client/src/index.js +1 -1
  188. package/dist/packages/coding-agent/src/index.js +1 -1
  189. package/dist/packages/core/src/agent_communication.js +1 -1
  190. package/dist/packages/core/src/agent_registry.js +1 -1
  191. package/dist/packages/core/src/agents_md.js +1 -1
  192. package/dist/packages/core/src/analytics.js +1 -1
  193. package/dist/packages/core/src/approval.js +1 -1
  194. package/dist/packages/core/src/auth.js +1 -1
  195. package/dist/packages/core/src/context/compactor.js +1 -1
  196. package/dist/packages/core/src/cron/scheduler.js +1 -1
  197. package/dist/packages/core/src/curator/librarian.js +1 -1
  198. package/dist/packages/core/src/env_filter.js +1 -1
  199. package/dist/packages/core/src/extension_api.js +1 -1
  200. package/dist/packages/core/src/feature_flags.js +1 -1
  201. package/dist/packages/core/src/hook_runtime.js +1 -1
  202. package/dist/packages/core/src/i18n.js +1 -1
  203. package/dist/packages/core/src/memory/manager.js +1 -1
  204. package/dist/packages/core/src/memory/provider.js +1 -1
  205. package/dist/packages/core/src/plan_mode.js +1 -1
  206. package/dist/packages/core/src/process.js +1 -1
  207. package/dist/packages/core/src/providers/manager.js +1 -1
  208. package/dist/packages/core/src/providers/registry.js +1 -1
  209. package/dist/packages/core/src/rollout_budget.js +1 -1
  210. package/dist/packages/core/src/secrets.js +1 -1
  211. package/dist/packages/core/src/session_store.js +1 -1
  212. package/dist/packages/core/src/state_db.js +1 -1
  213. package/dist/packages/core/src/subagents.js +1 -1
  214. package/dist/packages/core/src/token_budget.js +1 -1
  215. package/dist/packages/core/src/toolsets/arsenal.js +1 -1
  216. package/dist/packages/core/src/validate.js +1 -1
  217. package/dist/packages/execpolicy/src/policy.js +1 -1
  218. package/dist/packages/function/src/index.js +1 -1
  219. package/dist/packages/harness/src/index.js +1 -1
  220. package/dist/packages/mcp/src/index.js +1 -1
  221. package/dist/packages/mcp/src/oauth-callback.js +1 -1
  222. package/dist/packages/mcp/src/oauth.js +1 -1
  223. package/dist/packages/mcp/src/spawn-resolve.js +1 -1
  224. package/dist/packages/mcp-server/src/index.js +1 -1
  225. package/dist/packages/modes/src/index.js +1 -1
  226. package/dist/packages/protocol/src/events.js +1 -1
  227. package/dist/packages/protocol/src/messages.js +1 -1
  228. package/dist/packages/protocol/src/permission-rules.js +1 -1
  229. package/dist/packages/protocol/src/permissions.js +1 -1
  230. package/dist/packages/protocol/src/tools.js +1 -1
  231. package/dist/packages/protocol/src/util/url.js +1 -1
  232. package/dist/packages/provider/src/anthropic.js +1 -1
  233. package/dist/packages/provider/src/catalog.js +1 -1
  234. package/dist/packages/provider/src/custom.js +1 -1
  235. package/dist/packages/provider/src/faux-stream.js +1 -1
  236. package/dist/packages/provider/src/google.js +1 -1
  237. package/dist/packages/provider/src/huggingface.js +1 -1
  238. package/dist/packages/provider/src/index.js +1 -1
  239. package/dist/packages/provider/src/llama-cpp.js +1 -1
  240. package/dist/packages/provider/src/nvidia.js +1 -1
  241. package/dist/packages/provider/src/ollama.js +1 -1
  242. package/dist/packages/provider/src/openai.js +1 -1
  243. package/dist/packages/provider/src/types.js +1 -1
  244. package/dist/packages/provider/src/xai.js +1 -1
  245. package/dist/packages/sandbox/src/gate.js +1 -1
  246. package/dist/packages/sandbox/src/index.js +1 -1
  247. package/dist/packages/sandbox/src/spawn.js +1 -1
  248. package/dist/packages/sandbox/src/types.js +1 -1
  249. package/dist/packages/sandbox/src/violation.js +1 -1
  250. package/dist/packages/schema/src/index.js +1 -1
  251. package/dist/packages/sdk/src/index.js +1 -1
  252. package/dist/packages/server/src/cors.js +1 -1
  253. package/dist/packages/server/src/daemon.js +1 -1
  254. package/dist/packages/server/src/github-app.js +1 -1
  255. package/dist/packages/server/src/github-autofix.js +1 -1
  256. package/dist/packages/server/src/github-jobs.js +1 -1
  257. package/dist/packages/server/src/github-oauth.js +1 -1
  258. package/dist/packages/server/src/index.js +1 -1
  259. package/dist/packages/server/src/install-ps1.js +1 -1
  260. package/dist/packages/server/src/license-store.js +1 -1
  261. package/dist/packages/session-backends/src/index.js +1 -1
  262. package/dist/packages/session-backends/src/transcript.js +1 -1
  263. package/dist/packages/telemetry/src/index.js +1 -1
  264. package/dist/packages/tui/src/app/app-state.js +1 -1
  265. package/dist/packages/tui/src/app/events.js +1 -1
  266. package/dist/packages/tui/src/approval-notification.js +1 -1
  267. package/dist/packages/tui/src/bottom_pane/composer.js +1 -1
  268. package/dist/packages/tui/src/bottom_pane/index.js +1 -1
  269. package/dist/packages/tui/src/chatwidget/chat-widget.js +1 -1
  270. package/dist/packages/tui/src/dialogs.js +1 -1
  271. package/dist/packages/tui/src/index.js +1 -1
  272. package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
  273. package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
  274. package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
  275. package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
  276. package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
  277. package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
  278. package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
  279. package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
  280. package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
  281. package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
  282. package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
  283. package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
  284. package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
  285. package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
  286. package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
  287. package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
  288. package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
  289. package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
  290. package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
  291. package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
  292. package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
  293. package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
  294. package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
  295. package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
  296. package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
  297. package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
  298. package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
  299. package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
  300. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
  301. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
  302. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
  303. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
  304. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
  305. package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
  306. package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
  307. package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
  308. package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
  309. package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
  310. package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
  311. package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
  312. package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
  313. package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
  314. package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
  315. package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
  316. package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
  317. package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
  318. package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
  319. package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
  320. package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
  321. package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
  322. package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
  323. package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
  324. package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
  325. package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
  326. package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
  327. package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
  328. package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
  329. package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
  330. package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
  331. package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
  332. package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
  333. package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
  334. package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
  335. package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
  336. package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
  337. package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
  338. package/dist/packages/tui/src/keybindings.js +1 -1
  339. package/dist/packages/tui/src/keys.js +1 -1
  340. package/dist/packages/tui/src/notifications.js +1 -1
  341. package/dist/packages/tui/src/premium-ui.js +1 -1
  342. package/dist/packages/tui/src/stdin-buffer.js +1 -1
  343. package/dist/packages/tui/src/terminal-ui.js +1 -1
  344. package/dist/packages/tui/src/tui/terminal.js +1 -1
  345. package/dist/packages/tui/src/ui/box.js +1 -1
  346. package/dist/packages/tui/src/ui/dialog.js +1 -1
  347. package/dist/packages/tui/src/ui/footer-mode.js +1 -1
  348. package/dist/packages/tui/src/ui/footer.js +1 -1
  349. package/dist/packages/tui/src/ui/key-hint.js +1 -1
  350. package/dist/packages/tui/src/ui/spinner.js +1 -1
  351. package/dist/packages/tui/src/ui/theme.js +1 -1
  352. package/dist/packages/tui/src/ui/toast.js +1 -1
  353. package/dist/packages/tui/src/ui/tool-display.js +1 -1
  354. package/dist/packages/tui/src/ui/tool-palette.js +1 -1
  355. package/dist/skt/0-points/points.js +1 -1
  356. package/dist/skt/1-errors/mistake.js +1 -1
  357. package/dist/skt/1-errors/penalty.js +1 -1
  358. package/dist/skt/10-upload/upload.js +1 -1
  359. package/dist/skt/11-ui/components.js +1 -1
  360. package/dist/skt/12-control/content-control.js +1 -1
  361. package/dist/skt/12-control/hallucination.js +1 -1
  362. package/dist/skt/12-control/points.js +1 -1
  363. package/dist/skt/12-control/repetition.js +1 -1
  364. package/dist/skt/12-control/verification.js +1 -1
  365. package/dist/skt/13-healing/ast-validator.js +1 -1
  366. package/dist/skt/13-healing/healing-controller.js +1 -1
  367. package/dist/skt/13-healing/journal.js +1 -1
  368. package/dist/skt/13-healing/rollback.js +1 -1
  369. package/dist/skt/13-healing/scratchpad.js +1 -1
  370. package/dist/skt/13-healing/subprocess.js +1 -1
  371. package/dist/skt/13-healing/verify.js +1 -1
  372. package/dist/skt/14-hooks/codec.js +1 -1
  373. package/dist/skt/14-hooks/events.js +1 -1
  374. package/dist/skt/14-hooks/matcher.js +1 -1
  375. package/dist/skt/14-hooks/merge.js +1 -1
  376. package/dist/skt/14-hooks/runner.js +1 -1
  377. package/dist/skt/14-hooks/types.js +1 -1
  378. package/dist/skt/3-user/instructions.js +1 -1
  379. package/dist/skt/4-mem/memory.js +1 -1
  380. package/dist/skt/5-eval/cot-chain.js +1 -1
  381. package/dist/skt/5-eval/cot.js +1 -1
  382. package/dist/skt/5-eval/eval.js +1 -1
  383. package/dist/skt/6-u/improvements.js +1 -1
  384. package/dist/skt/6-u/reward.js +1 -1
  385. package/dist/skt/7-cli/autorepair.js +1 -1
  386. package/dist/skt/7-cli/clibugs.js +1 -1
  387. package/dist/skt/7-cli/reinstall.js +1 -1
  388. package/dist/skt/7-cli/reset.js +1 -1
  389. package/dist/skt/9-session/session.js +1 -1
  390. package/dist/skt/context.js +1 -1
  391. package/package.json +1 -1
@@ -1 +1 @@
1
- 'use strict';const _0x2f5ce0=_0x3e33;(function(_0x58d576,_0x17cafc){const _0x1a5c26=_0x3e33,_0x3d43e6=_0x58d576();while(!![]){try{const _0x5948f8=-parseInt(_0x1a5c26(0x19d))/0x1*(-parseInt(_0x1a5c26(0x154))/0x2)+parseInt(_0x1a5c26(0x229))/0x3+-parseInt(_0x1a5c26(0x15e))/0x4+-parseInt(_0x1a5c26(0x1cf))/0x5+parseInt(_0x1a5c26(0x223))/0x6+-parseInt(_0x1a5c26(0x12d))/0x7*(-parseInt(_0x1a5c26(0x163))/0x8)+-parseInt(_0x1a5c26(0x219))/0x9*(parseInt(_0x1a5c26(0x198))/0xa);if(_0x5948f8===_0x17cafc)break;else _0x3d43e6['push'](_0x3d43e6['shift']());}catch(_0xa5ebab){_0x3d43e6['push'](_0x3d43e6['shift']());}}}(_0xc751,0x1c88d));var __createBinding=this&&this[_0x2f5ce0(0x1b3)]||(Object[_0x2f5ce0(0x142)]?function(_0x5a4862,_0x50d263,_0x376b9f,_0x43c7a8){const _0x253ba5=_0x2f5ce0;if(_0x43c7a8===undefined)_0x43c7a8=_0x376b9f;var _0x2de1a9=Object[_0x253ba5(0x156)](_0x50d263,_0x376b9f);(!_0x2de1a9||(_0x253ba5(0x149)in _0x2de1a9?!_0x50d263[_0x253ba5(0x19a)]:_0x2de1a9[_0x253ba5(0x227)]||_0x2de1a9['configurable']))&&(_0x2de1a9={'enumerable':!![],'get':function(){return _0x50d263[_0x376b9f];}}),Object[_0x253ba5(0x23d)](_0x5a4862,_0x43c7a8,_0x2de1a9);}:function(_0x37e15e,_0x3d757f,_0x9e0934,_0x1e078c){if(_0x1e078c===undefined)_0x1e078c=_0x9e0934;_0x37e15e[_0x1e078c]=_0x3d757f[_0x9e0934];}),__setModuleDefault=this&&this[_0x2f5ce0(0x232)]||(Object[_0x2f5ce0(0x142)]?function(_0x525bff,_0x3ff252){const _0x2345db=_0x2f5ce0;Object['defineProperty'](_0x525bff,_0x2345db(0x1c2),{'enumerable':!![],'value':_0x3ff252});}:function(_0xd54a88,_0xc618d8){const _0xb721b6=_0x2f5ce0;_0xd54a88[_0xb721b6(0x1c2)]=_0xc618d8;}),__importStar=this&&this['__importStar']||(function(){var _0x2d5d6b=function(_0x1c9f68){const _0x11dcf3=_0x3e33;return _0x2d5d6b=Object[_0x11dcf3(0x215)]||function(_0x405e34){const _0x445777=_0x11dcf3;var _0x4ae55d=[];for(var _0x594927 in _0x405e34)if(Object[_0x445777(0x141)][_0x445777(0x237)]['call'](_0x405e34,_0x594927))_0x4ae55d[_0x4ae55d[_0x445777(0x14d)]]=_0x594927;return _0x4ae55d;},_0x2d5d6b(_0x1c9f68);};return function(_0x5950f4){const _0x373290=_0x3e33;if(_0x5950f4&&_0x5950f4[_0x373290(0x19a)])return _0x5950f4;var _0x50aa2a={};if(_0x5950f4!=null){for(var _0x2b0099=_0x2d5d6b(_0x5950f4),_0x1174aa=0x0;_0x1174aa<_0x2b0099['length'];_0x1174aa++)if(_0x2b0099[_0x1174aa]!==_0x373290(0x1c2))__createBinding(_0x50aa2a,_0x5950f4,_0x2b0099[_0x1174aa]);}return __setModuleDefault(_0x50aa2a,_0x5950f4),_0x50aa2a;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports[_0x2f5ce0(0x13f)]=void 0x0,exports['startServer']=startServer;const http=__importStar(require('http')),crypto_1=require(_0x2f5ce0(0x248)),node_fs_1=require('node:fs'),index_js_1=require(_0x2f5ce0(0x11b)),index_js_2=require(_0x2f5ce0(0x1cc)),transcript_js_1=require(_0x2f5ce0(0x14a)),github_app_js_1=require(_0x2f5ce0(0x17d)),license_js_1=require(_0x2f5ce0(0x117)),license_store_js_1=require(_0x2f5ce0(0x23f)),github_oauth_js_1=require(_0x2f5ce0(0x1fd)),install_ps1_js_1=require(_0x2f5ce0(0x250)),github_jobs_js_1=require('./github-jobs.js'),github_autofix_js_1=require(_0x2f5ce0(0x15f)),cors_js_1=require('./cors.js');function readJsonBody(_0x2f8a4c,_0x1e02d4){return new Promise(_0x50a573=>{const _0x50cd15=_0x3e33;let _0x2612d8='',_0x16fbc1=0x0,_0x567ab7=![];const _0x54676c=(_0x12f9c1,_0x1ba9c3)=>{const _0x1c1587=_0x3e33;if(_0x567ab7)return;_0x567ab7=!![],_0x1e02d4[_0x1c1587(0x1e5)](_0x12f9c1,{'Content-Type':'application/json'}),_0x1e02d4['end'](JSON[_0x1c1587(0x1e7)]({'error':_0x1ba9c3})),setImmediate(()=>_0x2f8a4c[_0x1c1587(0x228)]());};_0x2f8a4c['on'](_0x50cd15(0x19f),_0x35a7a0=>{const _0x1cad9a=_0x50cd15;if(_0x567ab7)return;const _0x8c8e22=typeof _0x35a7a0===_0x1cad9a(0x22d)?_0x35a7a0:_0x35a7a0[_0x1cad9a(0x13a)]('utf8');_0x16fbc1+=Buffer[_0x1cad9a(0x135)](_0x8c8e22);if(_0x16fbc1>MAX_BODY_BYTES){_0x54676c(0x19d,'body\x20too\x20large\x20(max\x201MB)');return;}_0x2612d8+=_0x8c8e22;}),_0x2f8a4c['on'](_0x50cd15(0x171),()=>{const _0xee2843=_0x50cd15;if(_0x567ab7||_0x2f8a4c['destroyed'])return;try{_0x50a573(JSON[_0xee2843(0x1fb)](_0x2612d8));}catch{_0x54676c(0x190,'invalid\x20JSON'),_0x50a573(null);}});});}function adminPage(){const _0x233f56=_0x2f5ce0;return _0x233f56(0x1bc);}const LOOPBACK_HOSTS=new Set([_0x2f5ce0(0x174),_0x2f5ce0(0x24f),_0x2f5ce0(0x21b),_0x2f5ce0(0x12a)]),MAX_BODY_BYTES=0x100000;exports[_0x2f5ce0(0x13f)]={'openapi':_0x2f5ce0(0x25c),'info':{'title':_0x2f5ce0(0x1be),'version':_0x2f5ce0(0x136)},'paths':{'/health':{'get':{'summary':_0x2f5ce0(0x157)}},'/v1/models':{'get':{'summary':_0x2f5ce0(0x173)}},'/v1/agent':{'post':{'summary':_0x2f5ce0(0x11d)}},'/api/sessions':{'get':{'summary':_0x2f5ce0(0x168)}},'/admin':{'get':{'summary':_0x2f5ce0(0x1c7)}},'/admin/mint':{'post':{'summary':'Mint\x20a\x2016-letter\x20license\x20(bearer-gated)'}},'/admin/import':{'post':{'summary':_0x2f5ce0(0x16b)}},'/admin/revoke':{'post':{'summary':'Revoke\x20a\x20license\x20by\x20id\x20(bearer-gated)'}},'/admin/unbind':{'post':{'summary':_0x2f5ce0(0x162)}},'/admin/licenses':{'get':{'summary':'List\x20licenses,\x20masked\x20(bearer-gated)'}},'/admin/usage':{'get':{'summary':_0x2f5ce0(0x10f)}},'/admin/jobs':{'get':{'summary':_0x2f5ce0(0x1ae)}},'/license/verify':{'post':{'summary':'Live\x20license\x20check\x20(public,\x20machine-bound)'}},'/license/activate':{'post':{'summary':'Bind\x20a\x20license\x20to\x20a\x20machine\x20(public)'}},'/license/mint-trial':{'post':{'summary':_0x2f5ce0(0x213)}},'/auth/github/start':{'post':{'summary':_0x2f5ce0(0x209)}},'/auth/github/callback':{'get':{'summary':'OAuth\x20redirect\x20target\x20(public,\x20browser-facing)'}},'/auth/github/status':{'get':{'summary':'Poll\x20login\x20completion\x20by\x20machine\x20(public)'}},'/auth/github/logout':{'post':{'summary':'Forget\x20a\x20machine\x27s\x20token\x20(public)'}},'/github/read':{'post':{'summary':_0x2f5ce0(0x1d2)}},'/install.ps1':{'get':{'summary':_0x2f5ce0(0x249)}},'/license/usage':{'post':{'summary':_0x2f5ce0(0x241)}},'/webhooks/github':{'post':{'summary':'GitHub\x20App\x20webhook\x20(HMAC\x20verified)'}},'/openapi.json':{'get':{'summary':_0x2f5ce0(0x1a5)}}}};function startServer(_0x4dd194={}){const _0x34920a=_0x2f5ce0,_0x16c3c3=_0x4dd194[_0x34920a(0x122)]??Number(process.env.TRAYAMBAK_SERVER_PORT??0x2253),_0x114a75=_0x4dd194[_0x34920a(0x138)]??'127.0.0.1';let _0x6cadcc=_0x4dd194[_0x34920a(0x13c)]??process.env.TRAYAMBAK_WEB_TOKEN;const _0x41a509=_0x4dd194['corsOrigins']??process.env.TRAYAMBAK_WEB_ORIGINS??'';let _0x3636db=![];!_0x6cadcc&&!LOOPBACK_HOSTS[_0x34920a(0x238)](_0x114a75)&&(_0x6cadcc=(0x0,crypto_1[_0x34920a(0x16f)])(0x20)[_0x34920a(0x13a)](_0x34920a(0x15d)),_0x3636db=!![]);const _0x12de7e=(0x0,index_js_1[_0x34920a(0x225)])(),_0x4a82a3=(0x0,index_js_2[_0x34920a(0x16c)])(![]),_0x4fe428=(0x0,license_store_js_1[_0x34920a(0x167)])(),_0x49f0c0=new license_store_js_1[(_0x34920a(0x220))]({'file':_0x4dd194[_0x34920a(0x180)]??_0x4fe428[_0x34920a(0x202)],'usageFile':_0x4dd194[_0x34920a(0x125)]??_0x4fe428[_0x34920a(0x145)]}),_0x3345f1=new Set([_0x34920a(0x11e),_0x34920a(0x189),_0x34920a(0x259),_0x34920a(0x1af),'/webhooks/github',_0x34920a(0x1fa),_0x34920a(0x24c),_0x34920a(0x1c5),_0x34920a(0x18e),_0x34920a(0x1f4),'/install.ps1']),_0x1eb4c9=new Map(),_0x452939=0x5,_0x16e485=new Map(),_0x2f88ca=0xa,_0x55e9ef=new github_oauth_js_1[(_0x34920a(0x1ea))](_0x4dd194[_0x34920a(0x175)]??(0x0,github_oauth_js_1[_0x34920a(0x244)])()),_0x4e5070=(0x0,github_autofix_js_1[_0x34920a(0x1d1)])(process.env.GITHUB_AUTOFIX_REPOS),_0x4d62ea=(process.env.GITHUB_AUTOFIX_LABEL??_0x34920a(0x1a9))[_0x34920a(0x21c)]()||_0x34920a(0x1a9),_0x564f6a=Math[_0x34920a(0x1ab)](Math['max'](Number(process.env.GITHUB_AUTOFIX_INTERVAL_MIN??0x1e)||0x1e,0x5),0x5a0),_0x23eabf=process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT===undefined?(0x0,github_autofix_js_1[_0x34920a(0x257)])(_0x4d62ea):process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT??'';if(_0x4e5070['length']>0x0){const _0x5e3382=new github_autofix_js_1['AutofixLedger']((0x0,github_autofix_js_1[_0x34920a(0x1dd)])()),_0x3309c0=()=>{void((async()=>{const _0x57e92e=_0x3e33;try{const _0x15c197=await(0x0,github_autofix_js_1[_0x57e92e(0x10e)])({'repos':_0x4e5070,'label':_0x4d62ea,'ledger':_0x5e3382,'installationIdFor':installationIdForOwner,'tokenFor':installationTokenFor,'fetchJson':async(_0x568b91,_0x1f44e8)=>{const _0x337d94=_0x57e92e,_0x513507=await githubApi(_0x568b91,_0x1f44e8);return{'status':_0x513507[_0x337d94(0x166)],'json':_0x513507['json']};},'listAllRepos':allInstalledRepos,'postComment':async(_0x2bddd2,_0x45fb7c,_0x1aeca5)=>{const _0x3f9e39=_0x57e92e,_0x39df12=_0x2bddd2['split']('/')[0x0]??'',_0x39676b=await installationIdForOwner(_0x39df12)[_0x3f9e39(0x1db)](()=>0x0);if(!_0x39676b)return![];const _0x43d013=await installationTokenFor(_0x39676b)[_0x3f9e39(0x1db)](()=>'');if(!_0x43d013)return![];return postGithubComment(_0x39df12,_0x2bddd2['split']('/')[0x1]??'',_0x45fb7c,_0x1aeca5,_0x43d013);},'triageComment':_0x23eabf,'runJob':(_0xd344f8,_0x488e98,_0x513839,_0x825916)=>enqueueGithubJob({'repoFullName':_0xd344f8,'issueNumber':_0x488e98,'task':_0x513839,'isPullRequest':![]},{'installation':{'id':_0x825916}})});(_0x15c197['checked']>0x0||_0x15c197[_0x57e92e(0x115)][_0x57e92e(0x14d)]>0x0||_0x15c197[_0x57e92e(0x234)]['length']>0x0)&&process[_0x57e92e(0x247)][_0x57e92e(0x191)](_0x57e92e(0x217)+_0x15c197[_0x57e92e(0x184)]+_0x57e92e(0x21d)+_0x15c197[_0x57e92e(0x115)][_0x57e92e(0x14d)]+_0x57e92e(0x1dc)+_0x15c197[_0x57e92e(0x234)]['length']+'\x0a');}catch(_0x37b444){process[_0x57e92e(0x13d)]['write']('[github-autofix]\x20tick\x20failed:\x20'+(_0x37b444 instanceof Error?_0x37b444[_0x57e92e(0x186)]:String(_0x37b444))+'\x0a');}})());},_0x241299=setInterval(_0x3309c0,_0x564f6a*0xea60);if(typeof _0x241299[_0x34920a(0x113)]===_0x34920a(0x1c4))_0x241299[_0x34920a(0x113)]();const _0x2362b2=setTimeout(_0x3309c0,0x1d4c0);if(typeof _0x2362b2[_0x34920a(0x113)]===_0x34920a(0x1c4))_0x2362b2[_0x34920a(0x113)]();process[_0x34920a(0x247)][_0x34920a(0x191)](_0x34920a(0x1a3)+_0x4e5070['join'](',')+_0x34920a(0x17e)+_0x4d62ea+_0x34920a(0x1ba)+_0x564f6a+'m\x0a');}else process[_0x34920a(0x247)][_0x34920a(0x191)](_0x34920a(0x1ad));const _0x92737f=http['createServer'](async(_0x9bad00,_0x573c2b)=>{const _0x546035=_0x34920a,_0x5b649c=(0x0,cors_js_1[_0x546035(0x119)])(_0x9bad00[_0x546035(0x254)][_0x546035(0x112)],_0x9bad00[_0x546035(0x254)][_0x546035(0x138)],_0x41a509);for(const [_0xcca503,_0x5effcb]of Object[_0x546035(0x1a0)](_0x5b649c[_0x546035(0x254)])){_0x573c2b[_0x546035(0x1e9)](_0xcca503,_0x5effcb);}if(_0x9bad00['method']===_0x546035(0x126)){_0x573c2b[_0x546035(0x1e5)](_0x5b649c[_0x546035(0x22f)]?0xcc:0x193),_0x573c2b['end']();return;}if(!_0x5b649c[_0x546035(0x22f)]){_0x573c2b[_0x546035(0x1e5)](0x193,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x18a)}));return;}const _0x50d2ce=(_0x9bad00['url']??'/')[_0x546035(0x1d5)]('?')[0x0];if(_0x6cadcc&&_0x9bad00[_0x546035(0x1b7)]!==_0x546035(0x206)&&!_0x3345f1[_0x546035(0x238)](_0x50d2ce)){const _0x5bb380=Buffer['from'](_0x9bad00[_0x546035(0x254)]['authorization']??''),_0x1a9da7=Buffer['from']('Bearer\x20'+_0x6cadcc),_0x46eb11=_0x5bb380['length']===_0x1a9da7[_0x546035(0x14d)]&&_0x5bb380[_0x546035(0x14d)]>0x0&&(0x0,crypto_1[_0x546035(0x187)])(_0x5bb380,_0x1a9da7);if(!_0x46eb11){_0x573c2b['writeHead'](0x191,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON['stringify']({'error':_0x546035(0x19c)}));return;}}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x206)){_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':'application/json'}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'status':'ok','model':_0x12de7e[_0x546035(0x243)]}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x9bad00[_0x546035(0x1b7)]==='/openapi.json'){_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)](exports['OPENAPI_SPEC']));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x1c6)){_0x573c2b['writeHead'](0xc8,{'Content-Type':'application/json'});try{_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'sessions':(0x0,transcript_js_1[_0x546035(0x1f6)])()}));}catch{_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'sessions':[]}));}return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x9bad00['url']===_0x546035(0x1a7)){_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'data':[{'id':_0x12de7e[_0x546035(0x243)]}]}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x114)){_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x1e8)}),_0x573c2b[_0x546035(0x171)](adminPage());return;}if(_0x9bad00[_0x546035(0x1ff)]==='POST'&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x1f5)){const _0x5c89ff=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x5c89ff)return;const _0x44c01a=typeof _0x5c89ff[_0x546035(0x170)]===_0x546035(0x22d)?_0x5c89ff[_0x546035(0x170)]:'',_0x52da13=typeof _0x5c89ff[_0x546035(0x1da)]===_0x546035(0x1b5)?_0x5c89ff[_0x546035(0x1da)]:Number[_0x546035(0x24a)];if(_0x44c01a!==_0x546035(0x20b)&&_0x44c01a!==_0x546035(0x1ee)&&_0x44c01a!=='pro'&&_0x44c01a!==_0x546035(0x155)){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x22e)}));return;}if(!Number[_0x546035(0x14b)](_0x52da13)||_0x52da13<0x1||_0x52da13>0xe42){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x11c)}));return;}try{const _0x322a37=Math[_0x546035(0x212)](Date['now']()/0x5265c00),{activationEpochDays:_0x33fa74}=await Promise[_0x546035(0x230)]()[_0x546035(0x169)](()=>__importStar(require(_0x546035(0x117)))),_0x398dc2=(0x0,license_js_1[_0x546035(0x1c1)])({'plan':_0x44c01a,'expDays':_0x322a37-_0x33fa74()+Math['floor'](_0x52da13)},(0x0,license_js_1[_0x546035(0x148)])()),_0x5af21d=typeof _0x5c89ff['id']===_0x546035(0x22d)?_0x5c89ff['id']:undefined,_0x2f3b7d=_0x49f0c0[_0x546035(0x218)](_0x398dc2,_0x5af21d);_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'key':_0x398dc2,'id':_0x2f3b7d['id']}));}catch(_0x32e701){_0x573c2b[_0x546035(0x1e5)](0x1f4,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x1cb)+(_0x32e701 instanceof Error?_0x32e701[_0x546035(0x186)]:String(_0x32e701))}));}return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x50d2ce===_0x546035(0x1df)){_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x20f)}),_0x573c2b[_0x546035(0x171)](install_ps1_js_1[_0x546035(0x1c9)]);return;}if(_0x9bad00['method']===_0x546035(0x20c)&&_0x50d2ce===_0x546035(0x11e)){const _0x20cb73=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x20cb73)return;const _0x1b4489=licenseMachineId(_0x20cb73['machineId']);if(!_0x1b4489){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON['stringify']({'valid':![],'reason':_0x546035(0x205)}));return;}const _0x19f999=_0x49f0c0['check'](typeof _0x20cb73[_0x546035(0x1ec)]===_0x546035(0x22d)?_0x20cb73[_0x546035(0x1ec)]:'',_0x1b4489);if(_0x19f999[_0x546035(0x146)]===!![])_0x49f0c0[_0x546035(0x25d)](_0x19f999[_0x546035(0x22c)]?.['id']??'');_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'valid':_0x19f999[_0x546035(0x146)],'plan':_0x19f999[_0x546035(0x170)],'exp':_0x19f999['exp'],'reason':_0x19f999['reason']}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x50d2ce===_0x546035(0x189)){const _0x388633=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x388633)return;const _0x233dba=licenseMachineId(_0x388633[_0x546035(0x17f)]);if(!_0x233dba){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':_0x546035(0x205)}));return;}const _0x3221fa=_0x49f0c0[_0x546035(0x120)](typeof _0x388633['key']===_0x546035(0x22d)?_0x388633['key']:'',_0x233dba);_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'ok':_0x3221fa['ok'],'plan':_0x3221fa[_0x546035(0x170)],'exp':_0x3221fa[_0x546035(0x109)],'reason':_0x3221fa[_0x546035(0x14f)]}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x50d2ce==='/license/usage'){const _0x5d7aaa=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x5d7aaa)return;const _0x51dcac=licenseMachineId(_0x5d7aaa[_0x546035(0x17f)]),_0x4360d1=typeof _0x5d7aaa[_0x546035(0x1c0)]==='string'?_0x5d7aaa[_0x546035(0x1c0)]['slice'](0x0,0x78):'';if(!_0x51dcac||!_0x4360d1){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x1a1)}));return;}const _0x33d460=_0x49f0c0[_0x546035(0x1e2)](typeof _0x5d7aaa[_0x546035(0x1ec)]===_0x546035(0x22d)?_0x5d7aaa[_0x546035(0x1ec)]:'',_0x51dcac);if(_0x33d460[_0x546035(0x146)]!==!![]){_0x573c2b[_0x546035(0x1e5)](0x193,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x33d460[_0x546035(0x14f)]??_0x546035(0x24b)}));return;}_0x49f0c0[_0x546035(0x25d)](_0x33d460[_0x546035(0x22c)]?.['id']??''),_0x49f0c0[_0x546035(0x1b0)]({'keyId':_0x33d460[_0x546035(0x22c)]?.['id']??'','machineId':_0x51dcac,'tool':_0x4360d1,'target':typeof _0x5d7aaa['target']===_0x546035(0x22d)?_0x5d7aaa[_0x546035(0x25b)][_0x546035(0x143)](0x0,0x12c):'','ok':_0x5d7aaa['ok']!==![]}),_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':'application/json'}),_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'ok':!![]}));return;}if(_0x9bad00['method']===_0x546035(0x20c)&&_0x50d2ce==='/license/mint-trial'){const _0x44b229=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x44b229)return;const _0x54b02c=licenseMachineId(_0x44b229['machineId']);if(!_0x54b02c){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':'missing\x20machineId'}));return;}const _0x352046=clientIp(_0x9bad00),_0x4093bb=Date[_0x546035(0x14c)](),_0x42286c=(_0x1eb4c9[_0x546035(0x149)](_0x352046)??[])[_0x546035(0x22a)](_0xa0ea09=>_0x4093bb-_0xa0ea09<0x36ee80);if(_0x42286c['length']>=_0x452939){_0x573c2b[_0x546035(0x1e5)](0x1ad,{'Content-Type':'application/json'}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':_0x546035(0x1c3)}));return;}_0x42286c['push'](_0x4093bb),_0x1eb4c9[_0x546035(0x1d8)](_0x352046,_0x42286c);if(_0x49f0c0['activeTrialForMachine'](_0x54b02c)){_0x573c2b[_0x546035(0x1e5)](0x199,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':_0x546035(0x24e)}));return;}try{const _0xede53e=Number(process.env.LICENSE_TRIAL_DAYS??0x7),_0x11979f=Math[_0x546035(0x1ab)](Math[_0x546035(0x177)](Math[_0x546035(0x212)](Number[_0x546035(0x14b)](_0xede53e)?_0xede53e:0x7),0x1),0x1e),_0x4d12b1=Math[_0x546035(0x212)](Date['now']()/0x5265c00),{activationEpochDays:_0x5f7b60}=await Promise['resolve']()[_0x546035(0x169)](()=>__importStar(require(_0x546035(0x117)))),_0x2d3421=(0x0,license_js_1[_0x546035(0x1c1)])({'plan':_0x546035(0x1ee),'expDays':_0x4d12b1-_0x5f7b60()+_0x11979f},(0x0,license_js_1[_0x546035(0x148)])()),_0x459e17=_0x49f0c0[_0x546035(0x218)](_0x2d3421,_0x546035(0x118),{'trial':!![]}),_0x166da8=_0x49f0c0[_0x546035(0x120)](_0x2d3421,_0x54b02c);_0x573c2b['writeHead'](0xc8,{'Content-Type':'application/json'}),_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'ok':_0x166da8['ok'],'key':_0x2d3421,'id':_0x459e17['id'],'exp':_0x459e17['exp'],'days':_0x11979f}));}catch(_0x1b013a){_0x573c2b['writeHead'](0x1f4,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':_0x546035(0x23c)+(_0x1b013a instanceof Error?_0x1b013a['message']:String(_0x1b013a))}));}return;}if(_0x9bad00[_0x546035(0x1ff)]==='POST'&&_0x50d2ce===_0x546035(0x1fa)){const _0x56e10a=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x56e10a)return;const _0x4ea931=licenseMachineId(_0x56e10a['machineId']);if(!_0x4ea931){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':'missing\x20machineId'}));return;}const _0x3cf450=(process.env.GITHUB_CLIENT_ID??'')[_0x546035(0x21c)]();if(!_0x3cf450){_0x573c2b[_0x546035(0x1e5)](0x1f4,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':'GitHub\x20login\x20not\x20configured\x20on\x20this\x20server'}));return;}const _0x1918d3=clientIp(_0x9bad00),_0x247d17=Date[_0x546035(0x14c)](),_0x1f08cf=(_0x16e485['get'](_0x1918d3)??[])['filter'](_0x3315bc=>_0x247d17-_0x3315bc<0x36ee80);if(_0x1f08cf[_0x546035(0x14d)]>=_0x2f88ca){_0x573c2b['writeHead'](0x1ad,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':![],'reason':_0x546035(0x179)}));return;}_0x1f08cf[_0x546035(0x233)](_0x247d17),_0x16e485[_0x546035(0x1d8)](_0x1918d3,_0x1f08cf);const _0x443e77=_0x55e9ef['beginLogin'](_0x4ea931),_0x50d4e0='https://github.com/login/oauth/authorize?client_id='+encodeURIComponent(_0x3cf450)+_0x546035(0x134)+_0x443e77[_0x546035(0x208)];_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':'application/json'}),_0x573c2b['end'](JSON['stringify']({'ok':!![],'url':_0x50d4e0}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x50d2ce===_0x546035(0x24c)){const _0x3743be=(_0x2702ce,_0x2fcb12,_0x344a08)=>{const _0x247674=_0x546035;_0x573c2b[_0x247674(0x1e5)](_0x344a08?0xc8:0x190,{'Content-Type':'text/html;\x20charset=utf-8'}),_0x573c2b[_0x247674(0x171)]('<!doctype\x20html><html\x20lang=\x22en\x22><head><meta\x20charset=\x22utf-8\x22><title>'+_0x2702ce+_0x247674(0x1fe)+_0x247674(0x226)+(_0x247674(0x19b)+_0x2702ce+_0x247674(0x16d)+_0x2fcb12+_0x247674(0x137)));},_0x146c6a=new URL(_0x9bad00[_0x546035(0x1b7)]??'/',_0x546035(0x161))[_0x546035(0x130)],_0x346817=_0x146c6a[_0x546035(0x149)](_0x546035(0x242))??'',_0x54b759=_0x146c6a[_0x546035(0x149)](_0x546035(0x208))??'',_0x25c892=_0x55e9ef[_0x546035(0x252)](_0x54b759);if(!_0x346817||!_0x25c892){_0x3743be(_0x546035(0x245),_0x546035(0x1b1),![]);return;}const _0x2833ee=(process.env.GITHUB_CLIENT_ID??'')[_0x546035(0x21c)](),_0x361867=(process.env.GITHUB_CLIENT_SECRET??'')[_0x546035(0x21c)]();if(!_0x2833ee||!_0x361867){_0x3743be(_0x546035(0x25a),'GitHub\x20login\x20is\x20not\x20configured\x20on\x20this\x20server.',![]);return;}try{const _0x54dcec=await fetch(_0x546035(0x214),{'method':_0x546035(0x20c),'headers':{'Content-Type':'application/json','Accept':'application/json','User-Agent':_0x546035(0x1a9)},'body':JSON[_0x546035(0x1e7)]({'client_id':_0x2833ee,'client_secret':_0x361867,'code':_0x346817}),'signal':AbortSignal[_0x546035(0x207)](0x4e20)}),_0x367073=await _0x54dcec[_0x546035(0x131)]();if(!_0x54dcec['ok']||typeof _0x367073[_0x546035(0x16a)]!=='string'||!_0x367073[_0x546035(0x16a)])throw new Error(typeof _0x367073[_0x546035(0x164)]===_0x546035(0x22d)?_0x367073[_0x546035(0x164)]:_0x546035(0x140)+_0x54dcec[_0x546035(0x166)]);const _0x56980d=await githubApi(_0x546035(0x188),_0x367073['access_token']),_0x2e6e98=_0x56980d[_0x546035(0x131)]&&typeof _0x56980d[_0x546035(0x131)]===_0x546035(0x231)&&typeof _0x56980d[_0x546035(0x131)][_0x546035(0x20e)]===_0x546035(0x22d)?_0x56980d[_0x546035(0x131)][_0x546035(0x20e)]:_0x546035(0x1b4);_0x55e9ef[_0x546035(0x1aa)](_0x25c892,_0x367073[_0x546035(0x16a)],_0x2e6e98),_0x3743be(_0x546035(0x1d4),_0x546035(0x239)+_0x2e6e98+_0x546035(0x123),!![]);}catch(_0x3588d6){_0x3743be('Authorization\x20failed','Could\x20not\x20finish\x20login\x20('+(_0x3588d6 instanceof Error?_0x3588d6[_0x546035(0x186)]:String(_0x3588d6))+_0x546035(0x183),![]);}return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x50d2ce===_0x546035(0x1c5)){const _0x2c9631=licenseMachineId(new URL(_0x9bad00['url']??'/',_0x546035(0x161))[_0x546035(0x130)]['get']('machineId')),_0x3bd5e5=_0x2c9631?_0x55e9ef['tokenFor'](_0x2c9631):undefined;_0x573c2b['writeHead'](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON['stringify'](_0x3bd5e5?{'authorized':!![],'login':_0x3bd5e5[_0x546035(0x20e)]}:{'authorized':![]}));return;}if(_0x9bad00[_0x546035(0x1ff)]==='POST'&&_0x50d2ce==='/auth/github/logout'){const _0x539283=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x539283)return;const _0xe8fb4f=licenseMachineId(_0x539283['machineId']);_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':_0xe8fb4f?_0x55e9ef[_0x546035(0x1e4)](_0xe8fb4f):![]}));return;}if(_0x9bad00['method']==='POST'&&_0x50d2ce===_0x546035(0x1f4)){const _0x12367e=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x12367e)return;const _0x50d59e=licenseMachineId(_0x12367e[_0x546035(0x17f)]),_0x1246ef=_0x50d59e?_0x55e9ef['tokenFor'](_0x50d59e):undefined;if(!_0x1246ef){_0x573c2b[_0x546035(0x1e5)](0x191,{'Content-Type':_0x546035(0x19e)}),_0x573c2b['end'](JSON['stringify']({'error':_0x546035(0x159)}));return;}let _0x322232='',_0x237ecb='';try{;({owner:_0x322232,repo:_0x237ecb}=(0x0,github_app_js_1[_0x546035(0x13b)])(typeof _0x12367e[_0x546035(0x15c)]===_0x546035(0x22d)?_0x12367e[_0x546035(0x15c)]:''));}catch{_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x10c)}));return;}const _0x36ac77=Math[_0x546035(0x212)](Number(_0x12367e[_0x546035(0x1b5)]));if(!Number[_0x546035(0x14b)](_0x36ac77)||_0x36ac77<0x1){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x17a)}));return;}const _0x395701=_0x12367e['withComments']!==![],[_0x2f7b77,_0x4e468a]=await Promise[_0x546035(0x1d6)]([githubApi(_0x546035(0x18b)+_0x322232+'/'+_0x237ecb+'/issues/'+_0x36ac77,_0x1246ef['token']),_0x395701?githubApi('/repos/'+_0x322232+'/'+_0x237ecb+_0x546035(0x1bf)+_0x36ac77+_0x546035(0x11f),_0x1246ef[_0x546035(0x13c)]):Promise[_0x546035(0x230)]({'status':0xc8,'json':[]})]);if(_0x2f7b77[_0x546035(0x166)]===0x0){_0x573c2b[_0x546035(0x1e5)](0x1f6,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x210)}));return;}if(_0x2f7b77[_0x546035(0x166)]!==0xc8||!_0x2f7b77['json']||typeof _0x2f7b77[_0x546035(0x131)]!==_0x546035(0x231)){const _0x48f953=_0x2f7b77['json']&&typeof _0x2f7b77[_0x546035(0x131)]===_0x546035(0x231)&&typeof _0x2f7b77[_0x546035(0x131)][_0x546035(0x186)]===_0x546035(0x22d)?_0x2f7b77[_0x546035(0x131)]['message']:'HTTP\x20'+_0x2f7b77['status'];_0x573c2b[_0x546035(0x1e5)](_0x2f7b77[_0x546035(0x166)]===0x194?0x194:0x1f6,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x172)+_0x48f953}));return;}const _0x128739=_0x2f7b77[_0x546035(0x131)],_0x1804cd=Array[_0x546035(0x150)](_0x4e468a['json'])?_0x4e468a[_0x546035(0x131)]:[];_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'ok':!![],'issue':{'number':typeof _0x128739['number']===_0x546035(0x1b5)?_0x128739[_0x546035(0x1b5)]:_0x36ac77,'title':typeof _0x128739[_0x546035(0x193)]==='string'?_0x128739[_0x546035(0x193)]:'','state':typeof _0x128739[_0x546035(0x208)]===_0x546035(0x22d)?_0x128739[_0x546035(0x208)]:'','author':_0x128739[_0x546035(0x1d9)]&&typeof _0x128739[_0x546035(0x1d9)]===_0x546035(0x231)&&typeof _0x128739['user']['login']==='string'?_0x128739[_0x546035(0x1d9)][_0x546035(0x20e)]:'','url':typeof _0x128739[_0x546035(0x182)]==='string'?_0x128739['html_url']:'','body':typeof _0x128739[_0x546035(0x10d)]===_0x546035(0x22d)?_0x128739[_0x546035(0x10d)][_0x546035(0x143)](0x0,0x1f40):'','commentsCount':typeof _0x128739[_0x546035(0x197)]===_0x546035(0x1b5)?_0x128739[_0x546035(0x197)]:_0x1804cd[_0x546035(0x14d)],'isPullRequest':_0x128739['pull_request']!==undefined},'comments':_0x1804cd[_0x546035(0x22a)](_0x561cd3=>!!_0x561cd3&&typeof _0x561cd3===_0x546035(0x231))[_0x546035(0x143)](-0x14)['map'](_0xdb6ca0=>({'author':_0xdb6ca0[_0x546035(0x1d9)]&&typeof _0xdb6ca0['user']==='object'&&typeof _0xdb6ca0[_0x546035(0x1d9)]['login']===_0x546035(0x22d)?_0xdb6ca0[_0x546035(0x1d9)][_0x546035(0x20e)]:'','body':typeof _0xdb6ca0[_0x546035(0x10d)]===_0x546035(0x22d)?_0xdb6ca0[_0x546035(0x10d)][_0x546035(0x143)](0x0,0x7d0):'','createdAt':typeof _0xdb6ca0[_0x546035(0x258)]===_0x546035(0x22d)?_0xdb6ca0[_0x546035(0x258)]:''}))}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x121)){const _0x1ae2ac=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x1ae2ac)return;try{const _0xf0766e=_0x49f0c0[_0x546035(0x218)](typeof _0x1ae2ac[_0x546035(0x1ec)]==='string'?_0x1ae2ac[_0x546035(0x1ec)]:'',typeof _0x1ae2ac[_0x546035(0x1ed)]===_0x546035(0x22d)?_0x1ae2ac[_0x546035(0x1ed)]:undefined);_0x573c2b['writeHead'](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'id':_0xf0766e['id'],'plan':_0xf0766e['plan']}));}catch(_0x129e93){_0x573c2b[_0x546035(0x1e5)](0x190,{'Content-Type':'application/json'}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x129e93 instanceof Error?_0x129e93['message']:String(_0x129e93)}));}return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x152)){const _0x58f758=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x58f758)return;const _0x85d1e6=typeof _0x58f758['id']===_0x546035(0x22d)?_0x58f758['id']:'';if(!_0x85d1e6||!_0x49f0c0['revoke'](_0x85d1e6)){_0x573c2b['writeHead'](0x194,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':'unknown\x20license\x20id'}));return;}_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON['stringify']({'ok':!![]}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x1d0)){const _0x41e266=await readJsonBody(_0x9bad00,_0x573c2b);if(!_0x41e266)return;const _0x227a80=typeof _0x41e266['id']===_0x546035(0x22d)?_0x41e266['id']:'';if(!_0x227a80||!_0x49f0c0[_0x546035(0x12f)](_0x227a80)){_0x573c2b[_0x546035(0x1e5)](0x194,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x132)}));return;}_0x573c2b['writeHead'](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON['stringify']({'ok':!![]}));return;}if(_0x9bad00['method']===_0x546035(0x10b)&&_0x50d2ce===_0x546035(0x1e1)){const _0x2cfd39=_0x49f0c0['list']()['map'](_0x11ac10=>({'id':_0x11ac10['id'],'key':_0x11ac10[_0x546035(0x1ec)][_0x546035(0x143)](0x0,0x4)+_0x546035(0x195)+_0x11ac10[_0x546035(0x1ec)]['slice'](-0x4),'plan':_0x11ac10[_0x546035(0x170)],'exp':_0x11ac10[_0x546035(0x109)],'customer':_0x11ac10['customer'],'trial':_0x11ac10['trial']===!![],'revoked':_0x11ac10[_0x546035(0x116)],'bound':Boolean(_0x11ac10[_0x546035(0x153)]),'machine':_0x11ac10[_0x546035(0x153)]?_0x11ac10[_0x546035(0x153)]['slice'](0x0,0x8)+'…':undefined,'createdAt':_0x11ac10[_0x546035(0x203)],'lastSeenAt':_0x11ac10[_0x546035(0x1e6)]}));_0x573c2b['writeHead'](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'licenses':_0x2cfd39}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x10b)&&_0x50d2ce===_0x546035(0x13e)){const _0x26f9e9=Number((_0x9bad00[_0x546035(0x1b7)]??'')[_0x546035(0x1d5)](_0x546035(0x1b8))[0x1]??0x64);_0x573c2b[_0x546035(0x1e5)](0xc8,{'Content-Type':'application/json'}),_0x573c2b[_0x546035(0x171)](JSON['stringify']({'usage':_0x49f0c0[_0x546035(0x1cd)](Number[_0x546035(0x14b)](_0x26f9e9)?_0x26f9e9:0x64)}));return;}if(_0x9bad00['method']===_0x546035(0x10b)&&_0x50d2ce==='/admin/jobs'){const _0xe90e84=Number((_0x9bad00[_0x546035(0x1b7)]??'')[_0x546035(0x1d5)](_0x546035(0x1b8))[0x1]??0x64),{readJobTail:_0x108742}=await Promise[_0x546035(0x230)]()[_0x546035(0x169)](()=>__importStar(require(_0x546035(0x246))));_0x573c2b['writeHead'](0xc8,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'jobs':_0x108742(Number['isFinite'](_0xe90e84)?_0xe90e84:0x64)}));return;}if(_0x9bad00[_0x546035(0x1ff)]===_0x546035(0x20c)&&_0x9bad00[_0x546035(0x1b7)]===_0x546035(0x11a)){const _0x2d781e=process.env.GITHUB_WEBHOOK_SECRET??'';if(!_0x2d781e){_0x573c2b[_0x546035(0x1e5)](0x1f7,{'Content-Type':'application/json'}),_0x573c2b['end'](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x1b6)}));return;}const _0x26f302=[];let _0xa30391=0x0,_0x281c2d=![];_0x9bad00['on'](_0x546035(0x19f),_0x3a951e=>{const _0x504848=_0x546035;if(_0x281c2d)return;const _0x2b7cc9=typeof _0x3a951e===_0x504848(0x22d)?Buffer['from'](_0x3a951e,_0x504848(0x23e)):_0x3a951e;_0xa30391+=_0x2b7cc9[_0x504848(0x14d)];if(_0xa30391>MAX_BODY_BYTES){_0x281c2d=!![],_0x573c2b[_0x504848(0x1e5)](0x19d,{'Content-Type':_0x504848(0x19e)}),_0x573c2b[_0x504848(0x171)](JSON['stringify']({'error':'body\x20too\x20large\x20(max\x201MB)'})),setImmediate(()=>_0x9bad00['destroy']());return;}_0x26f302[_0x504848(0x233)](_0x2b7cc9);}),_0x9bad00['on'](_0x546035(0x171),()=>{const _0xfadc9c=_0x546035;if(_0x281c2d||_0x9bad00[_0xfadc9c(0x15b)])return;const _0x48b2c6=Buffer[_0xfadc9c(0x178)](_0x26f302),_0x30318e=_0x9bad00[_0xfadc9c(0x254)]['x-hub-signature-256'];if(!(0x0,github_app_js_1[_0xfadc9c(0x1ce)])(_0x2d781e,_0x48b2c6,Array[_0xfadc9c(0x150)](_0x30318e)?_0x30318e[0x0]:_0x30318e)){_0x573c2b[_0xfadc9c(0x1e5)](0x191,{'Content-Type':'application/json'}),_0x573c2b[_0xfadc9c(0x171)](JSON['stringify']({'error':_0xfadc9c(0x151)}));return;}let _0x2ea6e4=null;try{_0x2ea6e4=JSON['parse'](_0x48b2c6[_0xfadc9c(0x13a)]('utf8'));}catch{_0x573c2b[_0xfadc9c(0x1e5)](0x190,{'Content-Type':_0xfadc9c(0x19e)}),_0x573c2b[_0xfadc9c(0x171)](JSON['stringify']({'error':_0xfadc9c(0x199)}));return;}const _0x2df2f7=_0x9bad00['headers']['x-github-event'],_0x598d4d=(0x0,github_app_js_1['routeGithubEvent'])(Array['isArray'](_0x2df2f7)?_0x2df2f7[0x0]??'':_0x2df2f7??'',_0x2ea6e4);if(_0x598d4d[_0xfadc9c(0x1f7)]!==_0xfadc9c(0x224)){_0x573c2b[_0xfadc9c(0x1e5)](0xc8,{'Content-Type':_0xfadc9c(0x19e)}),_0x573c2b['end'](JSON['stringify']({'ok':!![],..._0x598d4d[_0xfadc9c(0x1f7)]===_0xfadc9c(0x251)?{'ignored':_0x598d4d['reason']}:{}}));return;}_0x573c2b[_0xfadc9c(0x1e5)](0xca,{'Content-Type':_0xfadc9c(0x19e)}),_0x573c2b[_0xfadc9c(0x171)](JSON['stringify']({'ok':!![],'accepted':!![]})),void enqueueGithubJob(_0x598d4d['job'],_0x2ea6e4);});return;}if(_0x9bad00['method']===_0x546035(0x20c)&&_0x9bad00['url']===_0x546035(0x194)){let _0x130cc6='',_0x59d2ce=0x0,_0x5aa592=![];const _0x23f988=new AbortController();_0x9bad00['on'](_0x546035(0x200),()=>_0x23f988[_0x546035(0x25f)]()),_0x9bad00['on']('data',_0x3eccfd=>{const _0x52a0e2=_0x546035;if(_0x5aa592)return;const _0x4fda83=typeof _0x3eccfd===_0x52a0e2(0x22d)?_0x3eccfd:_0x3eccfd[_0x52a0e2(0x13a)](_0x52a0e2(0x23e));_0x59d2ce+=Buffer[_0x52a0e2(0x135)](_0x4fda83);if(_0x59d2ce>MAX_BODY_BYTES){_0x5aa592=!![],_0x573c2b[_0x52a0e2(0x1e5)](0x19d,{'Content-Type':_0x52a0e2(0x19e)}),_0x573c2b[_0x52a0e2(0x171)](JSON['stringify']({'error':_0x52a0e2(0x253)})),setImmediate(()=>_0x9bad00[_0x52a0e2(0x228)]());return;}_0x130cc6+=_0x4fda83;}),_0x9bad00['on'](_0x546035(0x171),()=>{const _0x51d047=_0x546035;if(_0x5aa592||_0x9bad00[_0x51d047(0x15b)])return;const _0x200e43=safeJson(_0x130cc6),_0x446a17=typeof _0x200e43[_0x51d047(0x1c8)]===_0x51d047(0x22d)?_0x200e43[_0x51d047(0x1c8)]:undefined,_0x368960=typeof _0x200e43[_0x51d047(0x1bd)]===_0x51d047(0x22d)?_0x200e43[_0x51d047(0x1bd)]:undefined;if(!_0x446a17||typeof _0x446a17!==_0x51d047(0x22d)){_0x573c2b[_0x51d047(0x1e5)](0x190,{'Content-Type':_0x51d047(0x19e)}),_0x573c2b['end'](JSON['stringify']({'error':_0x51d047(0x221)}));return;}_0x573c2b[_0x51d047(0x1e5)](0xc8,{'Content-Type':_0x51d047(0x12c),'Cache-Control':_0x51d047(0x1b9),'Connection':'keep-alive'});const _0x1483fb=new index_js_1[(_0x51d047(0x222))]({'config':_0x12de7e,'sessionFile':_0x368960}),_0x24b86b=_0x166a38=>{const _0x56b097=_0x51d047;try{if(!_0x9bad00[_0x56b097(0x15b)]&&!_0x573c2b[_0x56b097(0x1e0)])_0x573c2b['write'](_0x166a38);}catch{_0x23f988['abort']();}};_0x1483fb[_0x51d047(0x147)](_0x446a17,_0x293a36=>{const _0x5bd7a0=_0x51d047;_0x4a82a3[_0x5bd7a0(0x1a4)](_0x293a36),_0x24b86b(_0x5bd7a0(0x1a6)+JSON[_0x5bd7a0(0x1e7)](_0x293a36)+'\x0a\x0a');},_0x23f988[_0x51d047(0x23a)])[_0x51d047(0x169)](()=>{const _0x320a59=_0x51d047;_0x24b86b(_0x320a59(0x192));try{if(!_0x9bad00[_0x320a59(0x15b)]&&!_0x573c2b['writableEnded'])_0x573c2b['end']();}catch{}})[_0x51d047(0x1db)](_0x370089=>{const _0x19ccac=_0x51d047;_0x24b86b(_0x19ccac(0x1a6)+JSON['stringify']({'error':String(_0x370089)})+'\x0a\x0a');try{if(!_0x9bad00['destroyed']&&!_0x573c2b[_0x19ccac(0x1e0)])_0x573c2b[_0x19ccac(0x171)]();}catch{}});});return;}_0x573c2b[_0x546035(0x1e5)](0x194,{'Content-Type':_0x546035(0x19e)}),_0x573c2b[_0x546035(0x171)](JSON[_0x546035(0x1e7)]({'error':_0x546035(0x1f8)}));});return _0x92737f['listen'](_0x16c3c3,_0x114a75,()=>{const _0x549829=_0x34920a;process[_0x549829(0x247)][_0x549829(0x191)](_0x549829(0x25e)+_0x114a75+':'+_0x16c3c3+'\x0a'),_0x3636db&&_0x6cadcc&&process[_0x549829(0x247)][_0x549829(0x191)](_0x549829(0x1fc)+_0x6cadcc+'\x0a');}),Object[_0x34920a(0x23d)](_0x92737f,'effectiveToken',{'value':_0x6cadcc??'','enumerable':![]}),_0x92737f;}function safeJson(_0xd59bea){const _0x22325f=_0x2f5ce0;try{return JSON[_0x22325f(0x1fb)](_0xd59bea);}catch{return{};}}let githubJobQueue=Promise[_0x2f5ce0(0x230)]();function _0x3e33(_0x52ff30,_0x328b0a){_0x52ff30=_0x52ff30-0x109;const _0xc751d4=_0xc751();let _0x3e339b=_0xc751d4[_0x52ff30];return _0x3e339b;}function enqueueGithubJob(_0x5ef1d4,_0x244014){const _0x21c586=_0x2f5ce0,_0x2883bf=githubJobQueue[_0x21c586(0x169)](()=>runGithubJob(_0x5ef1d4,_0x244014))[_0x21c586(0x1db)](_0x384d62=>{const _0xc3bdc7=_0x21c586;return process[_0xc3bdc7(0x13d)][_0xc3bdc7(0x191)](_0xc3bdc7(0x17b)+(_0x384d62 instanceof Error?_0x384d62['message']:String(_0x384d62))+'\x0a'),'';});return githubJobQueue=_0x2883bf[_0x21c586(0x169)](()=>undefined),_0x2883bf;}async function postGithubComment(_0x358d4e,_0xa1cf25,_0x4cfa6a,_0x1d2a1a,_0x401403){const _0x23baec=_0x2f5ce0;try{const _0xb71b95=await fetch('https://api.github.com/repos/'+_0x358d4e+'/'+_0xa1cf25+'/issues/'+_0x4cfa6a+_0x23baec(0x1ac),{'method':'POST','headers':{'Accept':_0x23baec(0x18d),'User-Agent':_0x23baec(0x1a9),'Authorization':_0x23baec(0x190)+_0x401403,'Content-Type':_0x23baec(0x19e),'X-GitHub-Api-Version':_0x23baec(0x176)},'body':JSON[_0x23baec(0x1e7)]({'body':_0x1d2a1a['slice'](0x0,0xfa0)}),'signal':AbortSignal[_0x23baec(0x207)](0x4e20)});return _0xb71b95['status']===0xc9;}catch{return![];}}async function allInstalledRepos(){const _0x233a85=_0x2f5ce0,_0x3f85f5=githubAppJwt();if(!_0x3f85f5)return[];try{const _0x24a46b=await fetch(_0x233a85(0x111),{'headers':{'Accept':_0x233a85(0x18d),'User-Agent':_0x233a85(0x1a9),'Authorization':_0x233a85(0x190)+_0x3f85f5,'X-GitHub-Api-Version':_0x233a85(0x176)},'signal':AbortSignal[_0x233a85(0x207)](0x4e20)}),_0x5a09ef=await _0x24a46b[_0x233a85(0x131)]();if(!_0x24a46b['ok']||!Array['isArray'](_0x5a09ef))return[];const _0x312ca2=[];for(const _0x3805de of _0x5a09ef){if(typeof _0x3805de?.['id']!==_0x233a85(0x1b5))continue;const _0x427c76=await installationTokenFor(_0x3805de['id']);if(!_0x427c76)continue;const _0x58af30=await githubApi('/installation/repositories?per_page=100',_0x427c76);if(_0x58af30[_0x233a85(0x166)]!==0xc8||!_0x58af30[_0x233a85(0x131)]||typeof _0x58af30[_0x233a85(0x131)]!=='object')continue;const _0x5135e0=_0x58af30['json'][_0x233a85(0x110)];if(!Array[_0x233a85(0x150)](_0x5135e0))continue;for(const _0x2a999d of _0x5135e0){_0x2a999d&&typeof _0x2a999d===_0x233a85(0x231)&&typeof _0x2a999d[_0x233a85(0x18c)]===_0x233a85(0x22d)&&_0x312ca2[_0x233a85(0x233)](_0x2a999d[_0x233a85(0x18c)][_0x233a85(0x16e)]());}}return[...new Set(_0x312ca2)];}catch{return[];}}function githubAppJwt(){const _0x208088=_0x2f5ce0,_0x21691d=(process.env.GITHUB_APP_ID??'')[_0x208088(0x21c)]();let _0x3ca979=(process.env.GITHUB_PRIVATE_KEY??'')[_0x208088(0x21c)]();if(!_0x21691d||!_0x3ca979)return'';if(!_0x3ca979[_0x208088(0x12b)]('BEGIN'))try{_0x3ca979=(0x0,node_fs_1[_0x208088(0x158)])(_0x3ca979,'utf8');}catch{return'';}try{return(0x0,github_app_js_1[_0x208088(0x181)])(_0x21691d,_0x3ca979);}catch{return'';}}async function installationIdForOwner(_0x302f3c){const _0x2e76e7=_0x2f5ce0,_0xaf0edf=githubAppJwt();if(!_0xaf0edf)return 0x0;try{const _0x44d025=await fetch('https://api.github.com/app/installations',{'headers':{'Accept':_0x2e76e7(0x18d),'User-Agent':_0x2e76e7(0x1a9),'Authorization':_0x2e76e7(0x190)+_0xaf0edf,'X-GitHub-Api-Version':_0x2e76e7(0x176)},'signal':AbortSignal[_0x2e76e7(0x207)](0x4e20)}),_0x5aa5a9=await _0x44d025[_0x2e76e7(0x131)]();if(!_0x44d025['ok']||!Array[_0x2e76e7(0x150)](_0x5aa5a9))return 0x0;const _0x4adc16=_0x5aa5a9['find'](_0x100289=>_0x100289&&typeof _0x100289['account']?.[_0x2e76e7(0x20e)]===_0x2e76e7(0x22d)&&_0x100289['account']['login'][_0x2e76e7(0x16e)]()===_0x302f3c['toLowerCase']());return typeof _0x4adc16?.['id']===_0x2e76e7(0x1b5)?_0x4adc16['id']:0x0;}catch{return 0x0;}}async function installationTokenFor(_0x2c7a52){const _0x2e651b=_0x2f5ce0,_0x2fd1bc=githubAppJwt();if(!_0x2fd1bc||!_0x2c7a52)return'';try{const _0x4a94e5=process.env.GITHUB_API_BASE??'https://api.github.com';return await(0x0,github_app_js_1[_0x2e651b(0x235)])(_0x4a94e5,_0x2fd1bc,_0x2c7a52);}catch{return'';}}function licenseMachineId(_0x2204c8){const _0x5392c5=_0x2f5ce0;if(typeof _0x2204c8!==_0x5392c5(0x22d))return'';const _0x2e7efb=_0x2204c8[_0x5392c5(0x21c)]();return _0x2e7efb[_0x5392c5(0x14d)]>=0x4&&_0x2e7efb['length']<=0x80?_0x2e7efb:'';}async function githubApi(_0x2c7b8d,_0x576f13,_0x2cbe87=0x4e20){const _0x478864=_0x2f5ce0;try{const _0x55aea4=await fetch(_0x478864(0x21f)+_0x2c7b8d,{'headers':{'Accept':_0x478864(0x18d),'User-Agent':_0x478864(0x1a9),'Authorization':'Bearer\x20'+_0x576f13,'X-GitHub-Api-Version':_0x478864(0x176)},'signal':AbortSignal['timeout'](_0x2cbe87)});let _0x31ebee=null;try{_0x31ebee=await _0x55aea4[_0x478864(0x131)]();}catch{}return{'status':_0x55aea4[_0x478864(0x166)],'json':_0x31ebee};}catch{return{'status':0x0,'json':null};}}function clientIp(_0x5cde94){const _0x27f48e=_0x2f5ce0,_0x9f513a=_0x23e027=>(Array['isArray'](_0x23e027)?_0x23e027[0x0]:_0x23e027)?.[_0x27f48e(0x1d5)](',')[0x0]?.[_0x27f48e(0x21c)]()??'';return _0x9f513a(_0x5cde94['headers'][_0x27f48e(0x201)])||_0x9f513a(_0x5cde94['headers'][_0x27f48e(0x133)])||_0x9f513a(_0x5cde94[_0x27f48e(0x254)][_0x27f48e(0x1ef)])||_0x5cde94['socket']['remoteAddress']||'unknown';}async function runGithubJob(_0x1f9406,_0xded2dd){const _0x30996e=_0x2f5ce0,_0x2270ab=process.env.GITHUB_API_BASE??_0x30996e(0x21f),_0x1f929e=new Date()[_0x30996e(0x129)]();process[_0x30996e(0x247)][_0x30996e(0x191)](_0x30996e(0x211)+_0x1f9406[_0x30996e(0x139)]+'#'+_0x1f9406[_0x30996e(0x165)]+_0x30996e(0x216)+_0x1f929e+'\x0a');const _0x343bf4=process.env.TRAYAMBAK_GITHUB_WORKSPACE??(0x0,index_js_1[_0x30996e(0x225)])()[_0x30996e(0x21e)],_0x4c7d70=(0x0,index_js_1['loadConfig'])(),_0x1b8179={..._0x4c7d70,'cwd':_0x343bf4,'permissions':{..._0x4c7d70[_0x30996e(0x1d3)],'rulesV2':[..._0x4c7d70['permissions']?.[_0x30996e(0x1f1)]??[],{'tool':_0x30996e(0x18f),'action':_0x30996e(0x160),'reason':_0x30996e(0x185)}]}},_0x31d98b=new index_js_1['Agent']({'config':_0x1b8179}),_0x3d631d=process.env.GITHUB_APP_ID??'';let _0x5b0b61=process.env.GITHUB_PRIVATE_KEY??'';if(_0x5b0b61&&!_0x5b0b61['includes'](_0x30996e(0x196))){const _0x366a9c=await Promise['resolve']()['then'](()=>__importStar(require('node:fs')));try{_0x5b0b61=_0x366a9c['readFileSync'](_0x5b0b61,_0x30996e(0x23e));}catch{_0x5b0b61='';}}const _0x2c5503=_0xded2dd?.[_0x30996e(0x15a)],_0x36cc54=typeof _0x2c5503?.['id']===_0x30996e(0x1b5)?_0x2c5503['id']:0x0;let _0x2ee529='';if(_0x3d631d&&_0x5b0b61&&_0x36cc54)try{_0x2ee529=await(0x0,github_app_js_1[_0x30996e(0x235)])(_0x2270ab,(0x0,github_app_js_1[_0x30996e(0x181)])(_0x3d631d,_0x5b0b61),_0x36cc54);}catch(_0x401f1d){process[_0x30996e(0x247)][_0x30996e(0x191)]('[github-app]\x20installation\x20token\x20mint\x20failed:\x20'+(_0x401f1d instanceof Error?_0x401f1d[_0x30996e(0x186)]:String(_0x401f1d))+'\x0a');}let _0x2c5e63=[],_0xdbdd21='';const _0x4e2d03=[],_0x294806=[],_0x8927e7=_0x122ce9=>{const _0x189ddf=_0x30996e;try{if(_0x122ce9?.[_0x189ddf(0x1f2)]==='budget_exhausted'){_0x4e2d03[_0x189ddf(0x233)](_0x189ddf(0x255)+(typeof _0x122ce9[_0x189ddf(0x144)]===_0x189ddf(0x1b5)?_0x122ce9[_0x189ddf(0x144)]:'?')+_0x189ddf(0x21a)+(typeof _0x122ce9[_0x189ddf(0x177)]===_0x189ddf(0x1b5)?_0x122ce9[_0x189ddf(0x177)]:'?')+_0x189ddf(0x256));return;}if(_0x122ce9?.[_0x189ddf(0x1f2)]===_0x189ddf(0x22b)){const _0x3eb547=_0x122ce9['message'];if(_0x3eb547?.[_0x189ddf(0x128)]===_0x189ddf(0x1f3)&&Array[_0x189ddf(0x150)](_0x3eb547['content'])){const _0x20a67e=_0x3eb547['content'][_0x189ddf(0x22a)](_0x245a31=>!!_0x245a31&&typeof _0x245a31===_0x189ddf(0x231)&&_0x245a31[_0x189ddf(0x1f2)]===_0x189ddf(0x1d7))[_0x189ddf(0x1a2)](_0x189214=>_0x189214['text'])['join']('\x0a')[_0x189ddf(0x21c)]();if(_0x20a67e)_0x4e2d03[_0x189ddf(0x233)](_0x20a67e);}if(_0x3eb547?.[_0x189ddf(0x17c)]===_0x189ddf(0x1c0)&&Array[_0x189ddf(0x150)](_0x3eb547[_0x189ddf(0x124)])){const _0x10641f=_0x3eb547[_0x189ddf(0x124)]['filter'](_0xfc9b19=>!!_0xfc9b19&&typeof _0xfc9b19===_0x189ddf(0x231)&&_0xfc9b19[_0x189ddf(0x1f2)]===_0x189ddf(0x1d7))[_0x189ddf(0x1a2)](_0x12857f=>_0x12857f[_0x189ddf(0x1d7)])[_0x189ddf(0x1eb)]('\x0a');_0x10641f&&/fail|error|denied|not found|404|401|403|refus/i[_0x189ddf(0x1f9)](_0x10641f)&&_0x294806['push'](_0x10641f['slice'](0x0,0x12c));}}}catch{}};try{const _0x362771=process.env.GITHUB_TOKEN;if(_0x2ee529)process.env.GITHUB_TOKEN=_0x2ee529;const _0x3919df=(0x0,github_app_js_1[_0x30996e(0x12e)])(_0xded2dd);try{_0x2c5e63=await _0x31d98b[_0x30996e(0x147)](_0x30996e(0x1ca)+_0x1f9406[_0x30996e(0x139)]+(_0x1f9406[_0x30996e(0x1b2)]?_0x30996e(0x23b):'\x20(issue')+'\x20#'+_0x1f9406[_0x30996e(0x165)]+'):\x0a'+_0x1f9406[_0x30996e(0x20d)]+_0x30996e(0x10a)+(_0x3919df?_0x30996e(0x127)+_0x3919df:''),_0x8927e7);}finally{if(_0x2ee529){if(_0x362771===undefined)delete process.env.GITHUB_TOKEN;else process.env.GITHUB_TOKEN=_0x362771;}}}catch(_0x55ae8b){_0xdbdd21=_0x55ae8b instanceof Error?_0x55ae8b[_0x30996e(0x186)]:String(_0x55ae8b);}const _0xef0611=(0x0,github_app_js_1[_0x30996e(0x1e3)])(_0x2c5e63,_0xdbdd21,_0x4e2d03);(0x0,github_jobs_js_1[_0x30996e(0x1f0)])({'repo':_0x1f9406[_0x30996e(0x139)],'issue':_0x1f9406[_0x30996e(0x165)],'task':_0x1f9406[_0x30996e(0x20d)],'messages':_0x2c5e63['length'],'replyHead':_0xef0611,..._0xdbdd21?{'error':_0xdbdd21}:{}});const _0x445143=_0x2c5e63[_0x30996e(0x1a2)](_0x25e5bc=>{const _0x1b4631=_0x30996e,_0xfc9de2=Array[_0x1b4631(0x150)](_0x25e5bc[_0x1b4631(0x124)])?_0x25e5bc[_0x1b4631(0x124)]['map'](_0x58227b=>_0x58227b?.[_0x1b4631(0x1f2)]??'?')['join']('+'):typeof _0x25e5bc['content'];return(_0x25e5bc[_0x1b4631(0x17c)]??'?')+'['+_0xfc9de2+']';})[_0x30996e(0x1eb)]('\x20');process['stdout'][_0x30996e(0x191)](_0x30996e(0x211)+_0x1f9406[_0x30996e(0x139)]+'#'+_0x1f9406['issueNumber']+'\x20finished\x20('+_0x2c5e63[_0x30996e(0x14d)]+_0x30996e(0x20a)+(_0x445143||_0x30996e(0x236))+(_0xdbdd21?_0x30996e(0x1bb)+_0xdbdd21['slice'](0x0,0xc8):'')+(_0x294806['length']>0x0?_0x30996e(0x204)+_0x294806[_0x30996e(0x1eb)](_0x30996e(0x1a8))['slice'](0x0,0x258):'')+')\x0a');if(!_0x3d631d||!_0x5b0b61||!_0x36cc54||!_0x2ee529)return process['stdout']['write'](_0x30996e(0x240)+_0xef0611+'\x0a---\x20end\x20---\x0a'),_0xef0611;const {owner:_0x4c0679,repo:_0x10ad48}=(0x0,github_app_js_1[_0x30996e(0x13b)])(_0x1f9406[_0x30996e(0x139)]),_0x29334d=_0xef0611[_0x30996e(0x14d)]>0xea60?_0xef0611[_0x30996e(0x143)](0x0,0xea60)+'\x0a\x0a…(truncated,\x20full\x20log\x20on\x20the\x20VPS)':_0xef0611;return await(0x0,github_app_js_1[_0x30996e(0x14e)])({'apiBase':_0x2270ab,'token':_0x2ee529},_0x4c0679,_0x10ad48,_0x1f9406[_0x30996e(0x165)],_0x30996e(0x24d)+_0x29334d),process[_0x30996e(0x247)][_0x30996e(0x191)](_0x30996e(0x211)+_0x1f9406['repoFullName']+'#'+_0x1f9406[_0x30996e(0x165)]+_0x30996e(0x1de)),_0xef0611;}function _0xc751(){const _0x2d5d79=['record','string','plan\x20must\x20be\x20basic|pentest|pro|enterprise','allowed','resolve','object','__setModuleDefault','push','triaged','createInstallationToken','none','hasOwnProperty','has','Logged\x20in\x20as\x20<b>','signal','\x20(pull\x20request','trial\x20mint\x20failed:\x20','defineProperty','utf8','./license-store.js','[github-app]\x20job\x20done\x20but\x20no\x20reply\x20channel\x20(need\x20GITHUB_APP_ID\x20+\x20GITHUB_PRIVATE_KEY\x20+\x20installation\x20id\x20+\x20token\x20mint).\x0a---\x20result\x20---\x0a','Record\x20pentest\x20tool\x20usage\x20(public,\x20licensed)','code','model','defaultOAuthPath','Authorization\x20failed','./github-jobs.js','stdout','crypto','Windows\x20one-line\x20installer\x20(public)','NaN','license\x20invalid','/auth/github/callback','##\x20Trayambak\x20result\x0a\x0a','this\x20machine\x20already\x20has\x20a\x20live\x20trial\x20—\x20ask\x20SKT\x20for\x20a\x20full\x20key','::1','./install-ps1.js','ignored','consumeState','body\x20too\x20large\x20(max\x201MB)','headers','Budget\x20exhausted\x20(used\x20',')\x20—\x20the\x20run\x20stopped\x20before\x20the\x20model\x20was\x20called.','defaultTriageComment','created_at','/license/usage','Server\x20misconfigured','target','3.0.0','touch','trayambak\x20server\x20listening\x20on\x20http://','abort','exp','\x0a\x0aYou\x20have\x20repo\x20access\x20via\x20the\x20github\x20tool\x20(GITHUB_TOKEN\x20is\x20set\x20for\x20this\x20run)\x20—\x20read\x20the\x20actual\x20issue/PR\x20first\x20(read_issue),\x20never\x20claim\x20access\x20errors\x20without\x20trying\x20the\x20tool.\x20If\x20the\x20tool\x20says\x20Not\x20Found\x20on\x20the\x20repository\x20itself,\x20the\x20App\x20is\x20not\x20installed\x20there:\x20tell\x20the\x20user\x20to\x20install\x20it\x20(GitHub\x20App\x20settings\x20→\x20Install\x20App\x20→\x20that\x20repository)\x20instead\x20of\x20guessing\x20further.','GET','repo\x20must\x20be\x20owner/name','body','autofixTick','Tail\x20pentest\x20usage\x20telemetry\x20(bearer-gated)','repositories','https://api.github.com/app/installations','origin','unref','/admin','ran','revoked','../../../apps/runtime/src/license.js','trial','resolveCors','/webhooks/github','../../../apps/runtime/src/index.js','days\x20must\x20be\x201..3650','Run\x20agent\x20(SSE)','/license/verify','/comments?per_page=20','activate','/admin/import','port','</b>.\x20Return\x20to\x20the\x20CLI\x20—\x20it\x20picks\x20this\x20up\x20automatically.','content','licenseUsagePath','OPTIONS','\x0a\x0aContext\x20from\x20GitHub:\x0a','stopReason','toISOString','0:0:0:0:0:0:0:1','includes','text/event-stream','133afLdQn','describeGithubThread','unbind','searchParams','json','unknown\x20license\x20id','x-forwarded-for','&state=','byteLength','0.6.2','</p></body></html>','host','repoFullName','toString','splitRepo','token','stderr','/admin/usage','OPENAPI_SPEC','HTTP\x20','prototype','create','slice','used','usageFile','valid','run','activationCheckKey','get','../../session-backends/src/transcript.js','isFinite','now','length','postIssueComment','reason','isArray','bad\x20signature','/admin/revoke','boundMachineId','3322aZGJie','enterprise','getOwnPropertyDescriptor','Health\x20check','readFileSync','GitHub\x20login\x20required\x20—\x20run\x20/github\x20login\x20first','installation','destroyed','repo','hex','492276WZVfSH','./github-autofix.js','allow','http://localhost','Free\x20a\x20license\x27s\x20machine\x20binding\x20(bearer-gated)','36120voEEbW','error_description','issueNumber','status','defaultLicenseStorePaths','List\x20transcripts','then','access_token','Register\x20a\x20pre-existing\x20code\x20(bearer-gated)','createTelemetry','</h1><p>','toLowerCase','randomBytes','plan','end','GitHub:\x20','List\x20models','127.0.0.1','githubOAuthPath','2022-11-28','max','concat','too\x20many\x20login\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later','number\x20must\x20be\x20a\x20positive\x20issue/PR\x20number','[github-app]\x20job\x20failed:\x20','role','./github-app.js','\x20label=','machineId','licenseStorePath','createAppJwt','html_url',').\x20Run\x20/github\x20login\x20again.','checked','GitHub\x20App\x20job:\x20comment-authorized,\x20installation-token\x20scoped','message','timingSafeEqual','/user','/license/activate','origin\x20not\x20allowed','/repos/','full_name','application/vnd.github+json','/auth/github/logout','github','Bearer\x20','write','data:\x20[DONE]\x0a\x0a','title','/v1/agent','-…-','BEGIN','comments','10FngYnb','invalid\x20JSON','__esModule','<body><h1>','unauthorized','29VQnDAB','application/json','data','entries','missing\x20machineId/tool','map','[github-autofix]\x20watching\x20','capture','OpenAPI\x20spec','data:\x20','/v1/models','\x20||\x20','trayambak','storeToken','min','/comments','[github-autofix]\x20idle\x20(GITHUB_AUTOFIX_REPOS\x20unset)\x0a','Tail\x20GitHub\x20job\x20history\x20(bearer-gated)','/license/mint-trial','appendUsage','This\x20link\x20is\x20expired\x20or\x20already\x20used\x20(10-minute,\x20single-use).\x20Run\x20/github\x20login\x20in\x20the\x20CLI\x20again\x20for\x20a\x20fresh\x20one.','isPullRequest','__createBinding','github-user','number','webhooks\x20disabled\x20(GITHUB_WEBHOOK_SECRET\x20unset)','url','tail=','no-cache','\x20every\x20',',\x20error:\x20','<!doctype\x20html>\x0a<html\x20lang=\x22en\x22><head><meta\x20charset=\x22utf-8\x22><meta\x20name=\x22viewport\x22\x20content=\x22width=device-width,initial-scale=1\x22>\x0a<title>Trayambak\x20—\x20license\x20generator</title>\x0a<style>body{font-family:system-ui,sans-serif;max-width:560px;margin:3rem\x20auto;padding:0\x201rem;color:#111}label{display:block;margin:1rem\x200\x20.25rem;font-weight:600}input,select,button{font-size:1rem;padding:.5rem;width:100%;box-sizing:border-box}button{margin-top:1.25rem;background:#111;color:#fff;border:0;cursor:pointer}#out{margin-top:1.5rem;padding:1rem;background:#f4f4f4;word-break:break-all;display:none;font-family:monospace;font-size:1.2rem}#err{color:#b00;margin-top:1rem}pre{background:#f4f4f4;padding:1rem;overflow:auto;font-size:.8rem}</style>\x0a</head><body>\x0a<h1>Trayambak\x20license\x20generator</h1>\x0a<p>Bearer\x20token\x20is\x20asked\x20once\x20per\x20session\x20and\x20never\x20stored.\x20Minted\x20codes\x20are\x2016\x20letters,\x20always\x20<b>1102-…</b>,\x20verified\x20<b>live\x20by\x20this\x20server</b>\x20(registry\x20+\x201-machine\x20binding).</p>\x0a<p>Users\x20self-serve\x20a\x207-day\x20trial\x20from\x20the\x20TUI\x20(<b>/devmode\x20trial</b>\x20—\x201\x20live\x20trial\x20per\x20machine,\x20born\x20bound,\x205/hour\x20per\x20network).\x20Paid\x20keys\x20come\x20from\x20Mint\x20below.\x20Exploitation?\x20Find\x20the\x20key\x20id\x20in\x20<b>Usage</b>,\x20paste\x20it\x20under\x20<b>Revoke</b>\x20—\x20dead\x20in\x20one\x20click,\x20everywhere.</p>\x0a<label>Bearer\x20token\x20(TRAYAMBAK_WEB_TOKEN)<input\x20id=\x22token\x22\x20type=\x22password\x22\x20autocomplete=\x22off\x22></label>\x0a<label>Plan<select\x20id=\x22plan\x22><option\x20value=\x22pentest\x22>pentest</option><option\x20value=\x22pro\x22>pro</option><option\x20value=\x22enterprise\x22>enterprise</option><option\x20value=\x22basic\x22>basic</option></select></label>\x0a<label>Days\x20valid<input\x20id=\x22days\x22\x20type=\x22number\x22\x20value=\x22365\x22\x20min=\x221\x22\x20max=\x223650\x22></label>\x0a<label>Customer\x20id\x20(optional)<input\x20id=\x22cid\x22\x20type=\x22text\x22\x20placeholder=\x22acme-corp\x22></label>\x0a<button\x20id=\x22go\x22>Mint\x20license</button>\x0a<div\x20id=\x22err\x22></div>\x0a<div\x20id=\x22out\x22></div>\x0a<h2>Register\x20a\x20pre-existing\x20code</h2>\x0a<p>Legacy/offline-era\x20keys\x20must\x20be\x20imported\x20once\x20before\x20their\x20holders\x20can\x20activate\x20them.</p>\x0a<label>Code\x20to\x20import<input\x20id=\x22imp\x22\x20type=\x22text\x22\x20placeholder=\x221102-XXXX-XXXX-XXXX\x22></label>\x0a<label>Customer\x20id\x20(optional)<input\x20id=\x22impcid\x22\x20type=\x22text\x22></label>\x0a<button\x20id=\x22goimp\x22>Import\x20code</button>\x0a<h2>Licenses</h2>\x0a<button\x20id=\x22golist\x22>Refresh\x20list</button>\x0a<pre\x20id=\x22list\x22></pre>\x0a<h2>Usage\x20(latest\x20100)</h2>\x0a<button\x20id=\x22gouse\x22>Refresh\x20usage</button>\x0a<pre\x20id=\x22use\x22></pre>\x0a<h2>Revoke\x20/\x20unbind\x20by\x20id</h2>\x0a<label>License\x20id<input\x20id=\x22lid\x22\x20type=\x22text\x22></label>\x0a<button\x20id=\x22gorev\x22>Revoke</button>\x0a<button\x20id=\x22gounb\x22>Unbind\x20machine</button>\x0a<script>\x0aconst\x20auth\x20=\x20()\x20=>\x20({\x20\x22Content-Type\x22:\x20\x22application/json\x22,\x20\x22Authorization\x22:\x20\x22Bearer\x20\x22\x20+\x20document.getElementById(\x22token\x22).value\x20});\x0aconst\x20show\x20=\x20(el,\x20v)\x20=>\x20{\x20const\x20e\x20=\x20document.getElementById(el);\x20e.textContent\x20=\x20typeof\x20v\x20===\x20\x22string\x22\x20?\x20v\x20:\x20JSON.stringify(v,\x20null,\x202);\x20e.style.display\x20=\x20\x22block\x22;\x20};\x0adocument.getElementById(\x22go\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20err\x20=\x20document.getElementById(\x22err\x22),\x20out\x20=\x20document.getElementById(\x22out\x22);\x0a\x20\x20err.textContent\x20=\x20\x22\x22;\x20out.style.display\x20=\x20\x22none\x22;\x0a\x20\x20try\x20{\x0a\x20\x20\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/mint\x22,\x20{\x20method:\x20\x22POST\x22,\x0a\x20\x20\x20\x20\x20\x20headers:\x20auth(),\x0a\x20\x20\x20\x20\x20\x20body:\x20JSON.stringify({\x20plan:\x20document.getElementById(\x22plan\x22).value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20days:\x20Number(document.getElementById(\x22days\x22).value),\x0a\x20\x20\x20\x20\x20\x20\x20\x20id:\x20document.getElementById(\x22cid\x22).value\x20||\x20undefined\x20})\x20});\x0a\x20\x20\x20\x20const\x20j\x20=\x20await\x20r.json();\x0a\x20\x20\x20\x20if\x20(!r.ok)\x20throw\x20new\x20Error(j.error\x20||\x20(\x22HTTP\x20\x22\x20+\x20r.status));\x0a\x20\x20\x20\x20out.textContent\x20=\x20j.key;\x20out.style.display\x20=\x20\x22block\x22;\x0a\x20\x20}\x20catch\x20(e)\x20{\x20err.textContent\x20=\x20String((e\x20&&\x20e.message)\x20||\x20e);\x20}\x0a};\x0adocument.getElementById(\x22goimp\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20err\x20=\x20document.getElementById(\x22err\x22);\x0a\x20\x20err.textContent\x20=\x20\x22\x22;\x0a\x20\x20try\x20{\x0a\x20\x20\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/import\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20\x20\x20body:\x20JSON.stringify({\x20key:\x20document.getElementById(\x22imp\x22).value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20customer:\x20document.getElementById(\x22impcid\x22).value\x20||\x20undefined\x20})\x20});\x0a\x20\x20\x20\x20const\x20j\x20=\x20await\x20r.json();\x0a\x20\x20\x20\x20if\x20(!r.ok)\x20throw\x20new\x20Error(j.error\x20||\x20(\x22HTTP\x20\x22\x20+\x20r.status));\x0a\x20\x20\x20\x20show(\x22out\x22,\x20\x22imported\x20id\x20\x22\x20+\x20j.id\x20+\x20\x22\x20(\x22\x20+\x20j.plan\x20+\x20\x22)\x22);\x0a\x20\x20}\x20catch\x20(e)\x20{\x20err.textContent\x20=\x20String((e\x20&&\x20e.message)\x20||\x20e);\x20}\x0a};\x0adocument.getElementById(\x22golist\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/licenses\x22,\x20{\x20headers:\x20auth()\x20});\x0a\x20\x20show(\x22list\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gouse\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/usage?tail=100\x22,\x20{\x20headers:\x20auth()\x20});\x0a\x20\x20show(\x22use\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gorev\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/revoke\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20body:\x20JSON.stringify({\x20id:\x20document.getElementById(\x22lid\x22).value\x20})\x20});\x0a\x20\x20show(\x22out\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gounb\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/unbind\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20body:\x20JSON.stringify({\x20id:\x20document.getElementById(\x22lid\x22).value\x20})\x20});\x0a\x20\x20show(\x22out\x22,\x20await\x20r.json());\x0a};\x0a</script>\x0a</body></html>','sessionFile','Trayambak\x20Agent\x20API','/issues/','tool','mintActivationKey','default','too\x20many\x20trial\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later','function','/auth/github/status','/api/sessions','License\x20generator\x20UI\x20(SKT\x20operators)','prompt','INSTALL_PS1','GitHub\x20request\x20in\x20','mint\x20failed:\x20','../../telemetry/src/index.js','readUsageTail','verifyWebhookSignature','527560QzMKOs','/admin/unbind','parseAutofixRepos','Read\x20an\x20issue\x20+\x20comments\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','permissions','Authorized','split','all','text','set','user','days','catch',',\x20triaged\x20','defaultAutofixLedgerPath','\x20replied\x0a','/install.ps1','writableEnded','/admin/licenses','checkPentestOnly','selectJobReply','logout','writeHead','lastSeenAt','stringify','text/html;\x20charset=utf-8','setHeader','GitHubOAuthStore','join','key','customer','pentest','x-real-ip','recordJob','rulesV2','type','error','/github/read','/admin/mint','listTranscripts','kind','not\x20found','test','/auth/github/start','parse','generated\x20bearer\x20token\x20(set\x20TRAYAMBAK_WEB_TOKEN\x20to\x20avoid\x20this):\x20','./github-oauth.js','</title>','method','close','cf-connecting-ip','file','createdAt',',\x20toolDiags:\x20','missing\x20machineId','/health','timeout','state','Begin\x20CLI\x20GitHub\x20login,\x20returns\x20browser\x20URL\x20(public,\x20rate-limited)','\x20messages:\x20','basic','POST','task','login','text/plain;\x20charset=utf-8','GitHub\x20unreachable\x20from\x20the\x20license\x20server','[github-app]\x20job\x20','floor','Self-service\x207-day\x20trial,\x201/machine\x20(public,\x20rate-limited)','https://github.com/login/oauth/access_token','getOwnPropertyNames','\x20started\x20at\x20','[github-autofix]\x20tick:\x20checked\x20','register','933705WTBcAX','\x20of\x20','localhost','trim',',\x20ran\x20','cwd','https://api.github.com','LicenseStore','missing\x20\x27prompt\x27','Agent','876390IcLtiv','job','loadConfig','<style>body{font-family:system-ui,sans-serif;max-width:560px;margin:3rem\x20auto;padding:0\x201rem}</style></head>','writable','destroy','507552zpSimV','filter','message_end'];_0xc751=function(){return _0x2d5d79;};return _0xc751();}
1
+ 'use strict';const _0x372c81=_0x57ce;(function(_0x44438d,_0x351ace){const _0x482d30=_0x57ce,_0xe62ddd=_0x44438d();while(!![]){try{const _0x15a851=-parseInt(_0x482d30(0x215))/0x1*(parseInt(_0x482d30(0x250))/0x2)+parseInt(_0x482d30(0x240))/0x3+parseInt(_0x482d30(0x247))/0x4+-parseInt(_0x482d30(0x28f))/0x5+-parseInt(_0x482d30(0x1b0))/0x6+parseInt(_0x482d30(0x17b))/0x7*(parseInt(_0x482d30(0x263))/0x8)+parseInt(_0x482d30(0x2a0))/0x9*(parseInt(_0x482d30(0x221))/0xa);if(_0x15a851===_0x351ace)break;else _0xe62ddd['push'](_0xe62ddd['shift']());}catch(_0xf64122){_0xe62ddd['push'](_0xe62ddd['shift']());}}}(_0x3a9f,0x6c0af));var __createBinding=this&&this[_0x372c81(0x2a1)]||(Object['create']?function(_0x17d2c0,_0x25e246,_0x4b04a5,_0x287976){const _0x83278c=_0x372c81;if(_0x287976===undefined)_0x287976=_0x4b04a5;var _0x1b1d01=Object[_0x83278c(0x29d)](_0x25e246,_0x4b04a5);(!_0x1b1d01||(_0x83278c(0x13a)in _0x1b1d01?!_0x25e246[_0x83278c(0x1f5)]:_0x1b1d01[_0x83278c(0x1ea)]||_0x1b1d01[_0x83278c(0x15b)]))&&(_0x1b1d01={'enumerable':!![],'get':function(){return _0x25e246[_0x4b04a5];}}),Object[_0x83278c(0x16f)](_0x17d2c0,_0x287976,_0x1b1d01);}:function(_0x48ee82,_0x594445,_0xc9eb71,_0x248fbe){if(_0x248fbe===undefined)_0x248fbe=_0xc9eb71;_0x48ee82[_0x248fbe]=_0x594445[_0xc9eb71];}),__setModuleDefault=this&&this[_0x372c81(0x27f)]||(Object[_0x372c81(0x212)]?function(_0x3a45a2,_0x3c4295){const _0x44aabd=_0x372c81;Object['defineProperty'](_0x3a45a2,_0x44aabd(0x186),{'enumerable':!![],'value':_0x3c4295});}:function(_0x16d0ae,_0x51e095){_0x16d0ae['default']=_0x51e095;}),__importStar=this&&this[_0x372c81(0x1b4)]||(function(){var _0x45e8fc=function(_0x2dd3a7){const _0xf7d7f0=_0x57ce;return _0x45e8fc=Object[_0xf7d7f0(0x1e8)]||function(_0x13a81e){const _0xe8c3f7=_0xf7d7f0;var _0x26a1d1=[];for(var _0x2e31c4 in _0x13a81e)if(Object[_0xe8c3f7(0x23d)][_0xe8c3f7(0x28b)][_0xe8c3f7(0x284)](_0x13a81e,_0x2e31c4))_0x26a1d1[_0x26a1d1[_0xe8c3f7(0x20a)]]=_0x2e31c4;return _0x26a1d1;},_0x45e8fc(_0x2dd3a7);};return function(_0x2b2466){const _0x5621c8=_0x57ce;if(_0x2b2466&&_0x2b2466[_0x5621c8(0x1f5)])return _0x2b2466;var _0x43ca31={};if(_0x2b2466!=null){for(var _0x36497d=_0x45e8fc(_0x2b2466),_0x18ed8a=0x0;_0x18ed8a<_0x36497d[_0x5621c8(0x20a)];_0x18ed8a++)if(_0x36497d[_0x18ed8a]!==_0x5621c8(0x186))__createBinding(_0x43ca31,_0x2b2466,_0x36497d[_0x18ed8a]);}return __setModuleDefault(_0x43ca31,_0x2b2466),_0x43ca31;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['OPENAPI_SPEC']=void 0x0,exports['startServer']=startServer;const http=__importStar(require('http')),crypto_1=require(_0x372c81(0x299)),node_fs_1=require(_0x372c81(0x147)),node_path_1=require(_0x372c81(0x1b2)),index_js_1=require('../../../apps/runtime/src/index.js'),index_js_2=require(_0x372c81(0x187)),transcript_js_1=require('../../session-backends/src/transcript.js'),github_app_js_1=require(_0x372c81(0x286)),license_js_1=require(_0x372c81(0x20b)),license_store_js_1=require(_0x372c81(0x1dd)),github_oauth_js_1=require(_0x372c81(0x26c)),install_ps1_js_1=require(_0x372c81(0x272)),github_jobs_js_1=require(_0x372c81(0x23e)),github_autofix_js_1=require(_0x372c81(0x26d)),cors_js_1=require('./cors.js');function readJsonBody(_0x434035,_0x36dd76){return new Promise(_0x1a4539=>{const _0x1efe34=_0x57ce;let _0x1c6940='',_0xae0478=0x0,_0x53be68=![];const _0x363e44=(_0x21abca,_0x10772b)=>{const _0x28a7ca=_0x57ce;if(_0x53be68)return;_0x53be68=!![],_0x36dd76[_0x28a7ca(0x226)](_0x21abca,{'Content-Type':_0x28a7ca(0x273)}),_0x36dd76['end'](JSON[_0x28a7ca(0x255)]({'error':_0x10772b})),setImmediate(()=>_0x434035['destroy']());};_0x434035['on'](_0x1efe34(0x256),_0x3798d4=>{const _0x7d864f=_0x1efe34;if(_0x53be68)return;const _0x1570f0=typeof _0x3798d4===_0x7d864f(0x1b5)?_0x3798d4:_0x3798d4['toString'](_0x7d864f(0x27b));_0xae0478+=Buffer[_0x7d864f(0x1a2)](_0x1570f0);if(_0xae0478>MAX_BODY_BYTES){_0x363e44(0x19d,_0x7d864f(0x218));return;}_0x1c6940+=_0x1570f0;}),_0x434035['on'](_0x1efe34(0x239),()=>{const _0x28cade=_0x1efe34;if(_0x53be68||_0x434035[_0x28cade(0x1cc)])return;try{_0x1a4539(JSON['parse'](_0x1c6940));}catch{_0x363e44(0x190,_0x28cade(0x275)),_0x1a4539(null);}});});}function adminPage(){const _0x13c143=_0x372c81;return _0x13c143(0x19f);}const LOOPBACK_HOSTS=new Set([_0x372c81(0x18d),_0x372c81(0x23b),_0x372c81(0x29e),_0x372c81(0x19b)]),MAX_BODY_BYTES=0x100000;exports[_0x372c81(0x1ee)]={'openapi':_0x372c81(0x26b),'info':{'title':_0x372c81(0x25b),'version':_0x372c81(0x222)},'paths':{'/health':{'get':{'summary':_0x372c81(0x203)}},'/v1/models':{'get':{'summary':_0x372c81(0x266)}},'/v1/agent':{'post':{'summary':_0x372c81(0x160)}},'/api/sessions':{'get':{'summary':_0x372c81(0x179)}},'/admin':{'get':{'summary':'License\x20generator\x20UI\x20(SKT\x20operators)'}},'/admin/mint':{'post':{'summary':_0x372c81(0x2b0)}},'/admin/import':{'post':{'summary':_0x372c81(0x146)}},'/admin/revoke':{'post':{'summary':'Revoke\x20a\x20license\x20by\x20id\x20(bearer-gated)'}},'/admin/unbind':{'post':{'summary':'Free\x20a\x20license\x27s\x20machine\x20binding\x20(bearer-gated)'}},'/admin/licenses':{'get':{'summary':'List\x20licenses,\x20masked\x20(bearer-gated)'}},'/admin/usage':{'get':{'summary':_0x372c81(0x198)}},'/admin/jobs':{'get':{'summary':'Tail\x20GitHub\x20job\x20history\x20(bearer-gated)'}},'/license/verify':{'post':{'summary':_0x372c81(0x1ba)}},'/license/activate':{'post':{'summary':_0x372c81(0x1bf)}},'/license/mint-trial':{'post':{'summary':_0x372c81(0x2a2)}},'/auth/github/start':{'post':{'summary':_0x372c81(0x25e)}},'/auth/github/callback':{'get':{'summary':_0x372c81(0x1fd)}},'/auth/github/status':{'get':{'summary':_0x372c81(0x29c)}},'/auth/github/logout':{'post':{'summary':_0x372c81(0x220)}},'/github/read':{'post':{'summary':_0x372c81(0x253)}},'/github/repos':{'get':{'summary':_0x372c81(0x23a)}},'/github/write':{'post':{'summary':'Create/update\x20a\x20repo\x20file\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)'}},'/github/branch':{'post':{'summary':_0x372c81(0x282)}},'/github/pr':{'post':{'summary':'Open\x20a\x20repo\x20PR\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)'}},'/github/copy':{'post':{'summary':_0x372c81(0x1f8)}},'/img/:name':{'get':{'summary':_0x372c81(0x210)}},'/docs/:name':{'get':{'summary':_0x372c81(0x1f0)}},'/install.ps1':{'get':{'summary':_0x372c81(0x1ec)}},'/license/usage':{'post':{'summary':'Record\x20pentest\x20tool\x20usage\x20(public,\x20licensed)'}},'/webhooks/github':{'post':{'summary':'GitHub\x20App\x20webhook\x20(HMAC\x20verified)'}},'/openapi.json':{'get':{'summary':'OpenAPI\x20spec'}}}};function startServer(_0x53d852={}){const _0x27e5bc=_0x372c81,_0x5055bf=_0x53d852[_0x27e5bc(0x225)]??Number(process.env.TRAYAMBAK_SERVER_PORT??0x2253),_0x3b5a1f=_0x53d852[_0x27e5bc(0x142)]??_0x27e5bc(0x18d);let _0x2bfcfb=_0x53d852[_0x27e5bc(0x168)]??process.env.TRAYAMBAK_WEB_TOKEN;const _0x1ed990=_0x53d852[_0x27e5bc(0x1e9)]??process.env.TRAYAMBAK_WEB_ORIGINS??'';let _0x75d239=![];!_0x2bfcfb&&!LOOPBACK_HOSTS[_0x27e5bc(0x1d4)](_0x3b5a1f)&&(_0x2bfcfb=(0x0,crypto_1['randomBytes'])(0x20)[_0x27e5bc(0x2af)](_0x27e5bc(0x2b3)),_0x75d239=!![]);const _0x306fff=(0x0,index_js_1[_0x27e5bc(0x1bd)])(),_0x56dbcb=(0x0,index_js_2[_0x27e5bc(0x28a)])(![]),_0x35404f=(0x0,license_store_js_1[_0x27e5bc(0x269)])(),_0x4d0215=new license_store_js_1[(_0x27e5bc(0x14d))]({'file':_0x53d852[_0x27e5bc(0x153)]??_0x35404f[_0x27e5bc(0x177)],'usageFile':_0x53d852['licenseUsagePath']??_0x35404f[_0x27e5bc(0x259)]}),_0x20ef9f=new Set([_0x27e5bc(0x1ab),_0x27e5bc(0x25a),_0x27e5bc(0x224),'/license/mint-trial',_0x27e5bc(0x2ae),'/auth/github/start','/auth/github/callback',_0x27e5bc(0x190),_0x27e5bc(0x1aa),_0x27e5bc(0x292),_0x27e5bc(0x24e),'/github/write',_0x27e5bc(0x2bc),'/github/pr',_0x27e5bc(0x278),_0x27e5bc(0x235)]),_0x2b0c3f=_0x53d852[_0x27e5bc(0x1db)]??process.env.TRAYAMBAK_IMG_DIR??_0x27e5bc(0x1f1),_0x45a9a6=_0x53d852[_0x27e5bc(0x1ac)]??process.env.TRAYAMBAK_DOCS_DIR??_0x27e5bc(0x2aa),_0x299537=new Map(),_0x293893=0x5,_0x355afb=new Map(),_0x4794b5=0xa,_0x3f3e82=new github_oauth_js_1[(_0x27e5bc(0x148))](_0x53d852[_0x27e5bc(0x188)]??(0x0,github_oauth_js_1[_0x27e5bc(0x1d1)])()),_0x541b66=(0x0,github_autofix_js_1[_0x27e5bc(0x14c)])(process.env.GITHUB_AUTOFIX_REPOS),_0x12e364=(process.env.GITHUB_AUTOFIX_LABEL??_0x27e5bc(0x24f))['trim']()||_0x27e5bc(0x24f),_0x3defca=Math[_0x27e5bc(0x29a)](Math[_0x27e5bc(0x174)](Number(process.env.GITHUB_AUTOFIX_INTERVAL_MIN??0x1e)||0x1e,0x5),0x5a0),_0x411fb8=process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT===undefined?(0x0,github_autofix_js_1['defaultTriageComment'])(_0x12e364):process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT??'';if(_0x541b66[_0x27e5bc(0x20a)]>0x0){const _0x4ac649=new github_autofix_js_1[(_0x27e5bc(0x249))]((0x0,github_autofix_js_1[_0x27e5bc(0x245)])()),_0xbf4772=()=>{void((async()=>{const _0x5cba7a=_0x57ce;try{const _0x59b4d9=await(0x0,github_autofix_js_1[_0x5cba7a(0x170)])({'repos':_0x541b66,'label':_0x12e364,'ledger':_0x4ac649,'installationIdFor':installationIdForOwner,'tokenFor':installationTokenFor,'fetchJson':async(_0x5eda44,_0xe87420)=>{const _0x1d14ff=_0x5cba7a,_0x15b5b4=await githubApi(_0x5eda44,_0xe87420);return{'status':_0x15b5b4[_0x1d14ff(0x1a3)],'json':_0x15b5b4[_0x1d14ff(0x229)]};},'listAllRepos':allInstalledRepos,'postComment':async(_0x1aacb3,_0x5236a2,_0x28271c)=>{const _0x1970b1=_0x5cba7a,_0x32445a=_0x1aacb3[_0x1970b1(0x2ba)]('/')[0x0]??'',_0xebd6e9=await installationIdForOwner(_0x32445a)['catch'](()=>0x0);if(!_0xebd6e9)return![];const _0x49c577=await installationTokenFor(_0xebd6e9)[_0x1970b1(0x260)](()=>'');if(!_0x49c577)return![];return postGithubComment(_0x32445a,_0x1aacb3[_0x1970b1(0x2ba)]('/')[0x1]??'',_0x5236a2,_0x28271c,_0x49c577);},'triageComment':_0x411fb8,'runJob':(_0x15556c,_0x564c31,_0x259289,_0x2b0965)=>enqueueGithubJob({'repoFullName':_0x15556c,'issueNumber':_0x564c31,'task':_0x259289,'isPullRequest':![]},{'installation':{'id':_0x2b0965}})});(_0x59b4d9[_0x5cba7a(0x1a4)]>0x0||_0x59b4d9[_0x5cba7a(0x16c)]['length']>0x0||_0x59b4d9[_0x5cba7a(0x19c)]['length']>0x0)&&process['stdout']['write'](_0x5cba7a(0x208)+_0x59b4d9[_0x5cba7a(0x1a4)]+',\x20ran\x20'+_0x59b4d9[_0x5cba7a(0x16c)][_0x5cba7a(0x20a)]+_0x5cba7a(0x1df)+_0x59b4d9[_0x5cba7a(0x19c)]['length']+'\x0a');}catch(_0x176b90){process['stderr']['write'](_0x5cba7a(0x145)+(_0x176b90 instanceof Error?_0x176b90['message']:String(_0x176b90))+'\x0a');}})());},_0x2bed30=setInterval(_0xbf4772,_0x3defca*0xea60);if(typeof _0x2bed30['unref']===_0x27e5bc(0x295))_0x2bed30[_0x27e5bc(0x1f7)]();const _0x27f933=setTimeout(_0xbf4772,0x1d4c0);if(typeof _0x27f933[_0x27e5bc(0x1f7)]===_0x27e5bc(0x295))_0x27f933['unref']();process[_0x27e5bc(0x1c2)][_0x27e5bc(0x21a)](_0x27e5bc(0x17c)+_0x541b66[_0x27e5bc(0x24c)](',')+_0x27e5bc(0x163)+_0x12e364+_0x27e5bc(0x262)+_0x3defca+'m\x0a');}else process[_0x27e5bc(0x1c2)]['write'](_0x27e5bc(0x27c));const _0x4b8ed2=http['createServer'](async(_0x540bb8,_0x34ba4a)=>{const _0x1dd414=_0x27e5bc,_0x38015d=(0x0,cors_js_1[_0x1dd414(0x201)])(_0x540bb8[_0x1dd414(0x157)]['origin'],_0x540bb8[_0x1dd414(0x157)][_0x1dd414(0x142)],_0x1ed990);for(const [_0x18a086,_0x14aa1d]of Object['entries'](_0x38015d[_0x1dd414(0x157)])){_0x34ba4a[_0x1dd414(0x138)](_0x18a086,_0x14aa1d);}if(_0x540bb8['method']===_0x1dd414(0x23f)){_0x34ba4a['writeHead'](_0x38015d[_0x1dd414(0x26e)]?0xcc:0x193),_0x34ba4a['end']();return;}if(!_0x38015d[_0x1dd414(0x26e)]){_0x34ba4a[_0x1dd414(0x226)](0x193,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1dd414(0x1bc)}));return;}const _0x38440a=(_0x540bb8['url']??'/')[_0x1dd414(0x2ba)]('?')[0x0];if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a[_0x1dd414(0x233)](_0x1dd414(0x21c))){serveReadmeImage(_0x540bb8,_0x34ba4a,_0x2b0c3f,_0x38440a);return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a[_0x1dd414(0x233)](_0x1dd414(0x21b))){serveDocsFile(_0x540bb8,_0x34ba4a,_0x45a9a6,_0x38440a);return;}if(_0x2bfcfb&&_0x540bb8[_0x1dd414(0x2a5)]!=='/health'&&!_0x20ef9f[_0x1dd414(0x1d4)](_0x38440a)){const _0x47b494=Buffer[_0x1dd414(0x2b1)](_0x540bb8['headers']['authorization']??''),_0xd20448=Buffer[_0x1dd414(0x2b1)](_0x1dd414(0x140)+_0x2bfcfb),_0x2c5d3c=_0x47b494[_0x1dd414(0x20a)]===_0xd20448[_0x1dd414(0x20a)]&&_0x47b494[_0x1dd414(0x20a)]>0x0&&(0x0,crypto_1['timingSafeEqual'])(_0x47b494,_0xd20448);if(!_0x2c5d3c){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x244)}));return;}}if(_0x540bb8[_0x1dd414(0x183)]==='GET'&&_0x540bb8[_0x1dd414(0x2a5)]==='/health'){_0x34ba4a['writeHead'](0xc8,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON['stringify']({'status':'ok','model':_0x306fff[_0x1dd414(0x2a4)]}));return;}if(_0x540bb8['method']==='GET'&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x1fc)){_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)](exports[_0x1dd414(0x1ee)]));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x279)){_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)});try{_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'sessions':(0x0,transcript_js_1[_0x1dd414(0x167)])()}));}catch{_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'sessions':[]}));}return;}if(_0x540bb8['method']===_0x1dd414(0x18c)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x217)){_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'data':[{'id':_0x306fff[_0x1dd414(0x2a4)]}]}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x1ce)){_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x169)}),_0x34ba4a[_0x1dd414(0x239)](adminPage());return;}if(_0x540bb8['method']===_0x1dd414(0x14b)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x139)){const _0x8c73f7=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x8c73f7)return;const _0x289594=typeof _0x8c73f7[_0x1dd414(0x15d)]==='string'?_0x8c73f7[_0x1dd414(0x15d)]:'',_0xc73408=typeof _0x8c73f7[_0x1dd414(0x173)]===_0x1dd414(0x14a)?_0x8c73f7[_0x1dd414(0x173)]:Number[_0x1dd414(0x2ad)];if(_0x289594!==_0x1dd414(0x21e)&&_0x289594!==_0x1dd414(0x251)&&_0x289594!==_0x1dd414(0x1e2)&&_0x289594!=='enterprise'){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1dd414(0x178)}));return;}if(!Number[_0x1dd414(0x1fe)](_0xc73408)||_0xc73408<0x1||_0xc73408>0xe42){_0x34ba4a['writeHead'](0x190,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x159)}));return;}try{const _0x441a66=Math[_0x1dd414(0x1c8)](Date['now']()/0x5265c00),{activationEpochDays:_0xb0c4b5}=await Promise['resolve']()[_0x1dd414(0x149)](()=>__importStar(require('../../../apps/runtime/src/license.js'))),_0x44cc9d=(0x0,license_js_1['mintActivationKey'])({'plan':_0x289594,'expDays':_0x441a66-_0xb0c4b5()+Math[_0x1dd414(0x1c8)](_0xc73408)},(0x0,license_js_1['activationCheckKey'])()),_0x395d90=typeof _0x8c73f7['id']===_0x1dd414(0x1b5)?_0x8c73f7['id']:undefined,_0x3cd465=_0x4d0215[_0x1dd414(0x1c9)](_0x44cc9d,_0x395d90);_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'key':_0x44cc9d,'id':_0x3cd465['id']}));}catch(_0xee9e39){_0x34ba4a[_0x1dd414(0x226)](0x1f4,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x209)+(_0xee9e39 instanceof Error?_0xee9e39[_0x1dd414(0x1e5)]:String(_0xee9e39))}));}return;}if(_0x540bb8[_0x1dd414(0x183)]==='GET'&&_0x38440a===_0x1dd414(0x235)){_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x1dd414(0x228)}),_0x34ba4a[_0x1dd414(0x239)](install_ps1_js_1[_0x1dd414(0x20f)]);return;}if(_0x540bb8['method']===_0x1dd414(0x14b)&&_0x38440a===_0x1dd414(0x1ab)){const _0x4cedec=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x4cedec)return;const _0x34c281=licenseMachineId(_0x4cedec[_0x1dd414(0x1ad)]);if(!_0x34c281){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'valid':![],'reason':'missing\x20machineId'}));return;}const _0x3fab87=_0x4d0215[_0x1dd414(0x285)](typeof _0x4cedec[_0x1dd414(0x166)]==='string'?_0x4cedec['key']:'',_0x34c281);if(_0x3fab87[_0x1dd414(0x192)]===!![])_0x4d0215[_0x1dd414(0x1d3)](_0x3fab87[_0x1dd414(0x274)]?.['id']??'');_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'valid':_0x3fab87[_0x1dd414(0x192)],'plan':_0x3fab87['plan'],'exp':_0x3fab87[_0x1dd414(0x155)],'reason':_0x3fab87[_0x1dd414(0x271)]}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x38440a===_0x1dd414(0x25a)){const _0x4d12cb=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x4d12cb)return;const _0x14f51d=licenseMachineId(_0x4d12cb[_0x1dd414(0x1ad)]);if(!_0x14f51d){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':![],'reason':_0x1dd414(0x1e7)}));return;}const _0x27011e=_0x4d0215['activate'](typeof _0x4d12cb[_0x1dd414(0x166)]===_0x1dd414(0x1b5)?_0x4d12cb[_0x1dd414(0x166)]:'',_0x14f51d);_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':_0x27011e['ok'],'plan':_0x27011e[_0x1dd414(0x15d)],'exp':_0x27011e[_0x1dd414(0x155)],'reason':_0x27011e['reason']}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x38440a==='/license/usage'){const _0x1dc69a=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x1dc69a)return;const _0x23eafb=licenseMachineId(_0x1dc69a[_0x1dd414(0x1ad)]),_0x1e0c28=typeof _0x1dc69a[_0x1dd414(0x1f9)]===_0x1dd414(0x1b5)?_0x1dc69a[_0x1dd414(0x1f9)][_0x1dd414(0x1cf)](0x0,0x78):'';if(!_0x23eafb||!_0x1e0c28){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x22d)}));return;}const _0x1e8d9b=_0x4d0215[_0x1dd414(0x26f)](typeof _0x1dc69a[_0x1dd414(0x166)]==='string'?_0x1dc69a[_0x1dd414(0x166)]:'',_0x23eafb);if(_0x1e8d9b[_0x1dd414(0x192)]!==!![]){_0x34ba4a[_0x1dd414(0x226)](0x193,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1e8d9b[_0x1dd414(0x271)]??_0x1dd414(0x1d2)}));return;}_0x4d0215[_0x1dd414(0x1d3)](_0x1e8d9b['record']?.['id']??''),_0x4d0215[_0x1dd414(0x22b)]({'keyId':_0x1e8d9b[_0x1dd414(0x274)]?.['id']??'','machineId':_0x23eafb,'tool':_0x1e0c28,'target':typeof _0x1dc69a[_0x1dd414(0x21d)]===_0x1dd414(0x1b5)?_0x1dc69a[_0x1dd414(0x21d)][_0x1dd414(0x1cf)](0x0,0x12c):'','ok':_0x1dc69a['ok']!==![]}),_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![]}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x38440a==='/license/mint-trial'){const _0x1b13f2=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x1b13f2)return;const _0x92a6fc=licenseMachineId(_0x1b13f2[_0x1dd414(0x1ad)]);if(!_0x92a6fc){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':![],'reason':_0x1dd414(0x1e7)}));return;}const _0x36c46d=clientIp(_0x540bb8),_0x382089=Date[_0x1dd414(0x294)](),_0x4614b1=(_0x299537[_0x1dd414(0x13a)](_0x36c46d)??[])[_0x1dd414(0x241)](_0x3a2022=>_0x382089-_0x3a2022<0x36ee80);if(_0x4614b1[_0x1dd414(0x20a)]>=_0x293893){_0x34ba4a[_0x1dd414(0x226)](0x1ad,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':![],'reason':_0x1dd414(0x257)}));return;}_0x4614b1['push'](_0x382089),_0x299537[_0x1dd414(0x290)](_0x36c46d,_0x4614b1);if(_0x4d0215[_0x1dd414(0x19d)](_0x92a6fc)){_0x34ba4a[_0x1dd414(0x226)](0x199,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON['stringify']({'ok':![],'reason':_0x1dd414(0x14f)}));return;}try{const _0x3f92eb=Number(process.env.LICENSE_TRIAL_DAYS??0x7),_0x419b28=Math[_0x1dd414(0x29a)](Math[_0x1dd414(0x174)](Math[_0x1dd414(0x1c8)](Number[_0x1dd414(0x1fe)](_0x3f92eb)?_0x3f92eb:0x7),0x1),0x1e),_0xbf5be7=Math[_0x1dd414(0x1c8)](Date[_0x1dd414(0x294)]()/0x5265c00),{activationEpochDays:_0x36f7ff}=await Promise[_0x1dd414(0x213)]()[_0x1dd414(0x149)](()=>__importStar(require(_0x1dd414(0x20b)))),_0x3a0ff7=(0x0,license_js_1[_0x1dd414(0x281)])({'plan':_0x1dd414(0x251),'expDays':_0xbf5be7-_0x36f7ff()+_0x419b28},(0x0,license_js_1['activationCheckKey'])()),_0x4fa834=_0x4d0215[_0x1dd414(0x1c9)](_0x3a0ff7,_0x1dd414(0x199),{'trial':!![]}),_0x573874=_0x4d0215[_0x1dd414(0x267)](_0x3a0ff7,_0x92a6fc);_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':_0x573874['ok'],'key':_0x3a0ff7,'id':_0x4fa834['id'],'exp':_0x4fa834[_0x1dd414(0x155)],'days':_0x419b28}));}catch(_0x82ae3a){_0x34ba4a[_0x1dd414(0x226)](0x1f4,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':![],'reason':_0x1dd414(0x165)+(_0x82ae3a instanceof Error?_0x82ae3a[_0x1dd414(0x1e5)]:String(_0x82ae3a))}));}return;}if(_0x540bb8['method']===_0x1dd414(0x14b)&&_0x38440a===_0x1dd414(0x17e)){const _0x92cae9=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x92cae9)return;const _0x225c6a=licenseMachineId(_0x92cae9[_0x1dd414(0x1ad)]);if(!_0x225c6a){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON['stringify']({'ok':![],'reason':_0x1dd414(0x1e7)}));return;}const _0x49a26a=(process.env.GITHUB_CLIENT_ID??'')[_0x1dd414(0x1c6)]();if(!_0x49a26a){_0x34ba4a[_0x1dd414(0x226)](0x1f4,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'ok':![],'reason':_0x1dd414(0x24b)}));return;}const _0x3ce1ae=clientIp(_0x540bb8),_0x14382e=Date[_0x1dd414(0x294)](),_0x52289c=(_0x355afb[_0x1dd414(0x13a)](_0x3ce1ae)??[])[_0x1dd414(0x241)](_0x53564c=>_0x14382e-_0x53564c<0x36ee80);if(_0x52289c['length']>=_0x4794b5){_0x34ba4a[_0x1dd414(0x226)](0x1ad,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'ok':![],'reason':_0x1dd414(0x2b9)}));return;}_0x52289c[_0x1dd414(0x15c)](_0x14382e),_0x355afb[_0x1dd414(0x290)](_0x3ce1ae,_0x52289c);const _0x556c5f=_0x3f3e82[_0x1dd414(0x231)](_0x225c6a),_0x5cee53=_0x1dd414(0x2b6)+encodeURIComponent(_0x49a26a)+'&scope=repo&state='+_0x556c5f[_0x1dd414(0x1b8)];_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![],'url':_0x5cee53}));return;}if(_0x540bb8['method']==='GET'&&_0x38440a===_0x1dd414(0x156)){const _0x44c76d=(_0x2b2bbf,_0x1c108c,_0x5586b1)=>{const _0x50caf4=_0x1dd414;_0x34ba4a[_0x50caf4(0x226)](_0x5586b1?0xc8:0x190,{'Content-Type':'text/html;\x20charset=utf-8'}),_0x34ba4a[_0x50caf4(0x239)](_0x50caf4(0x154)+_0x2b2bbf+_0x50caf4(0x242)+_0x50caf4(0x176)+('<body><h1>'+_0x2b2bbf+_0x50caf4(0x200)+_0x1c108c+'</p></body></html>'));},_0x29fc87=new URL(_0x540bb8[_0x1dd414(0x2a5)]??'/','http://localhost')[_0x1dd414(0x29b)],_0x454a18=_0x29fc87[_0x1dd414(0x13a)](_0x1dd414(0x293))??'',_0x34b264=_0x29fc87[_0x1dd414(0x13a)](_0x1dd414(0x1b8))??'',_0x59edbc=_0x3f3e82[_0x1dd414(0x1fa)](_0x34b264);if(!_0x454a18||!_0x59edbc){_0x44c76d(_0x1dd414(0x202),'This\x20link\x20is\x20expired\x20or\x20already\x20used\x20(10-minute,\x20single-use).\x20Run\x20/github\x20login\x20in\x20the\x20CLI\x20again\x20for\x20a\x20fresh\x20one.',![]);return;}const _0x1bb5bb=(process.env.GITHUB_CLIENT_ID??'')[_0x1dd414(0x1c6)](),_0x51f27a=(process.env.GITHUB_CLIENT_SECRET??'')[_0x1dd414(0x1c6)]();if(!_0x1bb5bb||!_0x51f27a){_0x44c76d(_0x1dd414(0x1be),_0x1dd414(0x237),![]);return;}try{const _0x569b50=await fetch(_0x1dd414(0x1a6),{'method':_0x1dd414(0x14b),'headers':{'Content-Type':_0x1dd414(0x273),'Accept':_0x1dd414(0x273),'User-Agent':_0x1dd414(0x24f)},'body':JSON[_0x1dd414(0x255)]({'client_id':_0x1bb5bb,'client_secret':_0x51f27a,'code':_0x454a18}),'signal':AbortSignal[_0x1dd414(0x13f)](0x4e20)}),_0x21e351=await _0x569b50['json']();if(!_0x569b50['ok']||typeof _0x21e351[_0x1dd414(0x196)]!=='string'||!_0x21e351['access_token'])throw new Error(typeof _0x21e351[_0x1dd414(0x181)]===_0x1dd414(0x1b5)?_0x21e351['error_description']:_0x1dd414(0x268)+_0x569b50[_0x1dd414(0x1a3)]);const _0x1d7f2f=await githubApi(_0x1dd414(0x18f),_0x21e351[_0x1dd414(0x196)]),_0x54ab3e=_0x1d7f2f[_0x1dd414(0x229)]&&typeof _0x1d7f2f['json']===_0x1dd414(0x1d0)&&typeof _0x1d7f2f[_0x1dd414(0x229)][_0x1dd414(0x1b1)]==='string'?_0x1d7f2f[_0x1dd414(0x229)]['login']:_0x1dd414(0x1af);_0x3f3e82[_0x1dd414(0x29f)](_0x59edbc,_0x21e351[_0x1dd414(0x196)],_0x54ab3e),_0x44c76d(_0x1dd414(0x16b),_0x1dd414(0x24d)+_0x54ab3e+_0x1dd414(0x22a),!![]);}catch(_0x293be6){_0x44c76d(_0x1dd414(0x202),'Could\x20not\x20finish\x20login\x20('+(_0x293be6 instanceof Error?_0x293be6[_0x1dd414(0x1e5)]:String(_0x293be6))+').\x20Run\x20/github\x20login\x20again.',![]);}return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a===_0x1dd414(0x190)){const _0x403fd1=licenseMachineId(new URL(_0x540bb8[_0x1dd414(0x2a5)]??'/','http://localhost')['searchParams'][_0x1dd414(0x13a)](_0x1dd414(0x1ad))),_0x5a2923=_0x403fd1?_0x3f3e82['tokenFor'](_0x403fd1):undefined;_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify'](_0x5a2923?{'authorized':!![],'login':_0x5a2923[_0x1dd414(0x1b1)]}:{'authorized':![]}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x38440a===_0x1dd414(0x1aa)){const _0xaa3535=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0xaa3535)return;const _0x3b2314=licenseMachineId(_0xaa3535['machineId']);_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':_0x3b2314?_0x3f3e82['logout'](_0x3b2314):![]}));return;}if(_0x540bb8['method']===_0x1dd414(0x14b)&&_0x38440a==='/github/read'){const _0x4894d5=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x4894d5)return;const _0x54e4b2=licenseMachineId(_0x4894d5[_0x1dd414(0x1ad)]),_0x156c5e=_0x54e4b2?_0x3f3e82[_0x1dd414(0x172)](_0x54e4b2):undefined;if(!_0x156c5e){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x27e)}));return;}let _0x299a37='',_0x2497fd='';try{;({owner:_0x299a37,repo:_0x2497fd}=(0x0,github_app_js_1[_0x1dd414(0x144)])(typeof _0x4894d5[_0x1dd414(0x13e)]===_0x1dd414(0x1b5)?_0x4894d5[_0x1dd414(0x13e)]:''));}catch{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':'repo\x20must\x20be\x20owner/name'}));return;}const _0x3ef535=Math[_0x1dd414(0x1c8)](Number(_0x4894d5['number']));if(!Number[_0x1dd414(0x1fe)](_0x3ef535)||_0x3ef535<0x1){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1eb)}));return;}const _0x585749=_0x4894d5[_0x1dd414(0x2b7)]!==![],[_0x414fbc,_0x2af9ae]=await Promise[_0x1dd414(0x1de)]([githubApi(_0x1dd414(0x16e)+_0x299a37+'/'+_0x2497fd+_0x1dd414(0x276)+_0x3ef535,_0x156c5e[_0x1dd414(0x168)]),_0x585749?githubApi(_0x1dd414(0x16e)+_0x299a37+'/'+_0x2497fd+_0x1dd414(0x276)+_0x3ef535+'/comments?per_page=20',_0x156c5e[_0x1dd414(0x168)]):Promise[_0x1dd414(0x213)]({'status':0xc8,'json':[]})]);if(_0x414fbc[_0x1dd414(0x1a3)]===0x0){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1f3)}));return;}if(_0x414fbc[_0x1dd414(0x1a3)]!==0xc8||!_0x414fbc[_0x1dd414(0x229)]||typeof _0x414fbc[_0x1dd414(0x229)]!==_0x1dd414(0x1d0)){const _0x271c23=_0x414fbc[_0x1dd414(0x229)]&&typeof _0x414fbc['json']==='object'&&typeof _0x414fbc[_0x1dd414(0x229)][_0x1dd414(0x1e5)]===_0x1dd414(0x1b5)?_0x414fbc[_0x1dd414(0x229)][_0x1dd414(0x1e5)]:_0x1dd414(0x268)+_0x414fbc[_0x1dd414(0x1a3)];_0x34ba4a[_0x1dd414(0x226)](_0x414fbc[_0x1dd414(0x1a3)]===0x194?0x194:0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1dd414(0x1d6)+_0x271c23}));return;}const _0x5d313b=_0x414fbc[_0x1dd414(0x229)],_0xc7281a=Array[_0x1dd414(0x1f6)](_0x2af9ae['json'])?_0x2af9ae['json']:[];_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![],'issue':{'number':typeof _0x5d313b[_0x1dd414(0x14a)]==='number'?_0x5d313b['number']:_0x3ef535,'title':typeof _0x5d313b[_0x1dd414(0x214)]===_0x1dd414(0x1b5)?_0x5d313b['title']:'','state':typeof _0x5d313b[_0x1dd414(0x1b8)]===_0x1dd414(0x1b5)?_0x5d313b[_0x1dd414(0x1b8)]:'','author':_0x5d313b[_0x1dd414(0x236)]&&typeof _0x5d313b[_0x1dd414(0x236)]===_0x1dd414(0x1d0)&&typeof _0x5d313b['user']['login']===_0x1dd414(0x1b5)?_0x5d313b[_0x1dd414(0x236)][_0x1dd414(0x1b1)]:'','url':typeof _0x5d313b['html_url']===_0x1dd414(0x1b5)?_0x5d313b[_0x1dd414(0x22f)]:'','body':typeof _0x5d313b[_0x1dd414(0x252)]==='string'?_0x5d313b[_0x1dd414(0x252)]['slice'](0x0,0x1f40):'','commentsCount':typeof _0x5d313b[_0x1dd414(0x13b)]==='number'?_0x5d313b[_0x1dd414(0x13b)]:_0xc7281a[_0x1dd414(0x20a)],'isPullRequest':_0x5d313b[_0x1dd414(0x1ed)]!==undefined},'comments':_0xc7281a[_0x1dd414(0x241)](_0x2ae4b9=>!!_0x2ae4b9&&typeof _0x2ae4b9==='object')['slice'](-0x14)[_0x1dd414(0x2a7)](_0x4061e9=>({'author':_0x4061e9[_0x1dd414(0x236)]&&typeof _0x4061e9[_0x1dd414(0x236)]===_0x1dd414(0x1d0)&&typeof _0x4061e9['user'][_0x1dd414(0x1b1)]===_0x1dd414(0x1b5)?_0x4061e9[_0x1dd414(0x236)][_0x1dd414(0x1b1)]:'','body':typeof _0x4061e9[_0x1dd414(0x252)]===_0x1dd414(0x1b5)?_0x4061e9['body'][_0x1dd414(0x1cf)](0x0,0x7d0):'','createdAt':typeof _0x4061e9[_0x1dd414(0x1b3)]===_0x1dd414(0x1b5)?_0x4061e9[_0x1dd414(0x1b3)]:''}))}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a===_0x1dd414(0x24e)){const _0x22e9a4=licenseMachineId(new URL(_0x540bb8[_0x1dd414(0x2a5)]??'/',_0x1dd414(0x277))['searchParams'][_0x1dd414(0x13a)](_0x1dd414(0x1ad))),_0x5500bb=_0x22e9a4?_0x3f3e82['tokenFor'](_0x22e9a4):undefined;if(!_0x5500bb){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':'GitHub\x20login\x20required\x20—\x20run\x20/github\x20login\x20first'}));return;}const _0x1904fe=await githubApi(_0x1dd414(0x296),_0x5500bb[_0x1dd414(0x168)]);if(_0x1904fe[_0x1dd414(0x1a3)]===0x0){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1f3)}));return;}if(_0x1904fe[_0x1dd414(0x1a3)]!==0xc8||!Array[_0x1dd414(0x1f6)](_0x1904fe[_0x1dd414(0x229)])){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x1904fe['json'],_0x1904fe[_0x1dd414(0x1a3)])}));return;}_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![],'login':_0x5500bb[_0x1dd414(0x1b1)],'repos':_0x1904fe['json'][_0x1dd414(0x241)](_0x46adfb=>!!_0x46adfb&&typeof _0x46adfb===_0x1dd414(0x1d0))[_0x1dd414(0x2a7)](_0x1d95bf=>({'fullName':typeof _0x1d95bf['full_name']===_0x1dd414(0x1b5)?_0x1d95bf['full_name']:'','private':_0x1d95bf['private']===!![],'defaultBranch':typeof _0x1d95bf[_0x1dd414(0x20c)]===_0x1dd414(0x1b5)?_0x1d95bf['default_branch']:'main','updatedAt':typeof _0x1d95bf['updated_at']===_0x1dd414(0x1b5)?_0x1d95bf['updated_at']:''}))[_0x1dd414(0x241)](_0x5ead01=>_0x5ead01[_0x1dd414(0x2ac)]['length']>0x0)}));return;}if(_0x540bb8['method']==='POST'&&_0x38440a===_0x1dd414(0x1c5)){const _0x2be675=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x2be675)return;const _0xe5281d=licenseMachineId(_0x2be675[_0x1dd414(0x1ad)]),_0x345515=_0xe5281d?_0x3f3e82[_0x1dd414(0x172)](_0xe5281d):undefined;if(!_0x345515){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x27e)}));return;}let _0x207f77='',_0x167e35='';try{;({owner:_0x207f77,repo:_0x167e35}=(0x0,github_app_js_1[_0x1dd414(0x144)])(typeof _0x2be675[_0x1dd414(0x13e)]===_0x1dd414(0x1b5)?_0x2be675[_0x1dd414(0x13e)]:''));}catch{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x197)}));return;}const _0x453a47=typeof _0x2be675['path']==='string'?_0x2be675['path']['trim']()[_0x1dd414(0x17d)](/^\/+/,''):'';if(!_0x453a47||_0x453a47[_0x1dd414(0x2ba)]('/')[_0x1dd414(0x161)]('..')){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1b7)}));return;}const _0x5a12d5=typeof _0x2be675[_0x1dd414(0x1c7)]==='string'?_0x2be675[_0x1dd414(0x1c7)]:'';if(Buffer['byteLength'](_0x5a12d5,_0x1dd414(0x27b))>0x186a0){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1a7)}));return;}const _0x336117=typeof _0x2be675['message']===_0x1dd414(0x1b5)&&_0x2be675[_0x1dd414(0x1e5)][_0x1dd414(0x1c6)]()?_0x2be675[_0x1dd414(0x1e5)][_0x1dd414(0x1c6)]()[_0x1dd414(0x1cf)](0x0,0xc8):_0x1dd414(0x16a)+_0x453a47,_0x4e3d1c=typeof _0x2be675[_0x1dd414(0x2bb)]===_0x1dd414(0x1b5)&&_0x2be675[_0x1dd414(0x2bb)][_0x1dd414(0x1c6)]()?_0x2be675[_0x1dd414(0x2bb)][_0x1dd414(0x1c6)]():undefined,_0x244e94=_0x4e3d1c?'?ref='+encodeURIComponent(_0x4e3d1c):'',_0x3acfdf=await githubApi(_0x1dd414(0x16e)+_0x207f77+'/'+_0x167e35+_0x1dd414(0x175)+encodeContentPath(_0x453a47)+_0x244e94,_0x345515[_0x1dd414(0x168)]);let _0x3f213c;if(_0x3acfdf[_0x1dd414(0x1a3)]>=0xc8&&_0x3acfdf[_0x1dd414(0x1a3)]<0x12c){const _0x5bb2a3=_0x3acfdf[_0x1dd414(0x229)];if(!_0x5bb2a3||typeof _0x5bb2a3!==_0x1dd414(0x1d0)||_0x5bb2a3[_0x1dd414(0x17a)]===undefined||_0x5bb2a3[_0x1dd414(0x17a)]===_0x1dd414(0x177))_0x3f213c=typeof _0x5bb2a3?.[_0x1dd414(0x216)]===_0x1dd414(0x1b5)?_0x5bb2a3[_0x1dd414(0x216)]:undefined;else{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x453a47+'\x20exists\x20but\x20is\x20not\x20a\x20file\x20—\x20refusing\x20to\x20overwrite'}));return;}}else{if(_0x3acfdf[_0x1dd414(0x1a3)]!==0x194){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x3acfdf[_0x1dd414(0x229)],_0x3acfdf['status'])}));return;}}const _0x44725f=await githubApi(_0x1dd414(0x16e)+_0x207f77+'/'+_0x167e35+_0x1dd414(0x175)+encodeContentPath(_0x453a47),_0x345515['token'],0x4e20,{'method':'PUT','body':{'message':_0x336117,'content':Buffer[_0x1dd414(0x2b1)](_0x5a12d5,_0x1dd414(0x27b))[_0x1dd414(0x2af)](_0x1dd414(0x1cd)),..._0x3f213c?{'sha':_0x3f213c}:{},..._0x4e3d1c?{'branch':_0x4e3d1c}:{}}});if(_0x44725f[_0x1dd414(0x1a3)]<0xc8||_0x44725f[_0x1dd414(0x1a3)]>=0x12c){_0x34ba4a['writeHead'](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x44725f[_0x1dd414(0x229)],_0x44725f[_0x1dd414(0x1a3)])}));return;}const _0xe74ff2=_0x44725f[_0x1dd414(0x229)],_0x478e70=_0xe74ff2&&typeof _0xe74ff2===_0x1dd414(0x1d0)&&_0xe74ff2[_0x1dd414(0x158)]&&typeof _0xe74ff2[_0x1dd414(0x158)][_0x1dd414(0x216)]===_0x1dd414(0x1b5)?_0xe74ff2[_0x1dd414(0x158)][_0x1dd414(0x216)]:'';_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':!![],'commit':_0x478e70[_0x1dd414(0x1cf)](0x0,0x7)||null}));return;}if(_0x540bb8[_0x1dd414(0x183)]==='POST'&&_0x38440a==='/github/branch'){const _0x9e9c0e=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x9e9c0e)return;const _0x219b1f=licenseMachineId(_0x9e9c0e['machineId']),_0x437980=_0x219b1f?_0x3f3e82[_0x1dd414(0x172)](_0x219b1f):undefined;if(!_0x437980){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x27e)}));return;}let _0x5f2307='',_0x5c7324='';try{;({owner:_0x5f2307,repo:_0x5c7324}=(0x0,github_app_js_1[_0x1dd414(0x144)])(typeof _0x9e9c0e[_0x1dd414(0x13e)]==='string'?_0x9e9c0e[_0x1dd414(0x13e)]:''));}catch{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x197)}));return;}const _0x562537=typeof _0x9e9c0e[_0x1dd414(0x2bb)]==='string'?_0x9e9c0e[_0x1dd414(0x2bb)]['trim']():'';if(!/^[A-Za-z0-9][A-Za-z0-9/_.-]{0,120}$/[_0x1dd414(0x1e0)](_0x562537)){_0x34ba4a['writeHead'](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x18e)+_0x562537+'\x22'}));return;}const _0x15391a=await githubApi(_0x1dd414(0x16e)+_0x5f2307+'/'+_0x5c7324,_0x437980[_0x1dd414(0x168)]);if(_0x15391a[_0x1dd414(0x1a3)]<0xc8||_0x15391a[_0x1dd414(0x1a3)]>=0x12c){_0x34ba4a['writeHead'](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':'GitHub:\x20'+githubErrorMessage(_0x15391a[_0x1dd414(0x229)],_0x15391a[_0x1dd414(0x1a3)])}));return;}const _0x2ac328=_0x15391a[_0x1dd414(0x229)],_0x31cf78=typeof _0x9e9c0e[_0x1dd414(0x1c1)]==='string'&&_0x9e9c0e['base'][_0x1dd414(0x1c6)]()?_0x9e9c0e[_0x1dd414(0x1c1)]['trim']():_0x2ac328&&typeof _0x2ac328===_0x1dd414(0x1d0)&&typeof _0x2ac328[_0x1dd414(0x20c)]===_0x1dd414(0x1b5)?_0x2ac328['default_branch']:_0x1dd414(0x1e3),_0x361a2d=await githubApi(_0x1dd414(0x16e)+_0x5f2307+'/'+_0x5c7324+_0x1dd414(0x28e)+encodeURIComponent(_0x31cf78),_0x437980[_0x1dd414(0x168)]);if(_0x361a2d[_0x1dd414(0x1a3)]<0xc8||_0x361a2d[_0x1dd414(0x1a3)]>=0x12c){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON['stringify']({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x361a2d[_0x1dd414(0x229)],_0x361a2d['status'])}));return;}const _0xe49e42=_0x361a2d[_0x1dd414(0x229)],_0x47ad97=_0xe49e42&&typeof _0xe49e42===_0x1dd414(0x1d0)&&_0xe49e42[_0x1dd414(0x1d0)]&&typeof _0xe49e42[_0x1dd414(0x1d0)][_0x1dd414(0x216)]==='string'?_0xe49e42[_0x1dd414(0x1d0)][_0x1dd414(0x216)]:'';if(!_0x47ad97){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x25c)+_0x31cf78}));return;}const _0x3af0e6=await githubApi(_0x1dd414(0x16e)+_0x5f2307+'/'+_0x5c7324+_0x1dd414(0x1bb),_0x437980[_0x1dd414(0x168)],0x4e20,{'method':_0x1dd414(0x14b),'body':{'ref':_0x1dd414(0x15e)+_0x562537,'sha':_0x47ad97}});if(_0x3af0e6[_0x1dd414(0x1a3)]===0x1a6){_0x34ba4a[_0x1dd414(0x226)](0x199,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x243)+_0x562537+'\x20already\x20exists\x20—\x20write\x20onto\x20it\x20directly'}));return;}if(_0x3af0e6['status']<0xc8||_0x3af0e6['status']>=0x12c){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x3af0e6[_0x1dd414(0x229)],_0x3af0e6[_0x1dd414(0x1a3)])}));return;}_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![],'branch':_0x562537,'base':_0x31cf78}));return;}if(_0x540bb8[_0x1dd414(0x183)]==='POST'&&_0x38440a==='/github/pr'){const _0x1661f8=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x1661f8)return;const _0x4997f2=licenseMachineId(_0x1661f8['machineId']),_0x365fc2=_0x4997f2?_0x3f3e82[_0x1dd414(0x172)](_0x4997f2):undefined;if(!_0x365fc2){_0x34ba4a[_0x1dd414(0x226)](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x27e)}));return;}let _0x1503f6='',_0xfc0ca5='';try{;({owner:_0x1503f6,repo:_0xfc0ca5}=(0x0,github_app_js_1[_0x1dd414(0x144)])(typeof _0x1661f8['repo']===_0x1dd414(0x1b5)?_0x1661f8[_0x1dd414(0x13e)]:''));}catch{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':'repo\x20must\x20be\x20owner/name'}));return;}const _0x105649=typeof _0x1661f8[_0x1dd414(0x1f4)]===_0x1dd414(0x1b5)?_0x1661f8['head'][_0x1dd414(0x1c6)]():'',_0x666374=typeof _0x1661f8['title']===_0x1dd414(0x1b5)?_0x1661f8['title'][_0x1dd414(0x1c6)]():'';if(!_0x105649||!_0x666374){_0x34ba4a['writeHead'](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x206)}));return;}const _0x3b6f54=await githubApi('/repos/'+_0x1503f6+'/'+_0xfc0ca5+_0x1dd414(0x26a),_0x365fc2['token'],0x4e20,{'method':'POST','body':{'title':_0x666374['slice'](0x0,0xc8),'head':_0x105649,...typeof _0x1661f8[_0x1dd414(0x1c1)]===_0x1dd414(0x1b5)&&_0x1661f8[_0x1dd414(0x1c1)][_0x1dd414(0x1c6)]()?{'base':_0x1661f8['base'][_0x1dd414(0x1c6)]()}:{},'body':typeof _0x1661f8[_0x1dd414(0x252)]===_0x1dd414(0x1b5)?_0x1661f8[_0x1dd414(0x252)]['slice'](0x0,0x1f40):''}});if(_0x3b6f54[_0x1dd414(0x1a3)]<0xc8||_0x3b6f54[_0x1dd414(0x1a3)]>=0x12c){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x3b6f54[_0x1dd414(0x229)],_0x3b6f54[_0x1dd414(0x1a3)])}));return;}const _0x2d8dfc=_0x3b6f54[_0x1dd414(0x229)];_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'ok':!![],'number':_0x2d8dfc&&typeof _0x2d8dfc===_0x1dd414(0x1d0)&&typeof _0x2d8dfc[_0x1dd414(0x14a)]==='number'?_0x2d8dfc['number']:null,'url':_0x2d8dfc&&typeof _0x2d8dfc===_0x1dd414(0x1d0)&&typeof _0x2d8dfc['html_url']===_0x1dd414(0x1b5)?_0x2d8dfc[_0x1dd414(0x22f)]:''}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x38440a===_0x1dd414(0x278)){const _0x15b67d=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x15b67d)return;const _0x137608=licenseMachineId(_0x15b67d[_0x1dd414(0x1ad)]),_0x1a426d=_0x137608?_0x3f3e82[_0x1dd414(0x172)](_0x137608):undefined;if(!_0x1a426d){_0x34ba4a['writeHead'](0x191,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x27e)}));return;}let _0xe6b92c='',_0x5afcc2='';try{;({owner:_0xe6b92c,repo:_0x5afcc2}=(0x0,github_app_js_1[_0x1dd414(0x144)])(typeof _0x15b67d[_0x1dd414(0x13e)]===_0x1dd414(0x1b5)?_0x15b67d[_0x1dd414(0x13e)]:''));}catch{_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1dd414(0x197)}));return;}const _0x130c0c=typeof _0x15b67d[_0x1dd414(0x27a)]==='string'?_0x15b67d[_0x1dd414(0x27a)][_0x1dd414(0x1c6)]()['replace'](/^\/+/,''):'',_0x158fc2=typeof _0x15b67d[_0x1dd414(0x1e6)]===_0x1dd414(0x1b5)?_0x15b67d[_0x1dd414(0x1e6)][_0x1dd414(0x1c6)]()['replace'](/^\/+/,''):'';if(!_0x130c0c||!_0x158fc2||_0x130c0c['split']('/')['includes']('..')||_0x158fc2[_0x1dd414(0x2ba)]('/')[_0x1dd414(0x161)]('..')){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':'sourcePath\x20and\x20destPath\x20must\x20be\x20repo-relative\x20file\x20paths\x20(no\x20..)'}));return;}const _0x54e1b5=await githubApi(_0x1dd414(0x16e)+_0xe6b92c+'/'+_0x5afcc2+_0x1dd414(0x175)+encodeContentPath(_0x130c0c),_0x1a426d[_0x1dd414(0x168)]);if(_0x54e1b5[_0x1dd414(0x1a3)]<0xc8||_0x54e1b5['status']>=0x12c){_0x34ba4a[_0x1dd414(0x226)](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON['stringify']({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x54e1b5[_0x1dd414(0x229)],_0x54e1b5[_0x1dd414(0x1a3)])}));return;}const _0x4ffdb0=_0x54e1b5[_0x1dd414(0x229)];if(!_0x4ffdb0||typeof _0x4ffdb0!==_0x1dd414(0x1d0)||typeof _0x4ffdb0[_0x1dd414(0x1c7)]!==_0x1dd414(0x1b5)||!_0x4ffdb0['content']){_0x34ba4a['writeHead'](0x1f6,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x130c0c+'\x20has\x20no\x20retrievable\x20content'}));return;}const _0x210839=Buffer[_0x1dd414(0x2b1)](Buffer[_0x1dd414(0x2b1)](_0x4ffdb0[_0x1dd414(0x1c7)],'base64')[_0x1dd414(0x2af)](_0x1dd414(0x27b)),_0x1dd414(0x27b))['toString'](_0x1dd414(0x1cd)),_0x5272c2=await githubApi(_0x1dd414(0x16e)+_0xe6b92c+'/'+_0x5afcc2+_0x1dd414(0x175)+encodeContentPath(_0x158fc2),_0x1a426d[_0x1dd414(0x168)]);let _0x1a1d8c;if(_0x5272c2[_0x1dd414(0x1a3)]>=0xc8&&_0x5272c2['status']<0x12c){const _0x30e6d2=_0x5272c2['json'];_0x1a1d8c=_0x30e6d2&&typeof _0x30e6d2===_0x1dd414(0x1d0)&&typeof _0x30e6d2[_0x1dd414(0x216)]==='string'?_0x30e6d2[_0x1dd414(0x216)]:undefined;}const _0x20832e=await githubApi(_0x1dd414(0x16e)+_0xe6b92c+'/'+_0x5afcc2+_0x1dd414(0x175)+encodeContentPath(_0x158fc2),_0x1a426d[_0x1dd414(0x168)],0x4e20,{'method':_0x1dd414(0x180),'body':{'message':_0x1dd414(0x18a)+_0x130c0c+_0x1dd414(0x207)+_0x158fc2,'content':_0x210839,..._0x1a1d8c?{'sha':_0x1a1d8c}:{}}});if(_0x20832e[_0x1dd414(0x1a3)]<0xc8||_0x20832e[_0x1dd414(0x1a3)]>=0x12c){_0x34ba4a['writeHead'](0x1f6,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'error':_0x1dd414(0x1d6)+githubErrorMessage(_0x20832e['json'],_0x20832e['status'])}));return;}const _0x15d40f=_0x20832e[_0x1dd414(0x229)],_0x235f0a=_0x15d40f&&typeof _0x15d40f===_0x1dd414(0x1d0)&&_0x15d40f['commit']&&typeof _0x15d40f[_0x1dd414(0x158)][_0x1dd414(0x216)]==='string'?_0x15d40f[_0x1dd414(0x158)][_0x1dd414(0x216)]:'';_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![],'commit':_0x235f0a['slice'](0x0,0x7)||null}));return;}if(_0x540bb8['method']==='POST'&&_0x540bb8[_0x1dd414(0x2a5)]==='/admin/import'){const _0x1a542e=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x1a542e)return;try{const _0x943824=_0x4d0215['register'](typeof _0x1a542e[_0x1dd414(0x166)]===_0x1dd414(0x1b5)?_0x1a542e['key']:'',typeof _0x1a542e[_0x1dd414(0x19e)]===_0x1dd414(0x1b5)?_0x1a542e[_0x1dd414(0x19e)]:undefined);_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'id':_0x943824['id'],'plan':_0x943824[_0x1dd414(0x15d)]}));}catch(_0x29caed){_0x34ba4a[_0x1dd414(0x226)](0x190,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'error':_0x29caed instanceof Error?_0x29caed[_0x1dd414(0x1e5)]:String(_0x29caed)}));}return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x24a)){const _0x5e2ea0=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x5e2ea0)return;const _0x1bab33=typeof _0x5e2ea0['id']===_0x1dd414(0x1b5)?_0x5e2ea0['id']:'';if(!_0x1bab33||!_0x4d0215[_0x1dd414(0x223)](_0x1bab33)){_0x34ba4a[_0x1dd414(0x226)](0x194,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d9)}));return;}_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON[_0x1dd414(0x255)]({'ok':!![]}));return;}if(_0x540bb8['method']===_0x1dd414(0x14b)&&_0x540bb8[_0x1dd414(0x2a5)]==='/admin/unbind'){const _0x62708b=await readJsonBody(_0x540bb8,_0x34ba4a);if(!_0x62708b)return;const _0x162f8e=typeof _0x62708b['id']===_0x1dd414(0x1b5)?_0x62708b['id']:'';if(!_0x162f8e||!_0x4d0215[_0x1dd414(0x185)](_0x162f8e)){_0x34ba4a[_0x1dd414(0x226)](0x194,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':_0x1dd414(0x1d9)}));return;}_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'ok':!![]}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a===_0x1dd414(0x22c)){const _0x524826=_0x4d0215[_0x1dd414(0x171)]()[_0x1dd414(0x2a7)](_0x14e0b6=>({'id':_0x14e0b6['id'],'key':_0x14e0b6[_0x1dd414(0x166)][_0x1dd414(0x1cf)](0x0,0x4)+_0x1dd414(0x14e)+_0x14e0b6['key'][_0x1dd414(0x1cf)](-0x4),'plan':_0x14e0b6['plan'],'exp':_0x14e0b6[_0x1dd414(0x155)],'customer':_0x14e0b6[_0x1dd414(0x19e)],'trial':_0x14e0b6[_0x1dd414(0x199)]===!![],'revoked':_0x14e0b6['revoked'],'bound':Boolean(_0x14e0b6['boundMachineId']),'machine':_0x14e0b6['boundMachineId']?_0x14e0b6['boundMachineId'][_0x1dd414(0x1cf)](0x0,0x8)+'…':undefined,'createdAt':_0x14e0b6[_0x1dd414(0x18b)],'lastSeenAt':_0x14e0b6['lastSeenAt']}));_0x34ba4a['writeHead'](0xc8,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON['stringify']({'licenses':_0x524826}));return;}if(_0x540bb8[_0x1dd414(0x183)]==='GET'&&_0x38440a===_0x1dd414(0x2b8)){const _0xcd2cc5=Number((_0x540bb8['url']??'')[_0x1dd414(0x2ba)](_0x1dd414(0x13c))[0x1]??0x64);_0x34ba4a['writeHead'](0xc8,{'Content-Type':'application/json'}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'usage':_0x4d0215['readUsageTail'](Number[_0x1dd414(0x1fe)](_0xcd2cc5)?_0xcd2cc5:0x64)}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x18c)&&_0x38440a===_0x1dd414(0x248)){const _0x397bff=Number((_0x540bb8[_0x1dd414(0x2a5)]??'')[_0x1dd414(0x2ba)](_0x1dd414(0x13c))[0x1]??0x64),{readJobTail:_0x1155d1}=await Promise[_0x1dd414(0x213)]()[_0x1dd414(0x149)](()=>__importStar(require('./github-jobs.js')));_0x34ba4a[_0x1dd414(0x226)](0xc8,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'jobs':_0x1155d1(Number[_0x1dd414(0x1fe)](_0x397bff)?_0x397bff:0x64)}));return;}if(_0x540bb8[_0x1dd414(0x183)]===_0x1dd414(0x14b)&&_0x540bb8[_0x1dd414(0x2a5)]===_0x1dd414(0x2ae)){const _0x13abea=process.env.GITHUB_WEBHOOK_SECRET??'';if(!_0x13abea){_0x34ba4a[_0x1dd414(0x226)](0x1f7,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a[_0x1dd414(0x239)](JSON[_0x1dd414(0x255)]({'error':'webhooks\x20disabled\x20(GITHUB_WEBHOOK_SECRET\x20unset)'}));return;}const _0x4f2190=[];let _0x2c4461=0x0,_0x1de186=![];_0x540bb8['on'](_0x1dd414(0x256),_0x4f3b89=>{const _0x5da59e=_0x1dd414;if(_0x1de186)return;const _0x35e16c=typeof _0x4f3b89===_0x5da59e(0x1b5)?Buffer[_0x5da59e(0x2b1)](_0x4f3b89,'utf8'):_0x4f3b89;_0x2c4461+=_0x35e16c[_0x5da59e(0x20a)];if(_0x2c4461>MAX_BODY_BYTES){_0x1de186=!![],_0x34ba4a[_0x5da59e(0x226)](0x19d,{'Content-Type':_0x5da59e(0x273)}),_0x34ba4a['end'](JSON['stringify']({'error':'body\x20too\x20large\x20(max\x201MB)'})),setImmediate(()=>_0x540bb8[_0x5da59e(0x1c3)]());return;}_0x4f2190[_0x5da59e(0x15c)](_0x35e16c);}),_0x540bb8['on'](_0x1dd414(0x239),()=>{const _0x472f50=_0x1dd414;if(_0x1de186||_0x540bb8[_0x472f50(0x1cc)])return;const _0x584cf=Buffer['concat'](_0x4f2190),_0x36082d=_0x540bb8[_0x472f50(0x157)][_0x472f50(0x1a0)];if(!(0x0,github_app_js_1['verifyWebhookSignature'])(_0x13abea,_0x584cf,Array[_0x472f50(0x1f6)](_0x36082d)?_0x36082d[0x0]:_0x36082d)){_0x34ba4a['writeHead'](0x191,{'Content-Type':_0x472f50(0x273)}),_0x34ba4a[_0x472f50(0x239)](JSON[_0x472f50(0x255)]({'error':_0x472f50(0x1cb)}));return;}let _0x552b15=null;try{_0x552b15=JSON[_0x472f50(0x270)](_0x584cf['toString']('utf8'));}catch{_0x34ba4a[_0x472f50(0x226)](0x190,{'Content-Type':_0x472f50(0x273)}),_0x34ba4a[_0x472f50(0x239)](JSON[_0x472f50(0x255)]({'error':_0x472f50(0x275)}));return;}const _0x3db97a=_0x540bb8[_0x472f50(0x157)][_0x472f50(0x164)],_0x20a379=(0x0,github_app_js_1['routeGithubEvent'])(Array[_0x472f50(0x1f6)](_0x3db97a)?_0x3db97a[0x0]??'':_0x3db97a??'',_0x552b15);if(_0x20a379[_0x472f50(0x1c0)]!==_0x472f50(0x194)){_0x34ba4a['writeHead'](0xc8,{'Content-Type':_0x472f50(0x273)}),_0x34ba4a[_0x472f50(0x239)](JSON[_0x472f50(0x255)]({'ok':!![],..._0x20a379['kind']===_0x472f50(0x2a3)?{'ignored':_0x20a379[_0x472f50(0x271)]}:{}}));return;}_0x34ba4a['writeHead'](0xca,{'Content-Type':'application/json'}),_0x34ba4a['end'](JSON[_0x472f50(0x255)]({'ok':!![],'accepted':!![]})),void enqueueGithubJob(_0x20a379[_0x472f50(0x194)],_0x552b15);});return;}if(_0x540bb8[_0x1dd414(0x183)]==='POST'&&_0x540bb8[_0x1dd414(0x2a5)]==='/v1/agent'){let _0x21595f='',_0x423299=0x0,_0x17e99a=![];const _0xb031ae=new AbortController();_0x540bb8['on']('close',()=>_0xb031ae[_0x1dd414(0x234)]()),_0x540bb8['on'](_0x1dd414(0x256),_0x284050=>{const _0x2fc8f8=_0x1dd414;if(_0x17e99a)return;const _0x402394=typeof _0x284050===_0x2fc8f8(0x1b5)?_0x284050:_0x284050['toString'](_0x2fc8f8(0x27b));_0x423299+=Buffer[_0x2fc8f8(0x1a2)](_0x402394);if(_0x423299>MAX_BODY_BYTES){_0x17e99a=!![],_0x34ba4a['writeHead'](0x19d,{'Content-Type':_0x2fc8f8(0x273)}),_0x34ba4a[_0x2fc8f8(0x239)](JSON[_0x2fc8f8(0x255)]({'error':_0x2fc8f8(0x218)})),setImmediate(()=>_0x540bb8[_0x2fc8f8(0x1c3)]());return;}_0x21595f+=_0x402394;}),_0x540bb8['on'](_0x1dd414(0x239),()=>{const _0x530450=_0x1dd414;if(_0x17e99a||_0x540bb8[_0x530450(0x1cc)])return;const _0x3ea1ae=safeJson(_0x21595f),_0x59d69d=typeof _0x3ea1ae[_0x530450(0x17f)]===_0x530450(0x1b5)?_0x3ea1ae[_0x530450(0x17f)]:undefined,_0x3b48ac=typeof _0x3ea1ae[_0x530450(0x265)]===_0x530450(0x1b5)?_0x3ea1ae['sessionFile']:undefined;if(!_0x59d69d||typeof _0x59d69d!==_0x530450(0x1b5)){_0x34ba4a[_0x530450(0x226)](0x190,{'Content-Type':_0x530450(0x273)}),_0x34ba4a[_0x530450(0x239)](JSON[_0x530450(0x255)]({'error':_0x530450(0x219)}));return;}_0x34ba4a[_0x530450(0x226)](0xc8,{'Content-Type':_0x530450(0x1a5),'Cache-Control':'no-cache','Connection':_0x530450(0x20e)});const _0x5cd2e3=new index_js_1[(_0x530450(0x227))]({'config':_0x306fff,'sessionFile':_0x3b48ac}),_0x3a1d96=_0x417c27=>{const _0x5b50d0=_0x530450;try{if(!_0x540bb8[_0x5b50d0(0x1cc)]&&!_0x34ba4a[_0x5b50d0(0x1d5)])_0x34ba4a['write'](_0x417c27);}catch{_0xb031ae[_0x5b50d0(0x234)]();}};_0x5cd2e3[_0x530450(0x193)](_0x59d69d,_0x3f65ff=>{const _0x3f4409=_0x530450;_0x56dbcb[_0x3f4409(0x1ef)](_0x3f65ff),_0x3a1d96(_0x3f4409(0x151)+JSON['stringify'](_0x3f65ff)+'\x0a\x0a');},_0xb031ae[_0x530450(0x1b9)])[_0x530450(0x149)](()=>{const _0x464838=_0x530450;_0x3a1d96(_0x464838(0x264));try{if(!_0x540bb8[_0x464838(0x1cc)]&&!_0x34ba4a[_0x464838(0x1d5)])_0x34ba4a[_0x464838(0x239)]();}catch{}})[_0x530450(0x260)](_0x168115=>{const _0x551b49=_0x530450;_0x3a1d96(_0x551b49(0x151)+JSON[_0x551b49(0x255)]({'error':String(_0x168115)})+'\x0a\x0a');try{if(!_0x540bb8[_0x551b49(0x1cc)]&&!_0x34ba4a[_0x551b49(0x1d5)])_0x34ba4a[_0x551b49(0x239)]();}catch{}});});return;}_0x34ba4a[_0x1dd414(0x226)](0x194,{'Content-Type':_0x1dd414(0x273)}),_0x34ba4a['end'](JSON['stringify']({'error':'not\x20found'}));});return _0x4b8ed2[_0x27e5bc(0x1ca)](_0x5055bf,_0x3b5a1f,()=>{const _0x96d0e5=_0x27e5bc;process[_0x96d0e5(0x1c2)]['write']('trayambak\x20server\x20listening\x20on\x20http://'+_0x3b5a1f+':'+_0x5055bf+'\x0a'),_0x75d239&&_0x2bfcfb&&process[_0x96d0e5(0x1c2)][_0x96d0e5(0x21a)](_0x96d0e5(0x162)+_0x2bfcfb+'\x0a');}),Object['defineProperty'](_0x4b8ed2,_0x27e5bc(0x25d),{'value':_0x2bfcfb??'','enumerable':![]}),_0x4b8ed2;}function safeJson(_0x45c309){const _0x3b0154=_0x372c81;try{return JSON[_0x3b0154(0x270)](_0x45c309);}catch{return{};}}let githubJobQueue=Promise[_0x372c81(0x213)]();function enqueueGithubJob(_0x29d987,_0x5be6d6){const _0x4c8bf6=_0x372c81,_0x42bf1c=githubJobQueue['then'](()=>runGithubJob(_0x29d987,_0x5be6d6))[_0x4c8bf6(0x260)](_0x5400ef=>{const _0x5380c5=_0x4c8bf6;return process[_0x5380c5(0x15f)][_0x5380c5(0x21a)]('[github-app]\x20job\x20failed:\x20'+(_0x5400ef instanceof Error?_0x5400ef[_0x5380c5(0x1e5)]:String(_0x5400ef))+'\x0a'),'';});return githubJobQueue=_0x42bf1c[_0x4c8bf6(0x149)](()=>undefined),_0x42bf1c;}function _0x57ce(_0x3744f8,_0x5bbc0c){_0x3744f8=_0x3744f8-0x138;const _0x3a9f62=_0x3a9f();let _0x57cec5=_0x3a9f62[_0x3744f8];return _0x57cec5;}async function postGithubComment(_0x3a6807,_0x2b7a01,_0xd321fd,_0x759248,_0x20098e){const _0x411cca=_0x372c81;try{const _0x4180dd=await fetch(_0x411cca(0x289)+_0x3a6807+'/'+_0x2b7a01+_0x411cca(0x276)+_0xd321fd+_0x411cca(0x2b5),{'method':_0x411cca(0x14b),'headers':{'Accept':'application/vnd.github+json','User-Agent':_0x411cca(0x24f),'Authorization':'Bearer\x20'+_0x20098e,'Content-Type':'application/json','X-GitHub-Api-Version':'2022-11-28'},'body':JSON['stringify']({'body':_0x759248[_0x411cca(0x1cf)](0x0,0xfa0)}),'signal':AbortSignal[_0x411cca(0x13f)](0x4e20)});return _0x4180dd[_0x411cca(0x1a3)]===0xc9;}catch{return![];}}async function allInstalledRepos(){const _0x10cb29=_0x372c81,_0x247bd2=githubAppJwt();if(!_0x247bd2)return[];try{const _0x119832=await fetch(_0x10cb29(0x189),{'headers':{'Accept':_0x10cb29(0x1a8),'User-Agent':_0x10cb29(0x24f),'Authorization':_0x10cb29(0x140)+_0x247bd2,'X-GitHub-Api-Version':_0x10cb29(0x19a)},'signal':AbortSignal['timeout'](0x4e20)}),_0x15cfd2=await _0x119832['json']();if(!_0x119832['ok']||!Array[_0x10cb29(0x1f6)](_0x15cfd2))return[];const _0x3cc4e2=[];for(const _0x29e844 of _0x15cfd2){if(typeof _0x29e844?.['id']!==_0x10cb29(0x14a))continue;const _0x210474=await installationTokenFor(_0x29e844['id']);if(!_0x210474)continue;const _0x2f0bc8=await githubApi(_0x10cb29(0x1a9),_0x210474);if(_0x2f0bc8[_0x10cb29(0x1a3)]!==0xc8||!_0x2f0bc8[_0x10cb29(0x229)]||typeof _0x2f0bc8[_0x10cb29(0x229)]!==_0x10cb29(0x1d0))continue;const _0x418ae7=_0x2f0bc8[_0x10cb29(0x229)][_0x10cb29(0x2a9)];if(!Array[_0x10cb29(0x1f6)](_0x418ae7))continue;for(const _0x36d783 of _0x418ae7){_0x36d783&&typeof _0x36d783===_0x10cb29(0x1d0)&&typeof _0x36d783[_0x10cb29(0x2ab)]===_0x10cb29(0x1b5)&&_0x3cc4e2['push'](_0x36d783['full_name']['toLowerCase']());}}return[...new Set(_0x3cc4e2)];}catch{return[];}}function githubAppJwt(){const _0x1a85de=_0x372c81,_0x1695b0=(process.env.GITHUB_APP_ID??'')[_0x1a85de(0x1c6)]();let _0x159ca9=(process.env.GITHUB_PRIVATE_KEY??'')[_0x1a85de(0x1c6)]();if(!_0x1695b0||!_0x159ca9)return'';if(!_0x159ca9[_0x1a85de(0x161)](_0x1a85de(0x283)))try{_0x159ca9=(0x0,node_fs_1[_0x1a85de(0x230)])(_0x159ca9,_0x1a85de(0x27b));}catch{return'';}try{return(0x0,github_app_js_1[_0x1a85de(0x2a8)])(_0x1695b0,_0x159ca9);}catch{return'';}}async function installationIdForOwner(_0x3af723){const _0x275c6f=_0x372c81,_0x2ec5c4=githubAppJwt();if(!_0x2ec5c4)return 0x0;try{const _0x505052=await fetch('https://api.github.com/app/installations',{'headers':{'Accept':_0x275c6f(0x1a8),'User-Agent':_0x275c6f(0x24f),'Authorization':_0x275c6f(0x140)+_0x2ec5c4,'X-GitHub-Api-Version':_0x275c6f(0x19a)},'signal':AbortSignal[_0x275c6f(0x13f)](0x4e20)}),_0x3b592d=await _0x505052[_0x275c6f(0x229)]();if(!_0x505052['ok']||!Array[_0x275c6f(0x1f6)](_0x3b592d))return 0x0;const _0x1803df=_0x3b592d[_0x275c6f(0x1a1)](_0x1bbe7e=>_0x1bbe7e&&typeof _0x1bbe7e[_0x275c6f(0x28c)]?.[_0x275c6f(0x1b1)]===_0x275c6f(0x1b5)&&_0x1bbe7e['account'][_0x275c6f(0x1b1)][_0x275c6f(0x2b4)]()===_0x3af723[_0x275c6f(0x2b4)]());return typeof _0x1803df?.['id']===_0x275c6f(0x14a)?_0x1803df['id']:0x0;}catch{return 0x0;}}function _0x3a9f(){const _0x3dcb9c=['github','\x20finished\x20(','unknown\x20license\x20id','toISOString','imgDir','node:fs/promises','./license-store.js','all',',\x20triaged\x20','test','describeGithubThread','pro','main','\x20started\x20at\x20','message','destPath','missing\x20machineId','getOwnPropertyNames','corsOrigins','writable','number\x20must\x20be\x20a\x20positive\x20issue/PR\x20number','Windows\x20one-line\x20installer\x20(public)','pull_request','OPENAPI_SPEC','capture','Docs\x20pages\x20as\x20markdown\x20(public,\x20.md\x20only)','./Img','postIssueComment','GitHub\x20unreachable\x20from\x20the\x20license\x20server','head','__esModule','isArray','unref','Copy\x20a\x20repo\x20file\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','tool','consumeState','role','/openapi.json','OAuth\x20redirect\x20target\x20(public,\x20browser-facing)','isFinite','\x0a\x0aYou\x20have\x20repo\x20access\x20via\x20the\x20github\x20tool\x20(GITHUB_TOKEN\x20is\x20set\x20for\x20this\x20run)\x20—\x20read\x20the\x20actual\x20issue/PR\x20first\x20(read_issue),\x20never\x20claim\x20access\x20errors\x20without\x20trying\x20the\x20tool.\x20If\x20the\x20tool\x20says\x20Not\x20Found\x20on\x20the\x20repository\x20itself,\x20the\x20App\x20is\x20not\x20installed\x20there:\x20tell\x20the\x20user\x20to\x20install\x20it\x20(GitHub\x20App\x20settings\x20→\x20Install\x20App\x20→\x20that\x20repository)\x20instead\x20of\x20guessing\x20further.','</h1><p>','resolveCors','Authorization\x20failed','Health\x20check','not\x20found','createInstallationToken','head\x20branch\x20and\x20title\x20are\x20required','\x20->\x20','[github-autofix]\x20tick:\x20checked\x20','mint\x20failed:\x20','length','../../../apps/runtime/src/license.js','default_branch','x-forwarded-for','keep-alive','INSTALL_PS1','Static\x20README\x20images\x20(public,\x20png/jpg\x20only)','[github-app]\x20job\x20','create','resolve','title','1nmoRTL','sha','/v1/models','body\x20too\x20large\x20(max\x201MB)','missing\x20\x27prompt\x27','write','/docs/','/img/','target','basic','cwd','Forget\x20a\x20machine\x27s\x20token\x20(public)','30liTMsp','0.6.3','revoke','/license/usage','port','writeHead','Agent','text/plain;\x20charset=utf-8','json','</b>.\x20Return\x20to\x20the\x20CLI\x20—\x20it\x20picks\x20this\x20up\x20automatically.','appendUsage','/admin/licenses','missing\x20machineId/tool','\x20of\x20','html_url','readFileSync','beginLogin','\x20(pull\x20request','startsWith','abort','/install.ps1','user','GitHub\x20login\x20is\x20not\x20configured\x20on\x20this\x20server.','\x20messages:\x20','end','List\x20the\x20logged-in\x20user\x27s\x20repos\x20with\x20the\x20stored\x20token\x20(public,\x20logged-in)','::1','x-real-ip','prototype','./github-jobs.js','OPTIONS','2331429IbTtDJ','filter','</title>','branch\x20','unauthorized','defaultAutofixLedgerPath','[github-app]\x20installation\x20token\x20mint\x20failed:\x20','3186040asHalw','/admin/jobs','AutofixLedger','/admin/revoke','GitHub\x20login\x20not\x20configured\x20on\x20this\x20server','join','Logged\x20in\x20as\x20<b>','/github/repos','trayambak','602326OeBFQO','pentest','body','Read\x20an\x20issue\x20+\x20comments\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','\x0a\x0a…(truncated,\x20full\x20log\x20on\x20the\x20VPS)','stringify','data','too\x20many\x20trial\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later','remoteAddress','usageFile','/license/activate','Trayambak\x20Agent\x20API','could\x20not\x20find\x20sha\x20for\x20base\x20','effectiveToken','Begin\x20CLI\x20GitHub\x20login,\x20returns\x20browser\x20URL\x20(public,\x20rate-limited)',',\x20toolDiags:\x20','catch','unknown','\x20every\x20','351960sImiNp','data:\x20[DONE]\x0a\x0a','sessionFile','List\x20models','activate','HTTP\x20','defaultLicenseStorePaths','/pulls','3.0.0','./github-oauth.js','./github-autofix.js','allowed','checkPentestOnly','parse','reason','./install-ps1.js','application/json','record','invalid\x20JSON','/issues/','http://localhost','/github/copy','/api/sessions','sourcePath','utf8','[github-autofix]\x20idle\x20(GITHUB_AUTOFIX_REPOS\x20unset)\x0a','recordJob','GitHub\x20login\x20required\x20—\x20run\x20/github\x20login\x20first','__setModuleDefault','text/markdown;\x20charset=utf-8','mintActivationKey','Create\x20a\x20repo\x20branch\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','BEGIN','call','check','./github-app.js','image/png','error','https://api.github.com/repos/','createTelemetry','hasOwnProperty','account','public,\x20max-age=3600','/git/ref/heads/','3390495SdGpSX','set','issueNumber','/github/read','code','now','function','/user/repos?per_page=100&sort=updated','\x0a\x0aContext\x20from\x20GitHub:\x0a','##\x20Trayambak\x20result\x0a\x0a','crypto','min','searchParams','Poll\x20login\x20completion\x20by\x20machine\x20(public)','getOwnPropertyDescriptor','localhost','storeToken','1657062KrHsEy','__createBinding','Self-service\x207-day\x20trial,\x201/machine\x20(public,\x20rate-limited)','ignored','model','url','permissions','map','createAppJwt','repositories','./docs','full_name','fullName','NaN','/webhooks/github','toString','Mint\x20a\x2016-letter\x20license\x20(bearer-gated)','from','repoFullName','hex','toLowerCase','/comments','https://github.com/login/oauth/authorize?client_id=','withComments','/admin/usage','too\x20many\x20login\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later','split','branch','/github/branch','setHeader','/admin/mint','get','comments','tail=','Budget\x20exhausted\x20(used\x20','repo','timeout','Bearer\x20','https://api.github.com','host','task','splitRepo','[github-autofix]\x20tick\x20failed:\x20','Register\x20a\x20pre-existing\x20code\x20(bearer-gated)','node:fs','GitHubOAuthStore','then','number','POST','parseAutofixRepos','LicenseStore','-…-','this\x20machine\x20already\x20has\x20a\x20live\x20trial\x20—\x20ask\x20SKT\x20for\x20a\x20full\x20key','public,\x20max-age=86400','data:\x20','text','licenseStorePath','<!doctype\x20html><html\x20lang=\x22en\x22><head><meta\x20charset=\x22utf-8\x22><title>','exp','/auth/github/callback','headers','commit','days\x20must\x20be\x201..3650','stopReason','configurable','push','plan','refs/heads/','stderr','Run\x20agent\x20(SSE)','includes','generated\x20bearer\x20token\x20(set\x20TRAYAMBAK_WEB_TOKEN\x20to\x20avoid\x20this):\x20','\x20label=','x-github-event','trial\x20mint\x20failed:\x20','key','listTranscripts','token','text/html;\x20charset=utf-8','trayambak:\x20update\x20','Authorized','ran','\x20replied\x0a','/repos/','defineProperty','autofixTick','list','tokenFor','days','max','/contents/','<style>body{font-family:system-ui,sans-serif;max-width:560px;margin:3rem\x20auto;padding:0\x201rem}</style></head>','file','plan\x20must\x20be\x20basic|pentest|pro|enterprise','List\x20transcripts','type','21oNAKOy','[github-autofix]\x20watching\x20','replace','/auth/github/start','prompt','PUT','error_description','image/jpeg','method','budget_exhausted','unbind','default','../../telemetry/src/index.js','githubOAuthPath','https://api.github.com/app/installations','trayambak:\x20copy\x20','createdAt','GET','127.0.0.1','invalid\x20branch\x20name\x20\x22','/user','/auth/github/status','rulesV2','valid','run','job','socket','access_token','repo\x20must\x20be\x20owner/name','Tail\x20pentest\x20usage\x20telemetry\x20(bearer-gated)','trial','2022-11-28','0:0:0:0:0:0:0:1','triaged','activeTrialForMachine','customer','<!doctype\x20html>\x0a<html\x20lang=\x22en\x22><head><meta\x20charset=\x22utf-8\x22><meta\x20name=\x22viewport\x22\x20content=\x22width=device-width,initial-scale=1\x22>\x0a<title>Trayambak\x20—\x20license\x20generator</title>\x0a<style>body{font-family:system-ui,sans-serif;max-width:560px;margin:3rem\x20auto;padding:0\x201rem;color:#111}label{display:block;margin:1rem\x200\x20.25rem;font-weight:600}input,select,button{font-size:1rem;padding:.5rem;width:100%;box-sizing:border-box}button{margin-top:1.25rem;background:#111;color:#fff;border:0;cursor:pointer}#out{margin-top:1.5rem;padding:1rem;background:#f4f4f4;word-break:break-all;display:none;font-family:monospace;font-size:1.2rem}#err{color:#b00;margin-top:1rem}pre{background:#f4f4f4;padding:1rem;overflow:auto;font-size:.8rem}</style>\x0a</head><body>\x0a<h1>Trayambak\x20license\x20generator</h1>\x0a<p>Bearer\x20token\x20is\x20asked\x20once\x20per\x20session\x20and\x20never\x20stored.\x20Minted\x20codes\x20are\x2016\x20letters,\x20always\x20<b>1102-…</b>,\x20verified\x20<b>live\x20by\x20this\x20server</b>\x20(registry\x20+\x201-machine\x20binding).</p>\x0a<p>Users\x20self-serve\x20a\x207-day\x20trial\x20from\x20the\x20TUI\x20(<b>/devmode\x20trial</b>\x20—\x201\x20live\x20trial\x20per\x20machine,\x20born\x20bound,\x205/hour\x20per\x20network).\x20Paid\x20keys\x20come\x20from\x20Mint\x20below.\x20Exploitation?\x20Find\x20the\x20key\x20id\x20in\x20<b>Usage</b>,\x20paste\x20it\x20under\x20<b>Revoke</b>\x20—\x20dead\x20in\x20one\x20click,\x20everywhere.</p>\x0a<label>Bearer\x20token\x20(TRAYAMBAK_WEB_TOKEN)<input\x20id=\x22token\x22\x20type=\x22password\x22\x20autocomplete=\x22off\x22></label>\x0a<label>Plan<select\x20id=\x22plan\x22><option\x20value=\x22pentest\x22>pentest</option><option\x20value=\x22pro\x22>pro</option><option\x20value=\x22enterprise\x22>enterprise</option><option\x20value=\x22basic\x22>basic</option></select></label>\x0a<label>Days\x20valid<input\x20id=\x22days\x22\x20type=\x22number\x22\x20value=\x22365\x22\x20min=\x221\x22\x20max=\x223650\x22></label>\x0a<label>Customer\x20id\x20(optional)<input\x20id=\x22cid\x22\x20type=\x22text\x22\x20placeholder=\x22acme-corp\x22></label>\x0a<button\x20id=\x22go\x22>Mint\x20license</button>\x0a<div\x20id=\x22err\x22></div>\x0a<div\x20id=\x22out\x22></div>\x0a<h2>Register\x20a\x20pre-existing\x20code</h2>\x0a<p>Legacy/offline-era\x20keys\x20must\x20be\x20imported\x20once\x20before\x20their\x20holders\x20can\x20activate\x20them.</p>\x0a<label>Code\x20to\x20import<input\x20id=\x22imp\x22\x20type=\x22text\x22\x20placeholder=\x221102-XXXX-XXXX-XXXX\x22></label>\x0a<label>Customer\x20id\x20(optional)<input\x20id=\x22impcid\x22\x20type=\x22text\x22></label>\x0a<button\x20id=\x22goimp\x22>Import\x20code</button>\x0a<h2>Licenses</h2>\x0a<button\x20id=\x22golist\x22>Refresh\x20list</button>\x0a<pre\x20id=\x22list\x22></pre>\x0a<h2>Usage\x20(latest\x20100)</h2>\x0a<button\x20id=\x22gouse\x22>Refresh\x20usage</button>\x0a<pre\x20id=\x22use\x22></pre>\x0a<h2>Revoke\x20/\x20unbind\x20by\x20id</h2>\x0a<label>License\x20id<input\x20id=\x22lid\x22\x20type=\x22text\x22></label>\x0a<button\x20id=\x22gorev\x22>Revoke</button>\x0a<button\x20id=\x22gounb\x22>Unbind\x20machine</button>\x0a<script>\x0aconst\x20auth\x20=\x20()\x20=>\x20({\x20\x22Content-Type\x22:\x20\x22application/json\x22,\x20\x22Authorization\x22:\x20\x22Bearer\x20\x22\x20+\x20document.getElementById(\x22token\x22).value\x20});\x0aconst\x20show\x20=\x20(el,\x20v)\x20=>\x20{\x20const\x20e\x20=\x20document.getElementById(el);\x20e.textContent\x20=\x20typeof\x20v\x20===\x20\x22string\x22\x20?\x20v\x20:\x20JSON.stringify(v,\x20null,\x202);\x20e.style.display\x20=\x20\x22block\x22;\x20};\x0adocument.getElementById(\x22go\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20err\x20=\x20document.getElementById(\x22err\x22),\x20out\x20=\x20document.getElementById(\x22out\x22);\x0a\x20\x20err.textContent\x20=\x20\x22\x22;\x20out.style.display\x20=\x20\x22none\x22;\x0a\x20\x20try\x20{\x0a\x20\x20\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/mint\x22,\x20{\x20method:\x20\x22POST\x22,\x0a\x20\x20\x20\x20\x20\x20headers:\x20auth(),\x0a\x20\x20\x20\x20\x20\x20body:\x20JSON.stringify({\x20plan:\x20document.getElementById(\x22plan\x22).value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20days:\x20Number(document.getElementById(\x22days\x22).value),\x0a\x20\x20\x20\x20\x20\x20\x20\x20id:\x20document.getElementById(\x22cid\x22).value\x20||\x20undefined\x20})\x20});\x0a\x20\x20\x20\x20const\x20j\x20=\x20await\x20r.json();\x0a\x20\x20\x20\x20if\x20(!r.ok)\x20throw\x20new\x20Error(j.error\x20||\x20(\x22HTTP\x20\x22\x20+\x20r.status));\x0a\x20\x20\x20\x20out.textContent\x20=\x20j.key;\x20out.style.display\x20=\x20\x22block\x22;\x0a\x20\x20}\x20catch\x20(e)\x20{\x20err.textContent\x20=\x20String((e\x20&&\x20e.message)\x20||\x20e);\x20}\x0a};\x0adocument.getElementById(\x22goimp\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20err\x20=\x20document.getElementById(\x22err\x22);\x0a\x20\x20err.textContent\x20=\x20\x22\x22;\x0a\x20\x20try\x20{\x0a\x20\x20\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/import\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20\x20\x20body:\x20JSON.stringify({\x20key:\x20document.getElementById(\x22imp\x22).value,\x0a\x20\x20\x20\x20\x20\x20\x20\x20customer:\x20document.getElementById(\x22impcid\x22).value\x20||\x20undefined\x20})\x20});\x0a\x20\x20\x20\x20const\x20j\x20=\x20await\x20r.json();\x0a\x20\x20\x20\x20if\x20(!r.ok)\x20throw\x20new\x20Error(j.error\x20||\x20(\x22HTTP\x20\x22\x20+\x20r.status));\x0a\x20\x20\x20\x20show(\x22out\x22,\x20\x22imported\x20id\x20\x22\x20+\x20j.id\x20+\x20\x22\x20(\x22\x20+\x20j.plan\x20+\x20\x22)\x22);\x0a\x20\x20}\x20catch\x20(e)\x20{\x20err.textContent\x20=\x20String((e\x20&&\x20e.message)\x20||\x20e);\x20}\x0a};\x0adocument.getElementById(\x22golist\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/licenses\x22,\x20{\x20headers:\x20auth()\x20});\x0a\x20\x20show(\x22list\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gouse\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/usage?tail=100\x22,\x20{\x20headers:\x20auth()\x20});\x0a\x20\x20show(\x22use\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gorev\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/revoke\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20body:\x20JSON.stringify({\x20id:\x20document.getElementById(\x22lid\x22).value\x20})\x20});\x0a\x20\x20show(\x22out\x22,\x20await\x20r.json());\x0a};\x0adocument.getElementById(\x22gounb\x22).onclick\x20=\x20async\x20()\x20=>\x20{\x0a\x20\x20const\x20r\x20=\x20await\x20fetch(\x22/admin/unbind\x22,\x20{\x20method:\x20\x22POST\x22,\x20headers:\x20auth(),\x0a\x20\x20\x20\x20body:\x20JSON.stringify({\x20id:\x20document.getElementById(\x22lid\x22).value\x20})\x20});\x0a\x20\x20show(\x22out\x22,\x20await\x20r.json());\x0a};\x0a</script>\x0a</body></html>','x-hub-signature-256','find','byteLength','status','checked','text/event-stream','https://github.com/login/oauth/access_token','content\x20over\x20100KB\x20—\x20split\x20it\x20or\x20open\x20a\x20PR','application/vnd.github+json','/installation/repositories?per_page=100','/auth/github/logout','/license/verify','docsDir','machineId','GitHub\x20request\x20in\x20','github-user','5017122zLFDTE','login','node:path','created_at','__importStar','string','\x0a---\x20end\x20---\x0a','path\x20must\x20be\x20a\x20repo-relative\x20file\x20path\x20(no\x20..)','state','signal','Live\x20license\x20check\x20(public,\x20machine-bound)','/git/refs','origin\x20not\x20allowed','loadConfig','Server\x20misconfigured','Bind\x20a\x20license\x20to\x20a\x20machine\x20(public)','kind','base','stdout','destroy',',\x20error:\x20','/github/write','trim','content','floor','register','listen','bad\x20signature','destroyed','base64','/admin','slice','object','defaultOAuthPath','license\x20invalid','touch','has','writableEnded','GitHub:\x20'];_0x3a9f=function(){return _0x3dcb9c;};return _0x3a9f();}async function installationTokenFor(_0x204a56){const _0x39b2bf=_0x372c81,_0x5743eb=githubAppJwt();if(!_0x5743eb||!_0x204a56)return'';try{const _0x32f6bf=process.env.GITHUB_API_BASE??_0x39b2bf(0x141);return await(0x0,github_app_js_1[_0x39b2bf(0x205)])(_0x32f6bf,_0x5743eb,_0x204a56);}catch{return'';}}async function serveReadmeImage(_0x1a4344,_0x8fe8fc,_0x2a9e46,_0x1e4b6e){const _0x294585=_0x372c81;try{const _0x274083=_0x1e4b6e[_0x294585(0x1cf)]('/img/'[_0x294585(0x20a)]);if(!/^[A-Za-z0-9_-]+\.(png|jpg|jpeg)$/i[_0x294585(0x1e0)](_0x274083)){_0x8fe8fc[_0x294585(0x226)](0x194,{'Content-Type':'application/json'}),_0x8fe8fc['end'](JSON[_0x294585(0x255)]({'error':_0x294585(0x204)}));return;}const {readFile:_0x819f84}=await Promise[_0x294585(0x213)]()[_0x294585(0x149)](()=>__importStar(require('node:fs/promises'))),_0x2238ec=await _0x819f84((0x0,node_path_1['join'])(_0x2a9e46,_0x274083)),_0x429492=/\.png$/i[_0x294585(0x1e0)](_0x274083)?_0x294585(0x287):_0x294585(0x182);_0x8fe8fc[_0x294585(0x226)](0xc8,{'Content-Type':_0x429492,'Cache-Control':_0x294585(0x150)}),_0x8fe8fc['end'](_0x2238ec);}catch{_0x8fe8fc[_0x294585(0x226)](0x194,{'Content-Type':_0x294585(0x273)}),_0x8fe8fc[_0x294585(0x239)](JSON[_0x294585(0x255)]({'error':'not\x20found'}));}}async function serveDocsFile(_0x198e87,_0x47180d,_0x633f,_0x24ff79){const _0x11c726=_0x372c81;try{const _0x42b884=_0x24ff79[_0x11c726(0x1cf)](_0x11c726(0x21b)['length']);if(!/^[A-Za-z0-9_-]+\.md$/i[_0x11c726(0x1e0)](_0x42b884)){_0x47180d[_0x11c726(0x226)](0x194,{'Content-Type':'application/json'}),_0x47180d[_0x11c726(0x239)](JSON[_0x11c726(0x255)]({'error':_0x11c726(0x204)}));return;}const {readFile:_0x1d119f}=await Promise[_0x11c726(0x213)]()['then'](()=>__importStar(require(_0x11c726(0x1dc)))),_0x2d195b=await _0x1d119f((0x0,node_path_1[_0x11c726(0x24c)])(_0x633f,_0x42b884));_0x47180d[_0x11c726(0x226)](0xc8,{'Content-Type':_0x11c726(0x280),'Cache-Control':_0x11c726(0x28d)}),_0x47180d[_0x11c726(0x239)](_0x2d195b);}catch{_0x47180d['writeHead'](0x194,{'Content-Type':'application/json'}),_0x47180d[_0x11c726(0x239)](JSON[_0x11c726(0x255)]({'error':_0x11c726(0x204)}));}}function licenseMachineId(_0x3d3c93){const _0x5ea7f2=_0x372c81;if(typeof _0x3d3c93!==_0x5ea7f2(0x1b5))return'';const _0x54e32b=_0x3d3c93[_0x5ea7f2(0x1c6)]();return _0x54e32b[_0x5ea7f2(0x20a)]>=0x4&&_0x54e32b[_0x5ea7f2(0x20a)]<=0x80?_0x54e32b:'';}async function githubApi(_0x22fc49,_0x234e0e,_0x5f269a=0x4e20,_0x1e0301){const _0x426b41=_0x372c81;try{const _0x31b642={'Accept':_0x426b41(0x1a8),'User-Agent':'trayambak','Authorization':_0x426b41(0x140)+_0x234e0e,'X-GitHub-Api-Version':_0x426b41(0x19a)},_0xbaa684={'headers':_0x31b642,'signal':AbortSignal[_0x426b41(0x13f)](_0x5f269a)};_0x1e0301&&(_0x31b642['Content-Type']=_0x426b41(0x273),_0xbaa684[_0x426b41(0x183)]=_0x1e0301[_0x426b41(0x183)],_0xbaa684[_0x426b41(0x252)]=JSON[_0x426b41(0x255)](_0x1e0301[_0x426b41(0x252)]));const _0x41b014=await fetch(_0x426b41(0x141)+_0x22fc49,_0xbaa684);let _0x4a8492=null;try{_0x4a8492=await _0x41b014['json']();}catch{}return{'status':_0x41b014['status'],'json':_0x4a8492};}catch{return{'status':0x0,'json':null};}}function githubErrorMessage(_0x370a4e,_0x30c3d2){const _0x34e132=_0x372c81;if(_0x370a4e&&typeof _0x370a4e==='object'&&typeof _0x370a4e[_0x34e132(0x1e5)]===_0x34e132(0x1b5))return _0x370a4e[_0x34e132(0x1e5)];return _0x34e132(0x268)+_0x30c3d2;}function encodeContentPath(_0x289268){const _0x358e93=_0x372c81;return _0x289268[_0x358e93(0x2ba)]('/')[_0x358e93(0x2a7)](_0x95536e=>encodeURIComponent(_0x95536e))[_0x358e93(0x24c)]('/');}function clientIp(_0x3309bc){const _0x2ef249=_0x372c81,_0x2a6763=_0x25e601=>(Array['isArray'](_0x25e601)?_0x25e601[0x0]:_0x25e601)?.[_0x2ef249(0x2ba)](',')[0x0]?.[_0x2ef249(0x1c6)]()??'';return _0x2a6763(_0x3309bc[_0x2ef249(0x157)]['cf-connecting-ip'])||_0x2a6763(_0x3309bc[_0x2ef249(0x157)][_0x2ef249(0x20d)])||_0x2a6763(_0x3309bc['headers'][_0x2ef249(0x23c)])||_0x3309bc[_0x2ef249(0x195)][_0x2ef249(0x258)]||_0x2ef249(0x261);}async function runGithubJob(_0x3097c5,_0x24c007){const _0x106f7b=_0x372c81,_0x5b8695=process.env.GITHUB_API_BASE??_0x106f7b(0x141),_0x3c4b9f=new Date()[_0x106f7b(0x1da)]();process[_0x106f7b(0x1c2)][_0x106f7b(0x21a)](_0x106f7b(0x211)+_0x3097c5[_0x106f7b(0x2b2)]+'#'+_0x3097c5[_0x106f7b(0x291)]+_0x106f7b(0x1e4)+_0x3c4b9f+'\x0a');const _0xd1c346=process.env.TRAYAMBAK_GITHUB_WORKSPACE??(0x0,index_js_1[_0x106f7b(0x1bd)])()[_0x106f7b(0x21f)],_0x38aa01=(0x0,index_js_1['loadConfig'])(),_0x2212d6={..._0x38aa01,'cwd':_0xd1c346,'permissions':{..._0x38aa01[_0x106f7b(0x2a6)],'rulesV2':[..._0x38aa01[_0x106f7b(0x2a6)]?.[_0x106f7b(0x191)]??[],{'tool':_0x106f7b(0x1d7),'action':'allow','reason':'GitHub\x20App\x20job:\x20comment-authorized,\x20installation-token\x20scoped'}]}},_0x36f468=new index_js_1[(_0x106f7b(0x227))]({'config':_0x2212d6}),_0x1d54de=process.env.GITHUB_APP_ID??'';let _0x2c9ede=process.env.GITHUB_PRIVATE_KEY??'';if(_0x2c9ede&&!_0x2c9ede[_0x106f7b(0x161)](_0x106f7b(0x283))){const _0x23b9b9=await Promise[_0x106f7b(0x213)]()[_0x106f7b(0x149)](()=>__importStar(require(_0x106f7b(0x147))));try{_0x2c9ede=_0x23b9b9['readFileSync'](_0x2c9ede,_0x106f7b(0x27b));}catch{_0x2c9ede='';}}const _0x35b300=_0x24c007?.['installation'],_0x3dd705=typeof _0x35b300?.['id']===_0x106f7b(0x14a)?_0x35b300['id']:0x0;let _0x174c0d='';if(_0x1d54de&&_0x2c9ede&&_0x3dd705)try{_0x174c0d=await(0x0,github_app_js_1[_0x106f7b(0x205)])(_0x5b8695,(0x0,github_app_js_1[_0x106f7b(0x2a8)])(_0x1d54de,_0x2c9ede),_0x3dd705);}catch(_0x176461){process[_0x106f7b(0x1c2)]['write'](_0x106f7b(0x246)+(_0x176461 instanceof Error?_0x176461[_0x106f7b(0x1e5)]:String(_0x176461))+'\x0a');}let _0x5611c5=[],_0x26d4b9='';const _0x1873fd=[],_0x15e79f=[],_0x361113=_0x24984e=>{const _0x83c024=_0x106f7b;try{if(_0x24984e?.[_0x83c024(0x17a)]===_0x83c024(0x184)){_0x1873fd[_0x83c024(0x15c)](_0x83c024(0x13d)+(typeof _0x24984e['used']===_0x83c024(0x14a)?_0x24984e['used']:'?')+_0x83c024(0x22e)+(typeof _0x24984e[_0x83c024(0x174)]===_0x83c024(0x14a)?_0x24984e['max']:'?')+')\x20—\x20the\x20run\x20stopped\x20before\x20the\x20model\x20was\x20called.');return;}if(_0x24984e?.[_0x83c024(0x17a)]==='message_end'){const _0x10df65=_0x24984e['message'];if(_0x10df65?.[_0x83c024(0x15a)]===_0x83c024(0x288)&&Array[_0x83c024(0x1f6)](_0x10df65['content'])){const _0x2573c5=_0x10df65[_0x83c024(0x1c7)][_0x83c024(0x241)](_0x2fa37a=>!!_0x2fa37a&&typeof _0x2fa37a===_0x83c024(0x1d0)&&_0x2fa37a[_0x83c024(0x17a)]===_0x83c024(0x152))[_0x83c024(0x2a7)](_0x5bd2bb=>_0x5bd2bb[_0x83c024(0x152)])['join']('\x0a')['trim']();if(_0x2573c5)_0x1873fd[_0x83c024(0x15c)](_0x2573c5);}if(_0x10df65?.['role']===_0x83c024(0x1f9)&&Array['isArray'](_0x10df65[_0x83c024(0x1c7)])){const _0x2b099d=_0x10df65['content']['filter'](_0x4bd186=>!!_0x4bd186&&typeof _0x4bd186==='object'&&_0x4bd186[_0x83c024(0x17a)]===_0x83c024(0x152))[_0x83c024(0x2a7)](_0xbdc7d7=>_0xbdc7d7[_0x83c024(0x152)])['join']('\x0a');_0x2b099d&&/fail|error|denied|not found|404|401|403|refus/i[_0x83c024(0x1e0)](_0x2b099d)&&_0x15e79f['push'](_0x2b099d[_0x83c024(0x1cf)](0x0,0x12c));}}}catch{}};try{const _0x29fac2=process.env.GITHUB_TOKEN;if(_0x174c0d)process.env.GITHUB_TOKEN=_0x174c0d;const _0x509b47=(0x0,github_app_js_1[_0x106f7b(0x1e1)])(_0x24c007);try{_0x5611c5=await _0x36f468[_0x106f7b(0x193)](_0x106f7b(0x1ae)+_0x3097c5[_0x106f7b(0x2b2)]+(_0x3097c5['isPullRequest']?_0x106f7b(0x232):'\x20(issue')+'\x20#'+_0x3097c5[_0x106f7b(0x291)]+'):\x0a'+_0x3097c5[_0x106f7b(0x143)]+_0x106f7b(0x1ff)+(_0x509b47?_0x106f7b(0x297)+_0x509b47:''),_0x361113);}finally{if(_0x174c0d){if(_0x29fac2===undefined)delete process.env.GITHUB_TOKEN;else process.env.GITHUB_TOKEN=_0x29fac2;}}}catch(_0x2ea49f){_0x26d4b9=_0x2ea49f instanceof Error?_0x2ea49f['message']:String(_0x2ea49f);}const _0x411592=(0x0,github_app_js_1['selectJobReply'])(_0x5611c5,_0x26d4b9,_0x1873fd);(0x0,github_jobs_js_1[_0x106f7b(0x27d)])({'repo':_0x3097c5[_0x106f7b(0x2b2)],'issue':_0x3097c5[_0x106f7b(0x291)],'task':_0x3097c5[_0x106f7b(0x143)],'messages':_0x5611c5[_0x106f7b(0x20a)],'replyHead':_0x411592,..._0x26d4b9?{'error':_0x26d4b9}:{}});const _0x66cbd1=_0x5611c5[_0x106f7b(0x2a7)](_0x182e74=>{const _0x3c88a7=_0x106f7b,_0x35e717=Array[_0x3c88a7(0x1f6)](_0x182e74['content'])?_0x182e74[_0x3c88a7(0x1c7)][_0x3c88a7(0x2a7)](_0x35c881=>_0x35c881?.[_0x3c88a7(0x17a)]??'?')[_0x3c88a7(0x24c)]('+'):typeof _0x182e74[_0x3c88a7(0x1c7)];return(_0x182e74[_0x3c88a7(0x1fb)]??'?')+'['+_0x35e717+']';})[_0x106f7b(0x24c)]('\x20');process[_0x106f7b(0x1c2)][_0x106f7b(0x21a)](_0x106f7b(0x211)+_0x3097c5[_0x106f7b(0x2b2)]+'#'+_0x3097c5[_0x106f7b(0x291)]+_0x106f7b(0x1d8)+_0x5611c5['length']+_0x106f7b(0x238)+(_0x66cbd1||'none')+(_0x26d4b9?_0x106f7b(0x1c4)+_0x26d4b9[_0x106f7b(0x1cf)](0x0,0xc8):'')+(_0x15e79f[_0x106f7b(0x20a)]>0x0?_0x106f7b(0x25f)+_0x15e79f[_0x106f7b(0x24c)]('\x20||\x20')['slice'](0x0,0x258):'')+')\x0a');if(!_0x1d54de||!_0x2c9ede||!_0x3dd705||!_0x174c0d)return process['stdout'][_0x106f7b(0x21a)]('[github-app]\x20job\x20done\x20but\x20no\x20reply\x20channel\x20(need\x20GITHUB_APP_ID\x20+\x20GITHUB_PRIVATE_KEY\x20+\x20installation\x20id\x20+\x20token\x20mint).\x0a---\x20result\x20---\x0a'+_0x411592+_0x106f7b(0x1b6)),_0x411592;const {owner:_0x2f7c3b,repo:_0x538c3b}=(0x0,github_app_js_1['splitRepo'])(_0x3097c5['repoFullName']),_0x515371=_0x411592[_0x106f7b(0x20a)]>0xea60?_0x411592[_0x106f7b(0x1cf)](0x0,0xea60)+_0x106f7b(0x254):_0x411592;return await(0x0,github_app_js_1[_0x106f7b(0x1f2)])({'apiBase':_0x5b8695,'token':_0x174c0d},_0x2f7c3b,_0x538c3b,_0x3097c5[_0x106f7b(0x291)],_0x106f7b(0x298)+_0x515371),process[_0x106f7b(0x1c2)]['write'](_0x106f7b(0x211)+_0x3097c5['repoFullName']+'#'+_0x3097c5['issueNumber']+_0x106f7b(0x16d)),_0x411592;}
@@ -1 +1 @@
1
- 'use strict';var _0x4a5b7f=_0x12a8;(function(_0x3f9b4a,_0xff4baa){var _0x3e8e00=_0x12a8,_0x275241=_0x3f9b4a();while(!![]){try{var _0x4c39d1=-parseInt(_0x3e8e00(0x193))/0x1*(-parseInt(_0x3e8e00(0x19d))/0x2)+parseInt(_0x3e8e00(0x19e))/0x3+-parseInt(_0x3e8e00(0x197))/0x4+-parseInt(_0x3e8e00(0x196))/0x5*(-parseInt(_0x3e8e00(0x199))/0x6)+parseInt(_0x3e8e00(0x19a))/0x7+parseInt(_0x3e8e00(0x1a0))/0x8*(parseInt(_0x3e8e00(0x198))/0x9)+parseInt(_0x3e8e00(0x19f))/0xa*(-parseInt(_0x3e8e00(0x195))/0xb);if(_0x4c39d1===_0xff4baa)break;else _0x275241['push'](_0x275241['shift']());}catch(_0x1efc62){_0x275241['push'](_0x275241['shift']());}}}(_0x459a,0x71349));function _0x12a8(_0x3493db,_0xe54c9){_0x3493db=_0x3493db-0x193;var _0x459a30=_0x459a();var _0x12a802=_0x459a30[_0x3493db];return _0x12a802;}Object[_0x4a5b7f(0x19c)](exports,'__esModule',{'value':!![]}),exports['INSTALL_PS1']=void 0x0,exports[_0x4a5b7f(0x19b)]=_0x4a5b7f(0x194);function _0x459a(){var _0x5f0a9e=['189MnraTH','2763258OShFRO','2265648PZowfn','INSTALL_PS1','defineProperty','48828mcRByv','880053nbSSIc','1468070bwjjir','209544XykvTE','23mTrRfb','#\x20Trayambak\x20one-line\x20installer.\x0a#\x20Run:\x20irm\x20https://skt.sktailabs.in/install.ps1\x20|\x20iex\x0a$ErrorActionPreference\x20=\x20\x22Stop\x22\x0a\x0afunction\x20Fail($msg)\x20{\x20Write-Error\x20$msg;\x20exit\x201\x20}\x0a\x0atry\x20{\x20$nodeV\x20=\x20node\x20--version\x20}\x20catch\x20{\x20Fail\x20\x22node\x20not\x20found\x20—\x20install\x20Node\x2020+\x20from\x20https://nodejs.org,\x20then\x20re-run\x20this\x20command.\x22\x20}\x0aWrite-Output\x20\x22node\x20$nodeV\x20found.\x22\x0a\x0atry\x20{\x20npm\x20install\x20-g\x20@skt-ai-labs/trayambak-cli\x20}\x20catch\x20{\x20Fail\x20\x22npm\x20install\x20failed:\x20$($_.Exception.Message)\x22\x20}\x0a\x0atry\x20{\x20$ver\x20=\x20trayambak\x20--version\x20}\x20catch\x20{\x20Fail\x20\x22install\x20finished\x20but\x20\x27trayambak\x27\x20is\x20not\x20on\x20PATH\x20—\x20restart\x20the\x20terminal\x20and\x20try\x20again.\x22\x20}\x0aWrite-Output\x20\x22trayambak\x20$ver\x20installed.\x22\x0aWrite-Output\x20\x22\x22\x0aWrite-Output\x20\x22Next\x20steps:\x22\x0aWrite-Output\x20\x22\x20\x201.\x20trayambak\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20open\x20the\x20TUI\x22\x0aWrite-Output\x20\x22\x20\x202.\x20/provider\x20add\x20\x20\x20\x20\x20\x20\x20\x20#\x20connect\x20your\x20model\x20backend\x20+\x20API\x20key\x22\x0aWrite-Output\x20\x22\x20\x203.\x20/github\x20login\x20\x20\x20\x20\x20\x20\x20\x20#\x20authorize\x20GitHub\x20(browser\x20opens)\x22\x0aWrite-Output\x20\x22\x20\x204.\x20/devmode\x20trial\x20\x20\x20\x20\x20\x20\x20#\x20or\x20paste\x20a\x20license:\x20/devmode\x20on\x201102-XXXX-XXXX-XXXX\x22\x0a','121vYivXT','5bUClpq','442268LOiemS'];_0x459a=function(){return _0x5f0a9e;};return _0x459a();}
1
+ 'use strict';var _0x3e9a5a=_0x5579;function _0x4d7b(){var _0x13dc78=['752416UJTeoH','6087085wUyjkY','34528ufPnfi','45164280MnMMaF','2SgItSH','11sQDWKz','4545488ruEQeA','8136spOxGo','448XwxlLX','2124sOjZYU','#\x20Trayambak\x20one-line\x20installer.\x0a#\x20Run:\x20irm\x20https://skt.sktailabs.in/install.ps1\x20|\x20iex\x0a$ErrorActionPreference\x20=\x20\x22Stop\x22\x0a$esc\x20=\x20[char]27\x0a$cr\x20=\x20[char]13\x0a\x0afunction\x20Fail($msg)\x20{\x20Write-Error\x20$msg;\x20exit\x201\x20}\x0a\x0afunction\x20Show-EyeLoader($frames,\x20$text,\x20$cycles)\x20{\x0a\x20\x20for\x20($c\x20=\x200;\x20$c\x20-lt\x20$cycles;\x20$c++)\x20{\x0a\x20\x20\x20\x20foreach\x20($f\x20in\x20$frames)\x20{\x0a\x20\x20\x20\x20\x20\x20Write-Host\x20(\x22$cr$f\x20\x20$text\x20\x20\x20\x22)\x20-NoNewline\x0a\x20\x20\x20\x20\x20\x20Start-Sleep\x20-Milliseconds\x20160\x0a\x20\x20\x20\x20}\x0a\x20\x20}\x0a\x20\x20Write-Host\x20\x22\x22\x0a}\x0a\x0a#\x20Full-page\x20clear,\x20then\x20the\x20third\x20eye\x20opens.\x0aClear-Host\x0a$eye\x20=\x20@(\x27(\x20o\x20)\x27,\x20\x27(\x20O\x20)\x27,\x20\x27(\x20◉\x20)\x27,\x20\x27(\x20O\x20)\x27)\x0aShow-EyeLoader\x20$eye\x20\x22TRAYAMBAK\x22\x202\x0aWrite-Host\x20\x22\x22\x0aWrite-Host\x20(\x22$esc[3mthree\x20eyes\x20of\x20Shiva\x20is\x20coming$esc[23m\x22)\x0aWrite-Host\x20\x22\x22\x0aStart-Sleep\x20-Milliseconds\x20600\x0a\x0atry\x20{\x20$nodeV\x20=\x20node\x20--version\x20}\x20catch\x20{\x20Fail\x20\x22node\x20not\x20found\x20—\x20install\x20Node\x2020+\x20from\x20https://nodejs.org,\x20then\x20re-run\x20this\x20command.\x22\x20}\x0aWrite-Output\x20\x22node\x20$nodeV\x20found.\x22\x0a\x0a#\x20Download\x20+\x20install\x20with\x20a\x20live\x20third-eye\x20spinner:\x20npm\x20install\x20-g\x20runs\x20as\x0a#\x20a\x20background\x20job\x20while\x20the\x20foreground\x20paints\x20the\x20eye\x20+\x20elapsed\x20time.\x0a#\x20Start-Job\x20can\x20be\x20unavailable\x20in\x20locked-down\x20hosts\x20—\x20then\x20fall\x20straight\x0a#\x20through\x20to\x20a\x20direct\x20install\x20(same\x20command,\x20no\x20animation).\x0a$spin\x20=\x20@(\x27◉\x27,\x20\x27◎\x27,\x20\x27◯\x27,\x20\x27◎\x27)\x0a$installDone\x20=\x20$false\x0atry\x20{\x0a\x20\x20$job\x20=\x20Start-Job\x20-ScriptBlock\x20{\x20npm\x20install\x20-g\x20@skt-ai-labs/trayambak-cli\x20}\x0a\x20\x20$t0\x20=\x20Get-Date\x0a\x20\x20$i\x20=\x200\x0a\x20\x20while\x20($job.State\x20-eq\x20\x27Running\x27)\x20{\x0a\x20\x20\x20\x20$elapsed\x20=\x20[int]((Get-Date)\x20-\x20$t0).TotalSeconds\x0a\x20\x20\x20\x20if\x20($elapsed\x20-gt\x20600)\x20{\x20Stop-Job\x20$job;\x20Fail\x20\x22install\x20timed\x20out\x20after\x2010\x20minutes\x20(network/npm\x20issue?)\x22\x20}\x0a\x20\x20\x20\x20Write-Host\x20(\x22$cr$($spin[$i\x20%\x204])\x20downloading\x20trayambak…\x20$elapsed\x20s\x20elapsed\x20\x20\x20\x22)\x20-NoNewline\x0a\x20\x20\x20\x20Start-Sleep\x20-Milliseconds\x20200\x0a\x20\x20\x20\x20$i++\x0a\x20\x20}\x0a\x20\x20Write-Host\x20\x22\x22\x0a\x20\x20$jobOut\x20=\x20Receive-Job\x20$job\x202>&1\x20|\x20Out-String\x0a\x20\x20Remove-Job\x20$job\x20-Force\x0a\x20\x20if\x20($job.State\x20-ne\x20\x27Completed\x27)\x20{\x20Fail\x20\x22npm\x20install\x20failed:$([Environment]::NewLine)$jobOut\x22\x20}\x0a\x20\x20$installDone\x20=\x20$true\x0a}\x20catch\x20{\x0a\x20\x20Write-Output\x20\x22background\x20install\x20unavailable,\x20installing\x20directly…\x22\x0a}\x0aif\x20(-not\x20$installDone)\x20{\x0a\x20\x20try\x20{\x20npm\x20install\x20-g\x20@skt-ai-labs/trayambak-cli\x20}\x20catch\x20{\x20Fail\x20\x22npm\x20install\x20failed:\x20$($_.Exception.Message)\x22\x20}\x0a}\x0aWrite-Output\x20\x22download\x20+\x20install\x20complete.\x22\x0a\x0atry\x20{\x20$ver\x20=\x20trayambak\x20--version\x20}\x20catch\x20{\x20Fail\x20\x22install\x20finished\x20but\x20\x27trayambak\x27\x20is\x20not\x20on\x20PATH\x20—\x20restart\x20the\x20terminal\x20and\x20try\x20again.\x22\x20}\x0aShow-EyeLoader\x20@(\x27(\x20◉\x20)\x27)\x20\x22trayambak\x20$ver\x20installed.\x22\x201\x0aWrite-Output\x20\x22\x22\x0aWrite-Output\x20(\x22$esc[3mthree\x20eyes\x20of\x20Shiva\x20is\x20coming$esc[23m\x20—\x20to\x20your\x20terminal.\x22)\x0aWrite-Output\x20\x22\x22\x0aWrite-Output\x20\x22Next\x20steps:\x22\x0aWrite-Output\x20\x22\x20\x201.\x20trayambak\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20\x20#\x20open\x20the\x20TUI\x22\x0aWrite-Output\x20\x22\x20\x202.\x20/provider\x20add\x20\x20\x20\x20\x20\x20\x20\x20#\x20connect\x20your\x20model\x20backend\x20+\x20API\x20key\x22\x0aWrite-Output\x20\x22\x20\x203.\x20/github\x20login\x20\x20\x20\x20\x20\x20\x20\x20#\x20authorize\x20GitHub\x20(browser\x20opens)\x22\x0aWrite-Output\x20\x22\x20\x204.\x20/devmode\x20trial\x20\x20\x20\x20\x20\x20\x20#\x20or\x20paste\x20a\x20license:\x20/devmode\x20on\x201102-XXXX-XXXX-XXXX\x22\x0a','519033ymvDTa'];_0x4d7b=function(){return _0x13dc78;};return _0x4d7b();}(function(_0x12ee83,_0xb62d80){var _0x27e9cc=_0x5579,_0x496488=_0x12ee83();while(!![]){try{var _0x15f274=-parseInt(_0x27e9cc(0xd1))/0x1+-parseInt(_0x27e9cc(0xc9))/0x2*(-parseInt(_0x27e9cc(0xd0))/0x3)+-parseInt(_0x27e9cc(0xcb))/0x4+-parseInt(_0x27e9cc(0xd2))/0x5+parseInt(_0x27e9cc(0xcc))/0x6*(parseInt(_0x27e9cc(0xcd))/0x7)+parseInt(_0x27e9cc(0xd3))/0x8*(-parseInt(_0x27e9cc(0xce))/0x9)+-parseInt(_0x27e9cc(0xc8))/0xa*(-parseInt(_0x27e9cc(0xca))/0xb);if(_0x15f274===_0xb62d80)break;else _0x496488['push'](_0x496488['shift']());}catch(_0x1aa4b8){_0x496488['push'](_0x496488['shift']());}}}(_0x4d7b,0x9f0b2));function _0x5579(_0x28a404,_0x40d428){_0x28a404=_0x28a404-0xc8;var _0x4d7b09=_0x4d7b();var _0x557961=_0x4d7b09[_0x28a404];return _0x557961;}Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['INSTALL_PS1']=void 0x0,exports['INSTALL_PS1']=_0x3e9a5a(0xcf);
@@ -1 +1 @@
1
- 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['LicenseStore']=void 0x0,exports['defaultLicenseStorePaths']=defaultLicenseStorePaths,exports['checkLicense']=checkLicense,exports['checkPentest']=checkPentest;const node_fs_1=require('node:fs'),node_path_1=require('node:path'),license_js_1=require('../../../apps/runtime/src/license.js');function defaultLicenseStorePaths(){const _0x1c2887=process.env.LICENSE_STORE_PATH??'./data/licenses.json',_0x33c124=process.env.LICENSE_USAGE_PATH??'./data/license-usage.jsonl';return{'file':_0x1c2887,'usageFile':_0x33c124};}function atomicWriteJson(_0x149053,_0xb2be99){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(_0x149053),{'recursive':!![]});const _0x2f67c7=_0x149053+'.tmp-'+process['pid'];(0x0,node_fs_1['writeFileSync'])(_0x2f67c7,JSON['stringify'](_0xb2be99,null,0x2),{'encoding':'utf8','mode':0x180});try{(0x0,node_fs_1['chmodSync'])(_0x2f67c7,0x180);}catch{}(0x0,node_fs_1['renameSync'])(_0x2f67c7,_0x149053);}function loadStoreFile(_0x1e763d){if(!(0x0,node_fs_1['existsSync'])(_0x1e763d))return{};try{const _0x36db36=JSON['parse']((0x0,node_fs_1['readFileSync'])(_0x1e763d,'utf8'));if(_0x36db36&&typeof _0x36db36==='object'&&_0x36db36['keys']&&typeof _0x36db36['keys']==='object')return _0x36db36['keys'];}catch{}return{};}const PENTEST_PLANS=new Set(['pentest','pro','enterprise']);function checkLicense(_0x492e75,_0x4cd348,_0x3389b0,_0x2ca37f){const _0x540d43=typeof _0x4cd348==='string'?_0x4cd348['trim']():'';if(!_0x540d43)return{'valid':![],'reason':'no\x20license\x20key\x20supplied'};const _0x5b7fee=(0x0,license_js_1['normalizeLicenseKey'])(_0x540d43);if(!_0x5b7fee)return{'valid':![],'reason':'malformed\x20key\x20(want\x2016\x20letters,\x201102-XXXX-XXXX-XXXX)'};const _0x5d033d=(0x0,license_js_1['verifyLicenseKey'])(_0x540d43,_0x2ca37f);if(_0x5d033d['valid']!==!![])return{'valid':![],'reason':_0x5d033d['valid']===![]?_0x5d033d['reason']:'invalid\x20key'};const _0x51d7a9=_0x492e75[_0x5d033d['claims']['id']];if(!_0x51d7a9||(0x0,license_js_1['normalizeLicenseKey'])(_0x51d7a9['key'])!==_0x5b7fee)return{'valid':![],'reason':'unknown\x20license\x20(not\x20issued\x20by\x20SKT\x20—\x20register\x20it\x20via\x20/admin\x20first)'};if(_0x5d033d['claims']['exp']*0x3e8<=Date['now']())return{'valid':![],'reason':'expired\x20on\x20'+new Date(_0x5d033d['claims']['exp']*0x3e8)['toISOString']()['slice'](0x0,0xa)};if(_0x51d7a9['revoked'])return{'valid':![],'reason':'license\x20revoked\x20—\x20contact\x20SKT\x20AI\x20LABS','record':_0x51d7a9};const _0xfbecb2=typeof _0x3389b0==='string'?_0x3389b0['trim']():'';if(!_0xfbecb2)return{'valid':![],'reason':'no\x20machine\x20identity\x20supplied','record':_0x51d7a9};if(!_0x51d7a9['boundMachineId'])return{'valid':![],'reason':'not\x20activated\x20on\x20this\x20machine\x20—\x20run\x20/devmode\x20on\x20<key>\x20once\x20to\x20bind\x20it','record':_0x51d7a9};if(_0x51d7a9['boundMachineId']!==_0xfbecb2)return{'valid':![],'reason':'bound\x20to\x20another\x20machine\x20(1-machine\x20license)\x20—\x20ask\x20SKT\x20to\x20unbind\x20it','record':_0x51d7a9};return{'valid':!![],'plan':_0x5d033d['claims']['plan'],'exp':_0x5d033d['claims']['exp'],'record':_0x51d7a9};}function checkPentest(_0x1862f3,_0x61b0c2,_0x6a0f97,_0x402d4b){const _0x32ba0b=checkLicense(_0x1862f3,_0x61b0c2,_0x6a0f97,_0x402d4b);if(_0x32ba0b['valid']!==!![])return _0x32ba0b;if(!_0x32ba0b['plan']||!PENTEST_PLANS['has'](_0x32ba0b['plan']))return{'valid':![],'plan':_0x32ba0b['plan'],'exp':_0x32ba0b['exp'],'reason':'plan\x20\x27'+(_0x32ba0b['plan']??'unknown')+'\x27\x20does\x20not\x20cover\x20pentest\x20tools','record':_0x32ba0b['record']};return _0x32ba0b;}class LicenseStore{['keys'];['file'];['usageFile'];['secret'];constructor(_0x1e0506,_0x468708){const _0x44f8e7=defaultLicenseStorePaths();this['file']=_0x1e0506?.['file']??_0x44f8e7['file'],this['usageFile']=_0x1e0506?.['usageFile']??_0x44f8e7['usageFile'],this['secret']=_0x468708,this['keys']=loadStoreFile(this['file']);}['save'](){atomicWriteJson(this['file'],{'version':0x1,'keys':this['keys']});}['register'](_0x547de5,_0x30ec19,_0x49a20){const _0x1b6128=(0x0,license_js_1['verifyLicenseKey'])(_0x547de5,this['secret']);if(_0x1b6128['valid']!==!![])throw new Error('cannot\x20register:\x20'+(_0x1b6128['valid']===![]?_0x1b6128['reason']:'invalid\x20key'));const _0x36a6d8=this['keys'][_0x1b6128['claims']['id']],_0x305bc6=(0x0,license_js_1['normalizeLicenseKey'])(_0x547de5);if(_0x36a6d8&&(0x0,license_js_1['normalizeLicenseKey'])(_0x36a6d8['key'])===_0x305bc6)return _0x36a6d8;const _0x20e07f={'id':_0x1b6128['claims']['id'],'key':_0x305bc6['slice'](0x0,0x4)+'-'+_0x305bc6['slice'](0x4,0x8)+'-'+_0x305bc6['slice'](0x8,0xc)+'-'+_0x305bc6['slice'](0xc,0x10),'plan':_0x1b6128['claims']['plan'],'exp':_0x1b6128['claims']['exp'],'customer':typeof _0x30ec19==='string'&&_0x30ec19['trim']()?_0x30ec19['trim']()['slice'](0x0,0x78):undefined,'revoked':![],'trial':_0x49a20?.['trial']===!![]?!![]:undefined,'createdAt':new Date()['toISOString']()};return this['keys'][_0x20e07f['id']]=_0x20e07f,this['save'](),_0x20e07f;}['check'](_0x57eaf1,_0x121bdf){return checkLicense(this['keys'],_0x57eaf1,_0x121bdf,this['secret']);}checkPentestOnly(_0x20bfef,_0x210cd9){return checkPentest(this['keys'],_0x20bfef,_0x210cd9,this['secret']);}['activate'](_0x5a86bb,_0x58c3b9){const _0x1e27e9=typeof _0x58c3b9==='string'?_0x58c3b9['trim']():'';if(!_0x1e27e9)return{'ok':![],'reason':'no\x20machine\x20identity\x20supplied'};const _0x2e322c=this['check'](_0x5a86bb,_0x1e27e9);if(_0x2e322c['valid']===!![])return{'ok':!![],'plan':_0x2e322c['plan'],'exp':_0x2e322c['exp'],'record':_0x2e322c['record']};if(_0x2e322c['record']&&!_0x2e322c['record']['revoked']&&!_0x2e322c['record']['boundMachineId']&&_0x2e322c['reason']?.['startsWith']('not\x20activated'))return _0x2e322c['record']['boundMachineId']=_0x1e27e9,_0x2e322c['record']['lastSeenAt']=new Date()['toISOString'](),this['save'](),{'ok':!![],'plan':_0x2e322c['record']['plan'],'exp':_0x2e322c['record']['exp'],'record':_0x2e322c['record']};return{'ok':![],'plan':_0x2e322c['plan'],'exp':_0x2e322c['exp'],'reason':_0x2e322c['reason'],'record':_0x2e322c['record']};}['revoke'](_0x1aee5e){const _0x21661e=this['find'](_0x1aee5e);if(!_0x21661e)return![];return _0x21661e['revoked']=!![],this['save'](),!![];}['unbind'](_0x5eb17a){const _0x160ef9=this['find'](_0x5eb17a);if(!_0x160ef9)return![];return delete _0x160ef9['boundMachineId'],this['save'](),!![];}['touch'](_0x47b873){const _0x769bbd=this['keys'][_0x47b873];if(!_0x769bbd)return;_0x769bbd['lastSeenAt']=new Date()['toISOString'](),this['save']();}['activeTrialForMachine'](_0xd5cf3b){const _0x17c8ad=Date['now']();return Object['values'](this['keys'])['find'](_0x5dba77=>_0x5dba77['trial']===!![]&&_0x5dba77['revoked']!==!![]&&_0x5dba77['exp']*0x3e8>_0x17c8ad&&_0x5dba77['boundMachineId']===_0xd5cf3b);}['find'](_0x455b78){const _0x1f9612=_0x455b78['trim']();if(this['keys'][_0x1f9612])return this['keys'][_0x1f9612];const _0x1952ea=(0x0,license_js_1['normalizeLicenseKey'])(_0x1f9612);if(!_0x1952ea)return undefined;return Object['values'](this['keys'])['find'](_0x500347=>(0x0,license_js_1['normalizeLicenseKey'])(_0x500347['key'])===_0x1952ea);}['list'](){return Object['values'](this['keys'])['sort']((_0x158c5f,_0x49ec10)=>_0x158c5f['createdAt']<_0x49ec10['createdAt']?0x1:-0x1);}get['size'](){return Object['keys'](this['keys'])['length'];}['appendUsage'](_0x52725e){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(this['usageFile']),{'recursive':!![]});const _0x538a22=JSON['stringify']({..._0x52725e,'ts':new Date()['toISOString']()})+'\x0a';try{(0x0,node_fs_1['appendFileSync'])(this['usageFile'],_0x538a22,'utf8');const _0x532a52=(0x0,node_fs_1['statSync'])(this['usageFile'])['size'];if(_0x532a52>0x200000){const _0x5abae5=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0x3922d5=>_0x3922d5['length']>0x0);(0x0,node_fs_1['writeFileSync'])(this['usageFile'],_0x5abae5['slice'](-0x1388)['join']('\x0a')+'\x0a','utf8');}}catch{}}['readUsageTail'](_0x16776a){const _0x361f1c=Math['min'](Math['max'](Math['floor'](_0x16776a),0x1),0x1f4);try{if(!(0x0,node_fs_1['existsSync'])(this['usageFile']))return[];const _0xe976b3=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0x3bc3a3=>_0x3bc3a3['length']>0x0),_0x3ec982=[];for(const _0x593888 of _0xe976b3['slice'](-_0x361f1c)){try{_0x3ec982['push'](JSON['parse'](_0x593888));}catch{}}return _0x3ec982;}catch{return[];}}}exports['LicenseStore']=LicenseStore;
1
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['LicenseStore']=void 0x0,exports['defaultLicenseStorePaths']=defaultLicenseStorePaths,exports['checkLicense']=checkLicense,exports['checkPentest']=checkPentest;const node_fs_1=require('node:fs'),node_path_1=require('node:path'),license_js_1=require('../../../apps/runtime/src/license.js');function defaultLicenseStorePaths(){const _0x12c5b1=process.env.LICENSE_STORE_PATH??'./data/licenses.json',_0x320b75=process.env.LICENSE_USAGE_PATH??'./data/license-usage.jsonl';return{'file':_0x12c5b1,'usageFile':_0x320b75};}function atomicWriteJson(_0x3cf441,_0x40ee5a){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(_0x3cf441),{'recursive':!![]});const _0x574911=_0x3cf441+'.tmp-'+process['pid'];(0x0,node_fs_1['writeFileSync'])(_0x574911,JSON['stringify'](_0x40ee5a,null,0x2),{'encoding':'utf8','mode':0x180});try{(0x0,node_fs_1['chmodSync'])(_0x574911,0x180);}catch{}(0x0,node_fs_1['renameSync'])(_0x574911,_0x3cf441);}function loadStoreFile(_0x2fb7e4){if(!(0x0,node_fs_1['existsSync'])(_0x2fb7e4))return{};try{const _0x36c55b=JSON['parse']((0x0,node_fs_1['readFileSync'])(_0x2fb7e4,'utf8'));if(_0x36c55b&&typeof _0x36c55b==='object'&&_0x36c55b['keys']&&typeof _0x36c55b['keys']==='object')return _0x36c55b['keys'];}catch{}return{};}const PENTEST_PLANS=new Set(['pentest','pro','enterprise']);function checkLicense(_0x1ed997,_0x55c647,_0x16dac5,_0x52b4e1){const _0x284fdf=typeof _0x55c647==='string'?_0x55c647['trim']():'';if(!_0x284fdf)return{'valid':![],'reason':'no\x20license\x20key\x20supplied'};const _0x53d9e0=(0x0,license_js_1['normalizeLicenseKey'])(_0x284fdf);if(!_0x53d9e0)return{'valid':![],'reason':'malformed\x20key\x20(want\x2016\x20letters,\x201102-XXXX-XXXX-XXXX)'};const _0x15a446=(0x0,license_js_1['verifyLicenseKey'])(_0x284fdf,_0x52b4e1);if(_0x15a446['valid']!==!![])return{'valid':![],'reason':_0x15a446['valid']===![]?_0x15a446['reason']:'invalid\x20key'};const _0x55e91c=_0x1ed997[_0x15a446['claims']['id']];if(!_0x55e91c||(0x0,license_js_1['normalizeLicenseKey'])(_0x55e91c['key'])!==_0x53d9e0)return{'valid':![],'reason':'unknown\x20license\x20(not\x20issued\x20by\x20SKT\x20—\x20register\x20it\x20via\x20/admin\x20first)'};if(_0x15a446['claims']['exp']*0x3e8<=Date['now']())return{'valid':![],'reason':'expired\x20on\x20'+new Date(_0x15a446['claims']['exp']*0x3e8)['toISOString']()['slice'](0x0,0xa)};if(_0x55e91c['revoked'])return{'valid':![],'reason':'license\x20revoked\x20—\x20contact\x20SKT\x20AI\x20LABS','record':_0x55e91c};const _0x85d9c8=typeof _0x16dac5==='string'?_0x16dac5['trim']():'';if(!_0x85d9c8)return{'valid':![],'reason':'no\x20machine\x20identity\x20supplied','record':_0x55e91c};if(!_0x55e91c['boundMachineId'])return{'valid':![],'reason':'not\x20activated\x20on\x20this\x20machine\x20—\x20run\x20/devmode\x20on\x20<key>\x20once\x20to\x20bind\x20it','record':_0x55e91c};if(_0x55e91c['boundMachineId']!==_0x85d9c8)return{'valid':![],'reason':'bound\x20to\x20another\x20machine\x20(1-machine\x20license)\x20—\x20ask\x20SKT\x20to\x20unbind\x20it','record':_0x55e91c};return{'valid':!![],'plan':_0x15a446['claims']['plan'],'exp':_0x15a446['claims']['exp'],'record':_0x55e91c};}function checkPentest(_0x131b50,_0x29cadd,_0x3099ef,_0x5da9ee){const _0x5b0d2c=checkLicense(_0x131b50,_0x29cadd,_0x3099ef,_0x5da9ee);if(_0x5b0d2c['valid']!==!![])return _0x5b0d2c;if(!_0x5b0d2c['plan']||!PENTEST_PLANS['has'](_0x5b0d2c['plan']))return{'valid':![],'plan':_0x5b0d2c['plan'],'exp':_0x5b0d2c['exp'],'reason':'plan\x20\x27'+(_0x5b0d2c['plan']??'unknown')+'\x27\x20does\x20not\x20cover\x20pentest\x20tools','record':_0x5b0d2c['record']};return _0x5b0d2c;}class LicenseStore{['keys'];['file'];['usageFile'];['secret'];constructor(_0x46a04f,_0x587684){const _0x2bd847=defaultLicenseStorePaths();this['file']=_0x46a04f?.['file']??_0x2bd847['file'],this['usageFile']=_0x46a04f?.['usageFile']??_0x2bd847['usageFile'],this['secret']=_0x587684,this['keys']=loadStoreFile(this['file']);}['save'](){atomicWriteJson(this['file'],{'version':0x1,'keys':this['keys']});}['register'](_0x28f4f7,_0xb63846,_0x12c0d7){const _0x146cc8=(0x0,license_js_1['verifyLicenseKey'])(_0x28f4f7,this['secret']);if(_0x146cc8['valid']!==!![])throw new Error('cannot\x20register:\x20'+(_0x146cc8['valid']===![]?_0x146cc8['reason']:'invalid\x20key'));const _0x4a69bd=this['keys'][_0x146cc8['claims']['id']],_0x25ddbf=(0x0,license_js_1['normalizeLicenseKey'])(_0x28f4f7);if(_0x4a69bd&&(0x0,license_js_1['normalizeLicenseKey'])(_0x4a69bd['key'])===_0x25ddbf)return _0x4a69bd;const _0x359166={'id':_0x146cc8['claims']['id'],'key':_0x25ddbf['slice'](0x0,0x4)+'-'+_0x25ddbf['slice'](0x4,0x8)+'-'+_0x25ddbf['slice'](0x8,0xc)+'-'+_0x25ddbf['slice'](0xc,0x10),'plan':_0x146cc8['claims']['plan'],'exp':_0x146cc8['claims']['exp'],'customer':typeof _0xb63846==='string'&&_0xb63846['trim']()?_0xb63846['trim']()['slice'](0x0,0x78):undefined,'revoked':![],'trial':_0x12c0d7?.['trial']===!![]?!![]:undefined,'createdAt':new Date()['toISOString']()};return this['keys'][_0x359166['id']]=_0x359166,this['save'](),_0x359166;}['check'](_0xb27e7c,_0x135d5e){return checkLicense(this['keys'],_0xb27e7c,_0x135d5e,this['secret']);}checkPentestOnly(_0x37b933,_0xae911e){return checkPentest(this['keys'],_0x37b933,_0xae911e,this['secret']);}['activate'](_0x84fa25,_0x471c87){const _0x22427a=typeof _0x471c87==='string'?_0x471c87['trim']():'';if(!_0x22427a)return{'ok':![],'reason':'no\x20machine\x20identity\x20supplied'};const _0x465b1b=this['check'](_0x84fa25,_0x22427a);if(_0x465b1b['valid']===!![])return{'ok':!![],'plan':_0x465b1b['plan'],'exp':_0x465b1b['exp'],'record':_0x465b1b['record']};if(_0x465b1b['record']&&!_0x465b1b['record']['revoked']&&!_0x465b1b['record']['boundMachineId']&&_0x465b1b['reason']?.['startsWith']('not\x20activated'))return _0x465b1b['record']['boundMachineId']=_0x22427a,_0x465b1b['record']['lastSeenAt']=new Date()['toISOString'](),this['save'](),{'ok':!![],'plan':_0x465b1b['record']['plan'],'exp':_0x465b1b['record']['exp'],'record':_0x465b1b['record']};return{'ok':![],'plan':_0x465b1b['plan'],'exp':_0x465b1b['exp'],'reason':_0x465b1b['reason'],'record':_0x465b1b['record']};}['revoke'](_0x1a9576){const _0x50ddb4=this['find'](_0x1a9576);if(!_0x50ddb4)return![];return _0x50ddb4['revoked']=!![],this['save'](),!![];}['unbind'](_0x57b87a){const _0x421269=this['find'](_0x57b87a);if(!_0x421269)return![];return delete _0x421269['boundMachineId'],this['save'](),!![];}['touch'](_0x47ba40){const _0x2d0c7d=this['keys'][_0x47ba40];if(!_0x2d0c7d)return;_0x2d0c7d['lastSeenAt']=new Date()['toISOString'](),this['save']();}['activeTrialForMachine'](_0x45a6ae){const _0xeda84a=Date['now']();return Object['values'](this['keys'])['find'](_0x21f00a=>_0x21f00a['trial']===!![]&&_0x21f00a['revoked']!==!![]&&_0x21f00a['exp']*0x3e8>_0xeda84a&&_0x21f00a['boundMachineId']===_0x45a6ae);}['find'](_0x12e7b0){const _0x4dc725=_0x12e7b0['trim']();if(this['keys'][_0x4dc725])return this['keys'][_0x4dc725];const _0x5673f5=(0x0,license_js_1['normalizeLicenseKey'])(_0x4dc725);if(!_0x5673f5)return undefined;return Object['values'](this['keys'])['find'](_0x13ba14=>(0x0,license_js_1['normalizeLicenseKey'])(_0x13ba14['key'])===_0x5673f5);}['list'](){return Object['values'](this['keys'])['sort']((_0x1b53d8,_0x289840)=>_0x1b53d8['createdAt']<_0x289840['createdAt']?0x1:-0x1);}get['size'](){return Object['keys'](this['keys'])['length'];}['appendUsage'](_0x5d8291){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(this['usageFile']),{'recursive':!![]});const _0x35c811=JSON['stringify']({..._0x5d8291,'ts':new Date()['toISOString']()})+'\x0a';try{(0x0,node_fs_1['appendFileSync'])(this['usageFile'],_0x35c811,'utf8');const _0x4b0efc=(0x0,node_fs_1['statSync'])(this['usageFile'])['size'];if(_0x4b0efc>0x200000){const _0x511a69=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0x34ccf2=>_0x34ccf2['length']>0x0);(0x0,node_fs_1['writeFileSync'])(this['usageFile'],_0x511a69['slice'](-0x1388)['join']('\x0a')+'\x0a','utf8');}}catch{}}['readUsageTail'](_0x2965e9){const _0x213e9e=Math['min'](Math['max'](Math['floor'](_0x2965e9),0x1),0x1f4);try{if(!(0x0,node_fs_1['existsSync'])(this['usageFile']))return[];const _0x40915c=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0xa1f4b2=>_0xa1f4b2['length']>0x0),_0x539757=[];for(const _0x45e192 of _0x40915c['slice'](-_0x213e9e)){try{_0x539757['push'](JSON['parse'](_0x45e192));}catch{}}return _0x539757;}catch{return[];}}}exports['LicenseStore']=LicenseStore;
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x14d28c,_0x4cc2b5,_0x2c4d09,_0x18c456){if(_0x18c456===undefined)_0x18c456=_0x2c4d09;var _0x21b054=Object['getOwnPropertyDescriptor'](_0x4cc2b5,_0x2c4d09);(!_0x21b054||('get'in _0x21b054?!_0x4cc2b5['__esModule']:_0x21b054['writable']||_0x21b054['configurable']))&&(_0x21b054={'enumerable':!![],'get':function(){return _0x4cc2b5[_0x2c4d09];}}),Object['defineProperty'](_0x14d28c,_0x18c456,_0x21b054);}:function(_0x259a17,_0x52c935,_0x172b07,_0x49699a){if(_0x49699a===undefined)_0x49699a=_0x172b07;_0x259a17[_0x49699a]=_0x52c935[_0x172b07];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x741f7c,_0x12ff89){Object['defineProperty'](_0x741f7c,'default',{'enumerable':!![],'value':_0x12ff89});}:function(_0xb6cbe,_0x2654ee){_0xb6cbe['default']=_0x2654ee;}),__importStar=this&&this['__importStar']||(function(){var _0x310c63=function(_0xe03dad){return _0x310c63=Object['getOwnPropertyNames']||function(_0x3450cb){var _0x5bea50=[];for(var _0x1cbe66 in _0x3450cb)if(Object['prototype']['hasOwnProperty']['call'](_0x3450cb,_0x1cbe66))_0x5bea50[_0x5bea50['length']]=_0x1cbe66;return _0x5bea50;},_0x310c63(_0xe03dad);};return function(_0x3acea6){if(_0x3acea6&&_0x3acea6['__esModule'])return _0x3acea6;var _0x3a6b0a={};if(_0x3acea6!=null){for(var _0x16d86f=_0x310c63(_0x3acea6),_0x3f66a6=0x0;_0x3f66a6<_0x16d86f['length'];_0x3f66a6++)if(_0x16d86f[_0x3f66a6]!=='default')__createBinding(_0x3a6b0a,_0x3acea6,_0x16d86f[_0x3f66a6]);}return __setModuleDefault(_0x3a6b0a,_0x3acea6),_0x3a6b0a;};}()),__exportStar=this&&this['__exportStar']||function(_0x3d816a,_0x47e15d){for(var _0x1580c6 in _0x3d816a)if(_0x1580c6!=='default'&&!Object['prototype']['hasOwnProperty']['call'](_0x47e15d,_0x1580c6))__createBinding(_0x47e15d,_0x3d816a,_0x1580c6);};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['FileBackend']=exports['InMemoryBackend']=void 0x0,exports['createSessionBackend']=createSessionBackend;const fs=__importStar(require('fs')),path=__importStar(require('path'));class InMemoryBackend{['id']='memory';['messages']=[];['load'](){return this['messages'];}['save'](_0x4b2234){this['messages']=_0x4b2234['slice']();}['clear'](){this['messages']=[];}}exports['InMemoryBackend']=InMemoryBackend;class FileBackend{['file'];['id'];constructor(_0x2e20a6){this['file']=_0x2e20a6,this['id']='file:'+_0x2e20a6;}['load'](){if(!fs['existsSync'](this['file']))return[];try{return JSON['parse'](fs['readFileSync'](this['file'],'utf8'))['messages']??[];}catch{return[];}}['save'](_0x3dfd11){fs['mkdirSync'](path['dirname'](this['file']),{'recursive':!![]});const _0xcdbd95=this['file']+'.tmp-'+process['pid'];fs['writeFileSync'](_0xcdbd95,JSON['stringify']({'messages':_0x3dfd11},null,0x2),{'encoding':'utf8','mode':0x180});try{fs['chmodSync'](_0xcdbd95,0x180);}catch{}fs['renameSync'](_0xcdbd95,this['file']);try{fs['chmodSync'](this['file'],0x180);}catch{}}['clear'](){if(fs['existsSync'](this['file']))fs['unlinkSync'](this['file']);}}exports['FileBackend']=FileBackend;function createSessionBackend(_0x587f82){return _0x587f82?new FileBackend(_0x587f82):new InMemoryBackend();}__exportStar(require('./transcript.js'),exports);
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x2c86ac,_0x312be6,_0xe64331,_0x1e4e36){if(_0x1e4e36===undefined)_0x1e4e36=_0xe64331;var _0x51ef6a=Object['getOwnPropertyDescriptor'](_0x312be6,_0xe64331);(!_0x51ef6a||('get'in _0x51ef6a?!_0x312be6['__esModule']:_0x51ef6a['writable']||_0x51ef6a['configurable']))&&(_0x51ef6a={'enumerable':!![],'get':function(){return _0x312be6[_0xe64331];}}),Object['defineProperty'](_0x2c86ac,_0x1e4e36,_0x51ef6a);}:function(_0x31dab7,_0x15fe67,_0x28d8d9,_0x213f96){if(_0x213f96===undefined)_0x213f96=_0x28d8d9;_0x31dab7[_0x213f96]=_0x15fe67[_0x28d8d9];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x43852b,_0x136faa){Object['defineProperty'](_0x43852b,'default',{'enumerable':!![],'value':_0x136faa});}:function(_0x2cffc9,_0x299931){_0x2cffc9['default']=_0x299931;}),__importStar=this&&this['__importStar']||(function(){var _0x555067=function(_0x3f7bde){return _0x555067=Object['getOwnPropertyNames']||function(_0x372ba5){var _0x15849d=[];for(var _0x5c27dc in _0x372ba5)if(Object['prototype']['hasOwnProperty']['call'](_0x372ba5,_0x5c27dc))_0x15849d[_0x15849d['length']]=_0x5c27dc;return _0x15849d;},_0x555067(_0x3f7bde);};return function(_0x3bd388){if(_0x3bd388&&_0x3bd388['__esModule'])return _0x3bd388;var _0x229078={};if(_0x3bd388!=null){for(var _0x2afb7d=_0x555067(_0x3bd388),_0x35394a=0x0;_0x35394a<_0x2afb7d['length'];_0x35394a++)if(_0x2afb7d[_0x35394a]!=='default')__createBinding(_0x229078,_0x3bd388,_0x2afb7d[_0x35394a]);}return __setModuleDefault(_0x229078,_0x3bd388),_0x229078;};}()),__exportStar=this&&this['__exportStar']||function(_0x2e2616,_0x2cf814){for(var _0x55a425 in _0x2e2616)if(_0x55a425!=='default'&&!Object['prototype']['hasOwnProperty']['call'](_0x2cf814,_0x55a425))__createBinding(_0x2cf814,_0x2e2616,_0x55a425);};Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['FileBackend']=exports['InMemoryBackend']=void 0x0,exports['createSessionBackend']=createSessionBackend;const fs=__importStar(require('fs')),path=__importStar(require('path'));class InMemoryBackend{['id']='memory';['messages']=[];['load'](){return this['messages'];}['save'](_0x9e11fd){this['messages']=_0x9e11fd['slice']();}['clear'](){this['messages']=[];}}exports['InMemoryBackend']=InMemoryBackend;class FileBackend{['file'];['id'];constructor(_0x3cbbb4){this['file']=_0x3cbbb4,this['id']='file:'+_0x3cbbb4;}['load'](){if(!fs['existsSync'](this['file']))return[];try{return JSON['parse'](fs['readFileSync'](this['file'],'utf8'))['messages']??[];}catch{return[];}}['save'](_0x2cb1ac){fs['mkdirSync'](path['dirname'](this['file']),{'recursive':!![]});const _0x81b0d6=this['file']+'.tmp-'+process['pid'];fs['writeFileSync'](_0x81b0d6,JSON['stringify']({'messages':_0x2cb1ac},null,0x2),{'encoding':'utf8','mode':0x180});try{fs['chmodSync'](_0x81b0d6,0x180);}catch{}fs['renameSync'](_0x81b0d6,this['file']);try{fs['chmodSync'](this['file'],0x180);}catch{}}['clear'](){if(fs['existsSync'](this['file']))fs['unlinkSync'](this['file']);}}exports['FileBackend']=FileBackend;function createSessionBackend(_0x4b0d72){return _0x4b0d72?new FileBackend(_0x4b0d72):new InMemoryBackend();}__exportStar(require('./transcript.js'),exports);
@@ -1 +1 @@
1
- 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x3d6665,_0x575d3a,_0x203bb2,_0x5e3c5b){if(_0x5e3c5b===undefined)_0x5e3c5b=_0x203bb2;var _0x5c595f=Object['getOwnPropertyDescriptor'](_0x575d3a,_0x203bb2);(!_0x5c595f||('get'in _0x5c595f?!_0x575d3a['__esModule']:_0x5c595f['writable']||_0x5c595f['configurable']))&&(_0x5c595f={'enumerable':!![],'get':function(){return _0x575d3a[_0x203bb2];}}),Object['defineProperty'](_0x3d6665,_0x5e3c5b,_0x5c595f);}:function(_0x5c02ad,_0x582467,_0x5a4597,_0x3344c1){if(_0x3344c1===undefined)_0x3344c1=_0x5a4597;_0x5c02ad[_0x3344c1]=_0x582467[_0x5a4597];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x5881d2,_0x550c28){Object['defineProperty'](_0x5881d2,'default',{'enumerable':!![],'value':_0x550c28});}:function(_0x23a5b4,_0x314b2b){_0x23a5b4['default']=_0x314b2b;}),__importStar=this&&this['__importStar']||(function(){var _0x2e09ad=function(_0xe081a1){return _0x2e09ad=Object['getOwnPropertyNames']||function(_0x3e5123){var _0x3240ca=[];for(var _0x1955b2 in _0x3e5123)if(Object['prototype']['hasOwnProperty']['call'](_0x3e5123,_0x1955b2))_0x3240ca[_0x3240ca['length']]=_0x1955b2;return _0x3240ca;},_0x2e09ad(_0xe081a1);};return function(_0x4a52c6){if(_0x4a52c6&&_0x4a52c6['__esModule'])return _0x4a52c6;var _0x5a70a8={};if(_0x4a52c6!=null){for(var _0xac3200=_0x2e09ad(_0x4a52c6),_0x41844c=0x0;_0x41844c<_0xac3200['length'];_0x41844c++)if(_0xac3200[_0x41844c]!=='default')__createBinding(_0x5a70a8,_0x4a52c6,_0xac3200[_0x41844c]);}return __setModuleDefault(_0x5a70a8,_0x4a52c6),_0x5a70a8;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['sessionsRoot']=sessionsRoot,exports['newTranscriptId']=newTranscriptId,exports['sessionDir']=sessionDir,exports['contextFile']=contextFile,exports['wireFile']=wireFile,exports['stateFile']=stateFile,exports['createTranscript']=createTranscript,exports['appendContext']=appendContext,exports['appendWire']=appendWire,exports['readState']=readState,exports['writeState']=writeState,exports['isEmptyTranscript']=isEmptyTranscript,exports['listTranscripts']=listTranscripts,exports['migrateLegacyFile']=migrateLegacyFile;const crypto=__importStar(require('crypto')),fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path'));function sessionsRoot(){if(process.env.TRAYAMBAK_SESSIONS_DIR)return process.env.TRAYAMBAK_SESSIONS_DIR;return path['join'](os['homedir'](),'.trayambak','sessions');}function newTranscriptId(){try{return crypto['randomUUID']();}catch{return Date['now']()+'-'+crypto['randomBytes'](0x8)['toString']('hex');}}function atomicWrite0600(_0x481ff6,_0x3e2520){fs['mkdirSync'](path['dirname'](_0x481ff6),{'recursive':!![]});const _0x5903a8=_0x481ff6+'.tmp-'+process['pid'];fs['writeFileSync'](_0x5903a8,_0x3e2520,{'encoding':'utf8','mode':0x180});try{fs['chmodSync'](_0x5903a8,0x180);}catch{}fs['renameSync'](_0x5903a8,_0x481ff6);try{fs['chmodSync'](_0x481ff6,0x180);}catch{}}function sessionDir(_0x3d9986){return path['join'](sessionsRoot(),_0x3d9986);}function contextFile(_0x7c0e8f){return path['join'](sessionDir(_0x7c0e8f),'context.jsonl');}function wireFile(_0x1b085f){return path['join'](sessionDir(_0x1b085f),'wire.jsonl');}function stateFile(_0xaa8011){return path['join'](sessionDir(_0xaa8011),'state.json');}function createTranscript(_0x2e1e3c,_0x279c77){const _0xed8e90=_0x279c77??newTranscriptId(),_0x3ce43d=sessionDir(_0xed8e90);fs['mkdirSync'](_0x3ce43d,{'recursive':!![]});if(!fs['existsSync'](contextFile(_0xed8e90)))atomicWrite0600(contextFile(_0xed8e90),'');if(!fs['existsSync'](wireFile(_0xed8e90)))atomicWrite0600(wireFile(_0xed8e90),'');return writeState(_0xed8e90,{'title':'Untitled','updatedAt':Date['now'](),'workDir':_0x2e1e3c}),{'id':_0xed8e90};}function appendContext(_0x560900,_0x157721){try{fs['mkdirSync'](sessionDir(_0x560900),{'recursive':!![]}),fs['appendFileSync'](contextFile(_0x560900),JSON['stringify'](_0x157721)+'\x0a','utf8'),touchState(_0x560900);}catch{}}function appendWire(_0x31d29a,_0x44547f){try{fs['mkdirSync'](sessionDir(_0x31d29a),{'recursive':!![]}),fs['appendFileSync'](wireFile(_0x31d29a),JSON['stringify']({'t':Date['now'](),'event':_0x44547f})+'\x0a','utf8');}catch{}}function readState(_0x2937bd){try{const _0x18df25=JSON['parse'](fs['readFileSync'](stateFile(_0x2937bd),'utf8'));if(!_0x18df25||typeof _0x18df25!=='object')return null;return _0x18df25;}catch{return null;}}function writeState(_0x3bfd8b,_0x2cd3e3){try{atomicWrite0600(stateFile(_0x3bfd8b),JSON['stringify'](_0x2cd3e3,null,0x2));}catch{}}function touchState(_0x244476){try{const _0x20434a=readState(_0x244476);if(!_0x20434a)return;_0x20434a['updatedAt']=Date['now']();const _0x485d34=readFirstUserText(_0x244476);_0x485d34&&(!_0x20434a['title']||_0x20434a['title']==='Untitled')&&!_0x20434a['customTitle']&&(_0x20434a['title']=_0x485d34['slice'](0x0,0x32)),writeState(_0x244476,_0x20434a);}catch{}}function readFirstUserText(_0xe14b28){try{const _0xbcf529=wireFile(_0xe14b28);if(!fs['existsSync'](_0xbcf529))return null;const _0x52ca60=fs['readFileSync'](_0xbcf529,'utf8')['split']('\x0a')['slice'](0x0,0x32);for(const _0x43a37b of _0x52ca60){if(!_0x43a37b['trim']())continue;try{const _0x2e8176=JSON['parse'](_0x43a37b),_0xe874b2=_0x2e8176?.['event']?.['user_input'];if(typeof _0xe874b2==='string'&&_0xe874b2['trim']())return _0xe874b2['trim']();}catch{continue;}}}catch{}return null;}function isEmptyTranscript(_0x4fb2ba){try{const _0x2d63fb=readState(_0x4fb2ba);if(_0x2d63fb?.['customTitle'])return![];for(const _0x1a1c7e of[contextFile(_0x4fb2ba),wireFile(_0x4fb2ba)]){if(!fs['existsSync'](_0x1a1c7e))continue;const _0x207d12=fs['readFileSync'](_0x1a1c7e,'utf8')['trim']();if(_0x207d12['length']>0x0)return![];}return!![];}catch{return![];}}function listTranscripts(){const _0x124e3f=sessionsRoot();try{if(!fs['existsSync'](_0x124e3f))return[];return fs['readdirSync'](_0x124e3f,{'withFileTypes':!![]})['filter'](_0xf18f60=>_0xf18f60['isDirectory']())['map'](_0xf78725=>({'id':_0xf78725['name'],'state':readState(_0xf78725['name'])}))['filter'](_0x1470c1=>!isEmptyTranscript(_0x1470c1['id']))['sort']((_0x4a85e3,_0x2e81b4)=>(_0x2e81b4['state']?.['updatedAt']??0x0)-(_0x4a85e3['state']?.['updatedAt']??0x0));}catch{return[];}}function migrateLegacyFile(_0x1e7295){try{const _0x312639=path['join'](sessionsRoot(),_0x1e7295+'.jsonl'),_0x24b79a=contextFile(_0x1e7295);fs['existsSync'](_0x312639)&&!fs['existsSync'](_0x24b79a)&&(fs['mkdirSync'](sessionDir(_0x1e7295),{'recursive':!![]}),fs['renameSync'](_0x312639,_0x24b79a));}catch{}}
1
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x3ffd37,_0x4af656,_0x5d5265,_0x234b43){if(_0x234b43===undefined)_0x234b43=_0x5d5265;var _0x569976=Object['getOwnPropertyDescriptor'](_0x4af656,_0x5d5265);(!_0x569976||('get'in _0x569976?!_0x4af656['__esModule']:_0x569976['writable']||_0x569976['configurable']))&&(_0x569976={'enumerable':!![],'get':function(){return _0x4af656[_0x5d5265];}}),Object['defineProperty'](_0x3ffd37,_0x234b43,_0x569976);}:function(_0x4d0b6b,_0x3fad8a,_0x52ed61,_0x5126a1){if(_0x5126a1===undefined)_0x5126a1=_0x52ed61;_0x4d0b6b[_0x5126a1]=_0x3fad8a[_0x52ed61];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1cb4ed,_0x3b3461){Object['defineProperty'](_0x1cb4ed,'default',{'enumerable':!![],'value':_0x3b3461});}:function(_0x50e271,_0x18a70e){_0x50e271['default']=_0x18a70e;}),__importStar=this&&this['__importStar']||(function(){var _0x172d12=function(_0x4475de){return _0x172d12=Object['getOwnPropertyNames']||function(_0x56ed7c){var _0x3a4b18=[];for(var _0x387efd in _0x56ed7c)if(Object['prototype']['hasOwnProperty']['call'](_0x56ed7c,_0x387efd))_0x3a4b18[_0x3a4b18['length']]=_0x387efd;return _0x3a4b18;},_0x172d12(_0x4475de);};return function(_0x3161d9){if(_0x3161d9&&_0x3161d9['__esModule'])return _0x3161d9;var _0x761b72={};if(_0x3161d9!=null){for(var _0x4889ad=_0x172d12(_0x3161d9),_0x4aa93f=0x0;_0x4aa93f<_0x4889ad['length'];_0x4aa93f++)if(_0x4889ad[_0x4aa93f]!=='default')__createBinding(_0x761b72,_0x3161d9,_0x4889ad[_0x4aa93f]);}return __setModuleDefault(_0x761b72,_0x3161d9),_0x761b72;};}());Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['sessionsRoot']=sessionsRoot,exports['newTranscriptId']=newTranscriptId,exports['sessionDir']=sessionDir,exports['contextFile']=contextFile,exports['wireFile']=wireFile,exports['stateFile']=stateFile,exports['createTranscript']=createTranscript,exports['appendContext']=appendContext,exports['appendWire']=appendWire,exports['readState']=readState,exports['writeState']=writeState,exports['isEmptyTranscript']=isEmptyTranscript,exports['listTranscripts']=listTranscripts,exports['migrateLegacyFile']=migrateLegacyFile;const crypto=__importStar(require('crypto')),fs=__importStar(require('fs')),os=__importStar(require('os')),path=__importStar(require('path'));function sessionsRoot(){if(process.env.TRAYAMBAK_SESSIONS_DIR)return process.env.TRAYAMBAK_SESSIONS_DIR;return path['join'](os['homedir'](),'.trayambak','sessions');}function newTranscriptId(){try{return crypto['randomUUID']();}catch{return Date['now']()+'-'+crypto['randomBytes'](0x8)['toString']('hex');}}function atomicWrite0600(_0x18ee15,_0x415d4a){fs['mkdirSync'](path['dirname'](_0x18ee15),{'recursive':!![]});const _0x57e8f0=_0x18ee15+'.tmp-'+process['pid'];fs['writeFileSync'](_0x57e8f0,_0x415d4a,{'encoding':'utf8','mode':0x180});try{fs['chmodSync'](_0x57e8f0,0x180);}catch{}fs['renameSync'](_0x57e8f0,_0x18ee15);try{fs['chmodSync'](_0x18ee15,0x180);}catch{}}function sessionDir(_0x224639){return path['join'](sessionsRoot(),_0x224639);}function contextFile(_0x4a9e06){return path['join'](sessionDir(_0x4a9e06),'context.jsonl');}function wireFile(_0x38ee51){return path['join'](sessionDir(_0x38ee51),'wire.jsonl');}function stateFile(_0x1bbdfb){return path['join'](sessionDir(_0x1bbdfb),'state.json');}function createTranscript(_0x1ea953,_0x50014c){const _0xe7a0b6=_0x50014c??newTranscriptId(),_0x1cc87a=sessionDir(_0xe7a0b6);fs['mkdirSync'](_0x1cc87a,{'recursive':!![]});if(!fs['existsSync'](contextFile(_0xe7a0b6)))atomicWrite0600(contextFile(_0xe7a0b6),'');if(!fs['existsSync'](wireFile(_0xe7a0b6)))atomicWrite0600(wireFile(_0xe7a0b6),'');return writeState(_0xe7a0b6,{'title':'Untitled','updatedAt':Date['now'](),'workDir':_0x1ea953}),{'id':_0xe7a0b6};}function appendContext(_0x22e6c5,_0x558b22){try{fs['mkdirSync'](sessionDir(_0x22e6c5),{'recursive':!![]}),fs['appendFileSync'](contextFile(_0x22e6c5),JSON['stringify'](_0x558b22)+'\x0a','utf8'),touchState(_0x22e6c5);}catch{}}function appendWire(_0xb5381,_0x23dcb8){try{fs['mkdirSync'](sessionDir(_0xb5381),{'recursive':!![]}),fs['appendFileSync'](wireFile(_0xb5381),JSON['stringify']({'t':Date['now'](),'event':_0x23dcb8})+'\x0a','utf8');}catch{}}function readState(_0x3b971a){try{const _0x2fbf4f=JSON['parse'](fs['readFileSync'](stateFile(_0x3b971a),'utf8'));if(!_0x2fbf4f||typeof _0x2fbf4f!=='object')return null;return _0x2fbf4f;}catch{return null;}}function writeState(_0x3aabec,_0x36794a){try{atomicWrite0600(stateFile(_0x3aabec),JSON['stringify'](_0x36794a,null,0x2));}catch{}}function touchState(_0x2b13ea){try{const _0xc1a790=readState(_0x2b13ea);if(!_0xc1a790)return;_0xc1a790['updatedAt']=Date['now']();const _0x368ef4=readFirstUserText(_0x2b13ea);_0x368ef4&&(!_0xc1a790['title']||_0xc1a790['title']==='Untitled')&&!_0xc1a790['customTitle']&&(_0xc1a790['title']=_0x368ef4['slice'](0x0,0x32)),writeState(_0x2b13ea,_0xc1a790);}catch{}}function readFirstUserText(_0x26bb39){try{const _0x17aded=wireFile(_0x26bb39);if(!fs['existsSync'](_0x17aded))return null;const _0x37ab16=fs['readFileSync'](_0x17aded,'utf8')['split']('\x0a')['slice'](0x0,0x32);for(const _0x57a5ef of _0x37ab16){if(!_0x57a5ef['trim']())continue;try{const _0x2e493f=JSON['parse'](_0x57a5ef),_0x1a6ff3=_0x2e493f?.['event']?.['user_input'];if(typeof _0x1a6ff3==='string'&&_0x1a6ff3['trim']())return _0x1a6ff3['trim']();}catch{continue;}}}catch{}return null;}function isEmptyTranscript(_0x492041){try{const _0x3abe6c=readState(_0x492041);if(_0x3abe6c?.['customTitle'])return![];for(const _0x3d617f of[contextFile(_0x492041),wireFile(_0x492041)]){if(!fs['existsSync'](_0x3d617f))continue;const _0x330629=fs['readFileSync'](_0x3d617f,'utf8')['trim']();if(_0x330629['length']>0x0)return![];}return!![];}catch{return![];}}function listTranscripts(){const _0x529e0b=sessionsRoot();try{if(!fs['existsSync'](_0x529e0b))return[];return fs['readdirSync'](_0x529e0b,{'withFileTypes':!![]})['filter'](_0x32830f=>_0x32830f['isDirectory']())['map'](_0x4fbb58=>({'id':_0x4fbb58['name'],'state':readState(_0x4fbb58['name'])}))['filter'](_0x3b5954=>!isEmptyTranscript(_0x3b5954['id']))['sort']((_0x196aa7,_0x3a0c4c)=>(_0x3a0c4c['state']?.['updatedAt']??0x0)-(_0x196aa7['state']?.['updatedAt']??0x0));}catch{return[];}}function migrateLegacyFile(_0x533661){try{const _0x3e5e69=path['join'](sessionsRoot(),_0x533661+'.jsonl'),_0x1f7740=contextFile(_0x533661);fs['existsSync'](_0x3e5e69)&&!fs['existsSync'](_0x1f7740)&&(fs['mkdirSync'](sessionDir(_0x533661),{'recursive':!![]}),fs['renameSync'](_0x3e5e69,_0x1f7740));}catch{}}