From forge
Structured idea exploration before committing to a plan. Explores approaches, trade-offs, and constraints collaboratively. Use this BEFORE planning any non-trivial work.
npx claudepluginhub ekelhaft-tools/forge-cursorThis skill uses the workspace's default tool permissions.
Help the user explore ideas and approaches before committing to a plan. The output is a structured brainstorm document saved to the session directory.
Creates isolated Git worktrees for feature branches with prioritized directory selection, gitignore safety checks, auto project setup for Node/Python/Rust/Go, and baseline verification.
Executes implementation plans in current session by dispatching fresh subagents per independent task, with two-stage reviews: spec compliance then code quality.
Dispatches parallel agents to independently tackle 2+ tasks like separate test failures or subsystems without shared state or dependencies.
Help the user explore ideas and approaches before committing to a plan. The output is a structured brainstorm document saved to the session directory.
Do NOT create a plan, write code, or take any implementation action during brainstorming. The ONLY output is the brainstorm document. After brainstorming, the user invokes `forge plan` separately.Forge sessions are stored in .forge/sessions/<id>/. Multiple sessions let you run several forge workflows in parallel in the same project.
$ARGUMENTS: If the first token is a number or short identifier (e.g. 1, 42, auth-refactor), use it as the session ID.ls .forge/sessions/ 2>/dev/null | sort
1)max existing numeric ID + 1, or 1 if none). Show the user the assigned ID. Then mkdir -p .forge/sessions/<id>/.SESSION_DIR = .forge/sessions/<id>/ — all file paths in this skill are relative to this directory.
You MUST follow these steps in order:
Check .forge/config.json:
notion key exists → ask: "Soll ich eine existierende Notion-Seite als Input verwenden?" (AskQuestion: "Ja, Notion-Seite lesen" / "Nein, direkt loslegen"). If yes, load notion-sync → Operation C (Pull from Notion) and use content as additional context.linear key exists → ask: "Soll ich offene Linear-Issues als Kontext einlesen?" (AskQuestion: "Ja" / "Nein"). If yes, load linear-sync → list open issues from the project and summarize as additional context.These prompts are skipped if the user already provided clear input via $ARGUMENTS.
After understanding the codebase context, assess whether external research would help:
If yes, ask the user using AskQuestion:
If the user says yes:
research skill instructions (pass session ID so it writes to the same session)$SESSION_DIR/research.mdSave to $SESSION_DIR/brainstorm.md:
# Brainstorm: <title>
## Goal
<what we're trying to achieve — 1-3 sentences>
## Chosen Approach
<selected approach with rationale — a short paragraph>
## Key Decisions
- <decision>: <choice> — <why>
- <decision>: <choice> — <why>
## Scope
- **IN**: <what's included>
- **OUT**: <what's explicitly excluded>
## Files Likely Affected
- `path/to/file.ts` — <what changes>
- `path/to/other.ts` — <what changes>
## Research (if conducted)
- See `$SESSION_DIR/research.md` for full findings
- <key insight that influenced the chosen approach>
## Risks / Open Questions
- <anything unresolved that planning should address>
Create $SESSION_DIR if it doesn't exist. If $SESSION_DIR/brainstorm.md already exists, ask the user whether to overwrite or append.
After saving $SESSION_DIR/brainstorm.md, load and follow the notion-sync skill:
Tell the user:
$SESSION_DIR/brainstorm.md (session <id>)forge plan <id> to create an execution plan from it