mirror of
https://github.com/wshobson/agents.git
synced 2026-03-18 09:37:15 +00:00
fix(skills): remove phantom resource references and fix CoC links (#447)
Remove references to non-existent resource files (references/, assets/, scripts/, examples/) from 115 skill SKILL.md files. These sections pointed to directories and files that were never created, causing confusion when users install skills. Also fix broken Code of Conduct links in issue templates to use absolute GitHub URLs instead of relative paths that 404.
This commit is contained in:
@@ -733,25 +733,3 @@ async def test_with_timeout():
|
||||
with pytest.raises(asyncio.TimeoutError):
|
||||
await asyncio.wait_for(slow_operation(5), timeout=1.0)
|
||||
```
|
||||
|
||||
## Resources
|
||||
|
||||
- **Python asyncio documentation**: https://docs.python.org/3/library/asyncio.html
|
||||
- **aiohttp**: Async HTTP client/server
|
||||
- **FastAPI**: Modern async web framework
|
||||
- **asyncpg**: Async PostgreSQL driver
|
||||
- **motor**: Async MongoDB driver
|
||||
|
||||
## Best Practices Summary
|
||||
|
||||
1. **Use asyncio.run()** for entry point (Python 3.7+)
|
||||
2. **Always await coroutines** to execute them
|
||||
3. **Limit concurrency with semaphores** - unbounded `gather()` can exhaust resources
|
||||
4. **Implement proper error handling** with try/except
|
||||
5. **Use timeouts** to prevent hanging operations
|
||||
6. **Pool connections** for better performance
|
||||
7. **Never block the event loop** - use `asyncio.to_thread()` for sync code
|
||||
8. **Use semaphores** for rate limiting external API calls
|
||||
9. **Handle task cancellation** properly - always re-raise `CancelledError`
|
||||
10. **Test async code** with pytest-asyncio
|
||||
11. **Stay consistent** - fully sync or fully async, avoid mixing
|
||||
|
||||
@@ -864,25 +864,3 @@ recursive-exclude * *.py[co]
|
||||
- [ ] GitHub repository linked
|
||||
- [ ] Tested on TestPyPI first
|
||||
- [ ] Git tag created for release
|
||||
|
||||
## Resources
|
||||
|
||||
- **Python Packaging Guide**: https://packaging.python.org/
|
||||
- **PyPI**: https://pypi.org/
|
||||
- **TestPyPI**: https://test.pypi.org/
|
||||
- **setuptools documentation**: https://setuptools.pypa.io/
|
||||
- **build**: https://pypa-build.readthedocs.io/
|
||||
- **twine**: https://twine.readthedocs.io/
|
||||
|
||||
## Best Practices Summary
|
||||
|
||||
1. **Use src/ layout** for cleaner package structure
|
||||
2. **Use pyproject.toml** for modern packaging
|
||||
3. **Pin build dependencies** in build-system.requires
|
||||
4. **Version appropriately** with semantic versioning
|
||||
5. **Include all metadata** (classifiers, URLs, etc.)
|
||||
6. **Test installation** in clean environments
|
||||
7. **Use TestPyPI** before publishing to PyPI
|
||||
8. **Document thoroughly** with README and docstrings
|
||||
9. **Include LICENSE** file
|
||||
10. **Automate publishing** with CI/CD
|
||||
|
||||
@@ -849,26 +849,3 @@ def test_map_function(benchmark):
|
||||
- Ignoring algorithmic complexity
|
||||
- Over-optimizing rare code paths
|
||||
- Not considering memory usage
|
||||
|
||||
## Resources
|
||||
|
||||
- **cProfile**: Built-in CPU profiler
|
||||
- **memory_profiler**: Memory usage profiling
|
||||
- **line_profiler**: Line-by-line profiling
|
||||
- **py-spy**: Sampling profiler for production
|
||||
- **NumPy**: High-performance numerical computing
|
||||
- **Cython**: Compile Python to C
|
||||
- **PyPy**: Alternative Python interpreter with JIT
|
||||
|
||||
## Performance Checklist
|
||||
|
||||
- [ ] Profiled code to identify bottlenecks
|
||||
- [ ] Used appropriate data structures
|
||||
- [ ] Implemented caching where beneficial
|
||||
- [ ] Optimized database queries
|
||||
- [ ] Used generators for large datasets
|
||||
- [ ] Considered multiprocessing for CPU-bound tasks
|
||||
- [ ] Used async I/O for I/O-bound tasks
|
||||
- [ ] Minimized function call overhead in hot loops
|
||||
- [ ] Checked for memory leaks
|
||||
- [ ] Benchmarked before and after optimization
|
||||
|
||||
@@ -1026,25 +1026,3 @@ exclude_lines = [
|
||||
"raise NotImplementedError",
|
||||
]
|
||||
```
|
||||
|
||||
## Resources
|
||||
|
||||
- **pytest documentation**: https://docs.pytest.org/
|
||||
- **unittest.mock**: https://docs.python.org/3/library/unittest.mock.html
|
||||
- **hypothesis**: Property-based testing
|
||||
- **pytest-asyncio**: Testing async code
|
||||
- **pytest-cov**: Coverage reporting
|
||||
- **pytest-mock**: pytest wrapper for mock
|
||||
|
||||
## Best Practices Summary
|
||||
|
||||
1. **Write tests first** (TDD) or alongside code
|
||||
2. **One assertion per test** when possible
|
||||
3. **Use descriptive test names** that explain behavior
|
||||
4. **Keep tests independent** and isolated
|
||||
5. **Use fixtures** for setup and teardown
|
||||
6. **Mock external dependencies** appropriately
|
||||
7. **Parametrize tests** to reduce duplication
|
||||
8. **Test edge cases** and error conditions
|
||||
9. **Measure coverage** but focus on quality
|
||||
10. **Run tests in CI/CD** on every commit
|
||||
|
||||
@@ -811,24 +811,3 @@ uv cache clean # Clear cache
|
||||
uv cache dir # Show cache location
|
||||
uv --version # Show version
|
||||
```
|
||||
|
||||
## Resources
|
||||
|
||||
- **Official documentation**: https://docs.astral.sh/uv/
|
||||
- **GitHub repository**: https://github.com/astral-sh/uv
|
||||
- **Astral blog**: https://astral.sh/blog
|
||||
- **Migration guides**: https://docs.astral.sh/uv/guides/
|
||||
- **Comparison with other tools**: https://docs.astral.sh/uv/pip/compatibility/
|
||||
|
||||
## Best Practices Summary
|
||||
|
||||
1. **Use uv for all new projects** - Start with `uv init`
|
||||
2. **Commit lockfiles** - Ensure reproducible builds
|
||||
3. **Pin Python versions** - Use .python-version
|
||||
4. **Use uv run** - Avoid manual venv activation
|
||||
5. **Leverage caching** - Let uv manage global cache
|
||||
6. **Use --frozen in CI** - Exact reproduction
|
||||
7. **Keep uv updated** - Fast-moving project
|
||||
8. **Use workspaces** - For monorepo projects
|
||||
9. **Export for compatibility** - Generate requirements.txt when needed
|
||||
10. **Read the docs** - uv is feature-rich and evolving
|
||||
|
||||
Reference in New Issue
Block a user