← 返回
未分类 中文

Deep Coding

Deep coding multi-agent development system. Use when the user wants to build software projects using the Orchestrator to Builder to Reviewer workflow, mentio...
深度编码多智能体开发系统。当用户想通过编排器→构建器→审查者工作流构建软件项目时使用,...
extraterrest extraterrest 来源
未分类 clawhub v0.0.3 1 版本 99783.5 Key: 无需
★ 0
Stars
📥 461
下载
💾 0
安装
1
版本
#latest

概述

System Dependencies

This skill requires the following system capabilities:

DependencyPurposeRequired?Check
--------------------------------------
python3Dashboard server (port 8765)Yespython3 --version
node / npmProject builds, PlaywrightFor web projectsnode -v, npm -v
playwrightE2E browser testing (Reviewers)Optional, for E2Enpx playwright --version
ACP runtimeBuilder/Reviewer agent executionOptional, see belowPlatform-specific

No specific coding agent is required. The default configuration uses ACP + qoder, but you can use any available agent runtime. See First-Time Setup for configuration options.

Security Notes

⚠️ Dashboard server (server.py):

  • Binds to 127.0.0.1:8765 only — never expose to public network
  • Serves files from the project directory — verify no secrets (API keys, tokens) are present
  • Includes path traversal protection via safe_path() check

⚠️ Code execution:

  • Builders and Reviewers will execute and run arbitrary project code
  • For web projects: HTTP server serves project files locally
  • E2E tests use Playwright to open and interact with pages in a real browser
  • Only run on machines where executing generated code is acceptable
  • Use containers/VMs for untrusted projects

First-Time Setup

When a user installs this skill for the first time, guide them through the following steps:

Step 1: Create Project Workspace

mkdir -p my-projects/{requests/done,logs}
cp <skill-dir>/assets/server.py my-projects/
cp <skill-dir>/assets/dashboard.html my-projects/
cd my-projects

This creates the project root with all required directories and the Dashboard assets.

Step 2: Configure Orchestrator Agent

Create an Orchestrator agent in your openclaw.json (or equivalent config):

{
  "id": "orchestrator",
  "name": "Orchestrator",
  "workspace": "<your-path>/my-projects"
}

Give the Orchestrator a heartbeat prompt that references references/orchestrator-rules.md.

Step 3: Configure Builder Agent(s)

Choose your preferred coding agent(s). Options:

OptionConfigurationNotes
-----------------------------
ACP + qoderruntime: "acp", agentId: "qoder"Default, requires acpx plugin
ACP + clauderuntime: "acp", agentId: "claude"Alternative ACP agent
ACP + codexruntime: "acp", agentId: "codex"OpenAI Codex
Subagent runtimeruntime: "subagent"Built-in, no extra setup
PTY coding agentsexec with PTYClaude Code, Codex CLI, etc.

The Orchestrator rules (references/orchestrator-rules.md) default to ACP + qoder, but you should update the agent ID to match your setup.

Recommended: Set up a 3-tier fallback chain

  1. Primary: Your preferred coding agent (e.g., qoder, claude)
  2. Fallback 1: Alternative ACP agent (e.g., claude if qoder is 429'd)
  3. Fallback 2: Built-in subagent runtime

Step 4: Allow Tool Access

Ensure your Orchestrator and Builder agents have access to:

  • read, write, edit — for file operations
  • exec — for running builds, tests, servers
  • sessions_spawn, sessions_send, sessions_list — for agent communication
  • subagents — for managing spawned agents

In openclaw.json:

{
  "tools": {
    "sessions": {
      "visibility": "all"
    },
    "agentToAgent": {
      "enabled": true,
      "allow": ["main", "orchestrator", "qoder-dev", "claude-dev"]
    }
  },
  "acp": {
    "enabled": true,
    "backend": "acpx",
    "defaultAgent": "qoder",
    "allowedAgents": ["qoder", "claude", "codex"]
  }
}

Step 5: Choose Your LLM

Set the default model for the Orchestrator and agents:

{
  "agents": {
    "defaults": {
      "model": {
        "primary": "your-provider/your-model"
      }
    }
  }
}

For coding agents (qoder, claude, codex), they use their own model — no LLM config needed.

Step 6: Verify Setup

cd my-projects
python3 server.py
# Open http://localhost:8765 — should show empty dashboard

Harness Deep Coding System

Multi-agent development: Orchestrator decomposes → Builders code → Reviewers verify → E2E test → deliver.

Roles

User-Facing Agent (you)

  • Gather requirements through conversation
  • Create request JSON at projects/requests/TIMESTAMP.json (use actual timestamp)
  • Notify Orchestrator via sessions_send to agent:orchestrator:main
  • Report progress every heartbeat when project is active

Orchestrator

  • Decomposes project into 2-4 modules + mandatory integration-test
  • Creates project-state.json with module states
  • Spawns Builders and Reviewers via sessions_spawn
  • Monitors progress via heartbeat, handles failures
  • Runs E2E smoke test after bugfix/feature accepted

Builder

  • Codes independently per module
  • Uses configured agent runtime (ACP subagent, or fallback)
  • Writes to logs/builder-MODULE.log (APPEND, UTC+8)

Reviewer

  • MUST actually test the application, not just read code
  • For web projects: serve via HTTP, verify in browser
  • Writes detailed review results to review_history
  • Writes to logs/reviewer-MODULE.log (APPEND, UTC+8)

User-Facing Workflow

1. Gather Requirements

  • What to build, key features, constraints, tech stack
  • Break into 2-4 logical modules (data → core → render → UI)
  • Auto-add final integration-test module depending on ALL others

2. Create Request

{
  "name": "Project Name",
  "description": "What it does",
  "owner": "user name",
  "tags": ["web", "game"]
}

Path: /requests/TIMESTAMP.json (use actual timestamp)

3. Notify Orchestrator

Send to agent:orchestrator:main:

  • Request file path
  • Instructions to decompose into modules
  • Create project-state.json
  • Spawn Builder for first module
  • Use per-agent logs, APPEND mode, UTC+8
  • Run E2E smoke test after acceptance

4. Progress Reporting

Read project-state.json every heartbeat:

  • Report completion % and module states
  • Announce 100% completion

Project Structure

All paths are relative to your project root directory:

<project-root>/
├── projects-registry.json          ← All projects overview
├── server.py                       ← Dashboard server (port 8765)
├── dashboard.html                  ← Dashboard UI
├── requests/
│   └── done/                       ← Processed requests
├── logs/                           ← Agent activity logs
├── PROJECT-SLUG/
│   ├── project-state.json           ← Module states, review history
│   ├── logs/
│   │   ├── orchestrator.log         ← Orchestrator decisions
│   │   ├── builder-MODULE.log       ← Each Builder writes own file
│   │   └── reviewer-MODULE.log      ← Each Reviewer writes own file
│   └── SOURCE CODE (generated files)

See references/architecture.md for full project structure, module lifecycle, and dashboard details.

Module Lifecycle

pending → in_progress → ready_for_review → in_review → accepted
                        ↑                    |
                        └── needs_revision ──┘

Critical Rules

RuleDescription
-------------------
One action per heartbeatNever do multiple spawns in one cycle
Spawn Reviewer immediatelyNever leave ready_for_review more than one cycle
Reviewer writes resultsMust write to review_history array, never just change state
E2E smoke testMandatory for bugfixes and new features before delivery
No archive copiesDO NOT copy project-state.json to archive/

Common Issues

IssueFix
------------
429 rate limitWait, then re-spawn. Do NOT self-accept
Missing E2EBugfix/feature accepted → must spawn E2E Reviewer
Reviewer not spawnedCheck sessions_list, spawn if missing
Builder timeoutCheck if files exist, accept if complete
Archive duplicatesOrchestrator should NOT copy to archive/

Dashboard

Dashboard is included in assets/server.py and assets/dashboard.html.

Usage:

  1. Copy assets/server.py and assets/dashboard.html to your project root directory
  2. Run: python3 server.py
  3. Open: http://localhost:8765

Security: The server binds to 127.0.0.1 only and includes path traversal protection.

Features: project list, completion status, module states, agent activity timeline.

版本历史

共 1 个版本

  • v0.0.3 当前
    2026-05-03 07:11 安全 安全

安全检测

腾讯云安全 (Keen)

安全,无风险
查看报告

腾讯云安全 (Sanbu)

安全,无风险
查看报告

🔗 相关推荐

ai-agent

Find Skills

guipi888
场景驱动+关键词双模式技能发现工具。当用户用自然语言描述场景/需求(如"我想做一个海报""帮我分析股票"),或明确说"安装技能/find skills/找个skill"时,自动从官方内置、本地已安装、SkillHub、虾评、GitHub、C
★ 1,460 📥 515,280
dev-programming

Alibaba Cloud Model Setup

extraterrest
配置 OpenClaw 接入阿里云百炼(按量付费或编码计划),采用严格的交互式流程,支持 5 个站点选项和标志。
★ 1 📥 2,180
ai-agent

Self-Improving + Proactive Agent

ivangdavila
自我反思+自我批评+自我学习+自组织记忆。智能体评估自身工作、发现错误并持续改进。
★ 1,394 📥 322,402