Skip to content
cccskills
FreePublished on GitHub

pre-impl-discussion

Evaluate a proposed software change before implementation. It examines project files and official sources, compares options and trade-offs, and builds a concrete plan covering affected systems, effort, risks, and unresolved questions for the user's approval.

OriginalShow the original description

Conduct a thorough pre-implementation discussion before making significant changes. Use when the user wants to discuss, plan, or evaluate a change before implementing it — especially when they say words like 'discuss', 'evaluate', 'plan', or 'let's talk about'.

See how to install

Good for

  • Discuss a major change before implementation
  • Compare migration or configuration options
  • Estimate affected files and implementation effort
  • Resolve risks and open questions before approving a plan

Files included (1)

  • SKILL.md5.0 KB

SKILL.md (original)

Review the instructions the agent will receive before you install.

Pre-Implementation Discussion

Facilitate a structured, collaborative discussion to evaluate a proposed change before any implementation begins.

Golden Rule

Do NOT implement anything until the user explicitly confirms the final plan and says to proceed. Not even "let me try on a branch" — that's implementation. The user will tell you when discussion is over.

Interaction Style

  • Concise during discussion. Each intermediate response should be short and focused on the current question. Do NOT repeat the full plan in every response.
  • Complete when finalizing. Once the plan is mature and the user asks for it, present a single comprehensive (but terse) summary for final review.
  • Ask, don't assume. When uncertain about project context, constraints, or preferences — ask. The user prefers collaborative discussion over receiving a pre-baked answer.
  • Challenge the premise. Question whether the proposed change is the right one. Suggest simpler alternatives if they exist.
  • Match the user's language. Reply in the same language the user writes in.

Procedure

1. Understand the Current State

Before forming any opinion:

  • Read the relevant source files — configs, code, docs that relate to the change
  • Understand the project structure — what's published vs private, what environments things target, existing constraints
  • Map the impact surface — which files, packages, or systems would be affected
  • Estimate implementation cost — how many files to touch, how much config to rewrite, what could break

Do NOT skip this step. Do NOT rely on assumptions about what "most projects" do.

2. Research Thoroughly

  • Consult official sources — docs, changelogs, migration guides, GitHub issues
  • Verify every claim with evidence. Don't say "X supports Y" without a source. If unsure, say so.
  • Search in parallel to save time — batch independent queries

Common pitfalls:

  • Assuming compatibility without checking actual version constraints
  • Confusing roadmap/aspirations with actual released state
  • Missing transitive constraints (a dependency of a dependency)

3. Present Findings (Concise)

Share a brief assessment. Tables work well for comparisons. Highlight blockers and unknowns prominently — don't bury them in paragraphs.

4. Identify Key Decisions

Surface the decisions the user needs to make. Present them as clear choices with trade-offs, not as a recommendation monologue.

For each decision point:

  • What are the options? (2-3 max)
  • What does each option cost or give up?
  • What's your lean and why? (one sentence)

5. Iterate

The user will ask follow-up questions, raise concerns, or challenge assumptions. For each round:

  • Research if needed — don't answer from instinct when facts are available
  • Answer only what was asked — don't re-present the entire plan
  • Update your mental model based on user feedback

Common mistakes in this phase:

  • Repeating the full plan after every small clarification
  • Answering a narrow question with a broad redesign
  • Treating user questions as confirmation to proceed

6. Finalize the Plan

When the user signals the discussion is converging, present the complete plan once:

  • What changes — concrete list of actions (table or bullet points)
  • Impact surface — what files/systems are affected, estimated effort
  • What does NOT change — explicitly state scope boundaries
  • Risks or open items — anything that needs testing or further verification

Keep it terse. Tables over paragraphs. No explanations the user already heard during discussion.

7. Wait for Confirmation

After presenting the final plan, stop and wait. The user will either:

  • Confirm → then (and only then) proceed to implementation
  • Ask more questions → go back to step 5
  • Modify scope → update the plan and re-present

Anti-Patterns

Don'tDo Instead
Start implementation "to test" without confirmationPresent findings and wait
Repeat the full plan in every responseAnswer the specific question asked
Say "X should work" without checkingSay "I need to verify X" and research it
Assume project structure or constraintsRead the actual files
Present one recommendation as the only optionPresent 2-3 options with trade-offs
Write long paragraphs explaining trade-offsUse tables and bullet points

Reviews

No reviews yet. Tell others what you thought.

Comments

No login needed. Share how it worked for you, ask a question, or note where it did not run.

No comments yet. Be the first to write one.

Comments are published right away. Do not include personal information such as email addresses or phone numbers. Up to 2 URLs.

0 / 1,000 characters

This form is protected by reCAPTCHA, and the Google Privacy Policy and Terms of Service apply.

More skills from this repository

git-cleanup

FreeSummary

Clean up local Git branches and remote connections left after pull request reviews. The workflow checks unfinished work, preserves main and the current branch, and requests confirmation before force-deleting branches that have not been merged.

  • Clean up branches after pull request reviews
  • Remove contributor remotes other than origin
  • Review unmerged branches before deletion
alibaba/page-agent29.5KUpdated Oct 18, 2026

Maintain an application's supported language models by checking provider availability, adding models, and keeping documentation, live tests, and model-specific request settings aligned. It also checks provider model identifiers and candidates for the recommended list.

  • Add support for a specific language model
  • Check whether listed models are still available
  • Update provider model identifiers
alibaba/page-agent29.5KUpdated Oct 18, 2026

Submit existing local changes as a pull request by reviewing the diff, running project checks, preparing a branch and commit, and pushing to GitHub. It follows contribution rules and preserves template declarations that require human verification.

  • Submit current local changes as a pull request
  • Prepare a branch and commit following project conventions
  • Run project checks before submission
alibaba/page-agent29.5KUpdated Oct 18, 2026

update-changelog

FreeSummary

Update a project's changelog using GitHub releases, git history, and code differences. Select changes that matter to users, match the existing format, and write concise entries for the requested release.

  • Add the latest missing release entry
  • Align changelog text with GitHub Releases
  • Summarize changes between release tags
alibaba/page-agent29.5KUpdated Oct 18, 2026

See all skills by alibaba

Report a problem with this skill