Fix convert.mjs to resolve canvas from .export-runtime via createRequire
instead of bare import (which resolves relative to script location, not CWD).
Add File Location Convention section to SKILL.md — diagrams save .excalidraw
source alongside PNGs in the project's image directory for easy re-export.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Replace the charCount * fontSize * 0.55 text sizing heuristic with canvas-based
measurement (graceful fallback when native deps unavailable). Add validate.mjs for
automated spatial checks (text overflow, arrow-text collisions, element overlap).
Update element format reference with sizing rules, label guidelines, and arrow routing
conventions. Add verification step to SKILL.md workflow.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Updated docs/specs/windsurf.md and the plan to accurately document
that global scope workflows go in global_workflows/ while workspace
scope workflows go in workflows/.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Fix resolve-pr-parallel SKILL.md name from underscores to hyphens
(must match directory name per Windsurf spec)
- Add scope parameter to TargetHandler.write signature
- Pass resolvedScope through to writer in convert.ts and install.ts
- Windsurf writer uses global_workflows/ for global scope, workflows/
for workspace scope
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add `--to windsurf` target for the converter CLI with full spec compliance
per docs/specs/windsurf.md:
- Claude agents → Windsurf skills (skills/{name}/SKILL.md)
- Claude commands → Windsurf workflows (workflows/{name}.md, flat)
- Pass-through skills copy unchanged
- MCP servers → mcp_config.json (merged with existing, 0o600 permissions)
- Hooks skipped with warning, CLAUDE.md skipped
Global scope support via generic --scope flag (Windsurf as first adopter):
- --to windsurf defaults to global (~/.codeium/windsurf/)
- --scope workspace for project-level .windsurf/ output
- --output overrides scope-derived paths
Shared utilities extracted (resolveTargetOutputRoot, hasPotentialSecrets)
to eliminate duplication across CLI commands.
68 new tests (converter, writer, scope resolution).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add proof skill for collaborative document editing via Proof's web API
and local bridge. Integrate Proof uploads into brainstorm and plan
workflows so outputs get a shareable URL automatically.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Reports and decisions are implementation artifacts that don't need to
persist in the repository. Plans in docs/plans/ are retained as living
documents that track implementation progress.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Strengthen brainstorm intake: thorough read, carry ALL content, reference source inline
- Add origin: frontmatter field to all three plan templates (MINIMAL, MORE, A LOT)
- Rename References to Sources sections, add brainstorm as first entry
- Add brainstorm cross-check checklist in final review step
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- Add System-Wide Test Check to work command task execution loop (5 questions: callbacks, real chain coverage, orphaned state, API parity, error alignment)
- Add integration test guidance to Test Continuously section
- Add System-Wide Impact sections to plan templates (MORE + A LOT)
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
- fix(lfg, slfg): make ralph-loop step optional — graceful fallback
when ralph-wiggum skill not installed (#154); add explicit
"do not stop" instruction across all pipeline steps (#134)
- fix(plan): add mandatory "Write Plan File" step with explicit Write
tool instructions before post-generation options — plan always
written to disk even in LFG/SLFG pipeline context (#155, #134)
- fix(plan): use full qualified agent name for spec-flow-analyzer
to prevent Claude prepending wrong 'workflows:' prefix (#193)
Closes#154, #155, #193
Contributing to #134
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Stop stripping namespace prefixes when converting commands to Copilot
skills. `workflows:plan` now becomes `workflows-plan` instead of just
`plan`, avoiding clashes with Copilot's own features in the chat UI.
Also updates slash command references in body text to match:
`/workflows:plan` → `/workflows-plan`.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
Add copilot case to resolveTargetOutputRoot so `install --to copilot`
writes to .github/ in the current directory instead of falling through
to the opencode default (~/.config/opencode).
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
The copilot entry in the targets record was missing its closing `},`
after merging with the gemini target branch, causing a parse error.
Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>