kramme-cc-workflow/skills/kramme:siw:reset/SKILL.md
Reset SIW workflow state while preserving the spec - migrates log decisions to spec, clears issues and log
npx skillsauth add abildtoft/kramme-cc-workflow kramme:siw:resetInstall this skill globally with one command. Works with Claude Code, Cursor, and Windsurf.
3 of 9 scanners reported clean
Some scanners were skipped, did not run, or reported a non-clean status. Review each row below.
Reset the SIW workflow state to start fresh while preserving the specification document. This command:
Use this when you've completed a phase of work and want to start fresh with new issues, or when the current issues are stale and need to be replaced.
/kramme:siw:reset
|
v
[Find SIW files] -> Not found? -> Show error, abort
|
v
[Check git status of siw/] -> Dirty? -> Confirm overwrite, else abort
|
v
[Analyze siw/LOG.md] -> Extract decisions, completed tasks, learnings
|
v
[Present migration candidates] -> User selects what to migrate
|
v
[Confirm destructive reset] -> Abort? -> Stop before changes
|
v
[Update spec file] -> Add selected content
|
v
[Clear issues] -> Delete siw/issues/ and reset siw/OPEN_ISSUES_OVERVIEW.md
|
v
[Reset siw/LOG.md] -> Fresh state with reference to migration
|
v
[Report results] -> Summary of changes
Check for required SIW files:
ls siw/LOG.md siw/OPEN_ISSUES_OVERVIEW.md siw/issues/ 2> /dev/null
# Synced SIW spec-exclusion contract (keep aligned across SIW spec detectors): `LOG.md`, `OPEN_ISSUES_OVERVIEW.md`, `DISCOVERY_BRIEF.md`, `SPEC_STRENGTHENING_PLAN.md`, `AUDIT_*.md`, `PRODUCT_AUDIT.md`, `SIW_*.md`.
find siw -maxdepth 1 -type f \( -name "*SPEC*.md" -o -name "*SPECIFICATION*.md" -o -name "*PLAN*.md" -o -name "*DESIGN*.md" \) \
! -name "LOG.md" \
! -name "OPEN_ISSUES_OVERVIEW.md" \
! -name "DISCOVERY_BRIEF.md" \
! -name "SPEC_STRENGTHENING_PLAN.md" \
! -name "AUDIT_*.md" \
! -name "PRODUCT_AUDIT.md" \
! -name "SIW_*.md" \
2> /dev/null
If siw/LOG.md doesn't exist:
No siw/LOG.md found. Nothing to reset.
To initialize a new SIW workflow, run /kramme:siw:init
Action: Abort.
If no spec file found:
Warning: No specification file found.
The reset will clear siw/LOG.md and siw/issues, but there's no spec to migrate content to.
Use AskUserQuestion to confirm proceeding without migration.
Step 5 deletes issue files and Step 6 overwrites siw/LOG.md, so dirty paths under siw/ will be lost. Check before continuing:
git status --porcelain -- siw/ 2> /dev/null
If output is non-empty, list the dirty paths and use AskUserQuestion with options "Proceed and discard changes" / "Abort". Abort by default if the user does not pick "Proceed".
Read references/migration-analysis.md, then analyze siw/LOG.md for decisions, completed tasks, guiding principles, and rejected alternatives that may be worth preserving in the spec.
Present candidates and ask which categories to migrate using references/migration-analysis.md. If the user selects nothing, treat that as "skip migration" and proceed to Step 4; log content will be lost on the LOG.md reset if the user confirms.
Before editing the spec file or running Step 5, explicitly confirm the destructive reset. This confirmation is required even when there is no content to migrate, when the working directory is not a git repository, or when Step 1.1 found no dirty SIW paths.
Summarize exactly what will be deleted or overwritten:
siw/issues/ISSUE-*.md issue filessiw/OPEN_ISSUES_OVERVIEW.mdsiw/LOG.mdsiw/LOG.md that was not selected for migrationUse AskUserQuestion:
header: "Confirm Reset"
question: "Resetting will delete issue files and overwrite siw/OPEN_ISSUES_OVERVIEW.md and siw/LOG.md. Continue?"
options:
- label: "Proceed with reset"
description: "Delete issue files and reset the SIW tracking documents"
- label: "Abort"
description: "Keep the current SIW workflow files unchanged"
If "Abort", stop before editing the spec, deleting issue files, or overwriting workflow documents.
If the user selected no migration categories in Step 3, skip this step and continue to Step 5.
For each selected migration category, update the spec file. Resolve {date} placeholders with today's date (date +%Y-%m-%d); derive {date range} from the earliest and latest entries in the LOG's Current Progress section.
Before appending, scan the spec for an existing heading that matches the entry you are about to add — same Decision number/title, same principle text, same rejected approach. If found, skip that entry rather than duplicating it. This keeps re-runs from accreting copies into the spec.
Use assets/spec-migration-templates.md for the selected migration categories.
issue_paths=$(find siw/issues -maxdepth 1 -type f -name 'ISSUE-*.md' 2> /dev/null)
issue_count=$(printf '%s\n' "$issue_paths" | sed '/^$/d' | wc -l)
if [ -n "$issue_paths" ]; then
if command -v trash &> /dev/null; then
while IFS= read -r path; do
trash "$path"
done << EOF
$issue_paths
EOF
else
echo "Warning: 'trash' command not found. Issue files will be permanently deleted."
echo "Install with brew install trash (macOS) or your distro's trash-cli package (Linux)."
# Ask for explicit confirmation after the permanent-deletion warning, then run:
while IFS= read -r path; do
rm -f "$path"
done << EOF
$issue_paths
EOF
fi
fi
Do not suppress deletion errors. Capture stderr/stdout. After deletion, verify every issue file with [ ! -e "$path" ]. Record only verified-absent files in deleted_issue_paths, and record survivors in failed_delete_paths with the captured error.
Synced tracker status vocabulary: READY | IN PROGRESS | IN REVIEW | DONE.
Replace content with the empty table from assets/reset-document-templates.md.
Replace siw/LOG.md with the fresh initial state from assets/reset-document-templates.md.
The reset LOG template must keep these headings in this order:
Read references/summary-and-edge-cases.md and report results using its completion summary format.
Read references/summary-and-edge-cases.md for no-content and multiple-spec handling. Both edge cases still require Step 4 confirmation before any destructive reset action.
tools
Requires Linear MCP. Implements one Linear issue end to end, selects applicable code-review, convention, and PR-refactor gates, runs them to bounded convergence, verifies, and optionally opens the PR and iterates on CI and review feedback until green. Use when the user wants a single Linear issue taken from implementation through a clean Pull Request. Not for implementation-only work, SIW-tracked issues, stacked PRs, existing PR updates, or post-merge rollout.
development
Reviews PR and local changes for convention drift and overcaution against documented rules and mined peer-file practice. Use for new patterns, dependencies, abstractions, or defensive complexity that departs from established practice; every finding cites evidence. Supports --inline. Not for general code quality (use kramme:pr:code-review) or spec review (use kramme:siw:spec-audit --team).
testing
Charts huge or foggy initiatives into a local `.context` decision map and resolves one typed frontier ticket per session until the work is ready for SIW or another execution workflow. Use when the route to a destination cannot fit in one agent session or parallel workspaces need coordinated planning state. Not for clear specs, ordinary issue decomposition, implementation, or Linear-native tracking.
development
Investigates a question against primary sources and saves one cited Markdown artifact. Use for reading legwork: official docs/API facts, source-code or spec checks, standards, and first-party service behavior before planning or implementation. Not for making product or architecture decisions, implementing code, broad web search, secondary blog summaries, or uncited answers.