Skip to content
Development
Skill

/workspace-prune-working

Clean up .aiwg/working/ by promoting, archiving, or deleting temporary files

From plugin
aiwg
213200 skills199 agents26 commands
Install
$ npx -y skills add jmagly/aiwg --skill workspace-prune-working --agent claude-code

How it fires

How this skill gets triggered: by you, by Claude, or both.

  • Fires itselfAuto-invocation. Claude auto-loads it when your prompt matches the work.Auto-invocation is when the right skill fires by itself at the right moment, driven by a FLOW.md router and a hook, instead of you invoking it by name. It is the difference between a skill being installed and a skill actually getting used.Read the full definition →
  • You can call itInvoke it directly when you want it.
  • Slash command/workspace-prune-working

Context preview

The summary Claude sees to decide when to auto-load this skill.

Clean up .aiwg/working/ by promoting, archiving, or deleting temporary files

SKILL.md

workspace-prune-working.SKILL.md
namespace: aiwg
name: workspace-prune-working
platforms: [all]
description: Clean up .aiwg/working/ by promoting, archiving, or deleting temporary files

Workspace Prune Working

Clean up the `.aiwg/working/` directory by intelligently handling temporary files. Promotes valuable content to the main documentation structure, archives content worth preserving, and deletes truly temporary files.

Parameters

| Flag | Description | |------|-------------| | `project-directory` | Project root (default: `.`) | | `--promote-all` | Promote all promotable files without prompting | | `--archive-all` | Archive all archivable files without prompting | | `--delete-all` | Delete all deletable files without prompting | | `--dry-run` | Preview changes without modifying files | | `--interactive` | Prompt for each file decision | | `--force` | Skip confirmation prompts |

Purpose of .aiwg/working/

The `.aiwg/working/` directory is designated for:

  • Multi-agent work-in-progress drafts
  • Temporary scratch files during orchestration
  • Review feedback before synthesis
  • Iterative document versions

It is **NOT** a permanent storage location. Files here should eventually be:

  • **Promoted** → Moved to appropriate `.aiwg/` subdirectory as finalized docs
  • **Archived** → Preserved in `.aiwg/archive/` for historical reference
  • **Deleted** → Removed when no longer useful

Execution Steps

Step 1: Scan Working Directory

Inventory all files in `.aiwg/working/`:

# List all files with metadata
find .aiwg/working -type f -exec stat -c '%Y %s %n' {} \; | sort -rn

# Count by subdirectory
find .aiwg/working -mindepth 1 -maxdepth 1 -type d | while read dir; do
  echo "$(basename "$dir"): $(find "$dir" -type f | wc -l) files"
done

Report:

Working Directory Scan
======================
Total files: 23
Total size:  145 KB

By Category:
  architecture/   8 files (SAD drafts, reviews)
  requirements/   5 files (UC iterations)
  testing/        4 files (test plan drafts)
  scratch/        6 files (temporary notes)

Age Distribution:
  < 1 day:    4 files
  1-7 days:   8 files
  > 7 days:  11 files

Step 2: Classify Files

Analyze each file to determine appropriate action:

**Classification Criteria:**

| Classification | Criteria | Action | |----------------|----------|--------| | PROMOTE | Final/reviewed version, high quality, no TODOs | Move to main .aiwg/ structure | | ARCHIVE | Useful history, superseded, completed work | Move to .aiwg/archive/ | | DELETE | Scratch notes, duplicates, empty, truly temp | Remove | | REVIEW | Unclear status, needs human decision | Flag for review |

**File Analysis Heuristics:**

def classify_file(filepath):
    content = read_file(filepath)
    filename = basename(filepath)

    # Check for finalization markers
    if "FINAL" in filename or "APPROVED" in filename:
        return "PROMOTE"
    if "BASELINED" in content or "Status: Approved" in content:
        return "PROMOTE"

    # Check for draft/WIP markers
    if "DRAFT" in filename or "WIP" in filename:
        if file_age_days(filepath) > 14:
            return "ARCHIVE"  # Old draft, archive for reference
        return "REVIEW"  # Recent draft, needs decision

    # Check for review files
    if "review" in filename.lower():
        if "synthesized" in get_parent_files(filepath):
            return "DELETE"  # Reviews already synthesized
        return "ARCHIVE"  # Keep reviews for audit

    # Check for scratch/temp patterns
    if "scratch" in filepath or "temp" in filepath:
        if file_age_days(filepath) > 3:
            return "DELETE"
        return "REVIEW"

    # Check for versioned files
    if re.match(r'v\d+\.\d+', filename):
        if not is_latest_version(filepath):
            return "ARCHIVE"
        return "PROMOTE"  # Latest version should be promoted

    # Default: needs review
    return "REVIEW"

Report:

File Classification
===================

PROMOTE (4 files):
  .aiwg/working/architecture/sad/v0.3-final.md
    → .aiwg/architecture/software-architecture-doc.md
    Reason: Final version, approved status

  .aiwg/working/requirements/uc-auth-approved.md
    → .aiwg/requirements/use-cases/uc-auth.md
    Reason: Approved use case

  .aiwg/working/testing/test-plan-baselined.md
    → .aiwg/testing/master-test-plan.md
    Reason: Baselined marker found

  .aiwg/working/architecture/adr-001-final.md
    → .aiwg/architecture/decisions/adr-001.md
    Reason: Final ADR

ARCHIVE (6 files):
  .aiwg/working/architecture/sad/v0.1-draft.md
    → .aiwg/archive/architecture/sad-v0.1-20251209.md
    Reason: Superseded by v0.3

  .aiwg/working/architecture/sad/reviews/security-review.md
    → .aiwg/archive/reviews/sad-security-review-20251209.md
    Reason: Review already synthesized

  .aiwg/working/architecture/sad/reviews/test-review.md
    → .aiwg/archive/reviews/sad-test-review-20251209.md
    Reason: Review already synthesized

  ... (3 more)

DELETE (8 files):
  .aiwg/working/scratch/notes.md
    Reason: Scratch file, 12 days old

  .aiwg/working/scratch/temp-analysis.md
    Reason: Temp file prefix, empty content

  .aiwg/working/architecture/sad/v0.2-draft.md
    Reason: Intermediate draft, v0.3 exists

  ... (5 more)

REVIEW (5 files):
  .aiwg/working/requirements/nfr-draft.md
    Reason: Recent draft (3 days), unclear status

  .aiwg/working/testing/integration-tests-wip.md
    Reason: WIP marker, may be active work

  ... (3 more)

Step 3: Determine Promotion Targets

Map working files to their correct permanent locations:

Promotion Mapping
=================

.aiwg/working/architecture/ → .aiwg/architecture/
  sad/*.md                  → software-architecture-doc.md
  adr-*.md                  → decisions/adr-*.md
  diagrams/                 → diagrams/

.aiwg/working/requirements/ → .aiwg/requirements/
  uc-*.md                   → use-cases/
  nfr-*.md                  → nfrs/
  user-story-*.md           → user-stories/

.aiwg/working
Read more
Ships withaiwg

Reusable project context and specialist workflows for the AI tools you already use. Plan software, coordinate specialist reviews, prepare campaigns, investigate incidents, organize research, curate media, and maintain operational knowledge.

Get the whole plugin

Other skills on aiwg.