vibeeval/harvest-adaptive
Adaptive content summarization - auto-detect content type and produce relevant summary
npx skills add https://github.com/vibeeval/vibecosystem --skill harvest-adaptive
Automatically detect content type and produce the most useful summary. A blog post gets key takeaways. A library gets feature evaluation. Documentation gets structure overview. API reference gets endpoint catalog.
/digest <url>
# Evaluate a library
/digest https://github.com/owner/cool-library
# Summarize an article
/digest https://blog.example.com/microservices-patterns
# Overview documentation
/digest https://docs.example.com
| Type | Signals | Output Style |
|------|---------|-------------|
| Library/Tool | GitHub repo, npm page, PyPI | Feature matrix, ecosystem health, recommendation |
| Blog/Article | Single long-form content | Key takeaways, relevance assessment |
| Documentation | Multi-page, navigation structure | Structure map, coverage assessment, quality |
| API Reference | Endpoints, methods, params | Endpoint catalog, auth info, SDK availability |
| Comparison | Tables, vs, alternatives | Feature matrix, winner per category |
| Tutorial | Step-by-step, code blocks | Prerequisites, steps summary, outcome |
# Library: [name]
> Source: [URL] | Stars: [X] | Last commit: [date]
## What It Does
[1-2 sentence description]
## Key Features
- Feature 1
- Feature 2
## Ecosystem Health
| Metric | Value |
|--------|-------|
| GitHub Stars | X |
| Weekly Downloads | X |
| Last Release | date |
| Open Issues | X |
| Contributors | X |
## API Surface
[Key classes/functions/exports]
## Verdict
[Use when... Don't use when... Alternatives: ...]
# Summary: [title]
> Source: [URL] | Author: [name] | Date: [date]
## Key Takeaways
1. [Point 1]
2. [Point 2]
3. [Point 3]
## Relevance
[How this applies to current project/context]
## Action Items
- [What to do based on this]
Take vibeeval/harvest-adaptive from the repository into ~/.claude/skills for personal
use, or into .claude/skills inside a project.
The agent identifies a skill by the name field in its header. Two skills with the
same name cannot sit side by side — one of them will be ignored.