dsh-codex-bridge
dsh-codex-bridge
Плагин DSH / MCP-сервер — позволяет клиентам MCP, таким как Codex, Claude Code, Cursor, использовать DSH в качестве внешнего возобновляемого под-агента.
flowchart LR
C[Codex / Claude Code / Cursor / any MCP client] -->|MCP SSE| B[DSH Bridge :3101]
B -->|spawn detached| S[Supervisor]
S -->|dsh --profile headless| W[DSH Worker]
S -->|持久化| F[(~/.dsh/tasks/)]Возможности
5 инструментов MCP:
dsh_task_start,dsh_task_poll,dsh_task_cancel,dsh_task_list,dsh_get_statusАсинхронная модель задач: запуск возвращается немедленно, опрос событий через курсор
Возобновляемость: перезапуск моста восстанавливает выполняющиеся задачи, устаревшие помечает как завершённые
Визуальная панель:
http://127.0.0.1:3101/agents— интерфейс с матовым стекломREST API: полный API управления задачами
SSE-поток: события задач в реальном времени
Безопасность: токен Bearer, только 127.0.0.1, ограничение рабочей директории
Related MCP server: agent-comm
Быстрый старт
# 1. Install as DSH plugin
dsh plugin --profile web add dsh-codex-bridge
# 2. Set token (optional, has dev default)
export DSH_CODEX_BRIDGE_TOKEN="your-32-char-token"
# 3. Start DSH
dsh web
# 4. Open dashboard
open http://127.0.0.1:3101/agentsИнструменты MCP
Инструмент | Описание |
| Запустить асинхронную задачу, возвращает taskId + dashboardUrl |
| Читать события инкрементально по курсору (≤64 КБ) |
| Отменить выполняющуюся задачу |
| Список всех задач со статусами |
| Состояние моста и статистика |
Конечный автомат
queued → running → succeeded
→ failed
→ timed_out
→ cancelled
→ orphanedКонфигурация Codex
[mcp_servers.dsh_agent]
url = "http://127.0.0.1:3101/sse"
bearer_token_env_var = "DSH_CODEX_BRIDGE_TOKEN"
startup_timeout_sec = 10
tool_timeout_sec = 45
enabled_tools = [
"dsh_task_start",
"dsh_task_poll",
"dsh_task_cancel",
"dsh_task_list",
"dsh_get_status"
]Конечные точки API
Метод | Путь | Описание |
GET |
| Список задач |
GET |
| Детали задачи |
POST |
| Создать задачу |
POST |
| Отменить задачу |
POST |
| Повторить задачу |
GET |
| Получить события (курсор) |
GET |
| Скачать артефакт |
GET |
| SSE-поток событий |
Панель управления
Панель управления по адресу http://127.0.0.1:3101/agents предоставляет:
Левая панель: список задач с фильтром по статусу
Центр: поток событий в реальном времени (stdout/stderr/status)
Правая панель: детали задачи (PID, тайминг, артефакты)
Тёмный/светлый режим: следует за системными настройками
Архитектура
dsh-codex-bridge/
├── lib/
│ ├── index.js DSH plugin entry + MCP server + REST API
│ ├── dashboard.html Visual dashboard (single-file HTML/CSS/JS)
│ └── supervisor.mjs Detached supervisor process
├── package.json
├── cordis.patch.yml
└── LICENSEЛицензия
MIT
Tool Schema Changelog
Recent tool additions, removals, and schema changes observed during successful MCP inspections.
Loading tool schema changelog…
This server cannot be deployed
Maintenance
Related MCP Connectors
MCP server that lets your AI assistant build and deploy apps, hosting each one at a live URL.
Hosted MCP server and Agent Skills for specs, engineering threads, and project memory.
MCP server for your apps' tools and custom tools, plus hosted AI agents and approval-gated workflows
Official MCP server for Agentwork — delegate tasks to AI agents with human-in-the-loop
Related MCP Servers
- AlicenseAqualityDmaintenanceA portable MCP server that provides a shared persistent working state for AI coding agents, managing tasks, plans, notepads, memory, and project rules across different tools like Claude Code, OpenCode, and Cursor.614 npmMIT
- AlicenseNot gradedqualityCmaintenanceMCP server that enables AI coding agents to communicate, share state, and coordinate work in real time via MCP tools or REST API.84 npm10MIT
- AlicenseCqualityCmaintenanceAn MCP server that gives AI coding assistants persistent memory across sessions with chain-based project tracking, tickets, and structured handoffs.42GPL 3.0
- AlicenseAqualityDmaintenanceA local MCP server that enables multiple AI coding tools to share structured project state (decisions, tasks, bugs) so they coordinate without re-explaining.5MIT