Skip to main content

delegation

Delegates independent work to worker agents through the Task tool, choosing between the explore scout and the ml, biology, physics, chemistry and data specialists, writing a self-contained brief for a worker that cannot see the conversation, setting boundaries on files and compute, using two independent annotators with adjudication when labels are judged against an expert reference, and reading the handoff back critically. Use before dispatching a worker or interpreting its result, and when deciding whether a task should be delegated at all. Never delegate the literature retrieval loop or a step of an experiment loop already underway.

Informações da origem

Repositório
synthetic-sciences/openscience
Última atividade na origem
26 de setembro de 2026 às 09:53
Idioma detectado do SKILL.md
inglês
Estrelas
4.004
Forks
526

Opções de instalação

Por padrão, está selecionado o prompt que primeiro revisa a origem. Você pode mudar para um comando direto ou baixar uma cópia local.

Revise os arquivos de origem

Leia o SKILL.md e os arquivos complementares exibidos pelo SkillsMP antes de decidir se vai instalar.

Exibindo SKILL.md

SKILL.md
Instruções da origem · Visualização somente leitura
name
delegation
description
Delegates independent work to worker agents through the Task tool, choosing between the explore scout and the ml, biology, physics, chemistry and data specialists, writing a self-contained brief for a worker that cannot see the conversation, setting boundaries on files and compute, using two independent annotators with adjudication when labels are judged against an expert reference, and reading the handoff back critically. Use before dispatching a worker or interpreting its result, and when deciding whether a task should be delegated at all. Never delegate the literature retrieval loop or a step of an experiment loop already underway.
summary
When and how to hand independent work to a worker or specialist; the brief and the handoff.
category
core
role
support
allowed-tools
["task"]
license
MIT
version
1.0.0
author
Synthetic Sciences
metadata
{"skill-author":"Synthetic Sciences","adapted-from":"alphaXiv OpenResearch orx-agent-delegation (MIT)"}
# Delegation A worker is a second agent that starts with an empty transcript. It can do independent work in parallel and bring back a decision-ready handoff; it cannot read your mind, your conversation, or the user's intent. Delegation pays when the task has a clean boundary and a brief can carry everything the worker needs. Otherwise it costs latency, tokens and coherence, and the work is better done here. ## When to delegate Delegate when all of these hold: - The work is independent of the step you are on: surveying an unfamiliar codebase, running and reporting an isolated experiment, drafting a section from finished results, auditing a long artifact, reproducing a claim in parallel with other work. - You can write down the goal, the inputs, the constraints and the definition of done without reference to "what we discussed". - The result can be checked when it comes back (a number to compare, a file to open, a report against a checklist). - The Delegation setting allows it (Off means do it here; Auto means when it clearly helps; High means prefer it for parallelizable phases). Never delegate: - the literature retrieval loop: ranking candidates is the judgement, and a worker ranks for a different question (load literature-review and run it yourself); - a step inside an experiment loop already underway, where the next action depends on the last result you saw; - anything requiring the user's answer to a question the worker cannot ask. ## Choosing the worker | Need | `subagent_type` | | --- | --- | | Read and report: codebase survey, artifact audit, options analysis, literature scouting | `explore` (read-only) | | Independent critical read of a draft or analysis | `explore`, briefed with the peer-review skill and the angle to take | | Build or run: pipelines, data processing, scripts, files, results | `data` | | Domain-heavy phase: training or fine-tuning setup, omics pipeline, PDE solver, docking | `ml`, `biology`, `physics`, `chemistry` | `subagent_type` is an agent name; the Task tool's description lists the ones configured in this installation. There is no separate `specialist` parameter and no `execute` or `critique` profile. A specialist keeps the Research contract and gains its domain skill index and domain tools (the biology specialist can query UniProt, PDB, Ensembl, KEGG, PubMed directly). Use one when most of the phase sits in that domain; for mixed work the `data` worker, briefed to load a skill, is enough. Pass `background: true` for work you do not need before your next step; its result wakes you when it lands. ## The brief The worker sees only the brief. Include, in this order: 1. **Goal**: one sentence, what done looks like. 2. **Context**: project, relevant paths, the metric or question, what has been tried. 3. **Inputs**: exact files, run ids, URLs, data locations. The worker works in your working directory and its files land there; name the files it owns and the ones it must not touch, and say which of the paths you name are inputs to read. 4. **Constraints**: what not to touch, what not to change (the evaluation, the metric, frozen files), time or cost limits. 5. **Compute authorization**: exactly which runs it may launch, on which target, with what budget. Say "no compute jobs" explicitly when none are authorized; a worker otherwise assumes the normal research loop is available. 6. **Output**: the files or numbers to return and the sections its handoff should use (Outcome, Findings, Evidence, Changes, Limitations, Next action). 7. **Definition of done**: the concrete check that ends the task. Write it as the worker's user message; keep your own voice out of it. A brief that fits in five lines usually means the task should be done here; a brief that needs a page means the task is worth a worker. ## Reading the handoff - Verify before you build on it: open the file, compare the number, rerun the smallest check. A saved artifact proves an output exists, not that it is right. - Treat the worker's inference as inference; its evidence as evidence. If the handoff does not separate them, ask for the separation or check yourself. - A partial result is normal; the handoff says what remains. Decide whether to continue the same worker (`task_id` from its result), start another, or finish here. - Do not repeat the worker's diary to the user. Report the outcome and what changed. ## Two annotators for expert-judged labels When the output is a set of labels judged against an expert reference — a cell type per cluster, a drainage or variability class per instance, a finding per image, a category per record — one pass by one reader is the weakest design there is, and the grader's macro-average makes the rare classes decisive. Have two workers label independently from the protocol and the data, each blind to the other, with the rare classes named to both before they start. Then adjudicate every disagreement yourself by re-reading the protocol's definitions and precedence rules against the evidence for that instance, never by majority or by splitting the difference. Where the protocol allows partial credit by lineage, an adjudicated broad label beats a confident wrong fine one; where it does not, decide. The cost is one extra worker context; the alternative is a single reader's blind spots scored at full weight. ## Concurrency and limits Several workers may run at once for genuinely parallel phases (a sweep across datasets, a survey split by subsystem). Workers cannot spawn workers unless `subagent_depth` allows it. Publishing (pushing, releasing, uploading) stays with you. Each worker costs a full model context; three workers for a task one skill load would have solved is the common mistake. When a build or a proof is split among workers, give each its own file inside the project (a helper module, a lemma file) and the compile or test command that includes it, and integrate each piece into the deliverable as it lands, so the deliverable builds at every step. A component that lives in `/tmp` or only in a worker's report is not part of the deliverable; a lead waiting for the last report has nothing to ship if the budget ends first. Before opening a second round of workers, ask what the first round changed in the project.
Ver no GitHub