Agent skill

Project Split Decomposition

by makifbaysal in makifbaysal/tasktrooper

A skill your agent uses when an approved analiz spans more than one repository - split the work per repository and open one or more tasks per repository, each carrying its own plan slice

Apache-2.0Auto-check passed

Install Project Split Decomposition

skills CLI
$ npx skills add makifbaysal/tasktrooper --skill project-split-decomposition -a claude-code

Project install by default; add -g for ~/.claude/skills/.

GitHub CLI
$ gh skill install makifbaysal/tasktrooper project-split-decomposition --agent claude-code

Project scope by default; add --scope user for a personal install. Needs GitHub CLI 2.90.0 or later (public preview).

Manual copy
$ git clone --depth 1 https://github.com/makifbaysal/tasktrooper.git skills-src && mkdir -p .claude/skills && cp -r skills-src/catalog/agents/system-architect/skills/project-split-decomposition .claude/skills/project-split-decomposition && rm -rf skills-src

Use ~/.claude/skills/ instead of .claude/skills for a personal install. The folder must contain SKILL.md.

Claude Code skills documentation · loads skills from .claude/skills/

Facts

Skill name
project-split-decomposition
GitHub stars
109
Token cost
~1.7k tokens
SKILL.md length
968 words
Files
1
Skills in repo
99
Repo updated
First seen
Licence
Apache-2.0

At a glance

A skill your agent uses when an approved analiz spans more than one repository - split the work per repository and open one or more tasks per repository, each carrying its own plan slice

  • Works in 7 steps: List the repositories the plan touches,… → One or more implementation tasks per… → Within a repository, split by layer only… → …
  • An approved analiz spans more than one repository - split the work per repository and open one
  • SKILL.md covers Overview, When to Use, How to Split and The Cross-Repository Contract, plus 4 more sections
  • Calls git

What it does

Project Split Decomposition is an agent skill from makifbaysal/tasktrooper. Use when an approved analiz spans more than one repository - split the work per repository and open one or more tasks per repository, each carrying its own plan slice

Its SKILL.md is about 1.7k tokens, which your agent loads only when the skill is triggered. It is a single SKILL.md file with no bundled scripts.

The repository describes itself as: Local-first agent platform: board + role agents + agent CLI runs (Claude Code, Cursor, Antigravity, OpenCode) or local and API models (Ollama, LM Studio), all on your own Mac. The licence is Apache-2.0.

When your agent uses it

  • An approved analiz spans more than one repository - split the work per repository and open one
  • More tasks per repository
  • Each carrying its own plan slice

Example prompts

  • “/project-split-decomposition”

Workflow steps

7 steps, taken from the first numbered list in SKILL.md.

  1. List the repositories the plan touches, by name from list_repositories: backend-api, web, mobile, an automation/test repo, etc. Note which…
  2. One or more implementation tasks per repository, never one task spanning two. They build, test, and deploy independently.
  3. Within a repository, split by layer only if independently deliverable, and by component when it is a monorepo. A backend task may cover…
  4. Write each repository's plan slice into its task. Copy the relevant plan sections, file paths, and the Interfaces blocks that task…
  5. Order by cross-repository dependency, in the arguments. The repository that produces an interface goes before the repository that consumes…
  6. Point every task back at the analysis. derived_from: ["A-N"] on each one. The spec and the plan live as documents on that analiz task, so…
  7. Size and shared files. A task should land at an estimated ≤ ~400 changed lines including tests, so a reviewer sees all of it inside the…

What it can do on your machine

Read from SKILL.md and the folder at commit 09f6258. It shows what the files ask for, not the result of running them.

  • Tool permissions

    Pre-approves nothing: there is no allowed-tools line, so your agent's usual permission prompts apply.

    From allowed-tools in the SKILL.md frontmatter.

  • Runs code

    Shell commands in SKILL.md call:

    • git

    From the folder's file list and the shell code blocks in SKILL.md.

  • Network

    No URLs in SKILL.md. Its commands use git, which can reach the network depending on how they are called.

    From URLs in SKILL.md, links to its own repository left out.

  • Credentials

    Names no API keys, tokens, secrets or passwords.

    From names ending in _API_KEY, _TOKEN, _SECRET, _KEY or _PASSWORD in SKILL.md.

Context cost

Project Split Decomposition loads about 1.7k tokens when it runs. Until then it costs about 49 tokens; SKILL.md has 968 words of instructions outside code blocks.

Always · name and description, kept in context so the agent knows when to use it
~49
When it runs · the whole SKILL.md, loaded when a task matches
~1.7k

Estimates: characters ÷ 4, the usual rule of thumb; real counts depend on the model's tokenizer. Scripts and assets cost tokens only if the agent reads them.

Safety

Auto-check passed

The automated check found no risky patterns in SKILL.md.

Automated static check — not a guarantee. Review scripts before installing. It scans the text of SKILL.md for risky patterns (piping downloads into a shell, reading credential files, hidden Unicode, destructive commands); files beside SKILL.md are not scanned.

SKILL.md

The full file from makifbaysal/tasktrooper at commit 09f6258, republished under its Apache-2.0 licence (© makifbaysal). 968 words, ~1,683 tokens.

Download SKILL.mdSave it as .claude/skills/project-split-decomposition/SKILL.md (or your agent's skills folder).
name
project-split-decomposition
description
Use when an approved analiz spans more than one repository - split the work per repository and open one or more tasks per repository, each carrying its own plan slice
category
architecture

Project Split Decomposition

Overview

Real features cross repository boundaries: an API in the backend repo, a screen in the web repo, a screen in the mobile repo. After the human approves the analysis, you split the work along repository lines and open one or more implementation tasks per repository, never one task spanning two, each carrying the slice of the plan that repository needs. A developer working the web task should never have to read the backend repo's plan to do their job.

Core principle: One repository (and, in a monorepo, one component), one self-contained plan slice per task. The split follows the deployable unit, not the feature.

REQUIRED SUB-SKILL: task-decomposition (per-task structure, AC, assignees). This skill decides the BOUNDARIES; task-decomposition fills each task in.

When to Use

Use after the human approves an analiz (see analiz-human-review-gate) whenever the plan touches more than one repository. A single-repository change skips straight to task-decomposition.

How to Split

  1. List the repositories the plan touches, by name from list_repositories: backend-api, web, mobile, an automation/test repo, etc. Note which project (initiative, from list_projects) each belongs to, if any.
  2. One or more implementation tasks per repository, never one task spanning two. They build, test, and deploy independently.
  3. Within a repository, split by layer only if independently deliverable, and by component when it is a monorepo. A backend task may cover the whole vertical slice for that repo; split further only where a reviewer could accept one part and reject another.
  4. Write each repository's plan slice into its task. Copy the relevant plan sections, file paths, and the Interfaces blocks that task consumes/produces — verbatim, not "see the main plan." The task is self-contained.
  5. Order by cross-repository dependency, in the arguments. The repository that produces an interface goes before the repository that consumes it. On the consuming task set blocked_by: ["<producer key>"] (nobody starts it until the producer is done) and deploy_depends_on: ["<producer key>"] (it may not be released until the producer is live). Both are enforced — a prose "depends on the backend task" is not. See task-decomposition, "Ordering Is an Argument, Not a Sentence".
  6. Point every task back at the analysis. derived_from: ["A-N"] on each one. The spec and the plan live as documents on that analiz task, so this is the only route each developer has to them.
  7. Size and shared files. A task should land at an estimated ≤ ~400 changed lines including tests, so a reviewer sees all of it inside the 24,000-byte diff cut; over ~1,000 is a split, and refactors are separate from feature work. Two tasks in the same repository that both add a migration (sequence numbers collide), or edit the same router table, locale bundle, DI container, INVENTORY.md or OpenAPI file, are not independent — chain them with blocked_by rather than leaving the collision to be discovered at review time.

The Cross-Repository Contract

The one thing that MUST be identical across the split is the interface between repositories — the API contract. Define it once in the producing task and copy the exact request/response shape into the consuming task's plan slice. A field named taskId in the backend task but task_id in the web task is a guaranteed integration bug.

Schema Tasks

A repository task that adds or changes a migration carries before_deploy (what must be true before this ships — e.g. "migration N applied on stage") and rollback_plan (a code rollback is a git revert; it does not undo the schema, so state what the schema looks like afterward and that the previous release's code must still run against it). A breaking schema change (a drop or rename still read by deployed code) is a separate, later task with deploy_depends_on every consumer update — see migration-and-contract-review.

Show full SKILL.md (349 more words)Show less

Worked Example

Approved analiz: "Users can export a project's tasks to CSV from web and mobile."

Split into three tasks:

TaskRepositoryAssigneeOrdering argumentsScope slice
Add task export endpoint (T-1)backend-apibackend-developerderived_from: ["A-12"]GET /api/v1/projects/:id/tasks/export → CSV; plan slice with handler, service, test
Add export button to web boardwebfrontend-developerderived_from: ["A-12"], blocked_by: ["T-1"], deploy_depends_on: ["T-1"]Calls the endpoint, downloads the file; plan slice with component + api client
Add export action to mobile boardmobilemobile-developerderived_from: ["A-12"], blocked_by: ["T-1"], deploy_depends_on: ["T-1"]Same endpoint, native share sheet; plan slice with screen + api client

The exact endpoint path and CSV column order are defined in the backend task and copied into both consumer tasks' plan slices. All three go to todo together with repository set on each (backend-api, web, mobile): the two consumers park themselves behind T-1 and are picked up automatically when it lands, and neither can be released ahead of it.

Common Mistakes

  • One task titled "add export to web and mobile" — two repositories, must be two tasks.
  • A consumer task that says "see the backend plan for the contract" — copy the contract in; the developer only sees their own task.
  • Splitting a single-repo change across three tasks that can't be reviewed independently — over-decomposition.
  • Mismatched field names between the producing and consuming task's plan slices.
  • Leaving repository unset and trusting the fallback — it lands in the active repository context or the default one, which is often wrong for a consumer task.

Red Flags

  • A consumer task with no blocked_by / deploy_depends_on on its producer → the order exists only in your head, and the frontend can start (and ship) before the API it calls.
  • A task with no derived_from → the developer cannot reach the plan slice you wrote for them.
  • A created task whose repository differs from its row in the split table.
  • A task's plan slice references files in a repository the task doesn't own.
  • Two tasks would edit the same repository's same files → they are really one task, or blocked_by if they must stay separate.
  • The interface shape differs between the producer and consumer tasks.

© makifbaysal, Apache-2.0. Rendered from Markdown: HTML in the file is shown as text, images as links, and headings moved down two levels. Raw file

Files

Just SKILL.md in catalog/agents/system-architect/skills/project-split-decomposition of makifbaysal/tasktrooper.

Open the folder on GitHubat commit 09f6258

Compare with similar skills

Project Split Decomposition next to the 5 skills that share the most tags, products or categories with it. Stars are the repository's; “used in” counts other GitHub owners with a copy.

Project Split Decomposition compared with similar skills
SkillStarsUsed inTokensAuto-checkLicenceRepo updated
Project Split Decomposition this skillmakifbaysal/tasktrooper109—~1.7kAutomated safety check: PassApache-2.0
Operator Approval Loopaffaan-m/ECC275k—~3.3kAutomated safety check: PassMIT
Approvedyoshikawa/rulesync1.5k—~429Automated safety check: PassMIT
Code Splittingthedaviddias/Front-End-Checklist74k—~492Automated safety check: PassMIT
Splitting Oversized ModulesPostHog/posthog40k—~2.2kAutomated safety check: PassCustom licence
BiSheng Approval Module Referencedataelement/bisheng12k—~4kAutomated safety check: PassApache-2.0

Similar skills

  • Operator approval contract with internal filing notices for agent-drafted outbound messages, hashed drafts, epoch-keyed decisions, durable delivery claims and receipts, and a pre-draft baseline gate.

    275k GitHub stars~3.3k tokensUpdated 3 days ago
    Auto-check passed
  • Approve

    dyoshikawa/rulesync

    Approve a pull request using gh pr review --approve. An agent skill from dyoshikawa/rulesync.

    1.5k GitHub stars~429 tokensUpdated today
    DevelopmentAuto-check passed
  • Code Splitting

    thedaviddias/Front-End-Checklist

    A skill your agent uses when reviewing large SPA bundles, new dependency additions, or routes that feel slow to hydrate.

    74k GitHub stars~492 tokensUpdated 2 days ago
    Auto-check passed
  • Official

    Split an oversized Python module (a thousand-plus-line logic.py, models.py, api.py, or its test file) into a package of one module per concern, mechanically and provably without changing behavior.

    40k GitHub stars~2.2k tokensUpdated today
    Frontend & DesignAuto-check passed
  • Maps BiSheng's approval-center architecture to exact service files and methods, so a change to approval logic can be located without searching the whole repo.

    12k GitHub stars~4k tokensUpdated today
    DevelopmentAuto-check passed
  • Splits

    BankrBot/skills

    Use Splits with Bankr for onchain treasury operations: secure assets, process revenue, manage operating subaccounts, pay expenses, govern contracts, and maintain clean accounting books.

    1.2k GitHub stars~3.9k tokensUpdated 3 days ago
    Business, Finance & HRAuto-check passed

More from makifbaysal/tasktrooper

All 99 skills in this repo
  • API Contract Testing

    makifbaysal/tasktrooper

    A skill your agent uses when a task adds or changes an HTTP endpoint, its request/response shape, status codes, auth or error format - the request matrix, curl templates and what counts as a…

    109 GitHub starsUsed in 1 repo~771 tokens
    Auto-check passed
  • Acceptance Criteria Gwt

    makifbaysal/tasktrooper

    A skill your agent uses when writing acceptance criteria for a task - express each as an observable Given/When/Then that QA can execute, including negative cases

    109 GitHub stars~1.7k tokensUpdated yesterday
    Auto-check passed
  • Accessibility Check

    makifbaysal/tasktrooper

    A skill your agent uses when a task changes any screen, form, dialog, menu or control - Lighthouse/axe scan of the changed screens, a keyboard walk, and the thresholds that fail a task

    109 GitHub stars~1.1k tokensUpdated yesterday
    Auto-check passed
  • Analiz Gate

    makifbaysal/tasktrooper

    A skill your agent uses when deciding whether a request needs an analiz task before implementation - the conditions that require the architect's analysis versus going straight to implementation

    109 GitHub stars~641 tokensUpdated yesterday
    Auto-check passed
  • Analiz HTML Report

    makifbaysal/tasktrooper

    A skill your agent uses when you write or revise the analiz deliverable - the ONE self-contained HTML report (spec and plan as sections) a human reviews passage by passage

    109 GitHub stars~3.9k tokensUpdated yesterday
    Auto-check passed
  • Analiz Human Review Gate

    makifbaysal/tasktrooper

    A skill your agent uses when you finish an analiz report - the human must approve the analysis before any implementation task is created, via the analizreview column

    109 GitHub stars~2.2k tokensUpdated yesterday
    Auto-check passed

Questions about Project Split Decomposition

What does Project Split Decomposition do?

A skill your agent uses when an approved analiz spans more than one repository - split the work per repository and open one or more tasks per repository, each carrying its own plan slice. Project Split Decomposition is an agent skill from makifbaysal/tasktrooper.

When should I use Project Split Decomposition?

Project Split Decomposition fits situations like: an approved analiz spans more than one repository - split the work per repository and open one; more tasks per repository; each carrying its own plan slice.

How do I install Project Split Decomposition in Claude Code?

Run `npx skills add makifbaysal/tasktrooper --skill project-split-decomposition -a claude-code`. Or copy the skill folder (catalog/agents/system-architect/skills/project-split-decomposition in makifbaysal/tasktrooper) into .claude/skills/project-split-decomposition in your project. Claude Code loads it when a task matches its description.

How do I install Project Split Decomposition in Codex?

Run `npx skills add makifbaysal/tasktrooper --skill project-split-decomposition -a codex`. Or copy the skill folder (catalog/agents/system-architect/skills/project-split-decomposition in makifbaysal/tasktrooper) into .agents/skills/project-split-decomposition in your project. Codex loads it when a task matches its description.

Can I use Project Split Decomposition in Cursor, Gemini CLI or GitHub Copilot?

Cursor, Gemini CLI, GitHub Copilot and OpenCode also load SKILL.md folders. With the skills CLI, run `npx skills add makifbaysal/tasktrooper --skill project-split-decomposition -a cursor` (or -a gemini-cli, github-copilot or opencode for the others). To copy it by hand, put the folder in .cursor/skills/project-split-decomposition, .gemini/skills/project-split-decomposition, .github/skills/project-split-decomposition and .opencode/skills/project-split-decomposition in your project.

What does Project Split Decomposition need to run?

Going by SKILL.md and its folder, Project Split Decomposition needs the command-line tools its instructions call (git).

Does Project Split Decomposition access the network?

SKILL.md contains no URLs. Its commands use git, which can reach the network depending on how they are called. This is read from the text; nothing was executed.

Is Project Split Decomposition safe to install?

Our automated static check of SKILL.md found no risky patterns, such as piping downloads into a shell, reading credential files or hidden Unicode. It is not a guarantee. Review the folder before installing.

What licence does Project Split Decomposition use?

Project Split Decomposition is published under the Apache-2.0 licence (the repository's licence). It allows redistribution, so the full SKILL.md is shown on this page.

How many tokens does Project Split Decomposition use?

About 1.7k tokens (SKILL.md is roughly 6.7k characters). Agents keep only the skill's name and description in context until a task matches; then they load SKILL.md in full.

What are the alternatives to Project Split Decomposition?

Skills that share tags, products or a category with Project Split Decomposition: Operator Approval Loop (affaan-m/ECC, 275k stars), Approve (dyoshikawa/rulesync, 1.5k stars), Code Splitting (thedaviddias/Front-End-Checklist, 74k stars) and Splitting Oversized Modules (PostHog/posthog, 40k stars). The comparison table on this page puts their stars, adoption, token cost, safety result and licence side by side.

Who maintains Project Split Decomposition?

makifbaysal (a GitHub user) maintains it in makifbaysal/tasktrooper, which has 109 GitHub stars. The repository holds 99 skills in this directory. The repository was last updated on October 7, 2026.

Source: makifbaysal/tasktrooper on GitHub. Facts on this page come from the repository at the commit we read; the author's words are quoted as theirs.