重构仓库目录为统一的 runtime 分层并清理历史 openclaw 残留。

本次迁移将网关/通道/工具/技能/脚本与协议资源集中到新结构,统一路径常量与脚本转发机制,减少顶层噪音并保证运行与测试行为一致。

Made-with: Cursor
This commit is contained in:
oliver 2026-04-25 01:24:23 +08:00
parent ba3836f00f
commit 4a23b715a2
498 changed files with 2760 additions and 2200 deletions

View file

@ -0,0 +1,17 @@
from .api import (
DEEPSEEK_BASE_URL,
DEEPSEEK_MODEL_CATALOG,
build_deepseek_model_definition,
build_deepseek_provider,
)
from .index import build_deepseek_plugin_entry, plugin_entry, register_deepseek_plugin
__all__ = [
"DEEPSEEK_BASE_URL",
"DEEPSEEK_MODEL_CATALOG",
"build_deepseek_model_definition",
"build_deepseek_plugin_entry",
"build_deepseek_provider",
"plugin_entry",
"register_deepseek_plugin",
]

View file

@ -0,0 +1,21 @@
from __future__ import annotations
DEEPSEEK_BASE_URL = "https://api.deepseek.com"
DEEPSEEK_MODEL_CATALOG = (
{"id": "deepseek-chat", "name": "DeepSeek Chat", "reasoning": False},
{"id": "deepseek-reasoner", "name": "DeepSeek Reasoner", "reasoning": True},
)
def build_deepseek_model_definition(model: dict) -> dict:
out = dict(model)
out["api"] = "openai-completions"
return out
def build_deepseek_provider() -> dict:
return {
"base_url": DEEPSEEK_BASE_URL,
"api": "openai-completions",
"models": [build_deepseek_model_definition(m) for m in DEEPSEEK_MODEL_CATALOG],
}

View file

@ -0,0 +1,29 @@
from __future__ import annotations
from .api import build_deepseek_provider
from oclaw.runtime.extensions.plugin_api import PluginEntry, define_plugin_entry
PROVIDER_ID = "deepseek"
def register_deepseek_plugin(api) -> None:
if hasattr(api, "register_provider"):
api.register_provider(
{
"id": PROVIDER_ID,
"label": "DeepSeek",
"provider": build_deepseek_provider(),
}
)
def build_deepseek_plugin_entry() -> PluginEntry:
return define_plugin_entry(
id=PROVIDER_ID,
name="DeepSeek Provider",
description="Bundled DeepSeek provider plugin",
register=register_deepseek_plugin,
)
plugin_entry = build_deepseek_plugin_entry()