Token导航 LogoToken导航TokenDH.com
AI 工具需要联网github未标认证来源可访问clear审计通过

module-spec-generator模块规格生成器

Agent Skill

module-spec-generator 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息,适合在 Codex、Claude、Cursor、Gemini CLI 中需要围绕仓库状态、代码变更或协作事项进行整理时使用。可结合来源仓库、安装命令和原始 README 继续核验具体用法。安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。

总安装

2,328

周安装

144

GitHub Stars

55

下载量

816
CodexClaudeCursorGemini CLI

安装说明

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

GitHub

来源数

3

许可证

MIT

最后核验

2026-05-01

来源状态

来源可访问

安装方式

通过对话安装

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

请帮我安装这个 Agent Skill:module-spec-generator(模块规格生成器)
来源仓库:https://github.com/rysweet/amplihack
仓库路径:skills/module-spec-generator
安装命令:
npx skills add https://github.com/rysweet/amplihack --skill module-spec-generator
安装前请先检查当前环境是否支持对应 CLI,并向我确认将要执行的命令、安装目录、联网范围和文件读写权限;确认后再执行。

命令行安装

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

skills.shnpx skills
npx skills add https://github.com/rysweet/amplihack --skill module-spec-generator

简介

module-spec-generator 用于处理 GitHub 仓库、Issue、Pull Request 和代码协作信息。

  • 适合在 Codex、Claude、Cursor、Gemini CLI 中围绕仓库状态、代码变更或协作事项进行整理。
  • 通过 npx skills add 命令从指定 GitHub 仓库安装,需结合原始 README 确认具体用法。
  • 安装前建议确认权限范围、维护状态,以及是否会触发联网、命令执行或文件读写。
  • 可结合来源仓库和安装命令进一步核验实际功能和限制。

SKILL.md

Module Spec Generator Skill

Purpose

This skill automatically generates comprehensive module specifications from code analysis, ensuring adherence to amplihack's brick philosophy and enabling effective module regeneration without breaking system connections.

When to Use This Skill

  • Creating new modules: Generate specs before implementation to clarify requirements
  • Documenting existing modules: Extract specifications from working code for future reference
  • Module reviews: Verify specs accurately represent implemented contracts
  • Refactoring decisions: Use specs to understand module boundaries and dependencies
  • Knowledge preservation: Document expert patterns and design decisions

Core Philosophy: Bricks & Studs

Brick = Self-contained module with ONE clear responsibility Stud = Public contract (functions, API, data models) others connect to Regeneratable = Can be rebuilt from specification without breaking connections

A good spec enables rebuilding ANY module independently while preserving its connection points.

Specification Template

Every module specification includes these sections:

1. Module Overview

# [Module Name] Specification

## Purpose
One-sentence description of the module's core responsibility.

## Scope
What this module handles | What it explicitly does NOT handle

## Philosophy Alignment
How this module embodies brick principles and simplicity.

2. Public Contract (The "Studs")

## Public Interface

### Functions
- `function_name(param: Type) -> ReturnType`
  Brief description of what it does.

### Classes/Data Models
- `ClassName`
  - Fields: list with types
  - Key methods: list

### Constants/Enums
Important module-level constants and their purposes.

3. Dependencies

## Dependencies

### External Dependencies
- `library_name` (version): What it's used for

### Internal Dependencies
- `module_path`: How this module depends on it

### NO External Dependencies (Best Case)
Pure Python, standard library only.

4. Module Structure

## Module Structure

module_name/ ├── init.py # Public interface via all ├── core.py # Main implementation ├── models.py # Data models (if needed) ├── utils.py # Internal utilities ├── tests/ │ ├── init.py │ ├── test_core.py # Main functionality tests │ ├── test_models.py # Data model tests (if needed) │ └── fixtures/ │ └── sample_data.json └── examples/ └── basic_usage.py # Usage examples

5. Test Requirements

## Test Requirements

### Unit Tests
- Test 1: Purpose and what it verifies
- Test 2: ...

### Integration Tests (if applicable)
- Test 1: ...

### Coverage Goal
Target test coverage percentage (typically 85%+)

6. Example Usage

## Example Usage

from module_name import PublicFunction, DataModel

Usage example 1

result = PublicFunction(input_data)

Usage example 2

model = DataModel(field1="value", field2=123)

Step-by-Step Analysis Process

Step 1: Understand the Module

  1. Read all module files (focus on __init__.py and core implementations)
  2. Identify the single core responsibility
  3. Note architectural patterns used (classes, functions, mixins, etc.)

Step 2: Extract Public Contract

  1. List all exports in __all__ or equivalent
  2. Document function signatures with full type hints
  3. Identify data structures (classes, NamedTuple, dataclass)
  4. Extract constants and their meanings
  5. Include docstrings for each public item

Step 3: Map Dependencies

  1. Scan imports at module level
  2. Categorize:

- Standard library (good - include version constraints) - External packages (list version requirements) - Internal modules (note the module path)

  1. Identify circular dependencies (red flag)

Step 4: Analyze Module Structure

  1. Map file organization
  2. Identify what goes in each file
  3. Note test fixtures and examples

Step 5: Identify Test Requirements

  1. What behaviors MUST be tested
  2. What edge cases exist
  3. What integration points need coverage
  4. Suggest coverage target

Step 6: Generate Spec Document

  1. Create Specs/[module-name].md
  2. Fill in all sections using analysis
  3. Include example code
  4. Verify spec allows module regeneration

Usage Examples

Example 1: Generate Spec for New Module


User: I'm creating a new authentication module. Generate a spec that ensures it follows brick philosophy.

Claude:

1. Interviews user about module purpose, public functions, dependencies
2. Analyzes similar modules in codebase
3. Generates comprehensive spec with:
  - Clear single responsibility
  - Public contract defining studs
  - Test requirements
  - Example implementations
4. Saves to Specs/authentication.md

Example 2: Document Existing Module


User: Generate a spec for the existing caching module.

Claude:

1. Analyzes.claude/tools/amplihack/caching/ directory
2. Extracts **all** exports
3. Documents public functions with signatures
4. Maps dependencies
5. Identifies test requirements
6. Creates Specs/caching.md
7. Offers to verify spec matches implementation

Example 3: Verify Module Spec Accuracy


User: Check if the existing session management spec accurately describes the implementation.

Claude:

1. Reads Specs/session-management.md
2. Analyzes actual code in.claude/tools/amplihack/session/
3. Compares:
  - Public contract (functions, signatures)
  - Dependencies listed
  - Test coverage
4. Reports discrepancies
5. Suggests spec updates if needed

Analysis Checklist

Code Analysis

  • [ ] Read all Python files in module
  • [ ] Identify __all__ or equivalent public interface
  • [ ] Extract all public function signatures
  • [ ] Document all public classes with fields and methods
  • [ ] List module-level constants
  • [ ] Map all imports (external and internal)

Philosophy Verification

  • [ ] Single clear responsibility
  • [ ] No unnecessary abstractions
  • [ ] Public interface clear and minimal
  • [ ] Dependencies are justified
  • [ ] No external dependencies (if possible)
  • [ ] Patterns align with amplihack principles

Specification Quality

  • [ ] Spec is complete and precise
  • [ ] Code examples are accurate and working
  • [ ] Test requirements are realistic
  • [ ] Module structure is clear
  • [ ] Someone could rebuild module from spec
  • [ ] Regeneration preserves all connections

Template for Module Specs

# [Module Name] Specification

## Purpose
[Single sentence describing core responsibility]

## Scope
**Handles**: [What this module does]
**Does NOT handle**: [What is explicitly out of scope]

## Philosophy Alignment
- ✅ Ruthless Simplicity: [How it embodies this]
- ✅ Single Responsibility: [Core job]
- ✅ No External Dependencies: [True/False with reason]
- ✅ Regeneratable: [Yes, module can be rebuilt from this spec]

## Public Interface (The "Studs")

### Functions

def primary_function(param: Type) -> ReturnType: """Brief description.

Args: param: Description with constraints

Returns: Description of return value """


### Classes

class DataModel: """Brief description of responsibility.

Attributes: field1 (Type): Description field2 (Type): Description """


### Constants

- `CONSTANT_NAME`: Description and usage

## Dependencies

### External

None - pure Python standard library

### Internal

- `.models`: Data structures
- `.utils`: Shared utilities

## Module Structure

module_name/ ├── __init__.py # Exports via __all__ ├── core.py # Implementation ├── models.py # Data models ├── utils.py # Utilities ├── tests/ │ └── test_core.py └── examples/ └── usage.py


## Test Requirements

### Core Functionality Tests

- ✅ Test primary_function with valid input
- ✅ Test error handling with invalid input
- ✅ Test edge cases

### Contract Verification

- ✅ All exported items in **all** work
- ✅ Type hints match actual behavior
- ✅ Return values match documentation

### Coverage Target

85%+ line coverage

## Example Usage

from module_name import primary_function, DataModel

Basic usage

result = primary_function(input_data)

Data model usage

model = DataModel(field1="value", field2=123) print(model.field1)


## Regeneration Notes

This module can be rebuilt from this specification while maintaining:

- ✅ Public contract (all "studs" preserved)
- ✅ Dependencies (same external/internal deps)
- ✅ Test interface (same test requirements)
- ✅ Module structure (same file organization)

Output Location

Specifications are saved to: Specs/[module-name].md

This keeps all module specifications in a central, discoverable location.

Integration with Builder Agent

After spec generation, the Builder Agent can:

  1. Read the specification
  2. Implement the module exactly as specified
  3. Verify implementation matches spec
  4. Run tests defined in spec
  5. Regenerate modules when requirements change

Quality Checks

After generating a spec, verify:

  1. Can someone rebuild the module from this spec?

- Yes = spec is complete - No = add missing details

  1. Does every exported function have a clear purpose?

- Yes = public interface is clear - No = combine or clarify functions

  1. Are all dependencies justified?

- Yes = move forward - No = remove or replace with simpler approach

  1. Would this prevent breaking other modules?

- Yes = studs are well-defined - No = clarify connection points

Common Pitfalls to Avoid

  • Over-specification: Don't specify implementation details
  • Under-documentation: Document WHY, not just WHAT
  • Ambiguous contracts: Be precise about inputs/outputs
  • Unclear dependencies: Explicitly list all external/internal deps
  • Missing examples: Always include working code examples
  • Ignored test requirements: Tests define contract completeness

Success Criteria

A good module spec:

  • [ ] Single, clear responsibility
  • [ ] Complete public interface documentation
  • [ ] Explicit dependency list
  • [ ] Realistic test requirements
  • [ ] Working code examples
  • [ ] Someone can rebuild module from it
  • [ ] Regeneration preserves all connections
  • [ ] Follows brick philosophy
  • [ ] No future-proofing or speculation
  • [ ] Regeneratable without breaking system

适合场景

01

用户想查找某类 Agent Skill 时

02

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

03

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

04

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

能力概览

能力 1

按任务关键词查找相关 Skills

能力 2

展示可复制的安装命令

能力 3

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

能力 4

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

能力 5

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

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

平台分布

Claude Code

26.7%
按下载量换算218

Antigravity

23.62%
按下载量换算193

OpenCode

16.57%
按下载量换算135

Gemini CLI

10.53%
按下载量换算86

windsurf

7.73%
按下载量换算63

Cursor

3.36%
按下载量换算27

安全审计

Gen Agent Trust Hub

通过

Socket

通过

Snyk

通过

权限和风险

需要联网

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

安装前确认

本站仅展示第三方公开信息,不托管安装包,不提供自动安装或运行环境。安装前应自行审查源码、依赖和命令行为。

来源信息

继续浏览同类 Skills