Compare commits

..

7 Commits

Author SHA1 Message Date
documentation-specialist a52ed96143 docs(install): catch additional active doc-link refs in guides + blog (#37 follow-up)
Secret scan / secret-scan (pull_request) Failing after 0s
CI / build (pull_request) Failing after 31s
Follow-up to commit d05d92b: my first sweep filtered out only
issues/pull/commit/releases URLs but missed several /tree/<branch>/...
and active-mention paths in guides/.

Additional 5 edits across 4 files:
- guides/remote-workspaces.md:151,152 — molecule-sdk-python links
  (PUBLIC) migrated to Gitea; /tree/main → /src/branch/main path-shape.
- guides/external-workspace-quickstart.md:223 — design-doc link in
  internal/ + tracking-issue link to molecule-core/issues. Internal is
  PRIVATE; logged-in users see it; better than stale github 404.
- guides/skill-catalog.md:68,174 — molecule-ai/skills repo doesn't
  exist on Gitea (404). Replaced with placeholder note pointing at
  internal issue tracker for canonical submission path until skills
  repo is recreated/located. Filed as implicit parked follow-up.
- docs/marketing/blog/2026-04-20-...mcp.md:240 — GitHub Discussions
  link (Discussions don't have a Gitea equivalent today). Replaced
  with issue-tracker link.

Still LEFT AS-IS (per Q3): 90 historical PR/issue cross-refs in
changelog.mdx, plus changelog.mdx:349 'Documentation Specialist'
meta-narrative author attribution link, plus 2 incident-narrative
git clone --mirror commands in INCIDENT_LOG.md (those describe a
historical incident response, not active install instructions).

Refs: molecule-ai/internal#37, molecule-ai/internal#38
2026-05-07 00:38:40 -07:00
documentation-specialist d05d92b666 docs(install): migrate active doc links + git clone URLs to Gitea (#37)
7 actionable edits across 5 files. The other 90 hits are historical
PR/issue cross-refs in changelog.mdx — leave per Q3 (audit trail).

| File | Line | Change |
|------|------|--------|
| app/(home)/page.tsx | 21 | molecule-monorepo (404 on Gitea) → molecule-core (renamed). 'View on GitHub' → 'View on Gitea'. |
| content/docs/quickstart.md | 14 | git clone github.com/Molecule-AI/molecule-core → git.moleculesai.app/molecule-ai/molecule-core |
| content/docs/quickstart.md | 81 | 'GitHub repo' link → 'Gitea repo' |
| content/docs/self-hosting.mdx | 20 | git clone (same as above) |
| content/docs/architecture.mdx | 141 | 'github.com/Molecule-AI/molecule-cli' → 'git.moleculesai.app/molecule-ai/molecule-cli' (public repo) |
| content/docs/architecture/molecule-technical-doc.md | 7 | molecule-monorepo doc-scan reference → molecule-core (with rename note) |
| content/docs/architecture/molecule-technical-doc.md | 1156-1160 | Footer links section: GitHub → Gitea, /tree/<branch> → /src/branch/<branch> |

LEFT AS-IS (per Q3 + B3 in #38):
- changelog.mdx historical PR/issue cross-refs (90 hits — audit trail)
- changelog.mdx:349 'Documentation Specialist' link to github.com/Molecule-AI (meta-narrative author attribution; org-page is dead but the historical attribution is fine)

Refs: molecule-ai/internal#37, molecule-ai/internal#38
2026-05-07 00:37:12 -07:00
claude-ceo-assistant 46615a07cf chore: remove broken Gitea Actions workflow
Secret scan / secret-scan (push) Failing after 0s
CI / build (push) Failing after 2s
act_runner cannot execute workflows (115 runs / 0 successes ever; tracked in tech-debt #115). Auto-deploys now run from operator-deploy-vercel.sh on the Hetzner host via cron poll. Same Gitea push trigger, different executor.
2026-05-06 22:24:13 +00:00
claude-ceo-assistant 6d08619871 ci: Vercel deploy on push (Gitea Actions migration)
deploy-vercel / deploy (push) Failing after 39s
Replaces the GitHub-triggered deploy after GitHub org suspension on 2026-05-06. Same project, same domains. See internal/runbooks/operator-setup-2026-05-06.md.
2026-05-06 22:01:55 +00:00
Hongming Wang 75d85a6ae2 Merge pull request #104 from Molecule-AI/docs/2429-410-removed-workspace
Secret scan / secret-scan (push) Failing after 0s
CI / build (push) Failing after 34s
docs(2429): document 410 Gone for removed workspaces
2026-04-30 22:13:52 -07:00
Hongming Wang f1ed8784ff docs(2429): document 410 Gone for removed workspaces
Follow-up C to molecule-core#2449 + #2451 (a2a-client) +
molecule-mcp-claude-channel#22 (channel bridge):

- runtime-mcp.mdx Troubleshooting: new section explaining the 410
  startup-time error from `get_workspace_info`, contrasting it with
  the heartbeat-401 escalation (which is the steady-state cure), and
  documenting the `?include_removed=true` opt-in for audit tooling.
- external-agents.mdx Lifecycle: expanded the `removed` status with
  a per-caller behavior table so operators know exactly what each
  surface (wheel heartbeat, MCP tool, channel bridge, raw curl) looks
  like for a removed workspace.

Both pages link back to the underlying PR so the audit trail is
single-click navigable from the docs.

Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-04-30 22:13:04 -07:00
Hongming Wang 78665e35ed Merge pull request #103 from Molecule-AI/docs/runtime-mcp-spec-compliance
docs(runtime-mcp): document MCP 2024-11-05 spec compliance
2026-04-30 20:29:23 -07:00
11 changed files with 58 additions and 18 deletions
+2 -2
View File
@@ -18,10 +18,10 @@ export default function HomePage() {
Read the docs
</Link>
<Link
href="https://github.com/Molecule-AI/molecule-monorepo"
href="https://git.moleculesai.app/molecule-ai/molecule-core"
className="rounded-md border border-fd-border px-5 py-2.5 text-sm font-medium transition-colors hover:bg-fd-muted"
>
View on GitHub
View on Gitea
</Link>
</div>
</main>
+1 -1
View File
@@ -138,7 +138,7 @@ These controls complement the platform-level secret redaction described in the [
**Stack:** Go / Bubbletea + Lipgloss
A terminal UI dashboard for real-time workspace monitoring, event log streaming, health overview, and delete/filter operations. Reads `MOLECLI_URL` (default `http://localhost:8080`) to locate the platform. Now published as a standalone repo at `github.com/Molecule-AI/molecule-cli`.
A terminal UI dashboard for real-time workspace monitoring, event log streaming, health overview, and delete/filter operations. Reads `MOLECLI_URL` (default `http://localhost:8080`) to locate the platform. Now published as a standalone repo at `git.moleculesai.app/molecule-ai/molecule-cli`.
---
@@ -4,7 +4,7 @@ title: "Molecule AI — Comprehensive Technical Documentation"
# 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-core](https://git.moleculesai.app/molecule-ai/molecule-core) repository (formerly `molecule-monorepo`, renamed during the post-2026-05-06 GitHub-org-suspension recovery).
---
@@ -1153,11 +1153,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
- **Gitea**: https://git.moleculesai.app/molecule-ai/molecule-core
- **Architecture Docs**: https://git.moleculesai.app/molecule-ai/molecule-core/src/branch/main/docs/architecture
- **API Protocol**: https://git.moleculesai.app/molecule-ai/molecule-core/src/branch/main/docs/api-protocol
- **Agent Runtime**: https://git.moleculesai.app/molecule-ai/molecule-core/src/branch/main/docs/agent-runtime
- **Product Docs**: https://git.moleculesai.app/molecule-ai/molecule-core/src/branch/main/docs/product
---
+18
View File
@@ -244,6 +244,24 @@ create (POST /workspaces) → online (register) → offline (heartbeat expires)
- No auto-restart (agent manages its own process)
- Paused external workspaces skip heartbeat monitoring
### `removed` status — 410 Gone (#2429)
Once a workspace transitions to `removed`:
- **Tokens are revoked immediately**, but the row stays in the DB for audit-trail purposes
- `GET /workspaces/:id` returns **410 Gone** with `{error: "workspace removed", id, removed_at, hint}` so callers fail fast at startup instead of after ~60s of heartbeat 401s
- `DELETE /workspaces/:id` is the canonical removal trigger
- Audit / admin tooling that intentionally wants the legacy 200 + body shape opts in via `GET /workspaces/:id?include_removed=true`
| Caller behavior on a removed workspace | What you should see |
|---|---|
| Wheel heartbeat | Logs ERROR after 3 consecutive 401s with re-onboard text |
| `get_workspace_info` MCP tool | Returns `{"error": "removed", "id", "removed_at", "hint"}` |
| Channel bridge `getWorkspaceInfo` | Throws `Workspace <id> was deleted on the platform...` |
| Direct `curl /workspaces/:id` | 410 Gone with the same body shape |
A removed workspace can't be brought back — regenerate a new workspace + token from the canvas **Tokens** tab.
## Security
- Bearer token required on all authenticated endpoints
@@ -220,7 +220,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/src/branch/main/product/external-workspaces-polling.md) (internal) and the implementation tracking issue (search `polling+mode` on the [molecule-core issue tracker](https://git.moleculesai.app/molecule-ai/molecule-core/issues)).
---
+2 -2
View File
@@ -148,5 +148,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/src/branch/main/examples/remote-agent)** — `run.py` demo script, annotated walkthrough
+2 -2
View File
@@ -65,7 +65,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` (repo location TBD post-2026-05-06 GitHub-org-suspension; check the [internal issue tracker](https://git.moleculesai.app/molecule-ai/internal/issues) for the canonical submission path).
## Installing via config.yaml
@@ -171,7 +171,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` (repo location TBD post-2026-05-06 GitHub-org-suspension; check the [internal issue tracker](https://git.moleculesai.app/molecule-ai/internal/issues) for the canonical submission path) with a
complete skill package. Community skills are reviewed for security and
correctness before listing.
+2 -2
View File
@@ -11,7 +11,7 @@ Get a Molecule AI workspace running in under five minutes.
## 1. Install Molecule AI
```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
docker compose up -d
```
@@ -78,4 +78,4 @@ Or type `/ask what's our deployment status?` in your connected Discord channel.
- [Review the REST API reference](/docs/guides/org-api-keys)
- [Browse all guides](/docs/guides)
Explore the [GitHub repo](https://github.com/Molecule-AI/molecule-core) for self-hosting options, or visit [moleculesai.app](https://moleculesai.app) for the hosted platform.
Explore the [Gitea repo](https://git.moleculesai.app/molecule-ai/molecule-core) for self-hosting options, or visit [moleculesai.app](https://moleculesai.app) for the hosted platform.
+22
View File
@@ -272,6 +272,28 @@ Regenerate from the canvas **Tokens** tab — a deleted workspace can't
be brought back; you'll get a new workspace + token pair. Update your
MCP config and restart your runtime.
### `Workspace <id> was deleted on the platform...` from `get_workspace_info`
Since [#2429](https://github.com/Molecule-AI/molecule-core/pull/2449),
`GET /workspaces/:id` returns **410 Gone** (not 200 + `status:"removed"`)
when the workspace has been deleted. The MCP wheel's `get_workspace_info`
tool surfaces this as a tailored error message:
```
Workspace <id> was deleted on the platform at <removed_at>.
Regenerate workspace + token from the canvas → Tokens tab.
```
This is the **startup-time** counterpart to the heartbeat-401 escalation
above. If you see it within seconds of starting your runtime (rather
than after ~60s of heartbeat failures), the workspace was already gone
when you connected — regenerate as instructed.
Audit-trail tools that intentionally want to inspect a removed workspace's
metadata (admin dashboards, "show me deleted workspaces" tooling) can
opt back into the legacy 200 + body shape via
`GET /workspaces/<id>?include_removed=true`.
### `claude mcp list` shows the new config but tools still 401
`/mcp` reconnect re-spawns the **cached** MCP config from session
+1 -1
View File
@@ -17,7 +17,7 @@ description: Run the full Molecule AI stack on your own infrastructure.
The fastest way to get Molecule AI running locally:
```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
./scripts/dev-start.sh
# Canvas: http://localhost:3000
@@ -237,4 +237,4 @@ Once your agent is connected to MCP, it stops being a chatbot with a scrollable
---
*Have questions or want to share what you're building with MCP? Open a discussion on [GitHub Discussions](https://github.com/Molecule-AI/molecule-core/discussions) or file an issue with the `enhancement` label.*
*Have questions or want to share what you're building with MCP? File an issue with the `enhancement` label on the [molecule-core issue tracker](https://git.moleculesai.app/molecule-ai/molecule-core/issues).*