Go to file
infra-sre d65dae37c6
Some checks failed
ci / mirror-guard (pull_request) Failing after 5s
Secret scan / Scan diff for credential-shaped strings (pull_request) Successful in 7s
ci: rename .github/workflows -> .gitea/workflows (post-suspension sweep)
GitHub org Molecule-AI was suspended 2026-05-06; SCM moved to Gitea
(git.moleculesai.app). The wholesale `git push --mirror` migration left
workflow files under .github/workflows/, which Gitea Actions does NOT
read - it reads .gitea/workflows/ exclusively.

This rename + the cross-repo `uses:` path rewrite are the minimum
edits to make CI fire on this repo again. The workflow content itself
is not modified (other than the path rewrites and lowercasing of the
old `Molecule-AI` org reference to the post-suspension `molecule-ai`).

Refs: feedback_post_suspension_migration_must_sweep_dormant_repos
2026-05-10 14:12:33 -07:00
.gitea/workflows ci: rename .github/workflows -> .gitea/workflows (post-suspension sweep) 2026-05-10 14:12:33 -07:00
molecule_runtime feat(mcp): add HTTP/SSE transport to a2a_mcp_server.py 2026-05-10 07:24:59 +00:00
tests chore(precommit): add sk-cp- MiniMax pattern (F1088 retroactive fix); bump 0.1.16 → 0.1.17 2026-04-26 21:43:24 -07:00
.gitignore chore: gitignore credentials for molecule-ai-workspace-runtime 2026-04-16 09:18:48 -07:00
CONTRIBUTING.md fix(post-suspension): migrate github.com/Molecule-AI refs to git.moleculesai.app (Class G #168) 2026-05-07 13:02:35 -07:00
pyproject.toml fix(deps): enforce a2a-sdk>=1.0.0 to match code comment and KI-009 migration 2026-05-10 07:05:06 +00:00
README.md fix(post-suspension): migrate github.com/Molecule-AI refs to git.moleculesai.app (Class G #168) 2026-05-07 13:02:35 -07:00

molecule-ai-workspace-runtime

⚠️ This repo is a publish artifact, not the source of truth.

Runtime code lives in Molecule-AI/molecule-coreworkspace/. This repo is regenerated and republished from there by the publish-runtime workflow on every runtime-v* tag.

Don't edit files here directly. PRs against this repo will not be merged. Open them against molecule-core instead.


Shared Python runtime infrastructure for all Molecule AI agent adapters.

This package provides the core machinery every Molecule AI workspace container needs:

  • A2A server — registers with the platform, heartbeats, serves A2A JSON-RPC
  • Adapter interfaceBaseAdapter / AdapterConfig / SetupResult
  • Built-in tools — delegation, memory, approvals, sandbox, telemetry
  • Skill loader — loads and hot-reloads skill modules from /configs/skills/
  • Plugin system — per-workspace + shared plugin discovery and install
  • Config / preflight — YAML config loading with validation

Installation

pip install molecule-ai-workspace-runtime

Adapter discovery

The runtime discovers adapters in two ways:

  1. ADAPTER_MODULE env var (standalone adapter repos):

    ADAPTER_MODULE=adapter molecule-runtime
    

    The runtime imports adapter and calls adapter.Adapter.

  2. Subdirectory scan (monorepo local dev): falls back to scanning molecule_runtime/adapters/<runtime>/ and importing the matching subdir's Adapter class.

Contributing

Don't open PRs here. Send your change to Molecule-AI/molecule-core under the workspace/ directory. After your PR merges to main and a runtime-v* tag is pushed, the publish-runtime workflow rebuilds this mirror + uploads the new wheel to PyPI.

See docs/workspace-runtime-package.md for the full publishing flow.

Why this split

The runtime needs to ship as a PyPI artifact (so the 8 workspace template images can pip install it), but it also needs to evolve in lock-step with the platform's wire protocol (queue shape, A2A metadata, event payloads). A monorepo edit + auto-publish pipeline gives both: atomic cross-cutting changes, plus a clean PyPI release on every tag.

For the back-history of why this repo previously was the source of truth and the drift that caused: see issue Molecule-AI/molecule-core#2103.