Token导航 LogoToken导航TokenDH.com
研究检索需要联网github未标认证来源可访问clear审计提醒

architecting-solutions架构解决方案

Agent Skill

architecting-solutions 用于查找、检索和筛选相关信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要根据关键词、任务场景或来源线索快速定位候选结果时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

12,999

周安装

531

GitHub Stars

47

下载量

4,206
CodexClaudeCursorGemini CLI

安装说明

本站只整理中文说明和来源信息,不托管安装包,也不代用户安装。

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

复制提示词发给支持本地命令或 Skills 的 AI 助手,先确认命令和权限,再让它执行。

请帮我安装这个 Agent Skill:architecting-solutions(架构解决方案)
来源仓库:https://github.com/charon-fan/agent-playbook
仓库路径:skills/architecting-solutions
安装命令:
npx skills add https://github.com/charon-fan/agent-playbook --skill architecting-solutions
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

复制命令到本机终端执行。不同来源提供的安装方式可能略有差异;本站展示可直接复制的安装命令,安装前请核对来源页面。

skills.shnpx skills
npx skills add https://github.com/charon-fan/agent-playbook --skill architecting-solutions

简介

用于创建详细的产品需求文档(PRD)和技术实施方案。

  • 适合需求分析、功能定义和技术计划制定场景。architecting-solutions 属于研究检索类 Skill,可作为该场景下的辅助能力补充。
  • 通过结构化流程澄清需求、分析上下文并输出可执行方案。
  • 安装需指定 GitHub 仓库路径,使用前建议核验维护状态。
  • 涉及代码变更时应确认读写权限和网络访问能力。

SKILL.md

Architecting Solutions

Analyzes requirements and creates detailed PRD documents for software implementation.

Description

Use this skill when you need to:

  • Create PRD documents
  • Design software solutions
  • Analyze requirements
  • Specify features
  • Document technical plans
  • Plan refactoring or migration

Installation

This skill is typically installed globally at ~/.claude/skills/architecting-solutions/.

How It Works

The skill guides Claude through a structured workflow:

  1. Clarify requirements - Ask targeted questions to understand the problem
  2. Analyze context - Review existing codebase for patterns and constraints
  3. Design solution - Propose architecture with trade-offs considered
  4. Generate PRD - Output markdown PRD to {PROJECT_ROOT}/docs/ directory

IMPORTANT: Always write PRD to the project's docs/ folder, never to plan files or hidden locations.

Workflow

Copy this checklist and track progress:

Requirements Analysis:
- [ ] Step 1: Clarify user intent and success criteria
- [ ] Step 2: Identify constraints (tech stack, timeline, resources)
- [ ] Step 3: Analyze existing codebase patterns
- [ ] Step 4: Research best practices (if needed)
- [ ] Step 5: Design solution architecture
- [ ] Step 6: Generate PRD document (must be in {PROJECT_ROOT}/docs/)
- [ ] Step 7: Validate with user

Step 1: Clarify Requirements

Ask these questions to understand the problem:

Core Understanding

  • Problem Statement: What problem are we solving? What is the current pain point?
  • Success Criteria: How do we know this is successful? Be specific.
  • Target Users: Who will use this feature? What are their goals?

For Refactoring/Migration:

  • Why Refactor?: What's wrong with current implementation? Be specific.
  • Breaking Changes: What will break? What needs migration?
  • Rollback Plan: How do we revert if something goes wrong?

Step 2: Identify Constraints

  • Technical Constraints: Existing tech stack, architecture patterns, dependencies
  • Time Constraints: Any deadlines or phases?
  • Resource Constraints: Team size, expertise availability
  • Business Constraints: Budget, external dependencies, third-party APIs

Step 3: Analyze Existing Codebase

# Find similar patterns in the codebase
grep -r "related_keyword" packages/ --include="*.ts" --include="*.tsx"

# Find relevant directory structures
find packages/ -type d -name "*keyword*"

# Check existing patterns
ls -la packages/kit/src/views/similar-feature/

Critical for Refactoring:

  • Find ALL consumers of the code being changed
  • Identify ALL state/data flows
  • Trace ALL entry points and exit points
  • Look for existing mechanisms that might solve the problem already
# Find all imports/usages of a module
grep -r "useFeatureContext" packages/ --include="*.ts" --include="*.tsx"
grep -r "refreshSignalRef" packages/ --include="*.ts" --include="*.tsx"

CRITICAL: Before proposing a refactoring, ask:

  1. Is there an existing mechanism that can be extended?
  2. What's the simplest possible solution?
  3. Can we solve this with minimal changes?
  4. Does my solution actually connect the dots? (e.g., empty callbacks won't work)

Look for:

  • Architectural patterns: How are similar features implemented?
  • State management: What state solution is used? (Jotai, Redux, Context, Refs)
  • Component patterns: How are components organized?
  • API patterns: How are API calls structured?
  • Type definitions: Where are types defined?

Step 4: Research Best Practices

For unfamiliar domains, search for best practices.

Step 5: Design Solution Architecture

CRITICAL: Consider Multiple Solutions

Before settling on a solution, ALWAYS present multiple options:

  1. Minimal Change Solution - What's the absolute smallest change that could work?
  2. Medium Effort Solution - Balanced approach with some refactoring
  3. Comprehensive Solution - Full architectural overhaul

Example:

Problem: Data doesn't refresh after operation

Option 1 (Minimal): Hook into existing pending request count decrease
  - Changes: 1-2 files
  - Risk: Low
  - Selected: ✓

Option 2 (Medium): Add refresh callback through existing shared context
  - Changes: 3-5 files
  - Risk: Medium

Option 3 (Comprehensive): Migrate to a centralized state-store pattern
  - Changes: 10+ files, new atoms/actions
  - Risk: High
  - Time: 2-3 days

Ask user BEFORE writing PRD:

  • Which option do you prefer?
  • Are you open to larger refactoring?
  • What's your tolerance for change?

Architecture Design Principles

  1. Simplicity First: Choose the simplest solution that meets requirements
  2. Progressive Enhancement: Start with MVP, extend iteratively
  3. Separation of Concerns: UI, logic, and data should be separated
  4. Reusability: Design components that can be reused
  5. Testability: Design for easy testing

Document Trade-offs

For each major decision, document:

OptionProsConsSelected
Approach APro1, Pro2Con1
Approach BPro1Con1, Con2

Step 6: Generate PRD Document

IMPORTANT: Always write PRD to the project's docs/ directory, never to plan files or hidden locations.

Output location: {PROJECT_ROOT}/docs/{feature-name}-prd.md

Example:

  • If project root is /Users/user/my-project/, write to /Users/user/my-project/docs/feature-name-prd.md
  • Use kebab-case for filename: data-refresh-logic-refactoring-prd.md

Step 7: Validate with User

Before finalizing:

  1. Review success criteria - Do they align with user goals?
  2. Check constraints - Are all constraints addressed?
  3. Verify completeness - Can another agent implement from this PRD?
  4. Confirm with user - Get explicit approval before finalizing

PRD Quality Checklist

Content Quality

  • Problem statement is clear and specific
  • Success criteria are measurable
  • Functional requirements are unambiguous
  • Non-functional requirements are specified
  • Constraints are documented
  • Trade-offs are explained

Implementation Readiness

  • Architecture is clearly defined
  • File structure is specified
  • API contracts are defined (if applicable)
  • Data models are specified
  • Edge cases are considered
  • Testing approach is outlined

Agent-Friendliness

  • Another agent can implement without clarification
  • Code examples are provided where helpful
  • File paths use forward slashes
  • Existing code references are accurate

Root Cause Analysis Checklist (CRITICAL)

For bugs and refresh issues, ALWAYS verify:

  • Existing mechanism already exists - Does a working solution exist elsewhere?
  • Why existing solution doesn't work - Timing? Scope? Not connected?
  • Each hook/component instance is independent - They don't share state unless explicitly connected
  • Callback chain is complete - Trace from trigger to effect, every link must work
  • Empty callbacks are called - If onRefresh is provided, is it actually implemented?
  • Polling/refresh timing - What are the intervals? When do they fire?

Common Root Cause Mistakes:

  • Assuming hooks share state (they don't - each instance is independent)
  • Empty callback implementations that do nothing
  • Not tracing the full call chain from trigger to effect
  • Not understanding when events fire (e.g., revalidateOnFocus requires actual focus change)

Migration Scope Completeness

  • ALL existing state is accounted for: List every piece of state being migrated

- What states are being migrated? (e.g., items, summary, isLoading, filters, pendingRequests) - What's the migration strategy for each? (direct move / transform / deprecate)

  • ALL consumers are identified: Find every file that uses the code being changed # Must run: grep -r "import.*ModuleName" packages/ # Must run: grep -r "useHookName" packages/
  • Provider usage points are covered: Every file using the Provider is updated

- Root Provider → Mirror Provider migration - All pages/components using the provider

State/Data Flow Validation

  • No orphaned state: Every piece of state has a clear source and consumer
  • No dead state: Every new state/state variable has a defined purpose and consumer
  • No undefined references: All imports/references resolve to existing code
  • Complete call chain documented: From trigger → callback → effect, show every step
  • All related operations covered: If module has Create/Edit/Delete/Import/Export, test all of them

React/Hook Rules Compliance

  • No conditional hooks: Never call hooks conditionally (e.g., isAdvancedMode? useHook(): null)

- Hooks MUST be called at the top level, unconditionally - If conditional logic is needed, use early return or conditional rendering

  • Ref usage is correct: If using ref pattern, access via .current

- Check: useFeatureActions().current not useFeatureActions()

Provider Pattern Completeness

  • Root Provider is defined: Main Provider component exists
  • Mirror Provider is defined: Mirror Provider for modal/overlay contexts exists
  • All usage points wrapped: Every page/component using the provider is wrapped # Must verify: Each page that uses the context has the Provider wrapper

Auto-mount/System Integration

  • Enum registration: Added to appropriate enum (e.g., EContextStoreNames)
  • Switch case registration: Added to auto-mount switch statement
  • Store initialization: Store initialization logic is complete
  • No duplicate registrations: Verify no conflicts with existing entries

Backward Compatibility

  • Existing consumers work: Code using the old pattern still works during migration
  • Migration path is clear: How do consumers migrate to the new pattern?
  • Deprecation timeline: When is the old pattern removed?

Code Examples

  • Before/After comparisons: Show code changes clearly
  • Type definitions are accurate: TypeScript types match the implementation
  • Import paths are correct: All imports use correct workspace paths

Common Anti-Patterns to Avoid

Anti-PatternBetter Approach
"Optimize the code""Reduce render time from 100ms to 16ms by memoizing expensive calculations"
"Make it faster""Implement caching to reduce API calls from 5 to 1 per session"
"Clean up the code""Extract duplicate logic into shared utility functions"
"Fix the bug""Handle null case in getUserById when user doesn't exist"
"Refactor the state layer""Migrate from Context+Ref to a centralized store: "
Over-engineeringStart with simplest solution, extend only if needed

Over-Engineering Warning (Critical Lesson)

The Problem with Jumping to Complex Solutions

Real Case Study:

  • PRD Proposed: Full shared state-store migration (10+ files, 2-3 days)
  • Actual Solution: Hook into existing pending request count decrease (1-2 files, 1 hour)
  • Lesson: Always look for the simplest solution first

Signs You Might Be Over-Engineering

  • ❌ Proposing new patterns when existing ones could work
  • ❌ Creating new state management before exhausting current options
  • ❌ Multiple new files when one file change could suffice
  • ❌ "Best practice" justification without considering practicality

Questions to Ask Before Writing PRD

  1. Is there an existing mechanism that does 80% of what we need?
  2. Can we extend/modify existing code instead of creating new patterns?
  3. What's the absolute minimum change to solve THIS problem?
  4. Does the user actually want a major refactor?
  5. Does my solution's callback actually do something? (Empty callbacks are bugs!)
  6. Have I traced the complete call chain? (Trigger →... → Effect)

When Comprehensive Solutions ARE Appropriate

  • Current architecture is fundamentally broken
  • Technical debt is blocking all new features
  • Team has explicitly decided to modernize
  • Problem will recur if not properly addressed

Key: Comprehensive solutions should be a CHOICE, not the DEFAULT.


Patterns for Common Scenarios

New Feature Implementation

1. Read similar feature implementations
2. Identify reusable patterns
3. Design component hierarchy
4. Define state management approach
5. Specify API integration points
6. List all new files to create
7. List all existing files to modify

Refactoring Existing Code

1. Analyze current implementation
2. Find ALL consumers (grep -r imports)
3. Identify pain points and technical debt
4. PROPOSE MULTIPLE SOLUTIONS (minimal → comprehensive)
5. GET USER APPROVAL on approach
6. Plan migration strategy (phased vs big-bang)
7. Define rollback approach
8. List migration checklist

# CRITICAL: Start with the simplest solution!
# Only propose comprehensive refactoring if user explicitly wants it.

Bug Fix Investigation

1. Understand expected vs actual behavior
2. Locate root cause in code
3. Identify affected areas
4. Design fix approach
5. Specify testing for regression prevention

Reference Materials

  • PRD Template: Look at existing PRDs in the project's docs/ folder
  • Similar Implementations: Reference similar features/modules in the codebase

Tips for Effective PRDs

  1. Be Specific: "Improve performance" → "Reduce API response time from 2s to 500ms"
  2. Show Context: Explain why a decision was made, not just what was decided
  3. Include Examples: Show code snippets for complex patterns
  4. Think About Edge Cases: What happens when API fails? User has no data?
  5. Consider Migration: For refactoring, how do we move from A to B safely?
  6. List ALL Changes: For refactoring, list every file that changes
  7. Validate Imports: Verify all import paths exist and are correct
  8. Check Hook Rules: Ensure no conditional hooks, proper hook dependencies

Accuracy & Completeness (Critical Lessons from Real PRD Reviews)

Technical Terms - Be Precise

WrongCorrectWhy
"Shared state""Each instance polls independently"Hooks don't share state unless explicitly connected
"Pending changes""Pending count decreases"Code checks !isPending && prevIsPending (true→false)
"Triggers refresh""Calls navigation.goBack() which triggers..."Show the complete chain

Call Chain Documentation - Don't Skip Steps

Bad: "onRefresh triggers data refresh" Good:

onRefresh() → navigation.goBack() → Dashboard focused
  → usePromiseResult (revalidateOnFocus: true) fires
  → refreshItems() → handleRefresh()
  → fetchItems() + refreshSummary() + refreshMetrics()

Include file paths and line numbers for each step!

Test Coverage - Cover ALL Operations

If module has 5 operations (Create/Edit/Delete/Import/Export), test all 5. Don't just test the 2 you're focused on.

Timeline Analysis for Refresh/Timing Issues

Draw out the timeline:

0s  ---- Modal opens, user starts Edit
10s ---- Action submitted, pending: 0→1
15s ---- Modal closes
        └─ Dashboard hook last polled at 5s
        └─ Next poll at 35s (25s away!) ❌

This shows WHY it doesn't work.

Common PRD Mistakes

MistakeExampleFix
Empty callbackonRefresh: () => {}Implement actual logic or remove
Incomplete root cause"It doesn't refresh"Explain WHY: timing/scope/disconnected
Missing call chain"Somehow triggers refresh"Document every step with file:line
Incomplete testingOnly test Create/EditAlso test Delete/Import/Export
Assumptions as facts"revalidateOnFocus fires on modal close"Verify: only fires on actual focus change
Wrong trigger condition"Pending changes"Code shows: !isPending && prevIsPending (decreases)

适合场景

01

用户想查找某类 Agent Skill 时

02

需要根据任务场景推荐可安装能力包时

03

需要对比不同来源的安装命令和来源信息时

04

需要参考平台分布和安装热度时

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

保留来源站点、仓库和原始说明,方便继续核验

能力 4

补充不同宿主或平台的使用分布数据

能力 5

展示第三方安全扫描或审计结果

安装后应在对应宿主中按原始 README 的触发条件使用;具体调用方式请以来源页面和 README 为准。

平台分布

Claude Code

30.22%
按下载量换算1,271

OpenCode

23.49%
按下载量换算988

Codex

17.84%
按下载量换算750

Antigravity

12.92%
按下载量换算543

Gemini CLI

8.28%
按下载量换算348

windsurf

3.82%
按下载量换算161

安全审计

Gen Agent Trust Hub

通过

Socket

可疑

Snyk

通过

权限和风险

需要联网

该 Skill 可能需要联网访问来源站点、仓库或外部 API;具体网络访问范围需要结合源码和 README 复核。

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。来源安全扫描存在 warning/failed 结果,不能写成本站确认安全。

来源信息

继续浏览同类 Skills