Skip to main content

delegate-with-context

Hand off a sub-task to a sub-agent with a tight, complete brief in the `prompt` — not the full conversation history. Apply the 4-part message envelope (Task name / Sender / Task / Payload + return path). USE WHEN: about to call `task()` to hand off a sub-task, the full conversation history is too large to forward, a minimal-context brief would do, the previous sub-agent failed because the brief was incomplete. TRIGGER PHRASES: "delegate", "hand off", "sub-agent", "delegate this", "delegate to", "派给", "委派", "让 sub-agent 干", "把 ... 交给 ...". SKIP WHEN: the sub-task is so trivial a `read` will do, you are about to do the work yourself, the user explicitly wants you (not a sub-agent) to do it.

Informations de source

Dépôt
MiniMax-AI/MiniMax-Code-Plugins
Dernière activité de la source
10 septembre 2026 à 01:39
Langue détectée de SKILL.md
anglais
Étoiles
18
Forks
13

Options d'installation

Le prompt qui vérifie d'abord la source est sélectionné par défaut. Vous pouvez passer à une commande directe ou télécharger une copie locale.

Vérifiez les fichiers source

Lisez SKILL.md et les fichiers associés affichés par SkillsMP avant de décider de l'installer.

Affichage de SKILL.md

SKILL.md
Instructions source · Aperçu en lecture seule
name
delegate-with-context
description
Hand off a sub-task to a sub-agent with a tight, complete brief in the `prompt` — not the full conversation history. Apply the 4-part message envelope (Task name / Sender / Task / Payload + return path). USE WHEN: about to call `task()` to hand off a sub-task, the full conversation history is too large to forward, a minimal-context brief would do, the previous sub-agent failed because the brief was incomplete. TRIGGER PHRASES: "delegate", "hand off", "sub-agent", "delegate this", "delegate to", "派给", "委派", "让 sub-agent 干", "把 ... 交给 ...". SKIP WHEN: the sub-task is so trivial a `read` will do, you are about to do the work yourself, the user explicitly wants you (not a sub-agent) to do it.
license
Apache-2.0
compatibility
Targets MiniMax Code 0.2.4 `task` tool. Verified against the bundled `cli.js` schema (`description` / `prompt` / `agent_name` / `run_in_background`). The 4-part envelope is host-neutral design; on mcode the envelope goes into the `prompt` string. `agent_name` is the canonical mcode spelling (`explore` / `worker` / `verifier`); `mavis` is the root agent, not a sub-agent.
metadata
{"author":"antianqi","version":"1.2.0","inspired-by":"https://github.com/openai/codex/blob/main/codex-rs/protocol/src/protocol.rs (InterAgentCommunication) and core/src/session/multi_agents.rs (CollabAgentSpawn); the 4-part envelope is the portable design; on mcode the envelope fills the `prompt` field","changes-from-v1.1.0":"Replaced `subagent_type=` with the canonical mcode `agent_name=`. Replaced `brief=` with `prompt=`. Dropped `mavis` from the sub-agent list (mavis is the root). The 4-part envelope is unchanged but now lives inside the `prompt` string, not in a separate `brief` parameter. The host-pseudocode 'Codex-harness style' block was removed; the mcode 0.2.4 schema is now the only one shown."}
# Delegate with Context When handing off work to a sub-agent, the agent has two extremes: 1. **Forward everything**: the sub-agent sees the full parent history. Costs tokens, dilutes focus, may leak irrelevant detail. 2. **Forward nothing**: the sub-agent gets a one-line "go do X". The brief is almost always incomplete, and the sub-agent re-derives incorrectly. This Skill is about the **middle ground**: a tight, complete, structured brief that gives the sub-agent everything it needs and nothing it does not. ## mcode 0.2.4 surface The `task` tool on mcode 0.2.4: ```text task( description: string, // 3-5 word label, required prompt: string, // the brief, required agent_name: "explore" | "worker" | "verifier", // required run_in_background?: boolean // optional ) ``` The 4-part envelope is **the design**; on mcode it goes into the `prompt` string verbatim. `agent_name` is the canonical spelling. `agent_name=` is accepted as a runtime alias but the Skills prefer the canonical form. `mavis` is the root agent (the calling session itself), not a sub-agent. It has no `agent.md` manifest and cannot be used as `agent_name`. ## When to use Activate when **any** of these is true: - You are about to call `task` to hand off a sub-task. - The full conversation history is too large to forward (cost / focus). - A previous sub-agent failed because the brief was incomplete. - You want the sub-agent's work to be auditable against a written contract. ## When NOT to use - The sub-task is so trivial a single `read` will do (no sub-agent needed). - You are about to do the work yourself. - The user explicitly wants you (not a sub-agent) to do it. ## Process 1. **Classify the sub-task** (see `fork-context-decision`): - Self-contained: `none` (just the brief in `prompt`). - Needs prior context: `N` or `all` → inline the prior turns into `prompt` before the brief. 2. **Pick the sub-agent type** from `{explore, worker, verifier}` based on what the sub-task needs (read / write+run / run-only). 3. **Write the 4-part envelope** below. The envelope is the **portable** part of the brief — host `task` tools all accept a brief string. 4. **Choose context level** (see `fork-context-decision`) and inline the chosen context into `prompt` before the envelope (or skip if `none`). 5. **Document the return path** — how the sub-agent should hand the result back. ## The 4-part envelope Every sub-agent brief (the body of the `prompt` field) MUST have these 4 parts, in order: ```text Task name: <one short line, e.g. "investigate-lint-flake"> Sender: <who is asking, e.g. "main agent (you)"> Task: <one sentence: what the sub-agent must do> Payload: <the actual context, links, file paths, prior results> Return: <where the result goes, in what format> ``` Each part is mandatory. Skipping any one is the difference between a working sub-task and a confused one. ### Field-by-field | Field | Purpose | Bad | Good | |---|---|---|---| | Task name | The handle you'll refer to later. | `task1` | `investigate-lint-flake` | | Sender | Who is asking, so the sub-agent knows the audience. | _(omitted)_ | `main agent` | | Task | One-sentence scope. | `fix the tests` | `Investigate why test_lint.py flakes on Windows but not Linux. Produce a 1-paragraph root-cause analysis.` | | Payload | The actual content the sub-agent needs. | `see above` | Links to the file, the prior turn's tool output, the user's exact request. | | Return | Where the result goes, in what format. | _(omitted)_ | `Append a section to /notes/lint.md titled "## Windows flake root cause" with 1 paragraph.` | ## Common pitfalls - **Omitting the return path** — the sub-agent finishes and has no idea what to do with the result. Always specify. - **Putting the brief in `Task` and the question in `Payload`** — the sub-agent sees both, but the wrong field is the "one-sentence scope". Keep `Task` short. - **Forwarding the full history when `none` would do** — costs tokens and dilutes focus. Decide first. - **Using `agent_name="mavis"`** — mavis is the root agent, not a sub-agent. Use `explore` / `worker` / `verifier`. - **Writing the envelope in a separate `brief=` field** — mcode 0.2.4 does not expose a `brief` field. Put it in `prompt`. ## Example The example below is **MiniMax Code 0.2.4 `task` tool syntax**. The envelope is the `prompt` body; the call shape is the only one that exists on mcode 0.2.4. ```text > task( description="Investigate lint flake", agent_name="worker", // or "explore" if read-only prompt=""" Task name: investigate-lint-flake Sender: main agent Task: Investigate why <project>/tests/test_lint.py flakes on Windows but not Linux. Produce a 1-paragraph root-cause analysis. Payload: <project>/tests/test_lint.py (line 47 is the failure); prior turn tool output (inlined above this prompt if context level > none). Return: Append a section to <project>/notes/lint.md titled "## Windows flake root cause" with 1 paragraph. """ ) ``` The **envelope** is the design; on mcode the envelope fills the `prompt` field. There is no separate `brief` parameter. ## Verification checklist - [ ] Did you classify the sub-task (self-contained vs context-dependent)? - [ ] Did you pick `agent_name` from `{explore, worker, verifier}`? - [ ] Did you write all 4 envelope parts (Task name / Sender / Task / Payload / Return)? - [ ] Did you specify the **return path** (where the result goes)? - [ ] Did you choose the right context level (via `fork-context-decision`)? - [ ] Did you put the envelope inside the `prompt` field (not a separate `brief`)?
Voir sur GitHub