编程 CLI
- 作者仓库星标 0
- 作者仓库 skills-registry
Coding CLI Delegation
When the Manager assigns you a task with a "## Coding CLI Mode" section in spec.md, you do not write the code yourself. Instead, you:
- Understand the task deeply
- Prepare the workspace
- Generate a precise coding prompt
- Delegate execution to the Manager's CLI tool
- Review the result
When to Use This Skill
Check spec.md for the task. If it contains ## Coding CLI Mode, use this skill for all code changes.
Step-by-Step Workflow
1. Prepare the Workspace
Set up the workspace directory under the shared filesystem:
workspace="/root/hiclaw-fs/shared/tasks/{task-id}/workspace"
mkdir -p "$workspace"
# Clone a repo (example)
git clone <repo-url> "$workspace"
# Or copy existing code
cp -r /path/to/source "$workspace/"
Constraint: The workspace path must be under /root/hiclaw-fs/. The Manager accesses the same path via MinIO mirror.
2. Push Workspace to MinIO
Before sending the coding-request, push all workspace files so the Manager can access them:
mc mirror "/root/hiclaw-fs/shared/tasks/{task-id}/workspace/" \
${HICLAW_STORAGE_PREFIX}/shared/tasks/{task-id}/workspace/
2b. Check for Processing Marker
Before modifying the workspace or sending a coding-request, check if the task directory is being processed:
# Sync latest state from MinIO
mc mirror "${HICLAW_STORAGE_PREFIX}/shared/tasks/{task-id}/" \
"/root/hiclaw-fs/shared/tasks/{task-id}/"
# Check for processing marker
if [ -f "/root/hiclaw-fs/shared/tasks/{task-id}/.processing" ]; then
echo "Task directory is being processed. Wait for manager to complete."
# Do NOT send coding-request yet; wait and retry
fi
If a .processing marker exists, wait for the Manager to complete their operation before sending your request.
3. Generate a High-Quality Prompt
A good prompt includes:
- Target files: exact paths and relevant line numbers
- Specific changes: describe what to change, not just why
- Context: existing code structure, dependencies, interfaces
- Acceptance criteria: how to verify the change is correct
- Constraints: languages, frameworks, style conventions, things NOT to change
Example of a good prompt:
In the file `src/server/handlers/auth.go`, implement the `RefreshToken` function (currently a stub at line 142).
Requirements:
- Validate the incoming refresh_token from the request body (field name: "refresh_token")
- Look up the token in the database using `db.FindRefreshToken(ctx, token)` (already imported)
- If valid, generate a new access token with `auth.GenerateAccessToken(userID)` and return it as JSON: {"access_token": "<token>", "expires_in": 3600}
- If invalid or expired, return HTTP 401 with body: {"error": "invalid_refresh_token"}
- Follow the existing error handling pattern used in `LoginHandler` (line 89)
Do not change any other files.
Signs of a weak prompt (avoid):
- "Fix the auth system" (too vague)
- "Improve performance" (no specific target)
- "Add tests" (no specification of what to test or where)
4. Send coding-request: to Manager
Send in your Worker Room (or Project Room, wherever the task was assigned):
@manager:DOMAIN task-{task-id} coding-request:
workspace: /root/hiclaw-fs/shared/tasks/{task-id}/workspace
---PROMPT---
{your detailed coding prompt here}
---END---
Note: workspace can be any subdirectory under /root/hiclaw-fs/, e.g. a cloned git repo:
workspace: /root/hiclaw-fs/shared/tasks/{task-id}/workspace/my-repo
5. Wait for Manager's Response
The Manager will run the CLI tool and respond with either:
Success — coding-result:
@{your-name}:DOMAIN task-{task-id} coding-result:
CLI 工具已完成编码。请同步工作目录并 review 变更...
Failure — coding-failed:
@{your-name}:DOMAIN task-{task-id} coding-failed:
CLI 工具执行失败...你生成的提示词已保存于:/root/hiclaw-fs/shared/tasks/{task-id}/coding-prompts/
6a. On coding-result:
# Sync changes from MinIO
hiclaw-sync
# Review what changed
cd /root/hiclaw-fs/shared/tasks/{task-id}/workspace
git diff # if it's a git repo
# or: check coding-cli-logs/ for CLI output
Review the changes:
- Verify they match the task requirements
- Check for obvious errors or unintended modifications
- Run tests if applicable
Report to Manager:
@manager:DOMAIN task-{task-id} completed:
Changes reviewed and verified. {Brief summary of what was implemented.}
6b. On coding-failed:
Implement the coding task yourself using your normal approach. When done, report:
@manager:DOMAIN task-{task-id} completed:
Implemented manually (CLI delegation failed). {Brief summary.}
Multiple Rounds
If one CLI delegation doesn't fully complete the task (e.g., the first run fixed the bug but tests still fail), you can send another coding-request: with a follow-up prompt. Sync the workspace first to get the latest state before generating the next prompt.
Tips for Better Prompts
- Be surgical: "change line 47 from X to Y" beats "fix the login function"
- Provide imports: if the change requires new imports, specify them
- Show the pattern: reference existing code in the same file as the style guide
- Limit scope: tell the CLI "only modify file X, do not change tests or other files"
- Verify command: include how to check correctness, e.g. "run
go test ./...to verify"
<!-- tomevault:4.0:skill_md:2026-05-23 -->Source: agentscope-ai/HiClaw — distributed by TomeVault.
- 流狐分类
- AI 智能
- 作者声明 Agent
- 未找到明确声明;不据此推断已兼容或已测试
- 静态检查
- 88 / 100 · 启发式扫描,不代表运行安全
- 作者 / 版本 / 许可
- @tomevault-io · 未声明 license
- 流狐 Token 估算
- 低消耗
- 流狐接入估算
- 需简单配置
- 是否需要外部 API Key
- 需要 · Vendor-specific
- 检测到的系统要求
- 未声明
- 底层运行要求
- 未声明
- 检测到的文件与系统行为
-
- 只读
- 允许写入 / 修改
- Shell 执行
- 检测到的网络行为
- 允许外网请求
- 安装命令数
- 无(仅作为资料)
档案由构建时根据 SKILL.md 与安装命令自动衍生,可能与作者实际意图存在差异。
需要注意: 未限定 allowed-tools,默认拥有全部工具权限。
# 6a. On coding-result:
# Sync changes from MinIO
hiclaw-sync
# Review what changed
cd /root/hiclaw-fs/shared/tasks/{task-id}/workspace
git diff # if it's a git repo
# or: check coding-cli-logs/ for CLI output Step-by-Step Workflow
Before modifying the workspace or sending a coding-request, check if the task directory is being processed: If a .processing marker exists, wait for the Manager to complete their operation before sending your request.
# Coding CLI Delegation
When the Manager assigns you a task with a "## Coding CLI Mode" section in `spec.md`, you do **not** write the code yourself. Instead, you:
1. Understand the task deeply
2. Prepare the workspace
3. Generate a precise coding prompt
4. Delegate execution to the Manager's CLI tool
5. Review the result
---
## When to Use This Skill
Check `spec.md` for the task. If it contains `## Coding CLI Mode`, use this skill for all code changes.
---
## Step-by-Step Workflow
### 1. Prepare the Workspace
Set up the workspace directory under the shared filesystem:
```bash
workspace="/root/hiclaw-fs/shared/tasks/{task-id}/workspace"
mkdir -p "$workspace"
# Clone a repo (example)
git clone <repo-url> "$workspace"
# Or copy existing code
cp -r /path/to/source "$workspace/"
```
**Constraint**: The workspace path **must** be under `/root/hiclaw-fs/`. The Manager accesses the same path via MinIO mirror.
### 2. Push Workspace to MinIO
Before sending the coding-request, push all workspace files so the Manager can access them:
```bash
mc mirror "/root/hiclaw-fs/shared/tasks/{task-id}/workspace/" \
${HICLAW_STORAGE_PREFIX}/shared/tasks/{task-id}/workspace/
```
### 2b. Check for Processing Marker
Before modifying the workspace or sending a coding-request, check if the task directory is being processed:
```bash
# Sync latest state from MinIO
mc mirror "${HICLAW_STORAGE_PREFIX}/shared/tasks/{task-id}/" \
"/root/hiclaw-fs/shared/tasks/{task-id}/"
# Check for processing marker
if [ -f "/root/hiclaw-fs/shared/tasks/{task-id}/.processing" ]; then
echo "Task directory is being processed. Wait for manager to complete."
# Do NOT send coding-request yet; wait and retry
fi
```
… 作者原文负责流程事实;流狐只索引当前章节、要点、文件与命令。
章节 -> When to Use This Skill → Step-by-Step Workflow → 1. Prepare the Workspace → 2. Push Workspace to MinIO → 2b. Check for Processing Marker → 3. Generate a High-Quality Prompt
要点 -> not · Constraint · must · Target files · Specific changes · Context · Acceptance criteria · Constraints
文件/命令 -> spec.md · ## Coding CLI Mode · /root/hiclaw-fs/ · .processing · src/server/handlers/auth.go · RefreshToken · db.FindRefreshToken(ctx, token) · auth.GenerateAccessToken(userID)
内容 SHA-256 -> 2c38e574c05e
方法与流程
适用与边界
原文中的明确线索
spec.md、## Coding CLI Mode、/root/hiclaw-fs/、.processing、src/server/handlers/auth.go、RefreshToken、db.FindRefreshToken(ctx, token)、auth.GenerateAccessToken(userID)