CtrlK
BlogDocsLog inGet started
Tessl Logo

zip-export-deliverable

Ensures codebase deliverables are properly exported as ZIP archives through a dedicated finalization step

61

Quality

71%

Does it follow best practices?

Run evals on this skill

Adds up to 20 points to the overall score

View guide

SecuritybySnyk

Passed

No findings from the security scan

Fix and improve this skill with Tessl

tessl review fix ./benchmarks/gdpval/skills/zip-export-deliverable/SKILL.md
SKILL.md
Quality
Evals
Security

ZIP Export Deliverable Finalization

Purpose

When a task requires delivering a codebase or project directory as a ZIP archive, this skill ensures the deliverable is actually created through an explicit finalization step, rather than assuming directory creation equals completion.

When to Apply

Use this skill when:

  • The task deliverable is a codebase, project, or directory structure
  • The deliverable must be exported or packaged as a ZIP file
  • You have already created the project files and directory structure

Common Pitfall

Do NOT assume that creating the project directory and files means the deliverable is complete. The ZIP archive itself must be explicitly created as a final step.

Step-by-Step Instructions

Step 1: Verify Project Structure

Before creating the ZIP, confirm all required files and directories exist:

ls -la ./project/
# or
find ./project -type f | head -20

Step 2: Create Dedicated Final Iteration

Add a final step/iteration specifically for ZIP creation. This should be a distinct action, not combined with other tasks.

Step 3: Execute ZIP Command

Run the zip command with recursive flag:

zip -r project.zip ./project

Or with a custom name:

zip -r <deliverable-name>.zip ./<project-directory>

Step 4: Verify ZIP Creation

Confirm the ZIP file was created successfully:

ls -lh project.zip
# Should show file size > 0
unzip -l project.zip | head -20
# Should list contents

Step 5: Report Completion

Explicitly confirm the ZIP deliverable has been created in your final response to the user.

Code Example

import subprocess
import os

def finalize_deliverable(project_dir="project", zip_name="project.zip"):
    """Create ZIP archive of project deliverable."""
    
    # Step 1: Verify project exists
    if not os.path.exists(project_dir):
        raise FileNotFoundError(f"Project directory {project_dir} not found")
    
    # Step 2: Create ZIP
    result = subprocess.run(
        ["zip", "-r", zip_name, f"./{project_dir}"],
        capture_output=True,
        text=True
    )
    
    if result.returncode != 0:
        raise RuntimeError(f"ZIP creation failed: {result.stderr}")
    
    # Step 3: Verify
    zip_size = os.path.getsize(zip_name)
    print(f"Created {zip_name} ({zip_size} bytes)")
    
    return zip_name

Checklist

  • All project files are created in the expected directory
  • A dedicated step is allocated for ZIP creation
  • zip -r <name>.zip ./<directory> command is executed
  • ZIP file existence and size are verified
  • Deliverable completion is explicitly confirmed to the user

Related Patterns

  • File creation should always include verification steps
  • Deliverables should be explicitly validated before marking tasks complete
  • Archive/export operations need their own iteration, not implicit completion
Repository
HKUDS/OpenSpace
Last updated
First committed

Is this your skill?

If you maintain this skill, you can claim it as your own. Once claimed, you can manage eval scenarios, bundle related skills, attach documentation or rules, and ensure cross-agent compatibility.