The project's README from github.com/HKUDS/OpenSpace. As one markdown file: README.md.
Your Skills Keep Growing. OpenSpace Helps You Retrieve, Evaluate, and Evolve with Every Run
One Skill Management Layer to Power Them All — Claude Code, Codex, OpenClaw, Hermès, nanobot.
As your agent’s skill grows, can your agents:
OpenSpace manages the full lifecycle of your agent skills:
The right skill for every task. Proven by real outcomes. Improved with every run.
![]() |
![]() |
![]() |
|
🌐 One Skill Library Across All Your Agents Your agents can retrieve, import, and reuse skills from one shared library—without rebuilding the same capabilities for every tool. |
🔒 Your Skills, Your Data, Your Infrastructure Deploy OpenSpace privately and keep your workflows, data, and reusable skill assets fully under your own control. |
📈 Self-Evolving Skills, Proven by Real Outcomes Use real task outcomes to keep what works, improve what falls short, and confidently retire what no longer delivers value. |
One place to retrieve, evaluate, share, and evolve skills across all your agents.
2026-07-04 📊 Skill quality summaries now visible while browsing v2 skills: package and skill detail views show usage-quality summaries; public lineage pages display redacted placeholders for unavailable content.
2026-07-03 🔎 Package skill search and task-trace uploads are now first-class v2 flows: package pages search skills directly, and task traces can be validated, stored, and uploaded idempotently as quality evidence.
2026-06-25 🌐 The v2 cloud path became more stable for public browsing and private skill access: public pages, private skill endpoints, frontend / backend routes, and TLS access are now checked together.
2026-06-19 🌐 Public v2 pages can be read without login: anonymous visitors can browse public skills, existing users gained an agent bootstrap path, and search / recall services were restored.
2026-06-18 🧭 The v2 cloud experience became more complete: package, group, profile, and agent pages were assembled into a cleaner package-browser flow with a more structured import path.
2026-06-03 🪟 Windows communication gateway startup became more reliable: process liveness checks received a follow-up fix for users running message adapters on Windows.
2026-06-02 🚀 Release v2 introduced the new local experience: the branch added the v2 README, dashboard, TUI, runtime services, sandboxing, memory, scheduler, skill evidence, evolution, triggers, and related assets.
2026-05-27 🪟 Communication gateway Windows compatibility improved: gateway runtime PID checks switched to Windows API handling on Windows while keeping the Unix fallback, fixing gateway startup failures on Windows.
2026-05-14 🧭 Skill libraries, group detail, and lineage history expanded: users gained owned-skill library pages, shared-skill views inside groups, and retained lineage history for inactive relationships.
2026-05-13 📈 Package and skill detail pages became safer to inspect: private data stays hidden when access is unavailable, and task-step records make skill/package views more useful for quality analysis.
2026-05-13 ⏱️ Long shell work became more reliable: timeouts now clean up subprocess trees, post-task analysis is bounded, and skill-search cache writes are safer.
2026-05-10 📦 V1 skills can map into v2 identity records: package skill search respects lineage visibility, and individual skill bundles can be pulled directly.
2026-05-09 👥 V2 group sharing shipped: group-scoped skill sharing became available while v1 and v2 sharing paths stay separated.
2026-05-01 🏗️ Legacy skill collections became easier to move into the v2 hierarchy: package migration and synthesis tooling added deterministic sampling, safer agent loops, and resume checks.
2026-04-29 📡 Search and package pull started producing quality records: v2 added telemetry-backed search, package pull, skill-use sessions, and evolution telemetry for later quality summaries.
2026-04-22 🛡️ Upload, share, and promote flows became safer to retry: duplicate and replay handling was hardened so repeated requests behave predictably.
2026-04-20 🔎 V2 search gained lexical recall and semantic reranking: package and skill discovery improved beyond exact text matching.
2026-04-18 🛡️ Sharing and promote-to-public became more predictable: group / public visibility changes gained idempotent behavior and safer access checks.
2026-04-18 ⚡ Local skill search became much faster after warm-up: search_skills now reuses the SkillRanker embedding cache and refreshes embeddings when skill text changes.
2026-04-17 🔄 Shared package indexes became more reliable after uploads and sharing changes: background rebuild and recovery paths now keep package search data in sync.
2026-04-16 🧬 Evolution candidate status became trackable: OpenSpace can record candidate processing state, and macOS window / screenshot features no longer get disabled just because atomacos is unavailable.
2026-04-10 🧩 CAPTURED skill placement was corrected: CAPTURED skills now write back to the correct host-agent skill directory.
2026-04-09 💬 WhatsApp and Feishu adapters shipped: OpenSpace added session management, attachment caching, allowlists, and private-safe cloud upload compatibility for external message workflows.
2026-04-07 🌐 OpenSpace MCP now supports standalone SSE and streamable HTTP startup, making it easier for remote hosts to connect over HTTP instead of stdio and bypass stdio-bound MCP server timeout bottlenecks. See the host integration guide for setup details.
2026-04-06 🛠️ Fixed multiple runtime issues across grounding, MCP serving, skill evolution, and persistence, improving execution stability and recovery in long-running workflows.
2026-04-05 🧭 Cleaned up LLM credential resolution: centralized .env loading, improved host config auto-detection, and made provider-native env handling more consistent.
2026-04-03 🚀 Released v0.1.0 — Skill quality monitoring: structural patterns extracted from high-quality skills now evaluate every new submission daily. Faster, more relevant cloud search. Production-grade vertical skill clusters emerging organically from the community. Frontend now supports Chinese (zh) i18n.
2026-04-02 ⚡ Cloud search upgraded for higher relevance and lower latency.
2026-03-31 🛡️ Security hardening: hardened zip extraction and import_skill against path traversal. CLI now respects OPENSPACE_MODEL and OPENSPACE_LLM_* env vars; MiniMax compatibility; workflow ID collision fixes.
2026-03-29 🔒 Pinned litellm to <1.82.7 to avoid PYSEC-2026-2 supply-chain attack.
2026-03-28 🔧 Idempotent skill registration — register_skill_dir now returns existing SkillMeta for already-registered skills. Updated OpenClaw setup docs.
2026-03-27 🪟 Fixed stdio deadlock on Windows; improved evolver confirmation parsing with stem-style keyword matching.
2026-03-26 🌱 Dynamic skill directory re-scanning on each call, lightweight local skill search, and streamlined documentation.
2026-03-25 🎉 OpenSpace is now open source!
When an AI agent performs poorly, the problem is not always the model. Sometimes, it simply fails to:
This problem becomes more serious as your skill library grows. With hundreds or thousands of skills, more choices can make the right skill harder to find.
Today’s agents can use skills—but they still struggle to manage them:
Agents don’t just need more skills. They need to retrieve, evaluate, manage, and evolve them.
OpenSpace is the Skill Management Layer for AI Agents—helping them find the right skills, verify what works, and evolve your agents through real-world tasks.
https://github.com/user-attachments/assets/1c6b1b44-b207-491b-ad23-0f0591c17e0a
OpenSpace plugs into your agent as skills.
v1 enabled agents to learn from tasks, evolve skills, and share experience.
v2 introduced the missing management and quality layer—so skills are continuously evaluated, improved, and shared with evidence instead of simply being uploaded and forgotten.
OpenSpace gives agents four practical capabilities to manage the full skill lifecycle—from execution and evaluation to improvement and reuse.
Stop guessing which skills work. Measure them through actual outcomes.
Skills earn trust by delivering results—not by looking good in a file.
Skills should improve through experience, without creating uncontrolled changes.
Let skills adapt to the real world—while keeping every change reviewable and controlled.
Your skills run locally. Your data never has to leave.
The cloud is for skill discovery. Your machine is for agent execution. The line never blurs.
Run the agent in a way that leaves useful evidence.
OpenSpace does not just run your tasks — it turns every run into evidence, and every piece of evidence into a skill worth trusting.
❌ Current Agents
✅ OpenSpace v1
✅ OpenSpace v2
With the same frozen Hy3 backbone, OpenSpace improves from a 65.2% Cold run to a 78.7% Warm run as its trusted skill library evolves.
🌐 Just want to explore? Browse community skills, evolution lineage at open-space.cloud — no installation needed.
git clone https://github.com/HKUDS/OpenSpace.git && cd OpenSpace
pip install -e .
openspace-mcp --help # verify installation
[!TIP] Slow clone? The
assets/folder (~50 MB of images) makes the default clone large. Use this lightweight alternative to skip it:git clone --filter=blob:none --sparse https://github.com/HKUDS/OpenSpace.git cd OpenSpace git sparse-checkout set --no-cone '/*' '!/assets/' pip install -e .
Choose your path:
Works with any host that can launch an MCP server and read skills (SKILL.md). OpenSpace ships host helpers for OpenClaw and nanobot, and can be wired manually from Claude Code, Codex, Cursor, or other MCP-capable agents.
For your agent
Open your coding agent and paste:
Install OpenSpace for this host agent.
If an OpenSpace repo is already open, use its current repository root as
OPENSPACE_WORKSPACE. Otherwise, clone it first:
`git clone https://github.com/HKUDS/OpenSpace.git && cd OpenSpace`
First read:
- README.md -> Quick Start -> Path A: For Your Agent
- openspace/host_skills/README.md -> exact setup for this host
- openspace/.env.example only if model or cloud credentials are needed
Then:
1. Verify a Python 3.12+ interpreter is available. If `openspace-mcp --help`
is unavailable, install OpenSpace from this repo with that interpreter:
`python -m pip install -e .`
2. Detect this host agent's MCP config file/format and local skill directory.
Preserve existing config and unrelated MCP servers.
3. Configure an MCP server named `openspace`. Prefer stdio for local use:
`command: openspace-mcp`. Use streamable HTTP only if this host cannot use
stdio or needs a standalone/remote server.
4. Set `OPENSPACE_WORKSPACE` to the absolute repo root and
`OPENSPACE_HOST_SKILL_DIRS` to the host agent's skill directory.
5. Copy `openspace/host_skills/delegate-task` and
`openspace/host_skills/skill-discovery` into the host agent's skill directory.
6. If cloud access is required, use `openspace-cloud-auth bootstrap-agent-key`.
Do not ask me to paste secrets into chat; stop if a required credential or
email is missing.
7. Reload or restart the host agent if its MCP/skill system requires it.
Do not report success until `openspace-mcp --help` works, the MCP client can see
OpenSpace too