金色时刻 · 15:48
让好资源,触手可及
AGENT SKILL

investigation

investigation 是面向效率工具、文档处理、数据与分析的 Agent Skill,来自 talmolab/sleap。查看技能说明、操作步骤与使用约定,并通过原项目了解详细用法。

SKILL.md

下载 MD ↓

name: investigation description: > Scaffolds a structured investigation in scratch/ for empirical research and documentation. Use when the user says "start an investigation" or wants to: trace code paths or data flow ("trace from X to Y", "what touches X", "follow the wiring"), document system architecture comprehensively ("document how the system works", "archeology"), investigate bugs ("figure out why X happens"), explore technical feasibility ("can we do X?"), or explore design options ("explore the API", "gather context", "design alternatives"). Creates dated folder with README. NOT for simple code questions or single-file searches.


Set up an investigation

Instructions

  1. Create a folder in {REPO_ROOT}/scratch/ with the format {YYYY-MM-DD}-{descriptive-name}: bash mkdir scratch/$(uv run python -c "import datetime; print(datetime.date.today().isoformat())")-{descriptive-name}
  2. Create a README.md in this folder with: task description, background context, task checklist. Update with findings as you progress.
  3. Create scripts and data files as needed for empirical work.
  4. For complex investigations, split into sub-documents as patterns emerge.

Investigation Patterns

These are common patterns, not rigid categories. Most investigations blend multiple patterns.

Tracing - "trace from X to Y", "what touches X", "follow the wiring" - Follow call stack or data flow from a focal component to its connections - Can trace forward (X → where does it go?) or backward (what leads to X?) - Useful for: assessing impact of changes, understanding coupling

System Architecture Archeology - "document how the system works", "archeology" - Comprehensive documentation of an entire system or flow for reusable reference - Start from entry points, trace through all layers, document relationships exhaustively - For complex systems, consider numbered sub-documents (01-cli.md, 02-data.md, etc.)

Bug Investigation - "figure out why X happens", "this is broken" - Reproduce → trace root cause → propose fix - For cross-repo bugs, consider per-repo task breakdowns

Technical Exploration - "can we do X?", "is this possible?", "figure out how to" - Feasibility testing with proof-of-concept scripts - Document what works AND what doesn't

Design Research - "explore the API", "gather context", "design alternatives" - Understand systems and constraints before building - Compare alternatives, document trade-offs - Include visual artifacts (mockups, screenshots) when relevant - For iterative decisions, use numbered "Design Questions" (DQ1, DQ2...) to structure review

Best Practices

  • Use uv with inline dependencies for standalone scripts; for scripts importing local project code, use python directly (or uv run python if env not activated)
  • Use subagents for parallel exploration to save context
  • Write small scripts to explore APIs interactively
  • Generate figures/diagrams and reference inline in markdown
  • For web servers: npx serve -p 8080 --cors --no-clipboard &
  • For screenshots: use Playwright MCP for web, Qt's grab() for GUI
  • For external package API review: clone to scratch/repos/ for direct source access

Important: Scratch is Gitignored

The scratch/ directory is in .gitignore and will NOT be committed.

  • NEVER delete anything from scratch - it doesn't need cleanup
  • When distilling findings into PRs, include all relevant info inline
  • Copy key findings, code, and data directly into PR descriptions
  • PRs must be self-contained; don't reference scratch files

来源:talmolab/sleap · BSD 许可 · 许可原文 · MD 为来源页保存的历史版本