Skip to content
Agentmart
Submit a tool

finish

Complete the task with a final answer and save reusable subagents as skills.

Skill by zzatpku

IndexedMIT★ 66
Write a review

Install

Works with Claude Code, Claude apps, Codex, Cursor, Gemini CLI, GitHub Copilot, VS Code, OpenCode, Goose, Windsurf. Read the repository before you give any tool access to your data.

npx agentmarket install skill/zzatpku-finish

Asks which of your tools to add it to (Claude Code, Codex, Cursor, VS Code, Windsurf, Gemini CLI, Claude Desktop) and shows the change first. See https://agentmart.dev/cli.

Get the weekly diff

The weekly diff: one email a week with new agent tools, notable updates and grade changes, plus security alerts for tools you follow. Double opt-in, one-click unsubscribe.

We use your email only for this newsletter. Privacy

About

Complete the task with a final answer and save reusable subagents as skills. Use this when you have successfully solved the question.

Use cases: productivity

No reviews yet. Installed it? Reviews come from verified installers only. How reviews work

Permissions

What this skill can do and what it asks for, from its SKILL.md. Checked Oct 25, 2026.

Tools
No tools found
Secrets
None asked for
Install scripts
None found

Network hosts it talks to 1

  • codeload.github.com · found in install command

Files it touches

  • ~/.claude/skills/finish

What's inside

Skill name
finish
Description
Complete the task with a final answer and save reusable subagents as skills. Use this when you have successfully solved the question.
License
MIT
Instructions
104 lines in SKILL.md · view on GitHub

Files (1)

  • SKILL.md

SKILL.md (first lines)

# Finish

Complete the task with a final answer and save reusable subagents as skills.

## Required Parameters

Both `answer` and `subagents` are **required** keys. Omitting either will cause a validation error.

| Parameter | Type | Description |
|-----------|------|-------------|
| answer | str | A **brief** final answer (1-3 sentences). Do NOT put full reports or large content here. |
| subagents | list | List of subagents to save, or `[]` if none worth saving. |

## The 4 Valid Patterns

**Do NOT mix `skill_name` and `supersedes` in the same entry — they are mutually exclusive.**

### Pattern 1 — New subagents (first time creating)

You created multiple new subagents with `create_subagent` and want to save them all.

```xml
<action>finish</action>
<params>
{"answer": "...", "subagents": [
  {"entry_file": "researcher.py", "description": "..."},
  {"entry_file": "analyzer.py", "description": "..."},
  {"entry_file": "visualizer.py", "description": "..."}
]}
</params>
```

### Pattern 2 — Modified saved skills (small fix via `modify_subagent`)

You used `modify_subagent` with `skill_name` to fix saved skills. Include `skill_name` so changes are saved back to the original skill directories.

```xml
<action>finish</action>
<params>
{"answer": "...", "subagents": [
  {"entry_file": "researcher.py", "description": "...", "skill_name": "researcher"},
  {"entry_file": "analyzer.py", "description": "...", "skill_name": "analyzer"}
]}
</params>
```

### Pattern 3 — New subagents replacing old skills (`create_subagent` + `supersedes`)

You created new subagents to replace old broken skills. The old skills will be deleted.

```xml
<action>finish</action>
<params>
{"answer": "...", "subagents": [
  {"entry_file": "researcher.py", "description": "...\n**Improved From**: ...", "supersedes": "old_researcher"},
  {"entry_file": "analyzer.py", "description": "..."}
]}
</params>
```

### Pattern 4 — Nothing to save

Use this when: (a) existing saved subagents already solved the problem without any new code or modifications, or (b) the subagents completely failed and contain no useful logic. **In all other cases, you MUST save ALL reusable subagents** — review every subagent you created in this session and save each one that has value. See Important Notes.

```xml
<action>finish</action>
<params>
{"answer": "...", "subagents": []}
</params>
```

## Subagent Entry Fields

| Field | Type | Required | Description |
|-------|------|----------|-------------|
| entry_file | str | **Yes** | The exact `.py` filename from `create_subagent`. Must match a file in the workspace. |
| description | str | **Yes** | What problems this subagent solves. If `supersedes` is set, MUST include `**Improved From**`. |
| skill_name | str | No | Only for Pattern 2. The saved skill name you modified via `modify_subagent`. **Cannot be used with `supersedes`.** |
| supersedes | str | No | Only for Pattern 3. The old skill name to delete and replace. **Cannot be used with `skill_name`.** |

## Description Format

```
**Problem Category**: ...
**Applicable Questions**: ...
**Key Features**: ...
**Skills Used**: ...
**Reasoning Pattern**: ...
**Input Format**: ...
**Output Format**: ...
**Improved From**: [Only if supersedes is set. Explain what the old skill got wrong and what this version fixes.]
```

## Important Notes

- **`answer` must be brief** (1-3 sentences). Large content causes JSON parsing failures.
- **`entry_file` must be the exact `.py` filename** you used in `create_subagent`.
- **Modified saved skills must be listed** (Pattern 2), otherwise modifications are discarded.
- **`skill_name` and `supersedes` are mutually exclusive**: use one or the other, never both.
- **You MUST save ALL reusable subagents**: Before calling `finish`, review EVERY subagent you created in this session (check all `.py` files in the workspace). Save each one that has value — do not save only the main one. Even helper subagents or narrowly-focused subagents may be useful for future tasks.
- **Specific subagents are also worth saving**: even if a subagent targets a narrow domain, save it with a descriptive skill name and description that clearly states its specific scope (e.g., what site/API/topic it handles). Benefits: (1) identical or very similar tasks can directly reuse it; (2) for related tasks, its code serves as a working reference — use `view_subagent_code` to study its structure, API calls, and workarounds, then `create_subagent` to build a new one based on it.
- All workspace `.py` files are copied into each saved skill directory.

From zzatpku/AgentFactory, MIT.

More from zzatpku/AgentFactory

Signals

Stars
66
Forks
8
Open issues
0
Last commit (this folder)
Feb 28, 2026 (8 months ago)

From GitHub (fetched Oct 24, 2026).

Details

License
MIT
First seen
Oct 24, 2026
Last checked
Oct 24, 2026

More from zzatpku

Cite this page

finish skill. Agent Mart. https://agentmart.dev/skills/zzatpku-finish (last updated 2026-10-24)