diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml
index 9350f114..e1014a7b 100644
--- a/.github/workflows/ci.yml
+++ b/.github/workflows/ci.yml
@@ -218,6 +218,7 @@ jobs:
uses: actions/setup-node@48b55a011bda9f5d6aeb4c2d9c7362e8dae4041e # v6.4.0
with:
node-version: '22'
+ token: ${{ secrets.GITEA_TOKEN }}
- if: needs.changes.outputs.canvas == 'true'
run: rm -f package-lock.json && npm install
- if: needs.changes.outputs.canvas == 'true'
diff --git a/.github/workflows/e2e-staging-canvas.yml b/.github/workflows/e2e-staging-canvas.yml
index 30a38e5f..737edfb8 100644
--- a/.github/workflows/e2e-staging-canvas.yml
+++ b/.github/workflows/e2e-staging-canvas.yml
@@ -124,6 +124,7 @@ jobs:
node-version: '20'
cache: 'npm'
cache-dependency-path: canvas/package-lock.json
+ token: ${{ secrets.GITEA_TOKEN }}
- name: Install canvas deps
if: needs.detect-changes.outputs.canvas == 'true'
diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md
index 601533f4..5e90e4d9 100644
--- a/CONTRIBUTING.md
+++ b/CONTRIBUTING.md
@@ -22,7 +22,7 @@ development workflow, conventions, and how to get your changes merged.
```bash
# Clone the repo
-git clone https://github.com/Molecule-AI/molecule-core.git
+git clone https://git.moleculesai.app/molecule-ai/molecule-core.git
cd molecule-core
# Install git hooks
@@ -57,7 +57,7 @@ See `CLAUDE.md` for a full list of environment variables and their purposes.
This repo is scoped to **code** (canvas, workspace, workspace-server, related
infra). Public content (blog posts, marketing copy, OG images, SEO briefs,
-DevRel demos) lives in [`Molecule-AI/docs`](https://github.com/Molecule-AI/docs).
+DevRel demos) lives in [`Molecule-AI/docs`](https://git.moleculesai.app/molecule-ai/docs).
The `Block forbidden paths` CI gate fails any PR that writes to `marketing/`
or other removed paths — open against `Molecule-AI/docs` instead.
@@ -110,7 +110,7 @@ causing a render loop when any node position changed.
1. **Repo-wide:** "Automatically delete head branches" is on. Once a PR merges, the branch is deleted server-side. Any subsequent `git push` to that branch fails with `remote rejected — no such branch`.
-2. **CI:** the `pr-guards` workflow (calling [molecule-ci `disable-auto-merge-on-push`](https://github.com/Molecule-AI/molecule-ci/blob/main/.github/workflows/disable-auto-merge-on-push.yml)) fires on every push to an open PR. If auto-merge was already enabled, it's disabled and a comment is posted. You must explicitly re-enable after verifying the new commit.
+2. **CI:** the `pr-guards` workflow (calling [molecule-ci `disable-auto-merge-on-push`](https://git.moleculesai.app/molecule-ai/molecule-ci/blob/main/.github/workflows/disable-auto-merge-on-push.yml)) fires on every push to an open PR. If auto-merge was already enabled, it's disabled and a comment is posted. You must explicitly re-enable after verifying the new commit.
**Workflow rules that follow from the guards:**
- Push **all** commits before running `gh pr merge --auto`.
@@ -180,9 +180,9 @@ and run CI manually.
Code in this repo lands in molecule-core. Some related runtime artifacts
live in their own repos:
-- [`Molecule-AI/molecule-ai-workspace-runtime`](https://github.com/Molecule-AI/molecule-ai-workspace-runtime) — Python adapter SDK (`molecule_runtime`) that runs inside containerized Molecule workspaces. Bridges Claude Code SDK / hermes / langgraph / etc. → A2A queue.
-- [`Molecule-AI/molecule-sdk-python`](https://github.com/Molecule-AI/molecule-sdk-python) — `A2AServer` + `RemoteAgentClient` for external agents that register over the public `/registry/register` flow.
-- [`Molecule-AI/molecule-mcp-claude-channel`](https://github.com/Molecule-AI/molecule-mcp-claude-channel) — Claude Code channel plugin. Bridges A2A traffic into a running Claude Code session via MCP `notifications/claude/channel`. Polling-based (no tunnel required); install with `claude --channels plugin:molecule@Molecule-AI/molecule-mcp-claude-channel`.
+- [`Molecule-AI/molecule-ai-workspace-runtime`](https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-runtime) — Python adapter SDK (`molecule_runtime`) that runs inside containerized Molecule workspaces. Bridges Claude Code SDK / hermes / langgraph / etc. → A2A queue.
+- [`Molecule-AI/molecule-sdk-python`](https://git.moleculesai.app/molecule-ai/molecule-sdk-python) — `A2AServer` + `RemoteAgentClient` for external agents that register over the public `/registry/register` flow.
+- [`Molecule-AI/molecule-mcp-claude-channel`](https://git.moleculesai.app/molecule-ai/molecule-mcp-claude-channel) — Claude Code channel plugin. Bridges A2A traffic into a running Claude Code session via MCP `notifications/claude/channel`. Polling-based (no tunnel required); install with `claude --channels plugin:molecule@Molecule-AI/molecule-mcp-claude-channel`.
When extending the **A2A surface** in molecule-core (`workspace-server/internal/handlers/a2a_proxy.go` etc.), consider whether the change has a downstream impact on the runtime SDK or the channel plugin — they're versioned independently but share the wire shape.
diff --git a/README.md b/README.md
index c054253d..4fde7b3d 100644
--- a/README.md
+++ b/README.md
@@ -39,8 +39,8 @@
Workspace Runtime
-[](https://railway.app/new/template?template=https://github.com/Molecule-AI/molecule-monorepo)
-[](https://render.com/deploy?repo=https://github.com/Molecule-AI/molecule-monorepo)
+[](https://railway.app/new/template?template=https://git.moleculesai.app/molecule-ai/molecule-core)
+[](https://render.com/deploy?repo=https://git.moleculesai.app/molecule-ai/molecule-core)
@@ -249,7 +249,7 @@ Workspace Runtime (Python image with adapters)
## Quick Start
```bash
-git clone https://github.com/Molecule-AI/molecule-monorepo.git
+git clone https://git.moleculesai.app/molecule-ai/molecule-core.git
cd molecule-monorepo
cp .env.example .env
diff --git a/README.zh-CN.md b/README.zh-CN.md
index 20df5685..52ca6fb3 100644
--- a/README.zh-CN.md
+++ b/README.zh-CN.md
@@ -38,8 +38,8 @@
Workspace Runtime
-[](https://railway.app/new/template?template=https://github.com/Molecule-AI/molecule-core)
-[](https://render.com/deploy?repo=https://github.com/Molecule-AI/molecule-core)
+[](https://railway.app/new/template?template=https://git.moleculesai.app/molecule-ai/molecule-core)
+[](https://render.com/deploy?repo=https://git.moleculesai.app/molecule-ai/molecule-core)
@@ -248,7 +248,7 @@ Workspace Runtime (Python image with adapters)
## 快速开始
```bash
-git clone https://github.com/Molecule-AI/molecule-core.git
+git clone https://git.moleculesai.app/molecule-ai/molecule-core.git
cd molecule-core
cp .env.example .env
diff --git a/canvas/package.json b/canvas/package.json
index b66efbf1..8944b14e 100644
--- a/canvas/package.json
+++ b/canvas/package.json
@@ -1,5 +1,5 @@
{
- "name": "molecule-monorepo-canvas",
+ "name": "molecule-core-canvas",
"version": "0.1.0",
"private": true,
"scripts": {
diff --git a/canvas/src/app/pricing/page.tsx b/canvas/src/app/pricing/page.tsx
index 3ef6f319..ff01a81a 100644
--- a/canvas/src/app/pricing/page.tsx
+++ b/canvas/src/app/pricing/page.tsx
@@ -41,7 +41,7 @@ export default function PricingPage() {
We publish the{" "}
full source on GitHub
diff --git a/docs/architecture/canary-release.md b/docs/architecture/canary-release.md
index d6873a8d..3977bfe6 100644
--- a/docs/architecture/canary-release.md
+++ b/docs/architecture/canary-release.md
@@ -4,7 +4,7 @@ How a workspace-server code change reaches the prod tenant fleet — and how to
> **⚠️ State note (2026-04-22):** this doc describes the **intended design**. As of this write, the canary fleet described below is **not actually running** — no canary tenants are provisioned, `CANARY_TENANT_URLS` / `CANARY_ADMIN_TOKENS` / `CANARY_CP_SHARED_SECRET` are empty in repo secrets, and `canary-verify.yml` fails every run.
>
-> Current merges gate on manual `promote-latest.yml` dispatches, not canary. See [molecule-controlplane/docs/canary-tenants.md](https://github.com/Molecule-AI/molecule-controlplane/blob/main/docs/canary-tenants.md) for the Phase 1 code work that's already shipped + the Phase 2 plan for actually standing up the fleet + a "should we even do this now?" decision framework.
+> Current merges gate on manual `promote-latest.yml` dispatches, not canary. See [molecule-controlplane/docs/canary-tenants.md](https://git.moleculesai.app/molecule-ai/molecule-controlplane/blob/main/docs/canary-tenants.md) for the Phase 1 code work that's already shipped + the Phase 2 plan for actually standing up the fleet + a "should we even do this now?" decision framework.
>
> **Account-specific identifiers (AWS account ID, IAM role name) referenced below in the original design have been redacted from this public doc.** The actual values — if they exist — are in `Molecule-AI/internal/runbooks/canary-fleet.md`. If you're implementing Phase 2, start there.
>
diff --git a/docs/architecture/molecule-technical-doc.md b/docs/architecture/molecule-technical-doc.md
index cd3dc957..da593599 100644
--- a/docs/architecture/molecule-technical-doc.md
+++ b/docs/architecture/molecule-technical-doc.md
@@ -1,7 +1,7 @@
# Molecule AI — Comprehensive Technical Documentation
> Definitive technical reference for the Molecule AI Agent Team platform.
-> Based on a full non-invasive scan of the [molecule-monorepo](https://github.com/Molecule-AI/molecule-monorepo) repository.
+> Based on a full non-invasive scan of the [molecule-monorepo](https://git.moleculesai.app/molecule-ai/molecule-core) repository.
---
@@ -1149,11 +1149,11 @@ Molecule AI's workspace abstraction is **runtime-agnostic by design**. A workspa
## Links
-- **GitHub**: https://github.com/Molecule-AI/molecule-monorepo
-- **Architecture Docs**: https://github.com/Molecule-AI/molecule-monorepo/tree/main/docs/architecture
-- **API Protocol**: https://github.com/Molecule-AI/molecule-monorepo/tree/main/docs/api-protocol
-- **Agent Runtime**: https://github.com/Molecule-AI/molecule-monorepo/tree/main/docs/agent-runtime
-- **Product Docs**: https://github.com/Molecule-AI/molecule-monorepo/tree/main/docs/product
+- **GitHub**: https://git.moleculesai.app/molecule-ai/molecule-core
+- **Architecture Docs**: https://git.moleculesai.app/molecule-ai/molecule-core/tree/main/docs/architecture
+- **API Protocol**: https://git.moleculesai.app/molecule-ai/molecule-core/tree/main/docs/api-protocol
+- **Agent Runtime**: https://git.moleculesai.app/molecule-ai/molecule-core/tree/main/docs/agent-runtime
+- **Product Docs**: https://git.moleculesai.app/molecule-ai/molecule-core/tree/main/docs/product
---
diff --git a/docs/architecture/secrets-key-custody.md b/docs/architecture/secrets-key-custody.md
index 75e9f9c4..b34ef8a5 100644
--- a/docs/architecture/secrets-key-custody.md
+++ b/docs/architecture/secrets-key-custody.md
@@ -79,7 +79,7 @@ For SOC2 / ISO 27001 / customer security questionnaires:
## Pointers
-- KMS envelope code: [`molecule-controlplane/internal/crypto/kms.go`](https://github.com/Molecule-AI/molecule-controlplane/blob/main/internal/crypto/kms.go)
-- Static-key fallback: [`molecule-controlplane/internal/crypto/aes.go`](https://github.com/Molecule-AI/molecule-controlplane/blob/main/internal/crypto/aes.go)
+- KMS envelope code: [`molecule-controlplane/internal/crypto/kms.go`](https://git.moleculesai.app/molecule-ai/molecule-controlplane/blob/main/internal/crypto/kms.go)
+- Static-key fallback: [`molecule-controlplane/internal/crypto/aes.go`](https://git.moleculesai.app/molecule-ai/molecule-controlplane/blob/main/internal/crypto/aes.go)
- Tenant secrets handler: [`workspace-server/internal/crypto/aes.go`](../../workspace-server/internal/crypto/aes.go)
- Tenant secrets schema: [database-schema.md](./database-schema.md#workspace_secrets)
diff --git a/docs/blog/2026-04-17-deploy-anywhere/index.md b/docs/blog/2026-04-17-deploy-anywhere/index.md
index 6279301d..6af51a4b 100644
--- a/docs/blog/2026-04-17-deploy-anywhere/index.md
+++ b/docs/blog/2026-04-17-deploy-anywhere/index.md
@@ -10,7 +10,7 @@ tags: [platform, fly.io, deployment, infrastructure]
Your infrastructure choice just got decoupled from your agent platform choice. Molecule AI now ships three production-ready workspace backends — `docker`, `flyio`, and `controlplane` — and switching between them takes a single environment variable. Your agent code, model choices, and workspace topology stay exactly the same.
-This post covers what shipped in [PR #501](https://github.com/Molecule-AI/molecule-core/pull/501) (Fly Machines provisioner) and [PR #503](https://github.com/Molecule-AI/molecule-core/pull/503) (control plane provisioner), and which backend fits your situation.
+This post covers what shipped in [PR #501](https://git.moleculesai.app/molecule-ai/molecule-core/pull/501) (Fly Machines provisioner) and [PR #503](https://git.moleculesai.app/molecule-ai/molecule-core/pull/503) (control plane provisioner), and which backend fits your situation.
## Before: One Deployment Model for Every Use Case
@@ -107,4 +107,4 @@ No changes to agent code, tool definitions, or orchestration logic. Swap `CONTAI
---
-*[PR #501](https://github.com/Molecule-AI/molecule-core/pull/501) (Fly Machines provisioner) and [PR #503](https://github.com/Molecule-AI/molecule-core/pull/503) (control plane provisioner) are both merged to `main`. Molecule AI is open source — contributions welcome.*
+*[PR #501](https://git.moleculesai.app/molecule-ai/molecule-core/pull/501) (Fly Machines provisioner) and [PR #503](https://git.moleculesai.app/molecule-ai/molecule-core/pull/503) (control plane provisioner) are both merged to `main`. Molecule AI is open source — contributions welcome.*
diff --git a/docs/blog/2026-04-20-chrome-devtools-mcp-seo/index.md b/docs/blog/2026-04-20-chrome-devtools-mcp-seo/index.md
index ccfa1d8b..cee7c7cc 100644
--- a/docs/blog/2026-04-20-chrome-devtools-mcp-seo/index.md
+++ b/docs/blog/2026-04-20-chrome-devtools-mcp-seo/index.md
@@ -299,8 +299,8 @@ Or use the Canvas UI: Workspace → Config → MCP Servers → Add browser MCP s
**Try it free** — Molecule AI is open source and self-hostable. Get a workspace running in under 5 minutes.
-→ [Get started on GitHub →](https://github.com/Molecule-AI/molecule-core)
+→ [Get started on GitHub →](https://git.moleculesai.app/molecule-ai/molecule-core)
---
-*Have a browser automation use case you want to see covered? Open a discussion on [GitHub Discussions](https://github.com/Molecule-AI/molecule-core/discussions) — or file an issue with the `enhancement` label.*
+*Have a browser automation use case you want to see covered? Open a discussion on [GitHub Discussions](https://git.moleculesai.app/molecule-ai/molecule-core/discussions) — or file an issue with the `enhancement` label.*
diff --git a/docs/blog/2026-04-20-remote-workspaces/index.md b/docs/blog/2026-04-20-remote-workspaces/index.md
index cbd9e787..db660050 100644
--- a/docs/blog/2026-04-20-remote-workspaces/index.md
+++ b/docs/blog/2026-04-20-remote-workspaces/index.md
@@ -148,7 +148,7 @@ Then follow the [quick-start guide](/docs/guides/remote-workspaces.md).
Or run the annotated example directly:
```bash
-git clone https://github.com/Molecule-AI/molecule-sdk-python
+git clone https://git.moleculesai.app/molecule-ai/molecule-sdk-python
cd molecule-sdk-python/examples/remote-agent
# Create workspace with runtime:external, grab the ID, then:
WORKSPACE_ID= PLATFORM_URL=https://acme.moleculesai.app python3 run.py
@@ -160,6 +160,6 @@ The agent appears on the canvas within seconds.
→ [Remote Workspaces Guide →](/docs/guides/remote-workspaces.md)
→ [External Agent Registration Reference →](/docs/guides/external-agent-registration.md)
-→ [molecule-sdk-python →](https://github.com/Molecule-AI/molecule-sdk-python)
+→ [molecule-sdk-python →](https://git.moleculesai.app/molecule-ai/molecule-sdk-python)
*Phase 30 shipped in PRs #1075–#1083 and #1085–#1100 on `molecule-core`.*
diff --git a/docs/blog/2026-04-20-secure-by-design/index.md b/docs/blog/2026-04-20-secure-by-design/index.md
index 3a56c20c..6372c8ed 100644
--- a/docs/blog/2026-04-20-secure-by-design/index.md
+++ b/docs/blog/2026-04-20-secure-by-design/index.md
@@ -27,7 +27,7 @@ The biggest user-facing change: every Molecule AI org can now mint named, revoca
→ [User guide: Organization API Keys](/docs/guides/org-api-keys.md)
→ [Architecture: Org API Keys](/docs/architecture/org-api-keys.md)
-→ PRs: [#1105](https://github.com/Molecule-AI/molecule-core/pull/1105), [#1107](https://github.com/Molecule-AI/molecule-core/pull/1107), [#1109](https://github.com/Molecule-AI/molecule-core/pull/1109), [#1110](https://github.com/Molecule-AI/molecule-core/pull/1110)
+→ PRs: [#1105](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1105), [#1107](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1107), [#1109](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1109), [#1110](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1110)
---
@@ -48,7 +48,7 @@ AdminAuth now accepts a session-verification tier that runs **before** the beare
**Self-hosted / local dev:** `CP_UPSTREAM_URL` is unset → this feature is disabled, behaviour is unchanged.
→ [Guide: Same-Origin Canvas Fetches & Session Auth](/docs/guides/same-origin-canvas-fetches.md)
-→ PRs: [#1099](https://github.com/Molecule-AI/molecule-core/pull/1099), [#1100](https://github.com/Molecule-AI/molecule-core/pull/1100)
+→ PRs: [#1099](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1099), [#1100](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1100)
---
@@ -87,7 +87,7 @@ The proxy is **fail-closed**: only an explicit allowlist of paths (`/cp/auth/`,
This is also the structural fix for the lateral-movement risk that session auth introduced: without the allowlist, a tenant-authed browser user could have proxied `/cp/admin/*` requests upstream and exploited the fact that those endpoints accept WorkOS session cookies. The allowlist makes that impossible by construction.
→ [Guide: Same-Origin Canvas Fetches & Session Auth](/docs/guides/same-origin-canvas-fetches.md)
-→ PR: [#1095](https://github.com/Molecule-AI/molecule-core/pull/1095)
+→ PR: [#1095](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1095)
---
@@ -99,7 +99,7 @@ The waitlist itself is a Canvas-administered list with email hashing in audit lo
This is the operational surface that makes the above security work matter: the beta is invitation-only, credentials are scoped, and every admin action is auditable.
-→ Control plane PRs [#145](https://github.com/Molecule-AI/molecule-controlplane/pull/145), [#148](https://github.com/Molecule-AI/molecule-controlplane/pull/148), [#150](https://github.com/Molecule-AI/molecule-controlplane/pull/150)
+→ Control plane PRs [#145](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/145), [#148](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/148), [#150](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/150)
---
diff --git a/docs/blog/2026-04-21-discord-adapter/index.md b/docs/blog/2026-04-21-discord-adapter/index.md
index 238df057..dbb38824 100644
--- a/docs/blog/2026-04-21-discord-adapter/index.md
+++ b/docs/blog/2026-04-21-discord-adapter/index.md
@@ -12,7 +12,7 @@ Your team is in Discord. Your AI agents are in Molecule AI. Until today, those t
That's now one webhook URL.
-Molecule AI workspaces can now connect to Discord. Here's what shipped in [PR #656](https://github.com/Molecule-AI/molecule-core/pull/656).
+Molecule AI workspaces can now connect to Discord. Here's what shipped in [PR #656](https://git.moleculesai.app/molecule-ai/molecule-core/pull/656).
---
@@ -70,7 +70,7 @@ For inbound slash commands, point your Discord app's **Interactions Endpoint URL
## Security: Webhook Tokens Don't Appear in Logs
-Webhook URLs contain a token (`/webhooks/{id}/{token}`). If that token leaks into server logs, it's a rotation event. The Discord adapter is explicit about this: HTTP request errors are logged without the URL, and the adapter returns a generic error message. This was hardened in [PR #659](https://github.com/Molecule-AI/molecule-core/pull/659).
+Webhook URLs contain a token (`/webhooks/{id}/{token}`). If that token leaks into server logs, it's a rotation event. The Discord adapter is explicit about this: HTTP request errors are logged without the URL, and the adapter returns a generic error message. This was hardened in [PR #659](https://git.moleculesai.app/molecule-ai/molecule-core/pull/659).
---
@@ -97,4 +97,4 @@ Documentation: [Social Channels guide](/docs/agent-runtime/social-channels#disco
---
-*Discord adapter shipped in [PR #656](https://github.com/Molecule-AI/molecule-core/pull/656). Security hardening in [PR #659](https://github.com/Molecule-AI/molecule-core/pull/659). Molecule AI is open source — contributions welcome.*
+*Discord adapter shipped in [PR #656](https://git.moleculesai.app/molecule-ai/molecule-core/pull/656). Security hardening in [PR #659](https://git.moleculesai.app/molecule-ai/molecule-core/pull/659). Molecule AI is open source — contributions welcome.*
diff --git a/docs/blog/2026-04-22-a2a-v1-agent-platform/index.md b/docs/blog/2026-04-22-a2a-v1-agent-platform/index.md
index 2e57780f..c77917cb 100644
--- a/docs/blog/2026-04-22-a2a-v1-agent-platform/index.md
+++ b/docs/blog/2026-04-22-a2a-v1-agent-platform/index.md
@@ -133,4 +133,4 @@ With protocol-native A2A, you get:
Molecule AI's external agent registration is production-ready. Documentation is live at [External Agent Registration Guide](https://docs.molecule.ai/docs/guides/external-agent-registration). The npm package for the MCP server is available at [`@molecule-ai/mcp-server`](https://www.npmjs.com/package/@molecule-ai/mcp-server).
-Read the full [A2A v1.0 protocol spec](https://github.com/Molecule-AI/molecule-core/blob/main/docs/api-protocol/a2a-protocol.md) on GitHub.
\ No newline at end of file
+Read the full [A2A v1.0 protocol spec](https://git.moleculesai.app/molecule-ai/molecule-core/blob/main/docs/api-protocol/a2a-protocol.md) on GitHub.
\ No newline at end of file
diff --git a/docs/blog/2026-04-22-remote-workspaces/index.md b/docs/blog/2026-04-22-remote-workspaces/index.md
index a8780ece..85b4d25b 100644
--- a/docs/blog/2026-04-22-remote-workspaces/index.md
+++ b/docs/blog/2026-04-22-remote-workspaces/index.md
@@ -45,7 +45,7 @@ canonicalUrl: "https://docs.molecule.ai/blog/remote-workspaces"
" proficiencyLevel": "Expert",
"genre": ["technical documentation", "product announcement"],
"sameAs": [
- "https://github.com/Molecule-AI/molecule-core",
+ "https://git.moleculesai.app/molecule-ai/molecule-core",
"https://molecule.ai"
]
}
@@ -270,7 +270,7 @@ Configure it in your project's `.mcp.json` and any AI agent (Claude Code, Cursor
→ [External Agent Registration Guide](/docs/guides/external-agent-registration) — full step-by-step with Python and Node.js reference implementations
-→ [GitHub: molecule-core](https://github.com/Molecule-AI/molecule-core) — source and issues
+→ [GitHub: molecule-core](https://git.moleculesai.app/molecule-ai/molecule-core) — source and issues
→ [Phase 30 Launch Thread on X](https://x.com) — follow for updates
diff --git a/docs/blog/a2a-v1-production-reference-2026-04-24.md b/docs/blog/a2a-v1-production-reference-2026-04-24.md
index 181c1335..c4306cca 100644
--- a/docs/blog/a2a-v1-production-reference-2026-04-24.md
+++ b/docs/blog/a2a-v1-production-reference-2026-04-24.md
@@ -170,4 +170,4 @@ The `staging` branch is now on `a2a-sdk` 1.0.0. The `main` branch still carries
If you're running `a2a-sdk` 0.3.x and planning the 1.0.0 migration, this post is the reference. The four breaking changes are well-contained, the migration is a single PR, and the eight smoke scenarios above will tell you whether the upgrade is clean before you merge.
-Questions? The [A2A protocol spec](https://github.com/google-a2a/a2a-specification) is the authoritative source. For Molecule AI's production A2A implementation, see [External Agent Registration](https://docs.molecule.ai/docs/guides/external-agent-registration) or open an issue in the [molecule-core](https://github.com/Molecule-AI/molecule-core) repo.
+Questions? The [A2A protocol spec](https://github.com/google-a2a/a2a-specification) is the authoritative source. For Molecule AI's production A2A implementation, see [External Agent Registration](https://docs.molecule.ai/docs/guides/external-agent-registration) or open an issue in the [molecule-core](https://git.moleculesai.app/molecule-ai/molecule-core) repo.
diff --git a/docs/engineering/postmortem-2026-04-23-boot-event-401.md b/docs/engineering/postmortem-2026-04-23-boot-event-401.md
index c9c3eed9..74c26f19 100644
--- a/docs/engineering/postmortem-2026-04-23-boot-event-401.md
+++ b/docs/engineering/postmortem-2026-04-23-boot-event-401.md
@@ -3,8 +3,8 @@
**Date:** 2026-04-23
**Severity:** High — every new SaaS tenant blocked
**Detection path:** E2E Staging SaaS run 24848425822 failed at "tenant provisioning"; investigation of CP Railway logs surfaced the auth mismatch.
-**Status:** Fix pushed on [molecule-controlplane#238](https://github.com/Molecule-AI/molecule-controlplane/pull/238).
-**Related:** [issue #239](https://github.com/Molecule-AI/molecule-controlplane/issues/239) (Cloudflare DNS record quota), [testing-strategy.md](../engineering/testing-strategy.md)
+**Status:** Fix pushed on [molecule-controlplane#238](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/238).
+**Related:** [issue #239](https://git.moleculesai.app/molecule-ai/molecule-controlplane/issues/239) (Cloudflare DNS record quota), [testing-strategy.md](../engineering/testing-strategy.md)
## Summary
@@ -35,7 +35,7 @@ The flow was:
### The commit that introduced the bug
-[molecule-controlplane#235](https://github.com/Molecule-AI/molecule-controlplane/pull/235) — "fix(provision): wait for tenant boot-event before falling back to canary". Merged 2026-04-22.
+[molecule-controlplane#235](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/235) — "fix(provision): wait for tenant boot-event before falling back to canary". Merged 2026-04-22.
Before #235, readiness was determined via a canary probe through Cloudflare's edge — which didn't need CP-side auth, so the INSERT ordering didn't matter. #235 made boot-events the primary readiness signal but didn't move the INSERT earlier. The race was latent before but became load-bearing after.
@@ -90,7 +90,7 @@ bootReady, _ := provisioner.WaitForTenantReady(ctx, h.db, org.ID, 4*time.Minute)
h.db.ExecContext(ctx, `UPDATE org_instances SET status = 'running' WHERE org_id = $1`, org.ID)
```
-See [molecule-controlplane#238](https://github.com/Molecule-AI/molecule-controlplane/pull/238) for the full diff.
+See [molecule-controlplane#238](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/238) for the full diff.
## Lessons
@@ -122,9 +122,9 @@ Early investigation blamed the hermes provider 401 bug (a separate, known issue
## Follow-ups
-- [ ] Land [molecule-controlplane#238](https://github.com/Molecule-AI/molecule-controlplane/pull/238)
+- [ ] Land [molecule-controlplane#238](https://git.moleculesai.app/molecule-ai/molecule-controlplane/pull/238)
- [ ] Redeploy staging-api, verify E2E goes green
- [ ] Add CP integration test suite (see lesson #2)
- [ ] Wire E2E failure → notification (see lesson #3)
- [ ] Add invariant comment in `provisionTenant` (see lesson #4)
-- [ ] Cloudflare DNS quota cleanup — [molecule-controlplane#239](https://github.com/Molecule-AI/molecule-controlplane/issues/239)
+- [ ] Cloudflare DNS quota cleanup — [molecule-controlplane#239](https://git.moleculesai.app/molecule-ai/molecule-controlplane/issues/239)
diff --git a/docs/engineering/pr-hygiene.md b/docs/engineering/pr-hygiene.md
index bdef0802..78a859e6 100644
--- a/docs/engineering/pr-hygiene.md
+++ b/docs/engineering/pr-hygiene.md
@@ -138,5 +138,5 @@ If you see any of these, don't try to "clean it up in place" — **cherry-pick o
## Related
-- [Issue #1822](https://github.com/Molecule-AI/molecule-core/issues/1822) — backend parity drift tracker (example of docs that have to stay current)
+- [Issue #1822](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1822) — backend parity drift tracker (example of docs that have to stay current)
- [Postmortem: CP boot-event 401](./postmortem-2026-04-23-boot-event-401.md) — caught before shipping because a reviewer could read the diff
diff --git a/docs/engineering/testing-strategy.md b/docs/engineering/testing-strategy.md
index 86c0d342..55fbee9d 100644
--- a/docs/engineering/testing-strategy.md
+++ b/docs/engineering/testing-strategy.md
@@ -103,9 +103,9 @@ A bad test:
## Related
-- [Issue #1821](https://github.com/Molecule-AI/molecule-core/issues/1821) — policy tracking issue
-- [Issue #1815](https://github.com/Molecule-AI/molecule-core/issues/1815) — Canvas coverage instrumentation
-- [Issue #1818](https://github.com/Molecule-AI/molecule-core/issues/1818) — Python pytest-cov
-- [Issue #1814](https://github.com/Molecule-AI/molecule-core/issues/1814) — workspace_provision_test.go unblock
-- [Issue #1816](https://github.com/Molecule-AI/molecule-core/issues/1816) — tokens.go coverage
-- [Issue #1819](https://github.com/Molecule-AI/molecule-core/issues/1819) — wsauth_middleware coverage
+- [Issue #1821](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1821) — policy tracking issue
+- [Issue #1815](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1815) — Canvas coverage instrumentation
+- [Issue #1818](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1818) — Python pytest-cov
+- [Issue #1814](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1814) — workspace_provision_test.go unblock
+- [Issue #1816](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1816) — tokens.go coverage
+- [Issue #1819](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1819) — wsauth_middleware coverage
diff --git a/docs/guides/external-workspace-quickstart.md b/docs/guides/external-workspace-quickstart.md
index 4f7f0aba..bda97fed 100644
--- a/docs/guides/external-workspace-quickstart.md
+++ b/docs/guides/external-workspace-quickstart.md
@@ -153,7 +153,7 @@ The `id` field is your workspace ID — remember it.
|---|---|
| "Failed to send message — agent may be unreachable" | The tenant couldn't POST to your URL. Verify `curl https:///health` returns 200 from another machine. |
| Response takes > 30s | Canvas times out around 30s. Keep initial implementations simple. For long-running work, return a placeholder and use [polling mode](#next-step-polling-mode-preview) (once available). |
-| Agent duplicated in chat | Known canvas bug where WebSocket + HTTP responses both render. Fixed in [PR #1517](https://github.com/Molecule-AI/molecule-core/pull/1517). |
+| Agent duplicated in chat | Known canvas bug where WebSocket + HTTP responses both render. Fixed in [PR #1517](https://git.moleculesai.app/molecule-ai/molecule-core/pull/1517). |
| Agent replies but canvas shows "Agent unreachable" | Check the tenant can reach your URL. Cloudflare quick tunnels rotate — the URL in your canvas may point at a dead tunnel after restart. |
| Getting 404 when POSTing to tenant | Add `X-Molecule-Org-Id` header. The tenant's security layer 404s unmatched origin requests by design. |
@@ -215,7 +215,7 @@ Push mode (this guide) works today but requires an inbound-reachable URL — whi
Your agent makes only outbound HTTPS calls to the platform, pulling messages from an inbox queue and posting replies back. Works behind any NAT/firewall, tolerates offline laptops, no tunnel needed.
-See the [design doc](https://github.com/Molecule-AI/internal/blob/main/product/external-workspaces-polling.md) (internal) and [implementation tracking issue](https://github.com/Molecule-AI/molecule-core/issues?q=polling+mode) once opened.
+See the [design doc](https://git.moleculesai.app/molecule-ai/internal/blob/main/product/external-workspaces-polling.md) (internal) and [implementation tracking issue](https://git.moleculesai.app/molecule-ai/molecule-core/issues?q=polling+mode) once opened.
---
@@ -255,7 +255,7 @@ If all four pass and canvas still shows your agent as unreachable, see the [remo
## Feedback
This is a new path. Tell us what broke:
-- Open an issue: https://github.com/Molecule-AI/molecule-core/issues/new?labels=external-workspace
+- Open an issue: https://git.moleculesai.app/molecule-ai/molecule-core/issues/new?labels=external-workspace
- Join #external-workspaces on our Slack
- Submit a PR improving this doc if something tripped you up — the faster we can make the quickstart, the more developers we bring in
diff --git a/docs/guides/remote-workspaces.md b/docs/guides/remote-workspaces.md
index 6fb45574..b808a497 100644
--- a/docs/guides/remote-workspaces.md
+++ b/docs/guides/remote-workspaces.md
@@ -143,5 +143,5 @@ The agent appears on the canvas with a **purple REMOTE badge** within seconds. F
## Next Steps
- **[External Agent Registration Guide →](/docs/guides/external-agent-registration)** — full endpoint reference, Python + Node.js examples, troubleshooting
-- **[molecule-sdk-python →](https://github.com/Molecule-AI/molecule-sdk-python)** — SDK source, `RemoteAgentClient` API docs
-- **[SDK Examples →](https://github.com/Molecule-AI/molecule-sdk-python/tree/main/examples/remote-agent)** — `run.py` demo script, annotated walkthrough
+- **[molecule-sdk-python →](https://git.moleculesai.app/molecule-ai/molecule-sdk-python)** — SDK source, `RemoteAgentClient` API docs
+- **[SDK Examples →](https://git.moleculesai.app/molecule-ai/molecule-sdk-python/tree/main/examples/remote-agent)** — `run.py` demo script, annotated walkthrough
diff --git a/docs/guides/skill-catalog.md b/docs/guides/skill-catalog.md
index 337becc2..94f5a53d 100644
--- a/docs/guides/skill-catalog.md
+++ b/docs/guides/skill-catalog.md
@@ -61,7 +61,7 @@ molecule skills install arxiv-research --from community
Community skills are reviewed by the Molecule AI team before being
listed. Submit a skill for review by opening a PR against
-[`molecule-ai/skills`](https://github.com/Molecule-AI/skills).
+[`molecule-ai/skills`](https://git.moleculesai.app/molecule-ai/skills).
## Installing via config.yaml
@@ -151,7 +151,7 @@ molecule skills bundle my-custom-skill --output ./org-templates/my-role/
```
**Publishing to the community:** Open a PR against
-[`molecule-ai/skills`](https://github.com/Molecule-AI/skills) with a
+[`molecule-ai/skills`](https://git.moleculesai.app/molecule-ai/skills) with a
complete skill package. Community skills are reviewed for security and
correctness before listing.
diff --git a/docs/integrations/opencode.md b/docs/integrations/opencode.md
index 4d69ef72..cd1d708f 100644
--- a/docs/integrations/opencode.md
+++ b/docs/integrations/opencode.md
@@ -64,7 +64,7 @@ When opencode connects to the Molecule MCP endpoint, the agent gains access to:
"tool": "delegate_task",
"arguments": {
"target": "research-lead",
- "task": "Summarise the last 7 days of commits in Molecule-AI/molecule-monorepo"
+ "task": "Summarise the last 7 days of commits in molecule-ai/molecule-core"
}
}
```
diff --git a/docs/integrations/runtime-native-mcp-status.md b/docs/integrations/runtime-native-mcp-status.md
index 7def119e..dfc6755b 100644
--- a/docs/integrations/runtime-native-mcp-status.md
+++ b/docs/integrations/runtime-native-mcp-status.md
@@ -99,10 +99,10 @@ fork needed in production.
`resolve_platform_id` for plugin-platform-safe deserialization, and
`self.adapters[adapter.platform]` keying fix (caught by real-subprocess
test before merge — see below).
-- **Plugin package**: [Molecule-AI/hermes-platform-molecule-a2a](https://github.com/Molecule-AI/hermes-platform-molecule-a2a)
+- **Plugin package**: [Molecule-AI/hermes-platform-molecule-a2a](https://git.moleculesai.app/molecule-ai/hermes-platform-molecule-a2a)
v0.1.0 — public, MIT-licensed. 11 unit tests + 8 in-process E2E
+ 4 real-subprocess E2E checkpoints all green.
-- **Workspace template patch**: [Molecule-AI/molecule-ai-workspace-template-hermes#32](https://github.com/Molecule-AI/molecule-ai-workspace-template-hermes/pull/32)
+- **Workspace template patch**: [Molecule-AI/molecule-ai-workspace-template-hermes#32](https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-hermes/pull/32)
— Dockerfile installs the patched fork + plugin into the hermes
installer's venv; start.sh seeds `platforms.molecule-a2a` config
stanza. Pre-demo deliberately install-only; adapter.py rewrite to
@@ -157,9 +157,9 @@ intermediate shim earns its complexity.
## Codex (OpenAI Codex CLI)
**Status:** Template SHIPPED. Repo live at
-[`Molecule-AI/molecule-ai-workspace-template-codex`](https://github.com/Molecule-AI/molecule-ai-workspace-template-codex)
+[`Molecule-AI/molecule-ai-workspace-template-codex`](https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-codex)
(14 files, 1411 LOC, 12/12 tests). molecule-core registration in
-[PR #2512](https://github.com/Molecule-AI/molecule-core/pull/2512).
+[PR #2512](https://git.moleculesai.app/molecule-ai/molecule-core/pull/2512).
E2E with real A2A traffic remains.
**Path:** Persistent `codex app-server` stdio JSON-RPC client
diff --git a/docs/internal-content-policy.md b/docs/internal-content-policy.md
index b0c5e165..a1c14b39 100644
--- a/docs/internal-content-policy.md
+++ b/docs/internal-content-policy.md
@@ -1,6 +1,6 @@
# Internal content policy
-The `Molecule-AI/molecule-monorepo` repo is **public**. Anything internal
+The `molecule-ai/molecule-core` repo is **public**. Anything internal
(positioning, competitive briefs, sales playbooks, PMM/press drip, draft
campaigns, raw research notes, ops runbooks, retrospectives) lives in
**`Molecule-AI/internal`**.
@@ -18,10 +18,10 @@ This page is the canonical decision tree.
| Draft campaign asset (still iterating, not yet customer-visible) | `Molecule-AI/internal/marketing/campaigns/` |
| Roadmap discussion, planning doc, retrospective | `Molecule-AI/internal/PLAN.md` or `Molecule-AI/internal/retrospectives/` |
| Runbook, ops procedure, incident postmortem | `Molecule-AI/internal/runbooks/` |
-| **Public-ready** blog post (final draft, ready to ship to docs site) | `Molecule-AI/molecule-monorepo/docs/blog/` |
-| **Public-ready** tutorial / quickstart | `Molecule-AI/molecule-monorepo/docs/tutorials/` |
-| Public DevRel content (code samples, demos for users) | `Molecule-AI/molecule-monorepo/docs/devrel/` |
-| API reference, architecture docs for external developers | `Molecule-AI/molecule-monorepo/docs/api/` |
+| **Public-ready** blog post (final draft, ready to ship to docs site) | `molecule-ai/molecule-core/docs/blog/` |
+| **Public-ready** tutorial / quickstart | `molecule-ai/molecule-core/docs/tutorials/` |
+| Public DevRel content (code samples, demos for users) | `molecule-ai/molecule-core/docs/devrel/` |
+| API reference, architecture docs for external developers | `molecule-ai/molecule-core/docs/api/` |
| Code, tests, infrastructure | wherever is appropriate inside this repo |
**Rule of thumb:** *"Would I be comfortable if a competitor / journalist / customer
diff --git a/docs/memory-plugins/CHANGELOG.md b/docs/memory-plugins/CHANGELOG.md
index a811620b..79051e20 100644
--- a/docs/memory-plugins/CHANGELOG.md
+++ b/docs/memory-plugins/CHANGELOG.md
@@ -101,7 +101,7 @@ incident-shaped.
## [v1.0.0] — initial release (RFC #2728, PRs #2729-#2742)
Initial plugin contract + 11-PR rollout. See
-[issue #2728](https://github.com/Molecule-AI/molecule-core/issues/2728)
+[issue #2728](https://git.moleculesai.app/molecule-ai/molecule-core/issues/2728)
for the full RFC.
Endpoints: `/v1/health`, `/v1/namespaces/{name}` (PUT/PATCH/DELETE),
diff --git a/docs/memory-plugins/testing-your-plugin.md b/docs/memory-plugins/testing-your-plugin.md
index 0b7df8e6..3273ff25 100644
--- a/docs/memory-plugins/testing-your-plugin.md
+++ b/docs/memory-plugins/testing-your-plugin.md
@@ -19,8 +19,8 @@ import (
"context"
"testing"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ mclient "github.com/go.moleculesai.app/core/platform/internal/memory/client"
+ "github.com/go.moleculesai.app/core/platform/internal/memory/contract"
)
func TestMyPlugin_FullRoundTrip(t *testing.T) {
diff --git a/docs/plugins/agentskills-compat.md b/docs/plugins/agentskills-compat.md
index 1cfff2ca..9f935c6a 100644
--- a/docs/plugins/agentskills-compat.md
+++ b/docs/plugins/agentskills-compat.md
@@ -160,11 +160,11 @@ not expose.
| `molecule-skill-update-docs` | `[claude_code]` | `[claude_code, hermes]` |
Companion PRs:
-- [molecule-ai-plugin-ecc#2](https://github.com/Molecule-AI/molecule-ai-plugin-ecc/pull/2)
-- [molecule-ai-plugin-superpowers#2](https://github.com/Molecule-AI/molecule-ai-plugin-superpowers/pull/2)
-- [molecule-ai-plugin-molecule-dev#2](https://github.com/Molecule-AI/molecule-ai-plugin-molecule-dev/pull/2)
-- [molecule-ai-plugin-molecule-skill-cron-learnings#2](https://github.com/Molecule-AI/molecule-ai-plugin-molecule-skill-cron-learnings/pull/2)
-- [molecule-ai-plugin-molecule-skill-update-docs#2](https://github.com/Molecule-AI/molecule-ai-plugin-molecule-skill-update-docs/pull/2)
+- [molecule-ai-plugin-ecc#2](https://git.moleculesai.app/molecule-ai/molecule-ai-plugin-ecc/pull/2)
+- [molecule-ai-plugin-superpowers#2](https://git.moleculesai.app/molecule-ai/molecule-ai-plugin-superpowers/pull/2)
+- [molecule-ai-plugin-molecule-dev#2](https://git.moleculesai.app/molecule-ai/molecule-ai-plugin-molecule-dev/pull/2)
+- [molecule-ai-plugin-molecule-skill-cron-learnings#2](https://git.moleculesai.app/molecule-ai/molecule-ai-plugin-molecule-skill-cron-learnings/pull/2)
+- [molecule-ai-plugin-molecule-skill-update-docs#2](https://git.moleculesai.app/molecule-ai/molecule-ai-plugin-molecule-skill-update-docs/pull/2)
Security note: Security Auditor was offline at time of change. Self-assessed
as non-security-impacting — adding `hermes` to a string list in `plugin.yaml`
diff --git a/docs/quickstart.md b/docs/quickstart.md
index 4f0f2ff7..45cc5ba7 100644
--- a/docs/quickstart.md
+++ b/docs/quickstart.md
@@ -17,7 +17,7 @@ This path is aligned to the current repository and current UI. It gets you from
## The one-command path
```bash
-git clone https://github.com/Molecule-AI/molecule-monorepo.git
+git clone https://git.moleculesai.app/molecule-ai/molecule-core.git
cd molecule-monorepo
./scripts/dev-start.sh
```
@@ -42,7 +42,7 @@ If you'd rather run each component yourself — useful when you're iterating on
### Step 1: Clone the repository
```bash
-git clone https://github.com/Molecule-AI/molecule-monorepo.git
+git clone https://git.moleculesai.app/molecule-ai/molecule-core.git
cd molecule-monorepo
```
diff --git a/docs/tutorials/chrome-devtools-mcp-quickstart.md b/docs/tutorials/chrome-devtools-mcp-quickstart.md
index 9703e64f..5aebd46f 100644
--- a/docs/tutorials/chrome-devtools-mcp-quickstart.md
+++ b/docs/tutorials/chrome-devtools-mcp-quickstart.md
@@ -198,7 +198,7 @@ Lighthouse audit against staging.yourapp.com:
FCP: 2.4s | LCP: 5.2s | CLS: 0.18 | TBT: 620ms
Performance regression detected — opening GitHub issue.
-Issue: https://github.com/Molecule-AI/molecule-core/issues/1527
+Issue: https://git.moleculesai.app/molecule-ai/molecule-core/issues/1527
Label: performance-regression | Assignees: @your-team
```
diff --git a/docs/tutorials/fly-machines-provisioner.md b/docs/tutorials/fly-machines-provisioner.md
index fa811b46..e711fa67 100644
--- a/docs/tutorials/fly-machines-provisioner.md
+++ b/docs/tutorials/fly-machines-provisioner.md
@@ -85,8 +85,8 @@ Fly Machines start in milliseconds and run in 35+ regions. Provisioning agent wo
## Related
-- PR #501: [feat(platform): Fly Machines provisioner](https://github.com/Molecule-AI/molecule-core/pull/501)
-- PR #481: [feat(ci): deploy to Fly after image push](https://github.com/Molecule-AI/molecule-core/pull/481)
+- PR #501: [feat(platform): Fly Machines provisioner](https://git.moleculesai.app/molecule-ai/molecule-core/pull/501)
+- PR #481: [feat(ci): deploy to Fly after image push](https://git.moleculesai.app/molecule-ai/molecule-core/pull/481)
- [Fly Machines API docs](https://fly.io/docs/machines/api/)
- [Platform API reference](../api-reference.md)
-- Issue [#525](https://github.com/Molecule-AI/molecule-core/issues/525)
+- Issue [#525](https://git.moleculesai.app/molecule-ai/molecule-core/issues/525)
diff --git a/docs/tutorials/gemini-cli-runtime.md b/docs/tutorials/gemini-cli-runtime.md
index d2802635..0c1331df 100644
--- a/docs/tutorials/gemini-cli-runtime.md
+++ b/docs/tutorials/gemini-cli-runtime.md
@@ -61,6 +61,6 @@ The real power surfaces when you mix runtimes on the same Molecule AI tenant. Yo
## Related
-- PR #379: [feat(adapters): add gemini-cli runtime adapter](https://github.com/Molecule-AI/molecule-core/pull/379)
+- PR #379: [feat(adapters): add gemini-cli runtime adapter](https://git.moleculesai.app/molecule-ai/molecule-core/pull/379)
- [Multi-provider Hermes docs](../architecture/hermes.md)
- [Workspace runtimes reference](../reference/runtimes.md)
diff --git a/docs/tutorials/google-adk-runtime.md b/docs/tutorials/google-adk-runtime.md
index 05c8589d..2d751019 100644
--- a/docs/tutorials/google-adk-runtime.md
+++ b/docs/tutorials/google-adk-runtime.md
@@ -68,7 +68,7 @@ ADK workspaces participate in the same A2A network as Claude Code, Gemini CLI, H
## Related
-- PR #550: [feat(adapters): add google-adk runtime adapter](https://github.com/Molecule-AI/molecule-core/pull/550)
+- PR #550: [feat(adapters): add google-adk runtime adapter](https://git.moleculesai.app/molecule-ai/molecule-core/pull/550)
- [Google ADK (adk-python)](https://github.com/google/adk-python)
- [Gemini CLI runtime tutorial](./gemini-cli-runtime.md)
- [Platform API reference](../api-reference.md)
diff --git a/docs/tutorials/hermes-multi-provider-dispatch.md b/docs/tutorials/hermes-multi-provider-dispatch.md
index bd30eb9b..a6b1f3a3 100644
--- a/docs/tutorials/hermes-multi-provider-dispatch.md
+++ b/docs/tutorials/hermes-multi-provider-dispatch.md
@@ -176,9 +176,9 @@ What is on the roadmap for Phase 2d (not yet shipped):
## Related
-- PR #240: [Phase 2a — native Anthropic dispatch](https://github.com/Molecule-AI/molecule-core/pull/240)
-- PR #255: [Phase 2b — native Gemini dispatch](https://github.com/Molecule-AI/molecule-core/pull/255)
-- PR #267: [Phase 2c — multi-turn history on all paths](https://github.com/Molecule-AI/molecule-core/pull/267)
+- PR #240: [Phase 2a — native Anthropic dispatch](https://git.moleculesai.app/molecule-ai/molecule-core/pull/240)
+- PR #255: [Phase 2b — native Gemini dispatch](https://git.moleculesai.app/molecule-ai/molecule-core/pull/255)
+- PR #267: [Phase 2c — multi-turn history on all paths](https://git.moleculesai.app/molecule-ai/molecule-core/pull/267)
- [Hermes adapter design](../adapters/hermes-adapter-design.md)
- [Platform API reference](../api-reference.md)
-- Issue [#513](https://github.com/Molecule-AI/molecule-core/issues/513)
+- Issue [#513](https://git.moleculesai.app/molecule-ai/molecule-core/issues/513)
diff --git a/docs/tutorials/lark-feishu-channel.md b/docs/tutorials/lark-feishu-channel.md
index fc70d826..4f05d896 100644
--- a/docs/tutorials/lark-feishu-channel.md
+++ b/docs/tutorials/lark-feishu-channel.md
@@ -90,6 +90,6 @@ Molecule AI canvas without code changes.
## Related
-- PR #480: [feat(channels): Lark / Feishu channel adapter](https://github.com/Molecule-AI/molecule-core/pull/480)
+- PR #480: [feat(channels): Lark / Feishu channel adapter](https://git.moleculesai.app/molecule-ai/molecule-core/pull/480)
- [Social channels architecture](../agent-runtime/social-channels.md)
- [Channel adapter reference](../api-reference.md#channels)
\ No newline at end of file
diff --git a/docs/workspace-runtime-package.md b/docs/workspace-runtime-package.md
index aec351bc..fa36e218 100644
--- a/docs/workspace-runtime-package.md
+++ b/docs/workspace-runtime-package.md
@@ -98,14 +98,14 @@ Each of the 8 adapter template repos contains:
| Adapter | Repo |
|---------|------|
-| claude-code | https://github.com/Molecule-AI/molecule-ai-workspace-template-claude-code |
-| langgraph | https://github.com/Molecule-AI/molecule-ai-workspace-template-langgraph |
-| crewai | https://github.com/Molecule-AI/molecule-ai-workspace-template-crewai |
-| autogen | https://github.com/Molecule-AI/molecule-ai-workspace-template-autogen |
-| deepagents | https://github.com/Molecule-AI/molecule-ai-workspace-template-deepagents |
-| hermes | https://github.com/Molecule-AI/molecule-ai-workspace-template-hermes |
-| gemini-cli | https://github.com/Molecule-AI/molecule-ai-workspace-template-gemini-cli |
-| openclaw | https://github.com/Molecule-AI/molecule-ai-workspace-template-openclaw |
+| claude-code | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-claude-code |
+| langgraph | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-langgraph |
+| crewai | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-crewai |
+| autogen | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-autogen |
+| deepagents | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-deepagents |
+| hermes | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-hermes |
+| gemini-cli | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-gemini-cli |
+| openclaw | https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-openclaw |
## Adapter discovery (ADAPTER_MODULE)
@@ -244,7 +244,7 @@ correctness before pushing a `runtime-v*` tag.
## Writing a new adapter
Use the GitHub template repo
-[`Molecule-AI/molecule-ai-workspace-template-starter`](https://github.com/Molecule-AI/molecule-ai-workspace-template-starter)
+[`Molecule-AI/molecule-ai-workspace-template-starter`](https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-starter)
— it ships with the canonical Dockerfile + adapter.py skeleton + config.yaml
schema + the `repository_dispatch: [runtime-published]` cascade receiver
already wired up. No follow-up setup PR required.
@@ -256,7 +256,7 @@ gh repo create Molecule-AI/molecule-ai-workspace-template- \
--public \
--description "Molecule AI workspace template: "
-git clone https://github.com/Molecule-AI/molecule-ai-workspace-template-
+git clone https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-
cd molecule-ai-workspace-template-
```
@@ -286,7 +286,7 @@ After `git push`:
If the canonical shape changes (e.g. `config.yaml` schema gets a new field,
the `BaseAdapter` interface adds a method, the reusable CI workflow
signature changes), update the
-[starter](https://github.com/Molecule-AI/molecule-ai-workspace-template-starter)
+[starter](https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-starter)
**first**. Existing templates can either migrate at their own pace or be
touched in a coordinated cleanup PR. Either way, future templates pick up
the new shape from day one.
diff --git a/scripts/README.md b/scripts/README.md
index 71c603f3..e4360c63 100644
--- a/scripts/README.md
+++ b/scripts/README.md
@@ -11,7 +11,7 @@ There are three related scripts; pick the right one:
|---|---|---|
| `measure-coordinator-task-bounds.sh` | **Canonical** v1 harness for the RFC #2251 / Issue 4 reproduction. Provisions a PM coordinator + Researcher child via `claude-code-default` + `langgraph` templates, sends a synthesis-heavy A2A kickoff, observes elapsed time + activity trace. | OSS-shape platform — localhost or any `/workspaces`-shaped endpoint. Has tenant/admin-token guards for non-localhost runs. |
| `measure-coordinator-task-bounds-runner.sh` | Generalised runner for the same measurement contract but with **arbitrary template + secret + model combinations** (Hermes/MiniMax, etc.). Useful for cross-runtime variants without modifying the canonical harness. | Same as above (local or SaaS via `MODE=saas`). |
-| `measure-coordinator-task-bounds.sh` (in [molecule-controlplane](https://github.com/Molecule-AI/molecule-controlplane)) | **Production-shape** variant that bootstraps a real staging tenant via `POST /cp/admin/orgs`, then runs the same measurement against `.staging.moleculesai.app`. | Staging controlplane only — refuses to run against production. |
+| `measure-coordinator-task-bounds.sh` (in [molecule-controlplane](https://git.moleculesai.app/molecule-ai/molecule-controlplane)) | **Production-shape** variant that bootstraps a real staging tenant via `POST /cp/admin/orgs`, then runs the same measurement against `.staging.moleculesai.app`. | Staging controlplane only — refuses to run against production. |
See `reference_harness_pair_pattern` (auto-memory) for when to use which
and the cross-repo design rationale.
diff --git a/tests/e2e/STAGING_SAAS_E2E.md b/tests/e2e/STAGING_SAAS_E2E.md
index dd4e3095..00ab166b 100644
--- a/tests/e2e/STAGING_SAAS_E2E.md
+++ b/tests/e2e/STAGING_SAAS_E2E.md
@@ -105,5 +105,5 @@ Hard per-workflow timeouts (15–40 min) cap runaway cost. Three teardown layers
## Known gaps (tracked elsewhere)
-- [#1369](https://github.com/Molecule-AI/molecule-core/issues/1369): SaaS canvas Files / Terminal / Peers tabs — architecturally broken; whitelisted in the spec
+- [#1369](https://git.moleculesai.app/molecule-ai/molecule-core/issues/1369): SaaS canvas Files / Terminal / Peers tabs — architecturally broken; whitelisted in the spec
- LLM-driven delegation (autonomous `delegate_task` tool use) — probabilistic, not in v1; proxy mechanics covered
diff --git a/tests/harness/cp-stub/go.mod b/tests/harness/cp-stub/go.mod
index 0a2902c8..077a78be 100644
--- a/tests/harness/cp-stub/go.mod
+++ b/tests/harness/cp-stub/go.mod
@@ -1,3 +1,3 @@
-module github.com/Molecule-AI/molecule-monorepo/tests/harness/cp-stub
+module go.moleculesai.app/core/tests/harness/cp-stub
go 1.25
diff --git a/workspace-server/Dockerfile b/workspace-server/Dockerfile
index 3209e78a..4d5961b4 100644
--- a/workspace-server/Dockerfile
+++ b/workspace-server/Dockerfile
@@ -23,7 +23,7 @@ COPY workspace-server/ .
# GIT_SHA mirror of Dockerfile.tenant — see that file for the rationale.
ARG GIT_SHA=dev
RUN CGO_ENABLED=0 GOOS=linux go build \
- -ldflags "-X github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
+ -ldflags "-X go.moleculesai.app/core/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
-o /platform ./cmd/server
# Bundle the built-in memory-plugin-postgres binary so an operator can
# activate Memory v2 by setting MEMORY_V2_CUTOVER=true + (default)
@@ -31,7 +31,7 @@ RUN CGO_ENABLED=0 GOOS=linux go build \
# binary in the background; main /platform talks to it over loopback.
# Stays inert until the operator flips the cutover env var.
RUN CGO_ENABLED=0 GOOS=linux go build \
- -ldflags "-X github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
+ -ldflags "-X go.moleculesai.app/core/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
-o /memory-plugin ./cmd/memory-plugin-postgres
FROM alpine:3.20
diff --git a/workspace-server/Dockerfile.tenant b/workspace-server/Dockerfile.tenant
index 5c9fda55..9160d3f3 100644
--- a/workspace-server/Dockerfile.tenant
+++ b/workspace-server/Dockerfile.tenant
@@ -53,14 +53,14 @@ COPY workspace-server/ .
# fails closed — which is the correct fail-direction (#2395 root fix).
ARG GIT_SHA=dev
RUN CGO_ENABLED=0 GOOS=linux go build \
- -ldflags "-X github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
+ -ldflags "-X go.moleculesai.app/core/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
-o /platform ./cmd/server
# Memory v2 sidecar binary (Memory v2 #2728). Bundled so an operator
# can activate cutover by flipping MEMORY_V2_CUTOVER=true without
# provisioning a separate service. See entrypoint-tenant.sh for the
# launch logic.
RUN CGO_ENABLED=0 GOOS=linux go build \
- -ldflags "-X github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
+ -ldflags "-X go.moleculesai.app/core/platform/internal/buildinfo.GitSHA=${GIT_SHA}" \
-o /memory-plugin ./cmd/memory-plugin-postgres
# ── Stage 2: Canvas Next.js standalone ────────────────────────────────
diff --git a/workspace-server/cmd/memory-backfill/main.go b/workspace-server/cmd/memory-backfill/main.go
index f01dc264..bb910c93 100644
--- a/workspace-server/cmd/memory-backfill/main.go
+++ b/workspace-server/cmd/memory-backfill/main.go
@@ -30,9 +30,9 @@ import (
_ "github.com/lib/pq"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
const defaultLimit = 1000000 // effectively unlimited; cap keeps SQL pageable
diff --git a/workspace-server/cmd/memory-backfill/main_test.go b/workspace-server/cmd/memory-backfill/main_test.go
index 667b3f5e..fab7dfb9 100644
--- a/workspace-server/cmd/memory-backfill/main_test.go
+++ b/workspace-server/cmd/memory-backfill/main_test.go
@@ -10,8 +10,8 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// stubBackfillPlugin records calls for assertions.
diff --git a/workspace-server/cmd/memory-backfill/verify.go b/workspace-server/cmd/memory-backfill/verify.go
index cf11435e..f61cf4a4 100644
--- a/workspace-server/cmd/memory-backfill/verify.go
+++ b/workspace-server/cmd/memory-backfill/verify.go
@@ -20,8 +20,8 @@ import (
"math/rand"
"os"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
// verifyConfig is the typed dependency bundle for verifyParity.
diff --git a/workspace-server/cmd/memory-backfill/verify_test.go b/workspace-server/cmd/memory-backfill/verify_test.go
index 1610da43..e049314e 100644
--- a/workspace-server/cmd/memory-backfill/verify_test.go
+++ b/workspace-server/cmd/memory-backfill/verify_test.go
@@ -9,7 +9,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// stubVerifyPlugin records search calls and returns canned results.
diff --git a/workspace-server/cmd/memory-plugin-postgres/boot_e2e_test.go b/workspace-server/cmd/memory-plugin-postgres/boot_e2e_test.go
index b8b76543..c4209d4f 100644
--- a/workspace-server/cmd/memory-plugin-postgres/boot_e2e_test.go
+++ b/workspace-server/cmd/memory-plugin-postgres/boot_e2e_test.go
@@ -45,8 +45,8 @@ import (
"testing"
"time"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
const (
diff --git a/workspace-server/cmd/memory-plugin-postgres/main.go b/workspace-server/cmd/memory-plugin-postgres/main.go
index 2a1b2dee..09c986ca 100644
--- a/workspace-server/cmd/memory-plugin-postgres/main.go
+++ b/workspace-server/cmd/memory-plugin-postgres/main.go
@@ -25,7 +25,7 @@ import (
_ "github.com/lib/pq"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/pgplugin"
+ "go.moleculesai.app/core/platform/internal/memory/pgplugin"
)
// migrationsFS bundles the .up.sql files into the binary at build time
diff --git a/workspace-server/cmd/server/main.go b/workspace-server/cmd/server/main.go
index 8b1db57e..03409d76 100644
--- a/workspace-server/cmd/server/main.go
+++ b/workspace-server/cmd/server/main.go
@@ -12,28 +12,28 @@ import (
"syscall"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/imagewatch"
- memwiring "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/wiring"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/router"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/scheduler"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/supervised"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/ws"
+ "go.moleculesai.app/core/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/imagewatch"
+ memwiring "go.moleculesai.app/core/platform/internal/memory/wiring"
+ "go.moleculesai.app/core/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/router"
+ "go.moleculesai.app/core/platform/internal/scheduler"
+ "go.moleculesai.app/core/platform/internal/supervised"
+ "go.moleculesai.app/core/platform/internal/ws"
// External plugins — each registers EnvMutator(s) that run at workspace
// provision time. Loaded via soft-dep gates in main() so self-hosters
// without per-agent identity configured keep working.
ghidentity "github.com/Molecule-AI/molecule-ai-plugin-gh-identity/pluginloader"
- "github.com/Molecule-AI/molecule-monorepo/platform/pkg/provisionhook"
+ "go.moleculesai.app/core/platform/pkg/provisionhook"
)
func main() {
diff --git a/workspace-server/go.mod b/workspace-server/go.mod
index 85a949fa..935d55b0 100644
--- a/workspace-server/go.mod
+++ b/workspace-server/go.mod
@@ -1,4 +1,4 @@
-module github.com/Molecule-AI/molecule-monorepo/platform
+module go.moleculesai.app/core/platform
go 1.25.0
diff --git a/workspace-server/internal/artifacts/client_test.go b/workspace-server/internal/artifacts/client_test.go
index 1be79525..4906085b 100644
--- a/workspace-server/internal/artifacts/client_test.go
+++ b/workspace-server/internal/artifacts/client_test.go
@@ -8,7 +8,7 @@ import (
"testing"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/artifacts"
+ "go.moleculesai.app/core/platform/internal/artifacts"
)
// cfEnvelope wraps a result value in the Cloudflare v4 response envelope.
@@ -250,7 +250,7 @@ func TestImportRepo_Success(t *testing.T) {
client := newTestClient(t, mux)
repo, err := client.ImportRepo(context.Background(), "imported", artifacts.ImportRepoRequest{
- URL: "https://github.com/Molecule-AI/molecule-core.git",
+ URL: "https://git.moleculesai.app/molecule-ai/molecule-core.git",
Branch: "main",
Depth: 1,
})
diff --git a/workspace-server/internal/buildinfo/buildinfo.go b/workspace-server/internal/buildinfo/buildinfo.go
index af92945a..db6233a2 100644
--- a/workspace-server/internal/buildinfo/buildinfo.go
+++ b/workspace-server/internal/buildinfo/buildinfo.go
@@ -2,7 +2,7 @@
//
// Set at link time:
//
-// go build -ldflags "-X github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo.GitSHA="
+// go build -ldflags "-X github.com/go.moleculesai.app/core/platform/internal/buildinfo.GitSHA="
//
// CI passes ${{ github.sha }} via Dockerfile.tenant ARG GIT_SHA; local
// dev builds default to "dev" so unset never reads as success.
diff --git a/workspace-server/internal/buildinfo/buildinfo_test.go b/workspace-server/internal/buildinfo/buildinfo_test.go
index a1582ba4..a418ba08 100644
--- a/workspace-server/internal/buildinfo/buildinfo_test.go
+++ b/workspace-server/internal/buildinfo/buildinfo_test.go
@@ -6,7 +6,7 @@ import (
"net/http/httptest"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo"
+ "go.moleculesai.app/core/platform/internal/buildinfo"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/bundle/exporter.go b/workspace-server/internal/bundle/exporter.go
index 9ecd2db4..fc1eeb53 100644
--- a/workspace-server/internal/bundle/exporter.go
+++ b/workspace-server/internal/bundle/exporter.go
@@ -11,8 +11,8 @@ import (
"path/filepath"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/client"
"github.com/docker/docker/pkg/stdcopy"
diff --git a/workspace-server/internal/bundle/importer.go b/workspace-server/internal/bundle/importer.go
index f61c7a98..983df2ab 100644
--- a/workspace-server/internal/bundle/importer.go
+++ b/workspace-server/internal/bundle/importer.go
@@ -5,10 +5,10 @@ import (
"fmt"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/channels/channels_test.go b/workspace-server/internal/channels/channels_test.go
index b57fad41..ae3e5261 100644
--- a/workspace-server/internal/channels/channels_test.go
+++ b/workspace-server/internal/channels/channels_test.go
@@ -6,7 +6,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
// ==================== Adapter Interface Tests ====================
diff --git a/workspace-server/internal/channels/manager.go b/workspace-server/internal/channels/manager.go
index 3085de35..d351827c 100644
--- a/workspace-server/internal/channels/manager.go
+++ b/workspace-server/internal/channels/manager.go
@@ -9,8 +9,8 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
)
const (
diff --git a/workspace-server/internal/channels/secret.go b/workspace-server/internal/channels/secret.go
index 836f33d1..2ffc69f2 100644
--- a/workspace-server/internal/channels/secret.go
+++ b/workspace-server/internal/channels/secret.go
@@ -29,7 +29,7 @@ import (
"encoding/base64"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/crypto"
)
// sensitiveFields is the set of channel_config keys that get encrypted at
diff --git a/workspace-server/internal/channels/secret_test.go b/workspace-server/internal/channels/secret_test.go
index eb33585e..acc31690 100644
--- a/workspace-server/internal/channels/secret_test.go
+++ b/workspace-server/internal/channels/secret_test.go
@@ -4,7 +4,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/crypto"
)
// withTestEncryptionKey installs a deterministic 32-byte key for the
diff --git a/workspace-server/internal/db/architecture_test.go b/workspace-server/internal/db/architecture_test.go
index d585db62..466b48a2 100644
--- a/workspace-server/internal/db/architecture_test.go
+++ b/workspace-server/internal/db/architecture_test.go
@@ -18,7 +18,7 @@ import (
"testing"
)
-const moduleInternalPrefix = "github.com/Molecule-AI/molecule-monorepo/platform/internal/"
+const moduleInternalPrefix = "go.moleculesai.app/core/platform/internal/"
func TestDBHasNoInternalDependencies(t *testing.T) {
t.Parallel()
diff --git a/workspace-server/internal/events/broadcaster.go b/workspace-server/internal/events/broadcaster.go
index 53427010..024df850 100644
--- a/workspace-server/internal/events/broadcaster.go
+++ b/workspace-server/internal/events/broadcaster.go
@@ -7,9 +7,9 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/ws"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/ws"
"github.com/redis/go-redis/v9"
)
diff --git a/workspace-server/internal/handlers/a2a_proxy.go b/workspace-server/internal/handlers/a2a_proxy.go
index 6143982e..95770a95 100644
--- a/workspace-server/internal/handlers/a2a_proxy.go
+++ b/workspace-server/internal/handlers/a2a_proxy.go
@@ -20,12 +20,12 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/a2a_proxy_helpers.go b/workspace-server/internal/handlers/a2a_proxy_helpers.go
index ded26ec5..d778f063 100644
--- a/workspace-server/internal/handlers/a2a_proxy_helpers.go
+++ b/workspace-server/internal/handlers/a2a_proxy_helpers.go
@@ -13,10 +13,10 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/a2a_proxy_preflight_test.go b/workspace-server/internal/handlers/a2a_proxy_preflight_test.go
index f9639162..0ba17724 100644
--- a/workspace-server/internal/handlers/a2a_proxy_preflight_test.go
+++ b/workspace-server/internal/handlers/a2a_proxy_preflight_test.go
@@ -9,8 +9,8 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// preflightLocalProv is a controllable LocalProvisionerAPI stub for the
diff --git a/workspace-server/internal/handlers/a2a_proxy_test.go b/workspace-server/internal/handlers/a2a_proxy_test.go
index ceab1b7c..7f1e6f70 100644
--- a/workspace-server/internal/handlers/a2a_proxy_test.go
+++ b/workspace-server/internal/handlers/a2a_proxy_test.go
@@ -16,8 +16,8 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/a2a_queue.go b/workspace-server/internal/handlers/a2a_queue.go
index a3e25a9c..5dcf79d0 100644
--- a/workspace-server/internal/handlers/a2a_queue.go
+++ b/workspace-server/internal/handlers/a2a_queue.go
@@ -20,9 +20,9 @@ import (
"net/http"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
// extractIdempotencyKey pulls params.message.messageId out of an A2A JSON-RPC
diff --git a/workspace-server/internal/handlers/a2a_queue_status.go b/workspace-server/internal/handlers/a2a_queue_status.go
index c9f22e3a..0fb5fbe5 100644
--- a/workspace-server/internal/handlers/a2a_queue_status.go
+++ b/workspace-server/internal/handlers/a2a_queue_status.go
@@ -42,8 +42,8 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/a2a_queue_test.go b/workspace-server/internal/handlers/a2a_queue_test.go
index 57000910..0eca1bb2 100644
--- a/workspace-server/internal/handlers/a2a_queue_test.go
+++ b/workspace-server/internal/handlers/a2a_queue_test.go
@@ -19,7 +19,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/alicebob/miniredis/v2"
)
diff --git a/workspace-server/internal/handlers/activity.go b/workspace-server/internal/handlers/activity.go
index cd1ef86d..4f70454d 100644
--- a/workspace-server/internal/handlers/activity.go
+++ b/workspace-server/internal/handlers/activity.go
@@ -12,8 +12,8 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/activity_test.go b/workspace-server/internal/handlers/activity_test.go
index b6b3c42e..cdad3377 100644
--- a/workspace-server/internal/handlers/activity_test.go
+++ b/workspace-server/internal/handlers/activity_test.go
@@ -14,7 +14,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/admin_delegations.go b/workspace-server/internal/handlers/admin_delegations.go
index b2165397..6ed7e78b 100644
--- a/workspace-server/internal/handlers/admin_delegations.go
+++ b/workspace-server/internal/handlers/admin_delegations.go
@@ -7,7 +7,7 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/admin_memories.go b/workspace-server/internal/handlers/admin_memories.go
index 15e66641..d65bd9e0 100644
--- a/workspace-server/internal/handlers/admin_memories.go
+++ b/workspace-server/internal/handlers/admin_memories.go
@@ -9,10 +9,10 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/db"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/admin_memories_cutover_test.go b/workspace-server/internal/handlers/admin_memories_cutover_test.go
index 36aa2409..329ba5f9 100644
--- a/workspace-server/internal/handlers/admin_memories_cutover_test.go
+++ b/workspace-server/internal/handlers/admin_memories_cutover_test.go
@@ -14,9 +14,9 @@ import (
"github.com/DATA-DOG/go-sqlmock"
"github.com/gin-gonic/gin"
- platformdb "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ platformdb "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// --- stubs ---
diff --git a/workspace-server/internal/handlers/admin_schedules_health.go b/workspace-server/internal/handlers/admin_schedules_health.go
index 9310edb4..073eb926 100644
--- a/workspace-server/internal/handlers/admin_schedules_health.go
+++ b/workspace-server/internal/handlers/admin_schedules_health.go
@@ -7,8 +7,8 @@ import (
"github.com/gin-gonic/gin"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/scheduler"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/scheduler"
)
// AdminSchedulesHealthHandler serves GET /admin/schedules/health — a cross-workspace
diff --git a/workspace-server/internal/handlers/admin_test_token.go b/workspace-server/internal/handlers/admin_test_token.go
index ea005688..addcee78 100644
--- a/workspace-server/internal/handlers/admin_test_token.go
+++ b/workspace-server/internal/handlers/admin_test_token.go
@@ -25,8 +25,8 @@ import (
"os"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/admin_test_token_test.go b/workspace-server/internal/handlers/admin_test_token_test.go
index 62d3f2b6..d3ccff64 100644
--- a/workspace-server/internal/handlers/admin_test_token_test.go
+++ b/workspace-server/internal/handlers/admin_test_token_test.go
@@ -8,8 +8,8 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/admin_workspace_images.go b/workspace-server/internal/handlers/admin_workspace_images.go
index 68bc50f1..5019f85b 100644
--- a/workspace-server/internal/handlers/admin_workspace_images.go
+++ b/workspace-server/internal/handlers/admin_workspace_images.go
@@ -18,7 +18,7 @@ import (
dockerclient "github.com/docker/docker/client"
"github.com/gin-gonic/gin"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// WorkspaceImageService is the production-side end of the runtime CD chain.
diff --git a/workspace-server/internal/handlers/agent.go b/workspace-server/internal/handlers/agent.go
index f98afd93..6b0720ee 100644
--- a/workspace-server/internal/handlers/agent.go
+++ b/workspace-server/internal/handlers/agent.go
@@ -5,8 +5,8 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/agent_message_writer.go b/workspace-server/internal/handlers/agent_message_writer.go
index 6efea603..c5797d28 100644
--- a/workspace-server/internal/handlers/agent_message_writer.go
+++ b/workspace-server/internal/handlers/agent_message_writer.go
@@ -43,8 +43,8 @@ import (
"fmt"
"log"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
// ErrWorkspaceNotFound is returned by AgentMessageWriter.Send when the
diff --git a/workspace-server/internal/handlers/agent_message_writer_test.go b/workspace-server/internal/handlers/agent_message_writer_test.go
index 20f5540f..fb11eff4 100644
--- a/workspace-server/internal/handlers/agent_message_writer_test.go
+++ b/workspace-server/internal/handlers/agent_message_writer_test.go
@@ -10,7 +10,7 @@ import (
"unicode/utf8"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
// AgentMessageWriter is the SSOT for agent → user chat delivery
diff --git a/workspace-server/internal/handlers/approvals.go b/workspace-server/internal/handlers/approvals.go
index 1f091afa..3fce3acf 100644
--- a/workspace-server/internal/handlers/approvals.go
+++ b/workspace-server/internal/handlers/approvals.go
@@ -5,8 +5,8 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/artifacts.go b/workspace-server/internal/handlers/artifacts.go
index 12463c7a..aeb75190 100644
--- a/workspace-server/internal/handlers/artifacts.go
+++ b/workspace-server/internal/handlers/artifacts.go
@@ -28,8 +28,8 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/artifacts"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/artifacts"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/artifacts_test.go b/workspace-server/internal/handlers/artifacts_test.go
index 283dea0b..52c31489 100644
--- a/workspace-server/internal/handlers/artifacts_test.go
+++ b/workspace-server/internal/handlers/artifacts_test.go
@@ -11,7 +11,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/artifacts"
+ "go.moleculesai.app/core/platform/internal/artifacts"
"github.com/gin-gonic/gin"
)
@@ -205,7 +205,7 @@ func TestArtifactsCreate_WithImportURL(t *testing.T) {
}
var body map[string]interface{}
json.NewDecoder(r.Body).Decode(&body)
- if body["url"] != "https://github.com/Molecule-AI/molecule-core.git" {
+ if body["url"] != "https://git.moleculesai.app/molecule-ai/molecule-core.git" {
http.Error(w, "unexpected url", http.StatusBadRequest)
return
}
@@ -238,7 +238,7 @@ func TestArtifactsCreate_WithImportURL(t *testing.T) {
w := httptest.NewRecorder()
c, _ := gin.CreateTestContext(w)
c.Params = gin.Params{{Key: "id", Value: "ws-import"}}
- body := `{"name":"imported-repo","description":"Imported from GitHub","import_url":"https://github.com/Molecule-AI/molecule-core.git","import_branch":"main","import_depth":1}`
+ body := `{"name":"imported-repo","description":"Imported from GitHub","import_url":"https://git.moleculesai.app/molecule-ai/molecule-core.git","import_branch":"main","import_depth":1}`
c.Request = httptest.NewRequest("POST", "/workspaces/ws-import/artifacts",
bytes.NewBufferString(body))
c.Request.Header.Set("Content-Type", "application/json")
diff --git a/workspace-server/internal/handlers/audit.go b/workspace-server/internal/handlers/audit.go
index 16f4392b..dc6ff045 100644
--- a/workspace-server/internal/handlers/audit.go
+++ b/workspace-server/internal/handlers/audit.go
@@ -55,7 +55,7 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
"golang.org/x/crypto/pbkdf2"
)
diff --git a/workspace-server/internal/handlers/budget.go b/workspace-server/internal/handlers/budget.go
index 1430ace0..cfa4e9c8 100644
--- a/workspace-server/internal/handlers/budget.go
+++ b/workspace-server/internal/handlers/budget.go
@@ -5,7 +5,7 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/bundle.go b/workspace-server/internal/handlers/bundle.go
index 0c080398..49729374 100644
--- a/workspace-server/internal/handlers/bundle.go
+++ b/workspace-server/internal/handlers/bundle.go
@@ -3,9 +3,9 @@ package handlers
import (
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/bundle"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/bundle"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/docker/docker/client"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/channels.go b/workspace-server/internal/handlers/channels.go
index 6d9008bf..2e258294 100644
--- a/workspace-server/internal/handlers/channels.go
+++ b/workspace-server/internal/handlers/channels.go
@@ -17,8 +17,8 @@ import (
"github.com/gin-gonic/gin"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/db"
)
// ChannelHandler manages workspace social channel integrations.
diff --git a/workspace-server/internal/handlers/channels_test.go b/workspace-server/internal/handlers/channels_test.go
index d05909ea..cd1e261b 100644
--- a/workspace-server/internal/handlers/channels_test.go
+++ b/workspace-server/internal/handlers/channels_test.go
@@ -14,7 +14,7 @@ import (
"testing"
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/channels"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/chat_files.go b/workspace-server/internal/handlers/chat_files.go
index 01efe27f..a86123a4 100644
--- a/workspace-server/internal/handlers/chat_files.go
+++ b/workspace-server/internal/handlers/chat_files.go
@@ -46,9 +46,9 @@ import (
"github.com/gin-gonic/gin"
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// ChatFilesHandler serves file upload + download for chat. Holds a
diff --git a/workspace-server/internal/handlers/chat_files_poll_test.go b/workspace-server/internal/handlers/chat_files_poll_test.go
index 8b3f9c3c..563e6bcc 100644
--- a/workspace-server/internal/handlers/chat_files_poll_test.go
+++ b/workspace-server/internal/handlers/chat_files_poll_test.go
@@ -24,7 +24,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// inMemStorage is a process-local pendinguploads.Storage for branch
diff --git a/workspace-server/internal/handlers/chat_history.go b/workspace-server/internal/handlers/chat_history.go
index 12aff51d..d05ec705 100644
--- a/workspace-server/internal/handlers/chat_history.go
+++ b/workspace-server/internal/handlers/chat_history.go
@@ -22,7 +22,7 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/messagestore"
+ "go.moleculesai.app/core/platform/internal/messagestore"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/chat_history_test.go b/workspace-server/internal/handlers/chat_history_test.go
index cd3aa270..94424c66 100644
--- a/workspace-server/internal/handlers/chat_history_test.go
+++ b/workspace-server/internal/handlers/chat_history_test.go
@@ -22,7 +22,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/messagestore"
+ "go.moleculesai.app/core/platform/internal/messagestore"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/checkpoints_integration_test.go b/workspace-server/internal/handlers/checkpoints_integration_test.go
index 40d9cdc9..3afd5baa 100644
--- a/workspace-server/internal/handlers/checkpoints_integration_test.go
+++ b/workspace-server/internal/handlers/checkpoints_integration_test.go
@@ -19,7 +19,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/middleware"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/checkpoints_test.go b/workspace-server/internal/handlers/checkpoints_test.go
index 3e22ac04..b050f17a 100644
--- a/workspace-server/internal/handlers/checkpoints_test.go
+++ b/workspace-server/internal/handlers/checkpoints_test.go
@@ -9,7 +9,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/config.go b/workspace-server/internal/handlers/config.go
index fa83b98b..6c77970a 100644
--- a/workspace-server/internal/handlers/config.go
+++ b/workspace-server/internal/handlers/config.go
@@ -7,7 +7,7 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/container_files.go b/workspace-server/internal/handlers/container_files.go
index 290bd5f7..7cf5d38e 100644
--- a/workspace-server/internal/handlers/container_files.go
+++ b/workspace-server/internal/handlers/container_files.go
@@ -9,8 +9,8 @@ import (
"path/filepath"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/pkg/stdcopy"
)
diff --git a/workspace-server/internal/handlers/delegation.go b/workspace-server/internal/handlers/delegation.go
index 1bda2c63..799c5cb2 100644
--- a/workspace-server/internal/handlers/delegation.go
+++ b/workspace-server/internal/handlers/delegation.go
@@ -8,9 +8,9 @@ import (
"os"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/textutil"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/delegation_ledger.go b/workspace-server/internal/handlers/delegation_ledger.go
index 89ee2d80..dcd5bbe6 100644
--- a/workspace-server/internal/handlers/delegation_ledger.go
+++ b/workspace-server/internal/handlers/delegation_ledger.go
@@ -7,8 +7,8 @@ import (
"log"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
// delegation_ledger.go — durable per-task ledger for A2A delegation
diff --git a/workspace-server/internal/handlers/delegation_ledger_integration_test.go b/workspace-server/internal/handlers/delegation_ledger_integration_test.go
index 78c0a874..43e59d10 100644
--- a/workspace-server/internal/handlers/delegation_ledger_integration_test.go
+++ b/workspace-server/internal/handlers/delegation_ledger_integration_test.go
@@ -40,7 +40,7 @@ import (
"strings"
"testing"
- mdb "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ mdb "go.moleculesai.app/core/platform/internal/db"
_ "github.com/lib/pq"
)
diff --git a/workspace-server/internal/handlers/delegation_sweeper.go b/workspace-server/internal/handlers/delegation_sweeper.go
index 8ac673c4..e21b668c 100644
--- a/workspace-server/internal/handlers/delegation_sweeper.go
+++ b/workspace-server/internal/handlers/delegation_sweeper.go
@@ -8,7 +8,7 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
// delegation_sweeper.go — RFC #2829 PR-3: stuck-task sweeper.
diff --git a/workspace-server/internal/handlers/discovery.go b/workspace-server/internal/handlers/discovery.go
index 79315016..97703fd4 100644
--- a/workspace-server/internal/handlers/discovery.go
+++ b/workspace-server/internal/handlers/discovery.go
@@ -9,11 +9,11 @@ import (
"net/http"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/events.go b/workspace-server/internal/handlers/events.go
index d297026b..07e6ceb9 100644
--- a/workspace-server/internal/handlers/events.go
+++ b/workspace-server/internal/handlers/events.go
@@ -6,7 +6,7 @@ import (
"net/http"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/external_connection.go b/workspace-server/internal/handlers/external_connection.go
index 320e761e..1af8a7b9 100644
--- a/workspace-server/internal/handlers/external_connection.go
+++ b/workspace-server/internal/handlers/external_connection.go
@@ -121,7 +121,7 @@ curl -fsS -X POST "{{PLATFORM_URL}}/registry/register" \
// operators whose external agent IS a Claude Code session (laptop or
// remote dev VM); routes the workspace's A2A traffic into the running
// Claude Code session as conversation turns via MCP. The plugin source
-// lives at github.com/Molecule-AI/molecule-mcp-claude-channel — polling
+// lives at git.moleculesai.app/molecule-ai/molecule-mcp-claude-channel — polling
// based, no tunnel required (uses /workspaces/:id/activity?since_secs=,
// platform-side support shipped in #2300).
const externalChannelTemplate = `# Claude Code channel — bridges this workspace's A2A traffic into your
@@ -176,7 +176,7 @@ claude --dangerously-load-development-channels \
# add the plugin to allowedChannelPlugins in claude.ai admin settings.
#
# Multi-workspace: comma-separate IDs and tokens (same order). See
-# https://github.com/Molecule-AI/molecule-mcp-claude-channel for
+# https://git.moleculesai.app/molecule-ai/molecule-mcp-claude-channel for
# pairing flow, push-mode upgrade, and v0.2 roadmap.
# Need help?
@@ -258,7 +258,7 @@ claude mcp add molecule -s user -- env \
// externalPythonTemplate uses molecule-sdk-python's RemoteAgentClient +
// A2AServer (PR #13 in that repo). Until the SDK cuts a v0.y release
// to PyPI the snippet pins git+main.
-const externalPythonTemplate = `# pip install 'git+https://github.com/Molecule-AI/molecule-sdk-python.git@main'
+const externalPythonTemplate = `# pip install 'git+https://git.moleculesai.app/molecule-ai/molecule-sdk-python.git@main'
import asyncio
from molecule_agent import RemoteAgentClient, A2AServer
@@ -336,7 +336,7 @@ const externalHermesChannelTemplate = `# Hermes channel — bridges this workspa
#
# 1. Install the runtime + plugin:
pip install molecule-ai-workspace-runtime
-pip install 'git+https://github.com/Molecule-AI/hermes-channel-molecule.git'
+pip install 'git+https://git.moleculesai.app/molecule-ai/hermes-channel-molecule.git'
# 2. Export the workspace credentials:
export MOLECULE_WORKSPACE_ID={{WORKSPACE_ID}}
@@ -366,7 +366,7 @@ hermes gateway --replace
# by the plugin's molecule_runtime MCP subprocess).
#
# Source + issue tracker:
-# https://github.com/Molecule-AI/hermes-channel-molecule
+# https://git.moleculesai.app/molecule-ai/hermes-channel-molecule
# Need help?
# Documentation: https://doc.moleculesai.app/docs/guides/external-agent-registration
diff --git a/workspace-server/internal/handlers/external_rotate.go b/workspace-server/internal/handlers/external_rotate.go
index ce029958..ff0b0ed3 100644
--- a/workspace-server/internal/handlers/external_rotate.go
+++ b/workspace-server/internal/handlers/external_rotate.go
@@ -7,9 +7,9 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/github_token.go b/workspace-server/internal/handlers/github_token.go
index ce9492a9..d7f09451 100644
--- a/workspace-server/internal/handlers/github_token.go
+++ b/workspace-server/internal/handlers/github_token.go
@@ -51,7 +51,7 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/pkg/provisionhook"
+ "go.moleculesai.app/core/platform/pkg/provisionhook"
"github.com/gin-gonic/gin"
"github.com/golang-jwt/jwt/v5"
)
diff --git a/workspace-server/internal/handlers/github_token_test.go b/workspace-server/internal/handlers/github_token_test.go
index 01076c81..399830de 100644
--- a/workspace-server/internal/handlers/github_token_test.go
+++ b/workspace-server/internal/handlers/github_token_test.go
@@ -10,7 +10,7 @@ import (
"testing"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/pkg/provisionhook"
+ "go.moleculesai.app/core/platform/pkg/provisionhook"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/handlers_additional_test.go b/workspace-server/internal/handlers/handlers_additional_test.go
index c08d138f..fac42937 100644
--- a/workspace-server/internal/handlers/handlers_additional_test.go
+++ b/workspace-server/internal/handlers/handlers_additional_test.go
@@ -11,7 +11,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/handlers_test.go b/workspace-server/internal/handlers/handlers_test.go
index d57e5811..b3a31cec 100644
--- a/workspace-server/internal/handlers/handlers_test.go
+++ b/workspace-server/internal/handlers/handlers_test.go
@@ -12,11 +12,11 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/ws"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/ws"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/alicebob/miniredis/v2"
"github.com/gin-gonic/gin"
"github.com/redis/go-redis/v9"
diff --git a/workspace-server/internal/handlers/hibernation_test.go b/workspace-server/internal/handlers/hibernation_test.go
index 43ae6371..5ddf72c7 100644
--- a/workspace-server/internal/handlers/hibernation_test.go
+++ b/workspace-server/internal/handlers/hibernation_test.go
@@ -22,7 +22,7 @@ import (
"testing"
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/instructions.go b/workspace-server/internal/handlers/instructions.go
index 2e8e89ac..fd51c258 100644
--- a/workspace-server/internal/handlers/instructions.go
+++ b/workspace-server/internal/handlers/instructions.go
@@ -6,7 +6,7 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/mcp.go b/workspace-server/internal/handlers/mcp.go
index 44290487..b205188a 100644
--- a/workspace-server/internal/handlers/mcp.go
+++ b/workspace-server/internal/handlers/mcp.go
@@ -32,7 +32,7 @@ import (
"os"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/mcp_test.go b/workspace-server/internal/handlers/mcp_test.go
index 6ede0c2c..88bff0da 100644
--- a/workspace-server/internal/handlers/mcp_test.go
+++ b/workspace-server/internal/handlers/mcp_test.go
@@ -14,7 +14,7 @@ import (
"errors"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/mcp_tools.go b/workspace-server/internal/handlers/mcp_tools.go
index dfb93e48..913c2aca 100644
--- a/workspace-server/internal/handlers/mcp_tools.go
+++ b/workspace-server/internal/handlers/mcp_tools.go
@@ -20,9 +20,9 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/registry"
"github.com/google/uuid"
)
// ─────────────────────────────────────────────────────────────────────────────
diff --git a/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim.go b/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim.go
index 88cb7c33..ad96f470 100644
--- a/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim.go
+++ b/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim.go
@@ -28,7 +28,7 @@ import (
"fmt"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// scopeToWritableNamespace maps a legacy scope value to the namespace
diff --git a/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim_test.go b/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim_test.go
index dd62fe53..54d0ccbe 100644
--- a/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim_test.go
+++ b/workspace-server/internal/handlers/mcp_tools_memory_legacy_shim_test.go
@@ -10,8 +10,8 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// --- scopeToWritableNamespace ---
diff --git a/workspace-server/internal/handlers/mcp_tools_memory_v2.go b/workspace-server/internal/handlers/mcp_tools_memory_v2.go
index 00c99152..8888b9ed 100644
--- a/workspace-server/internal/handlers/mcp_tools_memory_v2.go
+++ b/workspace-server/internal/handlers/mcp_tools_memory_v2.go
@@ -31,9 +31,9 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// memoryV2Deps bundles the dependencies the v2 tools need. Lifted
diff --git a/workspace-server/internal/handlers/mcp_tools_memory_v2_test.go b/workspace-server/internal/handlers/mcp_tools_memory_v2_test.go
index f5731790..1d2f6625 100644
--- a/workspace-server/internal/handlers/mcp_tools_memory_v2_test.go
+++ b/workspace-server/internal/handlers/mcp_tools_memory_v2_test.go
@@ -12,9 +12,9 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// --- stubs ---
diff --git a/workspace-server/internal/handlers/memories.go b/workspace-server/internal/handlers/memories.go
index 137bab90..a38d1573 100644
--- a/workspace-server/internal/handlers/memories.go
+++ b/workspace-server/internal/handlers/memories.go
@@ -11,8 +11,8 @@ import (
"regexp"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/registry"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/memories_v2.go b/workspace-server/internal/handlers/memories_v2.go
index 007ab35c..97eb524e 100644
--- a/workspace-server/internal/handlers/memories_v2.go
+++ b/workspace-server/internal/handlers/memories_v2.go
@@ -28,9 +28,9 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/memories_v2_test.go b/workspace-server/internal/handlers/memories_v2_test.go
index c9a4b8bc..5229d65c 100644
--- a/workspace-server/internal/handlers/memories_v2_test.go
+++ b/workspace-server/internal/handlers/memories_v2_test.go
@@ -27,8 +27,8 @@ import (
"testing"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/memory.go b/workspace-server/internal/handlers/memory.go
index 8f945a26..b52bf546 100644
--- a/workspace-server/internal/handlers/memory.go
+++ b/workspace-server/internal/handlers/memory.go
@@ -7,7 +7,7 @@ import (
"net/http"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/mock_runtime.go b/workspace-server/internal/handlers/mock_runtime.go
index 9d4493d2..59c382e2 100644
--- a/workspace-server/internal/handlers/mock_runtime.go
+++ b/workspace-server/internal/handlers/mock_runtime.go
@@ -34,7 +34,7 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/native_status_mgmt_test.go b/workspace-server/internal/handlers/native_status_mgmt_test.go
index 3a91db9e..e1dc90b0 100644
--- a/workspace-server/internal/handlers/native_status_mgmt_test.go
+++ b/workspace-server/internal/handlers/native_status_mgmt_test.go
@@ -7,7 +7,7 @@ import (
"testing"
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/org.go b/workspace-server/internal/handlers/org.go
index 5f57b24c..06ad6840 100644
--- a/workspace-server/internal/handlers/org.go
+++ b/workspace-server/internal/handlers/org.go
@@ -14,10 +14,10 @@ import (
"strconv"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/gin-gonic/gin"
"gopkg.in/yaml.v3"
)
diff --git a/workspace-server/internal/handlers/org_import.go b/workspace-server/internal/handlers/org_import.go
index d67087ca..a1d19ef0 100644
--- a/workspace-server/internal/handlers/org_import.go
+++ b/workspace-server/internal/handlers/org_import.go
@@ -17,14 +17,14 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provlog"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/scheduler"
+ "go.moleculesai.app/core/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/provlog"
+ "go.moleculesai.app/core/platform/internal/scheduler"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/org_plugin_allowlist.go b/workspace-server/internal/handlers/org_plugin_allowlist.go
index 89dc69e6..01212404 100644
--- a/workspace-server/internal/handlers/org_plugin_allowlist.go
+++ b/workspace-server/internal/handlers/org_plugin_allowlist.go
@@ -8,8 +8,8 @@ import (
"net/http"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/orgtoken"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/orgtoken"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/org_test.go b/workspace-server/internal/handlers/org_test.go
index 19dbece9..7fb5761c 100644
--- a/workspace-server/internal/handlers/org_test.go
+++ b/workspace-server/internal/handlers/org_test.go
@@ -8,7 +8,7 @@ import (
"gopkg.in/yaml.v3"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/scheduler"
+ "go.moleculesai.app/core/platform/internal/scheduler"
)
func TestOrgDefaults_InitialPrompt_YAMLParsing(t *testing.T) {
diff --git a/workspace-server/internal/handlers/org_tokens.go b/workspace-server/internal/handlers/org_tokens.go
index 799f7f21..36c81d6f 100644
--- a/workspace-server/internal/handlers/org_tokens.go
+++ b/workspace-server/internal/handlers/org_tokens.go
@@ -4,8 +4,8 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/orgtoken"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/orgtoken"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/org_tokens_test.go b/workspace-server/internal/handlers/org_tokens_test.go
index b8f2c29d..1d45802f 100644
--- a/workspace-server/internal/handlers/org_tokens_test.go
+++ b/workspace-server/internal/handlers/org_tokens_test.go
@@ -11,7 +11,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/pending_uploads.go b/workspace-server/internal/handlers/pending_uploads.go
index aec1ca0f..db389c13 100644
--- a/workspace-server/internal/handlers/pending_uploads.go
+++ b/workspace-server/internal/handlers/pending_uploads.go
@@ -31,7 +31,7 @@ import (
"github.com/gin-gonic/gin"
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// PendingUploadsHandler serves the workspace-side fetch + ack endpoints.
diff --git a/workspace-server/internal/handlers/pending_uploads_integration_test.go b/workspace-server/internal/handlers/pending_uploads_integration_test.go
index f54f8df0..85175f6e 100644
--- a/workspace-server/internal/handlers/pending_uploads_integration_test.go
+++ b/workspace-server/internal/handlers/pending_uploads_integration_test.go
@@ -51,7 +51,7 @@ import (
"github.com/google/uuid"
_ "github.com/lib/pq"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// integrationDB_PendingUploads opens a connection from $INTEGRATION_DB_URL
diff --git a/workspace-server/internal/handlers/pending_uploads_test.go b/workspace-server/internal/handlers/pending_uploads_test.go
index 990dfc6d..49b63597 100644
--- a/workspace-server/internal/handlers/pending_uploads_test.go
+++ b/workspace-server/internal/handlers/pending_uploads_test.go
@@ -14,8 +14,8 @@ import (
"github.com/gin-gonic/gin"
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// fakeStorage is an in-memory pendinguploads.Storage. Lets handler
diff --git a/workspace-server/internal/handlers/plugins.go b/workspace-server/internal/handlers/plugins.go
index 4befcfe3..edefde63 100644
--- a/workspace-server/internal/handlers/plugins.go
+++ b/workspace-server/internal/handlers/plugins.go
@@ -9,8 +9,8 @@ import (
"path/filepath"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/plugins"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/plugins"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/client"
"github.com/docker/docker/pkg/stdcopy"
diff --git a/workspace-server/internal/handlers/plugins_install.go b/workspace-server/internal/handlers/plugins_install.go
index 1665a54e..eb7bc5ea 100644
--- a/workspace-server/internal/handlers/plugins_install.go
+++ b/workspace-server/internal/handlers/plugins_install.go
@@ -12,9 +12,9 @@ import (
"os"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/envx"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/envx"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/plugins_install_pipeline.go b/workspace-server/internal/handlers/plugins_install_pipeline.go
index 07fb428b..d2958ce7 100644
--- a/workspace-server/internal/handlers/plugins_install_pipeline.go
+++ b/workspace-server/internal/handlers/plugins_install_pipeline.go
@@ -17,8 +17,8 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/envx"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/plugins"
+ "go.moleculesai.app/core/platform/internal/envx"
+ "go.moleculesai.app/core/platform/internal/plugins"
"github.com/docker/docker/api/types/container"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/plugins_install_pipeline_test.go b/workspace-server/internal/handlers/plugins_install_pipeline_test.go
index 0618c219..5588b1bf 100644
--- a/workspace-server/internal/handlers/plugins_install_pipeline_test.go
+++ b/workspace-server/internal/handlers/plugins_install_pipeline_test.go
@@ -15,7 +15,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/plugins"
+ "go.moleculesai.app/core/platform/internal/plugins"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/provlog_emit_test.go b/workspace-server/internal/handlers/provlog_emit_test.go
index 6681c203..f8579d18 100644
--- a/workspace-server/internal/handlers/provlog_emit_test.go
+++ b/workspace-server/internal/handlers/provlog_emit_test.go
@@ -19,7 +19,7 @@ import (
"sync"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
)
// captureProvLog redirects the global logger to a buffer for the test
diff --git a/workspace-server/internal/handlers/registry.go b/workspace-server/internal/handlers/registry.go
index 84333985..6676665f 100644
--- a/workspace-server/internal/handlers/registry.go
+++ b/workspace-server/internal/handlers/registry.go
@@ -14,10 +14,10 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/registry_test.go b/workspace-server/internal/handlers/registry_test.go
index bd8e65d8..426c1ba4 100644
--- a/workspace-server/internal/handlers/registry_test.go
+++ b/workspace-server/internal/handlers/registry_test.go
@@ -10,7 +10,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/restart_context.go b/workspace-server/internal/handlers/restart_context.go
index 3ae2f41d..dc3d7941 100644
--- a/workspace-server/internal/handlers/restart_context.go
+++ b/workspace-server/internal/handlers/restart_context.go
@@ -17,7 +17,7 @@ import (
"sort"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/runtime_image_pin.go b/workspace-server/internal/handlers/runtime_image_pin.go
index 2cd90bd4..36b2cb7d 100644
--- a/workspace-server/internal/handlers/runtime_image_pin.go
+++ b/workspace-server/internal/handlers/runtime_image_pin.go
@@ -8,8 +8,8 @@ import (
"os"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// resolveRuntimeImage returns the digest-pinned image ref for a runtime when
diff --git a/workspace-server/internal/handlers/runtime_image_pin_test.go b/workspace-server/internal/handlers/runtime_image_pin_test.go
index b7589bc6..e5fcf2ef 100644
--- a/workspace-server/internal/handlers/runtime_image_pin_test.go
+++ b/workspace-server/internal/handlers/runtime_image_pin_test.go
@@ -6,7 +6,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
sqlmock "github.com/DATA-DOG/go-sqlmock"
)
diff --git a/workspace-server/internal/handlers/saas_default_tier_test.go b/workspace-server/internal/handlers/saas_default_tier_test.go
index c4d32a94..b5bb4a4f 100644
--- a/workspace-server/internal/handlers/saas_default_tier_test.go
+++ b/workspace-server/internal/handlers/saas_default_tier_test.go
@@ -4,7 +4,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// Tests for the SaaS-aware default-tier resolution introduced in #2901
diff --git a/workspace-server/internal/handlers/sanitize_filename_test.go b/workspace-server/internal/handlers/sanitize_filename_test.go
index 82a6d355..af6d400d 100644
--- a/workspace-server/internal/handlers/sanitize_filename_test.go
+++ b/workspace-server/internal/handlers/sanitize_filename_test.go
@@ -4,7 +4,7 @@ import (
"strings"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/handlers"
)
// SanitizeFilename mirrors workspace/internal_chat_uploads.py's
diff --git a/workspace-server/internal/handlers/schedules.go b/workspace-server/internal/handlers/schedules.go
index 3139a217..f5f3915c 100644
--- a/workspace-server/internal/handlers/schedules.go
+++ b/workspace-server/internal/handlers/schedules.go
@@ -10,9 +10,9 @@ import (
"github.com/gin-gonic/gin"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/scheduler"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/scheduler"
)
type ScheduleHandler struct{}
diff --git a/workspace-server/internal/handlers/secrets.go b/workspace-server/internal/handlers/secrets.go
index 43a8a0d7..15ef2c18 100644
--- a/workspace-server/internal/handlers/secrets.go
+++ b/workspace-server/internal/handlers/secrets.go
@@ -7,9 +7,9 @@ import (
"net/http"
"regexp"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/security_regression_685_686_687_688_test.go b/workspace-server/internal/handlers/security_regression_685_686_687_688_test.go
index aa35a517..f89486ee 100644
--- a/workspace-server/internal/handlers/security_regression_685_686_687_688_test.go
+++ b/workspace-server/internal/handlers/security_regression_685_686_687_688_test.go
@@ -22,7 +22,7 @@ import (
"testing"
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/middleware"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/socket.go b/workspace-server/internal/handlers/socket.go
index 6aa92ff2..d9b48881 100644
--- a/workspace-server/internal/handlers/socket.go
+++ b/workspace-server/internal/handlers/socket.go
@@ -6,10 +6,10 @@ import (
"os"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/metrics"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/ws"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/metrics"
+ "go.moleculesai.app/core/platform/internal/ws"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
"github.com/gorilla/websocket"
)
diff --git a/workspace-server/internal/handlers/sse.go b/workspace-server/internal/handlers/sse.go
index 5e578b15..c0a9574e 100644
--- a/workspace-server/internal/handlers/sse.go
+++ b/workspace-server/internal/handlers/sse.go
@@ -6,8 +6,8 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/template_import.go b/workspace-server/internal/handlers/template_import.go
index 7b16c17f..ccaeada7 100644
--- a/workspace-server/internal/handlers/template_import.go
+++ b/workspace-server/internal/handlers/template_import.go
@@ -8,8 +8,8 @@ import (
"path/filepath"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/templates.go b/workspace-server/internal/handlers/templates.go
index 2b3b66d6..038aa51b 100644
--- a/workspace-server/internal/handlers/templates.go
+++ b/workspace-server/internal/handlers/templates.go
@@ -10,8 +10,8 @@ import (
"strconv"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/docker/docker/client"
"github.com/gin-gonic/gin"
"gopkg.in/yaml.v3"
diff --git a/workspace-server/internal/handlers/terminal.go b/workspace-server/internal/handlers/terminal.go
index 434ae1f0..cc78b5c7 100644
--- a/workspace-server/internal/handlers/terminal.go
+++ b/workspace-server/internal/handlers/terminal.go
@@ -13,10 +13,10 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/registry"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/registry"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/docker/docker/api/types"
"github.com/docker/docker/api/types/container"
"github.com/docker/docker/client"
diff --git a/workspace-server/internal/handlers/terminal_diagnose.go b/workspace-server/internal/handlers/terminal_diagnose.go
index b78c8955..2df725ff 100644
--- a/workspace-server/internal/handlers/terminal_diagnose.go
+++ b/workspace-server/internal/handlers/terminal_diagnose.go
@@ -11,9 +11,9 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/testdata/derive-provider.sh b/workspace-server/internal/handlers/testdata/derive-provider.sh
index e82c0938..c4de00ee 100755
--- a/workspace-server/internal/handlers/testdata/derive-provider.sh
+++ b/workspace-server/internal/handlers/testdata/derive-provider.sh
@@ -2,7 +2,7 @@
# VENDORED COPY — DO NOT EDIT THIS FILE BY HAND.
#
# Source of truth:
-# github.com/Molecule-AI/molecule-ai-workspace-template-hermes
+# git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-hermes
# scripts/derive-provider.sh
#
# This snapshot is read by derive_provider_drift_test.go so the AST
diff --git a/workspace-server/internal/handlers/tokens.go b/workspace-server/internal/handlers/tokens.go
index e63eff29..470cb057 100644
--- a/workspace-server/internal/handlers/tokens.go
+++ b/workspace-server/internal/handlers/tokens.go
@@ -7,8 +7,8 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/tokens_sqlmock_test.go b/workspace-server/internal/handlers/tokens_sqlmock_test.go
index b0166293..de2c140c 100644
--- a/workspace-server/internal/handlers/tokens_sqlmock_test.go
+++ b/workspace-server/internal/handlers/tokens_sqlmock_test.go
@@ -35,7 +35,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/tokens_test.go b/workspace-server/internal/handlers/tokens_test.go
index 1b62e106..647580a3 100644
--- a/workspace-server/internal/handlers/tokens_test.go
+++ b/workspace-server/internal/handlers/tokens_test.go
@@ -8,8 +8,8 @@ import (
"net/http/httptest"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/transcript.go b/workspace-server/internal/handlers/transcript.go
index 4690f8d6..674b8efe 100644
--- a/workspace-server/internal/handlers/transcript.go
+++ b/workspace-server/internal/handlers/transcript.go
@@ -21,7 +21,7 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/viewport.go b/workspace-server/internal/handlers/viewport.go
index 6bbba394..d2737ea4 100644
--- a/workspace-server/internal/handlers/viewport.go
+++ b/workspace-server/internal/handlers/viewport.go
@@ -4,7 +4,7 @@ import (
"log"
"net/http"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/webhooks.go b/workspace-server/internal/handlers/webhooks.go
index 78173d36..9ed1994a 100644
--- a/workspace-server/internal/handlers/webhooks.go
+++ b/workspace-server/internal/handlers/webhooks.go
@@ -12,8 +12,8 @@ import (
"os"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/webhooks_test.go b/workspace-server/internal/handlers/webhooks_test.go
index 36e9dda4..74128b17 100644
--- a/workspace-server/internal/handlers/webhooks_test.go
+++ b/workspace-server/internal/handlers/webhooks_test.go
@@ -227,7 +227,7 @@ func TestGitHubWebhook_IssuesOpened_TriggersCrons(t *testing.T) {
"action": "opened",
"repository": {"full_name": "Molecule-AI/molecule-core"},
"sender": {"login": "alice"},
- "issue": {"number": 42, "title": "New feature request", "html_url": "https://github.com/Molecule-AI/molecule-core/issues/42"}
+ "issue": {"number": 42, "title": "New feature request", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/issues/42"}
}`)
// Expect the UPDATE that sets next_run_at = now() on pick-up-work schedules.
@@ -271,7 +271,7 @@ func TestGitHubWebhook_IssuesClosed_Ignored(t *testing.T) {
"action": "closed",
"repository": {"full_name": "Molecule-AI/molecule-core"},
"sender": {"login": "alice"},
- "issue": {"number": 42, "title": "Old issue", "html_url": "https://github.com/Molecule-AI/molecule-core/issues/42"}
+ "issue": {"number": 42, "title": "Old issue", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/issues/42"}
}`)
w, c := newWebhookTestContext(t, "", body)
@@ -298,8 +298,8 @@ func TestGitHubWebhook_PRReviewSubmitted_TriggersCrons(t *testing.T) {
"action": "submitted",
"repository": {"full_name": "Molecule-AI/molecule-core"},
"sender": {"login": "bob"},
- "review": {"state": "changes_requested", "html_url": "https://github.com/Molecule-AI/molecule-core/pull/7#pullrequestreview-1"},
- "pull_request": {"number": 7, "title": "Fix scheduler bug", "html_url": "https://github.com/Molecule-AI/molecule-core/pull/7"}
+ "review": {"state": "changes_requested", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/pull/7#pullrequestreview-1"},
+ "pull_request": {"number": 7, "title": "Fix scheduler bug", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/pull/7"}
}`)
// Expect the UPDATE that sets next_run_at = now() on review schedules.
@@ -339,8 +339,8 @@ func TestGitHubWebhook_PRReviewDismissed_Ignored(t *testing.T) {
"action": "dismissed",
"repository": {"full_name": "Molecule-AI/molecule-core"},
"sender": {"login": "bob"},
- "review": {"state": "dismissed", "html_url": "https://github.com/Molecule-AI/molecule-core/pull/7#pullrequestreview-1"},
- "pull_request": {"number": 7, "title": "Fix scheduler bug", "html_url": "https://github.com/Molecule-AI/molecule-core/pull/7"}
+ "review": {"state": "dismissed", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/pull/7#pullrequestreview-1"},
+ "pull_request": {"number": 7, "title": "Fix scheduler bug", "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/pull/7"}
}`)
w, c := newWebhookTestContext(t, "", body)
diff --git a/workspace-server/internal/handlers/webhooks_workflow_test.go b/workspace-server/internal/handlers/webhooks_workflow_test.go
index 3236cb59..883655e0 100644
--- a/workspace-server/internal/handlers/webhooks_workflow_test.go
+++ b/workspace-server/internal/handlers/webhooks_workflow_test.go
@@ -12,7 +12,7 @@ func TestBuildGitHubA2APayload_WorkflowRunFailure(t *testing.T) {
raw := []byte(`{
"workspace_id": "ws-devops",
"action": "completed",
- "repository": {"full_name": "Molecule-AI/molecule-monorepo"},
+ "repository": {"full_name": "molecule-ai/molecule-core"},
"sender": {"login": "test-user"},
"workflow_run": {
"id": 123456,
@@ -22,7 +22,7 @@ func TestBuildGitHubA2APayload_WorkflowRunFailure(t *testing.T) {
"conclusion": "failure",
"head_branch": "fix/thing",
"head_sha": "deadbeef1234567",
- "html_url": "https://github.com/Molecule-AI/molecule-monorepo/actions/runs/123456",
+ "html_url": "https://git.moleculesai.app/molecule-ai/molecule-core/actions/runs/123456",
"run_number": 42
}
}`)
@@ -37,7 +37,7 @@ func TestBuildGitHubA2APayload_WorkflowRunFailure(t *testing.T) {
body, _ := json.Marshal(payload)
text := string(body)
- for _, needle := range []string{"failure", "CI", "run #42", "fix/thing", "deadbee", "Molecule-AI/molecule-monorepo"} {
+ for _, needle := range []string{"failure", "CI", "run #42", "fix/thing", "deadbee", "molecule-ai/molecule-core"} {
if !strings.Contains(text, needle) {
t.Errorf("missing %q in payload: %s", needle, text)
}
diff --git a/workspace-server/internal/handlers/workspace.go b/workspace-server/internal/handlers/workspace.go
index a163cee9..bbc3bc09 100644
--- a/workspace-server/internal/handlers/workspace.go
+++ b/workspace-server/internal/handlers/workspace.go
@@ -16,13 +16,13 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
- "github.com/Molecule-AI/molecule-monorepo/platform/pkg/provisionhook"
+ "go.moleculesai.app/core/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/pkg/provisionhook"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
)
diff --git a/workspace-server/internal/handlers/workspace_bootstrap.go b/workspace-server/internal/handlers/workspace_bootstrap.go
index 2928ffd0..49ed8fea 100644
--- a/workspace-server/internal/handlers/workspace_bootstrap.go
+++ b/workspace-server/internal/handlers/workspace_bootstrap.go
@@ -5,9 +5,9 @@ import (
"net/http"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_bootstrap_test.go b/workspace-server/internal/handlers/workspace_bootstrap_test.go
index 278ef901..c42d5c97 100644
--- a/workspace-server/internal/handlers/workspace_bootstrap_test.go
+++ b/workspace-server/internal/handlers/workspace_bootstrap_test.go
@@ -7,7 +7,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_budget_test.go b/workspace-server/internal/handlers/workspace_budget_test.go
index 920dad9c..250a6c40 100644
--- a/workspace-server/internal/handlers/workspace_budget_test.go
+++ b/workspace-server/internal/handlers/workspace_budget_test.go
@@ -23,7 +23,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_crud.go b/workspace-server/internal/handlers/workspace_crud.go
index 200356b1..330b943f 100644
--- a/workspace-server/internal/handlers/workspace_crud.go
+++ b/workspace-server/internal/handlers/workspace_crud.go
@@ -15,10 +15,10 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
"github.com/google/uuid"
"github.com/lib/pq"
diff --git a/workspace-server/internal/handlers/workspace_dispatchers.go b/workspace-server/internal/handlers/workspace_dispatchers.go
index 3df25877..11382171 100644
--- a/workspace-server/internal/handlers/workspace_dispatchers.go
+++ b/workspace-server/internal/handlers/workspace_dispatchers.go
@@ -34,8 +34,8 @@ import (
"log"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provlog"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provlog"
)
// HasProvisioner reports whether either backend (CP or local Docker) is
diff --git a/workspace-server/internal/handlers/workspace_metrics.go b/workspace-server/internal/handlers/workspace_metrics.go
index 92d65a2e..575d8c1b 100644
--- a/workspace-server/internal/handlers/workspace_metrics.go
+++ b/workspace-server/internal/handlers/workspace_metrics.go
@@ -8,7 +8,7 @@ import (
"net/http"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_provision.go b/workspace-server/internal/handlers/workspace_provision.go
index 981ee5da..e72954c9 100644
--- a/workspace-server/internal/handlers/workspace_provision.go
+++ b/workspace-server/internal/handlers/workspace_provision.go
@@ -10,11 +10,11 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/crypto"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/crypto"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/wsauth"
)
// logProvisionPanic is the deferred recover at the top of every provision
diff --git a/workspace-server/internal/handlers/workspace_provision_auto_test.go b/workspace-server/internal/handlers/workspace_provision_auto_test.go
index ebb168dc..f4b19c8f 100644
--- a/workspace-server/internal/handlers/workspace_provision_auto_test.go
+++ b/workspace-server/internal/handlers/workspace_provision_auto_test.go
@@ -30,8 +30,8 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// trackingCPProv records every Start() call in a thread-safe slice.
diff --git a/workspace-server/internal/handlers/workspace_provision_concurrent_repro_test.go b/workspace-server/internal/handlers/workspace_provision_concurrent_repro_test.go
index a17d5037..8a2b1d6f 100644
--- a/workspace-server/internal/handlers/workspace_provision_concurrent_repro_test.go
+++ b/workspace-server/internal/handlers/workspace_provision_concurrent_repro_test.go
@@ -11,8 +11,8 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// Issue #2486 reproduction harness: 7 simultaneous claude-code provisions
diff --git a/workspace-server/internal/handlers/workspace_provision_panic_test.go b/workspace-server/internal/handlers/workspace_provision_panic_test.go
index d9705f30..d275781c 100644
--- a/workspace-server/internal/handlers/workspace_provision_panic_test.go
+++ b/workspace-server/internal/handlers/workspace_provision_panic_test.go
@@ -8,7 +8,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
// Pin the issue #2486 contract: a panic inside the provision goroutine must
diff --git a/workspace-server/internal/handlers/workspace_provision_shared.go b/workspace-server/internal/handlers/workspace_provision_shared.go
index e879521a..5f72fad7 100644
--- a/workspace-server/internal/handlers/workspace_provision_shared.go
+++ b/workspace-server/internal/handlers/workspace_provision_shared.go
@@ -40,11 +40,11 @@ import (
"log"
"path/filepath"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/wsauth"
)
// readOrLazyHealInboundSecret reads the workspace's
diff --git a/workspace-server/internal/handlers/workspace_provision_shared_test.go b/workspace-server/internal/handlers/workspace_provision_shared_test.go
index 51391c93..64edfbf9 100644
--- a/workspace-server/internal/handlers/workspace_provision_shared_test.go
+++ b/workspace-server/internal/handlers/workspace_provision_shared_test.go
@@ -32,8 +32,8 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provisioner"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_provision_test.go b/workspace-server/internal/handlers/workspace_provision_test.go
index 18d5777d..ef9d216e 100644
--- a/workspace-server/internal/handlers/workspace_provision_test.go
+++ b/workspace-server/internal/handlers/workspace_provision_test.go
@@ -10,10 +10,10 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/plugins"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/pkg/provisionhook"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/plugins"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/pkg/provisionhook"
"gopkg.in/yaml.v3"
)
diff --git a/workspace-server/internal/handlers/workspace_restart.go b/workspace-server/internal/handlers/workspace_restart.go
index 2af5291c..612c9231 100644
--- a/workspace-server/internal/handlers/workspace_restart.go
+++ b/workspace-server/internal/handlers/workspace_restart.go
@@ -10,10 +10,10 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provlog"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/provlog"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_restart_stop_retry_test.go b/workspace-server/internal/handlers/workspace_restart_stop_retry_test.go
index 1104feec..3fd1bfb0 100644
--- a/workspace-server/internal/handlers/workspace_restart_stop_retry_test.go
+++ b/workspace-server/internal/handlers/workspace_restart_stop_retry_test.go
@@ -43,7 +43,7 @@ import (
"testing"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/provisioner"
)
// scriptedCPStop returns a fakeCPStop that returns errs[i] on call i, then
diff --git a/workspace-server/internal/handlers/workspace_restart_test.go b/workspace-server/internal/handlers/workspace_restart_test.go
index f36b5232..29ad6880 100644
--- a/workspace-server/internal/handlers/workspace_restart_test.go
+++ b/workspace-server/internal/handlers/workspace_restart_test.go
@@ -12,7 +12,7 @@ import (
"testing"
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/handlers/workspace_test.go b/workspace-server/internal/handlers/workspace_test.go
index 4e17ca6a..d88f58fc 100644
--- a/workspace-server/internal/handlers/workspace_test.go
+++ b/workspace-server/internal/handlers/workspace_test.go
@@ -12,7 +12,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/imagewatch/watch.go b/workspace-server/internal/imagewatch/watch.go
index d39d57f3..0eb35909 100644
--- a/workspace-server/internal/imagewatch/watch.go
+++ b/workspace-server/internal/imagewatch/watch.go
@@ -28,7 +28,7 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/handlers"
)
// DefaultInterval is the polling cadence. Runtime publishes happen at most
diff --git a/workspace-server/internal/imagewatch/watch_test.go b/workspace-server/internal/imagewatch/watch_test.go
index b29d17a3..70bd38be 100644
--- a/workspace-server/internal/imagewatch/watch_test.go
+++ b/workspace-server/internal/imagewatch/watch_test.go
@@ -6,7 +6,7 @@ import (
"sync"
"testing"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/handlers"
)
// fakeRefresher records every Refresh call and lets tests inject errors.
diff --git a/workspace-server/internal/lint/import_path_lint_test.go b/workspace-server/internal/lint/import_path_lint_test.go
new file mode 100644
index 00000000..3be29bc0
--- /dev/null
+++ b/workspace-server/internal/lint/import_path_lint_test.go
@@ -0,0 +1,154 @@
+// Issue molecule-ai/internal#71 lint gate.
+//
+// Walks every *.go file in the module + the go.mod declaration + any
+// Dockerfile in the repo, and rejects any reference to the dead
+// github.com/Molecule-AI/* identity (or the historical
+// Molecule-AI/molecule-monorepo path).
+//
+// We had a 374+131+30+1-line "github.com/Molecule-AI/" footprint across
+// the org pre-migration. The class of bug this gate prevents:
+//
+// - copy-pastes from old branches re-introducing the dead path
+// - Dockerfile -ldflags strings drifting back to github.com on a
+// refactor (the path has to match the module declaration to inject
+// buildinfo correctly; if they disagree the binary builds but
+// reports a wrong / stale GitSHA)
+// - new modules added to the repo with the wrong import root because
+// someone copied an old go.mod without thinking
+//
+// Why not just a CI shell grep: a Go test runs everywhere `go test ./...`
+// runs, including local pre-push hooks and contributor IDEs. The gate
+// fires immediately, with a per-file message that points at the line —
+// CI shell grep failures are silent until the runner picks them up.
+
+package lint
+
+import (
+ "os"
+ "path/filepath"
+ "strings"
+ "testing"
+)
+
+// forbiddenSubstrings is the literal-match list. Each string MUST NOT
+// appear anywhere under the module root. Entries are checked with
+// substring matching, not regex — keep the patterns specific enough
+// that a false-positive needs an explicit allowlist entry.
+var forbiddenSubstrings = []string{
+ "github.com/Molecule-AI/",
+ "Molecule-AI/molecule-monorepo",
+}
+
+// allowlistedFiles is the per-file escape hatch. Empty by default —
+// add an entry only when there is a documented reason a forbidden
+// string MUST appear (e.g. a regression-test fixture that asserts
+// the lint gate itself rejects the string). Each entry MUST be
+// accompanied by a comment explaining why.
+var allowlistedFiles = map[string]bool{
+ // go.mod "require" line + main.go import for molecule-ai-plugin-gh-identity.
+ // This cross-repo dep is in transit: gh-identity's vanity migration is
+ // PR molecule-ai-plugin-gh-identity#3 (parallel with internal#71). Until
+ // that PR merges AND a tag is cut at go.moleculesai.app/plugin/gh-identity,
+ // this go.mod must reference the legacy github.com path. Follow-up PR
+ // removes both allowlist entries + updates the require/import in one shot.
+ // Filed as the post-#71 cleanup note in the PR description.
+ "go.mod": true,
+ "cmd/server/main.go": true,
+}
+
+func TestNoLegacyGitHubImportPaths(t *testing.T) {
+ moduleRoot, err := findModuleRoot()
+ if err != nil {
+ t.Fatalf("findModuleRoot: %v", err)
+ }
+
+ checkExt := map[string]bool{
+ ".go": true,
+ ".mod": true,
+ ".sum": false, // go.sum is auto-generated, refs flow from go.mod
+ ".sh": true,
+ ".yml": true,
+ ".yaml": true,
+ ".toml": true,
+ ".md": true,
+ ".json": true, // package.json / tsconfig.json — catches ref drift in package metadata
+ }
+ checkBasename := map[string]bool{
+ "Dockerfile": true,
+ "Dockerfile.tenant": true,
+ }
+
+ violations := 0
+ walkErr := filepath.Walk(moduleRoot, func(path string, info os.FileInfo, err error) error {
+ if err != nil {
+ return err
+ }
+ if info.IsDir() {
+ // Skip vendor + .git + node_modules — not our code.
+ base := info.Name()
+ if base == "vendor" || base == ".git" || base == "node_modules" || base == "testdata" {
+ return filepath.SkipDir
+ }
+ return nil
+ }
+ ext := filepath.Ext(path)
+ base := filepath.Base(path)
+ if !checkExt[ext] && !checkBasename[base] {
+ return nil
+ }
+ rel, _ := filepath.Rel(moduleRoot, path)
+ if allowlistedFiles[rel] {
+ return nil
+ }
+ // Skip the lint test itself — it legitimately names the forbidden
+ // strings as match patterns.
+ if strings.HasSuffix(rel, "import_path_lint_test.go") {
+ return nil
+ }
+ data, err := os.ReadFile(path)
+ if err != nil {
+ return err
+ }
+ text := string(data)
+ for _, bad := range forbiddenSubstrings {
+ if strings.Contains(text, bad) {
+ // Find the line number for a useful error message.
+ for lineNo, line := range strings.Split(text, "\n") {
+ if strings.Contains(line, bad) {
+ t.Errorf("%s:%d — forbidden substring %q (use go.moleculesai.app//... per molecule-ai/internal#71)", rel, lineNo+1, bad)
+ violations++
+ break
+ }
+ }
+ }
+ }
+ return nil
+ })
+ if walkErr != nil {
+ t.Fatalf("walk: %v", walkErr)
+ }
+ if violations > 0 {
+ t.Logf("Total violations: %d. Add to allowlistedFiles ONLY with a documented justification.", violations)
+ }
+}
+
+// findModuleRoot walks up from the test's CWD to find go.mod. The Go
+// test harness sets CWD to the package directory; the module root may
+// be one or more parents up.
+func findModuleRoot() (string, error) {
+ cwd, err := os.Getwd()
+ if err != nil {
+ return "", err
+ }
+ dir := cwd
+ for {
+ if _, err := os.Stat(filepath.Join(dir, "go.mod")); err == nil {
+ return dir, nil
+ }
+ parent := filepath.Dir(dir)
+ if parent == dir {
+ return "", os.ErrNotExist
+ }
+ dir = parent
+ }
+}
diff --git a/workspace-server/internal/memory/client/client.go b/workspace-server/internal/memory/client/client.go
index 2dce9267..437e7fe0 100644
--- a/workspace-server/internal/memory/client/client.go
+++ b/workspace-server/internal/memory/client/client.go
@@ -34,8 +34,8 @@ import (
"sync"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
const (
diff --git a/workspace-server/internal/memory/client/client_test.go b/workspace-server/internal/memory/client/client_test.go
index 3f7830b4..755ceeba 100644
--- a/workspace-server/internal/memory/client/client_test.go
+++ b/workspace-server/internal/memory/client/client_test.go
@@ -11,7 +11,7 @@ import (
"testing"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// roundTripperFunc lets tests inject a fully synthetic transport.
diff --git a/workspace-server/internal/memory/e2e/swap_test.go b/workspace-server/internal/memory/e2e/swap_test.go
index df535488..5eedb20e 100644
--- a/workspace-server/internal/memory/e2e/swap_test.go
+++ b/workspace-server/internal/memory/e2e/swap_test.go
@@ -34,10 +34,10 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// flatPlugin is a deliberately minimal contract-satisfying memory
diff --git a/workspace-server/internal/memory/namespace/resolver.go b/workspace-server/internal/memory/namespace/resolver.go
index c6790edd..cb813d81 100644
--- a/workspace-server/internal/memory/namespace/resolver.go
+++ b/workspace-server/internal/memory/namespace/resolver.go
@@ -17,7 +17,7 @@ import (
"errors"
"fmt"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// Max parent_id chain depth we will walk before bailing out. Today's
diff --git a/workspace-server/internal/memory/namespace/resolver_test.go b/workspace-server/internal/memory/namespace/resolver_test.go
index 7f7122d0..4afe1bee 100644
--- a/workspace-server/internal/memory/namespace/resolver_test.go
+++ b/workspace-server/internal/memory/namespace/resolver_test.go
@@ -9,7 +9,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// chainQueryMatcher matches the recursive-CTE query loosely (substring
diff --git a/workspace-server/internal/memory/pgplugin/handlers.go b/workspace-server/internal/memory/pgplugin/handlers.go
index 6627791b..2fe85c93 100644
--- a/workspace-server/internal/memory/pgplugin/handlers.go
+++ b/workspace-server/internal/memory/pgplugin/handlers.go
@@ -6,7 +6,7 @@ import (
"net/http"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// SchemaVersion is what the plugin reports on /v1/health. Pinned to
diff --git a/workspace-server/internal/memory/pgplugin/handlers_test.go b/workspace-server/internal/memory/pgplugin/handlers_test.go
index ff683224..94f81176 100644
--- a/workspace-server/internal/memory/pgplugin/handlers_test.go
+++ b/workspace-server/internal/memory/pgplugin/handlers_test.go
@@ -14,7 +14,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
func setupMockDB(t *testing.T) (*sql.DB, sqlmock.Sqlmock) {
diff --git a/workspace-server/internal/memory/pgplugin/store.go b/workspace-server/internal/memory/pgplugin/store.go
index 6896dc75..b4ac862e 100644
--- a/workspace-server/internal/memory/pgplugin/store.go
+++ b/workspace-server/internal/memory/pgplugin/store.go
@@ -18,7 +18,7 @@ import (
"github.com/lib/pq"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// ErrNotFound is the typed sentinel for "namespace or memory not
diff --git a/workspace-server/internal/memory/pgplugin/store_test.go b/workspace-server/internal/memory/pgplugin/store_test.go
index 129b55a2..c97413ca 100644
--- a/workspace-server/internal/memory/pgplugin/store_test.go
+++ b/workspace-server/internal/memory/pgplugin/store_test.go
@@ -10,7 +10,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/contract"
+ "go.moleculesai.app/core/platform/internal/memory/contract"
)
// --- marshalMetadata corner cases ---
diff --git a/workspace-server/internal/memory/wiring/wiring.go b/workspace-server/internal/memory/wiring/wiring.go
index 12badfdc..e94c3140 100644
--- a/workspace-server/internal/memory/wiring/wiring.go
+++ b/workspace-server/internal/memory/wiring/wiring.go
@@ -21,8 +21,8 @@ import (
"os"
"time"
- mclient "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/client"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/namespace"
+ mclient "go.moleculesai.app/core/platform/internal/memory/client"
+ "go.moleculesai.app/core/platform/internal/memory/namespace"
)
// Bundle is the v2 dependency bundle. Pass it through Setup as a
diff --git a/workspace-server/internal/middleware/wsauth_middleware.go b/workspace-server/internal/middleware/wsauth_middleware.go
index ef82d8e7..367dfe6d 100644
--- a/workspace-server/internal/middleware/wsauth_middleware.go
+++ b/workspace-server/internal/middleware/wsauth_middleware.go
@@ -9,8 +9,8 @@ import (
"os"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/orgtoken"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/wsauth"
+ "go.moleculesai.app/core/platform/internal/orgtoken"
+ "go.moleculesai.app/core/platform/internal/wsauth"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/models/architecture_test.go b/workspace-server/internal/models/architecture_test.go
index 40b65ba6..02679a07 100644
--- a/workspace-server/internal/models/architecture_test.go
+++ b/workspace-server/internal/models/architecture_test.go
@@ -18,7 +18,7 @@ import (
"testing"
)
-const moduleInternalPrefix = "github.com/Molecule-AI/molecule-monorepo/platform/internal/"
+const moduleInternalPrefix = "go.moleculesai.app/core/platform/internal/"
func TestModelsHasNoInternalDependencies(t *testing.T) {
t.Parallel()
diff --git a/workspace-server/internal/pendinguploads/storage_test.go b/workspace-server/internal/pendinguploads/storage_test.go
index 79bbebb8..18fbe559 100644
--- a/workspace-server/internal/pendinguploads/storage_test.go
+++ b/workspace-server/internal/pendinguploads/storage_test.go
@@ -11,7 +11,7 @@ import (
"github.com/DATA-DOG/go-sqlmock"
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// Tests pin the SQL the handler relies on. Drift detection: if the
diff --git a/workspace-server/internal/pendinguploads/sweeper.go b/workspace-server/internal/pendinguploads/sweeper.go
index b29a87ad..5aa45a0f 100644
--- a/workspace-server/internal/pendinguploads/sweeper.go
+++ b/workspace-server/internal/pendinguploads/sweeper.go
@@ -30,7 +30,7 @@ import (
"log"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/metrics"
+ "go.moleculesai.app/core/platform/internal/metrics"
)
// SweepInterval is the cadence of the GC loop. 5 minutes is a balance
diff --git a/workspace-server/internal/pendinguploads/sweeper_test.go b/workspace-server/internal/pendinguploads/sweeper_test.go
index 4133125d..723e2b80 100644
--- a/workspace-server/internal/pendinguploads/sweeper_test.go
+++ b/workspace-server/internal/pendinguploads/sweeper_test.go
@@ -10,8 +10,8 @@ import (
"github.com/google/uuid"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/metrics"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
+ "go.moleculesai.app/core/platform/internal/metrics"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
)
// fakeSweepStorage is a minimal Storage that records every Sweep call
diff --git a/workspace-server/internal/provisioner/architecture_test.go b/workspace-server/internal/provisioner/architecture_test.go
index c7455e52..4ac9274f 100644
--- a/workspace-server/internal/provisioner/architecture_test.go
+++ b/workspace-server/internal/provisioner/architecture_test.go
@@ -25,7 +25,7 @@ import (
"testing"
)
-const moduleInternalPrefix = "github.com/Molecule-AI/molecule-monorepo/platform/internal/"
+const moduleInternalPrefix = "go.moleculesai.app/core/platform/internal/"
var provisionerForbiddenImports = []string{
moduleInternalPrefix + "handlers",
diff --git a/workspace-server/internal/provisioner/cp_provisioner.go b/workspace-server/internal/provisioner/cp_provisioner.go
index bdc5bff7..dbd9e6c0 100644
--- a/workspace-server/internal/provisioner/cp_provisioner.go
+++ b/workspace-server/internal/provisioner/cp_provisioner.go
@@ -13,8 +13,8 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provlog"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/provlog"
)
// CPProvisionerAPI is the contract WorkspaceHandler uses to talk to the
diff --git a/workspace-server/internal/registry/access.go b/workspace-server/internal/registry/access.go
index 530356be..df5d43f5 100644
--- a/workspace-server/internal/registry/access.go
+++ b/workspace-server/internal/registry/access.go
@@ -4,7 +4,7 @@ import (
"database/sql"
"log"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
// maxAncestorWalk caps the depth of the parent-chain walk in
diff --git a/workspace-server/internal/registry/access_test.go b/workspace-server/internal/registry/access_test.go
index 537a0b62..29db586d 100644
--- a/workspace-server/internal/registry/access_test.go
+++ b/workspace-server/internal/registry/access_test.go
@@ -5,7 +5,7 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
func setupMockDB(t *testing.T) sqlmock.Sqlmock {
diff --git a/workspace-server/internal/registry/healthsweep.go b/workspace-server/internal/registry/healthsweep.go
index fdeef4f9..85c264b5 100644
--- a/workspace-server/internal/registry/healthsweep.go
+++ b/workspace-server/internal/registry/healthsweep.go
@@ -7,8 +7,8 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
)
// ContainerChecker checks if a workspace container is running via Docker API.
diff --git a/workspace-server/internal/registry/healthsweep_test.go b/workspace-server/internal/registry/healthsweep_test.go
index ce82e027..43f38508 100644
--- a/workspace-server/internal/registry/healthsweep_test.go
+++ b/workspace-server/internal/registry/healthsweep_test.go
@@ -7,8 +7,8 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/alicebob/miniredis/v2"
"github.com/redis/go-redis/v9"
)
diff --git a/workspace-server/internal/registry/hibernation.go b/workspace-server/internal/registry/hibernation.go
index 8d3884da..143e4c1b 100644
--- a/workspace-server/internal/registry/hibernation.go
+++ b/workspace-server/internal/registry/hibernation.go
@@ -5,8 +5,8 @@ import (
"log"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/supervised"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/supervised"
)
// HibernateHandler is called for each workspace that the hibernation monitor
diff --git a/workspace-server/internal/registry/hibernation_test.go b/workspace-server/internal/registry/hibernation_test.go
index 76d6555f..9e6c225e 100644
--- a/workspace-server/internal/registry/hibernation_test.go
+++ b/workspace-server/internal/registry/hibernation_test.go
@@ -8,7 +8,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
)
func setupHibernationMock(t *testing.T) sqlmock.Sqlmock {
diff --git a/workspace-server/internal/registry/liveness.go b/workspace-server/internal/registry/liveness.go
index ae53231a..b4a21fcc 100644
--- a/workspace-server/internal/registry/liveness.go
+++ b/workspace-server/internal/registry/liveness.go
@@ -5,8 +5,8 @@ import (
"log"
"strings"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
)
// OfflineHandler is called when a workspace's liveness key expires.
diff --git a/workspace-server/internal/registry/liveness_test.go b/workspace-server/internal/registry/liveness_test.go
index d53fc007..0d22f402 100644
--- a/workspace-server/internal/registry/liveness_test.go
+++ b/workspace-server/internal/registry/liveness_test.go
@@ -6,8 +6,8 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/alicebob/miniredis/v2"
"github.com/redis/go-redis/v9"
)
diff --git a/workspace-server/internal/registry/orphan_sweeper.go b/workspace-server/internal/registry/orphan_sweeper.go
index 6e4110cb..ead9801b 100644
--- a/workspace-server/internal/registry/orphan_sweeper.go
+++ b/workspace-server/internal/registry/orphan_sweeper.go
@@ -22,7 +22,7 @@ import (
"log"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/db"
"github.com/lib/pq"
)
diff --git a/workspace-server/internal/registry/provisiontimeout.go b/workspace-server/internal/registry/provisiontimeout.go
index 46b9e157..6171ed48 100644
--- a/workspace-server/internal/registry/provisiontimeout.go
+++ b/workspace-server/internal/registry/provisiontimeout.go
@@ -7,9 +7,9 @@ import (
"strconv"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/models"
)
// ProvisionTimeoutEmitter is the narrow broadcaster dependency the sweeper
diff --git a/workspace-server/internal/registry/provisiontimeout_test.go b/workspace-server/internal/registry/provisiontimeout_test.go
index 29cc904e..974f1b9c 100644
--- a/workspace-server/internal/registry/provisiontimeout_test.go
+++ b/workspace-server/internal/registry/provisiontimeout_test.go
@@ -8,7 +8,7 @@ import (
"time"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
)
// fakeEmitter records every RecordAndBroadcast call so tests can assert
diff --git a/workspace-server/internal/router/admin_delegations_route_test.go b/workspace-server/internal/router/admin_delegations_route_test.go
index 062b6967..b549eb06 100644
--- a/workspace-server/internal/router/admin_delegations_route_test.go
+++ b/workspace-server/internal/router/admin_delegations_route_test.go
@@ -6,9 +6,9 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/middleware"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/router/admin_test_token_route_test.go b/workspace-server/internal/router/admin_test_token_route_test.go
index 8f59250b..19c2a6bc 100644
--- a/workspace-server/internal/router/admin_test_token_route_test.go
+++ b/workspace-server/internal/router/admin_test_token_route_test.go
@@ -6,9 +6,9 @@ import (
"testing"
"github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/middleware"
"github.com/gin-gonic/gin"
)
diff --git a/workspace-server/internal/router/router.go b/workspace-server/internal/router/router.go
index e3b9171b..6e1b9b8c 100644
--- a/workspace-server/internal/router/router.go
+++ b/workspace-server/internal/router/router.go
@@ -8,19 +8,19 @@ import (
"strings"
"time"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/buildinfo"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/channels"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/messagestore"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/handlers"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/pendinguploads"
- memwiring "github.com/Molecule-AI/molecule-monorepo/platform/internal/memory/wiring"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/metrics"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/middleware"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/provisioner"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/supervised"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/ws"
+ "go.moleculesai.app/core/platform/internal/buildinfo"
+ "go.moleculesai.app/core/platform/internal/channels"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/messagestore"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/handlers"
+ "go.moleculesai.app/core/platform/internal/pendinguploads"
+ memwiring "go.moleculesai.app/core/platform/internal/memory/wiring"
+ "go.moleculesai.app/core/platform/internal/metrics"
+ "go.moleculesai.app/core/platform/internal/middleware"
+ "go.moleculesai.app/core/platform/internal/provisioner"
+ "go.moleculesai.app/core/platform/internal/supervised"
+ "go.moleculesai.app/core/platform/internal/ws"
"github.com/docker/docker/client"
"github.com/gin-contrib/cors"
"github.com/gin-gonic/gin"
diff --git a/workspace-server/internal/scheduler/scheduler.go b/workspace-server/internal/scheduler/scheduler.go
index 53f17e0c..a98bdb8b 100644
--- a/workspace-server/internal/scheduler/scheduler.go
+++ b/workspace-server/internal/scheduler/scheduler.go
@@ -13,11 +13,11 @@ import (
"github.com/google/uuid"
cronlib "github.com/robfig/cron/v3"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/events"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/metrics"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/supervised"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/events"
+ "go.moleculesai.app/core/platform/internal/metrics"
+ "go.moleculesai.app/core/platform/internal/supervised"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
const (
diff --git a/workspace-server/internal/scheduler/scheduler_test.go b/workspace-server/internal/scheduler/scheduler_test.go
index 742ec0ad..66cf5925 100644
--- a/workspace-server/internal/scheduler/scheduler_test.go
+++ b/workspace-server/internal/scheduler/scheduler_test.go
@@ -9,8 +9,8 @@ import (
sqlmock "github.com/DATA-DOG/go-sqlmock"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/db"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/textutil"
+ "go.moleculesai.app/core/platform/internal/db"
+ "go.moleculesai.app/core/platform/internal/textutil"
)
// errDBDown is a sentinel error used by tests to simulate a DB connection failure.
diff --git a/workspace-server/internal/ws/hub.go b/workspace-server/internal/ws/hub.go
index 3f4d5681..3b82e68f 100644
--- a/workspace-server/internal/ws/hub.go
+++ b/workspace-server/internal/ws/hub.go
@@ -5,7 +5,7 @@ import (
"log"
"sync"
- "github.com/Molecule-AI/molecule-monorepo/platform/internal/models"
+ "go.moleculesai.app/core/platform/internal/models"
"github.com/gorilla/websocket"
)
diff --git a/workspace-server/internal/wsauth/architecture_test.go b/workspace-server/internal/wsauth/architecture_test.go
index c61e5b7e..a01fb646 100644
--- a/workspace-server/internal/wsauth/architecture_test.go
+++ b/workspace-server/internal/wsauth/architecture_test.go
@@ -21,7 +21,7 @@ import (
"testing"
)
-const moduleInternalPrefix = "github.com/Molecule-AI/molecule-monorepo/platform/internal/"
+const moduleInternalPrefix = "go.moleculesai.app/core/platform/internal/"
func TestWsauthHasNoInternalDependencies(t *testing.T) {
t.Parallel()
diff --git a/workspace-server/pkg/provisionhook/mutator.go b/workspace-server/pkg/provisionhook/mutator.go
index 9433467d..88b71b15 100644
--- a/workspace-server/pkg/provisionhook/mutator.go
+++ b/workspace-server/pkg/provisionhook/mutator.go
@@ -23,7 +23,7 @@
// registry before each workspace container starts.
//
// Plugins live in their own Go modules + repos (e.g.
-// github.com/Molecule-AI/molecule-ai-plugin-github-app-auth). Each
+// git.moleculesai.app/molecule-ai/molecule-ai-plugin-github-app-auth). Each
// plugin ships its own cmd/server/main.go that imports core's startup
// function + registers the plugin's mutator. Operators deploy the
// plugin binary instead of core's vanilla cmd/server when they want
diff --git a/workspace/build-all.sh b/workspace/build-all.sh
index 3ef07486..51c4ecb2 100755
--- a/workspace/build-all.sh
+++ b/workspace/build-all.sh
@@ -2,7 +2,7 @@
# build-all.sh — Rebuild base image and optionally adapter images.
#
# NOTE: Adapters have been extracted to standalone template repos:
-# https://github.com/Molecule-AI/molecule-ai-workspace-template-
+# https://git.moleculesai.app/molecule-ai/molecule-ai-workspace-template-
#
# This script now only builds the base image from workspace/Dockerfile.
# Each adapter repo has its own Dockerfile that installs molecule-ai-workspace-runtime