Skip to main content

task-management

Create, assign, monitor, and close tasks across agents. Covers full task lifecycle — add, priority, dependencies, confirm-request, retry, cancel, bulk ops, and cross-agent search.

معلومات المصدر

المستودع
chenhg5/agencycli
آخر نشاط في المصدر
٩ يوليو ٢٠٢٦ في ٠٣:٥٤
لغة SKILL.md المكتشفة
الإنجليزية
النجوم
٢٣٨
التفرعات
٢٥

خيارات التثبيت

يُحدَّد Prompt الذي يراجع المصدر أولًا بشكل افتراضي. يمكنك التبديل إلى أمر مباشر أو تنزيل نسخة محلية.

مراجعة ملفات المصدر

اقرأ SKILL.md وأي ملفات مرافقة يعرضها SkillsMP قبل أن تقرر التثبيت.

عرض SKILL.md

SKILL.md
تعليمات المصدر · معاينة للقراءة فقط
name
task-management
description
Create, assign, monitor, and close tasks across agents. Covers full task lifecycle — add, priority, dependencies, confirm-request, retry, cancel, bulk ops, and cross-agent search.
# Skill: Task Management Use this skill when your role involves planning, delegating, and tracking work across agents. The agency workspace is at `$AGENCY_DIR`. --- ## Priority levels | Value | Label | When to use | |-------|----------|-------------| | 0 | critical | Blocking production / blocking other agents | | 1 | high | Should be picked up in the current cycle | | 2 | normal | Default — regular backlog work | | 3 | low | Nice-to-have, do when free | --- ## Create a task for an agent ```bash # Minimal agencycli --dir $AGENCY_DIR task add \ --project <project> --agent <agent> \ --title "Short title" \ --prompt "Detailed instructions for the agent..." # With priority and type agencycli --dir $AGENCY_DIR task add \ --project <project> --agent <agent> \ --title "Fix auth bug" \ --prompt "Reproduce with: curl -X POST /login with empty password. Root cause is in auth/validator.go." \ --priority 1 \ --type bug # With dependencies (task will not start until listed IDs are done) agencycli --dir $AGENCY_DIR task add \ --project <project> --agent <agent> \ --title "Deploy to staging" \ --prompt "Run: make deploy-staging" \ --depends-on <task-id-1> --depends-on <task-id-2> # With scheduling / nesting metadata agencycli --dir $AGENCY_DIR task add \ --project <project> --agent <agent> \ --title "Implement sub-feature" \ --prompt "..." \ --parent <parent-task-id> \ --due-date 2026-07-15 \ --estimate-duration 2h ``` ### Task metadata fields | Field | CLI flag | Notes | |-------|----------|-------| | Due date | `--due-date YYYY-MM-DD` | Deadline | | Estimate | `--estimate-duration 30m` | Go duration (`30m`, `2h`) | | Parent | `--parent <task-id>` | Sub-task nesting | | Labels | `--label` (repeatable) | Tags | | Started / finished | *(auto)* | Set when status → `in_progress` / terminal | ### Task types `feature` · `bug` · `chore` · `review` · `deploy` · `research` · `wakeup` · (custom string) --- ## Inspect task queues ```bash # All active tasks for one agent (sorted by priority) agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> # Filter by status agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> --status pending agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> --status in_progress # Include archived (completed / cancelled) tasks agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> --archived # Show full detail of a specific task (project + agent known) agencycli --dir $AGENCY_DIR task show <task-id> --project <project> --agent <agent> # Find a task anywhere by ID (no project/agent needed) agencycli --dir $AGENCY_DIR task find --id <task-id> ``` --- ## Update task fields ```bash # Only flags you pass are changed; project/agent auto-detected if omitted agencycli --dir $AGENCY_DIR task set <task-id> --priority 1 agencycli --dir $AGENCY_DIR task set <task-id> --status in_progress agencycli --dir $AGENCY_DIR task set <task-id> \ --due-date 2026-07-15 --estimate-duration 2h --parent <parent-task-id> agencycli --dir $AGENCY_DIR task set <task-id> --label bug --label urgent agencycli --dir $AGENCY_DIR task set <task-id> --due-date "" # clear due date agencycli --dir $AGENCY_DIR task set <task-id> --format json # print updated task ``` Updatable: `title`, `description`, `status`, `priority`, `type`, `summary`, `label`, `parent`, `due-date`, `estimate-duration`, `assignee`, `prompt` / `prompt-file`, `position`. Status changes auto-maintain `started_at` / `finished_at`. --- ## Monitor progress across agents To get an overview of all agents and their queue depths: ```bash agencycli --dir $AGENCY_DIR overview ``` To iterate agents and check queues programmatically: ```bash # List all agents in a project agencycli --dir $AGENCY_DIR list agents --project <project> # Then per agent agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> --status pending agencycli --dir $AGENCY_DIR task list --project <project> --agent <agent> --status in_progress ``` --- ## Task stats (throughput & efficiency) ```bash # Today by executor queue (default: all agents, grouped) agencycli --dir $AGENCY_DIR task stats --since today # One agent's queue agencycli --dir $AGENCY_DIR task stats --since today --project <project> --agent <agent> # By assignee field agencycli --dir $AGENCY_DIR task stats --since today --assignee <project>/<agent> agencycli --dir $AGENCY_DIR task stats --since 7d --by assignee # By label (evening summary: value / category buckets) agencycli --dir $AGENCY_DIR task stats --since today --by label:value agencycli --dir $AGENCY_DIR task stats --since today --by label:category agencycli --dir $AGENCY_DIR task stats --since today --label value:owner # List each finished task agencycli --dir $AGENCY_DIR task stats --since today --detail # JSON export (includes elapsedHuman, estimateHuman, etc.) agencycli --dir $AGENCY_DIR task stats --since today --format json ``` Metrics: success/failed/cancelled counts, sum of actual elapsed time (`started_at`→`finished_at`), sum of `estimate_duration`, coverage (tasks with estimates), and actual/estimate ratio. JSON uses human-readable durations (`elapsedHuman`: `14m32s`) instead of nanosecond integers. --- ```bash # Success agencycli --dir $AGENCY_DIR task done \ --id <task-id> --status success --summary "What was accomplished" # Failure agencycli --dir $AGENCY_DIR task done \ --id <task-id> --status failed --error "reason" ``` --- ## Request human confirmation (non-blocking) When an agent needs a human decision before continuing, it calls: ```bash agencycli --dir $AGENCY_DIR task confirm-request \ --id $TASK_ID \ --summary "One-line description of what needs approval" \ --action-item "Option A: reply 'approve'" \ --action-item "Option B: reply 'reject <reason>'" ``` The task is archived. The human responds via: ```bash agencycli --dir $AGENCY_DIR inbox list agencycli --dir $AGENCY_DIR inbox messages # view messages agencycli --dir $AGENCY_DIR inbox reply <msg-id> --body "approve" agencycli --dir $AGENCY_DIR inbox reject <task-id> --reason "out of scope" ``` The human's reply is sent as a message. The agent sees it on the next wakeup and continues via session memory. --- ## Escalate or delegate a task If a task is better suited for a different agent, cancel it and re-create for the target agent: ```bash # 1. Cancel the original agencycli --dir $AGENCY_DIR task cancel <task-id> --project <project> --agent <from-agent> # 2. Create for the new agent with transferred context agencycli --dir $AGENCY_DIR task add \ --project <project> --agent <to-agent> \ --title "<same title>" \ --prompt "<original prompt + re-delegation note>" ``` To notify the new agent with async context before the task runs: ```bash agencycli --dir $AGENCY_DIR inbox send \ --from <project>/pm \ --to <project>/<to-agent> \ --subject "Incoming task: <title>" \ --body "Extra context: ..." ``` --- ## Retry a failed task ```bash agencycli --dir $AGENCY_DIR task retry <task-id> \ --project <project> --agent <agent> ``` Optionally update the prompt before retrying: ```bash agencycli --dir $AGENCY_DIR task retry <task-id> \ --project <project> --agent <agent> \ --prompt "Updated instructions based on failure: ..." ``` --- ## Cancel tasks ```bash # Cancel a specific task agencycli --dir $AGENCY_DIR task cancel <task-id> \ --project <project> --agent <agent> # Emergency halt — cancel all pending tasks for all agents in a project agencycli --dir $AGENCY_DIR task stop-all \ --project <project> --all-agents # Cancel pending + in-progress for a single agent agencycli --dir $AGENCY_DIR task stop-all \ --project <project> --agent <agent> --include-running ``` --- ## Recurring tasks with cron Schedule a task to be automatically enqueued on a fixed schedule: ```bash agencycli --dir $AGENCY_DIR cron add \ --project <project> --agent <agent> \ --id weekly-review \ --title "Weekly backlog review" \ --schedule "0 9 * * 1" \ --prompt "Review all open issues. Prioritise for the week. Update task queue accordingly." agencycli --dir $AGENCY_DIR cron list --project <project> --agent <agent> agencycli --dir $AGENCY_DIR cron disable weekly-review --project <project> --agent <agent> agencycli --dir $AGENCY_DIR cron enable weekly-review --project <project> --agent <agent> ``` Cron syntax: `minute hour day month weekday` (standard 5-field) --- ## Token usage and cost ```bash # One agent agencycli --dir $AGENCY_DIR task tokens --project <project> --agent <agent> # All agents in a project agencycli --dir $AGENCY_DIR task tokens --project <project> --all-agents # Specific task agencycli --dir $AGENCY_DIR task tokens \ --project <project> --agent <agent> --task <task-id> ``` --- ## Task assignment decision guide | Situation | Action | |-----------|--------| | Clear scope, right agent | `task add` directly | | Scope unclear, need human input first | `inbox send --to human` to clarify, then `task add` | | Depends on another task being done first | `task add --depends-on <id>` | | Task failed once | `task retry` with updated prompt | | Wrong agent received the task | Cancel + re-create for correct agent | | Repeated recurring work | `cron add` with a schedule | | Human must approve before agent proceeds | Agent calls `task confirm-request` | | Need to change title/priority/due date/parent mid-flight | `task set <id> --<field> ...` | | Review throughput / efficiency for a person or agent | `task stats --since today [--assignee A]` | | Evening summary by value/category labels | `task stats --since today --by label:value` or `--by label:category` | | Need to know which agent owns a task ID | `task find --id <id>` |
عرض على GitHub