Loading...
Loading...
This skill should be used when the user requests to "save team", "team save", "save team configuration", or "export team". It reads the configuration from a running team and saves it as a snapshot file to the .team-profiles/ directory for reuse with /team-load.
npx skill4agent add killvxk/teamskills team-save.team-profiles//team-load| team-init Auto-Save | team-save Snapshot | |
|---|---|---|
| Format | Template format (team_type + role code) | Snapshot format (full prompt) |
| Content | Initial configuration, references role definition files | Current actual state, self-contained |
| Purpose | Reconstruct team from role templates | Precisely restore modified teams |
| Identifier | | |
$ARGUMENTS~/.claude/teams/There are no running teams currently.
- Use /team-init to create a new teamAskUserQuestion:
question: "Select the team to save"
header: "Select Team"
options:
- label: "{team_name_1}"
description: "{description_1}"
- label: "{team_name_2}"
description: "{description_2}"
# ... up to 4
multiSelect: false~/.claude/teams/{team_name}/config.jsonnamedescriptionmembers[]nameagentTypepromptmodelplanModeRequiredcwdcolor.team-profiles/team_type团队类型:<project_context>agentType: "team-lead"promptidsubjectdescriptionactiveFormstatusownerblockedBytasks$ARGUMENTSAskUserQuestion:
question: "Name for saving the configuration? (Will be saved to .team-profiles/{name}.yaml)"
header: "Save Name"
options:
- label: "{team_name}"
description: "Use team name"
- label: "Custom name"
description: "Enter in 'Other'"
multiSelect: falseTeam Snapshot Summary
--------------------
Team Name: {team_name}
Team Type: {team_type_name} (if available)
Team Description: {description}
Working Directory: {cwd}
Member List ({N} members):
- {member_name} ({agentType}) [{model}]
- ...
Task Progress ({M} tasks):
- [completed] #{id} {subject} → {owner}
- [in_progress] #{id} {subject} → {owner}
- [pending] #{id} {subject} → {owner or "Unassigned"}
...
Save to: .team-profiles/{save_name}.yaml
--------------------AskUserQuestion:
question: "Confirm save?"
header: "Confirmation"
options:
- label: "Save"
description: "Save team snapshot"
- label: "Cancel"
description: "Abandon save"
multiSelect: falsemkdir -p "{current working directory}/.team-profiles".team-profiles/{save_name}.yaml⚠ File already exists, will overwrite:
Old configuration: {old_member_count} members, {old_task_count} tasks
New configuration: {new_member_count} members, {new_task_count} tasks
Old file will be backed up as: .team-profiles/{save_name}.yaml.bak.team-profiles/{save_name}.yaml.bakmv.bak.bak.team-profiles/{save_name}.yaml# Team Snapshot - Saved by /team-save
# Use /team-load {save_name} to directly load this configuration to create a team
# Save Time: {ISO 8601 timestamp}
format: snapshot
name: "{team_name}"
description: "{description}"
team_type: "{team_type}" # Fill if extractable from member prompt, otherwise empty string
team_type_name: "{team_type_name}" # Same as above
members:
- name: "{member_name}"
agent_type: "{agentType}"
model: "{model}"
mode: "{mode}" # bypassPermissions / plan / default, default is bypassPermissions
cwd: "{cwd}"
color: "{color}"
prompt: |
{full prompt content, using YAML multi-line string}
- name: "{member_name_2}"
agent_type: "{agentType}"
model: "{model}"
mode: "{mode}"
cwd: "{cwd}"
color: "{color}"
prompt: |
{full prompt content}
# ... All non team-lead members
tasks:
- original_id: "{original task ID, only used for dependency mapping}"
subject: "{task title}"
description: |
{detailed task description}
active_form: "{in-progress description}"
status: "{pending / in_progress / completed}"
owner: "{owner name, corresponds to name in members, empty string means unassigned}"
blocked_by: ["{dependent original_id}", ...] # Empty array means no dependencies
- original_id: "2"
subject: "..."
description: |
...
active_form: "..."
status: "pending"
owner: ""
blocked_by: ["1"]
# ... All tasks (including completed ones, to record full history)Team snapshot saved to: .team-profiles/{save_name}.yaml
Contains configuration for {N} members (excluding team-lead) and {M} task records.
Use /team-load {save_name} to directly load this team.|.bakplanModeRequiredfalse