@amerged/ohmyhost-mcp 0.1.10

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 (72) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +4 -0
  3. package/README.md +11 -0
  4. package/THIRD_PARTY_NOTICES.md +474 -0
  5. package/dist/chunk-7MV2EVXV.js +30779 -0
  6. package/dist/index.js +9 -0
  7. package/dist/stdio-main.js +5607 -0
  8. package/package.json +32 -0
  9. package/src/apps/mcp/index.ts +30 -0
  10. package/src/apps/mcp/local-client.ts +891 -0
  11. package/src/apps/mcp/local-server.ts +1512 -0
  12. package/src/apps/mcp/stdio-main.ts +26 -0
  13. package/src/apps/product-cli/bin.ts +24 -0
  14. package/src/apps/product-cli/cli.ts +2271 -0
  15. package/src/apps/product-cli/command.ts +1811 -0
  16. package/src/apps/product-cli/composition.ts +823 -0
  17. package/src/apps/product-cli/credential-store.ts +149 -0
  18. package/src/apps/product-cli/device-token-expiry.ts +89 -0
  19. package/src/apps/product-cli/file-credential-store.ts +166 -0
  20. package/src/apps/product-cli/index.ts +23 -0
  21. package/src/apps/product-cli/product-api.ts +1082 -0
  22. package/src/apps/product-cli/project-link-store.ts +30 -0
  23. package/src/apps/product-cli/psql-session.ts +29 -0
  24. package/src/apps/product-cli/repository-init.ts +1622 -0
  25. package/src/apps/product-cli/runtime-contract.ts +1747 -0
  26. package/src/apps/product-cli/user-token-file.ts +214 -0
  27. package/src/apps/product-cli/workspace.ts +92 -0
  28. package/src/packages/agent-skills/generated-skill-resources.ts +147 -0
  29. package/src/packages/agent-skills/index.ts +37 -0
  30. package/src/packages/contracts/application-root.ts +80 -0
  31. package/src/packages/contracts/billing.ts +172 -0
  32. package/src/packages/contracts/credit-pricing.ts +214 -0
  33. package/src/packages/contracts/database-access.ts +257 -0
  34. package/src/packages/contracts/database-compute.ts +72 -0
  35. package/src/packages/contracts/database-migration-admission.ts +235 -0
  36. package/src/packages/contracts/feedback.ts +96 -0
  37. package/src/packages/contracts/framework-admission.ts +280 -0
  38. package/src/packages/contracts/framework-family.ts +18 -0
  39. package/src/packages/contracts/functions.ts +76 -0
  40. package/src/packages/contracts/index.ts +245 -0
  41. package/src/packages/contracts/operation-deployment-result.ts +165 -0
  42. package/src/packages/contracts/operation-failure.ts +150 -0
  43. package/src/packages/contracts/platform-origins.ts +5 -0
  44. package/src/packages/contracts/project-context.ts +59 -0
  45. package/src/packages/contracts/project-exports.ts +102 -0
  46. package/src/packages/contracts/user-api-keys.ts +98 -0
  47. package/src/packages/sdk-ts/generated/client/client.gen.ts +277 -0
  48. package/src/packages/sdk-ts/generated/client/index.ts +27 -0
  49. package/src/packages/sdk-ts/generated/client/types.gen.ts +217 -0
  50. package/src/packages/sdk-ts/generated/client/utils.gen.ts +316 -0
  51. package/src/packages/sdk-ts/generated/client.gen.ts +24 -0
  52. package/src/packages/sdk-ts/generated/core/auth.gen.ts +48 -0
  53. package/src/packages/sdk-ts/generated/core/bodySerializer.gen.ts +82 -0
  54. package/src/packages/sdk-ts/generated/core/params.gen.ts +178 -0
  55. package/src/packages/sdk-ts/generated/core/pathSerializer.gen.ts +171 -0
  56. package/src/packages/sdk-ts/generated/core/queryKeySerializer.gen.ts +117 -0
  57. package/src/packages/sdk-ts/generated/core/serverSentEvents.gen.ts +242 -0
  58. package/src/packages/sdk-ts/generated/core/types.gen.ts +114 -0
  59. package/src/packages/sdk-ts/generated/core/utils.gen.ts +140 -0
  60. package/src/packages/sdk-ts/generated/index.ts +578 -0
  61. package/src/packages/sdk-ts/generated/sdk.gen.ts +3440 -0
  62. package/src/packages/sdk-ts/generated/types.gen.ts +5790 -0
  63. package/src/packages/sdk-ts/index.ts +7 -0
  64. package/src/packages/workos-auth-contracts/device-flow.ts +271 -0
  65. package/src/packages/workos-auth-contracts/index.ts +8 -0
  66. package/src/packages/workos-auth-contracts/management-rpc.ts +379 -0
  67. package/src/packages/workos-auth-contracts/organizations.ts +113 -0
  68. package/src/packages/workos-auth-contracts/parsing.ts +75 -0
  69. package/src/packages/workos-auth-contracts/session-status.ts +53 -0
  70. package/src/packages/workos-auth-contracts/tokens.ts +216 -0
  71. package/src/packages/workos-auth-contracts/user-api-keys.ts +85 -0
  72. package/src/packages/workos-auth-contracts/webhooks.ts +127 -0
@@ -0,0 +1,30 @@
1
+ import { chmod, mkdir, rename, writeFile } from "node:fs/promises";
2
+ import { join } from "node:path";
3
+
4
+ export interface ProjectLinkMetadata {
5
+ readonly version: 1;
6
+ readonly api_origin: string;
7
+ readonly project_id: string;
8
+ readonly installation_id: string;
9
+ readonly repository_full_name: string;
10
+ readonly commit_sha?: string;
11
+ }
12
+
13
+ export interface ProjectLinkStore {
14
+ save(metadata: ProjectLinkMetadata): Promise<void>;
15
+ }
16
+
17
+ export class OwnerOnlyProjectLinkStore implements ProjectLinkStore {
18
+ public constructor(private readonly directory: string) {}
19
+
20
+ public async save(metadata: ProjectLinkMetadata): Promise<void> {
21
+ await mkdir(this.directory, { mode: 0o700, recursive: true });
22
+ await chmod(this.directory, 0o700);
23
+ const target = join(this.directory, "link.json");
24
+ const temporary = join(this.directory, `.link-${process.pid}.tmp`);
25
+ await writeFile(temporary, `${JSON.stringify(metadata)}\n`, { encoding: "utf8", mode: 0o600 });
26
+ await chmod(temporary, 0o600);
27
+ await rename(temporary, target);
28
+ await chmod(target, 0o600);
29
+ }
30
+ }
@@ -0,0 +1,29 @@
1
+ import { spawn } from "node:child_process";
2
+
3
+ import { PsqlUnavailableError } from "./cli.js";
4
+
5
+ /**
6
+ * Starts the customer's own psql against a temporary database credential.
7
+ * The password reaches psql only through its private environment, never through
8
+ * argv, the terminal title or any file; no authentication credential is involved.
9
+ */
10
+ export const runLocalPsql = (input: {
11
+ readonly host: string;
12
+ readonly user: string;
13
+ readonly password: string;
14
+ readonly database: string;
15
+ readonly signal: AbortSignal;
16
+ }): Promise<number> =>
17
+ new Promise<number>((resolve, reject) => {
18
+ const child = spawn("psql", ["-h", input.host, "-U", input.user, "-d", input.database], {
19
+ stdio: "inherit",
20
+ signal: input.signal,
21
+ env: { ...process.env, PGPASSWORD: input.password, PGSSLMODE: "require" },
22
+ });
23
+ child.once("error", (error: NodeJS.ErrnoException) => {
24
+ reject(error.code === "ENOENT" ? new PsqlUnavailableError() : error);
25
+ });
26
+ child.once("close", (code, signalName) => {
27
+ resolve(code ?? (signalName === null ? 1 : 130));
28
+ });
29
+ });