blog
Write release blog posts for Chorus — problem-first narrative, bilingual (zh/en), following the project's editorial style.
Quick Task workflow — skip Idea→Proposal, create tasks directly, execute, and verify.
$ npx -y skills add Chorus-AIDLC/Chorus --skill quick-dev-chorus --agent claude-codeHow it fires
How this skill gets triggered: by you, by Claude, or both.
/quick-dev-chorusContext preview
The summary Claude sees to decide when to auto-load this skill.
Quick Task workflow — skip Idea→Proposal, create tasks directly, execute, and verify.
name: quick-dev-chorus description: Quick Task workflow — skip Idea→Proposal, create tasks directly, execute, and verify. license: AGPL-3.0 metadata: author: chorus version: "0.18.1" category: project-management mcp_server: chorus
Skip the full AI-DLC pipeline (Idea → Elaboration → Proposal → Approval) and create tasks directly. Ideal for small, well-understood work. The goal is for agents to **autonomously record their development work and verify task completion** through structured acceptance criteria.
> **Tool namespace:** Chorus tools are exposed by the connected MCP server under a `mcp__chorus__` prefix on dsh (e.g. `mcp__chorus__chorus_create_tasks`). Bare names are used below for readability — prepend `mcp__chorus__` when invoking. See `chorus` for the full rule.
---
The standard AI-DLC flow ensures quality through structured planning, but adds overhead that slows down small tasks. Quick Dev provides a lightweight alternative:
check explicit task:admin permission → create/claim → implement → self-check AC → submit → independent task review → verify or hand off
**Use Quick Dev when:**
**Do NOT use Quick Dev when:**
For complex work, use `idea-chorus` + `proposal-chorus` instead.
---
Call `chorus_checkin` and inspect the active agent's effective permissions. Set `canVerifyTask` to true **only** when `chorus_checkin().agent.permissions.task` explicitly contains `"admin"` (the `task:admin` permission).
Never infer verification authority from the agent's name, persona, preset/role label, task ownership, or tool availability. Do not prompt the user to choose: the explicit permission determines the terminal path.
---
| Tool | Purpose | |------|---------| | `chorus_create_tasks` | Create task(s) — omit `proposalUuid` for standalone Quick Task, or pass it to attach to an existing proposal | | `chorus_update_task` | Edit task fields (title, description, priority, AC, dependencies) or change status | | `chorus_claim_task` | Claim a task (open → assigned) | | `chorus_report_work` | Report progress with optional status update | | `chorus_report_criteria_self_check` | Self-check acceptance criteria before submitting | | `chorus_submit_for_verify` | Submit for admin verification | | `chorus_admin_verify_task` | **(admin only)** Verify task — use when self-verification is approved |
---
**`acceptanceCriteriaItems` is required** — `chorus_create_tasks` rejects any task without at least one non-blank criterion (and rejects the whole batch if any task is missing them). These are also the foundation for self-checking in Step 6. Write specific, testable criteria that you can objectively verify after development. Vague AC like "works correctly" defeats the purpose; prefer "returns 200 on GET /api/foo with valid token".
chorus_create_tasks({
projectUuid: "<project-uuid>",
tasks: [{
title: "Fix login redirect loop on Safari",
description: "Safari loses session cookie after redirect...",
priority: "high",
storyPoints: 1,
acceptanceCriteriaItems: [
{ description: "Login works on Safari 17+", required: true },
{ description: "Existing Chrome/Firefox behavior unchanged", required: true }
]
}]
})**`proposalUuid` is optional:**
chorus_claim_task({ taskUuid: "<task-uuid>" })Use `chorus_update_task` to refine the task after creation. Tasks always have AC (creation requires them), but **update them when your understanding changes during development**. Passing `acceptanceCriteriaItems` **replaces** the task's criteria with the provided non-empty set; omit the field to leave them unchanged (it cannot be used to clear AC).
chorus_update_task({
taskUuid: "<task-uuid>",
description: "Updated with more details...",
acceptanceCriteriaItems: [
{ description: "Login works on Safari 17+", required: true },
{ description: "Added CSRF token handling", required: true }
],
addDependsOn: ["<other-task-uuid>"]
})chorus_update_task({ taskUuid: "<task-uuid>", status: "in_progress" })**Sub-agents:** create your own session first (manual on dsh — see `develop-chorus`), then pass `sessionUuid` for attribution:
chorus_update_task({ taskUuid: "<task-uuid>", status: "in_progress", sessionUuid: "<session-uuid>" })chorus_report_work({
taskUuid: "<task-uuid>",
report: "Fixed Safari cookie issue:\n- Root cause: SameSite=Strict incompatible with redirect\n- Changed to SameSite=Lax\n- Commit: abc1234",
sessionUuid: "<session-uuid>"
})chorus_report_criteria_self_check({
taskUuid: "<task-uuid>",
criteria: [
{ uuid: "<ac-uuid-1>", devStatus: "passed", devEvidence: "Tested on Safari 17.2" },
{ uuid: "<ac-uuid-2>", devStatus: "passed", devEvidence: "Chrome/Firefox regression tests pass" }
]
})chorus_submit_for_verify({
taskUuid: "<task-uuid>",
summary: "Fixed Safari login redirect loop. Changed SameSite cookie policy. AllThe Agent Harness for AI-Human Collaboration, inspired by the AI-DLC (AI-Driven Development Lifecycle)
Repo: Chorus-AIDLC/Chorus
Write release blog posts for Chorus — problem-first narrative, bilingual (zh/en), following the project's editorial style.
Use when manually verifying a Chorus frontend change in a real browser — finding local login credentials, driving the running dev server with the Playwright…
Implement tasks from an OpenSpec change. Use when the user wants to start implementing, continue implementation, or work through tasks.
Archive a completed change in the experimental workflow. Use when the user wants to finalize and archive a change after implementation is complete.
Enter explore mode - a thinking partner for exploring ideas, investigating problems, and clarifying requirements. Use when the user wants to think through…
Propose a new change with all artifacts generated in one step. Use when the user wants to quickly describe what they want to build and get a complete proposal…