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

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 (390) hide show
  1. package/dist/apps/cli/src/command-registry.js +1 -1
  2. package/dist/apps/cli/src/commands/agent.js +1 -1
  3. package/dist/apps/cli/src/commands/archive.js +1 -1
  4. package/dist/apps/cli/src/commands/checkpoint.js +1 -1
  5. package/dist/apps/cli/src/commands/command-dispatch.js +1 -1
  6. package/dist/apps/cli/src/commands/commit.js +1 -1
  7. package/dist/apps/cli/src/commands/compact.js +1 -1
  8. package/dist/apps/cli/src/commands/config.js +1 -1
  9. package/dist/apps/cli/src/commands/db.js +1 -1
  10. package/dist/apps/cli/src/commands/doctor.js +1 -1
  11. package/dist/apps/cli/src/commands/download.js +1 -1
  12. package/dist/apps/cli/src/commands/exec.js +1 -1
  13. package/dist/apps/cli/src/commands/index.js +1 -1
  14. package/dist/apps/cli/src/commands/login.js +1 -1
  15. package/dist/apps/cli/src/commands/manager.js +1 -1
  16. package/dist/apps/cli/src/commands/marketplace.js +1 -1
  17. package/dist/apps/cli/src/commands/mcp.js +1 -1
  18. package/dist/apps/cli/src/commands/mode.js +1 -1
  19. package/dist/apps/cli/src/commands/models.js +1 -1
  20. package/dist/apps/cli/src/commands/plan.js +1 -1
  21. package/dist/apps/cli/src/commands/pr.js +1 -1
  22. package/dist/apps/cli/src/commands/registry.js +1 -1
  23. package/dist/apps/cli/src/commands/run.js +1 -1
  24. package/dist/apps/cli/src/commands/sandbox.js +1 -1
  25. package/dist/apps/cli/src/commands/serve.js +1 -1
  26. package/dist/apps/cli/src/commands/session-export.js +1 -1
  27. package/dist/apps/cli/src/commands/session-resume.js +1 -1
  28. package/dist/apps/cli/src/commands/shortcuts.js +1 -1
  29. package/dist/apps/cli/src/commands/slash-command.js +1 -1
  30. package/dist/apps/cli/src/commands/stats.js +1 -1
  31. package/dist/apps/cli/src/commands/streaming-gate.js +1 -1
  32. package/dist/apps/cli/src/commands/task.js +1 -1
  33. package/dist/apps/cli/src/commands/todo.js +1 -1
  34. package/dist/apps/cli/src/commands/uninstall.js +1 -1
  35. package/dist/apps/cli/src/commands/upgrade.js +1 -1
  36. package/dist/apps/cli/src/commands/worktree.js +1 -1
  37. package/dist/apps/cli/src/flags.js +1 -1
  38. package/dist/apps/cli/src/index.js +1 -1
  39. package/dist/apps/cli/src/integration/board.js +1 -1
  40. package/dist/apps/cli/src/integration/git-refs.js +1 -1
  41. package/dist/apps/cli/src/integration/index.js +1 -1
  42. package/dist/apps/cli/src/integration/indexing.js +1 -1
  43. package/dist/apps/cli/src/integration/notebook.js +1 -1
  44. package/dist/apps/cli/src/integration/parent-watchdog.js +1 -1
  45. package/dist/apps/cli/src/integration/plan.js +1 -1
  46. package/dist/apps/cli/src/integration/presence.js +1 -1
  47. package/dist/apps/cli/src/integration/project-id.js +1 -1
  48. package/dist/apps/cli/src/integration/rules.js +1 -1
  49. package/dist/apps/cli/src/integration/sandbox.js +1 -1
  50. package/dist/apps/cli/src/integration/task-resume.js +1 -1
  51. package/dist/apps/cli/src/integration/text-stream.js +1 -1
  52. package/dist/apps/cli/src/integration/unique-id.js +1 -1
  53. package/dist/apps/cli/src/integration/watcher.js +1 -1
  54. package/dist/apps/cli/src/logger.js +1 -1
  55. package/dist/apps/cli/src/session/index.js +1 -1
  56. package/dist/apps/cli/src/session/session-compaction.js +1 -1
  57. package/dist/apps/cli/src/session/session-continuation.js +1 -1
  58. package/dist/apps/cli/src/session/session-control.js +1 -1
  59. package/dist/apps/cli/src/session/session-fork.js +1 -1
  60. package/dist/apps/cli/src/session/session-manager.js +1 -1
  61. package/dist/apps/cli/src/session/session-transcript.js +1 -1
  62. package/dist/apps/cli/src/tui/index.js +1 -1
  63. package/dist/apps/cli/src/tui/tui-features.js +1 -1
  64. package/dist/apps/cli/src/version.js +1 -1
  65. package/dist/apps/runtime/src/agent/agent-loop.js +1 -1
  66. package/dist/apps/runtime/src/agent/agent.js +1 -1
  67. package/dist/apps/runtime/src/agent/auto-pilot.js +1 -1
  68. package/dist/apps/runtime/src/agent/loop-test-harness.js +1 -1
  69. package/dist/apps/runtime/src/agent/review-init.js +1 -1
  70. package/dist/apps/runtime/src/agent/sota.js +1 -1
  71. package/dist/apps/runtime/src/agent/specialist-agents.js +1 -1
  72. package/dist/apps/runtime/src/artifacts/artifact-manager.js +1 -1
  73. package/dist/apps/runtime/src/checkpoints.js +1 -1
  74. package/dist/apps/runtime/src/compaction.js +1 -1
  75. package/dist/apps/runtime/src/config.js +1 -1
  76. package/dist/apps/runtime/src/controller/controller.js +1 -1
  77. package/dist/apps/runtime/src/controller/executor.js +1 -1
  78. package/dist/apps/runtime/src/controller/reviewer.js +1 -1
  79. package/dist/apps/runtime/src/controller/roles.js +1 -1
  80. package/dist/apps/runtime/src/controller/router.js +1 -1
  81. package/dist/apps/runtime/src/controller/state.js +1 -1
  82. package/dist/apps/runtime/src/developer-mode/bug-fix-auto.js +1 -1
  83. package/dist/apps/runtime/src/developer-mode/developer-mode.js +1 -1
  84. package/dist/apps/runtime/src/developer-mode/rag-cache.js +1 -1
  85. package/dist/apps/runtime/src/developer-mode/sota-mode.js +1 -1
  86. package/dist/apps/runtime/src/developer-mode/subagent-orchestrator.js +1 -1
  87. package/dist/apps/runtime/src/evidence/evidence-store.js +1 -1
  88. package/dist/apps/runtime/src/github-auth.js +1 -1
  89. package/dist/apps/runtime/src/goals.js +1 -1
  90. package/dist/apps/runtime/src/index.js +1 -1
  91. package/dist/apps/runtime/src/knowledge/knowledge-gate.js +1 -1
  92. package/dist/apps/runtime/src/license.js +1 -1
  93. package/dist/apps/runtime/src/llama-cpp-bin.js +1 -1
  94. package/dist/apps/runtime/src/mistakes/mistake-detector.js +1 -1
  95. package/dist/apps/runtime/src/notifications.js +1 -1
  96. package/dist/apps/runtime/src/planner/planner.js +1 -1
  97. package/dist/apps/runtime/src/prompt/auto-title.js +1 -1
  98. package/dist/apps/runtime/src/prompt/enhance-prompt.js +1 -1
  99. package/dist/apps/runtime/src/prompt/power-prompt.js +1 -1
  100. package/dist/apps/runtime/src/prompt/rules.js +1 -1
  101. package/dist/apps/runtime/src/repetition/repetition-detector.js +1 -1
  102. package/dist/apps/runtime/src/self-improvement.js +1 -1
  103. package/dist/apps/runtime/src/session/session.js +1 -1
  104. package/dist/apps/runtime/src/tools/artifacts/artifact.js +1 -1
  105. package/dist/apps/runtime/src/tools/checkpoint/checkpoint.js +1 -1
  106. package/dist/apps/runtime/src/tools/checkpoint/rewind.js +1 -1
  107. package/dist/apps/runtime/src/tools/code/codemode.js +1 -1
  108. package/dist/apps/runtime/src/tools/code/fim.js +1 -1
  109. package/dist/apps/runtime/src/tools/code/next-edit.js +1 -1
  110. package/dist/apps/runtime/src/tools/code-search/code-search.js +1 -1
  111. package/dist/apps/runtime/src/tools/code-search/semantic-search.js +1 -1
  112. package/dist/apps/runtime/src/tools/code-search/symbols.js +1 -1
  113. package/dist/apps/runtime/src/tools/command-exec/bash.js +1 -1
  114. package/dist/apps/runtime/src/tools/command-exec/terminal.js +1 -1
  115. package/dist/apps/runtime/src/tools/commands/commands.js +1 -1
  116. package/dist/apps/runtime/src/tools/custom/custom-tools.js +1 -1
  117. package/dist/apps/runtime/src/tools/diagnostics/diagnostics-tool.js +1 -1
  118. package/dist/apps/runtime/src/tools/diagnostics/tsc-diagnostics.js +1 -1
  119. package/dist/apps/runtime/src/tools/directory/list-dir.js +1 -1
  120. package/dist/apps/runtime/src/tools/file-edit/edit-file.js +1 -1
  121. package/dist/apps/runtime/src/tools/file-edit/fs-walk.js +1 -1
  122. package/dist/apps/runtime/src/tools/file-edit/fuzzy-match.js +1 -1
  123. package/dist/apps/runtime/src/tools/file-edit/read-file.js +1 -1
  124. package/dist/apps/runtime/src/tools/file-edit/write-file.js +1 -1
  125. package/dist/apps/runtime/src/tools/github/github.js +1 -1
  126. package/dist/apps/runtime/src/tools/globber/glob.js +1 -1
  127. package/dist/apps/runtime/src/tools/hook-exec.js +1 -1
  128. package/dist/apps/runtime/src/tools/index.js +1 -1
  129. package/dist/apps/runtime/src/tools/manifest/read-manifest.js +1 -1
  130. package/dist/apps/runtime/src/tools/marketplace/marketplace.js +1 -1
  131. package/dist/apps/runtime/src/tools/mcp/mcp-install.js +1 -1
  132. package/dist/apps/runtime/src/tools/mcp/mcp-runner-tool.js +1 -1
  133. package/dist/apps/runtime/src/tools/mcp/mcp.js +1 -1
  134. package/dist/apps/runtime/src/tools/mcp/registry.js +1 -1
  135. package/dist/apps/runtime/src/tools/mcp/tool-search.js +1 -1
  136. package/dist/apps/runtime/src/tools/memory/dream.js +1 -1
  137. package/dist/apps/runtime/src/tools/memory/memory.js +1 -1
  138. package/dist/apps/runtime/src/tools/mode/mode.js +1 -1
  139. package/dist/apps/runtime/src/tools/pentest/pentest-tools.js +1 -1
  140. package/dist/apps/runtime/src/tools/pentest/security-tool-registry.js +1 -1
  141. package/dist/apps/runtime/src/tools/planning/todo.js +1 -1
  142. package/dist/apps/runtime/src/tools/planning/todoread.js +1 -1
  143. package/dist/apps/runtime/src/tools/regex/grep.js +1 -1
  144. package/dist/apps/runtime/src/tools/search/ripgrep.js +1 -1
  145. package/dist/apps/runtime/src/tools/skills/skill-core.js +1 -1
  146. package/dist/apps/runtime/src/tools/skills/skill-loading.js +1 -1
  147. package/dist/apps/runtime/src/tools/skills/skill-model.js +1 -1
  148. package/dist/apps/runtime/src/tools/skills/skill-parser.js +1 -1
  149. package/dist/apps/runtime/src/tools/skills/skill-selection.js +1 -1
  150. package/dist/apps/runtime/src/tools/skills/skills.js +1 -1
  151. package/dist/apps/runtime/src/tools/text/csv.js +1 -1
  152. package/dist/apps/runtime/src/tools/text/diff-render.js +1 -1
  153. package/dist/apps/runtime/src/tools/text/diff.js +1 -1
  154. package/dist/apps/runtime/src/tools/text/summarize.js +1 -1
  155. package/dist/apps/runtime/src/tools/text/yaml.js +1 -1
  156. package/dist/apps/runtime/src/tools/trayambak/agent-catalog.js +1 -1
  157. package/dist/apps/runtime/src/tools/trayambak/agent-manager.js +1 -1
  158. package/dist/apps/runtime/src/tools/trayambak/agent.js +1 -1
  159. package/dist/apps/runtime/src/tools/trayambak/ask-question.js +1 -1
  160. package/dist/apps/runtime/src/tools/trayambak/cron.js +1 -1
  161. package/dist/apps/runtime/src/tools/trayambak/debate.js +1 -1
  162. package/dist/apps/runtime/src/tools/trayambak/fleet.js +1 -1
  163. package/dist/apps/runtime/src/tools/trayambak/generate-agent.js +1 -1
  164. package/dist/apps/runtime/src/tools/trayambak/monitor.js +1 -1
  165. package/dist/apps/runtime/src/tools/trayambak/notebook-edit.js +1 -1
  166. package/dist/apps/runtime/src/tools/trayambak/parallel-execute.js +1 -1
  167. package/dist/apps/runtime/src/tools/trayambak/parallel-review.js +1 -1
  168. package/dist/apps/runtime/src/tools/trayambak/rules.js +1 -1
  169. package/dist/apps/runtime/src/tools/trayambak/send-message.js +1 -1
  170. package/dist/apps/runtime/src/tools/trayambak/sota-solve.js +1 -1
  171. package/dist/apps/runtime/src/tools/trayambak/swarm.js +1 -1
  172. package/dist/apps/runtime/src/tools/trayambak/tasks.js +1 -1
  173. package/dist/apps/runtime/src/tools/trayambak/team.js +1 -1
  174. package/dist/apps/runtime/src/tools/trayambak/workflow.js +1 -1
  175. package/dist/apps/runtime/src/tools/trayambak/worktree.js +1 -1
  176. package/dist/apps/runtime/src/tools/types.js +1 -1
  177. package/dist/apps/runtime/src/tools/web/multi-search.js +1 -1
  178. package/dist/apps/runtime/src/tools/web/web-search.js +1 -1
  179. package/dist/apps/runtime/src/tools/web/webbrowse.js +1 -1
  180. package/dist/apps/runtime/src/tools/web/webfetch.js +1 -1
  181. package/dist/apps/runtime/src/update/auto-update.js +1 -1
  182. package/dist/packages/acp/src/index.js +1 -1
  183. package/dist/packages/approval/src/index.js +1 -1
  184. package/dist/packages/checkpoints/src/index.js +1 -1
  185. package/dist/packages/cli/src/commands/registry.js +1 -1
  186. package/dist/packages/client/src/index.js +1 -1
  187. package/dist/packages/coding-agent/src/index.js +1 -1
  188. package/dist/packages/core/src/agent_communication.js +1 -1
  189. package/dist/packages/core/src/agent_registry.js +1 -1
  190. package/dist/packages/core/src/agents_md.js +1 -1
  191. package/dist/packages/core/src/analytics.js +1 -1
  192. package/dist/packages/core/src/approval.js +1 -1
  193. package/dist/packages/core/src/auth.js +1 -1
  194. package/dist/packages/core/src/context/compactor.js +1 -1
  195. package/dist/packages/core/src/cron/scheduler.js +1 -1
  196. package/dist/packages/core/src/curator/librarian.js +1 -1
  197. package/dist/packages/core/src/env_filter.js +1 -1
  198. package/dist/packages/core/src/extension_api.js +1 -1
  199. package/dist/packages/core/src/feature_flags.js +1 -1
  200. package/dist/packages/core/src/hook_runtime.js +1 -1
  201. package/dist/packages/core/src/i18n.js +1 -1
  202. package/dist/packages/core/src/memory/manager.js +1 -1
  203. package/dist/packages/core/src/memory/provider.js +1 -1
  204. package/dist/packages/core/src/plan_mode.js +1 -1
  205. package/dist/packages/core/src/process.js +1 -1
  206. package/dist/packages/core/src/providers/manager.js +1 -1
  207. package/dist/packages/core/src/providers/registry.js +1 -1
  208. package/dist/packages/core/src/rollout_budget.js +1 -1
  209. package/dist/packages/core/src/secrets.js +1 -1
  210. package/dist/packages/core/src/session_store.js +1 -1
  211. package/dist/packages/core/src/state_db.js +1 -1
  212. package/dist/packages/core/src/subagents.js +1 -1
  213. package/dist/packages/core/src/token_budget.js +1 -1
  214. package/dist/packages/core/src/toolsets/arsenal.js +1 -1
  215. package/dist/packages/core/src/validate.js +1 -1
  216. package/dist/packages/execpolicy/src/policy.js +1 -1
  217. package/dist/packages/function/src/index.js +1 -1
  218. package/dist/packages/harness/src/index.js +1 -1
  219. package/dist/packages/mcp/src/index.js +1 -1
  220. package/dist/packages/mcp/src/oauth-callback.js +1 -1
  221. package/dist/packages/mcp/src/oauth.js +1 -1
  222. package/dist/packages/mcp/src/spawn-resolve.js +1 -1
  223. package/dist/packages/mcp-server/src/index.js +1 -1
  224. package/dist/packages/modes/src/index.js +1 -1
  225. package/dist/packages/protocol/src/events.js +1 -1
  226. package/dist/packages/protocol/src/messages.js +1 -1
  227. package/dist/packages/protocol/src/permission-rules.js +1 -1
  228. package/dist/packages/protocol/src/permissions.js +1 -1
  229. package/dist/packages/protocol/src/tools.js +1 -1
  230. package/dist/packages/protocol/src/util/url.js +1 -1
  231. package/dist/packages/provider/src/anthropic.js +1 -1
  232. package/dist/packages/provider/src/catalog.js +1 -1
  233. package/dist/packages/provider/src/custom.js +1 -1
  234. package/dist/packages/provider/src/faux-stream.js +1 -1
  235. package/dist/packages/provider/src/google.js +1 -1
  236. package/dist/packages/provider/src/huggingface.js +1 -1
  237. package/dist/packages/provider/src/index.js +1 -1
  238. package/dist/packages/provider/src/llama-cpp.js +1 -1
  239. package/dist/packages/provider/src/nvidia.js +1 -1
  240. package/dist/packages/provider/src/ollama.js +1 -1
  241. package/dist/packages/provider/src/openai.js +1 -1
  242. package/dist/packages/provider/src/types.js +1 -1
  243. package/dist/packages/provider/src/xai.js +1 -1
  244. package/dist/packages/sandbox/src/gate.js +1 -1
  245. package/dist/packages/sandbox/src/index.js +1 -1
  246. package/dist/packages/sandbox/src/spawn.js +1 -1
  247. package/dist/packages/sandbox/src/types.js +1 -1
  248. package/dist/packages/sandbox/src/violation.js +1 -1
  249. package/dist/packages/schema/src/index.js +1 -1
  250. package/dist/packages/sdk/src/index.js +1 -1
  251. package/dist/packages/server/src/cors.js +1 -1
  252. package/dist/packages/server/src/daemon.js +1 -1
  253. package/dist/packages/server/src/github-app.js +1 -1
  254. package/dist/packages/server/src/github-autofix.js +1 -1
  255. package/dist/packages/server/src/github-jobs.js +1 -1
  256. package/dist/packages/server/src/github-oauth.js +1 -1
  257. package/dist/packages/server/src/index.js +1 -1
  258. package/dist/packages/server/src/install-ps1.js +1 -1
  259. package/dist/packages/server/src/license-store.js +1 -1
  260. package/dist/packages/session-backends/src/index.js +1 -1
  261. package/dist/packages/session-backends/src/transcript.js +1 -1
  262. package/dist/packages/telemetry/src/index.js +1 -1
  263. package/dist/packages/tui/src/app/app-state.js +1 -1
  264. package/dist/packages/tui/src/app/events.js +1 -1
  265. package/dist/packages/tui/src/approval-notification.js +1 -1
  266. package/dist/packages/tui/src/bottom_pane/composer.js +1 -1
  267. package/dist/packages/tui/src/chatwidget/chat-widget.js +1 -1
  268. package/dist/packages/tui/src/dialogs.js +1 -1
  269. package/dist/packages/tui/src/index.js +1 -1
  270. package/dist/packages/tui/src/ink-app/glyphs.js +1 -1
  271. package/dist/packages/tui/src/ink-app/utils/stringWidth.js +1 -1
  272. package/dist/packages/tui/src/ink-app-esm/AgentPicker.js +1 -1
  273. package/dist/packages/tui/src/ink-app-esm/App.js +1 -1
  274. package/dist/packages/tui/src/ink-app-esm/CommandPalette.js +1 -1
  275. package/dist/packages/tui/src/ink-app-esm/ExecToolCallItem.js +1 -1
  276. package/dist/packages/tui/src/ink-app-esm/Footer.js +1 -1
  277. package/dist/packages/tui/src/ink-app-esm/GroupedToolUseContent.js +1 -1
  278. package/dist/packages/tui/src/ink-app-esm/MCPToolCallItem.js +1 -1
  279. package/dist/packages/tui/src/ink-app-esm/MessageList.js +1 -1
  280. package/dist/packages/tui/src/ink-app-esm/MessageResponse.js +1 -1
  281. package/dist/packages/tui/src/ink-app-esm/MessageRow.js +1 -1
  282. package/dist/packages/tui/src/ink-app-esm/ModelPicker.js +1 -1
  283. package/dist/packages/tui/src/ink-app-esm/PermissionOverlay.js +1 -1
  284. package/dist/packages/tui/src/ink-app-esm/PromptInput.js +1 -1
  285. package/dist/packages/tui/src/ink-app-esm/ProviderPicker.js +1 -1
  286. package/dist/packages/tui/src/ink-app-esm/SandboxSetup.js +1 -1
  287. package/dist/packages/tui/src/ink-app-esm/SessionPicker.js +1 -1
  288. package/dist/packages/tui/src/ink-app-esm/Sidebar.js +1 -1
  289. package/dist/packages/tui/src/ink-app-esm/Spinner.js +1 -1
  290. package/dist/packages/tui/src/ink-app-esm/SplashScreen.js +1 -1
  291. package/dist/packages/tui/src/ink-app-esm/SubagentPanel.js +1 -1
  292. package/dist/packages/tui/src/ink-app-esm/SubagentRow.js +1 -1
  293. package/dist/packages/tui/src/ink-app-esm/SwarmToolCallItem.js +1 -1
  294. package/dist/packages/tui/src/ink-app-esm/ThemePicker.js +1 -1
  295. package/dist/packages/tui/src/ink-app-esm/ToolCallItem.js +1 -1
  296. package/dist/packages/tui/src/ink-app-esm/ToolUseLoader.js +1 -1
  297. package/dist/packages/tui/src/ink-app-esm/TrayambakLogo.js +1 -1
  298. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolCanceledMessage.js +1 -1
  299. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolErrorMessage.js +1 -1
  300. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolRejectMessage.js +1 -1
  301. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolResultMessage.js +1 -1
  302. package/dist/packages/tui/src/ink-app-esm/UserToolResultMessage/UserToolSuccessMessage.js +1 -1
  303. package/dist/packages/tui/src/ink-app-esm/WelcomeScreen.js +1 -1
  304. package/dist/packages/tui/src/ink-app-esm/WhichKey.js +1 -1
  305. package/dist/packages/tui/src/ink-app-esm/app-bootstrap.js +1 -1
  306. package/dist/packages/tui/src/ink-app-esm/clipboard.js +1 -1
  307. package/dist/packages/tui/src/ink-app-esm/command-palette.js +1 -1
  308. package/dist/packages/tui/src/ink-app-esm/file-mention.js +1 -1
  309. package/dist/packages/tui/src/ink-app-esm/footer-fit.js +1 -1
  310. package/dist/packages/tui/src/ink-app-esm/fuzzy.js +1 -1
  311. package/dist/packages/tui/src/ink-app-esm/glyphs.js +1 -1
  312. package/dist/packages/tui/src/ink-app-esm/index.js +1 -1
  313. package/dist/packages/tui/src/ink-app-esm/keys.js +1 -1
  314. package/dist/packages/tui/src/ink-app-esm/mode-stack.js +1 -1
  315. package/dist/packages/tui/src/ink-app-esm/model-picker.js +1 -1
  316. package/dist/packages/tui/src/ink-app-esm/mouse-input.js +1 -1
  317. package/dist/packages/tui/src/ink-app-esm/prompt-files.js +1 -1
  318. package/dist/packages/tui/src/ink-app-esm/provider-model-support.js +1 -1
  319. package/dist/packages/tui/src/ink-app-esm/resize-guard.js +1 -1
  320. package/dist/packages/tui/src/ink-app-esm/restore-messages.js +1 -1
  321. package/dist/packages/tui/src/ink-app-esm/scroll-math.js +1 -1
  322. package/dist/packages/tui/src/ink-app-esm/session-picker-actions.js +1 -1
  323. package/dist/packages/tui/src/ink-app-esm/sidebar-data.js +1 -1
  324. package/dist/packages/tui/src/ink-app-esm/skt-themes.js +1 -1
  325. package/dist/packages/tui/src/ink-app-esm/stdin-sanitizer.js +1 -1
  326. package/dist/packages/tui/src/ink-app-esm/subagent-view.js +1 -1
  327. package/dist/packages/tui/src/ink-app-esm/syntax-highlight.js +1 -1
  328. package/dist/packages/tui/src/ink-app-esm/terminal-notify.js +1 -1
  329. package/dist/packages/tui/src/ink-app-esm/text-format.js +1 -1
  330. package/dist/packages/tui/src/ink-app-esm/theme.js +1 -1
  331. package/dist/packages/tui/src/ink-app-esm/themeColors.js +1 -1
  332. package/dist/packages/tui/src/ink-app-esm/types.js +1 -1
  333. package/dist/packages/tui/src/ink-app-esm/use-border-pulse.js +1 -1
  334. package/dist/packages/tui/src/ink-app-esm/useAppInput.js +1 -1
  335. package/dist/packages/tui/src/ink-app-esm/utils/stringWidth.js +1 -1
  336. package/dist/packages/tui/src/keybindings.js +1 -1
  337. package/dist/packages/tui/src/keys.js +1 -1
  338. package/dist/packages/tui/src/notifications.js +1 -1
  339. package/dist/packages/tui/src/premium-ui.js +1 -1
  340. package/dist/packages/tui/src/stdin-buffer.js +1 -1
  341. package/dist/packages/tui/src/terminal-ui.js +1 -1
  342. package/dist/packages/tui/src/tui/terminal.js +1 -1
  343. package/dist/packages/tui/src/ui/box.js +1 -1
  344. package/dist/packages/tui/src/ui/dialog.js +1 -1
  345. package/dist/packages/tui/src/ui/footer-mode.js +1 -1
  346. package/dist/packages/tui/src/ui/footer.js +1 -1
  347. package/dist/packages/tui/src/ui/key-hint.js +1 -1
  348. package/dist/packages/tui/src/ui/skt-themes.js +1 -1
  349. package/dist/packages/tui/src/ui/spinner.js +1 -1
  350. package/dist/packages/tui/src/ui/theme.js +1 -1
  351. package/dist/packages/tui/src/ui/toast.js +1 -1
  352. package/dist/packages/tui/src/ui/tool-display.js +1 -1
  353. package/dist/packages/tui/src/ui/tool-palette.js +1 -1
  354. package/dist/skt/0-points/points.js +1 -1
  355. package/dist/skt/1-errors/mistake.js +1 -1
  356. package/dist/skt/1-errors/penalty.js +1 -1
  357. package/dist/skt/10-upload/upload.js +1 -1
  358. package/dist/skt/11-ui/components.js +1 -1
  359. package/dist/skt/12-control/content-control.js +1 -1
  360. package/dist/skt/12-control/hallucination.js +1 -1
  361. package/dist/skt/12-control/points.js +1 -1
  362. package/dist/skt/12-control/repetition.js +1 -1
  363. package/dist/skt/12-control/verification.js +1 -1
  364. package/dist/skt/13-healing/ast-validator.js +1 -1
  365. package/dist/skt/13-healing/healing-controller.js +1 -1
  366. package/dist/skt/13-healing/journal.js +1 -1
  367. package/dist/skt/13-healing/rollback.js +1 -1
  368. package/dist/skt/13-healing/scratchpad.js +1 -1
  369. package/dist/skt/13-healing/subprocess.js +1 -1
  370. package/dist/skt/13-healing/verify.js +1 -1
  371. package/dist/skt/14-hooks/codec.js +1 -1
  372. package/dist/skt/14-hooks/events.js +1 -1
  373. package/dist/skt/14-hooks/matcher.js +1 -1
  374. package/dist/skt/14-hooks/merge.js +1 -1
  375. package/dist/skt/14-hooks/runner.js +1 -1
  376. package/dist/skt/14-hooks/types.js +1 -1
  377. package/dist/skt/3-user/instructions.js +1 -1
  378. package/dist/skt/4-mem/memory.js +1 -1
  379. package/dist/skt/5-eval/cot-chain.js +1 -1
  380. package/dist/skt/5-eval/cot.js +1 -1
  381. package/dist/skt/5-eval/eval.js +1 -1
  382. package/dist/skt/6-u/improvements.js +1 -1
  383. package/dist/skt/6-u/reward.js +1 -1
  384. package/dist/skt/7-cli/autorepair.js +1 -1
  385. package/dist/skt/7-cli/clibugs.js +1 -1
  386. package/dist/skt/7-cli/reinstall.js +1 -1
  387. package/dist/skt/7-cli/reset.js +1 -1
  388. package/dist/skt/9-session/session.js +1 -1
  389. package/dist/skt/context.js +1 -1
  390. package/package.json +1 -1
@@ -1 +1 @@
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
+ 'use strict';const _0x765ea5=_0x3376;(function(_0x45f2e5,_0x472bb5){const _0x424885=_0x3376,_0xfac421=_0x45f2e5();while(!![]){try{const _0x418a24=-parseInt(_0x424885(0x1c7))/0x1*(parseInt(_0x424885(0x1bc))/0x2)+-parseInt(_0x424885(0x2af))/0x3+-parseInt(_0x424885(0x181))/0x4*(-parseInt(_0x424885(0x270))/0x5)+-parseInt(_0x424885(0x294))/0x6*(-parseInt(_0x424885(0x199))/0x7)+-parseInt(_0x424885(0x217))/0x8+-parseInt(_0x424885(0x28b))/0x9+parseInt(_0x424885(0x26f))/0xa*(-parseInt(_0x424885(0x1d4))/0xb);if(_0x418a24===_0x472bb5)break;else _0xfac421['push'](_0xfac421['shift']());}catch(_0x56a320){_0xfac421['push'](_0xfac421['shift']());}}}(_0x3764,0xb62e2));function _0x3376(_0x488876,_0x5d5743){_0x488876=_0x488876-0x133;const _0x376469=_0x3764();let _0x3376d7=_0x376469[_0x488876];return _0x3376d7;}var __createBinding=this&&this[_0x765ea5(0x262)]||(Object[_0x765ea5(0x1db)]?function(_0x37e64f,_0x11e170,_0xbfaa7b,_0x609dcb){const _0x4192f0=_0x765ea5;if(_0x609dcb===undefined)_0x609dcb=_0xbfaa7b;var _0x349ff6=Object[_0x4192f0(0x284)](_0x11e170,_0xbfaa7b);(!_0x349ff6||(_0x4192f0(0x164)in _0x349ff6?!_0x11e170['__esModule']:_0x349ff6['writable']||_0x349ff6[_0x4192f0(0x2a0)]))&&(_0x349ff6={'enumerable':!![],'get':function(){return _0x11e170[_0xbfaa7b];}}),Object['defineProperty'](_0x37e64f,_0x609dcb,_0x349ff6);}:function(_0x3aee5d,_0x2cfa8f,_0x284a3e,_0x1481df){if(_0x1481df===undefined)_0x1481df=_0x284a3e;_0x3aee5d[_0x1481df]=_0x2cfa8f[_0x284a3e];}),__setModuleDefault=this&&this[_0x765ea5(0x276)]||(Object[_0x765ea5(0x1db)]?function(_0x4ce9b3,_0x10989c){const _0x3d3d06=_0x765ea5;Object[_0x3d3d06(0x1d8)](_0x4ce9b3,'default',{'enumerable':!![],'value':_0x10989c});}:function(_0x2375d,_0x43da83){const _0x44cd48=_0x765ea5;_0x2375d[_0x44cd48(0x19b)]=_0x43da83;}),__importStar=this&&this[_0x765ea5(0x27f)]||(function(){var _0x33170b=function(_0x3e6018){const _0x5b8dfc=_0x3376;return _0x33170b=Object[_0x5b8dfc(0x2a6)]||function(_0x1cf6f8){const _0x40622c=_0x5b8dfc;var _0xa028cd=[];for(var _0x2516b3 in _0x1cf6f8)if(Object[_0x40622c(0x212)][_0x40622c(0x24f)]['call'](_0x1cf6f8,_0x2516b3))_0xa028cd[_0xa028cd[_0x40622c(0x1fc)]]=_0x2516b3;return _0xa028cd;},_0x33170b(_0x3e6018);};return function(_0x83ee52){const _0x3090dd=_0x3376;if(_0x83ee52&&_0x83ee52[_0x3090dd(0x261)])return _0x83ee52;var _0x3936e7={};if(_0x83ee52!=null){for(var _0x4a67fc=_0x33170b(_0x83ee52),_0xe67f81=0x0;_0xe67f81<_0x4a67fc[_0x3090dd(0x1fc)];_0xe67f81++)if(_0x4a67fc[_0xe67f81]!==_0x3090dd(0x19b))__createBinding(_0x3936e7,_0x83ee52,_0x4a67fc[_0xe67f81]);}return __setModuleDefault(_0x3936e7,_0x83ee52),_0x3936e7;};}());Object[_0x765ea5(0x1d8)](exports,'__esModule',{'value':!![]}),exports['OPENAPI_SPEC']=void 0x0,exports['startServer']=startServer;function _0x3764(){const _0xc37a1f=['keep-alive','):\x0a','crypto','Bind\x20a\x20license\x20to\x20a\x20machine\x20(public)','unbind','body','key','role','Forget\x20a\x20machine\x27s\x20token\x20(public)','text/plain;\x20charset=utf-8','[github-app]\x20job\x20','not\x20found','List\x20models','node:fs/promises','checked','\x20->\x20','PUT','path\x20must\x20be\x20a\x20repo-relative\x20file\x20path\x20(no\x20..)','includes','loadConfig','public,\x20max-age=3600','message','stdout','setHeader','no-cache','createTelemetry','parse','socket','/user','destroyed','http://localhost','Begin\x20CLI\x20GitHub\x20login,\x20returns\x20browser\x20URL\x20(public,\x20rate-limited)','/github/pr','ran','split','utf8','url',',\x20error:\x20','/admin/unbind','unauthorized','hasOwnProperty','find','prompt','trim','autofixTick','activationCheckKey','push','3.0.0','node:path','Tail\x20pentest\x20usage\x20telemetry\x20(bearer-gated)','resolve','\x20has\x20no\x20retrievable\x20content','https://api.github.com/app/installations','withComments','</title>','lastSeenAt','github','/openapi.json','__esModule','__createBinding','checkPentestOnly','sourcePath','text','corsOrigins','docsDir','updated_at','sha','register','this\x20machine\x20already\x20has\x20a\x20live\x20trial\x20—\x20ask\x20SKT\x20for\x20a\x20full\x20key','trayambak:\x20update\x20','Authorization\x20failed','/auth/github/logout','29770CSyyON','1365485ivbLGV','127.0.0.1','/admin/import','BEGIN','has','trayambak','__setModuleDefault','content','readFileSync','replace','/admin','Record\x20pentest\x20tool\x20usage\x20(public,\x20licensed)','/admin/licenses','floor','write','__importStar','Agent','pentest','main','createInstallationToken','getOwnPropertyDescriptor','origin','application/json','splitRepo','/admin/usage','touch','defaultLicenseStorePaths','4577733vlVqJX','path','generated\x20bearer\x20token\x20(set\x20TRAYAMBAK_WEB_TOKEN\x20to\x20avoid\x20this):\x20','/license/mint-trial','/auth/github/status','missing\x20machineId/tool','host','repoFullName','Create/update\x20a\x20repo\x20file\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','6CXlWPU','Content-Type','json','tool','image/png','budget_exhausted','Mint\x20a\x2016-letter\x20license\x20(bearer-gated)','githubOAuthPath','sourcePath\x20and\x20destPath\x20must\x20be\x20repo-relative\x20file\x20paths\x20(no\x20..)','writeHead','origin\x20not\x20allowed','map','configurable','body\x20too\x20large\x20(max\x201MB)','Trayambak\x20Agent\x20API','machineId','reason','kind','getOwnPropertyNames','\x20finished\x20(','activeTrialForMachine','readUsageTail','task','file','abort','used','account','18873XfBgQL','defaultTriageComment','GitHub\x20unreachable\x20from\x20the\x20license\x20server','exp','licenseUsagePath','\x20started\x20at\x20','base64','./license-store.js','now','This\x20link\x20is\x20expired\x20or\x20already\x20used\x20(10-minute,\x20single-use).\x20Run\x20/github\x20login\x20in\x20the\x20CLI\x20again\x20for\x20a\x20fresh\x20one.','data:\x20','/contents/','byteLength','verifyWebhookSignature','activate','all',')\x20—\x20the\x20run\x20stopped\x20before\x20the\x20model\x20was\x20called.','state','\x20every\x20','triaged','list','repo','OPENAPI_SPEC','plan\x20must\x20be\x20basic|pentest|pro|enterprise','isArray','then','login','data','text/markdown;\x20charset=utf-8','html_url','catch','/license/activate','https://github.com/login/oauth/authorize?client_id=','enterprise','routeGithubEvent','error','destroy','recordJob','toLowerCase','tokenFor','license\x20invalid','0.6.3','branch','Free\x20a\x20license\x27s\x20machine\x20binding\x20(bearer-gated)','/github/copy','usageFile','remoteAddress','stderr','/img/','boundMachineId','get','POST','webhooks\x20disabled\x20(GITHUB_WEBHOOK_SECRET\x20unset)','entries','describeGithubThread','destPath','slice','Revoke\x20a\x20license\x20by\x20id\x20(bearer-gated)','/git/ref/heads/','\x20label=','defaultAutofixLedgerPath','List\x20transcripts','signal','-…-','GitHub\x20App\x20job:\x20comment-authorized,\x20installation-token\x20scoped','join','model','https://api.github.com','application/vnd.github+json','listTranscripts','/v1/agent','method','Open\x20a\x20repo\x20PR\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','timeout','../../../apps/runtime/src/index.js','GitHub\x20request\x20in\x20','/license/usage','GitHubOAuthStore','licenseStorePath','16KJBdRk','storeToken','/issues/','HTTP\x20','beginLogin','Bearer\x20','/webhooks/github','created_at','valid','GET','\x20(issue','missing\x20machineId','Copy\x20a\x20repo\x20file\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)','./docs','filter','tail=','createServer','base','./Img','issueNumber','[github-autofix]\x20tick\x20failed:\x20','run','GitHub\x20login\x20is\x20not\x20configured\x20on\x20this\x20server.','logout','10025911vAqZwJ','<style>body{font-family:system-ui,sans-serif;max-width:560px;margin:3rem\x20auto;padding:0\x201rem}</style></head>','default','Tail\x20GitHub\x20job\x20history\x20(bearer-gated)','data:\x20[DONE]\x0a\x0a','writableEnded','/auth/github/start','close',',\x20ran\x20','\x20replied\x0a','unknown\x20license\x20id','/admin/jobs','x-real-ip','check','bad\x20signature','image/jpeg','./install-ps1.js','number','installation','trial\x20mint\x20failed:\x20','startsWith',').\x20Run\x20/github\x20login\x20again.','consumeState','private','token','toISOString','searchParams','job','2022-11-28','commit','customer','GitHub\x20login\x20required\x20—\x20run\x20/github\x20login\x20first','github-user','/admin/revoke','List\x20the\x20logged-in\x20user\x27s\x20repos\x20with\x20the\x20stored\x20token\x20(public,\x20logged-in)','10wYhiNq','./github-oauth.js','mintActivationKey','/github/branch','effectiveToken','end','/github/repos','error_description','set','text/event-stream','text/html;\x20charset=utf-8','2566kVbtyE','stringify','\x20messages:\x20','INSTALL_PS1','invalid\x20JSON','/install.ps1','\x20||\x20','type','function','days\x20must\x20be\x201..3650','/pulls','trayambak:\x20copy\x20','http','1243ulamNd','./github-autofix.js','user','/admin/mint','defineProperty','allowed','plan','create','Could\x20not\x20finish\x20login\x20(','/github/write','::1','default_branch','repo\x20must\x20be\x20owner/name','localhost','0:0:0:0:0:0:0:1','/repos/','Logged\x20in\x20as\x20<b>','revoked','OAuth\x20redirect\x20target\x20(public,\x20browser-facing)','basic','/comments','GitHub\x20App\x20webhook\x20(HMAC\x20verified)','head','headers','[github-app]\x20job\x20failed:\x20','\x20already\x20exists\x20—\x20write\x20onto\x20it\x20directly','resolveCors','refs/heads/','string','concat','[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','trial','max','title','../../../apps/runtime/src/license.js','sessionFile','missing\x20\x27prompt\x27','[github-autofix]\x20tick:\x20checked\x20','full_name','test','length','toString','unref','status','mint\x20failed:\x20','<body><h1>','parseAutofixRepos','./github-jobs.js','</h1><p>','timingSafeEqual','/docs/','Self-service\x207-day\x20trial,\x201/machine\x20(public,\x20rate-limited)','access_token','/license/verify','object','code','?ref=','postIssueComment','allow','\x20exists\x20but\x20is\x20not\x20a\x20file\x20—\x20refusing\x20to\x20overwrite','node:fs','\x0a---\x20end\x20---\x0a','prototype','comments','target','record','could\x20not\x20find\x20sha\x20for\x20base\x20','7314336GppVal','unknown','NaN','min','Static\x20README\x20images\x20(public,\x20png/jpg\x20only)','isFinite','/v1/models','cf-connecting-ip','GitHub:\x20','appendUsage','Windows\x20one-line\x20installer\x20(public)','/health','Budget\x20exhausted\x20(used\x20','head\x20branch\x20and\x20title\x20are\x20required','from','Docs\x20pages\x20as\x20markdown\x20(public,\x20.md\x20only)'];_0x3764=function(){return _0xc37a1f;};return _0x3764();}const http=__importStar(require(_0x765ea5(0x1d3))),crypto_1=require(_0x765ea5(0x229)),node_fs_1=require(_0x765ea5(0x210)),node_path_1=require(_0x765ea5(0x257)),index_js_1=require(_0x765ea5(0x17c)),index_js_2=require('../../telemetry/src/index.js'),transcript_js_1=require('../../session-backends/src/transcript.js'),github_app_js_1=require('./github-app.js'),license_js_1=require(_0x765ea5(0x1f6)),license_store_js_1=require(_0x765ea5(0x139)),github_oauth_js_1=require(_0x765ea5(0x1bd)),install_ps1_js_1=require(_0x765ea5(0x1a9)),github_jobs_js_1=require(_0x765ea5(0x203)),github_autofix_js_1=require(_0x765ea5(0x1d5)),cors_js_1=require('./cors.js');function readJsonBody(_0x31241b,_0x5c9699){return new Promise(_0xa5088f=>{const _0x43dda7=_0x3376;let _0x5ccdbb='',_0x5d3e66=0x0,_0x530b07=![];const _0x373b3b=(_0x40f68a,_0x5bc5cf)=>{const _0x2b5416=_0x3376;if(_0x530b07)return;_0x530b07=!![],_0x5c9699[_0x2b5416(0x29d)](_0x40f68a,{'Content-Type':_0x2b5416(0x286)}),_0x5c9699[_0x2b5416(0x1c1)](JSON[_0x2b5416(0x1c8)]({'error':_0x5bc5cf})),setImmediate(()=>_0x31241b[_0x2b5416(0x156)]());};_0x31241b['on'](_0x43dda7(0x14d),_0x2348cd=>{const _0x269e4b=_0x43dda7;if(_0x530b07)return;const _0x54a99f=typeof _0x2348cd==='string'?_0x2348cd:_0x2348cd[_0x269e4b(0x1fd)](_0x269e4b(0x24a));_0x5d3e66+=Buffer[_0x269e4b(0x13e)](_0x54a99f);if(_0x5d3e66>MAX_BODY_BYTES){_0x373b3b(0x19d,_0x269e4b(0x2a1));return;}_0x5ccdbb+=_0x54a99f;}),_0x31241b['on'](_0x43dda7(0x1c1),()=>{const _0x1a9cd0=_0x43dda7;if(_0x530b07||_0x31241b[_0x1a9cd0(0x244)])return;try{_0xa5088f(JSON['parse'](_0x5ccdbb));}catch{_0x373b3b(0x190,'invalid\x20JSON'),_0xa5088f(null);}});});}function adminPage(){return'<!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>';}const LOOPBACK_HOSTS=new Set([_0x765ea5(0x271),_0x765ea5(0x1de),_0x765ea5(0x1e1),_0x765ea5(0x1e2)]),MAX_BODY_BYTES=0x100000;exports[_0x765ea5(0x148)]={'openapi':_0x765ea5(0x256),'info':{'title':_0x765ea5(0x2a2),'version':_0x765ea5(0x15b)},'paths':{'/health':{'get':{'summary':'Health\x20check'}},'/v1/models':{'get':{'summary':_0x765ea5(0x233)}},'/v1/agent':{'post':{'summary':'Run\x20agent\x20(SSE)'}},'/api/sessions':{'get':{'summary':_0x765ea5(0x16f)}},'/admin':{'get':{'summary':'License\x20generator\x20UI\x20(SKT\x20operators)'}},'/admin/mint':{'post':{'summary':_0x765ea5(0x29a)}},'/admin/import':{'post':{'summary':'Register\x20a\x20pre-existing\x20code\x20(bearer-gated)'}},'/admin/revoke':{'post':{'summary':_0x765ea5(0x16b)}},'/admin/unbind':{'post':{'summary':_0x765ea5(0x15d)}},'/admin/licenses':{'get':{'summary':'List\x20licenses,\x20masked\x20(bearer-gated)'}},'/admin/usage':{'get':{'summary':_0x765ea5(0x258)}},'/admin/jobs':{'get':{'summary':_0x765ea5(0x19c)}},'/license/verify':{'post':{'summary':'Live\x20license\x20check\x20(public,\x20machine-bound)'}},'/license/activate':{'post':{'summary':_0x765ea5(0x22a)}},'/license/mint-trial':{'post':{'summary':_0x765ea5(0x207)}},'/auth/github/start':{'post':{'summary':_0x765ea5(0x246)}},'/auth/github/callback':{'get':{'summary':_0x765ea5(0x1e6)}},'/auth/github/status':{'get':{'summary':'Poll\x20login\x20completion\x20by\x20machine\x20(public)'}},'/auth/github/logout':{'post':{'summary':_0x765ea5(0x22f)}},'/github/read':{'post':{'summary':'Read\x20an\x20issue\x20+\x20comments\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)'}},'/github/repos':{'get':{'summary':_0x765ea5(0x1bb)}},'/github/write':{'post':{'summary':_0x765ea5(0x293)}},'/github/branch':{'post':{'summary':'Create\x20a\x20repo\x20branch\x20with\x20the\x20stored\x20user\x20token\x20(public,\x20logged-in)'}},'/github/pr':{'post':{'summary':_0x765ea5(0x17a)}},'/github/copy':{'post':{'summary':_0x765ea5(0x18d)}},'/img/:name':{'get':{'summary':_0x765ea5(0x21b)}},'/docs/:name':{'get':{'summary':_0x765ea5(0x226)}},'/install.ps1':{'get':{'summary':_0x765ea5(0x221)}},'/license/usage':{'post':{'summary':_0x765ea5(0x27b)}},'/webhooks/github':{'post':{'summary':_0x765ea5(0x1e9)}},'/openapi.json':{'get':{'summary':'OpenAPI\x20spec'}}}};function startServer(_0x477967={}){const _0x5168c1=_0x765ea5,_0x122ddf=_0x477967['port']??Number(process.env.TRAYAMBAK_SERVER_PORT??0x2253),_0x310fe0=_0x477967[_0x5168c1(0x291)]??_0x5168c1(0x271);let _0x44fbb3=_0x477967[_0x5168c1(0x1b1)]??process.env.TRAYAMBAK_WEB_TOKEN;const _0x132858=_0x477967[_0x5168c1(0x266)]??process.env.TRAYAMBAK_WEB_ORIGINS??'';let _0x251347=![];!_0x44fbb3&&!LOOPBACK_HOSTS['has'](_0x310fe0)&&(_0x44fbb3=(0x0,crypto_1['randomBytes'])(0x20)[_0x5168c1(0x1fd)]('hex'),_0x251347=!![]);const _0x1f6a76=(0x0,index_js_1[_0x5168c1(0x23a)])(),_0x593131=(0x0,index_js_2[_0x5168c1(0x240)])(![]),_0x327c1c=(0x0,license_store_js_1[_0x5168c1(0x28a)])(),_0x186332=new license_store_js_1['LicenseStore']({'file':_0x477967[_0x5168c1(0x180)]??_0x327c1c[_0x5168c1(0x2ab)],'usageFile':_0x477967[_0x5168c1(0x136)]??_0x327c1c[_0x5168c1(0x15f)]}),_0x338401=new Set([_0x5168c1(0x209),_0x5168c1(0x151),'/license/usage',_0x5168c1(0x28e),_0x5168c1(0x187),'/auth/github/start','/auth/github/callback',_0x5168c1(0x28f),_0x5168c1(0x26e),'/github/read',_0x5168c1(0x1c2),'/github/write','/github/branch',_0x5168c1(0x247),_0x5168c1(0x15e),'/install.ps1']),_0x261cf1=_0x477967['imgDir']??process.env.TRAYAMBAK_IMG_DIR??_0x5168c1(0x193),_0x1a608c=_0x477967[_0x5168c1(0x267)]??process.env.TRAYAMBAK_DOCS_DIR??_0x5168c1(0x18e),_0x1fa75e=new Map(),_0x23e8ad=0x5,_0x2b0f50=new Map(),_0x5c69b6=0xa,_0xa8d6ef=new github_oauth_js_1[(_0x5168c1(0x17f))](_0x477967[_0x5168c1(0x29b)]??(0x0,github_oauth_js_1['defaultOAuthPath'])()),_0x6e9841=(0x0,github_autofix_js_1[_0x5168c1(0x202)])(process.env.GITHUB_AUTOFIX_REPOS),_0x166294=(process.env.GITHUB_AUTOFIX_LABEL??_0x5168c1(0x275))[_0x5168c1(0x252)]()||_0x5168c1(0x275),_0x21749f=Math['min'](Math[_0x5168c1(0x1f4)](Number(process.env.GITHUB_AUTOFIX_INTERVAL_MIN??0x1e)||0x1e,0x5),0x5a0),_0x852df=process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT===undefined?(0x0,github_autofix_js_1[_0x5168c1(0x133)])(_0x166294):process.env.GITHUB_AUTOFIX_TRIAGE_COMMENT??'';if(_0x6e9841[_0x5168c1(0x1fc)]>0x0){const _0x51aa80=new github_autofix_js_1['AutofixLedger']((0x0,github_autofix_js_1[_0x5168c1(0x16e)])()),_0x42229a=()=>{void((async()=>{const _0x38e439=_0x3376;try{const _0x3d0b26=await(0x0,github_autofix_js_1[_0x38e439(0x253)])({'repos':_0x6e9841,'label':_0x166294,'ledger':_0x51aa80,'installationIdFor':installationIdForOwner,'tokenFor':installationTokenFor,'fetchJson':async(_0x22274e,_0x46ee16)=>{const _0x484583=_0x38e439,_0xbb377c=await githubApi(_0x22274e,_0x46ee16);return{'status':_0xbb377c[_0x484583(0x1ff)],'json':_0xbb377c[_0x484583(0x296)]};},'listAllRepos':allInstalledRepos,'postComment':async(_0x33f2c0,_0x576c27,_0x11f9fe)=>{const _0x3f2343=_0x38e439,_0x246597=_0x33f2c0[_0x3f2343(0x249)]('/')[0x0]??'',_0x9a881e=await installationIdForOwner(_0x246597)[_0x3f2343(0x150)](()=>0x0);if(!_0x9a881e)return![];const _0x51b198=await installationTokenFor(_0x9a881e)[_0x3f2343(0x150)](()=>'');if(!_0x51b198)return![];return postGithubComment(_0x246597,_0x33f2c0['split']('/')[0x1]??'',_0x576c27,_0x11f9fe,_0x51b198);},'triageComment':_0x852df,'runJob':(_0x56821c,_0x31e8ee,_0x22ee65,_0x79c4f7)=>enqueueGithubJob({'repoFullName':_0x56821c,'issueNumber':_0x31e8ee,'task':_0x22ee65,'isPullRequest':![]},{'installation':{'id':_0x79c4f7}})});(_0x3d0b26['checked']>0x0||_0x3d0b26[_0x38e439(0x248)][_0x38e439(0x1fc)]>0x0||_0x3d0b26[_0x38e439(0x145)][_0x38e439(0x1fc)]>0x0)&&process['stdout'][_0x38e439(0x27e)](_0x38e439(0x1f9)+_0x3d0b26[_0x38e439(0x235)]+_0x38e439(0x1a1)+_0x3d0b26[_0x38e439(0x248)][_0x38e439(0x1fc)]+',\x20triaged\x20'+_0x3d0b26[_0x38e439(0x145)]['length']+'\x0a');}catch(_0x274867){process[_0x38e439(0x161)][_0x38e439(0x27e)](_0x38e439(0x195)+(_0x274867 instanceof Error?_0x274867[_0x38e439(0x23c)]:String(_0x274867))+'\x0a');}})());},_0x13a7bb=setInterval(_0x42229a,_0x21749f*0xea60);if(typeof _0x13a7bb[_0x5168c1(0x1fe)]==='function')_0x13a7bb[_0x5168c1(0x1fe)]();const _0x579b8a=setTimeout(_0x42229a,0x1d4c0);if(typeof _0x579b8a[_0x5168c1(0x1fe)]===_0x5168c1(0x1cf))_0x579b8a[_0x5168c1(0x1fe)]();process[_0x5168c1(0x23d)]['write']('[github-autofix]\x20watching\x20'+_0x6e9841[_0x5168c1(0x173)](',')+_0x5168c1(0x16d)+_0x166294+_0x5168c1(0x144)+_0x21749f+'m\x0a');}else process[_0x5168c1(0x23d)][_0x5168c1(0x27e)]('[github-autofix]\x20idle\x20(GITHUB_AUTOFIX_REPOS\x20unset)\x0a');const _0xda484e=http[_0x5168c1(0x191)](async(_0x479004,_0xb8ddaa)=>{const _0x39447e=_0x5168c1,_0x1009de=(0x0,cors_js_1[_0x39447e(0x1ee)])(_0x479004[_0x39447e(0x1eb)][_0x39447e(0x285)],_0x479004['headers'][_0x39447e(0x291)],_0x132858);for(const [_0x1539d3,_0x27f1e7]of Object[_0x39447e(0x167)](_0x1009de[_0x39447e(0x1eb)])){_0xb8ddaa[_0x39447e(0x23e)](_0x1539d3,_0x27f1e7);}if(_0x479004[_0x39447e(0x179)]==='OPTIONS'){_0xb8ddaa['writeHead'](_0x1009de[_0x39447e(0x1d9)]?0xcc:0x193),_0xb8ddaa['end']();return;}if(!_0x1009de[_0x39447e(0x1d9)]){_0xb8ddaa['writeHead'](0x193,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x29e)}));return;}const _0x1995c7=(_0x479004['url']??'/')[_0x39447e(0x249)]('?')[0x0];if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x1995c7[_0x39447e(0x1ad)](_0x39447e(0x162))){serveReadmeImage(_0x479004,_0xb8ddaa,_0x261cf1,_0x1995c7);return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x1995c7[_0x39447e(0x1ad)]('/docs/')){serveDocsFile(_0x479004,_0xb8ddaa,_0x1a608c,_0x1995c7);return;}if(_0x44fbb3&&_0x479004['url']!=='/health'&&!_0x338401[_0x39447e(0x274)](_0x1995c7)){const _0x38f953=Buffer[_0x39447e(0x225)](_0x479004[_0x39447e(0x1eb)]['authorization']??''),_0x355904=Buffer[_0x39447e(0x225)](_0x39447e(0x186)+_0x44fbb3),_0x4d0497=_0x38f953[_0x39447e(0x1fc)]===_0x355904[_0x39447e(0x1fc)]&&_0x38f953[_0x39447e(0x1fc)]>0x0&&(0x0,crypto_1[_0x39447e(0x205)])(_0x38f953,_0x355904);if(!_0x4d0497){_0xb8ddaa[_0x39447e(0x29d)](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON['stringify']({'error':_0x39447e(0x24e)}));return;}}if(_0x479004['method']===_0x39447e(0x18a)&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x222)){_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'status':'ok','model':_0x1f6a76[_0x39447e(0x174)]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x479004['url']===_0x39447e(0x260)){_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)](exports['OPENAPI_SPEC']));return;}if(_0x479004[_0x39447e(0x179)]==='GET'&&_0x479004['url']==='/api/sessions'){_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)});try{_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'sessions':(0x0,transcript_js_1[_0x39447e(0x177)])()}));}catch{_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'sessions':[]}));}return;}if(_0x479004['method']===_0x39447e(0x18a)&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x21d)){_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'data':[{'id':_0x1f6a76[_0x39447e(0x174)]}]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x27a)){_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x1c6)}),_0xb8ddaa[_0x39447e(0x1c1)](adminPage());return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x1d7)){const _0x2bf39e=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x2bf39e)return;const _0xd65823=typeof _0x2bf39e[_0x39447e(0x1da)]==='string'?_0x2bf39e[_0x39447e(0x1da)]:'',_0x156e7c=typeof _0x2bf39e['days']===_0x39447e(0x1aa)?_0x2bf39e['days']:Number[_0x39447e(0x219)];if(_0xd65823!==_0x39447e(0x1e7)&&_0xd65823!==_0x39447e(0x281)&&_0xd65823!=='pro'&&_0xd65823!==_0x39447e(0x153)){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x149)}));return;}if(!Number['isFinite'](_0x156e7c)||_0x156e7c<0x1||_0x156e7c>0xe42){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1d0)}));return;}try{const _0x51f006=Math['floor'](Date['now']()/0x5265c00),{activationEpochDays:_0x3119d4}=await Promise['resolve']()[_0x39447e(0x14b)](()=>__importStar(require(_0x39447e(0x1f6)))),_0x3c96ec=(0x0,license_js_1[_0x39447e(0x1be)])({'plan':_0xd65823,'expDays':_0x51f006-_0x3119d4()+Math[_0x39447e(0x27d)](_0x156e7c)},(0x0,license_js_1[_0x39447e(0x254)])()),_0x4fb291=typeof _0x2bf39e['id']===_0x39447e(0x1f0)?_0x2bf39e['id']:undefined,_0x578898=_0x186332[_0x39447e(0x26a)](_0x3c96ec,_0x4fb291);_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'key':_0x3c96ec,'id':_0x578898['id']}));}catch(_0x567a4e){_0xb8ddaa['writeHead'](0x1f4,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x200)+(_0x567a4e instanceof Error?_0x567a4e[_0x39447e(0x23c)]:String(_0x567a4e))}));}return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x1995c7===_0x39447e(0x1cc)){_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x230)}),_0xb8ddaa[_0x39447e(0x1c1)](install_ps1_js_1[_0x39447e(0x1ca)]);return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7===_0x39447e(0x209)){const _0x514e2e=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x514e2e)return;const _0x2b3b88=licenseMachineId(_0x514e2e['machineId']);if(!_0x2b3b88){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'valid':![],'reason':_0x39447e(0x18c)}));return;}const _0x3d452b=_0x186332[_0x39447e(0x1a6)](typeof _0x514e2e[_0x39447e(0x22d)]===_0x39447e(0x1f0)?_0x514e2e[_0x39447e(0x22d)]:'',_0x2b3b88);if(_0x3d452b[_0x39447e(0x189)]===!![])_0x186332['touch'](_0x3d452b[_0x39447e(0x215)]?.['id']??'');_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'valid':_0x3d452b[_0x39447e(0x189)],'plan':_0x3d452b[_0x39447e(0x1da)],'exp':_0x3d452b[_0x39447e(0x135)],'reason':_0x3d452b['reason']}));return;}if(_0x479004['method']==='POST'&&_0x1995c7==='/license/activate'){const _0x1ba9bc=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x1ba9bc)return;const _0x163318=licenseMachineId(_0x1ba9bc[_0x39447e(0x2a3)]);if(!_0x163318){_0xb8ddaa['writeHead'](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':![],'reason':_0x39447e(0x18c)}));return;}const _0x5e5bbd=_0x186332['activate'](typeof _0x1ba9bc[_0x39447e(0x22d)]===_0x39447e(0x1f0)?_0x1ba9bc[_0x39447e(0x22d)]:'',_0x163318);_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':_0x5e5bbd['ok'],'plan':_0x5e5bbd[_0x39447e(0x1da)],'exp':_0x5e5bbd['exp'],'reason':_0x5e5bbd[_0x39447e(0x2a4)]}));return;}if(_0x479004[_0x39447e(0x179)]==='POST'&&_0x1995c7===_0x39447e(0x17e)){const _0x4dd634=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x4dd634)return;const _0x1d32ac=licenseMachineId(_0x4dd634[_0x39447e(0x2a3)]),_0x15c6fc=typeof _0x4dd634[_0x39447e(0x297)]===_0x39447e(0x1f0)?_0x4dd634[_0x39447e(0x297)]['slice'](0x0,0x78):'';if(!_0x1d32ac||!_0x15c6fc){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x290)}));return;}const _0x4a09e7=_0x186332[_0x39447e(0x263)](typeof _0x4dd634['key']===_0x39447e(0x1f0)?_0x4dd634['key']:'',_0x1d32ac);if(_0x4a09e7['valid']!==!![]){_0xb8ddaa[_0x39447e(0x29d)](0x193,{'Content-Type':'application/json'}),_0xb8ddaa['end'](JSON['stringify']({'error':_0x4a09e7[_0x39447e(0x2a4)]??_0x39447e(0x15a)}));return;}_0x186332[_0x39447e(0x289)](_0x4a09e7[_0x39447e(0x215)]?.['id']??''),_0x186332[_0x39447e(0x220)]({'keyId':_0x4a09e7['record']?.['id']??'','machineId':_0x1d32ac,'tool':_0x15c6fc,'target':typeof _0x4dd634[_0x39447e(0x214)]===_0x39447e(0x1f0)?_0x4dd634[_0x39447e(0x214)]['slice'](0x0,0x12c):'','ok':_0x4dd634['ok']!==![]}),_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'ok':!![]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7==='/license/mint-trial'){const _0x2eac13=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x2eac13)return;const _0x2d74e2=licenseMachineId(_0x2eac13[_0x39447e(0x2a3)]);if(!_0x2d74e2){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':![],'reason':'missing\x20machineId'}));return;}const _0x2eea9e=clientIp(_0x479004),_0x1dd21b=Date[_0x39447e(0x13a)](),_0x5c8546=(_0x1fa75e['get'](_0x2eea9e)??[])[_0x39447e(0x18f)](_0x1e2a9d=>_0x1dd21b-_0x1e2a9d<0x36ee80);if(_0x5c8546[_0x39447e(0x1fc)]>=_0x23e8ad){_0xb8ddaa[_0x39447e(0x29d)](0x1ad,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':![],'reason':'too\x20many\x20trial\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later'}));return;}_0x5c8546['push'](_0x1dd21b),_0x1fa75e[_0x39447e(0x1c4)](_0x2eea9e,_0x5c8546);if(_0x186332[_0x39447e(0x2a8)](_0x2d74e2)){_0xb8ddaa[_0x39447e(0x29d)](0x199,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':![],'reason':_0x39447e(0x26b)}));return;}try{const _0x367875=Number(process.env.LICENSE_TRIAL_DAYS??0x7),_0x12ea93=Math[_0x39447e(0x21a)](Math[_0x39447e(0x1f4)](Math[_0x39447e(0x27d)](Number[_0x39447e(0x21c)](_0x367875)?_0x367875:0x7),0x1),0x1e),_0x277a00=Math[_0x39447e(0x27d)](Date[_0x39447e(0x13a)]()/0x5265c00),{activationEpochDays:_0x2a899c}=await Promise[_0x39447e(0x259)]()[_0x39447e(0x14b)](()=>__importStar(require(_0x39447e(0x1f6)))),_0x36bcc6=(0x0,license_js_1[_0x39447e(0x1be)])({'plan':_0x39447e(0x281),'expDays':_0x277a00-_0x2a899c()+_0x12ea93},(0x0,license_js_1[_0x39447e(0x254)])()),_0x229e17=_0x186332[_0x39447e(0x26a)](_0x36bcc6,'trial',{'trial':!![]}),_0x3ab996=_0x186332[_0x39447e(0x140)](_0x36bcc6,_0x2d74e2);_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':_0x3ab996['ok'],'key':_0x36bcc6,'id':_0x229e17['id'],'exp':_0x229e17[_0x39447e(0x135)],'days':_0x12ea93}));}catch(_0x451386){_0xb8ddaa[_0x39447e(0x29d)](0x1f4,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':![],'reason':_0x39447e(0x1ac)+(_0x451386 instanceof Error?_0x451386[_0x39447e(0x23c)]:String(_0x451386))}));}return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7===_0x39447e(0x19f)){const _0x1bfb4c=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x1bfb4c)return;const _0x57cc48=licenseMachineId(_0x1bfb4c[_0x39447e(0x2a3)]);if(!_0x57cc48){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':![],'reason':'missing\x20machineId'}));return;}const _0x52e0e3=(process.env.GITHUB_CLIENT_ID??'')[_0x39447e(0x252)]();if(!_0x52e0e3){_0xb8ddaa['writeHead'](0x1f4,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':![],'reason':'GitHub\x20login\x20not\x20configured\x20on\x20this\x20server'}));return;}const _0x28706b=clientIp(_0x479004),_0x4817cb=Date[_0x39447e(0x13a)](),_0x42d396=(_0x2b0f50[_0x39447e(0x164)](_0x28706b)??[])['filter'](_0x411094=>_0x4817cb-_0x411094<0x36ee80);if(_0x42d396['length']>=_0x5c69b6){_0xb8ddaa[_0x39447e(0x29d)](0x1ad,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':![],'reason':'too\x20many\x20login\x20requests\x20from\x20this\x20network\x20—\x20try\x20again\x20later'}));return;}_0x42d396[_0x39447e(0x255)](_0x4817cb),_0x2b0f50[_0x39447e(0x1c4)](_0x28706b,_0x42d396);const _0x1aff93=_0xa8d6ef[_0x39447e(0x185)](_0x57cc48),_0xebc655=_0x39447e(0x152)+encodeURIComponent(_0x52e0e3)+'&scope=repo&state='+_0x1aff93[_0x39447e(0x143)];_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':!![],'url':_0xebc655}));return;}if(_0x479004[_0x39447e(0x179)]==='GET'&&_0x1995c7==='/auth/github/callback'){const _0x5a699b=(_0xdf1c97,_0x3a9b6f,_0x3cded0)=>{const _0xbe7049=_0x39447e;_0xb8ddaa[_0xbe7049(0x29d)](_0x3cded0?0xc8:0x190,{'Content-Type':'text/html;\x20charset=utf-8'}),_0xb8ddaa[_0xbe7049(0x1c1)]('<!doctype\x20html><html\x20lang=\x22en\x22><head><meta\x20charset=\x22utf-8\x22><title>'+_0xdf1c97+_0xbe7049(0x25d)+_0xbe7049(0x19a)+(_0xbe7049(0x201)+_0xdf1c97+_0xbe7049(0x204)+_0x3a9b6f+'</p></body></html>'));},_0xd663a6=new URL(_0x479004['url']??'/',_0x39447e(0x245))[_0x39447e(0x1b3)],_0x2de7b4=_0xd663a6[_0x39447e(0x164)](_0x39447e(0x20b))??'',_0x312bb6=_0xd663a6['get'](_0x39447e(0x143))??'',_0x56f4a9=_0xa8d6ef[_0x39447e(0x1af)](_0x312bb6);if(!_0x2de7b4||!_0x56f4a9){_0x5a699b(_0x39447e(0x26d),_0x39447e(0x13b),![]);return;}const _0x24d70d=(process.env.GITHUB_CLIENT_ID??'')[_0x39447e(0x252)](),_0x1b634d=(process.env.GITHUB_CLIENT_SECRET??'')[_0x39447e(0x252)]();if(!_0x24d70d||!_0x1b634d){_0x5a699b('Server\x20misconfigured',_0x39447e(0x197),![]);return;}try{const _0x57d321=await fetch('https://github.com/login/oauth/access_token',{'method':_0x39447e(0x165),'headers':{'Content-Type':_0x39447e(0x286),'Accept':_0x39447e(0x286),'User-Agent':_0x39447e(0x275)},'body':JSON[_0x39447e(0x1c8)]({'client_id':_0x24d70d,'client_secret':_0x1b634d,'code':_0x2de7b4}),'signal':AbortSignal[_0x39447e(0x17b)](0x4e20)}),_0x145594=await _0x57d321['json']();if(!_0x57d321['ok']||typeof _0x145594[_0x39447e(0x208)]!==_0x39447e(0x1f0)||!_0x145594[_0x39447e(0x208)])throw new Error(typeof _0x145594[_0x39447e(0x1c3)]===_0x39447e(0x1f0)?_0x145594[_0x39447e(0x1c3)]:_0x39447e(0x184)+_0x57d321[_0x39447e(0x1ff)]);const _0x4e5ae1=await githubApi(_0x39447e(0x243),_0x145594['access_token']),_0x57c0c9=_0x4e5ae1[_0x39447e(0x296)]&&typeof _0x4e5ae1[_0x39447e(0x296)]==='object'&&typeof _0x4e5ae1['json']['login']===_0x39447e(0x1f0)?_0x4e5ae1['json']['login']:_0x39447e(0x1b9);_0xa8d6ef[_0x39447e(0x182)](_0x56f4a9,_0x145594[_0x39447e(0x208)],_0x57c0c9),_0x5a699b('Authorized',_0x39447e(0x1e4)+_0x57c0c9+'</b>.\x20Return\x20to\x20the\x20CLI\x20—\x20it\x20picks\x20this\x20up\x20automatically.',!![]);}catch(_0xb25953){_0x5a699b(_0x39447e(0x26d),_0x39447e(0x1dc)+(_0xb25953 instanceof Error?_0xb25953['message']:String(_0xb25953))+_0x39447e(0x1ae),![]);}return;}if(_0x479004['method']===_0x39447e(0x18a)&&_0x1995c7===_0x39447e(0x28f)){const _0x94f505=licenseMachineId(new URL(_0x479004[_0x39447e(0x24b)]??'/',_0x39447e(0x245))['searchParams'][_0x39447e(0x164)](_0x39447e(0x2a3))),_0x503b37=_0x94f505?_0xa8d6ef[_0x39447e(0x159)](_0x94f505):undefined;_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)](_0x503b37?{'authorized':!![],'login':_0x503b37[_0x39447e(0x14c)]}:{'authorized':![]}));return;}if(_0x479004[_0x39447e(0x179)]==='POST'&&_0x1995c7===_0x39447e(0x26e)){const _0x12f74a=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x12f74a)return;const _0xb1131=licenseMachineId(_0x12f74a[_0x39447e(0x2a3)]);_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':_0xb1131?_0xa8d6ef[_0x39447e(0x198)](_0xb1131):![]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7==='/github/read'){const _0x551b9a=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x551b9a)return;const _0x5cb2c5=licenseMachineId(_0x551b9a[_0x39447e(0x2a3)]),_0xa438a6=_0x5cb2c5?_0xa8d6ef[_0x39447e(0x159)](_0x5cb2c5):undefined;if(!_0xa438a6){_0xb8ddaa[_0x39447e(0x29d)](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1b8)}));return;}let _0x26b4a6='',_0x5c8adc='';try{;({owner:_0x26b4a6,repo:_0x5c8adc}=(0x0,github_app_js_1[_0x39447e(0x287)])(typeof _0x551b9a[_0x39447e(0x147)]===_0x39447e(0x1f0)?_0x551b9a[_0x39447e(0x147)]:''));}catch{_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1e0)}));return;}const _0x21c142=Math[_0x39447e(0x27d)](Number(_0x551b9a[_0x39447e(0x1aa)]));if(!Number[_0x39447e(0x21c)](_0x21c142)||_0x21c142<0x1){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':'number\x20must\x20be\x20a\x20positive\x20issue/PR\x20number'}));return;}const _0x1b7bad=_0x551b9a[_0x39447e(0x25c)]!==![],[_0x563316,_0x49bd05]=await Promise[_0x39447e(0x141)]([githubApi(_0x39447e(0x1e3)+_0x26b4a6+'/'+_0x5c8adc+_0x39447e(0x183)+_0x21c142,_0xa438a6[_0x39447e(0x1b1)]),_0x1b7bad?githubApi(_0x39447e(0x1e3)+_0x26b4a6+'/'+_0x5c8adc+_0x39447e(0x183)+_0x21c142+'/comments?per_page=20',_0xa438a6[_0x39447e(0x1b1)]):Promise['resolve']({'status':0xc8,'json':[]})]);if(_0x563316[_0x39447e(0x1ff)]===0x0){_0xb8ddaa['writeHead'](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x134)}));return;}if(_0x563316[_0x39447e(0x1ff)]!==0xc8||!_0x563316[_0x39447e(0x296)]||typeof _0x563316[_0x39447e(0x296)]!==_0x39447e(0x20a)){const _0x35bc9b=_0x563316['json']&&typeof _0x563316[_0x39447e(0x296)]===_0x39447e(0x20a)&&typeof _0x563316[_0x39447e(0x296)][_0x39447e(0x23c)]===_0x39447e(0x1f0)?_0x563316['json']['message']:_0x39447e(0x184)+_0x563316[_0x39447e(0x1ff)];_0xb8ddaa[_0x39447e(0x29d)](_0x563316['status']===0x194?0x194:0x1f6,{'Content-Type':'application/json'}),_0xb8ddaa['end'](JSON['stringify']({'error':_0x39447e(0x21f)+_0x35bc9b}));return;}const _0xee7ad5=_0x563316[_0x39447e(0x296)],_0x2715dd=Array['isArray'](_0x49bd05['json'])?_0x49bd05[_0x39447e(0x296)]:[];_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'ok':!![],'issue':{'number':typeof _0xee7ad5[_0x39447e(0x1aa)]===_0x39447e(0x1aa)?_0xee7ad5[_0x39447e(0x1aa)]:_0x21c142,'title':typeof _0xee7ad5[_0x39447e(0x1f5)]===_0x39447e(0x1f0)?_0xee7ad5[_0x39447e(0x1f5)]:'','state':typeof _0xee7ad5[_0x39447e(0x143)]===_0x39447e(0x1f0)?_0xee7ad5[_0x39447e(0x143)]:'','author':_0xee7ad5[_0x39447e(0x1d6)]&&typeof _0xee7ad5[_0x39447e(0x1d6)]===_0x39447e(0x20a)&&typeof _0xee7ad5[_0x39447e(0x1d6)][_0x39447e(0x14c)]==='string'?_0xee7ad5[_0x39447e(0x1d6)]['login']:'','url':typeof _0xee7ad5[_0x39447e(0x14f)]===_0x39447e(0x1f0)?_0xee7ad5[_0x39447e(0x14f)]:'','body':typeof _0xee7ad5[_0x39447e(0x22c)]===_0x39447e(0x1f0)?_0xee7ad5[_0x39447e(0x22c)][_0x39447e(0x16a)](0x0,0x1f40):'','commentsCount':typeof _0xee7ad5['comments']===_0x39447e(0x1aa)?_0xee7ad5[_0x39447e(0x213)]:_0x2715dd['length'],'isPullRequest':_0xee7ad5['pull_request']!==undefined},'comments':_0x2715dd[_0x39447e(0x18f)](_0x27e6f3=>!!_0x27e6f3&&typeof _0x27e6f3===_0x39447e(0x20a))['slice'](-0x14)[_0x39447e(0x29f)](_0x2edbfa=>({'author':_0x2edbfa['user']&&typeof _0x2edbfa[_0x39447e(0x1d6)]==='object'&&typeof _0x2edbfa[_0x39447e(0x1d6)][_0x39447e(0x14c)]==='string'?_0x2edbfa[_0x39447e(0x1d6)][_0x39447e(0x14c)]:'','body':typeof _0x2edbfa[_0x39447e(0x22c)]==='string'?_0x2edbfa['body'][_0x39447e(0x16a)](0x0,0x7d0):'','createdAt':typeof _0x2edbfa[_0x39447e(0x188)]===_0x39447e(0x1f0)?_0x2edbfa['created_at']:''}))}));return;}if(_0x479004['method']===_0x39447e(0x18a)&&_0x1995c7===_0x39447e(0x1c2)){const _0xb8bd3c=licenseMachineId(new URL(_0x479004['url']??'/','http://localhost')['searchParams']['get'](_0x39447e(0x2a3))),_0xaa69dc=_0xb8bd3c?_0xa8d6ef[_0x39447e(0x159)](_0xb8bd3c):undefined;if(!_0xaa69dc){_0xb8ddaa[_0x39447e(0x29d)](0x191,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1b8)}));return;}const _0x5397f2=await githubApi('/user/repos?per_page=100&sort=updated',_0xaa69dc[_0x39447e(0x1b1)]);if(_0x5397f2['status']===0x0){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x134)}));return;}if(_0x5397f2['status']!==0xc8||!Array[_0x39447e(0x14a)](_0x5397f2['json'])){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x5397f2[_0x39447e(0x296)],_0x5397f2[_0x39447e(0x1ff)])}));return;}_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':!![],'login':_0xaa69dc['login'],'repos':_0x5397f2[_0x39447e(0x296)]['filter'](_0x3db161=>!!_0x3db161&&typeof _0x3db161===_0x39447e(0x20a))['map'](_0x25113a=>({'fullName':typeof _0x25113a[_0x39447e(0x1fa)]==='string'?_0x25113a['full_name']:'','private':_0x25113a[_0x39447e(0x1b0)]===!![],'defaultBranch':typeof _0x25113a[_0x39447e(0x1df)]===_0x39447e(0x1f0)?_0x25113a[_0x39447e(0x1df)]:_0x39447e(0x282),'updatedAt':typeof _0x25113a[_0x39447e(0x268)]===_0x39447e(0x1f0)?_0x25113a[_0x39447e(0x268)]:''}))[_0x39447e(0x18f)](_0x124b3a=>_0x124b3a['fullName']['length']>0x0)}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7===_0x39447e(0x1dd)){const _0x3eeff6=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x3eeff6)return;const _0x2d4df1=licenseMachineId(_0x3eeff6['machineId']),_0x4f87f5=_0x2d4df1?_0xa8d6ef[_0x39447e(0x159)](_0x2d4df1):undefined;if(!_0x4f87f5){_0xb8ddaa[_0x39447e(0x29d)](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':'GitHub\x20login\x20required\x20—\x20run\x20/github\x20login\x20first'}));return;}let _0x1229dc='',_0x1eb4be='';try{;({owner:_0x1229dc,repo:_0x1eb4be}=(0x0,github_app_js_1[_0x39447e(0x287)])(typeof _0x3eeff6[_0x39447e(0x147)]===_0x39447e(0x1f0)?_0x3eeff6['repo']:''));}catch{_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x1e0)}));return;}const _0x15d7ce=typeof _0x3eeff6[_0x39447e(0x28c)]===_0x39447e(0x1f0)?_0x3eeff6[_0x39447e(0x28c)][_0x39447e(0x252)]()['replace'](/^\/+/,''):'';if(!_0x15d7ce||_0x15d7ce[_0x39447e(0x249)]('/')['includes']('..')){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x238)}));return;}const _0x2d4aa4=typeof _0x3eeff6[_0x39447e(0x277)]===_0x39447e(0x1f0)?_0x3eeff6[_0x39447e(0x277)]:'';if(Buffer[_0x39447e(0x13e)](_0x2d4aa4,_0x39447e(0x24a))>0x186a0){_0xb8ddaa['writeHead'](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':'content\x20over\x20100KB\x20—\x20split\x20it\x20or\x20open\x20a\x20PR'}));return;}const _0x265c30=typeof _0x3eeff6[_0x39447e(0x23c)]===_0x39447e(0x1f0)&&_0x3eeff6['message'][_0x39447e(0x252)]()?_0x3eeff6[_0x39447e(0x23c)][_0x39447e(0x252)]()[_0x39447e(0x16a)](0x0,0xc8):_0x39447e(0x26c)+_0x15d7ce,_0x14a5a5=typeof _0x3eeff6[_0x39447e(0x15c)]===_0x39447e(0x1f0)&&_0x3eeff6['branch']['trim']()?_0x3eeff6['branch']['trim']():undefined,_0x3c7438=_0x14a5a5?_0x39447e(0x20c)+encodeURIComponent(_0x14a5a5):'',_0x284a8c=await githubApi('/repos/'+_0x1229dc+'/'+_0x1eb4be+_0x39447e(0x13d)+encodeContentPath(_0x15d7ce)+_0x3c7438,_0x4f87f5[_0x39447e(0x1b1)]);let _0x17b1db;if(_0x284a8c[_0x39447e(0x1ff)]>=0xc8&&_0x284a8c[_0x39447e(0x1ff)]<0x12c){const _0x2c7a20=_0x284a8c[_0x39447e(0x296)];if(!_0x2c7a20||typeof _0x2c7a20!=='object'||_0x2c7a20[_0x39447e(0x1ce)]===undefined||_0x2c7a20[_0x39447e(0x1ce)]===_0x39447e(0x2ab))_0x17b1db=typeof _0x2c7a20?.[_0x39447e(0x269)]==='string'?_0x2c7a20[_0x39447e(0x269)]:undefined;else{_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x15d7ce+_0x39447e(0x20f)}));return;}}else{if(_0x284a8c['status']!==0x194){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':'GitHub:\x20'+githubErrorMessage(_0x284a8c[_0x39447e(0x296)],_0x284a8c[_0x39447e(0x1ff)])}));return;}}const _0x19f6ac=await githubApi(_0x39447e(0x1e3)+_0x1229dc+'/'+_0x1eb4be+_0x39447e(0x13d)+encodeContentPath(_0x15d7ce),_0x4f87f5[_0x39447e(0x1b1)],0x4e20,{'method':'PUT','body':{'message':_0x265c30,'content':Buffer[_0x39447e(0x225)](_0x2d4aa4,'utf8')[_0x39447e(0x1fd)]('base64'),..._0x17b1db?{'sha':_0x17b1db}:{},..._0x14a5a5?{'branch':_0x14a5a5}:{}}});if(_0x19f6ac[_0x39447e(0x1ff)]<0xc8||_0x19f6ac['status']>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x19f6ac[_0x39447e(0x296)],_0x19f6ac['status'])}));return;}const _0x35da44=_0x19f6ac[_0x39447e(0x296)],_0xa628d1=_0x35da44&&typeof _0x35da44===_0x39447e(0x20a)&&_0x35da44[_0x39447e(0x1b6)]&&typeof _0x35da44[_0x39447e(0x1b6)][_0x39447e(0x269)]===_0x39447e(0x1f0)?_0x35da44[_0x39447e(0x1b6)][_0x39447e(0x269)]:'';_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':!![],'commit':_0xa628d1[_0x39447e(0x16a)](0x0,0x7)||null}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x1995c7===_0x39447e(0x1bf)){const _0xdfa887=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0xdfa887)return;const _0x49b521=licenseMachineId(_0xdfa887['machineId']),_0x526a1f=_0x49b521?_0xa8d6ef[_0x39447e(0x159)](_0x49b521):undefined;if(!_0x526a1f){_0xb8ddaa[_0x39447e(0x29d)](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON['stringify']({'error':_0x39447e(0x1b8)}));return;}let _0x35bc5a='',_0x4294be='';try{;({owner:_0x35bc5a,repo:_0x4294be}=(0x0,github_app_js_1['splitRepo'])(typeof _0xdfa887['repo']===_0x39447e(0x1f0)?_0xdfa887[_0x39447e(0x147)]:''));}catch{_0xb8ddaa['writeHead'](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1e0)}));return;}const _0x2e9efe=typeof _0xdfa887[_0x39447e(0x15c)]==='string'?_0xdfa887[_0x39447e(0x15c)][_0x39447e(0x252)]():'';if(!/^[A-Za-z0-9][A-Za-z0-9/_.-]{0,120}$/['test'](_0x2e9efe)){_0xb8ddaa['writeHead'](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':'invalid\x20branch\x20name\x20\x22'+_0x2e9efe+'\x22'}));return;}const _0x3c9a33=await githubApi('/repos/'+_0x35bc5a+'/'+_0x4294be,_0x526a1f[_0x39447e(0x1b1)]);if(_0x3c9a33['status']<0xc8||_0x3c9a33['status']>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':'GitHub:\x20'+githubErrorMessage(_0x3c9a33[_0x39447e(0x296)],_0x3c9a33[_0x39447e(0x1ff)])}));return;}const _0x2f6619=_0x3c9a33[_0x39447e(0x296)],_0x241f9f=typeof _0xdfa887['base']===_0x39447e(0x1f0)&&_0xdfa887[_0x39447e(0x192)][_0x39447e(0x252)]()?_0xdfa887[_0x39447e(0x192)][_0x39447e(0x252)]():_0x2f6619&&typeof _0x2f6619===_0x39447e(0x20a)&&typeof _0x2f6619[_0x39447e(0x1df)]===_0x39447e(0x1f0)?_0x2f6619[_0x39447e(0x1df)]:_0x39447e(0x282),_0x5368ae=await githubApi('/repos/'+_0x35bc5a+'/'+_0x4294be+_0x39447e(0x16c)+encodeURIComponent(_0x241f9f),_0x526a1f[_0x39447e(0x1b1)]);if(_0x5368ae['status']<0xc8||_0x5368ae[_0x39447e(0x1ff)]>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':'GitHub:\x20'+githubErrorMessage(_0x5368ae[_0x39447e(0x296)],_0x5368ae['status'])}));return;}const _0x2f3752=_0x5368ae[_0x39447e(0x296)],_0x3efe55=_0x2f3752&&typeof _0x2f3752===_0x39447e(0x20a)&&_0x2f3752[_0x39447e(0x20a)]&&typeof _0x2f3752[_0x39447e(0x20a)][_0x39447e(0x269)]===_0x39447e(0x1f0)?_0x2f3752[_0x39447e(0x20a)][_0x39447e(0x269)]:'';if(!_0x3efe55){_0xb8ddaa['writeHead'](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x216)+_0x241f9f}));return;}const _0x56c1fb=await githubApi('/repos/'+_0x35bc5a+'/'+_0x4294be+'/git/refs',_0x526a1f[_0x39447e(0x1b1)],0x4e20,{'method':_0x39447e(0x165),'body':{'ref':_0x39447e(0x1ef)+_0x2e9efe,'sha':_0x3efe55}});if(_0x56c1fb[_0x39447e(0x1ff)]===0x1a6){_0xb8ddaa[_0x39447e(0x29d)](0x199,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON['stringify']({'error':'branch\x20'+_0x2e9efe+_0x39447e(0x1ed)}));return;}if(_0x56c1fb['status']<0xc8||_0x56c1fb[_0x39447e(0x1ff)]>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x56c1fb[_0x39447e(0x296)],_0x56c1fb[_0x39447e(0x1ff)])}));return;}_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'ok':!![],'branch':_0x2e9efe,'base':_0x241f9f}));return;}if(_0x479004[_0x39447e(0x179)]==='POST'&&_0x1995c7===_0x39447e(0x247)){const _0x295955=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x295955)return;const _0x507ef7=licenseMachineId(_0x295955[_0x39447e(0x2a3)]),_0x4628fc=_0x507ef7?_0xa8d6ef[_0x39447e(0x159)](_0x507ef7):undefined;if(!_0x4628fc){_0xb8ddaa['writeHead'](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1b8)}));return;}let _0x28392b='',_0x4b6856='';try{;({owner:_0x28392b,repo:_0x4b6856}=(0x0,github_app_js_1['splitRepo'])(typeof _0x295955[_0x39447e(0x147)]===_0x39447e(0x1f0)?_0x295955['repo']:''));}catch{_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1e0)}));return;}const _0xfae544=typeof _0x295955[_0x39447e(0x1ea)]===_0x39447e(0x1f0)?_0x295955[_0x39447e(0x1ea)][_0x39447e(0x252)]():'',_0xf8f7c0=typeof _0x295955[_0x39447e(0x1f5)]===_0x39447e(0x1f0)?_0x295955[_0x39447e(0x1f5)][_0x39447e(0x252)]():'';if(!_0xfae544||!_0xf8f7c0){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x224)}));return;}const _0x4723de=await githubApi('/repos/'+_0x28392b+'/'+_0x4b6856+_0x39447e(0x1d1),_0x4628fc['token'],0x4e20,{'method':_0x39447e(0x165),'body':{'title':_0xf8f7c0[_0x39447e(0x16a)](0x0,0xc8),'head':_0xfae544,...typeof _0x295955[_0x39447e(0x192)]===_0x39447e(0x1f0)&&_0x295955[_0x39447e(0x192)][_0x39447e(0x252)]()?{'base':_0x295955[_0x39447e(0x192)][_0x39447e(0x252)]()}:{},'body':typeof _0x295955['body']===_0x39447e(0x1f0)?_0x295955[_0x39447e(0x22c)][_0x39447e(0x16a)](0x0,0x1f40):''}});if(_0x4723de['status']<0xc8||_0x4723de['status']>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x4723de['json'],_0x4723de['status'])}));return;}const _0x1f2229=_0x4723de[_0x39447e(0x296)];_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':!![],'number':_0x1f2229&&typeof _0x1f2229===_0x39447e(0x20a)&&typeof _0x1f2229['number']===_0x39447e(0x1aa)?_0x1f2229[_0x39447e(0x1aa)]:null,'url':_0x1f2229&&typeof _0x1f2229===_0x39447e(0x20a)&&typeof _0x1f2229['html_url']===_0x39447e(0x1f0)?_0x1f2229['html_url']:''}));return;}if(_0x479004['method']===_0x39447e(0x165)&&_0x1995c7===_0x39447e(0x15e)){const _0x379666=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x379666)return;const _0x177496=licenseMachineId(_0x379666[_0x39447e(0x2a3)]),_0x14f1e2=_0x177496?_0xa8d6ef[_0x39447e(0x159)](_0x177496):undefined;if(!_0x14f1e2){_0xb8ddaa['writeHead'](0x191,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x1b8)}));return;}let _0x387d00='',_0x42e421='';try{;({owner:_0x387d00,repo:_0x42e421}=(0x0,github_app_js_1[_0x39447e(0x287)])(typeof _0x379666[_0x39447e(0x147)]===_0x39447e(0x1f0)?_0x379666['repo']:''));}catch{_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x1e0)}));return;}const _0x2badbe=typeof _0x379666[_0x39447e(0x264)]===_0x39447e(0x1f0)?_0x379666['sourcePath'][_0x39447e(0x252)]()[_0x39447e(0x279)](/^\/+/,''):'',_0x52bdc4=typeof _0x379666[_0x39447e(0x169)]==='string'?_0x379666['destPath'][_0x39447e(0x252)]()[_0x39447e(0x279)](/^\/+/,''):'';if(!_0x2badbe||!_0x52bdc4||_0x2badbe[_0x39447e(0x249)]('/')[_0x39447e(0x239)]('..')||_0x52bdc4['split']('/')[_0x39447e(0x239)]('..')){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x29c)}));return;}const _0x3d9902=await githubApi(_0x39447e(0x1e3)+_0x387d00+'/'+_0x42e421+'/contents/'+encodeContentPath(_0x2badbe),_0x14f1e2[_0x39447e(0x1b1)]);if(_0x3d9902[_0x39447e(0x1ff)]<0xc8||_0x3d9902[_0x39447e(0x1ff)]>=0x12c){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x3d9902['json'],_0x3d9902['status'])}));return;}const _0x4cdf6f=_0x3d9902['json'];if(!_0x4cdf6f||typeof _0x4cdf6f!==_0x39447e(0x20a)||typeof _0x4cdf6f[_0x39447e(0x277)]!=='string'||!_0x4cdf6f[_0x39447e(0x277)]){_0xb8ddaa[_0x39447e(0x29d)](0x1f6,{'Content-Type':'application/json'}),_0xb8ddaa['end'](JSON['stringify']({'error':_0x2badbe+_0x39447e(0x25a)}));return;}const _0x51fab2=Buffer[_0x39447e(0x225)](Buffer['from'](_0x4cdf6f[_0x39447e(0x277)],_0x39447e(0x138))[_0x39447e(0x1fd)](_0x39447e(0x24a)),'utf8')[_0x39447e(0x1fd)]('base64'),_0x33e3ec=await githubApi(_0x39447e(0x1e3)+_0x387d00+'/'+_0x42e421+'/contents/'+encodeContentPath(_0x52bdc4),_0x14f1e2['token']);let _0x73aa6a;if(_0x33e3ec[_0x39447e(0x1ff)]>=0xc8&&_0x33e3ec[_0x39447e(0x1ff)]<0x12c){const _0xb5723=_0x33e3ec['json'];_0x73aa6a=_0xb5723&&typeof _0xb5723===_0x39447e(0x20a)&&typeof _0xb5723[_0x39447e(0x269)]===_0x39447e(0x1f0)?_0xb5723[_0x39447e(0x269)]:undefined;}const _0x552ee2=await githubApi(_0x39447e(0x1e3)+_0x387d00+'/'+_0x42e421+'/contents/'+encodeContentPath(_0x52bdc4),_0x14f1e2[_0x39447e(0x1b1)],0x4e20,{'method':_0x39447e(0x237),'body':{'message':_0x39447e(0x1d2)+_0x2badbe+_0x39447e(0x236)+_0x52bdc4,'content':_0x51fab2,..._0x73aa6a?{'sha':_0x73aa6a}:{}}});if(_0x552ee2[_0x39447e(0x1ff)]<0xc8||_0x552ee2[_0x39447e(0x1ff)]>=0x12c){_0xb8ddaa['writeHead'](0x1f6,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x21f)+githubErrorMessage(_0x552ee2[_0x39447e(0x296)],_0x552ee2[_0x39447e(0x1ff)])}));return;}const _0x53a425=_0x552ee2[_0x39447e(0x296)],_0x40a25e=_0x53a425&&typeof _0x53a425==='object'&&_0x53a425[_0x39447e(0x1b6)]&&typeof _0x53a425[_0x39447e(0x1b6)][_0x39447e(0x269)]==='string'?_0x53a425['commit'][_0x39447e(0x269)]:'';_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'ok':!![],'commit':_0x40a25e[_0x39447e(0x16a)](0x0,0x7)||null}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x479004['url']===_0x39447e(0x272)){const _0xa81c3c=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0xa81c3c)return;try{const _0x240cef=_0x186332[_0x39447e(0x26a)](typeof _0xa81c3c['key']===_0x39447e(0x1f0)?_0xa81c3c[_0x39447e(0x22d)]:'',typeof _0xa81c3c['customer']===_0x39447e(0x1f0)?_0xa81c3c[_0x39447e(0x1b7)]:undefined);_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'id':_0x240cef['id'],'plan':_0x240cef[_0x39447e(0x1da)]}));}catch(_0x249d60){_0xb8ddaa[_0x39447e(0x29d)](0x190,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x249d60 instanceof Error?_0x249d60[_0x39447e(0x23c)]:String(_0x249d60)}));}return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x479004['url']===_0x39447e(0x1ba)){const _0x57afda=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x57afda)return;const _0x3314d0=typeof _0x57afda['id']===_0x39447e(0x1f0)?_0x57afda['id']:'';if(!_0x3314d0||!_0x186332['revoke'](_0x3314d0)){_0xb8ddaa[_0x39447e(0x29d)](0x194,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x1a3)}));return;}_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'ok':!![]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x479004['url']===_0x39447e(0x24d)){const _0x3ea2d1=await readJsonBody(_0x479004,_0xb8ddaa);if(!_0x3ea2d1)return;const _0x48eaf8=typeof _0x3ea2d1['id']===_0x39447e(0x1f0)?_0x3ea2d1['id']:'';if(!_0x48eaf8||!_0x186332[_0x39447e(0x22b)](_0x48eaf8)){_0xb8ddaa[_0x39447e(0x29d)](0x194,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x1a3)}));return;}_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'ok':!![]}));return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x18a)&&_0x1995c7===_0x39447e(0x27c)){const _0x3fdc78=_0x186332[_0x39447e(0x146)]()[_0x39447e(0x29f)](_0x5455af=>({'id':_0x5455af['id'],'key':_0x5455af[_0x39447e(0x22d)][_0x39447e(0x16a)](0x0,0x4)+_0x39447e(0x171)+_0x5455af['key'][_0x39447e(0x16a)](-0x4),'plan':_0x5455af[_0x39447e(0x1da)],'exp':_0x5455af[_0x39447e(0x135)],'customer':_0x5455af['customer'],'trial':_0x5455af[_0x39447e(0x1f3)]===!![],'revoked':_0x5455af[_0x39447e(0x1e5)],'bound':Boolean(_0x5455af[_0x39447e(0x163)]),'machine':_0x5455af[_0x39447e(0x163)]?_0x5455af['boundMachineId'][_0x39447e(0x16a)](0x0,0x8)+'…':undefined,'createdAt':_0x5455af['createdAt'],'lastSeenAt':_0x5455af[_0x39447e(0x25e)]}));_0xb8ddaa['writeHead'](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'licenses':_0x3fdc78}));return;}if(_0x479004[_0x39447e(0x179)]==='GET'&&_0x1995c7===_0x39447e(0x288)){const _0x294eb0=Number((_0x479004['url']??'')[_0x39447e(0x249)]('tail=')[0x1]??0x64);_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'usage':_0x186332[_0x39447e(0x2a9)](Number[_0x39447e(0x21c)](_0x294eb0)?_0x294eb0:0x64)}));return;}if(_0x479004['method']===_0x39447e(0x18a)&&_0x1995c7===_0x39447e(0x1a4)){const _0x49986d=Number((_0x479004[_0x39447e(0x24b)]??'')[_0x39447e(0x249)](_0x39447e(0x190))[0x1]??0x64),{readJobTail:_0x581047}=await Promise['resolve']()['then'](()=>__importStar(require('./github-jobs.js')));_0xb8ddaa[_0x39447e(0x29d)](0xc8,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa['end'](JSON[_0x39447e(0x1c8)]({'jobs':_0x581047(Number[_0x39447e(0x21c)](_0x49986d)?_0x49986d:0x64)}));return;}if(_0x479004[_0x39447e(0x179)]==='POST'&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x187)){const _0x139707=process.env.GITHUB_WEBHOOK_SECRET??'';if(!_0x139707){_0xb8ddaa['writeHead'](0x1f7,{'Content-Type':'application/json'}),_0xb8ddaa[_0x39447e(0x1c1)](JSON[_0x39447e(0x1c8)]({'error':_0x39447e(0x166)}));return;}const _0x524ed8=[];let _0x1b3959=0x0,_0x71a1ed=![];_0x479004['on'](_0x39447e(0x14d),_0x4e34ed=>{const _0x2f2fb9=_0x39447e;if(_0x71a1ed)return;const _0x39b8b0=typeof _0x4e34ed===_0x2f2fb9(0x1f0)?Buffer[_0x2f2fb9(0x225)](_0x4e34ed,'utf8'):_0x4e34ed;_0x1b3959+=_0x39b8b0['length'];if(_0x1b3959>MAX_BODY_BYTES){_0x71a1ed=!![],_0xb8ddaa[_0x2f2fb9(0x29d)](0x19d,{'Content-Type':_0x2f2fb9(0x286)}),_0xb8ddaa[_0x2f2fb9(0x1c1)](JSON[_0x2f2fb9(0x1c8)]({'error':'body\x20too\x20large\x20(max\x201MB)'})),setImmediate(()=>_0x479004[_0x2f2fb9(0x156)]());return;}_0x524ed8[_0x2f2fb9(0x255)](_0x39b8b0);}),_0x479004['on'](_0x39447e(0x1c1),()=>{const _0x3fa683=_0x39447e;if(_0x71a1ed||_0x479004[_0x3fa683(0x244)])return;const _0x31175a=Buffer[_0x3fa683(0x1f1)](_0x524ed8),_0x48abdc=_0x479004[_0x3fa683(0x1eb)]['x-hub-signature-256'];if(!(0x0,github_app_js_1[_0x3fa683(0x13f)])(_0x139707,_0x31175a,Array[_0x3fa683(0x14a)](_0x48abdc)?_0x48abdc[0x0]:_0x48abdc)){_0xb8ddaa[_0x3fa683(0x29d)](0x191,{'Content-Type':_0x3fa683(0x286)}),_0xb8ddaa[_0x3fa683(0x1c1)](JSON['stringify']({'error':_0x3fa683(0x1a7)}));return;}let _0x4894ef=null;try{_0x4894ef=JSON[_0x3fa683(0x241)](_0x31175a['toString'](_0x3fa683(0x24a)));}catch{_0xb8ddaa[_0x3fa683(0x29d)](0x190,{'Content-Type':_0x3fa683(0x286)}),_0xb8ddaa[_0x3fa683(0x1c1)](JSON['stringify']({'error':_0x3fa683(0x1cb)}));return;}const _0x247942=_0x479004['headers']['x-github-event'],_0x1c5c15=(0x0,github_app_js_1[_0x3fa683(0x154)])(Array['isArray'](_0x247942)?_0x247942[0x0]??'':_0x247942??'',_0x4894ef);if(_0x1c5c15[_0x3fa683(0x2a5)]!==_0x3fa683(0x1b4)){_0xb8ddaa[_0x3fa683(0x29d)](0xc8,{'Content-Type':_0x3fa683(0x286)}),_0xb8ddaa['end'](JSON['stringify']({'ok':!![],..._0x1c5c15[_0x3fa683(0x2a5)]==='ignored'?{'ignored':_0x1c5c15['reason']}:{}}));return;}_0xb8ddaa['writeHead'](0xca,{'Content-Type':_0x3fa683(0x286)}),_0xb8ddaa[_0x3fa683(0x1c1)](JSON[_0x3fa683(0x1c8)]({'ok':!![],'accepted':!![]})),void enqueueGithubJob(_0x1c5c15[_0x3fa683(0x1b4)],_0x4894ef);});return;}if(_0x479004[_0x39447e(0x179)]===_0x39447e(0x165)&&_0x479004[_0x39447e(0x24b)]===_0x39447e(0x178)){let _0x2fd7dd='',_0x1cbd5d=0x0,_0x4b6639=![];const _0x14d230=new AbortController();_0x479004['on'](_0x39447e(0x1a0),()=>_0x14d230[_0x39447e(0x2ac)]()),_0x479004['on'](_0x39447e(0x14d),_0x343193=>{const _0x3d48c6=_0x39447e;if(_0x4b6639)return;const _0x534eda=typeof _0x343193==='string'?_0x343193:_0x343193[_0x3d48c6(0x1fd)](_0x3d48c6(0x24a));_0x1cbd5d+=Buffer[_0x3d48c6(0x13e)](_0x534eda);if(_0x1cbd5d>MAX_BODY_BYTES){_0x4b6639=!![],_0xb8ddaa[_0x3d48c6(0x29d)](0x19d,{'Content-Type':_0x3d48c6(0x286)}),_0xb8ddaa[_0x3d48c6(0x1c1)](JSON[_0x3d48c6(0x1c8)]({'error':_0x3d48c6(0x2a1)})),setImmediate(()=>_0x479004[_0x3d48c6(0x156)]());return;}_0x2fd7dd+=_0x534eda;}),_0x479004['on'](_0x39447e(0x1c1),()=>{const _0x333b58=_0x39447e;if(_0x4b6639||_0x479004[_0x333b58(0x244)])return;const _0x48a2cb=safeJson(_0x2fd7dd),_0x477aef=typeof _0x48a2cb[_0x333b58(0x251)]==='string'?_0x48a2cb[_0x333b58(0x251)]:undefined,_0x54d25d=typeof _0x48a2cb[_0x333b58(0x1f7)]===_0x333b58(0x1f0)?_0x48a2cb['sessionFile']:undefined;if(!_0x477aef||typeof _0x477aef!==_0x333b58(0x1f0)){_0xb8ddaa[_0x333b58(0x29d)](0x190,{'Content-Type':_0x333b58(0x286)}),_0xb8ddaa[_0x333b58(0x1c1)](JSON[_0x333b58(0x1c8)]({'error':_0x333b58(0x1f8)}));return;}_0xb8ddaa[_0x333b58(0x29d)](0xc8,{'Content-Type':_0x333b58(0x1c5),'Cache-Control':_0x333b58(0x23f),'Connection':_0x333b58(0x227)});const _0x3fa08e=new index_js_1[(_0x333b58(0x280))]({'config':_0x1f6a76,'sessionFile':_0x54d25d}),_0xca235a=_0x7fffd8=>{const _0x569c88=_0x333b58;try{if(!_0x479004['destroyed']&&!_0xb8ddaa[_0x569c88(0x19e)])_0xb8ddaa[_0x569c88(0x27e)](_0x7fffd8);}catch{_0x14d230[_0x569c88(0x2ac)]();}};_0x3fa08e[_0x333b58(0x196)](_0x477aef,_0x236e60=>{const _0x54b0d4=_0x333b58;_0x593131['capture'](_0x236e60),_0xca235a(_0x54b0d4(0x13c)+JSON[_0x54b0d4(0x1c8)](_0x236e60)+'\x0a\x0a');},_0x14d230[_0x333b58(0x170)])[_0x333b58(0x14b)](()=>{const _0x1ba474=_0x333b58;_0xca235a(_0x1ba474(0x19d));try{if(!_0x479004['destroyed']&&!_0xb8ddaa[_0x1ba474(0x19e)])_0xb8ddaa[_0x1ba474(0x1c1)]();}catch{}})['catch'](_0x2f1730=>{const _0x6c20b8=_0x333b58;_0xca235a(_0x6c20b8(0x13c)+JSON[_0x6c20b8(0x1c8)]({'error':String(_0x2f1730)})+'\x0a\x0a');try{if(!_0x479004[_0x6c20b8(0x244)]&&!_0xb8ddaa[_0x6c20b8(0x19e)])_0xb8ddaa[_0x6c20b8(0x1c1)]();}catch{}});});return;}_0xb8ddaa['writeHead'](0x194,{'Content-Type':_0x39447e(0x286)}),_0xb8ddaa[_0x39447e(0x1c1)](JSON['stringify']({'error':_0x39447e(0x232)}));});return _0xda484e['listen'](_0x122ddf,_0x310fe0,()=>{const _0x298f67=_0x5168c1;process[_0x298f67(0x23d)][_0x298f67(0x27e)]('trayambak\x20server\x20listening\x20on\x20http://'+_0x310fe0+':'+_0x122ddf+'\x0a'),_0x251347&&_0x44fbb3&&process[_0x298f67(0x23d)][_0x298f67(0x27e)](_0x298f67(0x28d)+_0x44fbb3+'\x0a');}),Object['defineProperty'](_0xda484e,_0x5168c1(0x1c0),{'value':_0x44fbb3??'','enumerable':![]}),_0xda484e;}function safeJson(_0x34775a){const _0xcaeaaf=_0x765ea5;try{return JSON[_0xcaeaaf(0x241)](_0x34775a);}catch{return{};}}let githubJobQueue=Promise['resolve']();function enqueueGithubJob(_0x464702,_0x21232e){const _0x258071=_0x765ea5,_0x5a880b=githubJobQueue[_0x258071(0x14b)](()=>runGithubJob(_0x464702,_0x21232e))['catch'](_0x6e41f6=>{const _0x207941=_0x258071;return process[_0x207941(0x161)][_0x207941(0x27e)](_0x207941(0x1ec)+(_0x6e41f6 instanceof Error?_0x6e41f6['message']:String(_0x6e41f6))+'\x0a'),'';});return githubJobQueue=_0x5a880b[_0x258071(0x14b)](()=>undefined),_0x5a880b;}async function postGithubComment(_0x80c74e,_0x5b1b98,_0x3ab096,_0x5b6010,_0x5bc964){const _0x36a99a=_0x765ea5;try{const _0x337143=await fetch('https://api.github.com/repos/'+_0x80c74e+'/'+_0x5b1b98+_0x36a99a(0x183)+_0x3ab096+_0x36a99a(0x1e8),{'method':_0x36a99a(0x165),'headers':{'Accept':_0x36a99a(0x176),'User-Agent':_0x36a99a(0x275),'Authorization':_0x36a99a(0x186)+_0x5bc964,'Content-Type':_0x36a99a(0x286),'X-GitHub-Api-Version':_0x36a99a(0x1b5)},'body':JSON[_0x36a99a(0x1c8)]({'body':_0x5b6010['slice'](0x0,0xfa0)}),'signal':AbortSignal['timeout'](0x4e20)});return _0x337143[_0x36a99a(0x1ff)]===0xc9;}catch{return![];}}async function allInstalledRepos(){const _0x3e3418=_0x765ea5,_0x45034f=githubAppJwt();if(!_0x45034f)return[];try{const _0x46783c=await fetch('https://api.github.com/app/installations',{'headers':{'Accept':'application/vnd.github+json','User-Agent':_0x3e3418(0x275),'Authorization':_0x3e3418(0x186)+_0x45034f,'X-GitHub-Api-Version':_0x3e3418(0x1b5)},'signal':AbortSignal['timeout'](0x4e20)}),_0x17ae7e=await _0x46783c[_0x3e3418(0x296)]();if(!_0x46783c['ok']||!Array[_0x3e3418(0x14a)](_0x17ae7e))return[];const _0x49a078=[];for(const _0x45c3f0 of _0x17ae7e){if(typeof _0x45c3f0?.['id']!==_0x3e3418(0x1aa))continue;const _0x38af2c=await installationTokenFor(_0x45c3f0['id']);if(!_0x38af2c)continue;const _0x3cfda1=await githubApi('/installation/repositories?per_page=100',_0x38af2c);if(_0x3cfda1[_0x3e3418(0x1ff)]!==0xc8||!_0x3cfda1[_0x3e3418(0x296)]||typeof _0x3cfda1[_0x3e3418(0x296)]!=='object')continue;const _0x284ef1=_0x3cfda1['json']['repositories'];if(!Array['isArray'](_0x284ef1))continue;for(const _0x4568f6 of _0x284ef1){_0x4568f6&&typeof _0x4568f6===_0x3e3418(0x20a)&&typeof _0x4568f6['full_name']==='string'&&_0x49a078[_0x3e3418(0x255)](_0x4568f6[_0x3e3418(0x1fa)][_0x3e3418(0x158)]());}}return[...new Set(_0x49a078)];}catch{return[];}}function githubAppJwt(){const _0x28f3e4=_0x765ea5,_0x4edc1d=(process.env.GITHUB_APP_ID??'')[_0x28f3e4(0x252)]();let _0x1b686b=(process.env.GITHUB_PRIVATE_KEY??'')['trim']();if(!_0x4edc1d||!_0x1b686b)return'';if(!_0x1b686b[_0x28f3e4(0x239)]('BEGIN'))try{_0x1b686b=(0x0,node_fs_1['readFileSync'])(_0x1b686b,_0x28f3e4(0x24a));}catch{return'';}try{return(0x0,github_app_js_1['createAppJwt'])(_0x4edc1d,_0x1b686b);}catch{return'';}}async function installationIdForOwner(_0x32b5e6){const _0x2f18e1=_0x765ea5,_0x53f2e2=githubAppJwt();if(!_0x53f2e2)return 0x0;try{const _0x3ac53b=await fetch(_0x2f18e1(0x25b),{'headers':{'Accept':_0x2f18e1(0x176),'User-Agent':_0x2f18e1(0x275),'Authorization':_0x2f18e1(0x186)+_0x53f2e2,'X-GitHub-Api-Version':_0x2f18e1(0x1b5)},'signal':AbortSignal['timeout'](0x4e20)}),_0x33fc07=await _0x3ac53b[_0x2f18e1(0x296)]();if(!_0x3ac53b['ok']||!Array['isArray'](_0x33fc07))return 0x0;const _0x1a9071=_0x33fc07[_0x2f18e1(0x250)](_0x182f24=>_0x182f24&&typeof _0x182f24[_0x2f18e1(0x2ae)]?.[_0x2f18e1(0x14c)]===_0x2f18e1(0x1f0)&&_0x182f24['account'][_0x2f18e1(0x14c)][_0x2f18e1(0x158)]()===_0x32b5e6[_0x2f18e1(0x158)]());return typeof _0x1a9071?.['id']==='number'?_0x1a9071['id']:0x0;}catch{return 0x0;}}async function installationTokenFor(_0x2ef0f9){const _0x3b2dc7=_0x765ea5,_0x57c61c=githubAppJwt();if(!_0x57c61c||!_0x2ef0f9)return'';try{const _0x22a7cc=process.env.GITHUB_API_BASE??_0x3b2dc7(0x175);return await(0x0,github_app_js_1[_0x3b2dc7(0x283)])(_0x22a7cc,_0x57c61c,_0x2ef0f9);}catch{return'';}}async function serveReadmeImage(_0x3c9952,_0x567120,_0x12a3f0,_0x102da5){const _0x44cee2=_0x765ea5;try{const _0x51afda=_0x102da5[_0x44cee2(0x16a)](_0x44cee2(0x162)[_0x44cee2(0x1fc)]);if(!/^[A-Za-z0-9_-]+\.(png|jpg|jpeg)$/i[_0x44cee2(0x1fb)](_0x51afda)){_0x567120[_0x44cee2(0x29d)](0x194,{'Content-Type':_0x44cee2(0x286)}),_0x567120[_0x44cee2(0x1c1)](JSON[_0x44cee2(0x1c8)]({'error':'not\x20found'}));return;}const {readFile:_0x5a4225}=await Promise[_0x44cee2(0x259)]()['then'](()=>__importStar(require(_0x44cee2(0x234)))),_0x3f9c69=await _0x5a4225((0x0,node_path_1[_0x44cee2(0x173)])(_0x12a3f0,_0x51afda)),_0x7eb330=/\.png$/i['test'](_0x51afda)?_0x44cee2(0x298):_0x44cee2(0x1a8);_0x567120['writeHead'](0xc8,{'Content-Type':_0x7eb330,'Cache-Control':'public,\x20max-age=86400'}),_0x567120[_0x44cee2(0x1c1)](_0x3f9c69);}catch{_0x567120[_0x44cee2(0x29d)](0x194,{'Content-Type':_0x44cee2(0x286)}),_0x567120[_0x44cee2(0x1c1)](JSON['stringify']({'error':_0x44cee2(0x232)}));}}async function serveDocsFile(_0x5a695b,_0x55fff7,_0x505c43,_0x567c32){const _0x470b1f=_0x765ea5;try{const _0x4df4e1=_0x567c32[_0x470b1f(0x16a)](_0x470b1f(0x206)[_0x470b1f(0x1fc)]);if(!/^[A-Za-z0-9_-]+\.md$/i['test'](_0x4df4e1)){_0x55fff7['writeHead'](0x194,{'Content-Type':_0x470b1f(0x286)}),_0x55fff7[_0x470b1f(0x1c1)](JSON['stringify']({'error':_0x470b1f(0x232)}));return;}const {readFile:_0x1004f3}=await Promise[_0x470b1f(0x259)]()['then'](()=>__importStar(require('node:fs/promises'))),_0x62c1c7=await _0x1004f3((0x0,node_path_1['join'])(_0x505c43,_0x4df4e1));_0x55fff7['writeHead'](0xc8,{'Content-Type':_0x470b1f(0x14e),'Cache-Control':_0x470b1f(0x23b)}),_0x55fff7['end'](_0x62c1c7);}catch{_0x55fff7['writeHead'](0x194,{'Content-Type':_0x470b1f(0x286)}),_0x55fff7[_0x470b1f(0x1c1)](JSON['stringify']({'error':_0x470b1f(0x232)}));}}function licenseMachineId(_0x5488cf){const _0x37652a=_0x765ea5;if(typeof _0x5488cf!==_0x37652a(0x1f0))return'';const _0x3c47bf=_0x5488cf['trim']();return _0x3c47bf[_0x37652a(0x1fc)]>=0x4&&_0x3c47bf[_0x37652a(0x1fc)]<=0x80?_0x3c47bf:'';}async function githubApi(_0x2ab903,_0x46b478,_0x5d44eb=0x4e20,_0x1a7220){const _0xe8dda4=_0x765ea5;try{const _0x12b63d={'Accept':'application/vnd.github+json','User-Agent':_0xe8dda4(0x275),'Authorization':_0xe8dda4(0x186)+_0x46b478,'X-GitHub-Api-Version':'2022-11-28'},_0x5be855={'headers':_0x12b63d,'signal':AbortSignal[_0xe8dda4(0x17b)](_0x5d44eb)};_0x1a7220&&(_0x12b63d[_0xe8dda4(0x295)]=_0xe8dda4(0x286),_0x5be855[_0xe8dda4(0x179)]=_0x1a7220[_0xe8dda4(0x179)],_0x5be855[_0xe8dda4(0x22c)]=JSON['stringify'](_0x1a7220[_0xe8dda4(0x22c)]));const _0x3b11e3=await fetch(_0xe8dda4(0x175)+_0x2ab903,_0x5be855);let _0x12d2fc=null;try{_0x12d2fc=await _0x3b11e3['json']();}catch{}return{'status':_0x3b11e3[_0xe8dda4(0x1ff)],'json':_0x12d2fc};}catch{return{'status':0x0,'json':null};}}function githubErrorMessage(_0x228772,_0x282b6e){const _0x36ce7b=_0x765ea5;if(_0x228772&&typeof _0x228772===_0x36ce7b(0x20a)&&typeof _0x228772[_0x36ce7b(0x23c)]===_0x36ce7b(0x1f0))return _0x228772[_0x36ce7b(0x23c)];return _0x36ce7b(0x184)+_0x282b6e;}function encodeContentPath(_0x358db5){const _0x5d106d=_0x765ea5;return _0x358db5[_0x5d106d(0x249)]('/')['map'](_0x3afc68=>encodeURIComponent(_0x3afc68))[_0x5d106d(0x173)]('/');}function clientIp(_0x1a0a44){const _0x16e134=_0x765ea5,_0x3e3597=_0x1f5e52=>(Array['isArray'](_0x1f5e52)?_0x1f5e52[0x0]:_0x1f5e52)?.[_0x16e134(0x249)](',')[0x0]?.[_0x16e134(0x252)]()??'';return _0x3e3597(_0x1a0a44['headers'][_0x16e134(0x21e)])||_0x3e3597(_0x1a0a44[_0x16e134(0x1eb)]['x-forwarded-for'])||_0x3e3597(_0x1a0a44['headers'][_0x16e134(0x1a5)])||_0x1a0a44[_0x16e134(0x242)][_0x16e134(0x160)]||_0x16e134(0x218);}async function runGithubJob(_0xd8fee2,_0x37a6de){const _0x217966=_0x765ea5,_0x141a85=process.env.GITHUB_API_BASE??'https://api.github.com',_0xc7aa40=new Date()[_0x217966(0x1b2)]();process['stdout'][_0x217966(0x27e)](_0x217966(0x231)+_0xd8fee2['repoFullName']+'#'+_0xd8fee2[_0x217966(0x194)]+_0x217966(0x137)+_0xc7aa40+'\x0a');const _0x55f23d=process.env.TRAYAMBAK_GITHUB_WORKSPACE??(0x0,index_js_1[_0x217966(0x23a)])()['cwd'],_0x1524ee=(0x0,index_js_1[_0x217966(0x23a)])(),_0x15b057={..._0x1524ee,'cwd':_0x55f23d,'permissions':{..._0x1524ee['permissions'],'rulesV2':[..._0x1524ee['permissions']?.['rulesV2']??[],{'tool':_0x217966(0x25f),'action':_0x217966(0x20e),'reason':_0x217966(0x172)}]}},_0x231328=new index_js_1[(_0x217966(0x280))]({'config':_0x15b057}),_0x267543=process.env.GITHUB_APP_ID??'';let _0x4ae29c=process.env.GITHUB_PRIVATE_KEY??'';if(_0x4ae29c&&!_0x4ae29c[_0x217966(0x239)](_0x217966(0x273))){const _0x101901=await Promise[_0x217966(0x259)]()[_0x217966(0x14b)](()=>__importStar(require(_0x217966(0x210))));try{_0x4ae29c=_0x101901[_0x217966(0x278)](_0x4ae29c,'utf8');}catch{_0x4ae29c='';}}const _0x431820=_0x37a6de?.[_0x217966(0x1ab)],_0xfe971e=typeof _0x431820?.['id']===_0x217966(0x1aa)?_0x431820['id']:0x0;let _0xf60c2a='';if(_0x267543&&_0x4ae29c&&_0xfe971e)try{_0xf60c2a=await(0x0,github_app_js_1[_0x217966(0x283)])(_0x141a85,(0x0,github_app_js_1['createAppJwt'])(_0x267543,_0x4ae29c),_0xfe971e);}catch(_0x1b22e1){process[_0x217966(0x23d)][_0x217966(0x27e)]('[github-app]\x20installation\x20token\x20mint\x20failed:\x20'+(_0x1b22e1 instanceof Error?_0x1b22e1[_0x217966(0x23c)]:String(_0x1b22e1))+'\x0a');}let _0x4cf85f=[],_0x31ac1d='';const _0x311f3a=[],_0x72bba0=[],_0x5edeb0=_0x321b42=>{const _0x421fe5=_0x217966;try{if(_0x321b42?.[_0x421fe5(0x1ce)]===_0x421fe5(0x299)){_0x311f3a[_0x421fe5(0x255)](_0x421fe5(0x223)+(typeof _0x321b42[_0x421fe5(0x2ad)]==='number'?_0x321b42[_0x421fe5(0x2ad)]:'?')+'\x20of\x20'+(typeof _0x321b42[_0x421fe5(0x1f4)]===_0x421fe5(0x1aa)?_0x321b42['max']:'?')+_0x421fe5(0x142));return;}if(_0x321b42?.[_0x421fe5(0x1ce)]==='message_end'){const _0x444f21=_0x321b42[_0x421fe5(0x23c)];if(_0x444f21?.['stopReason']===_0x421fe5(0x155)&&Array['isArray'](_0x444f21['content'])){const _0x318dd1=_0x444f21['content'][_0x421fe5(0x18f)](_0x405e4e=>!!_0x405e4e&&typeof _0x405e4e===_0x421fe5(0x20a)&&_0x405e4e[_0x421fe5(0x1ce)]==='text')['map'](_0x478739=>_0x478739[_0x421fe5(0x265)])[_0x421fe5(0x173)]('\x0a')['trim']();if(_0x318dd1)_0x311f3a[_0x421fe5(0x255)](_0x318dd1);}if(_0x444f21?.[_0x421fe5(0x22e)]===_0x421fe5(0x297)&&Array[_0x421fe5(0x14a)](_0x444f21[_0x421fe5(0x277)])){const _0x5190b2=_0x444f21[_0x421fe5(0x277)]['filter'](_0xd0ee30=>!!_0xd0ee30&&typeof _0xd0ee30==='object'&&_0xd0ee30[_0x421fe5(0x1ce)]===_0x421fe5(0x265))[_0x421fe5(0x29f)](_0x3d70e1=>_0x3d70e1['text'])[_0x421fe5(0x173)]('\x0a');_0x5190b2&&/fail|error|denied|not found|404|401|403|refus/i[_0x421fe5(0x1fb)](_0x5190b2)&&_0x72bba0['push'](_0x5190b2[_0x421fe5(0x16a)](0x0,0x12c));}}}catch{}};try{const _0x6be3ce=process.env.GITHUB_TOKEN;if(_0xf60c2a)process.env.GITHUB_TOKEN=_0xf60c2a;const _0x2b8ce8=(0x0,github_app_js_1[_0x217966(0x168)])(_0x37a6de);try{_0x4cf85f=await _0x231328[_0x217966(0x196)](_0x217966(0x17d)+_0xd8fee2['repoFullName']+(_0xd8fee2['isPullRequest']?'\x20(pull\x20request':_0x217966(0x18b))+'\x20#'+_0xd8fee2[_0x217966(0x194)]+_0x217966(0x228)+_0xd8fee2[_0x217966(0x2aa)]+'\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.'+(_0x2b8ce8?'\x0a\x0aContext\x20from\x20GitHub:\x0a'+_0x2b8ce8:''),_0x5edeb0);}finally{if(_0xf60c2a){if(_0x6be3ce===undefined)delete process.env.GITHUB_TOKEN;else process.env.GITHUB_TOKEN=_0x6be3ce;}}}catch(_0x53b24a){_0x31ac1d=_0x53b24a instanceof Error?_0x53b24a[_0x217966(0x23c)]:String(_0x53b24a);}const _0x5a1b5e=(0x0,github_app_js_1['selectJobReply'])(_0x4cf85f,_0x31ac1d,_0x311f3a);(0x0,github_jobs_js_1[_0x217966(0x157)])({'repo':_0xd8fee2[_0x217966(0x292)],'issue':_0xd8fee2[_0x217966(0x194)],'task':_0xd8fee2[_0x217966(0x2aa)],'messages':_0x4cf85f[_0x217966(0x1fc)],'replyHead':_0x5a1b5e,..._0x31ac1d?{'error':_0x31ac1d}:{}});const _0x13d3d=_0x4cf85f['map'](_0x49461a=>{const _0x386317=_0x217966,_0x2b699d=Array[_0x386317(0x14a)](_0x49461a['content'])?_0x49461a[_0x386317(0x277)][_0x386317(0x29f)](_0x33ad0c=>_0x33ad0c?.[_0x386317(0x1ce)]??'?')[_0x386317(0x173)]('+'):typeof _0x49461a[_0x386317(0x277)];return(_0x49461a[_0x386317(0x22e)]??'?')+'['+_0x2b699d+']';})[_0x217966(0x173)]('\x20');process['stdout']['write'](_0x217966(0x231)+_0xd8fee2[_0x217966(0x292)]+'#'+_0xd8fee2[_0x217966(0x194)]+_0x217966(0x2a7)+_0x4cf85f[_0x217966(0x1fc)]+_0x217966(0x1c9)+(_0x13d3d||'none')+(_0x31ac1d?_0x217966(0x24c)+_0x31ac1d[_0x217966(0x16a)](0x0,0xc8):'')+(_0x72bba0['length']>0x0?',\x20toolDiags:\x20'+_0x72bba0[_0x217966(0x173)](_0x217966(0x1cd))['slice'](0x0,0x258):'')+')\x0a');if(!_0x267543||!_0x4ae29c||!_0xfe971e||!_0xf60c2a)return process[_0x217966(0x23d)]['write'](_0x217966(0x1f2)+_0x5a1b5e+_0x217966(0x211)),_0x5a1b5e;const {owner:_0x481556,repo:_0x4a0094}=(0x0,github_app_js_1[_0x217966(0x287)])(_0xd8fee2['repoFullName']),_0x31918b=_0x5a1b5e['length']>0xea60?_0x5a1b5e[_0x217966(0x16a)](0x0,0xea60)+'\x0a\x0a…(truncated,\x20full\x20log\x20on\x20the\x20VPS)':_0x5a1b5e;return await(0x0,github_app_js_1[_0x217966(0x20d)])({'apiBase':_0x141a85,'token':_0xf60c2a},_0x481556,_0x4a0094,_0xd8fee2[_0x217966(0x194)],'##\x20Trayambak\x20result\x0a\x0a'+_0x31918b),process[_0x217966(0x23d)][_0x217966(0x27e)](_0x217966(0x231)+_0xd8fee2[_0x217966(0x292)]+'#'+_0xd8fee2['issueNumber']+_0x217966(0x1a2)),_0x5a1b5e;}
@@ -1 +1 @@
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
+ 'use strict';Object['defineProperty'](exports,'__esModule',{'value':!![]}),exports['INSTALL_PS1']=void 0x0,exports['INSTALL_PS1']='#\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';
@@ -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 _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
+ '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 _0x4c1e62=process.env.LICENSE_STORE_PATH??'./data/licenses.json',_0x1a8da5=process.env.LICENSE_USAGE_PATH??'./data/license-usage.jsonl';return{'file':_0x4c1e62,'usageFile':_0x1a8da5};}function atomicWriteJson(_0x458522,_0x458d5f){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(_0x458522),{'recursive':!![]});const _0x9b33f6=_0x458522+'.tmp-'+process['pid'];(0x0,node_fs_1['writeFileSync'])(_0x9b33f6,JSON['stringify'](_0x458d5f,null,0x2),{'encoding':'utf8','mode':0x180});try{(0x0,node_fs_1['chmodSync'])(_0x9b33f6,0x180);}catch{}(0x0,node_fs_1['renameSync'])(_0x9b33f6,_0x458522);}function loadStoreFile(_0x54de79){if(!(0x0,node_fs_1['existsSync'])(_0x54de79))return{};try{const _0x4ddeaa=JSON['parse']((0x0,node_fs_1['readFileSync'])(_0x54de79,'utf8'));if(_0x4ddeaa&&typeof _0x4ddeaa==='object'&&_0x4ddeaa['keys']&&typeof _0x4ddeaa['keys']==='object')return _0x4ddeaa['keys'];}catch{}return{};}const PENTEST_PLANS=new Set(['pentest','pro','enterprise']);function checkLicense(_0x113907,_0x4d3008,_0xac7c6,_0x52cbae){const _0x30ea8b=typeof _0x4d3008==='string'?_0x4d3008['trim']():'';if(!_0x30ea8b)return{'valid':![],'reason':'no\x20license\x20key\x20supplied'};const _0x25ebdb=(0x0,license_js_1['normalizeLicenseKey'])(_0x30ea8b);if(!_0x25ebdb)return{'valid':![],'reason':'malformed\x20key\x20(want\x2016\x20letters,\x201102-XXXX-XXXX-XXXX)'};const _0x2cb9ed=(0x0,license_js_1['verifyLicenseKey'])(_0x30ea8b,_0x52cbae);if(_0x2cb9ed['valid']!==!![])return{'valid':![],'reason':_0x2cb9ed['valid']===![]?_0x2cb9ed['reason']:'invalid\x20key'};const _0xb2a789=_0x113907[_0x2cb9ed['claims']['id']];if(!_0xb2a789||(0x0,license_js_1['normalizeLicenseKey'])(_0xb2a789['key'])!==_0x25ebdb)return{'valid':![],'reason':'unknown\x20license\x20(not\x20issued\x20by\x20SKT\x20—\x20register\x20it\x20via\x20/admin\x20first)'};if(_0x2cb9ed['claims']['exp']*0x3e8<=Date['now']())return{'valid':![],'reason':'expired\x20on\x20'+new Date(_0x2cb9ed['claims']['exp']*0x3e8)['toISOString']()['slice'](0x0,0xa)};if(_0xb2a789['revoked'])return{'valid':![],'reason':'license\x20revoked\x20—\x20contact\x20SKT\x20AI\x20LABS','record':_0xb2a789};const _0x35dc0b=typeof _0xac7c6==='string'?_0xac7c6['trim']():'';if(!_0x35dc0b)return{'valid':![],'reason':'no\x20machine\x20identity\x20supplied','record':_0xb2a789};if(!_0xb2a789['boundMachineId'])return{'valid':![],'reason':'not\x20activated\x20on\x20this\x20machine\x20—\x20run\x20/devmode\x20on\x20<key>\x20once\x20to\x20bind\x20it','record':_0xb2a789};if(_0xb2a789['boundMachineId']!==_0x35dc0b)return{'valid':![],'reason':'bound\x20to\x20another\x20machine\x20(1-machine\x20license)\x20—\x20ask\x20SKT\x20to\x20unbind\x20it','record':_0xb2a789};return{'valid':!![],'plan':_0x2cb9ed['claims']['plan'],'exp':_0x2cb9ed['claims']['exp'],'record':_0xb2a789};}function checkPentest(_0x5835a7,_0x39813d,_0x1ce6f2,_0x206c72){const _0x328ec4=checkLicense(_0x5835a7,_0x39813d,_0x1ce6f2,_0x206c72);if(_0x328ec4['valid']!==!![])return _0x328ec4;if(!_0x328ec4['plan']||!PENTEST_PLANS['has'](_0x328ec4['plan']))return{'valid':![],'plan':_0x328ec4['plan'],'exp':_0x328ec4['exp'],'reason':'plan\x20\x27'+(_0x328ec4['plan']??'unknown')+'\x27\x20does\x20not\x20cover\x20pentest\x20tools','record':_0x328ec4['record']};return _0x328ec4;}class LicenseStore{['keys'];['file'];['usageFile'];['secret'];constructor(_0x49ec53,_0x8cee38){const _0x1bdee9=defaultLicenseStorePaths();this['file']=_0x49ec53?.['file']??_0x1bdee9['file'],this['usageFile']=_0x49ec53?.['usageFile']??_0x1bdee9['usageFile'],this['secret']=_0x8cee38,this['keys']=loadStoreFile(this['file']);}['save'](){atomicWriteJson(this['file'],{'version':0x1,'keys':this['keys']});}['register'](_0x51a1ca,_0x347ba4,_0x36ea01){const _0x4e4847=(0x0,license_js_1['verifyLicenseKey'])(_0x51a1ca,this['secret']);if(_0x4e4847['valid']!==!![])throw new Error('cannot\x20register:\x20'+(_0x4e4847['valid']===![]?_0x4e4847['reason']:'invalid\x20key'));const _0x2cd591=this['keys'][_0x4e4847['claims']['id']],_0x3d2a40=(0x0,license_js_1['normalizeLicenseKey'])(_0x51a1ca);if(_0x2cd591&&(0x0,license_js_1['normalizeLicenseKey'])(_0x2cd591['key'])===_0x3d2a40)return _0x2cd591;const _0x2b3668={'id':_0x4e4847['claims']['id'],'key':_0x3d2a40['slice'](0x0,0x4)+'-'+_0x3d2a40['slice'](0x4,0x8)+'-'+_0x3d2a40['slice'](0x8,0xc)+'-'+_0x3d2a40['slice'](0xc,0x10),'plan':_0x4e4847['claims']['plan'],'exp':_0x4e4847['claims']['exp'],'customer':typeof _0x347ba4==='string'&&_0x347ba4['trim']()?_0x347ba4['trim']()['slice'](0x0,0x78):undefined,'revoked':![],'trial':_0x36ea01?.['trial']===!![]?!![]:undefined,'createdAt':new Date()['toISOString']()};return this['keys'][_0x2b3668['id']]=_0x2b3668,this['save'](),_0x2b3668;}['check'](_0xda3bba,_0x4cc066){return checkLicense(this['keys'],_0xda3bba,_0x4cc066,this['secret']);}checkPentestOnly(_0x4f0e71,_0x3fd644){return checkPentest(this['keys'],_0x4f0e71,_0x3fd644,this['secret']);}['activate'](_0x1e12e1,_0x2695cd){const _0x1b2b88=typeof _0x2695cd==='string'?_0x2695cd['trim']():'';if(!_0x1b2b88)return{'ok':![],'reason':'no\x20machine\x20identity\x20supplied'};const _0x9c3ded=this['check'](_0x1e12e1,_0x1b2b88);if(_0x9c3ded['valid']===!![])return{'ok':!![],'plan':_0x9c3ded['plan'],'exp':_0x9c3ded['exp'],'record':_0x9c3ded['record']};if(_0x9c3ded['record']&&!_0x9c3ded['record']['revoked']&&!_0x9c3ded['record']['boundMachineId']&&_0x9c3ded['reason']?.['startsWith']('not\x20activated'))return _0x9c3ded['record']['boundMachineId']=_0x1b2b88,_0x9c3ded['record']['lastSeenAt']=new Date()['toISOString'](),this['save'](),{'ok':!![],'plan':_0x9c3ded['record']['plan'],'exp':_0x9c3ded['record']['exp'],'record':_0x9c3ded['record']};return{'ok':![],'plan':_0x9c3ded['plan'],'exp':_0x9c3ded['exp'],'reason':_0x9c3ded['reason'],'record':_0x9c3ded['record']};}['revoke'](_0x54dbd7){const _0x3a2e40=this['find'](_0x54dbd7);if(!_0x3a2e40)return![];return _0x3a2e40['revoked']=!![],this['save'](),!![];}['unbind'](_0x4fafb4){const _0x1ad77c=this['find'](_0x4fafb4);if(!_0x1ad77c)return![];return delete _0x1ad77c['boundMachineId'],this['save'](),!![];}['touch'](_0x321e62){const _0x3ef7c9=this['keys'][_0x321e62];if(!_0x3ef7c9)return;_0x3ef7c9['lastSeenAt']=new Date()['toISOString'](),this['save']();}['activeTrialForMachine'](_0x245d32){const _0x51a9d9=Date['now']();return Object['values'](this['keys'])['find'](_0x2316f2=>_0x2316f2['trial']===!![]&&_0x2316f2['revoked']!==!![]&&_0x2316f2['exp']*0x3e8>_0x51a9d9&&_0x2316f2['boundMachineId']===_0x245d32);}['find'](_0x543ff8){const _0x291154=_0x543ff8['trim']();if(this['keys'][_0x291154])return this['keys'][_0x291154];const _0x48cb50=(0x0,license_js_1['normalizeLicenseKey'])(_0x291154);if(!_0x48cb50)return undefined;return Object['values'](this['keys'])['find'](_0x43fe4a=>(0x0,license_js_1['normalizeLicenseKey'])(_0x43fe4a['key'])===_0x48cb50);}['list'](){return Object['values'](this['keys'])['sort']((_0x5a1c7f,_0x31fd63)=>_0x5a1c7f['createdAt']<_0x31fd63['createdAt']?0x1:-0x1);}get['size'](){return Object['keys'](this['keys'])['length'];}['appendUsage'](_0x18a1fe){(0x0,node_fs_1['mkdirSync'])((0x0,node_path_1['dirname'])(this['usageFile']),{'recursive':!![]});const _0x58c998=JSON['stringify']({..._0x18a1fe,'ts':new Date()['toISOString']()})+'\x0a';try{(0x0,node_fs_1['appendFileSync'])(this['usageFile'],_0x58c998,'utf8');const _0x137298=(0x0,node_fs_1['statSync'])(this['usageFile'])['size'];if(_0x137298>0x200000){const _0x2fc5f8=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0x1a487b=>_0x1a487b['length']>0x0);(0x0,node_fs_1['writeFileSync'])(this['usageFile'],_0x2fc5f8['slice'](-0x1388)['join']('\x0a')+'\x0a','utf8');}}catch{}}['readUsageTail'](_0xe96ad5){const _0xc1487d=Math['min'](Math['max'](Math['floor'](_0xe96ad5),0x1),0x1f4);try{if(!(0x0,node_fs_1['existsSync'])(this['usageFile']))return[];const _0x5b3311=(0x0,node_fs_1['readFileSync'])(this['usageFile'],'utf8')['split']('\x0a')['filter'](_0x1a1b36=>_0x1a1b36['length']>0x0),_0x498234=[];for(const _0x30d057 of _0x5b3311['slice'](-_0xc1487d)){try{_0x498234['push'](JSON['parse'](_0x30d057));}catch{}}return _0x498234;}catch{return[];}}}exports['LicenseStore']=LicenseStore;
@@ -1 +1 @@
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
+ 'use strict';var __createBinding=this&&this['__createBinding']||(Object['create']?function(_0x1748aa,_0x3f3ec1,_0xce6974,_0x4a1b4a){if(_0x4a1b4a===undefined)_0x4a1b4a=_0xce6974;var _0x5341d2=Object['getOwnPropertyDescriptor'](_0x3f3ec1,_0xce6974);(!_0x5341d2||('get'in _0x5341d2?!_0x3f3ec1['__esModule']:_0x5341d2['writable']||_0x5341d2['configurable']))&&(_0x5341d2={'enumerable':!![],'get':function(){return _0x3f3ec1[_0xce6974];}}),Object['defineProperty'](_0x1748aa,_0x4a1b4a,_0x5341d2);}:function(_0x2d985f,_0x5ed1ab,_0x1f4d2d,_0x4c73dd){if(_0x4c73dd===undefined)_0x4c73dd=_0x1f4d2d;_0x2d985f[_0x4c73dd]=_0x5ed1ab[_0x1f4d2d];}),__setModuleDefault=this&&this['__setModuleDefault']||(Object['create']?function(_0x1fb8b6,_0x4715a4){Object['defineProperty'](_0x1fb8b6,'default',{'enumerable':!![],'value':_0x4715a4});}:function(_0xe1a350,_0x4a47b5){_0xe1a350['default']=_0x4a47b5;}),__importStar=this&&this['__importStar']||(function(){var _0x550e82=function(_0x518f46){return _0x550e82=Object['getOwnPropertyNames']||function(_0x54b756){var _0x6b42ae=[];for(var _0x2e99e8 in _0x54b756)if(Object['prototype']['hasOwnProperty']['call'](_0x54b756,_0x2e99e8))_0x6b42ae[_0x6b42ae['length']]=_0x2e99e8;return _0x6b42ae;},_0x550e82(_0x518f46);};return function(_0x242284){if(_0x242284&&_0x242284['__esModule'])return _0x242284;var _0x37d7cf={};if(_0x242284!=null){for(var _0x4877a5=_0x550e82(_0x242284),_0xfc823f=0x0;_0xfc823f<_0x4877a5['length'];_0xfc823f++)if(_0x4877a5[_0xfc823f]!=='default')__createBinding(_0x37d7cf,_0x242284,_0x4877a5[_0xfc823f]);}return __setModuleDefault(_0x37d7cf,_0x242284),_0x37d7cf;};}()),__exportStar=this&&this['__exportStar']||function(_0x12a04b,_0x581774){for(var _0x198e36 in _0x12a04b)if(_0x198e36!=='default'&&!Object['prototype']['hasOwnProperty']['call'](_0x581774,_0x198e36))__createBinding(_0x581774,_0x12a04b,_0x198e36);};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'](_0x4a8620){this['messages']=_0x4a8620['slice']();}['clear'](){this['messages']=[];}}exports['InMemoryBackend']=InMemoryBackend;class FileBackend{['file'];['id'];constructor(_0x329738){this['file']=_0x329738,this['id']='file:'+_0x329738;}['load'](){if(!fs['existsSync'](this['file']))return[];try{return JSON['parse'](fs['readFileSync'](this['file'],'utf8'))['messages']??[];}catch{return[];}}['save'](_0x38219a){fs['mkdirSync'](path['dirname'](this['file']),{'recursive':!![]});const _0x21c0fb=this['file']+'.tmp-'+process['pid'];fs['writeFileSync'](_0x21c0fb,JSON['stringify']({'messages':_0x38219a},null,0x2),{'encoding':'utf8','mode':0x180});try{fs['chmodSync'](_0x21c0fb,0x180);}catch{}fs['renameSync'](_0x21c0fb,this['file']);try{fs['chmodSync'](this['file'],0x180);}catch{}}['clear'](){if(fs['existsSync'](this['file']))fs['unlinkSync'](this['file']);}}exports['FileBackend']=FileBackend;function createSessionBackend(_0x32662c){return _0x32662c?new FileBackend(_0x32662c):new InMemoryBackend();}__exportStar(require('./transcript.js'),exports);