diff --git a/STATS.md b/STATS.md index e35377db..aedfa87c 100644 --- a/STATS.md +++ b/STATS.md @@ -123,3 +123,5 @@ | 2025-10-27 | 589,999 (+5,590) | 526,001 (+4,822) | 1,116,000 (+10,412) | | 2025-10-28 | 595,776 (+5,777) | 532,438 (+6,437) | 1,128,214 (+12,214) | | 2025-10-29 | 606,259 (+10,483) | 542,064 (+9,626) | 1,148,323 (+20,109) | +| 2025-10-30 | 613,746 (+7,487) | 542,064 (+0) | 1,155,810 (+7,487) | +| 2025-10-30 | 617,846 (+4,100) | 555,026 (+12,962) | 1,172,872 (+17,062) | diff --git a/bun.lock b/bun.lock index b76d6b5e..dc3f6b62 100644 --- a/bun.lock +++ b/bun.lock @@ -37,7 +37,7 @@ }, "packages/console/core": { "name": "@opencode-ai/console-core", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@aws-sdk/client-sts": "3.782.0", "@jsx-email/render": "1.1.1", @@ -64,7 +64,7 @@ }, "packages/console/function": { "name": "@opencode-ai/console-function", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@ai-sdk/anthropic": "2.0.0", "@ai-sdk/openai": "2.0.2", @@ -88,7 +88,7 @@ }, "packages/console/mail": { "name": "@opencode-ai/console-mail", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@jsx-email/all": "2.2.3", "@jsx-email/cli": "1.4.3", @@ -109,7 +109,7 @@ }, "packages/desktop": { "name": "@opencode-ai/desktop", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@kobalte/core": "catalog:", "@opencode-ai/sdk": "workspace:*", @@ -150,7 +150,7 @@ }, "packages/function": { "name": "@opencode-ai/function", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@octokit/auth-app": "8.0.1", "@octokit/rest": "22.0.0", @@ -166,7 +166,7 @@ }, "packages/opencode": { "name": "opencode", - "version": "0.15.28", + "version": "0.15.29", "bin": { "opencode": "./bin/opencode", }, @@ -234,7 +234,7 @@ }, "packages/plugin": { "name": "@opencode-ai/plugin", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@opencode-ai/sdk": "workspace:*", "zod": "catalog:", @@ -254,7 +254,7 @@ }, "packages/sdk/js": { "name": "@opencode-ai/sdk", - "version": "0.15.28", + "version": "0.15.29", "devDependencies": { "@hey-api/openapi-ts": "0.81.0", "@tsconfig/node22": "catalog:", @@ -265,7 +265,7 @@ }, "packages/slack": { "name": "@opencode-ai/slack", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@opencode-ai/sdk": "workspace:*", "@slack/bolt": "^3.17.1", @@ -278,7 +278,7 @@ }, "packages/ui": { "name": "@opencode-ai/ui", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@kobalte/core": "catalog:", "@pierre/precision-diffs": "catalog:", @@ -301,7 +301,7 @@ }, "packages/web": { "name": "@opencode-ai/web", - "version": "0.15.28", + "version": "0.15.29", "dependencies": { "@astrojs/cloudflare": "12.6.3", "@astrojs/markdown-remark": "6.3.1", diff --git a/packages/console/app/package.json b/packages/console/app/package.json index 464f1279..ec70d7c4 100644 --- a/packages/console/app/package.json +++ b/packages/console/app/package.json @@ -7,7 +7,7 @@ "dev:remote": "VITE_AUTH_URL=https://auth.dev.opencode.ai bun sst shell --stage=dev bun dev", "build": "vinxi build && ../../opencode/script/schema.ts ./.output/public/config.json", "start": "vinxi start", - "version": "0.15.28" + "version": "0.15.29" }, "dependencies": { "@ibm/plex": "6.4.1", diff --git a/packages/console/app/src/routes/api/enterprise.ts b/packages/console/app/src/routes/api/enterprise.ts index d937be54..3dc00adb 100644 --- a/packages/console/app/src/routes/api/enterprise.ts +++ b/packages/console/app/src/routes/api/enterprise.ts @@ -25,19 +25,15 @@ export async function POST(event: APIEvent) { // Create email content const emailContent = ` -New Enterprise Inquiry - -Name: ${body.name} -Role: ${body.role} -Email: ${body.email} - -Message: -${body.message} - `.trim() +${body.message}

+-- +${body.name}
+${body.role}
+${body.email}`.trim() // Send email using AWS SES await AWS.sendEmail({ - to: "enterprise@opencode.ai", + to: "contact@anoma.ly", subject: `Enterprise Inquiry from ${body.name}`, body: emailContent, }) diff --git a/packages/console/app/src/routes/enterprise/index.tsx b/packages/console/app/src/routes/enterprise/index.tsx index 9599ad38..5bca6f38 100644 --- a/packages/console/app/src/routes/enterprise/index.tsx +++ b/packages/console/app/src/routes/enterprise/index.tsx @@ -1,6 +1,6 @@ import "./index.css" import { Title, Meta } from "@solidjs/meta" -import { createSignal } from "solid-js" +import { createSignal, Show } from "solid-js" import { Header } from "~/component/header" import { Footer } from "~/component/footer" import { Legal } from "~/component/legal" @@ -64,60 +64,96 @@ export default function Enterprise() {

Your code is yours

- OpenCode operates securely inside your organization with no data or context stored and no licensing restrictions or ownership claims. Start a trial with your team today, then scale confidently with enterprise-grade features including SSO, private registries, and self-hosting. -

-

- Let us know and how we can help. + OpenCode operates securely inside your organization with no data or context stored + and no licensing restrictions or ownership claims. Start a trial with your team + , then deploy it across your organization by integrating it with your SSO and internal AI gateway.

+

Let us know and how we can help.

+
- + + fill="currentColor" + /> -
- - Thanks to OpenCode, we found a way to create software to track all our assets — even the imaginary ones. - + Thanks to OpenCode, we found a way to create software to track all our assets — + even the imaginary ones.
- - - - - - - - - - + + + + + + + + + + -
-
+
@@ -130,7 +166,7 @@ export default function Enterprise() { type="text" required value={formData().name} - onInput={handleInputChange('name')} + onInput={handleInputChange("name")} placeholder="Jeff Bezos" />
@@ -142,7 +178,7 @@ export default function Enterprise() { type="text" required value={formData().role} - onInput={handleInputChange('role')} + onInput={handleInputChange("role")} placeholder="Executive Chairman" /> @@ -154,27 +190,25 @@ export default function Enterprise() { type="email" required value={formData().email} - onInput={handleInputChange('email')} + onInput={handleInputChange("email")} placeholder="jeff@amazon.com" />
- +