Sponsor Suno AI Music arrow_forward
Skill

Batch Complete

Completes or cancels multiple items at once — closes out features, cleans up old work, and archives completed workstreams. Use when a user says: close out this feature, complete everything under X, cancel this workstream, clean up old items, bulk complete, finish this feature, or archive completed work.

Type
Skill
GitHub stars
206
License
MIT
Repo last updated
Sep 27, 2026

What Batch Complete is

Batch Complete is a skill published in the jpicklyk/task-orchestrator repository on GitHub, which has about 206 stars. The repository describes itself as: “Server-enforced workflow discipline for AI agents. An MCP server providing persistent work items, dependency graphs, quality gates, and actor attribution. Schemas define what agents must produce — the server blocks the call if they don't. Works with any MCP-compatible client.”

A skill is a folder with a SKILL.md file: frontmatter with a name and a description, followed by instructions Claude follows. Claude loads a skill automatically when a task matches its description, and you can also run it directly with a slash and its name.

Skills work in Claude Code and in Claude Cowork, which makes Batch Complete a portable way to give Claude the same method everywhere.

How to install Batch Complete

Claude Code

  1. Download the batch-complete folder from the repository.
  2. Save it as ~/.claude/skills/<skill-name>/SKILL.md for all projects, or .claude/skills/<skill-name>/SKILL.md for one project.
  3. Claude loads it automatically when a task matches; you can also run it with / and its name.

Claude Cowork

  1. Zip the skill folder so SKILL.md sits at the top level of the folder.
  2. Open Customize → Skills, click +, then upload the ZIP.
  3. Start a task that matches the description, or call it by name with /.

New to extending Cowork? Our plugins guide and Customize guide explain how skills, plugins, and connectors fit together.

Inside the source file

An excerpt from claude-plugins/task-orchestrator/skills/batch-complete/SKILL.md, shared under the repository's MIT license. Read the full file on GitHub.

Close out a feature subtree, cancel an abandoned workstream, or clean up stale items in one operation. Handles gate checks, active-item warnings, and reports exactly what succeeded and what was skipped.

Step 1 — Identify Scope

Resolve $ARGUMENTS to a UUID via query_items search (operation="search", query=$ARGUMENTS, limit=5); if ambiguous, present matches via AskUserQuestion.

If $ARGUMENTS is empty, classify the request from conversation context:

  • Feature subtree: user mentions completing "everything under" a named item → search for that item, use rootId
  • Specific items: user lists names or IDs → collect each UUID, use itemIds
  • Cleanup: user wants to clear old/stale items → search by status or title fragment, collect UUIDs, use itemIds

If scope still cannot be determined, ask via AskUserQuestion: "Which item (or items) do you want to complete? Provide a root UUID, a title fragment, or a list of item IDs."

Step 2 — Preview Impact

Before executing, show the user what will happen. Call:

query_items(operation="overview", itemId="<rootId>")

Parse the child counts by role and present a preview table. Use the trigger chosen (or likely to be chosen) to set the action label — trigger="complete" shows "will be completed"; trigger="cancel" shows "will be cancelled":

◆ Impact Preview — "Auth System Feature"  [trigger: complete]
  ○ queue:    3 items (will be completed)
  ◉ work:     1 item  (active — will be force-completed)
  ◉ review:   1 item  (active — will be force-completed)
  ✓ terminal: 2 items (already done — will be skipped)
◆ Impact Preview — "Auth System Feature"  [trigger: cancel]
  ○ queue:    3 items (will be cancelled)
  ◉ work:     1 item  (active — will be force-cancelled)
  ◉ review:   1 item  (active — will be force-cancelled)
  ✓ terminal: 2 items (already done — will be skipped)

For itemIds path (no root item): call query_items(operation="get", itemId=" ") on each item and build the same role-grouped preview table from the individual results. For large lists (10+ items), use query_items(operation="search") with filters instead of individual get calls.

If any items are in work or review, warn the user that active work will be force-completed (gate checks still apply). Use AskUserQuestion with three options:

◆ 2 items are currently active (work or review).
  How would you like to proceed?
  1. Proceed — complete everything including active items
  2. Cancel active items instead — use trigger="cancel" (bypasses gates)
  3. Abort — leave everything as-is

Wait for the user's choice before continuing. Record whether to use trigger="complete" or trigger="cancel".

Step 3 — Gate Check

Skip this step if trigger="cancel" was already chosen in Step 2 — cancel bypasses all gates, so gate checking is unnecessary.

For trigger="complete", gate previewing is best-effort. complete_tree performs the definitive gate check during execution and reports any failures in its response. A lightweight pre-check is still useful to surface issues before committing — call get_context on each child from Step 2's results rather than on the root item (the root itself is not completed by complete_tree, only its descendants are):

get_context(itemId="<child-uuid>")   ← repeat for each child listed in Step 2

If any child's gate status shows missing required notes, display them:

⊘ Gate Warnings (preview — definitive check runs at execution):
  "Implement login" — missing: implementation-notes (work, required)
  "Write tests" — missing: session-tracking (work, required)

Before you install

  • Read the whole file first. Skills, commands, and subagents are instructions Claude will follow, so make sure they match what you want.
  • Check which tools, scripts, or MCP servers it uses. Local servers and scripts run with your permissions.
  • Try it in a test project or a copy of your files before pointing it at real work.
  • Pin the version you tested, and review changes before updating.
  • Watch for instructions that fetch web content or run shell commands; those are where prompt injection risks start. See our prompt injection guide.

FAQ

What is Batch Complete?

Batch Complete is a skill for Claude Code and Claude Cowork from the jpicklyk/task-orchestrator repository on GitHub. Completes or cancels multiple items at once — closes out features, cleans up old work, and archives completed workstreams. Use when a user says: close out this feature, complete everything under X, cancel this workstream, clean up old items, bulk complete, finish this feature, or archive completed work.

How do I install Batch Complete in Claude Code?

Download the batch-complete folder from the repository. Save it as ~/.claude/skills/<skill-name>/SKILL.md for all projects, or .claude/skills/<skill-name>/SKILL.md for one project. Claude loads it automatically when a task matches; you can also run it with / and its name.

Can I use Batch Complete in Claude Cowork?

Zip the skill folder so SKILL.md sits at the top level of the folder. Open Customize → Skills, click +, then upload the ZIP. Start a task that matches the description, or call it by name with /.

Is Batch Complete safe to install?

It is a third-party community resource, not reviewed by Anthropic or this site. Read the source file first, check which tools and connectors it uses, and install only from sources you trust.

Similar resources

Browse all skills, subagents, and plugins →

Listing data comes from the public GitHub repository and was last checked in September 2026. Excerpts are © their authors and shared under MIT. This directory is independent and not affiliated with Anthropic or the resource's authors.