Community编程与开发github.com

grahama1970/assess

后退一步,批判性地重新评估项目状态。当要求“评估”、“后退一步”、“换新视角”、“检查对齐”、“健全检查”、“健康检查”、“修剪文档”或“评估有效内容”时使用。提供文档修剪和文档-代码对齐分析。建议在重大更改后运行(不自动运行)。

assess 是什么?

“Assess”技能旨在帮助AI智能体在开发过程中后退一步,批判性地重新评估项目整体状态。该技能适用于Claude Code、Cursor、Codex等AI智能体工具,通过结构化流程(范围界定、根目录检测、快速扫描、深度分析)进行协作式评估,特别擅长发现文档与代码的对齐问题、功能实现与声明的偏差、脆弱代码、死代码以及过度设计等问题。评估过程支持生成JSON摘要和可视化图表,强调只读操作、先展示后写入、需用户许可等协作原则,并将测试覆盖作为不可妥协的阻断项。该技能在重大修改后运行最为有效,能够帮助团队及时发现文档陈旧、代码腐化等问题,避免因信息不对称导致的开发和用户体验问题。

兼容平台✓Claude Code~Codex CLI~Cursor✓Antigravity
npx skills add https://github.com/grahama1970/agent-skills/tree/main/skills/assess

Installed? Explore more 编程与开发 skills: steipete/bluebubbles, steipete/eightctl, steipete/blucli · View all 6 →

在你喜欢的 AI 中提问

打开一个已预加载此 Agent Skill 的新对话。

文档

停。在调用任何端点之前,请完整阅读本 SKILL.MD。

评估(Assess)

后退一步,批判性地重新评估项目状态。提供交互式指导(人在环中)和程序化分析(自动化流水线)。专门用于文档修剪和文档-代码对齐。

CLI 使用

# 用于流水线的结构化 JSON 评估
.pi/skills/assess/assess.py run . --output assessment.json

# 从评估结果生成所有图表
create-figure from-assess --input assessment.json --output-dir ./figures/

评估流程

1. 界定评估范围

明确范围(“评估 auth 模块”)→ 直接进行。 开放范围(“后退一步”)→ 询问:关注点?代码质量 vs 文档?已知问题需要跳过? 文档修剪(“修剪文档”)→ 询问:已弃用的功能?缺失的文档?对齐情况?

2. 查找项目根目录并检测生态系统

通过标记文件(pyproject.toml、package.json、Cargo.toml、go.mod)检测。 读取生态系统特定的元数据,然后是通用文档(README.md、CONTEXT.md、AGENTS.md)。

3. 加载技能清单(路由门控)

对于可能导致“我们应该构建 X”建议的评估,加载 .pi/skills-manifest.json。对于状态检查和纯文档审查则跳过。

cat .pi/skills-manifest.json | python3 -c "
import json, sys
data = json.load(sys.stdin)
print(f'技能数量: {data[\"skill_count\"]} (生成时间: {data[\"generated\"]})')
"

如果清单超过 7 天未更新则发出警告。备用方案:ls .pi/skills/ | wc -l。

4. 快速扫描 → 确认 → 深入分析

  1. 读取项目元数据、README,进行 glob 遍历以了解结构
  2. 记录 2-3 个初步观察结果,与用户确认
  3. 根据用户指导进行深入分析——针对每个发现:是否阻塞?是否已知?修复复杂度?

5. 协作报告

展示发现结果,并询问哪些需要修复。提供 /create-figure 进行可视化。

评估类别

1. 文档-代码对齐

  • README 声明与实现对比
  • 交叉引用验证(内部链接、代码示例)
  • 占位符标记和过时信息
  • 弃用:已移除功能的文档

2. 期望 vs 实现

  • 桩代码(pass、raise NotImplementedError)、占位符注释
  • 代码结构中存在但无逻辑的功能、未使用的依赖

3. 脆弱代码

  • 硬编码值、缺少错误处理、脆弱的正则表达式/解析

4. 非工作代码

  • 死代码路径、静默吞没异常、损坏的集成

5. 过度设计代码

  • 只有单一实现的抽象、为假设的灵活性而设计的配置

6. 测试覆盖(不可妥协)

检查每个特性/模块是否有测试文件、测试是否通过、边界情况。 标记 pytest.mark.skip 但未注明原因、“0 test collected”、不包含断言的测试。

任务文件审计: 验证每个任务都有包含具体测试/断言的完成定义(Definition of Done)。 如果实现任务缺少完成定义,则阻止执行。

7. 运行良好的部分

肯定代码中的扎实部分,以校准评估。

输出格式

# 评估:<项目名称>

## 摘要
<2-3 句话:整体健康状况、关键发现>

## 发现

### 文档-代码对齐
| 声明 | 现实 | 操作? |

### 发现的问题
1. **file.py:123** - [问题] — 严重级别:高/中/低 — 建议修复:[简要说明]

### 测试覆盖
| 特性 | 测试状态 | 需要采取的行动 |

### 运行良好的部分
- [值得肯定的扎实代码]

## 建议的后续步骤
1-4 项优先行动。询问从哪一步开始。

策略

  • 默认只读 — 未经明确同意绝不写入文件
  • 先展示,经同意再写入 — 先展示提议内容,然后提供写入选项
  • 协作 — 评估是对话,而非独白
  • 运行前询问 — 在运行测试、构建、付费服务前必须先获得许可
  • 明智地升级 — 对于复杂/关键问题,建议使用 /review-code
  • 具体化 — 提供文件路径和行号
  • 可操作 — 每个发现都要提出后续步骤
  • 测试覆盖不可妥协 — 将缺失测试标记为阻塞项

外部研究

需要时可使用(使用付费服务前需询问):

  • /context7 — 库文档(免费)
  • /brave-search — 通用网络(免费)
  • /perplexity — 深度研究(付费)

常见错误

# 错误:将所有评估发现视为阻塞性问题
# → 智能体自动为 12 个私有辅助函数添加文档字符串。造成不必要的膨胀。
# 正确:与用户一起审查发现结果。将复杂问题升级给 /review-code。

# 错误:重大更改后跳过 /assess
# → README 示例使用旧的函数签名。用户遇到错误。
# 正确:在编辑核心 API 后运行 assess --focus "doc-code-alignment"

# 错误:根据过时的评估结果运行 /assess
# → 评估来自 3 天前。代码库已发生变化。
# 正确:始终重新运行 assess;切勿跨会话缓存结果

Individual skills in this repo

This repo contains 20 individual skills — each has its own dedicated page.

grahama1970/acceptance-contract

Turn a client brief, zip bundle, directory, or single requirements file into a typed acceptance-contract bundle with extracted requirements, acceptance checks, open questions, an immutable-goal draft, and a create-report-backed decision report. Use when users say acceptance contract, brief to requirements, freeze the goal, create immutable goal, amend immutable goal, build a Battle requirements bundle, or extract requirements from this bundle.

grahama1970/agent-ecosystem

Canonical map and shared contracts for the agent-governance ecosystem: the pi.receipt_envelope.v1 boundary envelope, the component graph, and the rules for which component owns which schema. Use when wiring a skill or extension into the shared receipt world, when asking how shame, triage-error, tau, ask, project-watchdog, ops-herdr, ponytail, and Memory fit together, or when validating an envelope.

grahama1970/agentic-evals

Agentic evaluation of skills using multi-trial fixtures, deterministic command assertions, trajectory checks, safety constraints, and evidence-backed readiness scoring. Use when users ask for agentic evals, multi-trial skill evaluation, skill trajectory validation, or readiness scoring for a skill workflow.

grahama1970/agent-inbox

File-based inter-agent messaging with headless dispatch. Check inbox, send bugs/requests to other projects, automatically spawn headless agents to fix bugs, and track progress via task-monitor.

grahama1970/agents-registry

Generate and query the centralized agent identity registry. Scans .pi/agents/*/AGENTS.md, parses frontmatter, outputs agents-registry.json and optionally syncs to /memory for semantic search.

grahama1970/agent-status

Artifact-driven status surfaces for long-running project-agent work. Maintains status.json, events.jsonl, proof manifests, and a stale-aware STATUS.html so humans can tell where the agent is, what passed, what is still unproven, and what decision or action is next — without dashboard theater.

grahama1970/align

Round-based context alignment before execution. Use when the human, project agent, WebGPT, scillm, ask, dogpile, memory, or project-knowledge may each hold different facts about a task; especially before ambiguous design, infographic, product workflow, high-stakes implementation, plan-iterate, project-infographic, or multi-review work.

grahama1970/analytics

Flexible data science analytics for any dataset. Auto-discovers schema, recommends charts, exports to create-figure. Works with JSONL, JSON, CSV from any source.

grahama1970/analyze-chatterbox-emotions

Evaluate generated Chatterbox voice files as voice-quality artifacts: affect match, arousal/valence proxies, pause placement, intelligibility inputs, clipping, loudness, and discontinuity flags. Use when reviewing Chatterbox emotional tags, pauses, Turbo/base affect delivery, Persona Dream utterance renders, or whether generated speech matches an intended product-facing affect.

grahama1970/analyze-elf

Reverse-engineer features from ELF binaries. Extracts CLI commands, state machines, protocols, Zod schemas, and data models. Automatically generates a /create-walkthrough prosecution brief with Mermaid diagrams. Uses /treesitter for AST analysis of bundled JS/TS source.

grahama1970/animation-vocabulary

Reverse-lookup glossary that turns a vague description of a web animation or motion effect into its exact term ("the bouncy thing when a popover opens" → Pop in; "the iOS rubber-band scroll" → Rubber-banding). Use when the user asks "what's it called when…", or describes a motion effect without knowing its name and wants the right word to prompt an AI or designer with. For naming an effect, not designing or building one.

grahama1970/anonymize-data

Anonymize supported CSV, JSON, UTF-8 text, and SQLite files using an explicit policy through the oai-trial project. Use for anonymize data, pseudonymize exports, redact policy literals, or discover and explicitly approve fuzzy name aliases. The skill is a thin CLI/Docker interface, not another engine.

grahama1970/anvil

Heavy-duty "No-Vibes" debugging and hardening orchestrator. Use this for complex, stubborn bugs where `review-code` has failed, or for "Red Teaming" (hardening) a codebase. Runs multiple agents in parallel (Thunderdome) using git worktree isolation.

grahama1970/apple-design

Apple's approach to interface design and fluid, physical motion, translated for the web. Use when building or reviewing gesture-driven UI, spring animations, drag/swipe/sheet interactions, momentum and interruptible transitions, translucent materials and depth, typography (optical sizing, tracking, leading), reduced-motion, or the design foundations (feedback, spatial consistency, restraint) behind Apple-style interfaces.

grahama1970/argue

Multi-persona structured debate orchestrator. Personas research via /dogpile, consult colleagues via /ask, and argue toward nuanced synthesis on complex questions.

grahama1970/arxiv

Search arXiv for papers and extract knowledge into memory. Use `search` to find papers, `learn` to extract knowledge.

grahama1970/ask

Use when the user asks to query project memory, ask an oracle, use supported browser-backed reviewers, run Tau roundtable/single-handler workflows, ask Pi-native subagents from within Pi, run persona/deep-review workflows, generate image prompts, check OS/project health through composed skills, or run an ask DAG. This skill is the executable /ask runtime; do not replace it with an informal subagent, plain web search, or hand-written review; inside Pi, explicit Pi-native subagent targets are routed through the pi-subagents tool as an Ask target type.

grahama1970/assistant

Shared GPT + classifier inference gateway for persona monitor tasks. Routes validation and classification through a 4-tier cascade: heuristic → classifier → local GPT → scillm.

grahama1970/assistant-lab

Self-improvement workbench for /assistant. All the tools needed to diagnose, train, evaluate, and promote models in a continuous loop. The "warm pond" where /assistant evolves its own inference stack.

grahama1970/batch-quality

Pre-flight validation and quality gates for batch LLM operations. ACTUALLY tests samples through LLM before burning tokens. Uses SPARTA contracts for DuckDB validation queries. Integrates with task-monitor for enforced quality gates.

相关技能